Skip to content

公式タグリファレンスとエンジン実装のデフォルト値・必須パラメータの不一致について #136

@youichi-uda

Description

@youichi-uda

概要

VS Code拡張(TyranoCode)開発のためにエンジンソースコードを調査したところ、
公式タグリファレンス(tyrano.jp)の記載とエンジン実装(kag.tag.js等)の間にいくつかの不一致を発見しました。

具体的な差異

1. [bg] - デフォルト値の相違

パラメータ リファレンス エンジン実装 (kag.tag.js L8375-8376)
time 1000 3000
cross "true" "false"

2. [image] - layerのデフォルト値

パラメータ リファレンス エンジン実装 (kag.tag.js L3602)
layer "0" "base"

また depth: "front" パラメータがエンジンに存在しますがリファレンスに記載がありません。

3. [ptext] - 必須パラメータの未記載

エンジン実装 (kag.tag.js L4075): vital: ["layer", "x", "y"]
layer, x, y が必須ですが、リファレンスでは明記されていません。

4. [mtext] - 必須パラメータ+デフォルト値の未記載

エンジン実装 (kag.tag.js L4371): vital: ["x", "y"]
x, y が必須ですが、リファレンスでは明記されていません。

また以下のデフォルト値がリファレンスに記載されていません:

  • fadeout: "true", time: "2000", in_effect: "fadeIn", in_delay: "50", in_delay_scale: "1.5"

5. [playbgm] - デフォルト値の未記載

エンジン実装 (kag.tag_audio.js L37-53):

  • fadein: "false", click: "false", target: "bgm" がリファレンスに未記載

6. [position] - frameパラメータの未記載

エンジン実装 (kag.tag.js L3138): frame: "" が存在しますがリファレンスに記載がありません。

7. vitalパラメータの未記載

以下のタグで vital(必須)指定がリファレンスに反映されていません:

  • [layopt]: vital: ["layer"] (kag.tag.js L6203)
  • [trans]: vital: ["time", "layer"] (kag.tag.js L8266)
  • [quake]: vital: ["time"] (kag.tag.js L5340)

環境

  • 調査対象: tyranoscript GitHub リポジトリ最新ソース
  • 比較対象: tyrano.jp 公式タグリファレンス

提案

リファレンスの修正、またはリファレンスをOSS化してコミュニティからのPRを受け付ける仕組みがあると、
エコシステム全体の品質向上に繋がると思います。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions