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

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

2020年03月

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

こんにちは、Hourierです
先週から今週にかけては別件で忙しくしていたのであんまり手付かずです
そして諸般の事情でこれは数ヶ月レベルで継続すると思われます。。。
ゆるりと進めていきましょう 何せどこにバグがあるやら

さて、気を取り直してリファクタリングの進捗をちょいちょいとお話していきましょう
cm-dump.c の分割ですが、ようやく3500行まで減りました
半分ですよ半分! 真っ二つにぶった切ったとしてもこれ! 実際は5000行になってから5分割くらいしたのかな?(数えてない)
ちなみにものの本によると「平均は200」だそうで(白目
個人的にも「600未満は青信号」「600~800行は黄信号」「800~1000行は赤信号」「1000行超えは異世界転生 死んでんじゃねーか」のボリューム感で修正かけてるので、やっぱり5000超えはめまいがしますね……
「ソースコードが一番のエルドリッチホラー」って#ぐりっどばぐ で言ったら場の全員に納得されてしまいました どうしてこんなになるまで放っておいたんだ!

とにもかくにも、4000行以上のファイルが13個、6000行のファイルに至っては0個まで減ったので、それなりにいい感じにリファクタリングできてきたんじゃないかと思います
この調子で3000行以上のファイルを0個にでき……たらいいなぁ

今日はこの辺で
次回をお楽しみに!

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

こんにちは、Hourierです

今週は長期出張でほとんど作業できませんでした(ぐでぇ)
とはいえfiles.c の分割はまだまだ続けていて、600行弱まで減らしまくりました
まぁここまで来れば一旦分割作業を終了させてしまって良いでしょう
適切なファイル名をまだ何も思いつかないので、リネームはせず一旦放置中です

ということで、#ぐりっどばぐ でhdns氏からモンスター案を1つ頂いて実装してみたり、同氏よりZAngband時代から残ってた思い出修正をしてみたり、ようやく戻ってきてmonster-process.cへ手を入れてみたりと、モンスターの実装がメインでそれ以外は小規模な修正に留まっております
その内monster-processもメインルーチンを除いてほぼいなくなるんじゃないか疑惑を持ちつつ、それでもいいかとじわじわ進めていきます

ところで最近のTA勢はヤバみが深いですね……なんですか4分半でクリアって こちとら45時間はかかるんじゃ
マクロは1024バイトでも足りないって声が聞こえてきたりして、お前は何を言ってるんだ状態です
パーペキにちょうどそこをリファクタリングしてたので、もちろんお応えしました!
2.2.2は絶対そんなタイムでクリアさせませんよ(暗黒微笑)

今日はこの辺で!
次回もお楽しみに♪

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

お前そろそろランクエまとめ直せよ

今週はfiles.c というファイルをひたすら分割しまくってました
元々7300行超えという超絶意味不明なファイルだったので見にくいことこの上ありませんでした (後述)
しかも同一ファイル内にあるのをいいことにやりたい放題な呼び出し関係だったので先達も色々と手を付けづらかったんだろうなぁと想像しています

しかし千里の道も一歩から
まずはどうでも良いコメントを消していきます
1行おきに「Success」とか「Mega-hack」とか無意味なコメントが大量に並んでおり、ソースコードは悦に浸るためのメモ帳じゃねぇと思いながらひたすら消しました 何がhackだよfuxk
それだけで1200行消えました
次に「files.c」という名前なのに「'C'を押した時のステータス表示を実行する関数」などなど、アホアホな関数を1つずつ別なファイルに移していってます(未了)
作業がてら、「filesが表示用の関数を呼ぶのは純粋におかしいだろ」ってことでばしばしコールバックしまくりました
さすればいずれは光明が見えるというものです
結果として、7300行→6100行→現在1940行まで減りました
現時点でファイル行数ランキング1位が39位です、手前味噌ながら中々の成果ではないかと思っております

とか思ってたらcmd-dump.c がいることに気付きました
こいつも7000行以上ありやがる……!
とはいえ、他の作業との兼ね合いがあるので何とかするのは少し先になりそうです
一段落したらこの子も掃除ですねー悪いコードはしまっちゃおうねー

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