.lua のファイル名とフォルダ名
Lua 識別子だけが使えます。
util lib pid_controller _internal nav2
使えないもの: my-lib (ハイフン) 2d (数字始まり) ライブラリ (非 ASCII) my lib (空白)
この制約があるおかげで、パスと require のキーが常に1対1で対応します。
区切りは
. だけです。大文字と小文字は区別されます。
require の文字列とキーは完全一致で照合されます。変換や補完は行いません。
もしハイフンなどを許すと、
a/b.lua と a.b.lua が同じキーになりうるため、
どちらを読むべきか決められなくなります。文法の段階でこの曖昧さを消しています。扱える拡張子
.lua 以外に Lua 識別子の制約が無いのは、require の対象ではないためです。
画像は本文を持ちません。そのため通常の新規作成では作れず、画像として追加する必要があります。
同じ理由で、画像とそれ以外を入れ替えるような名前変更も拒否されます。
予約されている名前
Design が作る仮想モジュール
Design は、次の形のモジュールキーを生成します。sim.lua のカスケード
対象のファイルからルートへ向かってフォルダを遡り、途中にある sim.lua を集めます。
Stormworks のビークル / マイクロコントローラーのような3段構造はありません。
.scode の中身
.scode 配下は緩い検証で扱われ、.lua の命名の制約は適用されません。