テキストファイルの記述方法
現状の記述法は階層構造に対応していない。
PAR3用コードはコードの中に階層構造情報を持っているため問題はないのだが、PAR2用コードを記述する場合やPAR3コードでも復号化状態でしかもヘッダー行を記述しない場合には階層構造を構築できない。
現在、条件を次のように考えている。
・PAR3コードの復号化状態は、ヘッダー行を記述してもしなくてもどちらでもいいようにしたい。
・その際、情報は別途記述する。
・基本的には、階層構造はコードの配置で指定する。
(例)
フォルダーの次に記述したコードは、そのフォルダーの中に入る
・パラメータ等はなるべくわかりやすい(忘れにくい)ものにする。
・現状の記述と互換性はなくてもいい。
これらの条件をもとにして、テキストファイルの記述の新しい文法を考える。
ちなみに、この文法はコードパーサーでの記述にも使われる。
そのため覚えやすいものがいいわけだ。
今のところは、次のような感じ。
まだ、整合性の確認などは完璧ではない。
-----------------------------------------------
*2;へろへろ冒険記(PAR2用)
主人公
[class=folder]
HP減らない(主人公)
00000004 00000000
00000008 00000000
MP減らない(主人公)
3C978334 1456E7A5
3C978338 1456E7A5
*<:
2人目
[class=folder]
HP減らない(2人目)
00000014 00000000
00000018 00000000
MP減らない(2人目)
3C978344 1456E7A5
3C978348 1456E7A5
STR最大(2人目)
[type=x]
00000024 00000000
3C978350 1456E7A5
*3;へろへろ冒険記(PAR3用)
[gameid=5, region=jp]
(M)
[codeid=0, master=true]
主人公
[class=folder]
HP減らない(主人公)
00000004 00000000
00000008 00000000
MP減らない(主人公)
CDEF-RGTH-ZAQWX
NBGH-JVRU-PKMDW
*<:
2人目
[class=folder]
HP減らない(2人目)
[header=on]
00000000 00000000
00000018 00000000
*<:
フォルダー1
[struct=code]
XZWQ-AERT-YHNBF
コード1
[strcut=code]
PUYT-LMKH-GBFHG
UHNF-RTEV-CDWXZ
コード2
[struct=code, codeid=10, parent=d, header=off]
00000100 00000000
-----------------------------------------------
少し補足しておくと、
'*2:'はPAR2用コードのタイトル、'*3:'はPAR3用コードのタイトル。
コードの暗号状態は基本的には自動判定する。
しかし、XPやXTのように行ごとに状態の違うコードの場合は'type=x'を記述する。
(DEADFACEコードが含まれていた場合などがあり判定が複雑になるため)
'*<:'マークはフォルダーを上がる指定。
これがないと、サブフォルダーになってしまう。
'struct=code'というのは、階層構造情報はコードのものを使うという指定。
これがない場合は記述した位置で階層構造が決定する。
この指定をした場合はコード内にコードIDと親フォルダーのコードIDの指定が必要になる。
しかし、復号化コードでヘッダー行を記述しない場合はこの2つは指定されていないので、オプション行に明記する必要がある。
この例ではタイトルのオプションにstructが指定されていないので、struct=autoがデフォルトになっている。
もし、タイトルのオプションでstruct=codeを書いておけば、
「フォルダー1」「コード1」「コード2」それぞれのstrcut=codeは必要ない。
V1のときは、誤解釈を考えて「1行づつタイプを指定する」というイメージだったため、全ての行にマークを付けさせた。
しかし、コード行でないものをコード行と解釈してしまった場合は、行頭にスペースを入れるとかの方法で回避できる。
そのため、全ての行にマークを付ける必要がない。
このため、テキストファイルの記述に使った場合も楽になるはずだ。
ParCodeEditor完成までには、このようなこともクリアしていかなければならない。
なんせ、「統合ツール」だからいろいろとあるのだ。
PAR3用コードはコードの中に階層構造情報を持っているため問題はないのだが、PAR2用コードを記述する場合やPAR3コードでも復号化状態でしかもヘッダー行を記述しない場合には階層構造を構築できない。
現在、条件を次のように考えている。
・PAR3コードの復号化状態は、ヘッダー行を記述してもしなくてもどちらでもいいようにしたい。
・その際、情報は別途記述する。
・基本的には、階層構造はコードの配置で指定する。
(例)
フォルダーの次に記述したコードは、そのフォルダーの中に入る
・パラメータ等はなるべくわかりやすい(忘れにくい)ものにする。
・現状の記述と互換性はなくてもいい。
これらの条件をもとにして、テキストファイルの記述の新しい文法を考える。
ちなみに、この文法はコードパーサーでの記述にも使われる。
そのため覚えやすいものがいいわけだ。
今のところは、次のような感じ。
まだ、整合性の確認などは完璧ではない。
-----------------------------------------------
*2;へろへろ冒険記(PAR2用)
主人公
[class=folder]
HP減らない(主人公)
00000004 00000000
00000008 00000000
MP減らない(主人公)
3C978334 1456E7A5
3C978338 1456E7A5
*<:
2人目
[class=folder]
HP減らない(2人目)
00000014 00000000
00000018 00000000
MP減らない(2人目)
3C978344 1456E7A5
3C978348 1456E7A5
STR最大(2人目)
[type=x]
00000024 00000000
3C978350 1456E7A5
*3;へろへろ冒険記(PAR3用)
[gameid=5, region=jp]
(M)
[codeid=0, master=true]
主人公
[class=folder]
HP減らない(主人公)
00000004 00000000
00000008 00000000
MP減らない(主人公)
CDEF-RGTH-ZAQWX
NBGH-JVRU-PKMDW
*<:
2人目
[class=folder]
HP減らない(2人目)
[header=on]
00000000 00000000
00000018 00000000
*<:
フォルダー1
[struct=code]
XZWQ-AERT-YHNBF
コード1
[strcut=code]
PUYT-LMKH-GBFHG
UHNF-RTEV-CDWXZ
コード2
[struct=code, codeid=10, parent=d, header=off]
00000100 00000000
-----------------------------------------------
少し補足しておくと、
'*2:'はPAR2用コードのタイトル、'*3:'はPAR3用コードのタイトル。
コードの暗号状態は基本的には自動判定する。
しかし、XPやXTのように行ごとに状態の違うコードの場合は'type=x'を記述する。
(DEADFACEコードが含まれていた場合などがあり判定が複雑になるため)
'*<:'マークはフォルダーを上がる指定。
これがないと、サブフォルダーになってしまう。
'struct=code'というのは、階層構造情報はコードのものを使うという指定。
これがない場合は記述した位置で階層構造が決定する。
この指定をした場合はコード内にコードIDと親フォルダーのコードIDの指定が必要になる。
しかし、復号化コードでヘッダー行を記述しない場合はこの2つは指定されていないので、オプション行に明記する必要がある。
この例ではタイトルのオプションにstructが指定されていないので、struct=autoがデフォルトになっている。
もし、タイトルのオプションでstruct=codeを書いておけば、
「フォルダー1」「コード1」「コード2」それぞれのstrcut=codeは必要ない。
V1のときは、誤解釈を考えて「1行づつタイプを指定する」というイメージだったため、全ての行にマークを付けさせた。
しかし、コード行でないものをコード行と解釈してしまった場合は、行頭にスペースを入れるとかの方法で回避できる。
そのため、全ての行にマークを付ける必要がない。
このため、テキストファイルの記述に使った場合も楽になるはずだ。
ParCodeEditor完成までには、このようなこともクリアしていかなければならない。
なんせ、「統合ツール」だからいろいろとあるのだ。
Comments