投稿者 トピック: [r4851] private sign: 以前のセーブゲームで「ルートなし」が発生する  (参照数 7185 回)

z9999+

  • 管理人
  • 急行
  • *
  • 投稿: 381
private signのデフォルト設定が、「所有者のみ許可」になっているため、以前のセーブゲームを読み込むと、大量の「ルートなし」が発生する。
すべてのprivate signを探して、1つ1つ設定を変更することは事実上困難。
0.110.1と、それ以前のゲームの読み込み時に、private signのデフォルト値を、「公共事業以外すべて」に設定するべき。

引用
      // init ownership of private ways signs
      if(  file->get_version()<110007  &&  besch->is_private_way()  ) {
         ticks_ns = ticks_ow = 0;
         const uint owner = get_player_nr();
         if(  owner >= 8  ) {
            ticks_ow = 1 << (owner-8);
         }
         else {
            ticks_ns = 1 << owner;
         }
      }

When I load older savegames, many 'No route vehicles' happens.
Current default setting of private sign is 'Allow owner only'.
But version 0.110.1 and before, it was 'All players except public'.

It is not easy to search all private signs and change their settings one by one, because there are many.
So, if 'file->get_version()<=110001  &&  besch->is_private_way()', it should set flag as 'All players except public'.

prissi

  • 各駅停車
  • *
  • 投稿: 45
Good suggestion, thanks.