一画面プログラムばっかり書いて嫌気がさし、一旦プチコン3号から離れたのが8月の話。
その後は PICO-8 に乗り換えて、過去にプチコン3号で作ったゲームを移植するなどして楽しんでいたわけだが、ふと「逆に、PICO-8 のゲームをプチコン3号に移植したら、それはそれで面白いかも」みたいな思考が湧いてきたのが先月末の話。
とりあえず、現時点で PICO-8 フォーラムで一番人気の "CELESTE" に着目。ソースコードを読んでみると…おお、Lua って変数周りがすごい柔軟的なんだなぁ。BASIC 脳な自分には思いもよらない書き方をしていて、目からウロコな感じ。
この、Lua ならではの書き方を BASIC 風に書きかえる作業が思いの外面倒な作業。せっかくスマートな書き方なのに、どんどんプログラミング初心者っぽいコードになっていく。構造体が使えないのが辛いなぁ。
あと、描画周りについて。PICO-8 は 128×128 の一枚フレームバッファなのに対して、プチコン3号は BG とかスプライトとかが使えるわけで、こいつらを使って描画しよう…とした結果、スプライト管理の手間が増えてしまって、これまた面倒な処理を書くハメになってしまった。
PICO-8 と同じように、全部グラフィック面に描画する事も考えたんだけど、せっかくプチコン3号に移植するんだから、立体視に対応させたいじゃん、というのに加えて、いくら高スペックなプチコン3号でも GCOPY を多用したら処理が追いつかないんじゃないかという懸念があったので。
…という事で、ある程度のところまで PC で作業して、自前の転送ツールでソースコードや各種リソースデータを転送し、ちゃちゃっと手直しして、とりあえずプチコン3号上でゲームとして遊べるところまでできたのが、一週間前の話。
I like CELESTE of #pico8 and try porting to #smilebasic. Maybe it can't be shared because of license. #petitcom URL
まぁ、オリジナル作者に無断で勝手に移植したわけだし、自分が楽しめればそれで良いや…という事で、ここらで終わりにしようとしたんだけど、
.@OBONO WHOAAA this is so cool!
なんか作者さんに捕捉されたので、思い切って公開していいか尋ねてみた。
@NoelFB Hi! Thank you for providing nice game! BTW, what do you think this agreement of SmileBasic. URL
2015-11-04 12:49:23 via Silver Bird to @NoelFB
@OBONO Yeah you can upload / distribute / release it! We only ask that you don't SELL it
@NoelFB Oh, really? Thank you! Thank you very much!
2015-11-04 12:55:43 via Silver Bird to @NoelFB
@OBONO :)
と、あっさり OK の返事。このやり取りだけで、本当に公開していいものかと不安を覚えつつ、もう少し移植度を高めるべく、PICO-8 のフォントを再現したり、サウンド周りもできるだけ再現させたてみたりしてみた。
Finally, I released "CELESTE" on #smilebasic. It's ported from #pico8. Special thanks to @MattThorson & @NoelFB. URL
硬派アクションゲーム"CELESTE"移植完了したのでとりあえず公開。ソースがぐちゃぐちゃなので、そのうちリファクタリングするかも。公開キー: 4RK3J4B3 #petitcom #smilebasic #sbkey URL
Miiverse にもトピックを立ててみたところ、それなりの好反応。ホント、良作なアクションゲームなんで、皆さん是非遊んでくださいな。
ただ、上記につぶやきにもあるように、ソースコードを手直ししたいんだけど、そろそろ、第四回大喜利の作品のアイディアを考えないとイカンしなぁ。そんな時間は無さそうだなぁ。むぅ。