eraシリーズ改造/バリアント開発の覚え書き

12月13日の雑記


コードを複数ファイルに分割したり処理をリファクタリングしたりしてるんだけど、こういう作業って進み具合としてはどれくらいとか目に見えないし、進んでるのか進んでないのかでいったら進んでるけど何が進みましたとはなかなかいいにくいし、そうして更新が途絶えたりもするけれども、進捗は出てます。

実は先日書いたセーブデータにヘッダを埋め込むとかいうやつはもうできてるし、GameBase.csvもいちおう読み込むことは読み込む。まだロード時にゲームコードとバージョンを見て弾く処理とか作ってないけどとりあえずあとでいいや。


* * *


それよりeach do |i| ... endとか書いてたらunexpected keyword_do_blockとか言われるんですけどー。あ、loop doでも言われた。
まじでなんなん? do ... endを{}に置き換えるとエラーは解消される。いやふつうはできるんだよ。do endと{}は基本的には相互置き換え可能なはずなの。ところが、なぜかsyntax errorになる箇所とならない箇所がある。うーん、lambdaの中だからかなあ。
こういうのチケット切ったほうがいいのかなーとか思ったけど、euremoの使ってるRubyのバージョンは最新のパッチリリースとは異なるので、そのせいかもわからん。まあいいや。来年2月にはRuby 2.0出るんだし。


* * *


いまerabasicの命令一覧見てたんだけど、どうやらJUMPとGOTO以外は実装できているような?
あ、INPUTSがまだだ。INPUTSなー(……どうするかなー……できるけどすげー大変なんだよなー……いつになったらあげられるようになるかわからんよなー……)。ちなみにGOTOは実装しません。できませんといいたいところだけどまったくできないわけじゃないのが困る。まったくできないわけじゃないけど、labelの終端を書かなきゃいけない(仮に関数の終端と同じでも省略できない)ということになるので、構文がerabasicから外れちゃうし、だったらやらない、という感じ。JUMPはすぐにでも実装できそうだけどとりあえずeramakerの「CALLされた関数からJUMPしたらエラー」という動作は再現できないので、Emueraと同じような感じになるだろうと思うんだけど、そもそもeuremoがJUMPをあんまり使ったことがないのでどういう仕様にしたらいいのかちゃんと把握できてない。なので実装はそれから。

まあでも文字入力さえしなかったらeramaker相当のものは作れると思うのでeralightを改変したものでもサンプルとして一度作ってみてもいいかもしれない。それができたらα版として公開、で。


* * *


それよりこれすげーなー。
http://d.hatena.ne.jp/ku-ma-me/20120510/p1
もう半年以上前の記事だけど。書いてるのはRuby 2.0のリリースマネージャの方。期待しちゃいたくなるなー。さすがに2.0とは言わないけど、ぜひとも入ってほしいものである。


* * *


RubyビルドしようとしたらAntiVirusに蹴られたんだけど。なんなん……。コンパイルしてexe作ろうとしたらそのexeウイルスじゃないです?とかいちゃもんつけてくるAntiVirusスパンキングで屈服刻印つけたい。


* * *


パッチビルド試したけどあかんかったわー。
パッチを使うためにはある程度新しいバージョンじゃないとだめらしいんだけど、最新版ではだめ。そして最新安定板では機能が足りない、らしい。これ詰んでるよね。
まあ多分Ruby 2.0の安定版が出る頃にはなんとかなるだろうという気がするので、Ruby 2.0が出たらまた考えよう。
これができるとexe配布がすごく楽になるし大変ありがたいのだが。

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

リンク

漠々ト、獏
eramaker/eramaker2の開発元の公式サイト。

Emuera - emurator of eramaker
C#で書かれたeramakerのエミュレータ「Emuera」のプロジェクトページ。

eraシリーズを語るスレ まとめ
eraシリーズ全般のまとめ。バリアント情報、改造情報など。

eratoho まとめ
eramakerのバリアント「eratoho」のまとめ。

era板
eraシリーズについての掲示板。

サブページ

Rubiera
Bitbucket上のRubieraプロジェクトページ。Rubieraのソースコードのダウンロードはここで。

管理人/副管理人のみ編集できます