トップページgamedev
1001コメント344KB

C++でドラクエっぽいRPGを作る 2

■ このスレッドは過去ログ倉庫に格納されています
0001代理2008/05/14(水) 02:52:59ID:WT/twc82
C++の勉強をかねてFCのドラクエっぽい感じのRPGを作りたいんです。

しょっぱなからつまずいています、知恵を貸してください。

前スレ
http://pc11.2ch.net/test/read.cgi/gamedev/1193935988/
0353名前は開発中のものです。2008/07/26(土) 22:11:18ID:MaSVBvZq
>>352
そんなboost使いまくりなソースはむしろ、見てみたい。
0354名前は開発中のものです。2008/07/26(土) 22:23:51ID:nbFOjXde
>>348
目立ちたい前提があるようだがそれはお前の中の話。
根本的にズレてるとしか言い様が無い
0355名前は開発中のものです。2008/07/26(土) 22:52:34ID:c1wAVuFK
誰も便乗者が目立ちたいたがってるなんて一言も言ってないだろ。
アグレッシブなうp主がいて埋もれる可能性あるけど大丈夫?って心配してるだけだぞ。
ズレてる云々の前に>>343とかお前はかんぐりすぎだ。

つーかうp主がアグレッシブなスレで途中から乗ろうとするのに便乗の他にどんな理由があるんだ?
活動的なスレで仲間に入りたいってとこじゃねーの?
別にそれが悪い事だとは思わんけどさ。
いちいち否定してたらスレ立てる奴や報告する奴なんかいなくなるし。
0356名前は開発中のものです。2008/07/26(土) 23:47:13ID:iIqloNQw
>>354
俺は348じゃないが、2chでやる奴は結局目立ちたいってのが本音だと思うよ
いろいろ理屈を重ねるうちに無自覚になってしまうんだが。
0357名前は開発中のものです。2008/07/26(土) 23:49:49ID:wjgH1Y8w
まあでもそれが悪いことなわけでもない>目立ちたい
0358はかせ2008/07/27(日) 00:05:18ID:LfRvVize
マスク属性をつけてみました。
>いわゆる屋根、でしょうか?勇者の家にもつけなきゃですけど、とりあえずルイーダのところだけ。
>GameData/MAP/Aliahan/MaskMap.txtで屋根をつけたいところの0を1に変えるだけ。
>ほかのマップにMaskMap.txtが存在しないのはMapParamのマスク属性がoffになってるからです。
>これもエディタで編集できるといい感じになるかもしれません。
>余談ですが実装の時にcontinueすべきところをbreakしててかなり悩んでました。 Orz

tp://sakuratan.ddo.jp/uploader/source/date87896.lzh

このスレは僕がスレ主だからといって僕だけのものじゃなく、見てくれる人たちのものでもあるわけです。
俺についてこれないならカエレ!って言う運営方法はプロジェクトスレなら必要でしょうが
一人で細々コード打ってるスレには必要ないし、キャラじゃないのでやりません。
共用スレとか専用スレとかはっきり線引きしないでマッタリやりたいというのが僕の本音ですがそれじゃダメですか


0359名前は開発中のものです。2008/07/27(日) 00:11:27ID:JOQubOcY
いいんじゃね?それで。
やりたい奴はやれ、見たい奴は見れ、で。
俺は見てるw
0360名前は開発中のものです。2008/07/27(日) 00:18:21ID:VW6euZzn
俺の陣地だから立ち入り禁止ねーとかいう小学生じゃあるまいし。
誰が何を書こうが勝手だろばかばかしい。
0361名前は開発中のものです。2008/07/27(日) 00:43:02ID:JOQubOcY
夏だなぁ
0362名前は開発中のものです。2008/07/27(日) 02:04:11ID:lTktjFnm
>>354
いや、このスレで>>1以外に見てもらう価値は無いし
目立つ意味も無い
それなら他スレでおkじゃん

ああ、君が目立ちたいのか
0363名前は開発中のものです。2008/07/27(日) 02:27:31ID:RqX9sV22
>>358
屋根いいじゃないですか。

でも、別MAPに移動できなくなってて悲しすw
0364名前は開発中のものです。2008/07/27(日) 02:37:23ID:DGo9CCFy
じゃあ俺も勉強がてらドラクエっぽいRPG作るは
0365名前は開発中のものです。2008/07/27(日) 07:53:59ID:HhJsT9Om
この板はどのスレが生きてるかわかりにくいな・・・
ドラクエではないが、俺もCの学習をかねて作り始めたゲームがあるのだが、
どこのスレでやったらいいか分からんよ

いっそドラクエものも作って、このスレに相乗りさせてもらおうかな
0366名前は開発中のものです。2008/07/27(日) 09:33:34ID:eTFxbOCF
このスレこの板にしては人多くて居心地いいね。
0367名前は開発中のものです。2008/07/27(日) 10:07:10ID:wGkRkFeG
模型板なんかも似た感じがあるが、製作工程や完成品が
まめにアップされるスレは活気がある
0368名前は開発中のものです。2008/07/27(日) 14:46:09ID:JRZPLwTP
中2病患者はRPGがお好きプ
0369名前は開発中のものです。2008/07/27(日) 17:08:30ID:DGo9CCFy
なんで中二病は悪って風潮になっちゃったんだろね?
それはそれとして、DQはむしろ中二病からは遠い存在だと思うけど。FFじゃあるまいし
0370はかせ2008/07/27(日) 22:03:11ID:LfRvVize
ダメージ床を設置しました。
>トラマナやダメージ床を無視する装備を考えたらイベントで実装するより、マップに設定したほうが良いと思ってやりました。

FieldMap自体にエンカウントするかを設定できるようになりました。
アイテム使用時に落ちるバグを修正しました。
ルーラ使用時に落ちるバグを修正しました。
死亡していないキャラが棺おけで表示されるバグを修正しました。

tp://sakuratan.ddo.jp/uploader/source/date87981.lzh

ダメージ床を実装してたらフィールドで全滅した時の処理をしてないことに気がつきました。
毒のダメージで死んだときのメッセージ表示とかもしなきゃだめですね。
0371名前は開発中のものです。2008/07/27(日) 23:13:45ID:IhCAohUV
>>370
毒ダメージで全滅はしないはず
バリアはあるけど
0372はかせ2008/07/27(日) 23:14:31ID:LfRvVize
>>363
ありがとうございます。
バグ修正しておきました。
0373名前は開発中のものです。2008/07/27(日) 23:24:21ID:P4ofhQtC
>>371
サマオンサの地下牢で隠し通路がみつからずに自殺した俺にあやまれ
0374名前は開発中のものです。2008/07/27(日) 23:33:53ID:RqX9sV22
>>372
MapChipが読めないとか言われて落ちるぜ?
0375名前は開発中のものです。2008/07/28(月) 00:10:54ID:3yIs0GMt
破綻への道
0376名前は開発中のものです。2008/07/28(月) 00:44:09ID:+fyqlDDb
>>374
前回、マスクマップを追加して、それが街以外まだないからだろ
0377はかせ2008/07/28(月) 21:47:03ID:airBa1HY
>>374
MetaData.csvの構造を変更したためAliahan以外のMapが開けなくなったバグを修正しました。
>機能を追加するといろいろほころびが出てくるのは設計がダメダメな証拠ですね。

ダメージ床を無効にする呪文を実装しました。

ダメージ床や毒で全滅したときの処理を実装しました。
>毒でも一応死んで全滅するようにしました。オリジナルの仕様は調べようとして挫折しました。

自走イベント用の移動規制を作りました。
自走イベントがパーティの先頭メンバーと重ならないようにしました。
>村人の動きをある程度制御できるようになったと思います。

イベントの向きの初期値を設定できるようになりました。
>おみせがやっとお店らしくなったような気がします。

tp://sakuratan.ddo.jp/uploader/source/date88047.lzh

またアク禁になりました。
やれやれです。
0378名前は開発中のものです。2008/07/29(火) 23:36:08ID:/uc0WL2s
いや人の書いた汚ないコードなぞ見たくもない。
0379名前は開発中のものです。2008/07/30(水) 01:11:35ID:a33op1E+
どうやって仕事すんお
0380名前は開発中のものです。2008/07/30(水) 08:29:57ID:xdCOQLms
書き直したい病か
0381名前は開発中のものです。2008/07/30(水) 08:31:51ID:0jYqVcPt
仕事なんて他にいくらでもあるべ
ここにいる人みんなマ?
0382はかせ2008/07/30(水) 19:42:15ID:WAxm5927
すみません。アク禁の上、風邪引いてダウンしました。
時々この時期に大風邪を引くんですよね。

もしかしたら一週間位アップ出来ないかもです。
ちょくちょく覗きにはくるので よろしくです。
0383名前は開発中のものです。2008/07/30(水) 19:55:12ID:S1Dk09e6
お大事に。
0384名前は開発中のものです。2008/07/30(水) 20:15:11ID:Zk6W7Z9b
>>382
クーラー焚きすぎじゃないの?
0385名前は開発中のものです。2008/07/30(水) 21:32:42ID:tUo5oM+r
>>382
お大事に。
0386はかせ2008/08/02(土) 00:18:24ID:y0ew26Xq
まだ完治じゃないけどだいぶよくなったので活動開始です。
のどちんこがめっちゃはれてる気がする。

MapObjectを属性とタイプにわけました。
>この辺の仕様はだいぶ迷いましが、物、生物、扉、宝箱 の四つに分けました。
物と扉は画像を1種類しか持ってません。宝箱は開ける前、開けた後の2種類。生物は4*2パターンの8種類です。
属性は 【はなす】を素通りさせる 押せる、自分で歩ける、足踏みさせられる、の四つを組み合わせて使えます。
よく考えたら足踏みは生物じゃないと使えないですね。

宝箱用のスクリプト<Treasure ItemID>を実装しました。
>宝箱専用のフラグを使ってます。通し番号を管理しなくちゃいけないのは面倒くさいですが
そのへんをうまくやってくれるエディタが作れればいいんですが。Orz

麻痺攻撃で死んだときに しびれた->死んだ、と表示されることがあるバグを修正しました。
麻痺攻撃が【ミス!】の時でもしびれることがあるバグを修正しました。
>前々から気になっていたバグ。

SaveDataからフラグ情報を取得できるようにしました。
>Sava.csv自体には前からあったのですが、取り込んでなかったみたいでした。
>宝箱用のフラグを入れるところをSave。csvに追加しました。

MapParam.csv MetaData.csv MetaMapObject.csvの形式を一新しました。
>ただの実装予定で機能していないデータを追加しました。
>今のところ考え付く分は全部乗っけたつもりです。

tp://sakuratan.ddo.jp/uploader/source/date88386.lzh
0387名前は開発中のものです。2008/08/02(土) 13:23:42ID:Fl4ABlIK
宝箱に更に属性を設けて、宝箱or落し物orタンスやつぼが判別できるといいかも。
「しらべる」時に、処理は殆ど同じで、メッセージだけ違うから。
0388名前は開発中のものです。2008/08/02(土) 14:12:39ID:rHSTcdGm
店で買い物する時…
宿屋、武器と防具の店の場合[はい/いいえ]が所持金表示と被り、所持金が見えない
便利ボタンで店に話しかけた場合、所持金が表示されないのが気になった。

あと、宝箱のフラグだけど、開けたら立つの?
ミミックとかで全滅した場合、倒すまで物が入った状態だった気がするので、
どうするのかな?と思った(気のせいだったら失礼)。
宝箱と別物でやるとインパスの処理とか大変そうだし。
0389はかせ2008/08/03(日) 23:41:23ID:BaT/FnKr
>>387
なるほど!
つぼとかタンスはすっかり忘れてました。
属性をつけるのではなくTreasure>を<Chest>とか<Pot>とかにして対応させようととおもいます。

>>388
空けた瞬間ではなく、アイテムを入手した場合にフラグを立てるようにしてます。
アイテムがもちきれなくてあきらめるとか、そういうのも含めて実装する予定です。
ミミックとかは属性をつけてやるとインパスの実装が楽そうですね。
お店の件は修正しました。しましたが、そこしかできなかったのでUpしません。
0390はかせ2008/08/05(火) 00:37:41ID:YJdxJGkF
各オブジェクトごとに属性を設定できるようになりました。
お店用に動くタイプと動かないタイプを別で用意しなくてもよくなりました。
座標とかを入れた後に文字列と数字の組み合わせでセットします。
ぱっと見ゲーム上には出にくい部分ですがとりあえずうpです。

MapParamに時間経過を許すか、とかまだ決めかねてるところがあるので、アリアハンしか作ってません。
アリアハンから出るとうまく動かないと思います。

tp://sakuratan.ddo.jp/uploader/source/date88813.lzh
0391名前は開発中のものです。2008/08/05(火) 03:09:30ID:Cq+nvs1f
久しぶりにやってみた。
全滅したらフィールド上で止まるのかー。そこらへんはまだ手つかずだったのかな。
0392名前は開発中のものです。2008/08/05(火) 04:44:58ID:8oTWLzEJ
フィールド戦闘すると関係なしに止まるよ。

>>390の文の最後の時間経過の処理の関係だと思って触れなかったけど。
0393名前は開発中のものです。2008/08/05(火) 23:56:11ID:9ncBvUSo
なんか店のコマンドの出方がおかしい。

0394はかせ2008/08/07(木) 01:35:23ID:cgJTp/oO

呪文がかき消されるマップで戦闘中も呪文がかきけされるようになりました。
>ちなみに洞窟が呪文が使えないマップになってます。

押せる岩を実装しました。
>ただし壁に当っている時はキャラが岩を素通りします
>あとは移動速度を落とさなくちゃいけないですね。

夜の時と瀕死の時の文字の色を追加しました。
>最大HPの1/4未満で緑に変わります。もっと判定甘いかったでしたっけ?

【InIt】でマップ移動をすると入口と出口を記憶できるようにしました。
>いままでMapParamにリレミト用の座標を入れてたけど不要に。
>記憶したくないマップ移動は【MoveTo】で。

MapParamに時間経過フラグ。
>立てないといくら歩いても時間が経過しません。

ラナルータを実装しました。
>時間経過をしないタイプのマップだとで記憶した入り口の座標に移動します。

戦闘終了時の処理を修正しました。
>Eventクラスのコンストラクタが犯人でした。

tp://sakuratan.ddo.jp/uploader/source/date89024.lzh


不完全な形とはいえ岩が動かせるようになったのはなんかうれしいです。
呪文リストをDQ4までの呪文は埋めました。
何も見ないで書き出したので、数であわせたつもりですが、何か抜けてるかも知れません。
ちなみに最後まで思い出せなかったのはドラゴラムでした。
ついで レムオム シャナク バシルーラ フバーハ です。
0395はかせ2008/08/07(木) 19:15:50ID:cgJTp/oO
さくらタンが調子悪かったせいもあって、日中何もできなったので
こんなの作っちゃいました。

tp://chiekoujou.web.fc2.com/games/dqi/index.html

いろいろぼろぼろな所は目をつぶってください。
タイトルにつける画像とか提供してくれる奇特な方がいらっしゃったらぜひお願いしますです。
0396名前は開発中のものです。2008/08/07(木) 19:19:25ID:stySilCL
こういうサイトってスクリーンショットを見せるのが礼儀だと思うんだが、
0397名前は開発中のものです。2008/08/07(木) 19:24:25ID:yL3gMJAh
礼儀って初耳かもしれんw
0398名前は開発中のものです。2008/08/07(木) 19:35:28ID:OhX2oyHP
このスレの住人しか行かないんだしいらんだろ
0399名前は開発中のものです。2008/08/07(木) 20:47:44ID:PHe4UYDZ
2chのしきたりとかわかってないな
0400名前は開発中のものです。2008/08/07(木) 21:04:03ID:yL3gMJAh
2chって何?ファミコンつなぐチャンネル?w
0401名前は開発中のものです。2008/08/07(木) 21:40:01ID:VplsqTiW
>>396
礼儀≠常識
0402名前は開発中のものです。2008/08/08(金) 01:36:36ID:fTeJm19p
>>395
ttp://sakuratan.ddo.jp/uploader/source/date89098.zip
正直、ノリで作った。すまない。
いらんかったら消してくれ。
0403はかせ2008/08/08(金) 02:50:28ID:5dT+LkKq
壁に当たっている岩を押しても素通りしなくなりました。
>あとは特定の床にもって言ったときにフラグが立てられるようになればエジンベアとか実装できますね。

ザオリク系を実装しました。
>ザオラルは蘇生確立50%で蘇生後のHPは半分です。ザオリクは2仕様だと蘇生後が1になるんでしたよね。

ザキ系を実装しました。
>まだ耐性を設定してないので100%で決まります。

トヘロスを実装しました。
>DQ3だと使用後にはメッセージがでなかったのですが、とりあえず表示させました。

一日1呪文のペースで実装していったら結構すぐ埋まるんじゃないかと簡単に思った今日この頃です。
簡単な呪文なら良いけど、複雑な呪文だと頓挫しそうです。
メガザルとかミナデインとかどうやって実装しようか迷ってます。パルプンテとかも。

>402
ありがとうございます。早速少し貼ってみました。
画像貼ると一気にそれっぽいサイトになりますね。
0404名前は開発中のものです。2008/08/08(金) 03:24:33ID:ZJX3Y4bc
BMP貼り付けるとかアホかw
JPGかPNGに変換しとけ
0405名前は開発中のものです。2008/08/08(金) 08:58:33ID:ypSl+d/y
よっしゃ俺もつくるよ!!
とりあえずマップ表示させた!
ttp://gamdev3.hp.infoseek.co.jp/cgi-bin/up/No_0306.png
0406はかせ2008/08/09(土) 02:02:27ID:dXauG1TQ
現在のマップを表示する呪文を実装しました。
>フローミですね。かなり使われる機会のない呪文です。
コレを使ったら便利なくらい複雑なダンジョンがあってもいいとか思いました。

カウンター属性がうまく適用されていなかったバグを修正しました。
>バグです。前回までお店が使えなったっぽいです。

逃げられなかった時の処理を追加しました。
>単純に確立で逃げられなくなってます。
>オリジナルだと逃げられない戦闘じゃなければ4回目で絶対に逃げられるとか、
>こっちのLvと敵のLv差で確実に逃げられるとかあるみたいです。

モンスターの行動に【にげる】を追加しました。
>メタルスライムがメタルスライムらしくなりました。
>でも、まだ呪文が効くんですけど。

宝箱をあけたときに持ち物が一杯だった時の処理を追加しました。
>もちものを捨てるかどうか、の処理ですね。
>あとはミミックとか、つぼとかの処理を追加しなくちゃですね。

>>404
修正しました!突っ込みありがとです。
0407名前は開発中のものです。2008/08/09(土) 03:08:41ID:BXAuGRIE
はかせのソースを読み解こうとがんばってるんだが
スクリプトのDivの処理がどうなってるのかさっぱり分からないorz
”へっぽこスクリプト”のところで
一行ずつ命令を調べていってるのは分かるんだけど
肝心のDivのところは何もしてない様子?

だれかDivの処理の流れを懇切丁寧に教えてくれないか。
Divクラスも何の仕事をしてるのか意味が分からん。
入れ子にも対応してるっぽいし、なかなかうまくできてるっぽいのは分かる。
0408名前は開発中のものです。2008/08/09(土) 03:18:10ID:AfcxpITZ
そこはオレも苦労した
よくこんなの構築できるな・・・・
0409名前は開発中のものです。2008/08/09(土) 12:42:11ID:VXbASS0N
>>405
草地を無視して、道と建物だけ注目してみるとローグっぽいマップだな
0410名前は開発中のものです。2008/08/09(土) 13:20:17ID:5tCzU1PQ
ドラクエはウルティマの影響を受け、ウルティマはローグの影響を受け。
歴史だよな〜。
0411名前は開発中のものです。2008/08/09(土) 21:09:36ID:Uo36B+c7
自分は素人だからよく分からんのですが
const.h にずらーっと定義されている定数値群みたいヤツって
こういう形にするのが普通なんすか?

属性用の定数定義とか、色情報の定数定義とか
ごっちゃにしないで、各々クラスに分けて定数と持たせるなり
enum にするなりするものだと思ってたんだけど
0412名前は開発中のものです。2008/08/09(土) 21:20:05ID:AfcxpITZ
案外定数って色んなクラスで使いまわすから、
こういうゲームみたいに定数がたくさん必要だと、
ひとつにまとめたほうが管理がラクだと思う
0413名前は開発中のものです。2008/08/09(土) 21:25:56ID:rmn4CrKa
必要なクラスのpublicメンバのenumなりstatic const変数にするか
namespaceで閉じ込めた方が管理はしやすいけどな。
実行環境依存で変わる定数なら最初にインスタンス作っておくとかするし。
0414名前は開発中のものです。2008/08/09(土) 21:31:09ID:AfcxpITZ
それだといちいち定数呼ぶときにクラス名つけないといけないじゃん
どの定数がどのクラスにあるのか把握しないといけないからめんどい
0415名前は開発中のものです。2008/08/09(土) 21:40:52ID:rmn4CrKa
グローバル空間で他の定数とかぶらない様に長々とプリフィックス付けるのと
変わらん上にインテリセンスに任せるから。
数学定数ならMathだろうしキャラクターの状態ならキャラクタークラスだろ。
スコープの範囲を狭めておけば把握する範囲も狭くて済む。
定数増やしても再コンパイルの必要なファイルが減るし。
0416名前は開発中のものです。2008/08/09(土) 21:48:36ID:AfcxpITZ
むしろ設計上の問題かな?
適切なクラスに割り振るなんて、ある程度仕様や設計が固まらないとできないし
最初はひとつにまとめておいたほうが設計側としてはラク。
最初から最適化まで考慮できないだろ
0417名前は開発中のものです。2008/08/09(土) 21:57:25ID:rmn4CrKa
そうだけど最終的にはモジュール化して切り離すべきだと思う。
namespaceで区切るだけでも影響範囲を狭めることができるし
実際にすべてのクラスで必要な定数なんて皆無だから一つのファイルでまとめるよりは
ジャンルや参照別で作っておいて後でもいいから閉じ込めるべきだと。
まずはファイル別に分けるのは適当に作っていても出来ることだし。
マップオブジェクトの種類と戦闘パートの定数が一緒に定義されている必要が無いことは明らかだし
仮に両方必要なら必要なときにincludeすれば良い。
0418名前は開発中のものです。2008/08/09(土) 21:59:05ID:Uo36B+c7
>>412-416
なるほどー
そういや、WinUser.h とか見るとスゴイことになってますね
Java とか .NET に慣れてしまうと信じられないっす
0419名前は開発中のものです。2008/08/09(土) 22:17:13ID:5VaRpRJN
自分はCだけど、分けられる物は分けてしまうな。
ファイルは確か200以上とか膨大になっているけど。

Sintai.h 身体能力(力、賢さなど)
SINTAI_SUU SINTAI_NAME_LENGTH

Job.h (Sintai.hをインクルード)
職業(勇者、スライムなどの種族も)
JOB_SUU JOB_NAME_LENGTH

Chara.h (Sintai.hをインクルード)
キャラクター(パーティーの4人や登場モンスター、ルイーダの仲間)
CHARA_SUU CHARA_NAME_LENGTH CHARA_ITEM_SUU
CHARA_FRIEND_POS CHARA_FRIEND_SUU
CHARA_ENEMY_POS CHARA_ENEMY_SUU
typedef struct {
 char name[CHARA_NAME_LENGTH + 1];
 int abi[SINTAI_SUU];
 int item[CHARA_ITEM_SUU];
 BOOL equip[CHARA_ITEM_SUU];
}CHARA_STRUCT;

Item.h
アイテム、魔法
ITEM_SUU ITEM_NAME_LENGTH ITEM_ABI_SUU
enum{
 ItemAbiEff = 0, //効果 攻撃、回復など
 ItemAbiTech, //使用技術 剣、炎など
 ItemAbiTimes, //使用回数、消費MPなど
 ItemAbiPow, //威力
};
0420名前は開発中のものです。2008/08/09(土) 22:36:37ID:EduQWhQl
今日も来たよ!!
二倍表示できるようになった!あととりあえずスクロールも
明日は歩けるようにするぜ!
ttp://gamdev3.hp.infoseek.co.jp/cgi-bin/up/No_0307.png

お前らが何を言ってるのかさっぱりなんだぜ・・・Σヽ(`д´;)ノ
0421名前は開発中のものです。2008/08/09(土) 22:47:53ID:AQ4AyvVP
まとめておくと、直交性が失われていても気付きにくくなるな
0422名前は開発中のものです。2008/08/09(土) 23:20:54ID:tvv/JpM/
ttp://sakuratan.ddo.jp/uploader/source/date89245.zip
性懲りもなくSS撮ってみた。
前回がやっつけすぎたので、今回はちょいと凝ってみた。
あと、前回言い忘れていたことを…

HP解説おめ!!!
SS使ってくれてありがとう!
0423名前は開発中のものです。2008/08/10(日) 07:13:00ID:d6+gRodn
いい流れじゃね。
レベルが高いか低いかはおいといてw
で、誰かDivの仕組みを俺に伝授したい教えたがり屋さんはいませんかw?
0424名前は開発中のものです。2008/08/10(日) 10:49:34ID:rBsfGzay
Macだから実行できなかったんだけどSSはってくれてありがたいです!ソースは読めるんでどういう構造で作ってるのか気になってる。
0425402 4222008/08/10(日) 16:19:58ID:DW9soSXF
今度は、改変なしの真面目なSSを撮ってみた。
これでMacの人でも安心だ!
ネタもあるよ。

ttp://sakuratan.ddo.jp/uploader/source/date89412.zip
0426はかせ2008/08/10(日) 23:58:22ID:e6aICf9F
守備力・素早さの強化弱化の呪文を実装しました。
>ルカニ・ルカナン・スカラ・スクルト・ボミオス・ピオリムです。
>バイキルトは重ねがけできないことを思い出しました。単純に二倍じゃダメそうです。
>バイキルト用のフラグを作って、真の時はダメージ二倍とか、ですかね。

If分岐の条件に指定のオブジェクトの位置を追加しました。
>具体的にいうと岩を動かして進むダンジョンを作れるようになります。
>ルイーダの酒場の地下にエジンベアの倉庫を作りました。
>ただし、岩を並べ終わった後に、階段そばの女に話しかける必要があります。
>そのうち並べ終わった瞬間に道ができるようにしたいですね。

>>402
マジでありがとうです。
真面目な方はポイントを抑えてていい感じですね。
ネタ?笑わしてもらいましたが何か?
ネタSS貼り付けられる掲示板を設置したら盛り上がるかもとか思いましたが、よさそうなところ知りませんか?
0427はかせ2008/08/11(月) 00:04:19ID:mLo398O/
あと定数をconst.hにまとめた理由ですが
@クラス内にconstを宣言する方法を知らない。
AEnumの定義の仕方と使い方がわからない。

以前何回か試したんですが、コンパイル通らないので諦めちゃったんですよね(汗
で、今の方法で落ち着いたわけです。
FieldCommandの定数関係はEnumで定義できたらかなり見やすくなるし、挿入削除が楽になると思うんですよねぇ…。

>>407
解説のページを作ろうかと思ったんですが、うまく説明できなかったので保留で。
期待しないでお待ちいただきたいです。
0428名前は開発中のものです。2008/08/11(月) 00:30:47ID:h3nO6Vhe
>>427
とりあえずヒント。
・static constとconstとの違いは理解しているか?
・enumはググればすぐ出る。恥ずかしくなるくらいすぐ出るはず。
0429名前は開発中のものです。2008/08/11(月) 00:36:10ID:WrgeuR9B
簡単な処理でバグってなかなか進まないは!!
・ちゃんと1マスずつ歩くようになった(足踏みもするよ!)
・とりあえず屋根を表示できるようになった!
明日はあの印象深い屋内への切り替わりのエフェクトを作るぜ!
でもあれはなかなか手強そうだ・・・
ttp://gamdev3.hp.infoseek.co.jp/cgi-bin/up/No_0308.png

ってSSだけだと昨日とかわんねーぜ(/ω\)
04304022008/08/11(月) 00:44:05ID:SdqRjPTH
>>426
笑ってくれてありがとう。
まぁ、そろそろネタが切れてたりするけどw

すまない… 掲示板とかはよくはわからないんだ…
0431名前は開発中のものです。2008/08/11(月) 11:12:26ID:mz9MqFyj
>>423
@"If 〜"など分岐する行でDiv::setDiv(分岐の値、-1)を実行して
Div::div[Div::divCnt]に分岐の値を入れる。Div::divCntを1増やす。

A"Div @でDiv::divに入れた値"の行までスキップし、Div::setDiv(0,Div::divcnt-1)を実行。
Div::div[Div::divCnt-1]に0を入れる。

B"Div -1"の行にいくまで通常処理をする。

C"Div -1"の行があればDiv::divCntを1減らす。

Fieldクラスを見てみるとこんな感じで、Divは状態を保持しているだけ。
後はABの処理中に関係ない"If 〜"とか"Div 〜"があると
Div::divに-1を入れて対応している。
0432名前は開発中のものです。2008/08/11(月) 11:32:03ID:mz9MqFyj
>>431 
自己レスだけど、入れ子にも対応しているからBで"If〜"などの分岐があれば@にいく。
0433名前は開発中のものです。2008/08/11(月) 11:35:29ID:WrgeuR9B
何気なくスレを開いて“C++で作る”スレなことに今気付いた!Σヽ(`д´;)ノ
やべえ全然C++じゃないよ・・・今さらだけど
0434名前は開発中のものです。2008/08/11(月) 11:42:47ID:8S8L71vB
そっか・・・
それじゃ仕方ないね、さようなら ノシ
0435名前は開発中のものです。2008/08/11(月) 16:33:03ID:phiaAekx
別にいいんじゃない。
どの言語でも作れるだろうし。
0436名前は開発中のものです。2008/08/11(月) 17:11:00ID:wLikp14p
マップ表示とかスクロールあたりはおそらく一番楽しい時期
やったことがダイレクトに見た目に反映されるからね
0437名前は開発中のものです。2008/08/11(月) 20:04:17ID:ofDQ//Pi
>>436
うーん。でも、だいたいのはダイレクトに反映されないか?
呪文の実装にしても、イベント周りの実相にしても。


0438名前は開発中のものです。2008/08/11(月) 23:08:55ID:MRq2YTh1
>>433
まあ、いいんじゃない
スレに433ひとりだけだったら突っ込むところだかw
0439はかせ2008/08/11(月) 23:44:04ID:mLo398O/
攻撃力倍化の呪文を実装しました。
>やっぱりバイキルト用のフラグを作りました。

ループの継ぎ目の時にキャラクタがうまく表示されないバグを修正しました。
>地下室を作ってる時に発覚したので修正しました。

今日はあまり進んでませんが、とりあえずUpします。

constですが、今日試してみたらなぜかすんなりできちゃいました。
なんで、あんなに試行錯誤したのにダメだったんだろう…?
全部の定数を一気に適切なクラスに以降させるのはアレなので、徐々にやっていきたいと思います。

>>431-432
解説ありがとうございます。
でもBは少し違うと思います。

【Div -1】以外が出てきたらが出てきたら【Div -1】が出てくるまでスキップ

ですね。
じゃないとDiv 1を実行してたのにいつの間にかDiv 2の内容に入っちゃいます。
クラスの役割はそのとおりです。結構苦労して組んだところだったので話題になってうれしかったり。

>>433
せっかくだから画像だけじゃなくてexeうpしてくれれば良いのに、って思ったのは僕だけでしょうか?
がんばってる人がいると思うと僕もがんばろうって思います。
0440名前は開発中のものです。2008/08/11(月) 23:49:31ID:eWlEXfVn
マップ表示やスクロールが楽しすぎてマップエディタを作り始めるあたりが最高潮だよな
で、マップエディタ連携確認して満足してしまうorz
04414022008/08/12(火) 01:40:45ID:TlhAAscM
しつこくネタSSうp。
ttp://sakuratan.ddo.jp/uploader/source/date89544.zip

ついにネタが切れた。
あとは、温かく見守ったり見守らなかったりするよ…

P.S.ゴメスを扱いたかったorz
さて、ksgを作る作業に戻るか。
c言語だけどwww
0442名前は開発中のものです。2008/08/12(火) 06:10:17ID:scU+b90q
>>439
Div全然ワカンネーお!
解説ページまだーーーーーーーーーーーーー
0443名前は開発中のものです。2008/08/12(火) 08:09:10ID:x5PTY6AN
>>439 >>442
間違ってる上にDivの説明分かりにくくてごめんorz
0444名前は開発中のものです。2008/08/12(火) 12:12:24ID:g8zRwFNG
>>442
何がわからないのかがよくわからない。
IF expr THEN stmt1 ELSE stmt2 ENDIF
みたいなものを、このゲームでは以下のように書くわけだよな。
IF expr DIV1 stmt1 DIV2 stmt2 DIV-1
DIVは意味的にはGOTOラベル。DIV2がELSEでDIV-1はENDIF。

1)IF exprを評価したときに、分岐先のラベルをセットする。
2)非ゼロのラベルがセットされていれば、そのラベルまでGOTO。
 ジャンプ先が-1でなければ、ラベルを0に書き換えてブロック処理中である
 ことを示す。-1なら、ENDIFなので分岐終了。
3)ラベルが0の間、ブロックの中を普通に一文ずつ処理する
4)次のラベルに出会ったら、ラベルを-1に書き換える。状態2)へ飛ぶ。

状態3)で別のIFが来ることもあって、これが入れ子だ。
それに対応するために、1)では分岐先ラベルをスタックにプッシュして、
分岐が終わったらスタックからポップするようにしている。
スタックを利用することで、入れ子の一番内側(現在処理中のIF)に関する
情報が、常にスタックトップに積まれていることになるので、常に
スタックトップを見ていればいい。
外側のIFの情報は、スタックトップより下に保存されており、内側のIFの
処理が終わってスタックからポップされたら、自然にトップに戻る、という
仕組みだ。

スタックという言葉を聞いたことが無いのなら、一番基本的で有用な
抽象データ型なので、ぐぐれ。
0445名前は開発中のものです。2008/08/12(火) 17:45:48ID:GuZCLZSJ
画像は使ったらだめなの?
0446はかせ2008/08/13(水) 01:40:42ID:Rk75Ed6t
解説ページを作りました。
全力で解説したつもりですが、長文で読むのがいやになるかも。
理解「不」能 だと感じた方はどこが理解不能なのかを教えてくれれば、訂正が加わるかもしれません。
すでに理解済みの方で ここの表現を変えたほうが伝わるんじゃないか?とかあったら教えてください。

>>402 さん
いろいろありがとうございました。
自分の作ったものを使っていろいろ遊んでもらうのがこんなにうれしいものだとは思わなかったです。
いろんな意味でありがとうございました。
そちらも作業もがんばってください。
0447名前は開発中のものです。2008/08/13(水) 07:42:13ID:v6VnVmua
俺だったらアホの為に時間と労力を費やすことはしないだろうな
お人好しというかなんというか
0448名前は開発中のものです。2008/08/13(水) 07:58:21ID:0VYg1NiV
>>447の作るゲームを想像してみました。

・操作説明は無い
・勝手にDLLをシステムフォルダにインスコ、アンインストーラーなどあるはずが無い
・勝手にフルスクリーン起動、終了後デスクトップの解像度はもちろんそのまま
0449名前は開発中のものです。2008/08/13(水) 08:07:28ID:v6VnVmua
アホといったのは悪かった
はかせの余裕というかすごさに少し嫉妬してたのかもな
0450名前は開発中のものです。2008/08/13(水) 08:10:16ID:wP8/G76v
理解「可」能・・・理解可能・・・!
0451名前は開発中のものです。2008/08/13(水) 08:42:34ID:1/MHNyFQ
真の実力者は人格者でもある
0452名前は開発中のものです。2008/08/13(水) 09:53:26ID:wp22Rkaa
人に説明することで自分の頭の中を整理できる効果ってあるよな
■ このスレッドは過去ログ倉庫に格納されています