Cities Boxを作り直します

with コメントはまだありません

突然こんなタイトルですみません。

Cities Boxの更新を続けるにあたって今、大きな壁に直面しています。

Visual C++ Runtime Library Runtime Errorです。

SnapCrab_NoName_2018-3-14_15-42-8_No-00

このエラーの厄介なところは、考えられる原因がいくつもあってはっきりしないところです。

このエラーは、まだ未公開の開発版で、どのWindows 10のPCでも出現します。

このエラーをスルーして先に進むことはできず、どうにかしてエラーが出ない状態にしなければなりません。

 

「Visual C++ 再頒布可能パッケージをインストールすれば直る」とか、「サブルーチン時にエラーが起きたときに出る」など

いろいろな噂がありますが、どうやら今回の原因は違うようで、それらには当てはまりません。

今回の場合はどうも、利用する配列変数を増やすとこのエラーが発生するみたいで、

使用する配列を減らすと同時に、ついでに無駄な処理を減らして動作を改善するために、

いっそのことソースコードを組み直そうと判断しました。

 

単に組み直すだけなので、Walls Waterlooみたいに(停滞しているとはいえ)長期間かかることはないと思います。

処理を効率化し、さらにソースコードを見やすくするのが今回の目的です。

現在考えている具体的な内容を下に示します。

1.ソースコードは動作順序どおりに書く(スパゲッティコードを避ける)

2.関数・命令化する必要がない、あるいはあまり使っていない関数・命令は廃止する

3.動作内容を大まかにカテゴリ分けし、1つのラベルにまとめる

4.ソースコードの大まかな全体像を最初にコメントに記述する

5.ファイルの読み込みは原則一回のみとし、以後は変数やバッファリングを活用する

6.マップデータ以外にはなるべく配列を用いず、アドオンのデータには配列ではなく単純な変数を用いる

7.アドオンの向きの調節などはアドオンの設置時に済ませ、その後に行わなくても済むようにする

8.アドオンの読み込みは、マップデータの読み込みと同時に行う

 

…とりあえずこんなところでしょうか。あくまでもこれは目標なので、全部実現できるかはわかりません。

まあ、こんな訳でして、暫くの間新機能の実装やバグ直しなどは見送らせていただきます。

Leave a Reply