トップページgamedev
819コメント672KB

鉄道経営系ゲーム製作スレッド Ver.7

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2010/03/30(火) 22:05:34ID:62jSr8U0
鉄道および都市経営シミュレーションゲーム制作の
情報交換スレッドです。

[前スレ]
鉄道経営系ゲーム製作スレッド Ver.6
http://pc11.2ch.net/test/read.cgi/gamedev/1239023536/

[このスレッドで主に話題となるゲーム]
FreeTrain EX Another version
http://sourceforge.jp/projects/freetrain-exav/
FreeTrain EX Another version wiki
http://www19.atwiki.jp/freetrain-exav/
Tera Train
http://teratrain.la.coocan.jp/wiki/?FrontPage
FreeTrain
http://www.kohsuke.org/freetrain/
FreeTrainヘルプ
http://www.kohsuke.org/freetrain/wiki/pukiwiki.php  (IDとPASSはダイアログよく読んだら分かる)

[関連サイト]
アートディンク
http://www.artdink.co.jp/
0139名前は開発中のものです。2010/04/09(金) 00:08:12ID:qT+3Ff6z
>>138
>>・駅停車中の列車のダイヤを変更しても反映されない。

>これEXからそうですよね。
>へたにいじるとバグ誘発しそうなんでいじれない。

表現が曖昧だったかな?正確には
・駅停車中の列車に対して「列車の配置」メニューで
 列車に適用するダイヤの種類を変更しても反映されない。

FreeTrainEx20050903バージョンでは動きます。
ただし、駅停車中の列車に「通過」は適用できませんが。
0140名前は開発中のものです。2010/04/09(金) 00:38:33ID:dMsSKg7p
>>139
意味は伝わってます。

んー。Avではずいぶん昔から反映されなかった気がするな。
気のせいかもしれんので。時間あるとき見ておきますが優先度は低めです。

DirectMusicのエラーがやっぱり再現しなくて……
一度自前でエラー起こせたセーブデータでも、リロードするとエラーにならんし。


あと要望がフォーラムにでてましたので転載。

-----
閉塞区間と連動の分岐が欲しい


閉塞信号プラグイン
ttp://www19.atwiki.jp/freetrain-exav/pages/79.html
大変便利なのですが、
閉塞区間に列車が止まっている場合に信号で止まるのではなく、
ポインタが分岐するプラグインを希望します
具体的には普通列車が緩急接続をする駅に近づくと後ろをチェックし、
すぐ後ろに特急が近づいていたら分岐して待避線へ待避という具合に使いたい

分岐→直進→分岐→直進を列車が通るたびに自動で変わるポインタや
2分の1の確率でどちらへ進むか分からないミステリポインタも欲しいです

お願いばかりですいません。

-----
はっはっは。なかなか難しい要望がきましたね。
nanashiさんやってみます?
0141名前は開発中のものです。2010/04/09(金) 01:59:40ID:Zrwz6wLC
if( leadTime!=0 ) {
MUSIC_TIME t;
//readtime(msec) => referencetime([100ns])
handle->ReferenceToMusicTime(leadTime*10*1000 + GetClockTime(handle), &t);
leadTime = t;
}

でどうでしょうか
多分vbとc++では時間の基準値が異なるため(64bitの扱い?)
c++に書き換えたときこの部分が抜け落ちたのではないでしょうか(昔のdirectaudioを見るとコメントアウトしてある)
それでleadtimeはmsec単位で良いのですよね?違っていたらごめんなさい
デバック出力でleadtime-MusicTimeが約800≒DMUS_PPQ[4分音符]≒200ms?となっているのでおそらく間違いはないと思うのですが…
0142名前は開発中のものです。2010/04/09(金) 02:28:14ID:dMsSKg7p
>>141
おおー
なるほど、msecとnsの違いでしたか。
たしかに旧のC#で書かれたDIrectAudioのソースには*10*1000がありました。

DirectMusicは全然詳しくないので助かります。

とりいそぎ、この変更をしたDirectXWrapperを取り込んだβ2.0.1.8とPrototype3.0.1.2
をリリースしました。
よろしくお願いします。
0143名前は開発中のものです。2010/04/09(金) 10:45:37ID:ilLLmYNJ
あれー?
あれほどコテハンつけろNGにするからと息巻いていたのに、
翌日にはそんなことも忘れて普通に会話ですかwww
やっぱり、こいつ言うことがころころ変わるねーw
自演までして擁護しといてこれかよ、これじゃ住民も苦労するわな。
この先迷走するのは目に見えてる、住民乙www
0144名前は開発中のものです。2010/04/09(金) 11:25:38ID:/UaSKGJK
草はやしてるガキんちょよりは大人ってことでしょ。
0145名前は開発中のものです。2010/04/09(金) 13:13:23ID:BDgoEHh6
頑張っててすごいんだけど、今さらこんなゲームの拡張してどうすんだ?というのが素直な感想です
どうせならもっとマシなのを1から作ればいいのに
0146名前は開発中のものです。2010/04/09(金) 13:28:41ID:/UaSKGJK
>>145
よしまかせた!
0147名前は開発中のものです。2010/04/09(金) 13:31:56ID:SVgIJjSg
ここまで色々後付すると中はすさまじい事になってるんじゃないかと。
確かに1から作り直してFreeTrainExBver?にすれば、中はすっきりするだろうし、
仕様追加も楽だろうし、速度的にも有利だけど、書き直すってすごく勇気が要る事
だしなぁ。
0148名前は開発中のものです。2010/04/09(金) 16:29:30ID:fX0cUTn0
一旦整理したほうがいい状態になってるとは思うけど
ユーザーからみたら地味な作業だから評価されづらいんだよね
0149名前は開発中のものです。2010/04/09(金) 18:13:21ID:pg88Bs1x
んなこたない
0150名前は開発中のものです。2010/04/09(金) 21:19:23ID:SVgIJjSg
とりあえず現状ボトルネックになっている(と想像してるだけだけど、たぶん間違って
ない)グラフィック関係だけでも整理できれば、結果として体感速度が上がる(と思う)
ので、評価されるんじゃない?

今作業してるの経過時間関係はさらにぐちゃぐちゃだろうけど、これからも仕様変更が
入るだろうから、今いじるのは得策ではないかな。
0151名前は開発中のものです。2010/04/09(金) 21:55:26ID:pg88Bs1x
オリジナルのDirectXラッパーじゃなくて一般に普及してるものをチョイスした方がいいかもな
0152riorio ◆rio2xMQlrQ 2010/04/09(金) 22:04:56ID:dMsSKg7p
>>147 >>150
そういうのは自分の仕事ではないと認識しておりますので。
得意としてて「自分がやってやるぜ」って人が出てきてやって
くれるといいなと思ってます。


>>151
そこまで一般に普及しているライブラリってないのよ〜
ライブラリとしては3種類ぐらいあるけど、どれ使っても普及してなくて新たに入れてもらう
ことになるか、今後のメンテナンスが放棄されてるか、まだ発展途上でバグが多く
ドキュメントがほとんどないか、無駄に重いか。
んでプレイヤーには新たにライブラリを入れてもらうことを強いることになるわけだし。
メリットはなにもないですね。
オリジナルのラッパーを書いてくれた方には本当に感謝しています。
最もスマートで美しく速い手段を実現してくれたので。
0153名前は開発中のものです。2010/04/09(金) 22:30:21ID:SVgIJjSg
>>152
別に名指ししてやれとは言ってないのでやらなくても大丈夫でございます。
誰かそういうの得意な人はいねーでございますかねぇ?

オラは他人が読んだら怒り狂う悪のプログラム道を極めんがため、日々悪の
ソースを書いておりますので、プログラム的には力になれないでございます。
申し訳ない。
0154名前は開発中のものです。2010/04/09(金) 22:57:03ID:dMsSKg7p
「A列車つくるよー」スレのorzdenが少しずつ進化していってるようで面白い。
道路が先に実装されたのかー
いいなぁ、道路。

開発はオープンにしてないみたいなので、またーりヲチしてますw

>>153
直接開発に加わらなくても。
バグとかで詰まった時にヒントもらえるだけでもありがたいです。
0155192010/04/10(土) 05:46:27ID:jvjBnLgR
やっと規制解除された〜

プログラムの実行速度に関しては、少なくとも画面周りに関しては
特に重い感じたことは無いけど、他の人と認識が違うのかな?

進行のほうの処理については、まあ確かにボクセル単位の
処理であるにも関わらず微妙に遅い気はしなくもないけど、
AV2までの時間単位であれば特に気になったりはしないなぁ。
0156名前は開発中のものです。2010/04/10(土) 09:36:44ID:6CnHYOPw
うちでFTを遊ぶ時はまず最初にヘイトカットでビルを消す作業からスタートです。
0157192010/04/10(土) 15:32:02ID:jvjBnLgR
地形ファイルの入出力プラグインを作成しました。

http://www.free.netgamers.jp/freetrain/

Av2.0.1.8で、りおりおさんのチョココロネマップを出力し、
Av3.0.1.2で、そのファイルを読み込むまでは確認しました。

ファイル形式は残念ながらいい加減なxmlで妥協して
しまいましたが、一応、国土地理院で配布している
標高データを読むことはできるようです。

ちなみに、読み込み処理はものすごく遅いです。
フリーズしたかと勘違いするくらいに。
誰か MountainVoxel.getTotalHeight() に対応する
高速な MountainVoxel.setTotalHeight() 作って〜
0158名前は開発中のものです。2010/04/10(土) 15:50:44ID:yVu9ouMw
乙です〜。
0159名前は開発中のものです。2010/04/10(土) 20:45:28ID:rcp576dL
あぷろだにウィルス(マルウェア)を発見しました
ftup0075ですので絶対に見たりしないようお願いします
管理者の方は削除をお願いします
0160名前は開発中のものです。2010/04/10(土) 20:49:00ID:yVu9ouMw
ftup0075削除しました。
報告乙蟻です。
0161riorio ◆rio2xMQlrQ 2010/04/10(土) 22:41:56ID:JFcBL7UR
>>157
乙です

開発言語なんですか?
.NET 1.1に移植できればEXでの書き出しもあるいは……

>>160
管理乙です

>>all
駅プロパティの日計が1日たたずにリセットされるののほかに
Prototype3系列でエンバグしたとおもわれる部分てありますー?
集計関係とか全然チェックしてなしにリリースしてるから。
ほかにも問題点あるならまとめて修正してリリースしないと。
0162名前は開発中のものです。2010/04/10(土) 23:12:19ID:VYrNe+/N
なんで自分で直したのに自分でテストしないの?
数字関係は見ただけでわかるだろうに。
全て他人任せかよw
0163名前は開発中のものです。2010/04/10(土) 23:15:54ID:JFcBL7UR
ぶっちゃけるとPrototype3で一度も駅プロパティあけたことないから
見たこともなかったw

案外開発側って自分で想定した動かし方しかしなくて、想定外の
操作したときになんかヘンなになるってことを見落としがちなので
開発者の立場を離れた視点からプレイしたほうがバグってみつか
りやすいのです。
0164名前は開発中のものです。2010/04/10(土) 23:39:54ID:SSIG5HxM
だからってテストしないのもどうかと思う
0165名前は開発中のものです。2010/04/10(土) 23:56:27ID:35VtW2Dn
2年1月までほっといたけど、駅のプロパティ以外に集計周りの問題やゲームに支障がでるようなバグはないと思う
0166riorio ◆rio2xMQlrQ 2010/04/11(日) 00:50:18ID:++YAHBfo
ソース追いかけてみたところ、
駅のプロパティのところに直接的なバグがあるのではなく、そこで呼んでた
core\world\TimerLength.csのなかの
> public static TimeLength fromHours ( long hours ) { return new TimeLength(hours*60*60); }
となるべきところが
| public static TimeLength fromHours ( long hours ) { return new TimeLength(hours*60); }
になってたのがマズかったみたい。

日のほうが
> public static TimeLength fromDays ( long days) { return TimeLength.fromHours(days*24); }
で引用してたのでそのまま1/60になってたっぽい。

で、駅プロパティ以外にもTimeLength.fromHoursやfromDaysを使ってる
ところがあったら全滅だと思うんだけど。
なかったのかな?
0167名前は開発中のものです。2010/04/11(日) 01:21:04ID:1JGrDmBK
そこまでわかっててなぜ調べないの?
もしかしてIDEの使い方知らないの?
位置はわかったけどどんな影響があるかわかんないとかそういうこと?
0168名前は開発中のものです。2010/04/11(日) 01:30:20ID:hT+cjjpG
それは違うんじゃない?
timelengthはminnute単位で数えてるから

じゃあ何所かっていうと…
書き換え後のソースを見てないから違うかもしれないけど
clock.csの中でtimelengthのtotalminutesが参照される場所
これはregisterOneShotでcurrentTimeとの加算をしている
予想だけどcurrentTimeが秒単位になっているからじゃないかと
0169名前は開発中のものです。2010/04/11(日) 01:33:00ID:A7koO+23
>案外開発側って自分で想定した動かし方しかしなくて、想定外の
>操作したときになんかヘンなになるってことを見落としがちなので
これはわかるよ。
主観的な観点だけじゃなくて客観的、第三者的な観点でチェックするというのは。
今回のはダイアログ開いたりして見てればすぐわかるようなものじゃないのか?
と思って言ってるのだけど。
もちろん協力なんかしないというわけじゃないが、見てすぐわかるものぐらいは
リリース前に確認して欲しいと思う。
0170riorio ◆rio2xMQlrQ 2010/04/11(日) 02:42:21ID:++YAHBfo
>>167
>そこまでわかっててなぜ調べないの?

今回直して、潜在的にあったであろうバグはとれたであろうから、
いまさらそれを調べることに価値ってなくね?

>もしかしてIDEの使い方知らないの?

知ってるか知らないかで言えば知らない方に入ると思う。
EEだからかしらんがフォームに不整合あったらすぐ落ちるし。
快適じゃないんでがりがりコード書くときは外部単体エディタ、検索したいときは
Windows標準機能の「検索」で。

>位置はわかったけどどんな影響があるかわかんないとかそういうこと?

微妙に違うかな。
駅プロパティ以外にも影響与えてそうなんだけど与えてなかったのかな?
わかんないけど。
ってとこ。


>>169
線路引いて駅立ててホーム作ってダイヤ組んで列車往復させてポイント作って
分岐させてみたいなテストはやったよー。当然。
最初は「駅を発車しねー」とか「ポイントで曲がらねー」とかバグあったしw
それを繰り返してバグなくなったなと判断した時点で公開したけど。
駅プロパティを見るということがテストからすっぽり抜けてたのだ。
0171名前は開発中のものです。2010/04/11(日) 03:21:34ID:1JGrDmBK
じゃあつまり今回の変更で正しく動作しなくなった部分がないかちゃんとテストしてないってことなんだね
0172riorio ◆rio2xMQlrQ 2010/04/11(日) 03:25:10ID:++YAHBfo
それは「ちゃんと」の定義によるんじゃないかな。

全plugin全機能もうらしてなきゃダメ、といわれたらやってないですし。

基本機能をひととおり、ということならテストしてます。
0173名前は開発中のものです。2010/04/11(日) 04:20:04ID:KPP7l2ps
すぐわかる、直せる&ゲームに直接影響の無いような軽度のバグなら別にどうでもいいさ。
ただ、じっくりテストする余裕が無いというなら、リリースを急ぎすぎない方が良いんじゃない?
0174名前は開発中のものです。2010/04/11(日) 04:37:53ID:A7koO+23
まあ、これは開発者がどこまでやる責任があるのかという定義づけの問題だろうな。
俺はここまでしかしないと言えば、それまでだろうし。
厳密に全ての機能を確認となるとかなりの時間かかるだろうし。
いままでの担当者もそこまでやってないと思うけどね。
まあ、忘れていたのならしょうがないよな。

リリースが早いのはみんなにとってメリットもあるけど、テストしきれていないという
デメリットもある。
バグもじっくりやってたたき出すという方法ではなく多くの人にプレイしてもらうことでバグを
叩き出す(いわゆる人海戦術)という方法をとられているみたいだけど、デバッグに協力しよう
という人が多くないと意味ないよね。
現状いろいろと報告してくれる人がこのスレにはいるみたいだから、機能しているけど。
0175192010/04/11(日) 05:37:06ID:nFKc4etn
開発者にとっての理想は、自分では一切テストプレイせず、
テストは完全にテストプレイヤーに任せられる環境だよね。
そういう環境だと開発スピードは飛躍的に向上するよ。

数あるA列車ライクなフリーソフトの開発プロジェクトで、
何故FreeTrainだけがこんなに成功したのかなと不思議に思い
川口さんが現れた頃のA列車過去スレとか読んでみると、
その開発者側の理想環境がかなり実現されているよね。
0176192010/04/11(日) 05:45:19ID:nFKc4etn
>>161
開発言語はもちろんC#ですけど、環境のことですかね?
Visual Studio 2008 Standard Edition、.NET 3.5 を
使用してますが、コンパイルはコマンドラインからですw

本当はちゃんとソリューションファイルを作成して、
それを .NET 1.1 の開発環境持ってる人に渡してビルドして
もらえば Ex にも対応できるのでしょうが面倒なので……。
0177riorio ◆rio2xMQlrQ 2010/04/11(日) 07:23:41ID:++YAHBfo
>>179
以前C#は知らないみたいなことおっしゃってたきがしたので
C#じゃないのかと思ってました。

C#だったら、SharpDeveloper入れたら1.1向けビルドできるかも。

今回のバイナリのビルドするときオプションでターゲットは.NET2.0にしてました?

ウチ、Express Edition入れるときに一緒に.NETも3.5になっちゃってるんで。
2.0でも3.0でも3.5でも動いてしまうのですが。
もしターゲットが3.5になってたら、2.0しか入ってない人のところで動かないやも。
0178192010/04/11(日) 08:06:09ID:nFKc4etn
>>177
C#知らないって言いましたね。
まあ知らないんですけど、ごく簡単なコーディングなら出来ます。
簡単な処理なら Java や C++/CLI とそんなに違わないですからね。

それに、FreeTrainから呼び出してもらっているDLLはC#ですけど、
そこから更に別のDLLを呼び出していて、それはC++で記述しました。
まあつまり、C#側のDLLはただのラッパーです。


.NET は 3.5 でコンパイルしてました。
3.5 でコンパイルしたら(3.5専用のライブラリを
使用していなくても)2.0では動かないんですかね?
.NET 事情は全く知らないのでよく分かりません。

もし動かないという報告があれば、2.0 でコンパイルしなおします。
0179riorio ◆rio2xMQlrQ 2010/04/11(日) 09:35:19ID:++YAHBfo
Prototype3.0.1.3出しました。
日計関係なおってるはずです。

ただし、3.0.1.2以前に建てた駅は一度撤去して建て直していただく必要があります。
建て直さずに続行すると集計が狂ったままになります。

中身の話すると、駅を建てたときに日を繰り越す処理のイベントハンドラがレジスト
されるので、イベント周期がその時点で決められてしまうため。
3.0.1.3で読み込んでもイベントが3.0.1.2時点の周期で起こってしまうから。


>>178
サブPCから.NET3.5/3.0をアンインストールしてみて動かしたところ、plugin動いた
ので、大丈夫なようです。
もし他の人から動かなかったーって話が出てきたら2.0でお願いします。

表面的なことをいうと、ファイルメニューのなかで「終了」と並びになってますけど、
ここよりもマップキャプチャなどと並びになったほうが美しい感じですね。
メニューの--仕切りの間のどこにはさみこむか指定書式があったような……
0180192010/04/11(日) 11:26:20ID:nFKc4etn
>>179
.NET2.0でのご確認ありがとうございます!
環境をいじれるマシンが手元に無かったので助かりました。

メニューの位置ですけど、確かにそれは感じたんですが、
変更方法が良く分からなかったので諦めましたw
ググレカスというやつですね。

でもあえて聞きます。
ググらなくてもC#が頭に入っているというすばらしい方、
いらっしゃいましたら是非お教え下さいませ。
0181192010/04/11(日) 12:04:16ID:nFKc4etn
今、線路情報の読み込み処理を作成しているんですけど、
何故かマップと線路の位置がズレてしまうんです。

で、その検証用にセーブデータが欲しいのですが、
どなたかご提供頂けないでしょうか?

欲しいデータは、

・Avの2系又は3系
・地形がある(平面のみのマップではない)
・四方が海に囲まれていない
・レールが敷いてある

です。よろしくお願い致します。
0182名前は開発中のものです。2010/04/11(日) 12:08:48ID:KPP7l2ps
>>137
0183192010/04/11(日) 12:38:57ID:nFKc4etn
>>182
頂きました。
0184名前は開発中のものです。2010/04/11(日) 13:52:58ID:hT+cjjpG
168は見当違いだったようです
すいません

menuitemを任意の場所に挿入するにはキーが提供されていれば楽なのですが
できるだけ本体のソースを書き変えないなら少しだけ面倒になります
単に挿入位置を探してinsertというだけなのですが
将来仕様変更でitemの並び順が変わらないと仮定できるのであればindexプロパティを変更するだけです
0185192010/04/11(日) 16:03:45ID:nFKc4etn
線路の入力にも対応しました。
ただ、残念ながらまだ地表の線路のみですが。

http://www.free.netgamers.jp/freetrain/


マップとズレる件は、単に私の勘違いからでした。
りおりおさんのチョココロネマップのサイズは
てっきり 400x600x16 だと思っていたのですが、
実際は 400x568x16 で作成されたものなんですね。


それにしても、英語力の無さがこんなに深刻だとは思いませんでした。
分岐レールのクラス名が「JunctionRailRoad」だったとは。
「ジャンクション」とか言われると、高速道路のものしか
思い浮かばない私。分岐はてっきり「ポイント」だと思ってた。
0186名前は開発中のものです。2010/04/11(日) 16:38:59ID:A7koO+23
RailRoadでわかるだろw
道路はただのRoad
0187192010/04/11(日) 17:13:36ID:nFKc4etn
確かにねw
でも分岐レールはどれだろう〜って流し読みしてる状態だと、
Junctionが目に入った時点で読み飛ばしちゃうんだよー
0188名前は開発中のものです。2010/04/11(日) 17:14:07ID:/FrGhX6g
>>185
そこで日本語変数名ですよ。VC#は通るかわからんけど。
最近はなんか一部で日本語変数名ありじゃね?とか言われちゃってるんで微妙
ですが。
0189192010/04/11(日) 17:24:50ID:nFKc4etn
日本語変数名、可読性が大幅に向上しそうですよね。
英語が苦手な人間にとっては早く普及してもらいたいデス。

っていうかせめて変数名は和製英語使って欲しいです。
分岐器はふつー「ポイント」でしょ?
まあPointだと座標と間違えそうで紛らわしいですが。

ちなみに、私の愚作「最強都市計画」では、
分岐器のクラス名はズバリ「Bunki」ですww
0190名前は開発中のものです。2010/04/11(日) 17:41:15ID:54jFaVCu
日本語⇔英語の用語集があれば便利だと思います!
0191名前は開発中のものです。2010/04/11(日) 17:58:50ID:/FrGhX6g
確かにネット繋がってれば辞書引くのも難しい作業じゃないが。
誰だ変数名をフルスペルで書かなきゃいけないなんて流れを作ったやつは。

俺が言っても仕方ないけど。
0192192010/04/11(日) 18:14:22ID:nFKc4etn
ソース見るとYZさんもコメント英語で書いてるし……。
Yahoo!翻訳する身にもなって欲しいものです。
0193名前は開発中のものです。2010/04/11(日) 18:47:54ID:wzSsbrIr
.NET 1.1 ってMSのサポート期間切れたんじゃなかったっけ?
アンインストールしてない人大丈夫?
0194名前は開発中のものです。2010/04/11(日) 19:06:39ID:A7koO+23
>>192
そんな糞コメントなんか読み飛ばしてしまえばおK。
無視するがよろし。

>>193
俺普通に1.1/2.0/3.5と入れてるけど?
なんか不味いことあるのかな。
0195名前は開発中のものです。2010/04/11(日) 19:14:11ID:wzSsbrIr
もうセキュリティアップデートが無いってことです
0196名前は開発中のものです。2010/04/11(日) 20:12:00ID:KPP7l2ps
ポイントとかパンタグラフとかVVVFとか
鉄道用語は適当な英語がそのまま使われている。
0197名前は開発中のものです。2010/04/11(日) 20:12:11ID:1JGrDmBK
.Net1.1は延長サポート期間中だから2000やXPと同じ状態でセキュリティアップデートも提供される
むしろ問題になるのはwin7でサポートされていないことかな
0198192010/04/11(日) 20:32:58ID:nFKc4etn
過去ログにこんなの見つけた

>768 名前: 川口耕介 投稿日: 02/08/14 10:38 ID:wRbtNI+r

>>737
>カーブやポイント(ところで英語ではpointって言わないよね)通過中

英語ではpointと言わなくても日本語ではポイントと言うのだから
せめてコメントにカタカナで「ポイント」と記述しておいて欲しい、
と過去ログの中の人に言ってもムダだけど。

鉄道用語の日本語と英語の対応表は欲しいですね。
0199名前は開発中のものです。2010/04/11(日) 20:39:58ID:l0bCnF3R
とりあえずそこまで引っ張る話題でもないでしょう
0200名前は開発中のものです。2010/04/11(日) 20:41:39ID:Ps30bsOo
とりあえず、プログラマは英語ぐらい読めないと三流だぞ。
0201名前は開発中のものです。2010/04/11(日) 20:54:38ID:A7koO+23
>>198
どこまで遡って、食いついとんねん!w
0202riorio ◆rio2xMQlrQ 2010/04/11(日) 22:09:43ID:++YAHBfo
>>185
>りおりおさんのチョココロネマップのサイズは
>てっきり 400x600x16 だと思っていたのですが、
>実際は 400x568x16 で作成されたものなんですね。

え゛

自分も400x600x16のつもりだった……
568みたいなはんぱな数字にするとは思えないのだがなぁ。
なんだろう???

というか今のFreeTrain EX Avって、そうなる前のEXもなんだけど、
開始後のマップの広さや水面高をプレイヤーが確認する手段が
ないんですよね。
だから今のままだと書き出ししたxmlを読み込むための新規マップの
サイズをどうするかって困る人が多いと思う。
だから書き出しxmlの先頭付近にマップサイズを記録して、読み出し
時にはもう新規マップを確保することまで含めて動作するようにして
いいかもしれない。

あとは「表示」メニューのなかに「マップ基本情報」みたいな項目を
追加して、マップのXYZ広さ・水面高・陸地広さ・線路長などを表示
してくれるpluginがあるとうれしいかもねー
0203名前は開発中のものです。2010/04/11(日) 22:27:29ID:Ps30bsOo
600-16*2=568
高さx2の分じゃないかな。
なぜ差し引かれてるのかは知らないが。
0204名前は開発中のものです。2010/04/12(月) 00:17:31ID:+OLIIHse
A4だかにあったようなミニマップ表示とまでは言わなくても
表示位置の座標移動ができるといいかも
あとからサイズ変更できないからと大きめのマップにして作り出すと
開発前の部分の移動とかアバウトにしかできないし

どこを基点に0,0にしてx,yなのかよくわかってないけどw
0205riorio ◆rio2xMQlrQ 2010/04/12(月) 00:50:55ID:AG10ysx3
いわゆる「サテライト」ですよねー

欲しいけど自分の手には余るな……


あと関係ないんだかあるんだかな事で、開始時のマップサイズで
縦横数値打ち込むんだけど、できてきたものが横長につぶれたものに
なるのなんでなんだっけ。
いまだ全貌を理解してなくてスマン。


XYZ座標系は、左上すみ最下層が(0,0,0)で、
左下向けてX軸増加
右下向けてY軸増加
だったと思う。

右手系っていえばいいのかな。
親指X・人差し指Y・中指Z。
0206名前は開発中のものです。2010/04/12(月) 01:53:12ID:muyeyKNm
サテライトって考えようによっては、マップキャプチャの縮小版でしょ?
nanasiさんがマップキャプチャ作ってたよね。
あれで1ボクセルを1ピクセルで表示すればサテライト擬きできない?
0207名前は開発中のものです。2010/04/12(月) 02:05:16ID:7cy/+6JA
マップの大きさが可変だから難しいな。
0208192010/04/12(月) 06:18:40ID:RJb+RX/w
>>202
より正確に言うと、
「新規作成」の空マップで 400x568x16 と入力すると、
400x600x16 のマップが生成されるということです。

たぶん >>203 さんの言うとおり、高さとの整合性のために、
こんな仕様になっているのかなと思う。

まあとにかく、「568」なんていう数字をユーザーに
入力させないと使い物にならないというのは不便だし、
「マップ基本情報」の表示機能を追加したところで、
新規作成で入力した値ではなく、生成後の値がと表示
されてしまうので、何かしらの対策が必要ですね。
0209riorio ◆rio2xMQlrQ 2010/04/12(月) 07:35:10ID:AG10ysx3
チョココロネは、「空マップ作成」ではなく「地形ローダー」で作成したマップ
なので(動画参照)、地形ローダーpluginのソース見るとなにか分かる
かもしれません。


もし「マップ基本情報」表示pluginを作成するとしたら、生成後の値でいいと
思います。
地形ローダーのほうになにがしかの制約があって数値がずれることがあっても
それはしょうがないというか。
0210192010/04/12(月) 09:21:10ID:RJb+RX/w
線路入出力は勾配にも対応しました。
が、残念ながら高架線路に橋脚が表示されません。
高架は SingleRailRoad じゃないのかな?
それとも何か付け加える必要がある??

ちなみに、チョココロネマップで試したら、
途中で「資金不足」と言われてしまいましたw
この機能では資金を消費しないようにしたいけど、
もうソース読むの疲れた。英語(ry

地形のほうの読み込みはどうにかしないとね……。
0211192010/04/12(月) 20:45:53ID:RJb+RX/w
とりあえず、元のサイズより大きい空マップに
読み込んでもズレなくなりました。
0212riorio ◆rio2xMQlrQ 2010/04/12(月) 21:23:39ID:AG10ysx3
線路入出力はまだ左上の位置確定ができてないのかなー?
保存した時より右下にずれた位置に再現されるっぽい。

高架の橋脚は、んーと、チョココロネでは元から生えてないのでサンプルとして
不適当かも。
下に何もなければ自動で橋脚が生えて、もし鉄道アクセサリプラグイン・建物プラグイン
などがすでに地表に存在する上のボクセルに線路をしいたときは橋脚は生えないという
仕様だったと思うので。
そのおかげで、コンクリート橋脚とか盛土高架とか、鉄道アクセサリや建物でリアルな
高架をデザインできることになってまして。
チョココロネの高架はそういう、別プラグインを下に置いた高架になってるのです。

空マップから、レールだけひきまわしたら橋脚がはえたデータができると思うので。
それを書き出してみてどうか、というところですね。

その自動の橋脚はレールと一体の取り扱いになってたような。
橋脚をブルドーザでぶちこわすと上のレールも消えちゃうので。


あとどうでもいいところですが、読み込みのときだけでなく書き出しの時も、拡張子
.dxfとか.xmlが自動で補完されると便利かなと思いました。
0213192010/04/12(月) 22:03:20ID:RJb+RX/w
あれっ、まだズレますか?
本来の位置からはズレても、地形と線路が同じだけ
ズレるようにしたつもりなので、少なくともチョココロネ
のような島のマップであれば問題ないかなと思ったんですが、
もしズレるようであれば、そのデータも頂けませんか?

高架の橋脚は空マップで試してダメだったので、
SingleRailRoad を生成するだけじゃ足りないようです。
必ず橋脚があるのであれば SingleRailRoad と一体
なのかもしれませんが、地表になにかあると生えない
ということは、個別に何か生成しているのかな?

でもブルドーザーで一緒に消えるということは、
何かしらの関連付けはされているんでしょうね。


ちなみに、保存のときは一応拡張子は自動で付与されます。
画面には表示されないですけどね。
0214名前は開発中のものです。2010/04/12(月) 22:27:56ID:AG10ysx3
Prototype3向けのセーブデータとpluginsつめあわせ
http://www.hiyohiyo.info/~riorio/freetrain/yamanote2099.zip

地形のない、「空マップ」で開始して線路だけひいたものです。
鉄道アクセサリプラグインの高架なんかはあります。
サイズはすみません、作った本人が忘れてます。

左上まで詰めて線路ひいてあるのですが、
線路書き出しして読み込みすると右下にズレます。
それで右も下もぎっちぎちに詰まってるので、はみ出ます。(汗)
0215名前は開発中のものです。2010/04/13(火) 01:48:50ID:3dyhfU2K
山手線に列車が走り始めました。
http://www.nicovideo.jp/watch/sm10374364
0216192010/04/13(火) 06:57:53ID:Cwx/ymMX
>>214
頂きました。

>>215
一昔前なら無謀とも思えるリアルな山手再現が実現できた感じですね。

それにしてもFreeTrainは、Vistaにも対応したし、A21を超える
時間軸も手に入れたのにあまり盛り上がらないのは何故?
0217192010/04/13(火) 11:07:52ID:Cwx/ymMX
地形読込、及び線路読込共に位置指定を出来るようにしました。
0218名前は開発中のものです。2010/04/13(火) 12:42:08ID:TT2EhWKn
>>216
まだ川口さんが開発してた頃に私も参加しておりましたが、
その頃のイメージとして、いろんな人のプラグインをまとめて導入出来ず「めんどくさい」というものがありました。
今は、間口を広めるために敷居は低くなってるでしょうか。
現状を知らずに書いておりますので、変化があったのならスマンコ
あと、この板内で勢いTOPなんだから盛り上がってる方じゃネーノ?
0219名前は開発中のものです。2010/04/13(火) 12:51:35ID:TGGZCZqv
このスレにいる歴が長けりゃこれでも十分盛り上がってる部類になるよな
何日もレスつかないこととかザラだったんだからw
0220192010/04/13(火) 13:22:46ID:Cwx/ymMX
昔は.NETのインストールも敷居の高さのひとつだったような。
今は一般的だし、それにプラグインセットも配布されてます。

ニコニコの総統閣下動画じゃないけど、少なくともA7なんか
いまだにやってるような人は、よく分からない。
02212182010/04/13(火) 13:53:52ID:TT2EhWKn
FTのインストールをすれば流行りの(現在の作者公認の)プラグインまで導入完了、、、
とかって感じなら激熱なんだけど、そこんとこどーなの?
0222192010/04/13(火) 14:16:16ID:Cwx/ymMX
残念ながら本体とプラグインセットのインストールは別々だけど、
同じ場所で配布されているから面倒ではないと思う。
0223riorio ◆rio2xMQlrQ 2010/04/13(火) 22:07:46ID:3dyhfU2K
モガミさんから代理投稿

----

そろそろ、プラグインのまとめパックも更新するべきなんですかねぇ・・・
-- モガミ (2010-04-13 19:50:50)

----

どうなんでしょう。需要あるんでしょうか。

やるならEX時のPlugin Setとの差分にするんじゃなく、「これ1ついれればOK」な
単体完全版にしたほうがいいのかな。
需要あるならちまちま作業します。

本体に同梱はする予定ありません。
本体が頻繁にバージョンアップする際にpluginsがくっついてくるのはサイズの
肥大になるし無駄が多いです。

あとは、実行ファイルなものは本体バージョン依存になるので、除外。
発車メロディもサイズの問題で別梱包かな。
0224名前は開発中のものです。2010/04/13(火) 22:11:42ID:5oPrQ85b
サイズってか著作権侵害してるようなものの同梱はありえないしな。
0225名前は開発中のものです。2010/04/13(火) 22:37:25ID:eRQAIvQe
発メロはまだまだ。
いつになるか分からんがrev.2が完成するまで待ってね。
0226riorio ◆rio2xMQlrQ 2010/04/13(火) 23:03:41ID:3dyhfU2K
plugin作者本人から置くなって言われたら置きませんが。

拡張子wavのくせに中身フォーマットmp3問題があるので
既存の公開済発メロについてはかまわなければパッチ後の
ものを置こうかと思ってますが。

rev2はrev2で楽しみにしておくとして。
0227名前は開発中のものです。2010/04/13(火) 23:29:33ID:VHQ5KJ5Y
駅の乗車待ち人数って300人とかいても、上下両方向とも乗車率0だったして
待ってる人数の割りに実際の乗車率が低いと思う。



















0228riorio ◆rio2xMQlrQ 2010/04/13(火) 23:39:02ID:3dyhfU2K
>>227
ええとバグ報告なのかな??

バグ報告でしたら。
特定バージョンで起こるのか、すべてのバージョンで起こるのか、
そのたもろもろ詳細に教えていただきたいのですが。


っていうかFreeTrainて、駅で待ってる人がいたら根こそぎ拉致って
しまわなかったっけ……
0229名前は開発中のものです。2010/04/13(火) 23:46:24ID:eRQAIvQe
>>228
そういう感じではなかったような。なかなか乗ってくれない。
乗客が目的地を持っているわけでは無いとは思うが。
0230名前は開発中のものです。2010/04/14(水) 00:14:17ID:r8Hkv0Jk
>>228
3.0.1.3だけど、バグというわけじゃなく駅の乗車待ち人数の割りに
乗車率が低いと感じたもので
FTは駅では総入れ替えだけど、列車に乗っている方は全部降りるけど
乗る方は乗車待ちの人数がたとえ列車の店員より低くても、全員乗るわけじゃないですね
0231名前は開発中のものです。2010/04/14(水) 00:18:54ID:nT7zqhap
目的地持ってないのは間違いないです。
山奥ノンストップだろうがかまわず乗ります。

ただ、Prptotype3ではなんか乗り方が少ないかもしれないですね。
今、大崎駅前に急遽マンション建てまくって様子見てますが。

81人の乗車待ちに対して乗客3人。
まったく乗らないわけではないらしい。

乗客数えるときに待ち客数を発着本数でlogとってたよぉーな気もするので、
ソース見直してみます。

A4では根こそぎ拉致っちゃうんだよねー、たしか。
それはおかしいということで、川口さんほかスレ判断で拉致らないよう数式入れて演算してて、
それが時間経過か1日の発着本数か利用してたかなぁぁぁ……

でー、おそらく1日の乗車人数が平均化するように演算してるんだと思いますが、
どうしますかこれ。
当初の意図とすれば、1日の発着本数が100本なら1/100に平均化されるのが意図通りという
ことになりますが。
FreeTrain原型を壊してでもじゃんじゃん乗ってくれたほうがうれしいって意見が多かったら
そう変更するかも。
0232名前は開発中のものです。2010/04/14(水) 00:22:06ID:3d+/yeeI
>>231
変える前に仕様をよく確認してからにしましょ。
0233名前は開発中のものです。2010/04/14(水) 00:58:10ID:dhX9BRNI
まずはどういう仕様になっているのかを調べた方がいいのでは?
もしかすると何かしらのバグかもしれんし。
0234riorio ◆rio2xMQlrQ 2010/04/14(水) 01:12:31ID:nT7zqhap
ソース読んだけど正直よくわからんw

駅の乗降客関係は、
core\world\rail\Station.cs
の250行目あたりにあるんだけど。

/// <summary>
/// Factor that we apply to averageLoaded/UnloadedPassengers every hour.
/// </summary>
const float AVERAGE_PASSENGER_RATIO = 0.9996f;

/// <summary>
/// Factor that we need to apply to obtain average passengers per day.
/// obtained by 24*(1-RATIO)
///
/// Justification of the above equation is that if you always carry 1 passenger
/// for every hour, thie accumulated value should converge to C
/// where C = C*RATIO + 1. Such C = \frac{1}{1-RATIO}
/// </summary>
const float AVERAGE_PASSENGER_PER_DAY_FACTOR = 24.0f*(1.0f-AVERAGE_PASSENGER_RATIO);

この定数の定義、これがもうわからん。
なにが0.9996なのよ?ってところから。
次のAVERAGE_PASSENGER_PER_DAY_FACTORの式は意味は分からなくもないんだけど。
0235riorio ◆rio2xMQlrQ 2010/04/14(水) 01:15:46ID:nT7zqhap
その直後にある

public void unloadPassengers( Train tr ) {
// TODO: do something with unloaded passengers
int r = tr.unloadPassengers();
import.AddAmount(r);
trains.AddAmount(1);
Debug.WriteLine(string.Format("devQ on unload v={0} for {1} passengers.",import.LastWeek/24,r));
World.world.landValue.addQ( location, Math.Min((float)(import.LastWeek/24),r) );
accumulatedUnloadedPassengers += r;
GlobalTrafficMonitor.TheInstance.NotifyPassengerTransport(this,r);
}

っていうのが降車客なんだけども、
Math.Min((float)(import.LastWeek/24),r)
のimport.LastWeek/24がまたわからん。
24で割るってことは1日あたりを1時間平均にしてるっぽく見えるけど、import.LastWeekって
「前週の降車客数」だと思われるそれを(7*24)で割るのではなくただの24で割ってるのはなぜ?

landValue.addQの中身も分かってないからまとはずれなこと言ってるかもしれんが。
0236riorio ◆rio2xMQlrQ 2010/04/14(水) 02:02:53ID:nT7zqhap
LastWeekってのは、前週実績を日割り平均化した「1日あたり」の数値らしい。
377行目あたり。

ってことで/24でその1時間あたりということになるのだが。

ゴメン。これ降車客だから今問題の乗客ではなかったね。
まぁ駅の発展もなんかおかしいので、降車客の考え方も追求したいんだが。

281行目のコメントがあって282行目にあるとおり、駅がもつ乗りたい人=population
全員が乗るわけはないという仮定のもと、乗りたいのはそのうちの30%であるとして、
0.3fをかけてる。
あと既に乗って行った人は差し引くようになってる。
int avail = Math.Max(0, total - gonePassengers);

export.AddAmount(tr.passengerCapacity-pass);
ってのはなんかおかしい気がするな。
export.AddAmount(pass);
じゃないんだろうか。
もっともこれで計算してるのは「駅の乗車人数」であって、列車の乗客じゃないから
列車の乗客には影響ないはずだし。

んー。
チラ裏がすぎるみたいなんで。あとはblogにて。
0237名前は開発中のものです。2010/04/14(水) 02:17:17ID:nT7zqhap
裏でエンコしてた動画ができたので貼って寝る

大崎駅の一日
http://www.nicovideo.jp/watch/sm10384793
0238riorio ◆rio2xMQlrQ 2010/04/14(水) 02:33:40ID:nT7zqhap
布団はいったらハッと気がついたので書きにきた

川口さんがスレに顔出して作ってた頃のログか、
本家フォーラムかwikiかで、
乗客計算方法についての議論があったりした??

もしぎろんべーすがあるなら読んでおかないとと思って。

じゃあまた布団に戻る ノシ
■ このスレッドは過去ログ倉庫に格納されています