ローグライク攻略&開発雑記

コンシューマー/PCに限らず、適当に綴っていくブログ 無駄にあれこれ遊んだので要らん知識だけは豊富

2020年04月

変愚蛮怒2.2.2 進捗状況 その8

こんにちは、Hourierです
store.c の凶悪な密結合っぷりでソウルジェムが真っ黒になってましたが、何とか復帰できました
というか見なかったことにして他のファイルをひたすら直すことにしました

今週で一番のリファクタリング成果はcmd-dump.c です
v2.2.1r 時点では7000行を超えるとかいう、読むだけで死ぬがよい 人間卒業試験状態でしたが、分割に分割を繰り返した結果、何とか330行まで減らしました ファイルがふえるよ! やったねたえちゃん
まぁ500行の関数を1つ引っ越しただけとかいう手抜き分割もまだまだあるのですが、それはもうv2.2.3以降の宿題ってことで残しておこうと思います
まだ5000行以上のファイルが2つ、4000行台のファイルも9つあるので……

とはいえ、3000行台も9個まで減りました
というか以前はアホほど沢山あった凶悪ファイルを随分消せたので、可読性はかなり上がっているはずです
v2.2.2の正式リリース頃には0になってる……といいなぁ
まぁどこで区切りを付けるかも難しいところですが、この調子でちまちま減らしていこうと思います、はい

今日はこんなところで
次回もお楽しみに!

変愚蛮怒2.2.2 進捗状況 その7

気がつけば約1ヶ月……
世間でもコロナだの何だのと色々ありましたが、ひとまず元気です
問題は人生リソースを開発に割り振ることがあれやこれやと難しくなってるところです
ちょっと前まではヒャッハーしながら書いていたんですが、まぁ中々

さてリファクタリングですが、色々と苦しい戦いを強いられております
ちょこちょこっと作業はしてますが、敢えてブログに書くほどのものでもない小規模な修正のみです
見たい方はコミットツリーをご参照下さい
特にstore.c 辺りが悲惨で、泣く泣くグローバル変数を置かないとファイル分割できないとか、そもそも分割しようにも一回でお引越しする関数の量が多すぎるとか、そりゃもう泣きたいレベルの残念コードになってます
今まで触ってきた関数やファイル達がめっちゃ可愛く見えてきます
他にもグローバル変数を1つ消そうとしたらコールドチェーンが長すぎて爆死したりしてました
結局諦めましたが「そもそもこの変数いるのか……?」な境地まで達しているので、いずれ手を付けられたらいいなーくらいに思っております
まぁ愚痴を零しても始まるものではないので、何とか「触りやすい」とっかかりを見つけて地道に一歩ずつ進んでいきます Hourier先生の次回作にご期待下さい

そんな感じでどうしたものかと思っていたところ、もうこういうのを実装して遊んでみようかなと思い始めてます(投げやり
もちろん邪悪フラグなtってとこまではいいんですが、モンスターの弱点って炎・冷気・閃光・分解の4つしかないのでこういう場合どう実装したらいいんですかね(しろめ
もちろん対になるこっちも要実装ですが、↑がメインなので強さどうしようかなーとかとてもつまらぬ理由で悩んでたりもします
何かいいアイディアがあったら教えて下さい!

あと、そもそもゲーム自体まともに遊べていない現状もあるので、コードとにらめっこするだけじゃなくて純粋にプレイしたい気持ちもふつふつと湧いてきました
そもそもバグだらけでも文句言えない感じで突っ走ってきたので、むしろリファクタリングは一旦お休みしてバグ取りに専念してもいいのかもしれません

何だか湿っぽい話になってしまいましたが今日はこの辺で
次回もお楽しみに!
ギャラリー
  • 開発者になろう GitHub編
  • 開発者になろう GitHub編
  • 変愚蛮怒3.0.0 進捗状況 その36
  • 変愚蛮怒 3.0.0 進捗状況 特別編 その3 C#への可能性
  • 開発者になろう
  • 開発者になろう
  • 変愚蛮怒2.2.2 進捗状況 その21
  • 変愚蛮怒(2.2.2 開発中版) ハイエルフレンジャー その5
  • 変愚蛮怒(2.2.2 開発中版) ハイエルフレンジャー その3