[過去ログ]
親父PGがゲームを作り始めるスレッド (668レス)
親父PGがゲームを作り始めるスレッド http://mevius.5ch.net/test/read.cgi/gamedev/1080582036/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
145: 親父PG [] 04/04/07 05:27 ID:4mfJMcZS >>140 ハァハァキター(W >>141 ツクールとは視点が違うのですが、データ−互換ゲーム環境を考えています。 その上でデータフォーマットを公開しますので、いろんなシナリオやサブセットプラグイン等を 募集いたしますorz アイテニサレナイカモ.... >>142 半年前からコツコツやってました。これからも生暖かく見守ってお守りくださいまし... >>143 どうもお疲れ様 >てか、親父PGタン書き込み夜遅すぎ。一日ループしてしまいますね それは夜勤の時、コッソリ(Ry まぁまったりいきましょう。1日考えるぐらいがちょうどいいやも 草案で出した案は最終的なバイナリのイメージです。トリガテーブルはそれれ自体が フラグを拡張したものだと考えることができます。 144氏の発言>スクリプトをキックしてスクリプトにフラグ判断 トリガーテーブル自体が他のトリガーやシーンを呼び出して、その結果を判断できます。 おっしゃることは実現可能かと思います。 シーンデータ−には、5W1H(のようなもの)が定義されます ビューポート1番に定義されたウィンドをこの場所に開き、メッセージを表示しろ 以下「メッセージデータ」:戻り値 このようなデータになると思われます。 本体側インターフェースを提示しないと作りにくいとは思いますが、暫定で進めてください ある程度はこちらも合わせます。 ※私の申してる話は、データ−の最終形態なので、実際のツール類はそれぞれ最適化されたデータ−で ソースを持つのがよろしいかと。しかし、最後はコンパイルされて、一定のバイナリに落とし込みます。 http://mevius.5ch.net/test/read.cgi/gamedev/1080582036/145
146: 親父PG [] 04/04/07 05:29 ID:4mfJMcZS 4 ストリングテーブルには「固有名詞」や「ユーザー定義」の文字を収納します st1 "ぴたごらすいっち"と定義 メッセージデータ #1はNHKのTV番組 >ぴたごらすいっちはNHKのTV番組 6 struct MAPBASE{byte Maptype,MoveCost,ToDo,Maptype2}: こんなのを配列で持つのはどうですか? 7 この部分はを考えるのは一番楽しい部分かなぁ(w 属性追加タイプを考えています。熱く寒く丈夫で黒光りする腐った剣 とかorz結局ツカエルノカ?コノケン... 8 バイナリデータ−で固定長データ−です。 それとは別にテクスチャテーブルもあり、セットで運用しています。 ちょっとずつ変わっていますが、この後出しますね。 http://mevius.5ch.net/test/read.cgi/gamedev/1080582036/146
147: 親父PG [] 04/04/07 06:09 ID:4mfJMcZS struct ViewPortSetting{ unsigned int ClientSizeX,ClientSizeY,ViewPortSize; dRECT RECTS[MAXPANEL]; dOption OPTIONS[MAXPANEL]; }; struct dOption{ short int TextureNum ;//テクスチャー論理番号 short int TextureNum2;//テクスチャー論理番号2枚目 short int D3D ;//基本座標系 1 混在 2 2D 3 3D unsigned char Z1; //1枚目Zの価 unsigned char Z2; //2枚目Zの価 unsigned int hTexture2; unsigned int hTexture;//上に貼り付けるテクスチャのハンドル システム側でセット unsigned int hTextureBox;//ポリゴンのハンドルシステム側でセットされる }; 2枚目のテクスチャは上に重ね合わせるためにあります。(抜き処理か半透明使用) ボタンの設定一部略 struct dBOption{ short int Parent;//親のView番号 unsigned int SelfID;//自分自身の番号 short int BaseTexture;//テクスチャのBASE番号 short int CoTexture;//テクスチャ内の子INDEX番号 short int BTOption;//動作 0なし 1以上の価でボタンアクションの種類を指定 unsigned int ON_LDownMouse;// アクション番号 0はなし unsigned int ON_RDownMouse;/ ここで呼び出す関数番号を指定する 略 ※シナリオからみるべきはボタンの処理番号になるのかな? 場面切替の場合はビューポート周りも見る必要があるかもね http://mevius.5ch.net/test/read.cgi/gamedev/1080582036/147
148: 親父PG [] 04/04/07 06:10 ID:4mfJMcZS 閑話休題 戦闘システムですが、場にキャラクタが使うアイテム(魔法エッセンス)を宣言(スロット配置)して その置かれたアイテムによって、使用できるコマンドが追加されていくというものを考えています。 またアイテムには持続ターンの設定がされていて、持続ターンを消化するとスロットから除外されます。 剣を主に使う場合(サンプル 剣を使用宣言>「切りかかる」が使用可能 盾を宣言>防御力UP 「受ける」が使用可能 魔法の場合 マナと秘薬宣言>魔法○○使用可能 剣を中心とするユーザー 利点・持続ターンが長い 欠点・単体攻撃 魔法ユーザーの 利点・幅広いコマンド 欠点・アイテムの持続ターン アイテムの使用と宣言は同時にはできないので「使用タイミング」を考慮しなければならない。 まぁこのへんはアイデア段階ですのでいろいろ変わると思います。 http://mevius.5ch.net/test/read.cgi/gamedev/1080582036/148
150: 親父PG [] 04/04/07 08:38 ID:4mfJMcZS テクスチャのブレンドに関するパラメーター多いね 多すぎて何がなんだか@@@ ひとつひとつ検証しますかのうorz... 「テクスチャ(4444)前面 頂点色付ポリゴン」 + 「テクスチャ565」(背景) 頂点色付ポリゴン」 + 「サーフェースカラー」 前面のポリゴンの頂点のアルファ値のコントロールでいければ良いのだけど 今、なんとなくやった設定では背景のサーフェーイスカラーに対してブレンドしてるね。 それはそれで必用な設定なんだけどね。 後ろの背景が消えて(無視)されて合成されているorz 設定できる(可能性)の幅が広すぎてトホホホです。 pD3DApp->m_pd3dDevice->SetTextureStageState( 0, D3DTSS_ALPHAOP, D3DTOP_MODULATE ); pD3DApp->m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE ); pD3DApp->m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3DTA_DIFFUSE ); // アルファ合成の設定 pD3DApp->m_pd3dDevice->SetRenderState( D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA); pD3DApp->m_pd3dDevice->SetRenderState( D3DRS_SRCBLEND, D3DBLEND_SRCALPHA); pD3DApp->m_pd3dDevice->SetRenderState( D3DRS_ALPHABLENDENABLE, TRUE ); これから息子と嫁さん連れてバス旅行(隣の駅まで)行ってきます。 http://mevius.5ch.net/test/read.cgi/gamedev/1080582036/150
153: 親父PG [] 04/04/07 09:11 ID:4mfJMcZS >>144 いろいろな考察ありがとうございます。きちんと整理してご返答したのですが、 あいにくバスの時間がw戻ってきてきちんと返答します。 MAP>イベントキック>シーン この方法には2つ方法があると思います。 MAPにイベント番号を入れる方法と MAPにはイベントがあったことのみのデータ−で 管理側でXY座標を引数にイベントトリガー内を検索します。 とちらにも利点欠点 あ時間だ 帰ってきて書き込みます http://mevius.5ch.net/test/read.cgi/gamedev/1080582036/153
158: 親父PG [] 04/04/07 14:26 ID:4mfJMcZS >>154 155 156 orz..... >>155 川口にいって桜を見物してきました。今日はいい天気で子供達ものびのびと羽を伸ばしてきたようです。 トリガーテーブルはそれ自身に起動条件を備えています。 またトリガー自身がトリガーを呼ぶことが出来ますし、他のトリガーからも呼ばれます。 さて地形MAPについてですが、これにはシステムに対してトリガーをチャックしろというトリガーを引きます。 プログラムに流れは以下のようになります。 キャラ移動>該当MAPの配列調査、トリガテーブル起動命令がある。 トリガーテーブル検索、トリガーテーブルの演算>シーン起動 さて編集時の問題についてここで解決策を述べておきます。 MAP編集ツールはトリガーテーブルに追記することができます。 MAPツールで編集するのはX座標aY座標bでトリガーがあるということだけです。 あとでシーンデーターで、その追記された部分を補完すればよいのです。 トリガーテーブルは固定長なので扱い易く、いろんなツールで追記することができます 複数人数での作業もトリガーテーブルを、マージしながら作業を進めることになります。 ○トリガーの設定 とある座標にトリガーを埋め込む。MAPの配列該当部に任意の価を入れる。 同時にトリガーテーブルに座標を引数とするトリガーテーブルを追記する (何をするかはここで編集しない ※できるようにしても良いとは思いますが) ○座標の書き換え とある座標でトリガーを設定していたが、座標移動することになった。この場合MAPデータ−は 自身のトリガーテーブルの該当座標が記録された部分を書き換えます。 (※この作業の為にシリアル管理しても良いかもしれないね。) ○複数人数の作業 トリガーテーブルをマージします。「違うMAPの場合どうするのだ?」というご指摘がありました その場合トリガーテーブルごとに入れ替えるか、もしくはMAP番号も引数に加えれることで解決します。 ○トリガーテーブルはCSV化してEXCELで簡単に一覧化できる。簡易マクロでエラーチェックもおこなう トリガーテーブルは計算式 IF文を処理する機構なのです。 FG(フラグ)は変数置き場です。 http://mevius.5ch.net/test/read.cgi/gamedev/1080582036/158
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.020s