投稿者 トピック: tiny timetable patch / 簡易タイムテーブルパッチ  (参照数 139942 回)

o_o

  • ゲスト
1955年のデータでは、Rord_Sign_Parking(安曇野の地下)がエラーの原因のようです。
設置場所に問題はなさそうなので、CWGの一種として判別されているのでしょうか。

マップが広そうだったので、個別に探すのは無謀だと思って、アドオンを外して...と軽く
言いましたが、大量にMergeされている可能性を忘れてました。。

良い方法とは言えませんが、別の方法で、2009年のデータでもエラーは回避できました。
他のdatつきの道路標識を入手して、「Name=Rord_Sign_Parking」に変更したPakを
別途Pak128フォルダに追加してみてください(Highway_Sign_Parkingも)。
これで起動時に勝手に置き換えてくれるはずです。

一応、こちらで使用したPakも添付しておきます。エラーは回避できたのですが、捜索用に
作った一方通行標識なので、個別に探して撤去する作業が必要です :-[

---9/10 追記---
探偵ごっこに巻き込んだ感じでしたが、解決できて安心しました。添付は同名Pak作者さんに
苦情がいかないように削除しておきますね^^;
« 最終編集: 2012/09/10 20:57 by o_o »

T.TAKAYA

  • 各駅停車
  • *
  • 投稿: 21
o_oさん

これでうまくいくことができました!

わざわざpakも作っていただいて,本当にありがとうございました。

Takemaro

  • 各駅停車
  • *
  • 投稿: 10
バグ報告を1点。
①時刻表ウィンドウを表示
②車庫内にいる列車を非表示にする
③その列車の「編成を解除」
④「表示を再構成」
FATAL ERROR: array_tpl<T>::[]
index out of bounds: 107 not in 0..105, T=N17gul_spreadsheet_t8row_infoE
PRESS ANY KEY

やっぱりこのへん(編成消失系)のバグは結構残っている感じですかねぇ

Takemaro

  • 各駅停車
  • *
  • 投稿: 10
前回の続きで次のターンでもTTTデータを作成してみました。

データダウンロードなどはこちらからどうぞ。

powan

  • 各駅停車
  • *
  • 投稿: 1
はじめまして、このパッチで楽しく遊ばせてもらっています。(バージョンは7月25日くらいにDLしたやつで、最新版ではありません)

各停、急行などをおりまぜたダイヤを組んでいます。こんな感じです。ttp://www.nicovideo.jp/watch/sm18713494
(このデータでは特急、急行、区間準急、各停、貨物の5種類の列車を複線に走らせています)
個人的に気になったところをあげてみます。ちなみに、私はアシスタント系は全く使ってません。
ダイヤが複雑なのでアシスタントでの簡易設定が役に立たないからです。1台ごとに車両のスケジュールから設定しています。



1 遅延回復のため、遅延の有無によってダイヤを変えられるといい。
2 車庫で個別の運行時間を設定した後に車両を複製すると、標準的なダイヤに戻ってしまう。コピー元のダイヤを優先してほしい。
3 車両選択のスケジュールから列車個別のダイヤを組んでいるのですが、経過時間よりも出発時刻で記述したいので切り替えられるようにしてほしい。
4 ttの単位に馴染みがないので、ttを表示する時計を内蔵してほしい。(時計なんか存在しなくても、他の列車のttを参照すればOK,といえばそのとおりですが。)
5 駅属性の無い通過点ではttの設定ができないのが残念。仕様的に可能であれば通過点にもttを設定したい。
6 「車両のダイヤを別ファイルに保存し、異なるデータで同じダイヤを再現する機能」が作れたら欲しい。

1 具体的には、遅延発生の有無を条件とするif文みたいな構文が欲しいなぁ、と思いました。
  「遅延時にはこの駅には停車しない」だとか、「遅延してたら車庫に送って他の列車に迷惑をかけない」みたいな使い方が考えられます。
2 同じ各停でも、緩急接続の有無でダイヤが異なる、みたいな時、複製するとダイヤも初期化されるので面倒くさい。
3 緩急接続の時、各停は急行が追い抜いた直後のタイミングで発車して欲しいのです。しかし、現在の方式では時刻と時間の変換が面倒くさいです。
  あと、途中一点の時間を変更すると、その後のタイミングもすべてずれてしまうので、複数回退避をする各停だと面倒です。
4 時計機能は他に影響を与えずにいろいろ遊べそうな予感がします。「クリックしたタイミングのttを保存する機能(時刻メモ)」があると嬉しいです。
  こういうことがしたい場合、普通は「実所要時間を参照」ボタンをワンクリックすればいいのですが、そうするとすべての駅の時間が入力されてしまいます。
  すべての駅にttを入力すると修正が面倒なので、主要駅のみにttを設定する場合が多いので、外部の時計があると嬉しいです。
5 補足無しです。もしも仕様的に可能であるなら、あると嬉しいです。

6 「誰得??」と思われるかもしれませんが、以下のメリットが存在します。
  シムトラでは列車の速度は積荷の重さに依存し、特に混んでいる旅客列車だと加速やカーブが遅くなります。
  そのため、厳密なダイヤを組むだめには、常に旅客が満員の状態でダイヤを作成する必要があります。
  私がダイヤを作成する時、まずは別データにコピーし、その後公共事業で人口やら産業やらを増やしまくって、旅客が常に満員になるようにして、
  その状態でダイヤの検証をします。
  その後、各列車の発車時刻や走行時間などをすべてメモし、本来のデータにコピーしてダイヤが完成、という手順でダイヤを作っています。
  なので、列車のダイヤを別ファイルにアウトプットし、それをインプットできると手間が省けて楽になります。

いろいろ挙げましたが、1以外は表示方法や労力軽減のための小ネタになってしまいました…。

kanedai

  • 各駅停車
  • *
  • 投稿: 22
powanさん
1 路線を作るのがとてつもなくややこしくなると思います。
2 路線の時刻表の画面で設定したらいいと思います。
3 路線の時刻表を設定という画面でできますよ。
5 早着した場合時間を待つので変になると思いますよ?

無料で作られていることをお忘れなく。。

Takemaro

  • 各駅停車
  • *
  • 投稿: 10
powanさん>

(2と3あたり)
んーと、
アシスタント系はまったく使われていないと言うことですが、「時刻表ウィンドウ」(路線編集で路線削除(たしか)の下にあるボタンで表示されるやつ)も使っていないと言うことですか?

時刻表ウィンドウでは、計画時間を路線ごとコピーして、始発駅の発車時刻(文字色がないので適当に設定)を調整できます。

たぶんpowanさんの言いたい機能はそういうことじゃないかな・・・?と推測。

(1)
kenedaiさんの言うとおり、ダイヤの作成が非常に面倒くさくなると思いますし、というかそれ以前にシステム的にも面倒くさくなると思います。
(4)
走行中の列車の収益の隣から現在時刻を確認できる・・・と思います。
(ただし周期時間で割ったあまりの表示ですが)

たしかに個人的に時刻表ウィンドウのどこかに
現在の絶対ゲーム内時刻(単純増加する数列の方)と、「デフォルトでは選択中の路線の周期時間で割ったあまりの時刻」が表示されると便利な感じ。
イメージ
現在時刻:123456tt
<(数字)>tt周期の場合の現在時刻:56tt
みたいな。

powanさんがttをどういう風に理解されているかわかりませんが、「tt=単純増加する数列を周期時間で割ったもの」なので、周期時間が異なる路線では違う時刻になってしまうんですよね…
そういう点ではたしかにわかりにくいかな、と思います

(5)
システム的には可能・・・なのか?中継点で停車する機能ってあるのだろうか。。。
ただやっぱり中継点で停車するのは変だと思う方もいらっしゃると思うんですよね。
今のところTTTはパッチファイルなので、設定ファイルを弄るような仕様にするのはよろしくないかと思う気がするので、これに関しては旅客属性のない駅を設置してそこで待機するといいかなーと思います。

(6)
やはり路線が変化してしまうと色々と面倒なことが起きる気がします。
(たとえば「ダイヤセーブデータ」に路線を記憶しておいて変化が無ければ云々と言うこともできるかもしれませんが、それはSimutrans的にアレな方法のような気がしますし、少なくともパッチの段階でセーブデータ形式とかそういうシステムの根本に関わる変更を加えるのはよろしくない(本家導入の確率が下がる)と思います。)

文章gdgdですが勘弁してください。。。

sima0222

  • 各駅停車
  • *
  • 投稿: 23
僕からもpowanさんの提案にコメントしたいと思います。
まずバージョンに関しては7/25が正確ならば最新か最新の1こ前だと思います。

1に関して、wackdoneさんの方針に、「できるだけ本家に比べて追加パラメーターを少なくしよう」という方針があります。その方針に則ると比較的難しい提案だと思います。
今のところは「遅延を未然に防ぐ」のが基本です。
僕は遅延対策を2つやっています。
・時間設定にゆとりを
駅間の時間設定にゆとりを設けています。基本的には、(実測時間)*X+20くらいに設定します。xには種別に応じて1.03~1.10くらいの値を入れます。+20は停車時間を想定しています。
こうすれば大体の場合、遅延は発生しません。しかし工事の時などはどうしてもダイヤが乱れます。そのような時のために
・車両基地の作成
車両基地を作って、「始発駅」にし、停車時間を長めに設定します。これにより小規模な遅延は解消できます。
また、車両基地は「強制段落ち」対策にもなります。路線のうち1編成が周期時間の1割以上遅延し、強制段落ちが発生した時でも、その編成だけ「間引き」されて、全体に与える影響は減らせます。

2についてはありだと思います。ただ、ダイヤによっては緩急接続の有無のパターンによって路線を分けたほうが楽に管理できると思います。(あくまでもアシスタントを使っている立場からの家権ですが)

3については時刻表ウィンドウだと出来るんですけど、時刻表ウィンドウだとあなたのダイヤを作るのは少し難しいかもしれません。…アシスタントの機能改善によりあなたが使えるような時刻表ウィンドウができることを期待します。
なお、2に書いたように緩急接続の有無によって路線を分けると時刻表ウィンドウがつかいやすくなるとおもいます。

5についてはおそらく単線での行き違いを想定したものかと思いますが、中継点で止まることに違和感を感じる方が多いようなので難しいかもしれません。

6は賛成します。1に書いたような事情で、Excelでダイヤを作ってSimutransで数字を入力するってことが多いので、CSVデータが読み込めるといいなと思っています。
ただしTakemaroさんの書いていらっしゃる欠点は考慮すべきだと思います。


長文失礼しました。日本語苦手なので読みにくいところあったら聞いてください。

Takemaro

  • 各駅停車
  • *
  • 投稿: 10
(1)遅延に関してはやはり未然防止(始発駅でなくても途中駅で余裕を持たせても後続列車に影響がないのであれば問題ない わけなので)かなーと

(2)たしかに待避パターンの違う列車だと面倒くさいですね。

僕は路線を2つつくっています。まぁ仕方ないと思います。
でもまぁ
計画時間を路線の全編成に適用する
みたいなボタンがあると便利かも

でも考えてみるとスケジュールウィンドウで計画時間を設定していると言うことは路線内で列車によって計画時間を変えられないのか…

駅によって
□この駅に停車時間を設定
みたいなボタンで停車時間の設定をオンにした駅だけ停車時間設定ができるようにする・・・あーどんどん仕様が複雑になって使いづらくなっていくなw

(3)列車の詳細ウィンドウから「列車の時刻表を表示」?・・・んー何か(技術的な意味で)面倒くさいような・・・

(5)単線での交換は途中駅での発時刻が定刻であれば勝手に信号で待機してくれるかなーとも。

(6)あー「この路線(または、路線群)の時刻データを保存」で路線毎に保存する形式にすれば全路線が変化していないかチェックしなくていいわけだし技術的には可能か?・・・とはいえバグ多発の予感

sima0222さん>竹麻呂って呼んで頂ければ大丈夫です。いちいち英字に切り替えるの面倒でしょう?(違

o_o

  • ゲスト
>powanさん
動画拝見しました。最小設備での接続と退避っぷりに、思わず、「いいね!」と叫びました。
自分はそもそも配線がうまくないので、綺麗に退避してくれないのです...orz

遅ればせながら、1)、2)にコメント(...だけ)。。。
1)単純な処理で、回復アシスタントに遅延時限定処理が実装できれば、便利かもしれないですね。
 乗車後に停車駅が変わるのは乗客的にどうか...は別として。
 ・遅延時スルー:経路探索上、次は駅フラグ(ある?)を中継点と偽装するか、スケジュールを1つ
   飛ばす。複雑な指示にならないように、スケジュール上の1点(n番目)に限定する。
 ・遅延時入庫:始発駅行きを車庫送りなら混乱は少ない?でも、出庫させなくてもいいのかな。
   出庫予約は、調整過渡期の混乱防止用にも欲しいけど、作るのは大変そう。

2)路線の設定が優先してコピーされるのは、本家の仕様で、TTTもこれに準拠した形のようです。
  中継点を追加するなど、標準路線から外してコピーすれば、編成の設定をコピーできます。

------------------------
wackdoneさん不在のまま、スレッドが伸びてきました。意図的に特殊な指示を出したりしてますが、
無編成路線を除けば、ほぼクラッシュすることはありません(鉄道以外は全く試してないけど)。
些細なものばかりで、確認済みの内容が多いかと思いますが、一度まとめさせてください。

◆クラッシュ:時刻表表示中の路線スケジュールの駅(中継点)削除し、時刻表改定や再構成を押した時。

◆バグ1:(以前yoyoさんから指摘?)時刻表再構成前に路線表示を解除をすると、不必要な駅表示が残る。
    再度、路線表示、解除を行うと想定した表示になります。
◆バグ2:運行周期のない編成に始点発車時刻を設定できるが、これを設定しても効果はない。
◆バグ3:一周時間短縮時に、マイナスになる区間の値がおかしくなる。
◆バグ?:運行周期のみの運行時、nowの計算のタイミング上、ほぼ遅延状態で表示されます。不都合は
    感じませんが、報告しておきます。
◆バグ?:路線ウインドウで、ピッチ>周期、シフト>ピッチに変更した状態で、始発時刻再計算が可能なよう
    です。不都合はないですが、安全上懸念があるようでしたら、修正をお願いします。
    
 この、シフト<ピッチの制約は何者ですか?24時間周期の5時と7時に始発(遅延は翌日5時まで待機)
のように計算できても良さそうですが。...自分は、この辺りが理解できてないっぽいです ???

◆その他1:数字入力時にはお決まりのクレームですが、時刻表で、改定時にマウスとキーボードの往復に
    なるのが気になります。改定箇所を選択後、そのまま数値を入力してHelpを開いたり、数値入力後
    Enterを押して、変更されないまま次の改定箇所選んだりしてます。...いちゃもんですね ;D
◆その他2:遅延許容率が10%なのを路線ごとの設定値にして、これを越えたら始発時間再設定というのは
    どうでしょう。種別や距離に関係なく10%なのは、ちょっと不便に感じました。

◆おまけ:駅並び替えは3次元+αの難問ですね。路群表示するには、現時刻表の制約(上から順に進行)が
    ネック。自分は、枝のない○○線単位で時刻表を表示し、路群間の調整が必要な時は外部に出力して
    ます(ソート以外の理由が大きいですが)。    
◆おまけ:時間見積りのほうも、sintやらuintやらがたくさん出てきて、誰が誰だか判りませんが、大変そう
    なのは分かりました。。実測値のほうで、管理に有用な情報を示していただければ。
     実測値で管理上特に意味があるのは、周期に間に合わなかった原因を示すことですかね。周期内に
    間に合わなかったら、時間を停止するモードなんてどうでしょう。
« 最終編集: 2012/09/16 10:09 by o_o »

sima0222

  • 各駅停車
  • *
  • 投稿: 23
◆その他2:遅延許容率が10%なのを路線ごとの設定値にして、これを越えたら始発時間再設定というのは
    どうでしょう。種別や距離に関係なく10%なのは、ちょっと不便に感じました。
僕は路線ごとの設定値より、Simuconf.tabで設定できたほうがいいと思います。
路線ごとの設定値にしてしまうと設定項目が増えてしまって面倒くさい。

◆その他1:数字入力時にはお決まりのクレームですが、時刻表で、改定時にマウスとキーボードの往復に
    なるのが気になります。改定箇所を選択後、そのまま数値を入力してHelpを開いたり、数値入力後
    Enterを押して、変更されないまま次の改定箇所選んだりしてます。...いちゃもんですね ;D
これは是非お願いしたいですね。

o_o

  • ゲスト
TTT-47パッチの適用について
« 返信 #191 on: 2012/09/30 17:56 »
wackdoneさんが、戻ってこられる気配がしない ;Dので、ビルドに挑戦してみました。

ttt-047をr5772に当ててみたところ、gui_timingbar_tのundefindの後に

collect2: ld ヘXe[^X 1 ナIケオワオス
make: *** [build/default/simutrans] Error 1
なんて表示されて失敗してしまいました :'(
どうしたものか分からないので、ご教授ねがいます・・・。

'strlen'、'strcpy'、#include<typeinfo>のエラーを我流で変更したのがいけなかったのかな。
パッチを当てないでビルドかけたのは完成(起動確認)したようです。

----10/02 21:20追記----
自己解決しました。エラーの意味は分からないままですが、
config.defaultに[SCHEDULE_TIMETABLE_TIMINGBAR=1]を追記したら
無事に(?)完成しました。とりあえず、動かして問題がないか確認してみます。
« 最終編集: 2012/10/02 21:31 by o_o »

T.TAKAYA

  • 各駅停車
  • *
  • 投稿: 21
お久しぶりです。
o_oさん

ビルドお疲れ様です。o_oさんがTTTパッチを当てたバージョンは何でしょうか?
安定版112.0が出たので、そのバージョンでTTTをやりたいなーと思ったので・・・

なんかわがままな文章ですいません。できましたら解答よろしくお願いします。
« 最終編集: 2012/10/27 23:24 by T.TAKAYA »

o_o

  • ゲスト
ご無沙汰しております。わがままを吐くだけなのもどうかと思ったので、簡単に改造したりして遊んでいました。
時刻表とスケジュールの連動が何とかならないか、なんて考えているうちに行き詰って、しばらくは、simutransも
起動させてなかったです...(--;)

ビルドの段取りについては、多少は力になれるかもしれませんが、現能力では、パッチをメンテナンスして公開する
ところまでは辿り着けそうにないです。
申し訳ないですが、自己責任でパッチを適用するか、えらい人を気長にお待ちください。


>TTTパッチを当てたバージョンは何でしょうか?

自分が当てたのは、r5772(111.3)とr5788の2種類です。
r5788のソースはSVNから入手してください。これが面倒なら、r5772(111.3)で代用できるとのこと。
パッチコマンドなりで、入手したソースにTTTのパッチを当てて下さい。
READMEにあるとおり、r5772では、simversion.hをテキストとして編集して手で当てることになります。

自分は、MinGWとVC++2010 Expressとでビルドしてみました。
日本語化wikiで解説してくださった方のおかげで、MinGW、gcc版は初見でも準備できました。libzだったかを入手
する際に、どのディレクトリにあるか、ちょっと探し回った記憶がありますけど...。

MinGW、gccでビルドをかけたところ、こちらでは、4箇所エラーを潰してexeが完成しました。どこか段取りに誤りが
あったのかもしれません。ビルドがすんなり通ってくれれば、TTTのみのバイナリを上げてもと思ったのですが、
wackdoneさんと連絡が取れないこともありますし、改変したものを無闇に公開するわけにはいかないかなと。


>安定版112.0が出たので、そのバージョンでTTTをやりたいなーと思ったので・・・

r6000(112.0)のソースをお借りしてきました。これにr5788-047のパッチを当ててみると、いくつか弾かれる項目が
あるので、変更点をそれぞれ確認しなくてはいけないですね。パッチ行のズレが大きいものもあるようです。
形式的にビルドが通っても、深刻な不具合が出ないとも限らないので、パッチが古くなってきたら、下手に使わない
ほうがいいと思いますよ。

vector_tpl.hで弾かれる所を調べてみようと思ったのですが、ちょうどVC++の期限が過ぎてしまったので、詳しく
確認できていません。無料登録するだけみたいなので、暇があれば、ちょっと見てみようかと思います。
修正が少ないリビジョンから調べていけば、112.0でも一応動くようにはできると思いますが、具体的な修正に言及
できる見込みはないので、そこのところはご了承ください。

----11/04 15:25追記----
こちらでは、r6000TTTが完成しました。が、時間を止めて表計算ソフトで作業している時に、なぜかsimutransが
応答停止してしまいました。。。ちょうど月の変わり目だったようですが。
再現しないので、オリジナルに問題があるのか、パッチの適用に問題があるのか、simutransとは関係のないところに
問題があるのかも不明。うむむ :'(
久しぶりにTTTを導入しましたが、やっぱり、始点での停車時刻くらいは計測しないと使いにくい感じがしますね。
ピッチよりも長い時間停車する周期だと、導入する意味が薄れてしまうし ::)
« 最終編集: 2012/11/04 15:35 by o_o »

sima0222

  • 各駅停車
  • *
  • 投稿: 23
僕もr6000へのパッチ当てに挑戦しています。
念のためオリジナルにあるファイルを書き換える場合は手で当てています。
明日明後日と休みなので、明後日には完成するといいなって思ってます。
バージョン番号は113.5にすればいいのか?

>>o_oさん
vector_tpl.hについてですが、オリジナルの該当箇所のソースが変更されていました。
パッチの方に"original bug fix"というコメントがありますので、r5788~r6000の間に本家のほうで修正されたと思われます。
« 最終編集: 2012/10/31 01:15 by sima0222 »