- 1 名前:名前は開発中のものです。 mailto:sage [2008/08/26(火) 22:36:07 ID:lMjn2kzC]
- 鉄道および都市経営シミュレーションゲーム制作の
情報交換スレッドです。(sage推奨) [前スレ] 鉄道経営系ゲーム製作スレッド Ver.4 pc11.2ch.net/test/read.cgi/gamedev/1138164797/ [このスレッドで主に話題となるゲーム] FreeTrain www.kohsuke.org/freetrain/ FreeTrainヘルプ www.kohsuke.org/freetrain/wiki/pukiwiki.php (ID:*** PASS:***) [関連サイト] アートディンク www.artdink.co.jp/
- 64 名前:名前は開発中のものです。 mailto:sage [2008/08/30(土) 19:23:02 ID:7j/6lrIg]
- >>59
その部分はあまり気にしないでください 簡単にいうと単線の1時間あたりの本数を多めにしたいって意味にとらえてください 速度関しては単純に言えばそんな感じなんですが もっと細分化してもいい感じはしますね 中速とかと別に数値でも速度設定が出来るけど、何故か数字が大きくなると遅くなる仕様になってるんで これを逆にして数字を大きくしたら速くなるにすれば 細かく設定できて良いと思うんですよ 一番の理想は最高速度だけ決めて閉塞で速度を決めるって方法なんですけどね…
- 65 名前:YZ mailto:sage [2008/08/30(土) 20:55:10 ID:+9cY660K]
- >>63更新
これはプロトタイプビルドです。 あくまで実装サンプルであり、正式版ではありません。 なお、この版はプロトタイプ版の今までの変更を全て破棄して、beta.1.0.3161.40451に修正を施しています。 【変更内容】 駅一覧の修正 ・現在アクティブなマップにのみ駅のある位置に移動します ・駅名がソートされて表示されます ・ファイル - プラグイン一覧で表示されるプラグイン一覧に名前とディレクトリを追加しました。 ・プラグイン一覧の列クリックで、各列の値の昇順・降順にソートされて表示されます。 既知の問題点 ・同一駅名の駅がある場合は動作が異常になります
- 66 名前:nanashi mailto:sage [2008/08/30(土) 21:13:16 ID:wn6X7z0b]
- 私がいると混乱しそうなので撤退します。
さようなら。
- 67 名前:名前は開発中のものです。 mailto:sage [2008/08/30(土) 22:59:14 ID:QGdLg7Nm]
- もー、どうして誰も彼も、すぐさよならとか言い出すのか。
- 68 名前:YZ mailto:sage [2008/08/31(日) 00:23:21 ID:c5bKTn6I]
- >>nanashiさん
私が去りますので戻ってきてください。 全て私が悪いです。 みなさん、どうもお騒がせいたしました。 すいませんでした。
- 69 名前:名前は開発中のものです。 mailto:sage [2008/08/31(日) 00:23:28 ID:tu5NOE9q]
- ゆとりだから
- 70 名前:39 mailto:sage [2008/08/31(日) 00:26:12 ID:nkWYzaGP]
- そして誰もいなくなった
では困るんだけど。 仕様についてたった数十レスも議論出来なくてどうすんのよw
- 71 名前:YZ mailto:sage [2008/08/31(日) 00:39:24 ID:c5bKTn6I]
- >>nanashiさんへ
多分私が勝手に議論進めたりするのが気に障ったのでしょうね。 sourceforgeで公開していたものやフォーラム等全て消去しました。 残念ながら自分がプロジェクト管理者の場合は脱退できないみたいなので nanashiさんの方で私のIDをプロジェクトから外してください。 今後はROMに徹しますのでnanashiさんのやりたかったように進めてください。 本当にすいませんでした。
- 72 名前:39 mailto:sage [2008/08/31(日) 00:50:24 ID:nkWYzaGP]
- >>71
もう動き出してる物を、たった数日で投げていくのはどうなのよ。 うまく分業出来ないものかね…。
- 73 名前:ホリタケ mailto:sage [2008/08/31(日) 00:51:21 ID:lZ0xfNGd]
- 細かい時間単位のFT楽しみにしていたのに…
nanashiさんもYZさんも戻ってきてください! すっごく楽しみにしていたんです…。
- 74 名前:名前は開発中のものです。 mailto:sage [2008/08/31(日) 01:09:58 ID:iN50My3S]
- なんだかなあ
散々期待だけさせといてよくやめるとか言えるよ
- 75 名前:39 mailto:sage [2008/08/31(日) 01:14:21 ID:nkWYzaGP]
- まぁしばらく冷却期間が必要かもね。
気が向いたら戻ってくればいいさ。
- 76 名前:名前は開発中のものです。 mailto:sage [2008/08/31(日) 01:24:44 ID:z/iE9Dje]
- 居なくなるとか言う前にお互いどのようにしたいかだけでもいって欲しいと思うんだ
悪いと言うばかりで互いに話し合ってないし
- 77 名前:名前は開発中のものです。 mailto:sage [2008/08/31(日) 03:47:47 ID:oxUGp3F4]
- まあ今日中にとか今月中にとか無理せず時間をかけてやりましょうと言う事で
- 78 名前:名前は開発中のものです。 mailto:sage [2008/08/31(日) 06:50:04 ID:+M98s6Fu]
- なんで議論が白熱することを悪いこととか思っちゃうの?
議論とケンカの区別がつかないっていう日本人特有の悪癖かしらん。 どうしても議論が煩わしいなら、別ブランチで平行して作業進めて、 ある程度完成したら「どうだっ」て見せ合ったっていいじゃない。
- 79 名前:名前は開発中のものです。 mailto:sage [2008/08/31(日) 07:44:47 ID:5pQqPkCl]
- やるならもっと責任持ってやりなよ。
期待させておいていきなり「さよなら」ってどういう事?
- 80 名前:名前は開発中のものです。 mailto:sage [2008/08/31(日) 13:01:53 ID:b16OmJ97]
- がんばってくれよ。
期待してたんだから。 戻ってくることを期待してます。
- 81 名前:名前は開発中のものです。 mailto:sage [2008/09/01(月) 10:07:21 ID:ubuDzS2u]
- ここで議論するより、ただ時間関係のパラメータを要再コンパイルでもいいから
いじれるようにして、テストプレイをしながら早い遅い調整していけばいいだけの 話じゃないのか? なんかプログラムには直書きで書いてあるっぽいので変更箇所を洗い出すのが 大変そうだが。
- 82 名前:名前は開発中のものです。 mailto:sage [2008/09/01(月) 12:58:59 ID:nqOUuI1f]
- 全部直書きだし、いろんなソースに点在しているから修正は大変。
オプションとして設定・保存できるようになれば個人で調整できるから、そのほうがいいだろうね。
- 83 名前:名前は開発中のものです。 mailto:sage [2008/09/01(月) 19:56:13 ID:7HFqe/BQ]
- 議論すらせずに逃げてっちゃったじゃない
しかも今回が始めてじゃないし もうYZ氏が進めちゃってよ
- 84 名前:白河どりぬ mailto:sage [2008/09/02(火) 16:03:00 ID:/jEzWmz4]
- はじめまして。
建物などのプラグインを中心に開発していきたいと思います。 今後ちょくちょく現れるのでよろしくお願いします。 #リクエストがあれば出来る限り応えたいと思っています。時間かかるかもしれませんが。
- 85 名前:白河どりぬ mailto:sage [2008/09/02(火) 16:06:54 ID:/jEzWmz4]
- 今考えてるもの
・放送局社屋(在京、在阪など) ・大手店舗 ・AM送信所
- 86 名前:名前は開発中のものです。 mailto:sage [2008/09/02(火) 16:09:14 ID:w/oK2esV]
- 期待してます。
建物は今までないタイプの建物だとうれしいかも。
- 87 名前:名前は開発中のものです。 mailto:sage [2008/09/02(火) 16:26:11 ID:YfmzMKvP]
- >>85
いいねぇ。 AM送信所って結構大きいよね。高さ120mとか。 ゲーム内の時間単位の事だけど、とりあえずここで話し合って 仕様を仮決めしておきませんか? そうすれば誰かがやるだろうという期待をこめて。。。
- 88 名前:名前は開発中のものです。 mailto:sage [2008/09/02(火) 19:38:03 ID:TlPa1aAp]
- ところで
FreeTrainってどんどんプラグインで建物は増えるけど、.NETのグラフィック 性能ってどうなんだ? ライブラリの性能かもしれないが、建物を建てたはいいが、重過ぎてヘイトカット しないとどうしようもない現状では・・・。
- 89 名前:YZ@orz mailto:sage [2008/09/02(火) 19:43:00 ID:DzZzdyLQ]
- どうやら、nanashiさんの反応はないみたいですね...
いつの間にかFreeTrainプロジェのメンバーも削除されているみたいだし。 で、一応言っておきますけど私はnanashiさんに遠慮して、私がくる前の状態に 戻しただけで別に怒ったりとかむかついたからいなくなったというわけじゃない のですが... とりあえず別プロで公開開始しました。 まだまだですけどね... sourceforge.jp/projects/freetrain-exav/
- 90 名前:名前は開発中のものです。 mailto:sage [2008/09/02(火) 20:56:05 ID:qee7iz6b]
- もう気にせず進めてくれ
なんだかんだで提案に反応して作業してくれてたのあんただけなんだから これからもよろしく頼むよ
- 91 名前:名前は開発中のものです。 mailto:sage [2008/09/03(水) 11:42:17 ID:+QqH9UEG]
- ちょっと実験してみたが、プラグインの画像ってPNGでも行けるんだね。
なんでBMP使ってるんだろう。 PNGだと安定性が悪いのか?それとも処理が重いのか?
- 92 名前:名前は開発中のものです。 mailto:sage [2008/09/03(水) 12:29:47 ID:BcnJt6Lf]
- >>91
圧縮かかった画像だと読み込み速度が違うんじゃない?
- 93 名前:名前は開発中のものです。 mailto:sage [2008/09/03(水) 13:33:41 ID:hyrw6WI8]
- 内部形式に展開する時にベタ形式のbmpより圧縮されているpngの方が負荷は高いのでは?
後透過色の扱いのが違うとか。 今ソースがないので不明だが。
- 94 名前:名前は開発中のものです。 mailto:sage [2008/09/03(水) 14:12:22 ID:+QqH9UEG]
- >>92-93
てことはPNGの方がBMPより重いということかな。 メモリ使用量はどうなんだろう。
- 95 名前:名前は開発中のものです。 mailto:sage [2008/09/03(水) 19:42:28 ID:aTekxshi]
- 人柱! 人柱!
- 96 名前:YZ@orz mailto:sage [2008/09/03(水) 20:22:21 ID:qgnWvNVb]
- ソース見てみたけど難解...orz
内部ではSystem.Drawing.Bitmapクラスのインスタンスとして扱われる。 このクラスはGDI+をラッピングし、BMP・GIF・EXIG・JPG・PNG・TIFF形式をサポート している。 従って、読み込む場合は上記の形式のファイルであれば読み込め、内部では展開した イメージで保持するためどの形式でもメモリ占有率は変わらない。 読み込みはBMPが一番大きく、他の形式は圧縮されているためサイズが小さいので ロード時間はBMP<他の形式であるが、他の形式の場合は圧縮されているので展開が必要 となるため、展開時間はBMP>他の形式。 つまりトータルで考えればBMP=他の形式だろう。 ただし、FreeTrainで使用しているグラフィックはサイズが元々小さいので微々たる差 であると思われる。 ま、結局はどの形式でも変わらないのじゃないのかというのが自分の意見です。 ちなみに透過については画像の左上のドット色を使用します。 これはPNGやGIF等の透過色をサポートする形式でも同じです。 逆に透過色が設定されているPNGだと正常に表示されません。
- 97 名前:YZ@orz mailto:sage [2008/09/04(木) 00:23:02 ID:yKEmA4wt]
- Prototype-release 20080904-01公開開始
前回のやつの ・同一駅名がある時に誤動作するバグを修正 だけ。 しょうもない修正ですいません。
- 98 名前:名前は開発中のものです。 mailto:sage [2008/09/04(木) 10:35:07 ID:b2qj0T43]
- >>96
説明サンクス。 どの形式でもあまり差はないんですね。 透過色の扱いが難しいから、圧縮によって色が変わる可能性のあるGIFやJPGは使いにくそう。 プラグイン配布時には圧縮するのが基本だし、結局は透過色トラブルが起こらないBMPが一番という事なのか。 使い道があるのかは不明だが、半透明のPNGをレイヤーのように重ねられれば面白いかと思ったけど。
- 99 名前:YZ@orz mailto:sage [2008/09/04(木) 17:51:51 ID:yKEmA4wt]
- >>98
オーバーライドはあるけどレイヤーはないなぁ。 確かにその考えは面白いかもしれんけど、問題は使い道が思いつかない。
- 100 名前:名前は開発中のものです。 [2008/09/06(土) 11:04:53 ID:/wgbJD9P]
- 100ゲット
- 101 名前:ホリタケ mailto:sage [2008/09/06(土) 13:18:45 ID:Ro3PPMGN]
- 101ゲット
…はいいけど、最近、プラグインやマップのアイデアが浮かばない…
- 102 名前:名前は開発中のものです。 mailto:sage [2008/09/06(土) 14:55:30 ID:E0ErT7iZ]
- 先ほどプロトタイプ(9月4日版)をダウンロードしたのですが、
こちらには回送機能は実装されていないのでしょうか? また、されているのでしたらどうやればできるのか教えていただけないでしょうか?
- 103 名前:名前は開発中のものです。 mailto:sage [2008/09/06(土) 15:02:29 ID:E0ErT7iZ]
- 102ですが、自己解決しました。
迷惑掛けて申し訳ありません。
- 104 名前:YZ@orz mailto:sage [2008/09/06(土) 16:26:48 ID:2hiahRC0]
- >>102
すまねぇ、まだです。 今夜辺り実装してあげておきます。 FTメンテやろうとか思って作業しだすとリアル仕事が忙しくなるなんて なんか俺に恨みでもあるのですか?w>会社
- 105 名前:YZ@orz mailto:sage [2008/09/06(土) 22:48:01 ID:2hiahRC0]
- プロトタイプ・リリース、20080906-01を公開開始しました。
【変更箇所】 ・VS2008移植時の警告発生箇所等の修正 ・回送機能の追加 ダイヤ設定の詳細に「回送」と「折返回送」を追加 ・駅一覧プラグインを表示したまま、データセーブすると例外が発生するバグを修正 【次回の予定】 ・ダイヤ設定の詳細 列ヘッダクリックによる昇順・降順ソート コピーしたい設定を選択後、コピーボタンで設定をコピー リストビューに縦スクロールバー追加 >>17さんが報告してくれたバグですが、うちの環境は再現できませんでした。 とりあえず最新版でもう一度試して頂いて、再現したらそのまま保存してセーブデータ を頂けたらと思いますので、できましたらよろしくお願いいたします。
- 106 名前:名前は開発中のものです。 mailto:sage [2008/09/06(土) 23:21:01 ID:E0ErT7iZ]
- >>105
9月4日版で制作したファイルが開けないです…。
- 107 名前:YZ@orz mailto:sage [2008/09/07(日) 00:36:50 ID:U0sNuFYJ]
- >>106
本体が更新されているからだと思います。 FreeTrainはセーブ・ロードの仕組みに.Netのシリアライズ・デシリアライズという 機能を使っています。 この機能ですが、自動的にオブジェクトに含まれる変数とかのデータ部分を書き出し てくれる、または書き出したファイルを読み込んでオブジェクトを再構成する機能 なのですが、1点困ったことが起こるのはオブジェクトに含まれる変数等のデータ 部分が変わった場合にオブジェクトの再構成ができないという問題点です。 つまり、今回のようなケースが発生するということです。 今回、駅一覧のバグ修正のために変更しているのですが、それが影響していると 思います。 なお、今後もそうですがデータの互換性は全く保証できません。 まだまだFreeTrain自体が改造があり、当然セーブデータもどんどん変わっていくと 思います。 この問題はFreeTrainの問題と認識しているので将来的にはなんとかしないと駄目 でしょう。 以前にも使用しているプラグインが違うと読み込めない、セーブデータの形式には 問題があると指摘されている方もいますので、将来は変更する必要があるでしょう。
- 108 名前:名前は開発中のものです。 mailto:sage [2008/09/07(日) 11:17:41 ID:m8fxeAoW]
- >107
なるほど、そういった理由があるのですね。 よくわかってなくて申し訳ないです。
- 109 名前:名前は開発中のものです。 mailto:sage [2008/09/07(日) 17:34:21 ID:HzcMXOsu]
- ぶっちゃけ同じ本体・Plugin構成でもCPUが変わるとダメな場合もあるしなあ
- 110 名前:名前は開発中のものです。 mailto:sage [2008/09/07(日) 18:58:28 ID:NRZQpIQf]
- うちもOSを2k→XPに変えただけで使えなくなったデータがあったりして。
そんなひどいカラクリだったのか。早急に改善しないと、これじゃあまりに 頭が悪すぎる。
- 111 名前:YZ@orz mailto:sage [2008/09/07(日) 22:14:57 ID:U0sNuFYJ]
- >>109
えー、CPU変わっても駄目? CPU以外は変わってないのですか? 別のPCで.Net自体が違うとか。 >>110 OSが変わっても駄目... .Netは変わってないですか? 可能性があるのは.Net自体が変わっていることぐらいでしょうか。 CPUやOSが変わってもセーブデータが使えないとは思えないのですが。 あと調べてないので何とも言えないのですが、オブジェクトのアドレスを セーブしていて、それを復旧しようとして駄目とか。 アドレスなんか毎回変わるから、そんなものセーブしても次回は使い物に なりませんが、シリアライズ対象になっているとセーブされちゃうのですよね。 けど、これだと毎回セーブデータが使えないことになるので、恐らくこの ケースはないと思いますが、それにしても挙動がぁゃιぃすぎますね。
- 112 名前:名前は開発中のものです。 mailto:sage [2008/09/08(月) 03:24:06 ID:FbRz0a35]
- >>111
同一PCでAthlon64 -> X2はOKだった。 Core2Quadの別のPCにFTのフォルダごとコピペして読み込ませたらNG .NETは多分同じだと思うけど… 余力があったらスタックトレース貼り付けます。
- 113 名前:名前は開発中のものです。 mailto:sage [2008/09/08(月) 18:49:25 ID:A2ba4GZN]
- 実はセーブデータのロードの融通きかせる?のが最優先項目なのかもしれんね
>>105 回送確認した ちゃんと回送駅の次の駅で客乗ってるようだ 前のは秒単位だった影響なのかな
- 114 名前:YZ@orz mailto:sage [2008/09/08(月) 19:32:13 ID:A7yxn2Ol]
- >>113
検証乙です! 秒単位の影響かもしれませんね。>バグ 確かに今回は1からソース修正し直してますので何か変わったのかも。 セーブデータのロードに融通をきかせるのであれば、セーブ時から 考えないと駄目なので難しいですね。 どちらにしてもプラグインの不足によるデータロードの不可とかもあるから どうするか悩ましいところです。 ちなみに時間単位の変更とデータのロード・セーブの見直しとどっちを優先 したらいいでつか? 私スーパープログラマじゃないのでそんなに同時には無理。
- 115 名前:名前は開発中のものです。 mailto:sage [2008/09/08(月) 20:20:47 ID:WotWQCEY]
- >>114
データ互換の方が優先度高いかと。 時間に関してはまだ仮仕様の議論も盛り上がってないし。。。
- 116 名前:名前は開発中のものです。 [2008/09/08(月) 20:57:11 ID:x56vHMvl]
- >>114
データ互換是非してもらいたいです。 Exでダイヤ詳細がバグってバグらないExAvに期待してたもんで。
- 117 名前:名前は開発中のものです。 mailto:sage [2008/09/08(月) 21:31:16 ID:A2ba4GZN]
- ロード・セーブの方がいいかも
今後、デバッグ検証用にセーブデータうpなんてこともありそうだし 作ってるうちに現行版の互換形式保存のデータから ExAvへのコンバートが可能とかになるかもしれないし 今まで遊んでた町データが新版で読めるってのは結構大切なことかと
- 118 名前:ホリタケ mailto:sage [2008/09/08(月) 21:41:58 ID:cEcFPgZG]
- ロード・セーブの次に時間単位の調整をお願いします。
- 119 名前:YZ@orz mailto:sage [2008/09/08(月) 22:47:45 ID:A7yxn2Ol]
- 了解です。
今予定しているプロトタイプ速攻終わらせてデータ関連やります。 結構切実なんですね... しかし.Netのシリアライズそんなに使い物にならんとは... 使い物にならんということは自力でシリアライズ・デシリアライズしないと いけないということで、本体どころか全プラグインに手を入れないと駄目かも>< そうなるとかなり大変なのでもう少し実験して、どういうケースが駄目なのかを 検証した方がいいかもしれませんね。 もしかすると解決方法があるかもしれないし。 あとはプラグインの有無による問題ですね。 無理矢理読み込ませるのであれば、該当プラグインがない場合は該当オブジェクト は再構成しない方針でいいと思うけど、それで全く問題がないのか?が疑問。 例えばレールとか道路のプラグインがないので、再構成しないようにしたらレール が消えてその上を走っている車両がアッー!なことになったりとか。 全てのケースで問題が出ないのか、やってみないとわからない処もありますね。 もしくはプラグインが足りない場合はこのプラグインが足りませんと表示して ロードしないか、どちらかでしょうね。
- 120 名前:名前は開発中のものです。 mailto:sage [2008/09/09(火) 09:01:59 ID:r+nMyEUL]
- XmlSerializerなら実装変えてもプロパティ変えなきゃそのままだけど
- 121 名前:名前は開発中のものです。 mailto:sage [2008/09/09(火) 09:09:40 ID:EixYsHSx]
- ないのは無いと表示して止めてよいと思う。
もし建物にしても電車にしても、あるはずのプラグインがなければ、 無視して動作させてもその後はくちゃくちゃになるだろうし。 >>119 がんがれ!セーブデータ関連が完成すれば、もし問題が起こっても セーブデータとプラグイン一式をもらえば済むから、検証がすごく楽に なるハズ。
- 122 名前:名前は開発中のものです。 mailto:sage [2008/09/09(火) 16:17:37 ID:292PyFKj]
- 車両や運行関連が無ければエラー出してもいいと思うけど、
一般の建物が無いくらいだったら空き地にしちゃえばいいんじゃないかな。 ってのはできないのか?
- 123 名前:YZ@orz mailto:sage [2008/09/09(火) 22:32:19 ID:KivbIta2]
- プロトタイプ・リリース、20080909-01を公開開始しました。
【変更箇所】 ・ダイヤ設定の詳細 コピーしたい設定を選択後、コピーボタンで設定をコピー ダイヤ設定を全て消去するボタンを追加 リストビューに縦スクロールバー追加 ダイヤ設定の保存機能を追加 ダイヤ設定の読込機能を追加 【懸案事項】 ・ダイヤ設定の詳細 列ヘッダクリックによる昇順・降順ソート 月、日、時等の細かい単位でのソートは必要なのか? 月・日・曜日・時・分・アクション全ての項目でのソートが必要なのではないのか? というわけで意見求むです 【次回の予定】 ・ダイヤ設定の詳細 列ヘッダクリックによる昇順・降順ソート また、つまらん変更ですいません。 >>120 XmlSerializerってバイナリじゃなくてXMLで出力するやつですよね? それってFreeTrainで元々出力できるようになっているやつですよね。 多分、今のセーブデータだとそれでも駄目そうな気がします。
- 124 名前:YZ@orz mailto:sage [2008/09/09(火) 22:36:07 ID:KivbIta2]
- >>121 >>122
多分、ものによりけりでしょうね。 >>122さんが言われる通り、ないと( ゚Д゚)マズーなものはロード中止、それ以外は 空き地にして無理矢理ロードが妥当だと思います。 ただ、今私が知らないだけかもしれませんがデシリアライズする時に割り込んで このオブジェクトは再構成する、これはしないとユーザー側で選択できるのか? というとこが不明。 自分はできないと思っているので、それをやろうとするのならやはり自力でセーブ ロードの処理書かないと駄目なんかなぁと思っています。 しばらく調査が必要ですねぇ。
- 125 名前:c477@二両目 mailto:sage [2008/09/09(火) 23:38:41 ID:K1b5IlGG]
- こんばんは。
セーブデータの互換性維持については、私も過去に試みたことがありますので、 ご参考までに情報提供させていただきます。 このURLを参考に、C#に書き直してみることにしました。 www.codeproject.com/KB/vb/ObjectSchemaMigration.aspx いくつかの潜在的問題を解決し、より使いやすくした(つもり)のソースがこれです。 www4.uploader.jp/dl/freetrain/freetrain_uljp00006.zip.html パス:ft 基本コンセプトは、バージョン互換性が無くなったオブジェクトだけ、 互換性維持用のコードを書き足せばOK!みたいに考えていたのですが・・・ 簡単なサンプルプログラムでは、問題なく動作するのですが、 FreeTrainのような複雑なデータ構造をデシリアライズしようとすると、 問題が次々に現れまして・・・ たとえば、ベースクラスと継承クラスで同じ名前のフィールドがあってnewキーワードで隠しているような場合、 デシリアライズでエラーになります。 そのような箇所を逐一修正していけば、あるいは使えるのかもしれませんが・・・ 結局、半月ほど試行錯誤して、泥沼に嵌ってあきらめてしまいました。 それでも、何かのヒントになればと思いましたので、ご参考になればと思い書き込みました。
- 126 名前:c477@二両目 mailto:sage [2008/09/09(火) 23:48:28 ID:K1b5IlGG]
- ついでに、C#のシリアライズについて。
ご存じかもしれませんが、IObjectReferenceというインターフェースがあります。 FreeTrainでもfreetrain.framework.graphics.Pictureやfreetrain.framework.plugin.Contribution などに使われていますが、要するにオブジェクトそのものをシリアライズするのではなく、 必要最低限の参照情報(たとえばID文字列)のみを記憶しておいて、 デシリアライズ時には、このIDを元にプログラム側で適切なオブジェクトを生成(もしくは使い回し) するのに使用できます。 コントリビューションもこの仕組みで保存されていて、基本的にはIDのみが保存されています。 復元方法はContribution.cs内に書かれているので、IDに相当するコントリビューションが見つからない時の 代替処理を記述するのは、そんなに厄介な話ではなさそうに思われます。 あるいは、コントリビューションの全データを保存する、という選択も無いわけではないですが・・・ 以上、ご参考まで。
- 127 名前:YZ@orz mailto:sage [2008/09/09(火) 23:58:59 ID:KivbIta2]
- >>C477さん
こんばんわっ! 情報サンクスです とりあえず英文ページ読んでみますorz IDというのはGUIDのことですか? なるほど該当GUIDのプラグインを逐次生成しているということですか。 復元はコントリ内でやってたのですね、てっきりnetまかせだと思ってました。 とりあえずはどういうケースで問題が出るのかをはっきりさせないと駄目ですね。 話では、PCが変わったら駄目とかOSが変わったら駄目とかありますので、そこら へんを調査・整理する必要があるかと思います。
- 128 名前:c477@二両目 mailto:sage [2008/09/10(水) 20:39:36 ID:RpZoWrvp]
- >>127
YZさん >IDというのはGUIDのことですか? そうです。 >なるほど該当GUIDのプラグインを逐次生成しているということですか。 厳密には逐次生成ではありません。使い回しです。 ソースをご覧になればすぐおわかりになると思いますが、 既に存在しているプラグインをPluginManagerから取得しています。 プラグインは理想的にはFreeTrainの起動時に全てインスタンス化されて登録されているはずなので、 ゲームデータのロード時に同じプラグインのメモリイメージを生成するのは不適切であり、 IDを頼りに登録済みのインスタンスを取得して使い回すというのは理にかなった設計と思います。 あと、デシリアライズのカスタマイズではパフォーマンスもよく問題になるそうです。老婆心ながらご注意を。 デシリアライズをカスタマイズすると、型の解決(クラスパス検索?)が極めて遅くなる事例があるそうです。 以前、FreeTrainにはロードが極端に遅い、という問題があったこと、記憶されている方もいるかと思います。 あれは、私の株式プラグインのコードに問題があるせいでしたが、おそらく根は良く似た問題ではないかと。
- 129 名前:YZ@orz mailto:sage [2008/09/10(水) 21:32:40 ID:aCUJ+j92]
- C#のいい書籍ないですかね〜
やっぱり付け焼き刃ではアカンですね オライリーのやつは英語なら3.5対応のやつがあるのですが日本語版は2.0 なんでこれ待ちなんですけどね... とりあえずソース見てみます。 何を言われているのかちんぷんかんぷんですorz
- 130 名前:c477@二両目 mailto:sage [2008/09/11(木) 21:57:54 ID:6NJYSpJs]
- >C#のいい書籍ないですかね〜
私は翔泳社の標準C#.NETプログラミング1、2巻を読みました。 (ちなみにISBNは4-7981-0111-7と4-7981-0112-5です) まあ、NET1.1の頃ですから情報も古いでしょう。 でも、個人的には開発は2.0ベースで十分ではないかと思ってます。 3.0以降の拡張機能は、なくても困らないような物が多いので。 >何を言われているのかちんぷんかんぷんですorz 申し訳ないです。既にある程度ソースをご覧になられてるのかと思って、 だいぶ端折って話したので、わかりにくかったですかね。 まあ、実際ソースをご覧になれば、きっとご理解されることと思いますが、 もしご不明な点があればご質問くだされば、私に解る範囲でお答えしますよ。 ご遠慮なく。
- 131 名前:名前は開発中のものです。 [2008/09/13(土) 00:48:34 ID:LMiMAl5Y]
- 'freetrain.framework.MainWindow' のタイプ初期化子が例外をスローしました。
場所 freetrain.framework.MainWindow..ctor(String[] args, Boolean constructionMode) 場所 Driver.Driver.run(String[] args) 場所 c:\project\freetrain\patch\freetrain\tools\driver\driver.cs:行 37 場所 Driver.Driver.Main(String[] args) 場所 c:\project\freetrain\patch\freetrain\tools\driver\driver.cs:行 26 'freetrain.framework.ResourceUtil' のタイプ初期化子が例外をスローしました。 場所 freetrain.framework.ResourceUtil.loadSystemPicture(String name) 場所 freetrain.framework.MainWindow..cctor() 場所 c:\project\freetrain\patch\freetrain\core\framework\mainwindow.cs:行 119 CLSID {E1211353-8E94-11D1-8808-00C04FC2C602} を含むコンポーネントの COM クラス ファクトリを取得中に、次のエラーが発生しました: 80040154。 場所 org.kohsuke.directdraw.DirectDraw..ctor() 場所 C:\Project\FreeTrain\Patch\FreeTrain\lib\DirectDraw.net\DirectDraw.cs:行 47 場所 freetrain.framework.ResourceUtil..cctor() 場所 C:\Project\FreeTrain\Patch\FreeTrain\core\framework\ResourceUtil.cs:行 93
- 132 名前:名前は開発中のものです。 [2008/09/13(土) 12:52:33 ID:KhP8oqkK]
- .NET 3.0/3.5を使い出すと、XP以上でないと実行できなくなるのが最大の問題だと思う。
3.5のEnumerableクラスとかよく使いたいと思うんだけど。
- 133 名前:YZ@orz mailto:sage [2008/09/13(土) 13:10:57 ID:5zLxy61d]
- 当面は2.0のままでいいでしょ。
じゃないと2000ユーザーもはずれてしまうし。
- 134 名前:白河どりぬ mailto:sage [2008/09/13(土) 22:04:33 ID:tMK7fkGd]
- FreeTrainEXの20050903版のプラグインが20080908のプロト版で使えるか検証してみました。
普通に動いてます。 #プラグインですが、現在モデル調査中です。いつ完成するか分かりません
- 135 名前:あかさたな [2008/09/14(日) 10:07:33 ID:EAwJJV23]
- はじめまして、プロトタイプをダウンロードしたのですが、プラグインセットを入れて今までのセーブデータを
使おうとすると、エラーが出ます。 F\なんちゃらかんちゃらって出るんだがF\が問題なのかなぁ
- 136 名前:白河どりぬ mailto:sage [2008/09/14(日) 12:02:58 ID:KyGP9qrJ]
- >>135
プロトタイプは今までのセーブデータは使えませんよ。
- 137 名前:あかさたな [2008/09/14(日) 18:07:51 ID:EAwJJV23]
- >>136
ありがとうございました
- 138 名前:名前は開発中のものです。 [2008/09/15(月) 00:06:33 ID:0MDzbTE0]
- 某スレで名前が挙がってるのを見て落としてみました。
vistaで起動しないのは仕様でしょうか… XPのノーパソなら起動できたのですが。 それと、マニュアル等を読もうとしてもIDとPASSを入れろと言われて読むことができません、 なので何をしたらいいのかすらわかりません。
- 139 名前:名前は開発中のものです。 mailto:sage [2008/09/15(月) 00:39:42 ID:wiSuMEO0]
- >それと、マニュアル等を読もうとしてもIDとPASSを入れろと言われて読むことができません、
そういえば、確かに最近内輪ゲーになりすぎてるな。
- 140 名前:名前は開発中のものです。 mailto:sage [2008/09/15(月) 01:10:36 ID:Gpk7mvVU]
- >それと、マニュアル等を読もうとしてもIDとPASSを入れろと言われて読むことができません、
ダイアログには「IDとPASSを入れろ」なんて書いてないはずだが。 中学生レベルの英語なら読めるだろ?
- 141 名前:softbank219022064033.bbtec.net mailto:sage [2008/09/15(月) 01:48:31 ID:KDQ/R9Zf]
- それ広告荒らし対策なのよ
よく読んだら入力する文字わかるから まあwiki形式でなくてもいいとは思うが
- 142 名前:名前は開発中のものです。 mailto:sage [2008/09/15(月) 01:52:19 ID:KDQ/R9Zf]
- あらなんでフシアナなってんだろw
- 143 名前:116 mailto:sage [2008/09/15(月) 08:15:17 ID:sQFJYdSz]
- >>138
それ自分もわかりませんでした… サーバー名にヒント書いてあるので読めば…
- 144 名前:116 mailto:sage [2008/09/15(月) 08:26:31 ID:sQFJYdSz]
- あら
なんでID変わってるんだろ
- 145 名前:名前は開発中のものです。 mailto:sage [2008/09/15(月) 08:29:25 ID:1BfCRC+E]
- >>138
ttp://freetrain.sourceforge.net/forum/viewtopic.php?f=19&t=39&sid=4c58f116573f5551fc9c6f6ca8f0c433 書いてある通り、コマンドプロンプトを"管理者として実行"しないと確かできない。
- 146 名前:116 mailto:sage [2008/09/16(火) 18:27:58 ID:AtokCkNU]
- YZさん最近は来ませんね。
がんばってはるのかな?
- 147 名前:YZ@orz mailto:sage [2008/09/16(火) 20:16:04 ID:gUqU3dcQ]
- ご、ごめんなさい...
今SPOREに浮気しています... もうすぐ帰ります...
- 148 名前:名前は開発中のものです。 mailto:sage [2008/09/17(水) 23:06:50 ID:LzkC67pj]
- もう出てたのかアレ。sporeじゃ仕方ないなw
- 149 名前:YZ@orz mailto:sage [2008/09/17(水) 23:14:06 ID:RI5MCbdP]
- 糞と叩かれている割にはえらい嵌っている人もいるという。
いろいろと作るのが好きな人は多分嵌る。 恐ろしいゲームだぜぇ、ごくりっ。
- 150 名前:名前は開発中のものです。 mailto:sage [2008/09/21(日) 03:00:10 ID:AUGQZFFu]
- またスレ止まりそうだなw
- 151 名前:名前は開発中のものです。 mailto:sage [2008/09/21(日) 16:25:12 ID:mrHCmfbE]
- セーブ機能が出来るまで様子見。
今テストプレイ始めて気がついたところがあっても、バージョンアップしたらデータが 使えなくなるんじゃ動くに動けん。
- 152 名前:YZ@orz mailto:sage [2008/09/21(日) 17:19:47 ID:YiRqojzd]
- すまないです...
気がついたとこってバグですか? バグだったら上げてもらえればと思います
- 153 名前:名前は開発中のものです。 mailto:sage [2008/09/26(金) 20:39:36 ID:1pBlMdTj]
- www4.uploader.jp/dl/freetrain/freetrain_uljp00007.zip.html
忘れた頃に投下
- 154 名前:YZ@orz mailto:sage [2008/09/27(土) 00:24:53 ID:SgYErKrX]
- >>153
プラグイン乙です さて、そろそろスポアッーにも飽きた(というより今週は忙しかった)ので、また開発の作業に戻ります。 早くセーブデータの改善に着手したいですね。
- 155 名前:名前は開発中のものです。 mailto:sage [2008/09/27(土) 15:25:58 ID:jYSiBtKn]
- レジストリ汚さないバージョンは作る気ないのかな?
- 156 名前:YZ@orz mailto:sage [2008/09/27(土) 23:37:29 ID:SgYErKrX]
- 今のやつってレジストリに何か書き込んでましたっけ?
って見てみたらありましたね。 iniファイルに書き込むようにすればいけるのでは? ただ、このレジストリってMagic Libで書き込んでいるのではあれば駄目かもしれませんね。 本体で書き込んでいれば、変更できますけど。
- 157 名前:名前は開発中のものです mailto:sage [2008/09/30(火) 17:11:36 ID:d/lxzHYM]
- 始めまして、
今日、早速ダウンロードをして動作しました。 本格的で最高の作りだと思いました。 でも、最初からつまずいています。 初歩的な質問ですが最初の立ち上げで、英語で何か表示され途中で固まります。 何が足らなくてそのように成るのでしょうか? このソフトはネットに繋げとかなければいけないのでしょうか? 又、本体から(Cドライブに)ないと正常に動作がしないのでしょうか? 又、駅には人間がいるのですが、乗車客は常に0です。 つまらない質問ですがどうかよろしくご指導を御願いします。
- 158 名前:名前は開発中のものです。 mailto:sage [2008/09/30(火) 17:24:04 ID:u/ka9kjz]
- >>157
何か表示されるエラーなら内容を書かなければ誰も分かりません。
- 159 名前:YZ@orz mailto:sage [2008/09/30(火) 19:01:42 ID:89pRl79G]
- >>157さん
まずは FreeTrainヘルプ www.kohsuke.org/freetrain/wiki/pukiwiki.php (ID:*** PASS:***) を見てきてください。
- 160 名前:名前は開発中のものです mailto:sage [2008/10/01(水) 09:08:02 ID:bLlQjWWm]
- >>159
すいません! 上記のサイトを開いたのですが IDとPASSが分かりません。 WindowsXPを使用していますがDirectX8は最初から入っているのでしょうか? 後、NETは繋いだままでしょうか? 何回も、すみません。
- 161 名前:名前は開発中のものです。 mailto:sage [2008/10/01(水) 09:13:56 ID:5emqTFyv]
- >>160
IDとかはダイアログボックスに書いてある。 .net framework 1.1はインストールしてる? ディレクトリは全て半角英数字のみになってる?
- 162 名前:116 mailto:sage [2008/10/02(木) 21:43:34 ID:khDJsOm1]
- >>160-161
付け足しです。 Username and password is 'freetrain' のサーバー www.kohsuke.org にはユーザー名とパスワードが必要です。 警告: このサーバーは、ユーザー名とパスワードを 安全ではない方法で送信することを要求しています (安全な接続を使わない基本的な認証)。 をしっかり読めば書いてあります(多少の英語力は必要です) DirectX8は入れ替えて無い限りはデフォルトな筈… (サービスパック入れてたら変わるのかも…) NETというのはインターネットじゃなくて… .NET Frameworkという言ったらソフトみたいなものです…(偉そうに言うな www.microsoft.com/downloads/details.aspx?FamilyID=262d25e3-f589-4842-8157-034d1e7cf3a3&DisplayLang=ja www.microsoft.com/downloads/details.aspx?FamilyId=04DBAF2E-61ED-43F4-8D2A-CCB2BAB7B8EB&displaylang=ja をインストールしてくださいね… CドライブのMy DocumentsやProgram Filesみたいにスペースがあるフォルダ に入れたらマズいらしいのでCドライブにそのまま置くことを推奨します… ドライブはどこでもかまわない筈です… ゆっくりしていってね!
- 163 名前:名前は開発中のものです mailto:sage [2008/10/02(木) 22:05:15 ID:zIf/mo4V]
- >>161
ご迷惑をかけました。 m(_ _)m net framework 1.1をダウンロードしてインストールをしましたら 起動しました。 これから、暇を見てゲームに慣れていこうと思いますので 宜しくお願いします。
- 164 名前:名前は開発中のものです。 mailto:sage [2008/10/04(土) 19:32:28 ID:ZO5S1dPq]
- はてなブックマークをチェックしてたら
川口さんが自分の動画に気付いてくれたみたい。 なんかみなぎってきた。
|

|