トップページgamedev
196コメント86KB

スクリプトコンパイラについて ( yac と lex も可 )

■ このスレッドは過去ログ倉庫に格納されています
000143901/11/07 15:31ID:GpFz7V+v
みなさんのスクリプトって、どんな感じですか?
(エロ)ゲームプログラマーには一番難しい所かもしれません。
yac と lex も可です。
0172名前は開発中のものです。2007/07/30(月) 23:04:20ID:mh1RLDn7
>>169
俺がxmlの研究目的で作ってるxmlベースの言語が
narrative documentをプログラマブルに扱えるものでPLの制御構造と組み込みライブラリと例外処理と文章に対するメタデータ記述能力を持ってるが
こいつはメモリ上に中間コード吐いてインタープリタで直に実行するかほかの言語のソースコード吐くようになってて要するにEiffelなんだが

>シナリオ用スクリプトを構造化 は出来てるぞ。
ただし、ライブラリは組み込みのみでそのライブラリを作るのはプログラマって割り切ってる。
あと要素の評価結果が文字列なら標準出力へ出力するんだけどその標準出力を定義するのもプログラマ。
つまり組み込みライブラリと出力先をADVエンジン用に実装すればADVエンジンへの応用が利く。

こういうもんを作れば
>シナリオ用スクリプトを構造化すること
スパゲッティフローチャートをif, for, while & 関数・サブルーチンだけで書き下す
は実際に出来てる。

あと言語そのものがxmlなんでXSLTやXSL-FOでhtmlやPDFへ"スパゲッティフローチャート"を変換できる。
そのためにメタデータ記述能力を持たせた。
あとxmlそのものが機械的に管理されることを前提に
設計されてるのでIDEなんかが作りやすいメリットもある。

欠点は専門的すぎてちょっとしたhypertext systemを実装できるくらいの学術知識が必要かな。情報系の卒論向きだな。
ラベルによるgotoは全部xlinkだったりするし。
0173名前は開発中のものです。2007/07/30(月) 23:06:52ID:mh1RLDn7
結局、出来たとしても>>171の言うように問題の切り分けとそれを解決する人間を別々に用意する必要があるよ。
そういう前提で作ってるし。
0174名前は開発中のものです。2007/08/02(木) 18:38:56ID:IqLuhQEt
>ラベルによるgoto
結局スパゲティかよ('A`)
0175名前は開発中のものです。2009/01/02(金) 22:08:59ID:qteump49
スクリプトエンジン制作中
目的に合わせた複数の言語を作り、共通の中間コードにコンパイルして、共通のVMで動作させる予定なのだが、VMの仕様で悩み中
最初はCOMET互換のものを作ってたんだが、スタックマシンの方がシンプルになりそうな気がする
フラグレジスタとか考えなくていいし、そもそもソフトウェアで動作させるんだからレジスタとかいらなくね?みたいな
他のスクリプトのVMの実装を知らないんだが参考までに、おまいらの意見をいただけないでしょうか
0176名前は開発中のものです。2009/01/03(土) 19:42:11ID:LhDhqbiv
俺のスクリプトにVMなど存在しない
ただ内部データ(登場時刻、位置、画像、移動パターン)に変換するのみ
0177名前は開発中のものです。2009/01/04(日) 23:05:16ID:ZWLW/6f7
JVMとか.NETのCLR(つかmono)参考にしたらどうだろうか
前にゲーム製作技術板でゲーム用DSLにJVMのサブセット実装してた人がいたよ。
(しかもコンパイラはJavaを使うらしいw)

まあ、再発明になると面白みがないだろうがポータブルな実装つくるのもいいんでないのかな?
0178名前は開発中のものです。2009/01/04(日) 23:06:00ID:ZWLW/6f7
ごめん、ム板と勘違いしてたわ
0179名前は開発中のものです。2009/02/03(火) 21:19:13ID:AbbFosQL
速度の面でどう頑張ってもYpsilonに勝てないので自作やる気がなくなった
0180名前は開発中のものです。2009/02/06(金) 12:39:51ID:sIJNyM9N
>>179
What is "Ypsilon"?
0181名前は開発中のものです。2009/02/06(金) 20:54:52ID:MuHkM83C
>>179
もしかして、リトルウイングのScheme処理系?
http://www.littlewingpinball.com/contents/ja/ypsilon.html
0182名前は開発中のものです。2009/10/16(金) 20:40:03ID:ZrBg9mxX
0183名前は開発中のものです。2010/07/27(火) 16:50:26ID:Wuh12NAU
ゲーム屋就職用にGauche忍びこませたexe作ろうと思ったけど、どうあがいても相手のマシンにGaucheが入ってないとダメみたいだからあきらめた
ニートで何が悪い
Scheme処理系作ったら本気出す
0184名前は開発中のものです。2010/08/08(日) 21:17:40ID:JbWPlsYy
0185名前は開発中のものです。2010/09/30(木) 20:19:23ID:RMd6Ohi3
>>176
なんという定義ファイル
0186名前は開発中のものです。2011/07/07(木) 04:18:10.46ID:zE+DGvJm
過疎ってるけど、ここが一番あってる気がするからageるね。

できるだけ単純に書けて、単純な出力をするスクリプト言語を作った。
定義ファイル代わり+シーケンスも多少は書けるってとこ。
興味があったらどうぞ。
ttp://kushi.lv9.org/teco/index.html
0187名前は開発中のものです。2011/07/07(木) 12:17:50.82ID:kgWPk38H
【Lua】組み込み系言語総合 その4【Squirrel】
http://hibari.2ch.net/test/read.cgi/tech/1301414458/

こっちの方が近いと思う。
01881862011/07/07(木) 13:21:45.30ID:zE+DGvJm
誘導ありがとう。
ゲーム用途を考えてたからここに書き込んだんだけど、あんまり関係ないのかな?
このスレの最初の方の人達に見てもらいたくって。
向こうにも書き込んでみようかな。
0189名前は開発中のものです。2012/02/01(水) 23:20:06.94ID:2Eijr2Ns
保守
0190 忍法帖【Lv=32,xxxPT】 2012/02/04(土) 12:03:45.82ID:YBcddhiB
落葉
0191名前は開発中のものです。2012/03/04(日) 23:48:04.51ID:IYAv19lc
書き込みテスト
0192 【28.4m】 電脳プリオン ◆GDSZsj1GHk 2012/03/10(土) 20:57:35.48ID:KQUwO9Nk?PLT(12078)

両方使ったことない
0193名前は開発中のものです。2012/04/24(火) 10:34:48.93ID:wzzo7GXM
http://toro.2ch.net/test/read.cgi/gamedev/1330137413/1-100
0194名前は開発中のものです。2012/06/03(日) 18:46:09.62ID:tMZzvBuc
保守
019567-1-22-200.tcso.qwest.net2012/08/07(火) 11:49:11.20ID:c5hb27GU
hoshu
0196名前は開発中のものです。2013/12/27(金) 00:30:00.81ID:BInQBZ9j
保守
■ このスレッドは過去ログ倉庫に格納されています