赤宿 = Red Inn

素人の試行錯誤と2Dゲームプログラミング

What Decoupling is About

Stuck

 (Nezフレームワークを使用中)。Tiledのマップのロードで長く行き詰っていた。
 今後も何度もハマるのだろう。

Woditor

 ハマっていたため、ウディタローグライクを作っていた。やれば進むというのはいい。

f:id:samba_4e:20170408010606p:plain (カーソル位置/主人公方向に白枠を表示)

 だが常に進むことを要求されるとうんざりすることもある。うんざりするとゲームをやりたくなるが、やりたい3Dのゲームは今プレイできない。遊びたいゲームを自分で作るしかないのだ…。

 インフラ整備的な下準備が完了した。仕様の決定で数回悩んだが、分離によって解決できた。うまく分離すると、特定の仕様と他のコードが疎結合になる(どのような仕様にも差し替えられるようになる)。このため仕様を決めるという問題が無くなり、各機能も役割がはっきりして把握しやすい。問題が消えるというのは、プログラミングで頻出のパタンだと思う。

 ウディタでゲームを作るときは、『オブジェクト』という概念が無かった。データしか無いのだから、当たり前だと思う。あくまで、(神たる『自分』が)『Actorを動かす』、『攻撃する』というアイデアだった。そこで『オブジェクト』の存在を想定すると、『Actorが歩く』、『Actionを起動する』という概念が生まれ、プログラミングが変わっていく。すると、コードにも指向性が生まれ、いろいろと都合が良くなる――というのがボトムアップOOPだろうか。

(やるなら)今後の実装:Action(攻撃など), AI, Item, Trap, Inventory, HUD, Option, and the Game Contents

 余裕があれば初心に戻ってクソゲーを作り、ウディコン(2017年7月)に提出したい。ただ、もしも自分にウディタユーザとしての役割があるとしたら、プログラミングの海に出ていくことの方だと思う。