初心者専用スレ「シミュレーションゲーム」を作らない?at GAMEDEV
初心者専用スレ「シミュレーションゲーム」を作らない? - 暇つぶし2ch355:SYUMIlation ◆OTL.s/PuLc
04/06/07 17:29 db3GgSKB
>>348
言い方が悪かったでしょうか。
例えば、人間なら全く同じ能力をもったユニットというのが存在しないわけです。
     すばやさ
戦士A: 52
戦士B: 63
盗賊C: 102
盗賊D: 87
これなら、ウェイトターンの順番はC→D→B→Aですよね。
ところが、機械である兵器をユニットとしてゲームを作ると、製品である以上個性というものは存在せず、
同じタイプの兵器なら能力も同じになってしまいます。
主力戦車A:70
主力戦車B:70
軽戦車C: 100
軽戦車D: 100
こういう場合、ウェイトターンがAとB、CとDの間でどちらでもいいことになってしまいます。
これが問題なんですよね……
ともあれ、例示して頂いたユニット類はヒントになりました。
CPU負荷が高いのはこれから検討します。
まあ、ライブラリを使用したやる気のないゲームなので、システム面については寛容に見て頂きたく。


356:SYUMIlation ◆OTL.s/PuLc
04/06/07 20:22 db3GgSKB
>>349
空のユニットですが、ヘリは入れようと思います。
ただ、普通の航空機に関してはどうかと。
地上車両と同じくらい小回りの利く、ごく小さな戦闘区域をちょこまかと動く戦闘機や攻撃機というのは、どうもしっくりこないです。
大戦略のような上から見た、もっと縮尺の大きいゲームなら別として。
航空支援コマンドを指揮車両(味方ボス)の特殊スキルに入れるといったことなら良いかもしれません。
まあ、ただの練習ですし、あまり期待しないで下さい。
>>353
>>354
誰かの作品をまったく真似していない、個性的なゲームを私みたいな素人が作れたのなら、
世の中のゲーム屋さんはみんな困るでしょう。たぶん。
まあ、別段意識して個性的にしようとも、徹底的に真似しようとも思っていません。
本当にやる気なく進行するだけです。ダルいし。

357:名前は開発中のものです。
04/06/07 21:44 gZs5vtDg
>>355
TOにそんなに詳しくないので、PSばんでなくSFCばんの一定の値(WT?)から
素早さ分引いていって0以下になり、その中でも1番小さくなったキャラから
行動するシステムと仮定してカキコします。

下の場合はそれで確かに困るね。キャラに番号を付けて若い方から、
LVが高い方から、とか、別の数値を利用する方法しかないのかな。

逆に質問で、上の場合でも何ターンも行動してきた時、
複数のキャラが0以下の同値になる事もあると思うけど、
その時は素早さの高いキャラからにすればいいのかな?

358:名前は開発中のものです。
04/06/07 21:54 RILHGrPf
>>356
やる気がないんだったらやめればいいのに

359:名前は開発中のものです。
04/06/08 00:41 gZSFIcWZ
>>355
要するにWTがまったく同じタイミングで0になった場合の行動順位の問題だな。

一般論からすると、「ユーザーが納得するできるようにする」という観点から
ユーザーから不透明な数値(内部IDとか)や意味を見出せない数値(ユニットの登録順)を使うのはおすすめしない。
WTの戦略性を重視するなら確率はもってのほか。

システム的に自然なのは
WTが同じになる場合は前の行動が早かったほうを優先する、という方法だな。
これは一見余分な記憶域がいるように見えるが、
前の行動が終了した時点で次の行動時刻が確定するならば
実装にちょっとした制約を加えるだけでこれを満たせるはず。
ただし、この方法では初回だけは同じ問題が残る。

360:名前は開発中のものです。
04/06/08 01:51 7ED/Ityq
うーん 俺は戦闘中にはWTは細かく調整できないから(TOの場合)
そんなにシビアになる必要はないと思う
(調整するとしても開戦時の装備、クラスによる調整ぐらいだと思う)

プレイヤーにとって大事なのは(大体の)順番ぐらいじゃないのか

361:名前は開発中のものです。
04/06/08 08:37 0nXmXMD4
そこで搭乗者の登場ですよ。
機械を動かす人の能力で差別化すればいいんですよ。

362:名前は開発中のものです。
04/06/08 22:57 8eUE2SlK
大量生産大量破壊の戦術級シミュレーションで搭乗者を
持ってきたところで、一般兵・上等兵・エリート兵程度の区別しか
つけられんしねぇ。
搭乗者ごとに特殊能力つけるとか別ものになるしねぇ。

単純にプレイヤーorCPU優先とかじゃだめなの?
「n番目にこいつが動くから、こいつはこうしといて…」
が裏切られなけりゃいいんでしょ?

363:名前は開発中のものです。
04/06/09 00:19 nfK9/6zR
ぶっちゃけWTのシステムが前提とするユニットの個性と
画一性を前提とした兵器が合わないっつーデザイン面の齟齬なんだけどね。
例外的なケースならそれこそそう気にされないという前提の下適当に決められるわけで。
そうでない前提なら同ターン内で行動順を好きなように決められるようにした方がいい。

>>362
同じ側でWTがかぶることの方のことは考えてないの? 今回のケースではむしろその方が多いと思うんだが。

364:名前は開発中のものです。
04/06/09 01:34 VxM+WCA3
>大量生産大量破壊の戦術級シミュレーションで搭乗者を
>持ってきたところで、一般兵・上等兵・エリート兵程度の区別しか
>つけられんしねぇ。
そうなのか?俺は出来ると思うのだが極端なことを言えばスパロボみたいに
(まあスパロボは多少特殊だが)

そもそも戦略級・戦術級ってどう区別されるだろう
まあ規模の大小もあるが俺は例え100VS100でも1を救えるか救えない(困難か)
といった認識なのだが
他の人はどう考えてるのかな?


365:SYUMIlation ◆OTL.s/PuLc
04/06/09 01:48 AzKjh8zj
現在まったりとメニュー表示を取り付け中です。
これができれば、いちおう味方の行動に関する事項は、一区切りがつきますね。

>>357
ユニットごとにほぼ絶対にすばやさの格差が存在するようなゲームなら、
すばやさが時間にからむ事柄に関する、万能の比較材料として利用できるでしょうから、やっぱりそういうゲームで
もし同時行動になってしまったら、すばやさの早いほうから移動するのでしょうねえ、おそらく。
>>358
飽きっぽいですから、そのうちやめます。
今は止めるのもダルい状態なので。
>>359
やっぱり、戦術ゲームというのは基本的に可視的かつ静的な制限状況(敵が多い、能力が強い、AIが強いetc)が唯一の障壁で、
味方の操作は完全にプレイヤーの手中にあるというゲームですから(これに対しアクションやら格闘やらシューティングでは、プレイヤー自身は時間という制限を操作できない)、
プレイヤーには如何ともしがたいようなパラメータをWTのようなけっこう戦略性に関わる部分で使用するのはよくないでしょうね。
まあ、攻撃での成功率・ダメージ値には乱数が使われているのですが……
「WTが同じになる場合は前の行動が早かったほうを優先する」のは良いアイデアですね。
頭悪いので「記憶域を使う事無くちょっとした制限でできる」という話の詳細がちょっと今思いつきませんが、方法はありそうですね。

366:SYUMIlation ◆OTL.s/PuLc
04/06/09 01:57 AzKjh8zj
>>360
味方と敵で同じすばやさのユニットが骨肉の争いをする場合は、けっこう重要になってくると思うのですが。
両者瀕死の場合など、どちらが先に攻撃をするかで生死が決定するわけですし。
>>361
搭乗者を登場させるという案は作る前からちょっぴり考えていたのですが、
戦車って一人で操縦するものじゃないし、二重のユニット管理が必要になりそうなので。
>>362
最終的にダル過ぎたらプレイヤー優先にします('A`)
>>363
兵器レベルの戦術ゲーでWTって聞いたことないですよねえ。
見られる程度のグラフィックがありゃあ、人間のほうが良かったのですが、攻撃アニメーションとかまで手に入るとは思いませんから。
>>364
ロボットがキャラのQVでも良かったのですけど。FMみたいな感じで。
三国志のマップ部分は戦略で、戦争部分は戦術とかいった感じなのでしょうかね。よくわかりません。
シヴィライゼーションの軍事ユニット同士の戦いは戦術なんでしょうか。

さて、WT制を導入するなら、TOにもFFTにもFFTAにもなかった機能をひとつ思いついているので搭載するかもしれません。
今日は疲れたのでもう寝ますが、次の書き込みあたりで書くかも……
いや、たいした機能じゃないですよ? 妄言程度だとでも思って下さい。

CPU使用率が100%になる原因はいまだに不明です……

367:名前は開発中のものです。
04/06/09 02:34 nfK9/6zR
寝る前に。

>頭悪いので「記憶域を使う事無くちょっとした制限でできる」という話の詳細がちょっと今思いつきませんが、方法はありそうですね。
君の実装方法がわからんのであんな書き方しかしてなかったけど。

次の行動時刻で順位付けしてユニットをキューに登録する形だったとし、
キューへの登録がそのユニットの行動終了時に行われ、以後変更されないという仮定する。
そこで、キューへの登録時に自分と同じ行動時刻のユニットがいないかチェックして
その一番後ろに登録する。(C++のSTL風にいうと upper_bound と呼ばれる場所)
この場合「自分より前に登録している⇔自分より前に行動している」が成り立つので、
前の行動時刻を覚えておく必要なく要求を満たせる、というわけ。

行動の入力から実際の行動までズレがあったり(FFT)
途中でWTの減少量が速くなる魔法みたいなものがあったりするなら
素直に前の行動時刻か順序(これで必要十分)を覚えておいたほうがいいかもだけどね。
参加ユニット数はせいぜい数十だろうから。

368:名前は開発中のものです。
04/06/09 13:17 SNianBfD
自分が考えているシステム。
まずWTから1ずつ引いていって0になったキャラから行動する方式。
速さが1,2,4,8,16,32の時、WTが32,16,8,4,2,1となる。
速さがその数値に届かないと損するので、その分を回避率に回す。

こうする事で、WTが割り切れる形になるので、
自分が何回行動すると、相手が何回行動してくるかわかりやすい。
風来のシレン2で、2倍速と3倍速のキャラが戦うと、
1:2よりは分かりにくいでしょ。

当然、同時にWTが0になるキャラが続出するので、
番号(配列のインデックスでも可)を付けて、若い方から行動する。
WT、番号は、あるキーを押す事でマップ上の全キャラの上に表示されるので、
いちいち一体一体調べなくてもいい。

369:名前は開発中のものです。
04/06/09 14:28 T3b5enRx
それだと、毎回毎回、行動順は同じになるよね?
なんらかのランダム要素を入れてはどうでしょう。

370:368
04/06/09 15:24 SNianBfD
>>369
その同じになるのが狙い。ランダムの要素もそこには入れない。
ダメージの部分にも入れない。命中率も無くすかも。

0番:HP20,WT16,ATC10,HIT100 1番:HP20,WT8,ATC5,HIT100
ならRPGなら0番が確実に勝つけど、SRPGは1対1では無いし、位置関係もあるので、
味方が居るほうに逃げながら、支援を受けるとかできる。

戦略性重視で、SLG寄り、もっと行くと将棋みたいなSRPG。
みんなの好みとは違うかもしれないけど。

371:名前は開発中のものです。
04/06/09 16:18 T3b5enRx
狙ってやってるんなら文句ないです。
がんばって作成して下さい。

372:名前は開発中のものです。
04/06/09 23:38 nfK9/6zR
>>368
どっちかっていうとFEスタイルだな(あれは命中とクリティカルと成長に乱数があるが)。
が、それはすばやさごとに
各ターン何回行動できるかないし何ターンごとに行動できるかが決まるのと変わらなくない?
数値を変動させることをもっと利用しないとWTの意味がないと思う。
TOは移動・行動によってWT残量を変えるほか補助魔法を持ち込んだりしているけど
ランダムではないでしょ?

そろそろスレ違いかな

373:名前は開発中のものです。
04/06/10 02:10 j7BuGEd8
スレの趣旨ってどっちなんだ?
・新たにスレに来た初心者がゲームを作れるようになる
・皆で仕様決めて1つ完成させる

374:名前は開発中のものです。
04/06/10 02:13 UBNP6qmk
>・新たにスレに来た初心者がゲームを作れるようになる

こっち

375:名前は開発中のものです。
04/06/10 04:41 Z+jsHcQa
・「僕の考えたファイヤーエンブレム」を語る
妄想スレですよ

376:368
04/06/10 15:02 0afrtsBp
かなりへぼく、ソースも汚いですが、>>368の感じが少しでも伝わるかな。
一回の行動権で移動、攻撃の両方は出来ない。移動も一歩しか出来ない。
移動力(MWTの小ささ)は移動できる歩数でなく、移動するターンが早くなる能力。
風来のシレンに近いのかな。よかったら見てみてください。
URLリンク(gamdev.org)

>>372
うーむ、そうですね。これで最後です。ここにでも行きます。
スレリンク(gamerpg板)

>数値を変動させることをもっと利用しないとWTの意味がない
今回は実装できなかったけど、移動する地形でWTが増減する。
歩兵は森、低い山は2倍、高い山、海は4倍、飛兵は影響を受けずにすむ。
攻撃の方でも、剣を使うと半分、レイピアは1/4、弓、魔法は2倍。
どちらの場合でも1/4,1/2,1,2,4と切りのいい数値にして分かりやすくする。

>ランダムではないでしょ?
逆に無くしてしまうと、まさに将棋みたいに、実力がそのまま
勝敗になってしまうから、ランダム要素はあるべきだと思う。
ただ、前の部分で書いたような、戦略性の部分が分かりくい状態で、
ランダム要素が入ってしまうと、分かりにくくなってしまうと思う。

377:名前は開発中のものです。
04/06/11 12:02 IEJZXzrg
>>376
最低限の物だけ詰め込んだという感じですね。昔のローグみたいです。言いたい事はなんとなく伝わりました。
FEやTOよりはトルネコに近い感じですね。絵が表示されたり、敵がIAで動くようになると面白くなるでしょう。
でも、やはりこういう濃い話はスレ違い板違いですので、ゲームプレイ系の板にいきば、詳しい意見を聞けるかも知れません。

378:368
04/06/11 21:46 ddGit028
>>377
どうもです。
絵は最初は表示しようと思ったけど、めんどくさくなってしまって。
言われたようにゲームプレイ系の方に行って来ます。
荒らしてすいません。

379:名前は開発中のものです。
04/06/13 13:35 NtcWYR4W
Final Fantasy 10みたいな行動順の決め方を応用してみたらどうよ?


380:名前は開発中のものです。
04/06/19 16:32 dDnUwToG
保守。

381:名前は開発中のものです。
04/06/25 16:38 AxehCVzk
保守。

382:名前は開発中のものです。
04/06/25 17:23 mouIBmdy
すっかり寂れてしまいましたな。

383:名前は開発中のものです。
04/06/27 21:22 tK67bg2U
じゃぁ次は漏れが鬼

384:名前は開発中のものです。
04/07/01 23:21 ou6ObT5B
おいおい、寂れすぎだろ。

385:名前は開発中のものです。
04/07/01 23:41 ZrIV0kv4
いまさらなにを
この板自体過疎板だ

386:名前は開発中のものです。
04/07/02 00:04 mGc4qyci
途中まで作ってた人たちはどうしたんだろうか

387:名前は開発中のものです。
04/07/03 00:15 xtgfWt3N
レベル17,18キタ━━━(゚∀゚)━━━ !!

>>382-386
このスレが廃れた理由は「SLG」や「シミュレーション」で検索にひっかからないからだな

388:名前は開発中のものです。
04/07/03 01:02 pFOAVOn/
間違って覚えているヤシが、“シュミ”レーションで検索して
引っかからないのが理由だったら笑うな

389:名前は開発中のものです。
04/07/03 01:21 XlIkDbZe
楽しい人ハケーン( ^^)y― i_(^^ ) まぁ、いっぷくど~ぞ

390:名前は開発中のものです。
04/07/03 01:33 xtgfWt3N
廃れるもなにも避難所滅茶苦茶伸びてるじゃん

391:名前は開発中のものです。
04/07/03 02:17 w2ty8OZL
これを日本および海外で広めるとアトピーが治るかもしれない。
オラウータンなどの
サルは自分と似ていない自分の子供を(子殺しする)殺す。
(立花隆『サル学の現在』平凡社より)

URLリンク(www.google.co.jp)


392:名前は開発中のものです。
04/07/03 07:20 qyPs8B5t
避難所どこだよ?

393:名前は開発中のものです。
04/07/03 21:00 QlamLHhp
>>392
URLリンク(bbs.gamdev.org)

394:名前は開発中のものです。
04/07/05 00:04 kc0/J2bA
このスレはすっかり寂れてしまいましたな。

395:名前は開発中のものです。
04/07/10 21:32 0VkUnHLJ
ほしゅ

396:名前は開発中のものです。
04/07/19 20:02 fXYnGL9L
保守

397:名前は開発中のものです。
04/07/29 21:42 9UMFq9Oe


398:名前は開発中のものです。
04/07/30 02:13 A0tDow7H


399:名前は開発中のものです。
04/07/31 19:47 w/Bnz+yr
このスレは恋愛シミュレーションはありなの?

400:名前は開発中のものです。
04/08/03 22:50 mVMKFvtw
ゲーム製作どころかプログラム初心者な俺がSLG作りますね

401:名前は開発中のものです。
04/08/03 22:57 5SNBat1H
がんがれsage

402:名前は開発中のものです。
04/08/03 23:16 g+sphUJt
>>400
使用言語はなに?
SLGとは言っても千差万別だが、あえて既存のゲームから近いのを挙げるとどれ?

403:400
04/08/03 23:41 mVMKFvtw
>>402
本当はシムアース作りたいんだけど、(つかPLAYしたい)どう考えても無理なので
簡単な奴で。なにせド素人だからな。やはりスパロボとかFE系?

404:400
04/08/03 23:42 mVMKFvtw
過去ログ読んだらとりあえず必死にマス作ってみます。

405:400
04/08/03 23:46 mVMKFvtw
>>402
忘れてたけど言語はC#。当然未経験。

406:名前は開発中のものです。
04/08/04 00:03 BD2MTosS
>>405
俺がわかる範囲でならアドバイスします。がんがれ。

407:400
04/08/04 00:42 bbNRncWZ
がんがります。
マップチップ1枚表示することはできた。かなり前途多難な予感・・・
明日にしよう。

408:名前は開発中のものです。
04/08/04 13:21 FoO7vg42
も、漏れも参加というか作ってみたいです
98時代から宇宙ものシュミレーションゲームが好きで、
特にシュヴァルツシルド、フロンティアウニヴァース、あと名前忘れた二つが好きでした。
最近では、あまりゲームしていないのでちょっと古いですが、アウバードフォースとか好きです。
VC++で頑張ります

409:名前は開発中のものです。
04/08/04 13:43 8e17bOFv
ウニヴァースってなんかかわいい

410:名前は開発中のものです。
04/08/04 18:00 Ur6cNXHq
>408
ググっても全然ヒットしないな…

いろんな方が製作に取り掛かってますな
夏効果?
ここのスレはSRPGスレみたいだから
アイディアとかも出していこうze

んで俺からひとつ
プレイヤー 青系
敵 赤系
文句は言わせないぞw

411:408
04/08/04 18:30 kmliOd1x
も、漏れは社会人で、仕事が暇になっちまったんだよよよ
2DなのにDirectX使うのは基本的にアウトですか?

412:名前は開発中のものです。
04/08/04 19:20 8e17bOFv
>>411
問題なし。ライブラリでもなんでも使って作るがよし。
つーかシュヴァルツシル「ト」だろ。そりゃググってもでてこねーよ。

413:400
04/08/04 19:36 bbNRncWZ
>>408
フロンティアユニバース好きでした。
宗教で統一できたりするのが新鮮だったな

おれはまだマップ表示で悩んでますorz
PictureBox並べればできるんだが、なんか違うよね

414:名前は開発中のものです。
04/08/06 08:58 Xyc5RnYh
一日がかりで色々試したけど画面に線を引くのすらままならない。。。うぅ。。。

415:名前は開発中のものです。
04/08/06 13:06 pZrU7yuM
>414
ウィンドウは作れたのか?
だったらそれに3行くらい足せば線ぐらい引けると思うが(CPP

416:414
04/08/06 15:54 Xyc5RnYh
DirectXのスケルトンからやってるんで
ウィドウやキーイベントうんぬんは生成されてるんです;
にしてもサンプルプログラムくらいつけてくれ!>ゲイツ

417:400
04/08/06 21:49 jLZb3Jae
フォームにマップ出すのにどういう方法がいいのかわからなくて、
いろんなソース見てみたけどよくわからず、
しょうがないので本かって勉強してたら、さらにほかのやり方も出てきてもう疲れた。

418:名前は開発中のものです。
04/08/06 22:51 9s+hXthE
>>414
SDKにはサンプルが付いているはずだが・・・。

>>400
言語はC#なのはいいとして、DirectXは使ってる?

419:400
04/08/06 23:13 jLZb3Jae
>>418
いちおうSDK入れてはいるんですけど、コードみても意味不明です、ええ。
いまんとこGDI+とやらでPanelにPictureBoxぶちこんでなんとかならんかと思ってるんですが。
そんなことするよりD3Dでスプライトのほうがやりやすいんですかね?

420:名前は開発中のものです。
04/08/06 23:26 atre0FHU
>>418
ID3DXLineインターフェースの使い方はサンプルないんすよ。。。ググっても理解不能;
98時代の提督の決断みたいな移動方法にしようかと思って
偵察機飛ばしたり探知機で艦隊発見したときのあのスリルが好きでした
とりあえずライン引こう、と簡単に考えててまさかいきなり詰まるとは

421:名前は開発中のものです。
04/08/06 23:33 9s+hXthE
>>419
PictureBoxでやるのはちょっと無茶だと思う。
GDI+だったらOnPaint時にBitmapをフォームに表示させればいける。

ただ、それなりにリアルタイム性を必要とするアクションゲームならば
DirectXを使ったほうが後のことを考えてもいいかな。

422:名前は開発中のものです。
04/08/06 23:40 9s+hXthE
>>420
ググったということは、一番上に出てくる↓のページは見たよね?
URLリンク(masafumi-t.cool.ne.jp)
ここは参考にならなかった?

423:400
04/08/06 23:47 jLZb3Jae
>>421
確かに後々考えればDirectXになるんでしょうね。
言語の本読みながらちょっとづつ触ってみます。

424:名前は開発中のものです。
04/08/06 23:55 9s+hXthE
>>423
最初からDirectXは難しいから、
まずはGDI+ベースの小さめのゲームを作ってみて
ゲームの作り方を一通り学んでみるという手もあるよ。
まあ今はDirectXを扱う便利なライブラリもあるから、
それを使ってみるのもあり。(ただし多くはC++用だったりするけど・・・)

425:400
04/08/07 00:10 cmSB+hpD
>>424
課題スレあたり参考にしつつ、GDIでできそうな事ぼちぼちやってみます。

C#+Managed DirectXの資料ってあんまないですね。。。

426:名前は開発中のものです。
04/08/07 00:22 Gpu+dk/2
>>425
>C#+Managed DirectX
この組み合わせの資料はまだまだ少ないので、
この手のプログラミングを扱ってるサイトやMSDN Library、
サンプルコードなどをフル活用する必要がありますね・・・。
正直まだ敷居は高いと思いますが、がんばってくださいな。

427:400
04/08/08 13:27 uD49Igeh
Delphiに逃げて遊んでたらLevel1デキターヽ(´ー`)ノ
このまま次いってみます。

428:400
04/08/09 02:38 pq0CfnXo
Level2できたが、キャラが透過しない。
ふて寝る
URLリンク(gamdev.org)

429:名前は開発中のものです。
04/08/09 03:27 0BmmZXpQ
>>428
乙。

透過処理の方法はいろいろあるけど、TImageListを使うのが一番簡単。
TImageListを実際に使っているサンプルはこの辺にあるから試してみるとよかろう
URLリンク(www.interq.or.jp)

430:400
04/08/09 20:59 pq0CfnXo
>>429
アドバイスサンクス。
実はそこのHPをかなり参考にしてたんですが、手抜きでImage使っちゃいました。
本格的にアニメさせるならTImageList必須のようですね。

次Level3いこうと思ったんですが、移動制限ない状態で移動範囲出すのもなんなんで、
3+4でやってみるつもりです。
そろそろユニットやマップをクラス化したほうがよさげなんで、もうちょっと突っ込んで言語の
勉強してからになりそう。

うpしたらHSPになってたり(゚∀゚)

431:名前は開発中のものです。
04/08/10 14:37 Uxx9Bobu
HSPで作りたいんですがマスとかがよく分からないのですが(;´Д`)
ラベル使うとか?

432:名前は開発中のものです。
04/08/10 18:20 RjSFrWVN
>>431
他の言語の経験があるのかは知らないが、
HSPでも基本的には他の言語と同じ。
RPGとか作った事がないなら、最初の難関はマップ表示。

一番簡単なのは、マップ用の二次元配列(dimを利用)を用意すること。
その中身に対応したマップチップを繰り返し(repeat)を利用して、
バッファー(buffer)からメイン画面にコピー(gcopy)。

後は検索で何とかすれ。

433:400
04/08/10 18:43 CyL90XWa
>>431
いきなり全体像はイメージしづらいと思うんで、とりあえずできそうな事から書いていくのも
いいかもです。

漏れの場合ですが、

マップチップ1枚表示してみる

何枚か並べて表示

制御文や配列で効率化できそうなトコ・・・

て感じでふくらませていきましたよ。

434:名前は開発中のものです。
04/08/10 21:07 68GioRWu
HSPの本を買え。サンプルついてるよ。

435:名前は開発中のものです。
04/08/11 01:06 gWuMe3Zk
ググれ。ソースまるごとでてくるよ。

436:名前は開発中のものです。
04/08/15 04:26 Ju0jeyEW
VC++で作ってるけど、もうLevel1から難しい。
50*50のビットマップ用意してそれを敷き詰める感じなんだけど、
再描画のたびに処理が重い。

437:名前は開発中のものです。
04/08/15 12:13 kdzDPo/f
>>436
うら(メモリ)ビットマップに敷き詰めたのを描いておいて、
WM_PAINT時にうらビットマップをBitbltで表示すればいい。
キャラが移動した時などは、うらビットマップの方を更新する。

438:名前は開発中のものです。
04/08/15 12:27 PuiE5qNp
>>436
そんな時はSGL2Dですよ!
URLリンク(home.att.ne.jp)

439:400
04/08/16 11:19 5gZKipIW
Level4ですが再帰処理のところがよくわからんや。
いつおう動くけどあやしいです。

URLリンク(gamdev.org)


440:名前は開発中のものです。
04/08/16 18:39 s4WGnfv1
今までプログラムの経験は皆無なのですが、SLGゲームを作りたいと思っています。
何か、良い参考書はありませんか?
上で、皆無と書きましたが、VBとCを少しだけ囓ったことがあります(でも、ほとんど身に付いていません)。
そふとは、学校で強制購入だった「MS-Visual Studio .NET 」があります。
御指南お願いします。

441:400
04/08/16 19:03 5gZKipIW
>>440
>>1

442:名前は開発中のものです。
04/08/16 22:05 6p27N85a
HSP暦2日の俺も参加させて頂くぞ

443:436
04/08/16 22:05 vJdfD4C8
>>437,438
ありがとう。
ダブルバッファリング?ってやつが分かった。
処理早いー。

level1から大分苦戦したし、level4とか見た感じ分からんけどがんばるわ。

444:名前は開発中のものです。
04/08/16 22:05 FI8a2ktD
ちょーガンガレ

445:400
04/08/16 22:08 5gZKipIW
腸ガンガレ

446:名前は開発中のものです。
04/08/16 22:34 LGk5HDjS
>>439
TStringListをCreateした後は使い終わったらFreeで開放してやってください、、、

447:名前は開発中のものです。
04/08/16 23:51 FI8a2ktD
>>440
URLリンク(www.amazon.co.jp)

448:442
04/08/17 11:15 Hi4etehw
Level2までできました。
HSPむずかしいぜイヤッホウ。
URLリンク(gamdev.org)

449:400
04/08/17 12:11 NlvADZec
>>446
クラスって破棄しないといけないんだな・・・サンクス

450:436
04/08/20 04:37 xkf3Yvmy
やっとlevel3,4まで出来たと思ったらたまに画面がバグる…なんでだろ?
VC難しい。C++も難しい。
URLリンク(gamdev.org)

451:名前は開発中のものです。
04/08/20 14:44 tViG62U5
>450
実行できない
コンパイルもできない orz

452:名前は開発中のものです。
04/08/20 22:14 di9+RvF3
>>450
実行できませんよー。

皆さんマスの大きさどれぐらいにしてますか?
私は32*32にしたんですけど大きすぎたっぽくて・・・。

453:Hatene
04/08/21 10:01 ETgItT96
HSPの本の改造でレベル9ぐらい
目標はギレンの野望(夢はでっかく)
戦闘シーンが難しい
URLリンク(gamdev.org)

454:Hatene
04/08/21 16:49 vn48DpSB
改良しました。レベル14くらいです
だれかコメントおくれ

455:400
04/08/21 17:36 YW8DFbeT
>>452
32*32で大きすぎるとは思わないけど。
標準サイズでしょう。

456:名前は開発中のものです。
04/08/21 18:28 xrHjJEVe
>>454
よくわからん
HSPだから仕方ないけどクリックレスポンスが悪いのが気になる。

ところで敵は倒せるように出来ているのか?

> Level14 ユニット管理(3)
> 攻撃によりヒットポイントをへらし、倒せる(倒される)ようにする

457:Hatene
04/08/21 21:38 8g9R8+xN
>>456
ありがとうございます。
敵のHPが15ー30で攻撃力が3に設定されていて、5回以上の攻撃で倒せる用になっていますが
まだゲームとしては成り立っていません。それと、町に入ると占領したことになる予定です。

>>クリックレスポンスが悪いのが気になる。
レスポンス早すぎるかもしれません。改善します。

それと、64*64のマップチップあるところ誰か知りませんか。


458:名前は開発中のものです。
04/08/22 23:33 FjMqiTTJ
>>451,452
orz
作り直します…


459:名前は開発中のものです。
04/08/23 04:03 IvuOZdWM
URLリンク(gamdev.org)

DirectX9が必要
効率悪すぎな悪寒がするんだが、
うちの環境以外で動くか試してくれんか?

460:名前は開発中のものです。
04/08/23 17:49 8LxeEOpA
動いた。
移動可能距離がどうやって定まってるのか分からん
逝ってよしビームが出た

461:名前は開発中のものです。
04/08/23 17:49 8LxeEOpA
ぁぁ、あと他の窓にうつったら終了した。

462:名前は開発中のものです。
04/08/23 19:00 Xua3I1Ir
>>459
DirectX9.0c、Ti4200で動作確認

463:名前は開発中のものです。
04/08/23 23:14 IvuOZdWM
>>460,461
ありがとう。
とりあえず動くみたいね。
でも大量にバグが見つかったんで手直し中。
まともな戦闘シーンも作らないといかんし大変だ

464:462
04/08/24 00:02 s88LEut3
>>463
オレは無視かぁああああああ!!

465:名前は開発中のものです。
04/08/24 00:27 oHyIrbVd
>>462
すまん、間違えた。
>>460,462ってアンカーするつもりだったんだけど

466:名前は開発中のものです。
04/08/24 00:51 s88LEut3
>>465
訂正してくれるなんていい人だぁああああ
漏れももうすぐうぷできそうなので今後ともヨロシク

467:名前は開発中のものです。
04/08/29 17:36 16ZEgY7f
現在はカード対戦型のSLGを創ってるんですが、次の段階として
ヘックスを利用したSLGを創りたい(というか勉強したいと)と思って
います。
ネットや本をいろいろ調べてはいるんですが、詳細な記述があるも
のがなかなか見つかりません。

もし情報持ってる方いらっしゃれば、何卒よろしくお願い致します。

468:名前は開発中のものです。
04/08/30 07:48 qoUZQLi9
>>467
類似スレはいろいろあるが、このあたりで聞いてみたら?
ただ、マルチにならんように、配慮は必要です。

【初心者歓迎】スレを立てる前にココで質問を【Part5】
スレリンク(gamedev板)l50

HSPで完全オリのSLGを作るスレ
スレリンク(gamedev板)l50

469:467
04/08/30 08:46 9tIoPN56
>>468
HSPは流石に情報交換がいろいろできて良いですね。
(自分はBuilder使ってます。)
とはいっても、根本的な概念は変わらないだろうから、教え
ていただいたところや、他に役にたちそうなスレ見つけたの
で、そこもチェックしつつ、自分でいろいろ試して少しずつ点
と点をつないで行きたいと思います。
もちろんマルチはしません。情報ありがとうございました。

470:名前は開発中のものです。
04/09/08 14:12 Zy8cIr6y
保守

471:名前は開発中のものです。
04/09/09 16:36 v2CO9mqa
level1です
とりあえず画面に枠を書いただけですけど
URLリンク(gamdev.org)

実行するにはTruevision3Dが必要
URLリンク(www.truevision3d.com)
コンパイルするならFull版、実行するだけならLitet版でいいです

472:名前は開発中のものです。
04/09/09 19:07 v2CO9mqa
level2 移動(1) 基本
URLリンク(gamdev.org)

一応アニメさせてみた
でも移動するのは瞬間移動
ちゃんと歩かせたいけど移動中に入力禁止するやりかたわからん

473:名前は開発中のものです。
04/09/09 19:26 qXZRsmGd
フラグで制御しる

474:名前は開発中のものです。
04/09/09 20:13 v2CO9mqa
>>473
操作の種類×フラグの種類だけ分岐が増えて大変じゃない?

475:名前は開発中のものです。
04/09/10 00:57 FSBi9Bqi
そりゃ設計の問題だな

476:名前は開発中のものです。
04/09/10 19:24:36 fbFfO+ZQ
Stateパターンだな。


477:名前は開発中のものです。
04/09/12 22:27:16 mgyqNhbs
>>475
コンポーネントをダブルクリックしてそこにコードを書くようなのはダメってこと?
>>476
多少は見やすくなったけど、それでもやっぱり操作の種類×フラグの種類だけコードが増えていく

478:名前は開発中のものです。
04/09/27 19:33:28 dLK1d51q


479:名前は開発中のものです。
04/09/27 19:37:08 EMsomWMW


480:名前は開発中のものです。
04/09/28 04:29:17 zzM8gpB4
新参ですが、作ってみました
level4 移動(3) 移動ポイント
URLリンク(gamdev.org)
移動先を選択すると一歩ずつ進むようにしてみました
DirectX9c + Lunaで作ってます

このスレもうみんな見てないのかな(´・ω・`

481:名前は開発中のものです。
04/09/28 04:33:32 8Eq9zpoJ
ω・´)

482:名前は開発中のものです。
04/09/28 15:28:23 VmzUKs6X
>>480
うちの環境だとカーソルキーを押してもマウスをクリックしても何も反応が無かったよ…。

483:480
04/09/28 16:44:47 zzM8gpB4
>>482
人のマスをクリックすると移動先のマスが出るはず・・・
WinXP+Radeon7500、Win2000+i865オンボードで試してます
宜しければ環境を詳しく教えて頂けますか?


484:482
04/09/29 14:34:23 HyGLrFiu
>>483
何回か起動してみたんですけど、マウスカーソルが砂時計のまま変わらないです。

WinXP SP2, Geforce4 Ti 4200, DirectX 9.0c です。
時間を見つけてもう一台のほうも試してみます。


485: 名前は開発中のものです。
04/09/29 17:35:20 0iGhlrUz
>>480
Win98SE, Geforce2MX,,でとりあえず動いています。

でも、一度ウインドウ外にマウスカーソルを出さないと、
(カーソルが)時計のままです。(Lunaの仕様なのかな?)

あと、ときどき止まってしまいます。




486:480
04/09/30 02:40:52 sxnDo7OS
>>482,484-485
レスありがとうございます
Geforce2は持っているので検証してみます
ときどき止まるというのはロジックのバグっぽいですね

見直してまたうpします

487:名前は開発中のものです。
04/10/01 03:00:03 7XNH8LNX
>>485
その現象、Lunaの謎仕様だよね

488:名前は開発中のものです。
04/10/01 08:49:30 G4+XpGQx
>>485, >>487
> (カーソルが)時計のままです

WNDCLASS の hCursor が原因かも。
具体的には、Luna.cpp の 433 行目、LoadCursor の引数です。
リソースとして IDC_ARROW を指定する場合、
第 1 引数(hInstance)は NULL でなければならない。

(つい最近、API からウィンドウ生成するプログラムを作っていて、
これと同じ現象に遭遇しましたのです。)

私は Luna 使いではないので、これで解決するかどうか確認できていませんが
参考までに。

489:480
04/10/02 03:31:44 oJBUqTYI
>>488
ありがとうございます!修正できました
ライブラリのソースも読めるようにならないとこれからキツそうですね(´д`;
もうちょっとまともにプログラム組めるようになったらライブラリの内容も理解できるように勉強していきます

ときどき止まるのはフラグのミスでした。再うpしました
URLリンク(gamdev.org)

490:482
04/10/03 12:14:31 CSbnP8ss
>>489
今度はバッチリ動いたよ

491:480
04/10/03 16:04:48 71djPH3t
>>481,482,484-485,487-488,490
ありがとうございました
ソースコードを整理してからまた次のレベルに挑戦します


492:488
04/10/03 19:23:53 w+IariXr
>>489
動きました。
マウスカーソルの件は、本家の方にも報告しておきました。

493:485
04/10/03 22:44:31 pU4YUoOi
>>489
問題なく動いてます。
これからも、がんばってください。

494:名前は開発中のものです。
04/10/09 04:35:59 GCfBCoIO
言語ができなくともゲームが作れそうなツール作れでつ
ツクールの奴はへぼいのでいやでつ

495:名前は開発中のものです。
04/10/09 04:39:59 5XbefvOQ
>>494
【2D】ゲーム作成ツールGameMaker【マンセー】
スレリンク(gamedev板)

496:名前は開発中のものです。
04/10/10 01:15:49 hHFLHP4A
>>494
ソースが公開されているものを自分なりに改造していけばいい。

497:名前は開発中のものです。
04/11/01 22:54:23 R/4rg+AR
よし、作るぞ

498:名前は開発中のものです。
04/11/01 23:57:24 CJbTFtu+
まとめwikiみたけど最後まで作った人多いな

499:名前は開発中のものです。
04/11/01 23:58:15 kpBm/1EZ
>>497
マジで?

500:名前は開発中のものです。
04/11/02 00:43:23 kGUpB27K
>>498
でも課題を全部クリアしてもシミュレーションゲームとしての完成型にはほど遠いデス。

501:名前は開発中のものです。
04/11/04 14:26:21 tlH/X4SF
HEXマップのシミュレーションゲーム作ってる人っていないみたいだけど
何でだろ?やっぱ難しいのかな?


502:501
04/11/04 14:51:16 tlH/X4SF
>>501
と思ったけど課題がマス目か・・・
失礼。


503:名前は開発中のものです。
04/11/05 21:22:51 5K9qavRG
>>501
奇数マスを半分ずらして表示させる方法なら大して難しくない。







504:497
04/11/06 16:17:37 GTFu98jB
>>3の課題のレベル3まで出来たとです。

スクエア型で作ってるのを奇数マスずらしてヘクス型にしてみたけど
結構面倒ね。

505:名前は開発中のものです。
04/11/07 01:46:53 o3AqdDyh
>504
うpきぼん

506:名前は開発中のものです。
04/11/10 19:04:41 Xdpu3j9/
今日から作ろうとカキコしてみよう

少しはやる気がでてくるかなあ…

507:名前は開発中のものです。
04/11/11 20:55:30 BdgjR2sH
>>505
正直うpできる出来じゃないです。
いまんとこ画像何にも使ってないし、色合いとか見やすさ最悪。
操作性もわりーわりー。

>>506
がんがれ!

508:506
04/11/12 01:21:10 5w/uy/Y6
LEVEL3までできますた
URLリンク(gamdev.org)

LEVEL4考え中
ここが最初の正念場かな…

509:名前は開発中のものです。
04/11/12 01:32:13 sxmbeX7a
>>508
うごかない。何か必要?

510:名前は開発中のものです。
04/11/12 15:40:17 5w/uy/Y6
今度は動くような
DirectX9以上です

LEVEL6ぐらい
URLリンク(gamdev.org)

511:名前は開発中のものです。
04/11/12 16:06:16 5w/uy/Y6
修正
URLリンク(gamdev.org)

512:名前は開発中のものです。
04/11/23 02:24:42 AGzanM/m
ユニットの移動範囲の求め方について考えてみた
EXCELマクロで動作

URLリンク(gamdev.org)

513:名前は開発中のものです。
04/11/23 09:53:20 GEK4NpGQ
定期保守

514:512
04/11/23 21:38:05 R3dR+Mw1
検索アルゴリズムに違いがあったので修正
URLリンク(gamdev.org)

515:名前は開発中のものです。
04/11/23 22:04:25 0Xmb1bTq
EXCELマクロってEXCEL持ってないとダメ?

516:名前は開発中のものです。
04/11/24 00:01:07 GEIHrGaH
前SLGに作ろうとしたけど途中であきらめたんでこんどこそ

517:名前は開発中のものです。
04/11/26 18:50:05 /MleRMTw
六角形ヘクス型シミュってやっぱり難しいのか…
どうやったらできるだろう?

518:名前は開発中のものです。
04/11/26 19:08:47 +6Q9y6yQ
正解なんて無いから自分でいろいろと試してみるといいよ。
それを考えるのも楽しみの一つだ。

519:名前は開発中のものです。
04/11/26 23:10:59 /MleRMTw
あの画像貼り付けって、横方向にはできないのかね?
それならできそうなんだが…

520:名前は開発中のものです。
04/11/27 00:28:57 zVwQvL/a
Thx、bmpを縦長にして、mod演算子で奇数判定させて二種類のチップを敷き詰めた。
(長方形の下の方にヘクスがあるのと、上の方にあるので一枚ずつ、それを連続敷き詰めした)
将来的には同じチップを使いつつ奇数判定が出たらその上に別のチップを置くことで解消したい。

521:名前は開発中のものです。
04/11/27 08:28:22 a7a92uR3
//HEXマップ用 画面、論理座標変換

const
PANELSIZE = 16; //マスの大きさ

var
FScroll:TPoint; //この値だけ左(上)にスクロール

procedure TMapManager.MapToDisp(const MapPt:TPoint;var DispPt:TPoint);
begin
  DispPt.X := (MapPt.X - FScroll.X) * PANELSIZE;
  DispPt.Y := (MapPt.Y - FScroll.Y) * PANELSIZE + ( (MapPt.X mod 2) * PANELSIZE div 2);
end;

procedure TMapManager.DispToMap(const DispPt:TPoint;var MapPt:TPoint);
begin
  MapPt.X := DispPt.X div PANELSIZE + FScroll.X;
  MapPt.Y := (DispPt.Y - ((MapPt.X mod 2) * PANELSIZE div 2 )) div PANELSIZE + FScroll.Y
end;


522:512
04/11/27 11:19:28 H8JrPqzt
Delphi版デモを作成。 

Level3,4ということで
URLリンク(gamdev.org)

523:名前は開発中のものです。
04/11/28 10:29:31 WZsWBfV7
ボタンを作成したんだけれど、コンパイルしても表示されない…
ナゼ?

Button := TButton.Create(Self);
Button.Caption := 'S-1';
Button.Height := 25;
Button.Width := 33;
Button.Left := 776;
Button.Top := 200;


524:名前は開発中のものです。
04/11/28 10:53:26 WZsWBfV7
補足、プログラム内で直接生成。
Private
Button : TButton;
もちゃんと記述済み。

525:名前は開発中のものです。
04/11/28 11:00:09 d9mXyZoD
>>523
(1)Parentを指定しなければならない。
(2)Showしる。
(3)つーか板違い。

526:名前は開発中のものです。
04/11/28 11:07:17 WZsWBfV7
そうか…ShowとParentか…orz
板違いだし。(SLGの開発中の質問なんだけどさ。)

527:名前は開発中のものです。
04/11/28 12:39:16 6Ofdm5gH
>526
シミュレーションと関係ない部分だからだろ
シミュのアルゴリズムとかならいいと思うけど

528:名前は開発中のものです。
04/11/29 22:39:23 phHFzh2i
>>512
good job
参考にさせてもらいます

529:名前は開発中のものです。
04/12/19 20:03:31 uIH0Rdkn
ヘックス型マップの移動って、どうやってやるんだ?
三平方の定理で1マスずつ図るのか?

530:名前は開発中のものです。
04/12/19 21:01:58 dr+alDrs
Y  X→
↓ 0 .1 .2 .3
0 □□□□
1  .□□★□
2 □☆□□
3  .□□□□

こういうマップで、探索開始地点の座標が(X,Y)だったら…
以下の座標へ移動可能判定を行う。

OD = Yが奇数なら+1,偶数なら-1;
(X,Y-1)
(X+OD,Y-1)
(X-1,Y)
(X+1,Y)
(X,Y+1)
(X+OD,Y+1)

たとえば
★位置(2,1)なら、(2,0)(3,0)(1,1)(3,1)(2,2)(3,2)
☆位置(1,2)なら、(1,1)(0,1)(0,2)(2,2)(1,3)(0,3)

531:名前は開発中のものです。
04/12/19 21:44:31 uIH0Rdkn
そうすると、その式を保存して、1マス異動する毎に移動力を減らしていき、0になったらそこで終了、
既に移動したヘクスを保存しておいてそれを繰り返す、というのでいいのかな?

532:名前は開発中のものです。
04/12/19 23:02:06 dr+alDrs
その辺は四角形型マップと同じ。
基本は移動力が尽きたりマップ範囲外になるまで再帰検索。
四角形型マップについては例が上の方にいくらでもある。

533:名前は開発中のものです。
05/01/08 10:15:05 M7Dhiaq8
あけおめー
なんだかカコイイスクリーンショットがうpろだに上がってるけど、どこのスレだろう
上で作ってる人?
URLリンク(gamdev.org)

534:名前は開発中のものです。
05/01/10 16:44:35 LB/T6I4k
|ω・´) ダレモイナイ・・ウプスルナラ イマノウチ

ヤター!Level1できたよー!
URLリンク(gamdev.org)
C + SDL で書いたソースと cygwin で作ったバイナリが入ってます

535:名前は開発中のものです。
05/01/18 18:28:11 nWy7J/XJ
HSPでファイアーエムブレムもどきを作ってる…。
まあ、構造体やポインタできなくてもなんとかなるもんだな。

536:名前は開発中のものです。
05/01/18 19:34:44 d79K1/QN
t

537:名前は開発中のものです。
05/02/05 13:58:30 q/Xovx9Q


538:名前は開発中のものです。
05/02/05 14:53:48 Z4sjRmuC


539:小学生グラマVer1.0
05/02/05 15:07:00 BK/88f3s
>>535
できたら発表求む。

540:名前は開発中のものです。
05/02/05 18:20:21 IipTh/gV
さすが小学生だ。空気読めてねぇぜ。

541:名前は開発中のものです。
05/02/06 17:02:07 Da8m3Kpn
>>539
代わりに



542:名前は開発中のものです。
05/02/10 06:23:22 0glaX97a
>>635
卒研をかねているのでかなりごたごた、しかもグラはシミュレーションRPGを使ってるんだが大丈夫だろうか?

543:名前は開発中のものです。
05/02/10 06:23:56 0glaX97a
すまん、>>549だった。

544:名前は開発中のものです。
05/02/11 00:31:50 pD+B9ZfR
グダグダだな。

545:名前は開発中のものです。
05/02/11 01:16:21 G0/LXJgD
とりあえず、

>>537-541
ガッ!

546:名前は開発中のものです。
05/02/19 00:39:40 lMuS3VdB
SRC使えよ

URLリンク(www.src.jpn.org)

547:名前は開発中のものです。
05/02/19 02:01:49 gbt/TKAd
SRCは元ネタがあれ故にファンタジー系やリアルミリタリー系と相性が悪すぎ。

548:名前は開発中のものです。
05/02/19 03:14:57 PBWmYR9A
SRCはインターフェースが古すぎる気がする


549:名前は開発中のものです。
05/02/19 04:08:10 RpiaXR9Y
Windows標準のGUI使ってるんだっけ?

550:名前は開発中のものです。
05/02/19 08:55:19 1rAF19AM
ほとんどGUI操作

551:名前は開発中のものです。
05/02/20 18:30:49 Sdsq6e+G
SRCみたいなゲームを作りたいんですが、
このスレのlevel4のように障害物のあるものは
具体的にどう作ればいいのか分かりません。
移動者の中心から全移動ルートを一マスずつ探ればいいのでしょうか?
だけど無意味なルートの処理(既に移動可能と判断されてるマス)
まで調べてしまい、処理速度に大きな影響がでてしまいませんか?

552:名前は開発中のものです。
05/02/20 21:14:47 MZHZOmE6
>>551
今の段階で、どんな方法で計算しているか分からないけど、
既に可能な所は、読み飛ばすとかすればいいのでは。

553:名前は開発中のものです。
05/02/20 21:54:04 D20139+p
自作ゲーム作ってるんだけど、
Age of Empires IIってPCゲーム友達からもらって遊んでみたら、
マップエディタを作る気が失せた・・。


554:名前は開発中のものです。
05/02/20 22:09:18 43VBy+PF
もらうなよ。 違法だぞ。
体験版にしとけ。

555:名前は開発中のものです。
05/02/20 22:09:29 yMDXw/8g
>>551
>移動者の中心から全移動ルートを一マスずつ探ればいいのでしょうか?
基本的にはそう。障害物があるマスは移動ルートの検索から外す。

>処理速度に大きな影響がでてしまいませんか?
凄い出るけど、それは基本的な移動アルゴリズムを作り上げてから考えても遅くはない。

556:552
05/02/20 22:12:02 MZHZOmE6
>>551
あっ、たぶん再起法でやっているのかな。
このスレにも出てきている、ダイクストラ法なら、
地形によって遅くなるという事はないと思う。

>>553
よく分からないけど、普通の2D用のマップエディタを作ろうとしていた所、
そのゲームを見てしまった衝撃を受けたという感じ?

557:名前は開発中のものです。
05/02/20 22:54:00 YD13bL3p
>>553
何故?

558:名前は開発中のものです。
05/02/20 22:59:15 D20139+p
>>557
とても作りやすい構成だったので、量がおおいのは置いといて。
質も良かった。何十人もの人が長い年月かけて作っているように思えたし。
>>554
譲渡はだめなんですか?
CD無いと遊べないから、遊べる権利も譲ったという解釈は?

559:名前は開発中のものです。
05/02/20 23:01:30 yMDXw/8g
とりあえず違法行為か疑念を招く行為を掲示板に書き込むな。荒れる。

560:551
05/02/22 01:52:48 kB9x/Qrk
>552>555
スマソ。今はBCC使ってるんですが、
シミュレーションはVBでちょっと簡単なもの作ったくらいです。
ついていけなさそうなので出直してきます(´・ω・`)

561:名前は開発中のものです。
05/02/22 08:03:24 EPbyao3k
>>560
BCCなら、そこの部分の簡単なプログラムをうpして上げましょうか?

562:名前は開発中のものです。
05/02/22 11:50:17 gi6gzinK
BCCってかっこわりいフォルダ名とか暴露されるだろ。
敵国のスパイだな。
>C:\bcc55にすりゃあいいだろがタコ!!
心の問題だから駄目なんだよ!!

563:551
05/02/22 21:07:40 7DQGglZB
>561
㌧。けどダウソは禁じてるので。
大まかな仕組みと流れが分かれば
自分で何とか組んでみたいです。

564:561
05/02/23 01:15:33 3gPHR2JM
>>562
exeを逆アセンブルするとかで?

>>563
出来るならその方がいい。製作がんばってください。

565:名前は開発中のものです。
05/02/23 10:26:24 DyDx9zzA
>>561=>>564
バイナリエディタで見ただけでアウト!!だ。

566:561
05/02/23 19:11:22 3gPHR2JM
>>565
フォルダ名は見つからなかったけど、どこら辺?
プログラム中で使った文字列と、使ったライブラリ関数の名前は表示された。
キャラ、アイテムの名前とか丸見えでびびった。

567:名前は開発中のものです。
05/02/23 22:07:32 p6wvwP+M
ライブラリをリンクする時にフルパスで指定してたりすると丸見えになるな

568:名前は開発中のものです。
05/02/24 13:54:50 SJ9IDH8n
スパゲティソースでもいいからうpしてくれ。

569:名前は開発中のものです。
05/02/24 21:32:27 ObnyDdFD
512とか

570:名前は開発中のものです。
05/02/27 21:40:51 6KCxyQGS
よーし、おじさんもシミュレーションつくっちゃうぞ!!
まずはレベル1から挑戦だ

571:名前は開発中のものです。
05/03/02 17:41:19 /Kr8mOUt
URLリンク(gamdev.org)
lv4まで作ってみた。
移動可能範囲検索がよく分からん。
移動力を上げるとかなり重くなる。
あと、ソースにコメントを付ける習慣がまったくないんだけど、やっぱ付けるべき?

572:名前は開発中のものです。
05/03/02 19:39:26 sPyl3EBw
それよりも関数名に機能を示す名前を付けた方がよい。


573:名前は開発中のものです。
05/03/03 03:19:56 LcIzefXc
>>571
半年後に見たとき、コメント付けときゃよかったと後悔すると思う。

574:571
05/03/03 09:35:25 JAyscznJ
レスありが㌧。
>>572
関数名か...かなりテキトーに付けてるからな。
もう少し考えて付けるようにするよ。

>>573
なるほど、後のことは全然考えてなかった。
でも、半年後に見直すこと自体ない気がする。

でも、まぁこれからは今後のことを考えて、関数名もコメントも分かりやすく付けるように努力すろ。

575:571
05/03/03 09:36:03 JAyscznJ
努力す"る"

576:570
05/03/05 10:21:16 4Hpkt+sN
やっとレベル1ができた
ちょっとごちゃごちゃしてるかな

URLリンク(gamdev.org)


577:570
05/03/11 18:25:17 yIB/u6EU
Level4までできた。

URLリンク(gamdev.org)


578:名前は開発中のものです。
05/03/11 19:51:37 KL0zJtF0
>>577
良い。探索が速いね。

移動のアニメはしないの?
経路探索も面白いんだけど。

579:570
05/03/12 00:37:32 7ponwXKB
おっ、やってくれたのか。ありがとう。
探索は再帰処理だけど、思ったより早かったよ。
明日は休みなので、経路探索挑戦みる。

580:名前は開発中のものです。
05/03/12 01:26:23 QZaGJYEK
経路探索アルゴリズムって起点から対象までを総当りでやればいいの?




581:名前は開発中のものです。
05/03/12 01:43:09 vfjAxALQ
経路探索は、移動範囲探索の時に、マスごとに残り移動力を記録しておいて
移動先を開始地点にして、上下左右のマスの中で、記録してある移動力が
大きい方へ移動を繰り返していくと、最終的に必ずプレイヤーの現在位置へ戻る。

00100
01210
12321
01210
00100

の、「3」がプレイヤーの現在位置で、たとえば、(2,0)の位置へ移動したい時、
(2,0)→(2,1)→(2,2)と、数字が大きくなってるでしょ。

582:名前は開発中のものです。
05/03/12 01:49:50 vfjAxALQ
ちなみに、他の方法としては、
移動範囲探索の時に、進んだ方向を記録していって
マスのフラグを立てる時に、それまでの移動方向もマスに持たせる。

>>581 の図(?)で、
(2,0) のマスは、「↑↑」
(3,3) のマスは、「→↓」
みたいな感じで。
移動方向は2bitで表現できるけど、1byteにした方が使いやすいかな。

他にも良い方法があるかも知れないけど、知ってるのはこの2つ。
おすすめは前者だけど、再帰使うからバグが出る可能性も。

583:名前は開発中のものです。
05/03/12 01:51:09 QZaGJYEK
URLリンク(kyu.pobox.ne.jp)
ここにあったか、スタック、キューは使いようってことだね

(縦×横)×(縦×横)の配列データをマップロード時に先読みするのはありなのかな?


584:名前は開発中のものです。
05/03/12 02:10:14 vfjAxALQ
なんで(縦×横)の二乗分なの?
データとしては大きくない?

585:名前は開発中のものです。
05/03/12 02:22:55 QZaGJYEK
>>584
別のエディタであらかじめ計算したデータを使えば早いかなと思いまして。
でも縦256*横256なら4GBなんですね・・・電卓叩いてびっくりした

586:名前は開発中のものです。
05/03/12 02:27:06 QZaGJYEK
>>582
で、この方法の意味を考えてたんですが
これ移動範囲可視の後の実移動の際、2度目の検索がいらないやり方ってことですかね


587:名前は開発中のものです。
05/03/12 03:15:33 vfjAxALQ
>>586
そう。
移動先のマスに保存しておいた移動経路を辿るだけだから、探索時間は0。
ただし、マップが大きいと、メモリ食うかも。

最高移動力を10として、移動方向を1byteで扱うなら
経路保存に必要なのが1マスにつき10byte。

もし、すべてのマスに、この経路保存変数を持たせると、
256*256のマップの場合640KBも使うことになる。

もちろん、移動範囲内だけ保存するようにすれば、少なくて済むけど。
移動力10のユニットが、平地の真ん中に居た場合、移動可能範囲は
220マス。(範囲計算は (1+n)*n*2)
220*10 = 2200 で2KB程度。

588:名前は開発中のものです。
05/03/12 04:16:56 KBF6L85u
ターン制シミュなら経路探索のコストはそこまで気にする程でも無いと思う。
ヘクスのマップ(配列じゃなくてハッシュ)、地形によるロスあり、移動力10って条件で
探索を1000回繰りかえしたけど一秒もかからない(つまりミリ秒以下)
ファミコン時代とかなら突き詰める価値はあったと思うけどね。

589:名前は開発中のものです。
05/03/12 05:24:45 QZaGJYEK
>>587
ターン制SLGならコスト的にもリーズナブルそうですね。
瞬間移動してたらSLGっぽさがないし、これはいい。

大グリッドと小グリッドに分けた経路探索ならAIにも対応できるかも(無謀?)


>>588
> ハッシュ
隣接面への参照を保持してやってるのかな?難しそう・・・

リアルタイム3次元マス(キューブ?)での経路探索が気になるところです。


590:名前は開発中のものです。
05/03/12 06:26:08 vfjAxALQ
>>589
三次元だと、基本は同じで、探索方向に上下が加わるだけじゃない?
計算量は増えそうだけど、面白そうだ。

591:名前は開発中のものです。
05/03/12 14:29:06 1mojNwQF
>一秒もかからない(つまりミリ秒以下)
はえぇ いやそれって1秒以下じゃないの?

592:名前は開発中のものです。
05/03/12 15:09:46 nSnZ9md9
>>591
一回当たり?

593:名前は開発中のものです。
05/03/12 18:15:02 vfjAxALQ
>>588
そんぐらい速ければ問題ないけど、
速いに越したことはないよね。
レスポンスが悪いゲームって本当にイライラする。

594:570
05/03/12 19:04:04 7ponwXKB
経路探索+レベル6までできた。

経路探索の方法はいろいろあるようだけど、
再帰のときにどのセルから検索されたかを記録しておいて、
移動先から逆算する方法にしてみた。

URLリンク(gamdev.org)

595:名前は開発中のものです。
05/03/12 21:56:13 vfjAxALQ
>>594
乙。スクロール、スムーズでいいね。

気になった点が一つ。
描画順がおかしくない?
青いユニットを赤いユニットの真下に移動すると分かるんだけど、
赤いユニットの方が必ず青いユニットの上に被る。

596:名前は開発中のものです。
05/03/13 01:13:12 i5DBmPnB
>>594


ちょっと遅いんだけど俺だけ?
カーソルがマウスについてくるまで1秒ぐらいかかってる
スクロールも毎秒3マスぐらい

597:570
05/03/13 11:53:57 t2mLGEb8
>>595,596
ありがとう

描画順はぜんぜん考えてなかった。
ユニットが移動したらソートしないといかんのか。

毎フレーム書き直ししてるからマシンスペックによっては遅くなるかもしれん。
正しく動くだけでなく、早く動くということも考えないといけないんだね。



598:名前は開発中のものです。
05/03/13 12:04:44 rwmeSzIL
マスに重なるなら互いに少しずらしてやるとそれっぽいよね
自分自身のマスを攻撃対象に出来てみたいだし工夫のしどころ

599:571
05/03/16 22:59:42 xd0KEMVl
人がいるみたいなので、あぷ。
lv ~8,11,12,16,17 まで

URLリンク(gamdev.org)

600:名前は開発中のものです。
05/03/17 12:05:45 kuCcYYYC
>>599
移動する位置への道順が、移動する前に表示される。
なかなか、かっこいい演出。

601:名前は開発中のものです。
05/03/17 18:44:27 Kyvq5PYy
>>599
@Pentium4 1.8GHz、RAM 768MB
重すぎる… ゲームにならない。描画がマウスに追いついてない。
CPU使用率が100%。

マウスが動くたびに描画してるみたいだから、描画が遅いんだと思う。

Unit1.DrawMap 、各セルで毎回全プレイヤーと全敵の位置を照らし合わせてるけど、
この管理方法なら、マップはマップ、プレイヤーはプレイヤー、敵は敵で、
別々に描画したほうがよさそう。少なくとも条件文は無くなる。

602:名前は開発中のものです。
05/03/17 22:07:42 bPO4DfQ/
>>601
そんなに遅い?
うちはAthlonXP 1.8@0.8GHz だけど
CPU使用率最大4%くらい


603:571
05/03/17 23:44:52 gvb+Ge3i
>>600
実は、移動方法考えるときのデバックとして付けた機能がそのまま残ったものだったりする。
>>601
ホント?
うちは700MHz,128MBのオンボロだけど、十分動くよ。
でも、できるだけ軽くなるように描画方法も考えてみる。
アドバイスありがと。

604:570
05/03/19 16:07:38 n9XyEYKf
Level9までできた。
以前よりだいぶ高速化したつもり。

URLリンク(gamdev.org)

>>599
Pentium4 2.8GHzだけど、すべての動作が1テンポ遅れる感じ。
共にがんばろう。

605:名前は開発中のものです。
05/03/21 07:22:23 xSRFvs+Q
ヒロシです…

SLG を作ろうと思って、フレームワークを作り始めたら、
気づくと、DirectX をラップした QuadrupleD をさらにラップしていたとです…

ヒロシです…

level 1 がなかなか終わりません!

ヒロシです… ヒロシです… ヒロシです…

606:名前は開発中のものです。
05/03/21 18:52:51 vC1r8qsa
>>604
おっ、チームが増えてる。
操作性は、遅くは無いけど、重い感じ(CPU率が高い)。

607:名前は開発中のものです。
05/03/23 18:53:36 QKupgVqx
期待あげ

608:571
05/03/25 22:06:41 hUnU9rQK
とりあえず描画方法改善できたと思う。軽い?
他は変更なし。
URLリンク(gamdev.org)

>>604
常にCPU率が100%になる。
うい、がんばりましょう。


609:601
05/03/26 01:28:56 Us5vTj+n
>>608
サクサク動くようになった。CPU使用率はほぼ0%。
なるほど、バッファのTImage作ったのね。よさげです。乙。

>>604は確かにCPU使用率が高いけど、FPS制限してないからだね。
300FPSぐらい出てるから、FPS抑えれば滅茶苦茶に軽くなると思う。

610:名前は開発中のものです。
05/03/27 12:57:56 T9oV5wT4
>>608
ソース見せてもたっらんですが、デストラクタを書いたほうがいいとおもいますた

611:名前は開発中のものです。
皇紀2665/04/01(金) 01:51:22 SPfs8D6Q
test

612:名前は開発中のものです。
05/04/04 00:34:36 1OKLMiow
参戦します。
開発環境は Delphi 7 + QuadrupleD。

Practical SLG (Level 4 の移動まで)
URLリンク(gamdev.org)

ゲーム開発は初めてなので、不慣れなところが多いです…
クラス構成とか不安…。一応 ReadMe.txt に解説書いてあります。

一応、うちのPCだと 約30fps で CPU使用量は 0~20% ぐらいです。
何かアドバイスとか、不具合とかあったら、教えてください。

613:名前は開発中のものです。
05/04/04 03:20:24 jHrujCNT
>>612
歩行画像、向き変更があっていい感じ。
不具合は特にないが、CPU率は少し高い気もする。

614:名前は開発中のものです。
05/04/04 15:42:23 TKsHR4Oc
>>612
プレイしました。
デザインパターンも知っておられるようですし、
ゲーム以外では明らかにプログラム慣れしていそうですね。

そうなるとクラス構成なんて個人個人の趣味みたいなもんなので、
問題ないのではないでしょうか。

発見したバグは、ウィンドウ最大化時に
マウスのカーソルがずれるくらいでした。


615:612
05/04/04 18:37:07 1OKLMiow
>>613
試験ありがとうございます。
CPU率高いですか… これからもっと高くなるかもです…
工夫していきたいと思います。

>>614
ありがとうございます。
実は、デザインパターンの勉強も兼ねています(笑
クラス構成はまだ改善の余地ありと見てますが、
そう言って頂けると大変安心しました。

> 最大化時にマウスのカーソルがずれる
あ… ウィンドウスタイル指定するの忘れてました(´・ω・`)

616:名前は開発中のものです。
05/04/18 17:47:30 mbf+zZxd
良スレ発見!
何度も挫折を繰り返し、初心者って感じじゃないんだけどいいですかね?
意見を聞きつつ開発したほうが持続力がつきそう。
今は、あまりに孤独じゃー

617:名前は開発中のものです。
05/04/19 14:21:35 k0wyhy8x
ここに来ても孤独な罠

それは冗談として、見てる人はそれなりに居るはず
とりあえずなんか始めてみれば出てくるんじゃない?

618:名前は開発中のものです。
05/04/20 17:52:00 neMwYGyi
品物が出てくれば意見も出てくるんで内海?

619:名前は開発中のものです。
05/05/07 03:10:25 evUDXxkA
一つお聞きしたいのですが、友軍や敵軍などの
CPUが操作するユニットのターンになった時に、
ユニットが移動や攻撃をする度にスレッドを作って
移動アニメーションを行うのですが、一気にループを
回してしまうと何が起こっているのか分からないので
移動や攻撃が終わるまではSleepしているのですが、
それではメインウィンドウプロシージャがメッセージを
受け取れなくなってしまって他のアプリケーションを
起動していたりすると画面が白転してしまいます。
VC++で作っているのですが、Sleepなどで待機しても
プロシージャがきちんとメッセージを受け取れるようにするには
どうすればよいでしょうか。長文すみません。

620:名前は開発中のものです。
05/05/07 05:22:15 evUDXxkA
すみません、自己解決いたしました。
すれ違い気味の質問、失礼しました。

621:名前は開発中のものです。
05/05/07 10:47:58 JNaDZvUu
アニメーションはメインスレッドでやった方が良いんじゃないかな。
子スレッドにするのは思考ルーチンだけにしておいた方が良いよ。

622:名前は開発中のものです。
05/05/07 23:05:43 evUDXxkA
>>619
了解しました!

623:名前は開発中のものです。
05/05/13 11:01:36 4Br0vKQQ
HSPの初心者が無謀にも挑戦してみたいとか思っているのだけれど、よろしいかな?
HSPで完全オリ~スレに移ったほうが良い?

624:名前は開発中のものです。
05/05/13 13:13:35 E2VMflw9
あちらはアクティブなプロジェクトがあるみたいだね

棲み分け的には
 ・シミュレーションゲームの基礎知識&プログラミングの練習
   →ここ
 ・(HSPの)スキル有り&仕様、シナリオ案があって開発が可能
  テストプレイヤー的な意見を希望
   →向こう
って感じだと思う

625:名前は開発中のものです。
05/05/13 14:05:39 4Br0vKQQ
あー、それじゃあ、スキルもないし練習させてもらおうかなあ。
つっても俺が考えているのは、厳密にいうとシミュレーションゲーム、とはちょっと違うような気が・・・
どちらかというとRPG的要素が少なからずあるような。

今日から居候するので宜しく。悪い点はバシバシ指摘してもらえるとありがたい。
心配なのは、このスレのHSP人口が低そうな点だけど・・・。

626:名前は開発中のものです。
05/05/13 15:05:03 XuCqCN52
基本的なアルゴリズムはどの言語でもそう変わらんと思うよ。

627:名前は開発中のものです。
05/05/13 18:23:15 1w8R4xbI
HSPは、ローカル変数がなくて再帰がとてつもなくめんどくさいので
例えば、SLGの移動1つとっても茨の道だけどがんがって!

628:bz
05/05/15 01:02:09 v36HvDDC
625だけど、
やたら変なところで凝っているくせに、未だにキャラの移動すら出来ていないorz
とりあえず明日までにはキャラの移動を完成させる。

今の所のスクリーンショット
URLリンク(gamdev.org)
グラフィックがヘチョいのはスルーして・・・orz

629:bz
05/05/15 23:34:12 v36HvDDC
URLリンク(gamdev.org)
とりあえずレベル2。極めて読みにくいソースコードつき。
こんなヘボいのに100行以上使ってどうするんだか・・・。

デザインは後回しでいいと頭では分かっていても、ついつい手を出してしまう。
あー、次はアニメーションさせようかなー。素材だけはそろっているんだけど。

HSPで~スレに滅茶苦茶クオリティの高い作品が上がっていて呆然。
俺だっていつかあんなのを・・・無理ぽorz

630:名前は開発中のものです。
05/05/20 21:23:57 a4PwaMJQ
人がいなくて可哀相なのでage

631:とうりすがりのものです
05/05/21 20:26:06 rrjkfHGK
HSPの質問させて下さい

一番シンプルなHexの表示(真上視点の6角形)と
キャラ移動の方法を知りたいです

632:名前は開発中のものです。
05/05/21 20:47:44 4glDUKFW
その質問の仕方はよろしくないよ。

633:名前は開発中のものです。
05/05/21 23:38:26 ASH2UgW8
6角形は結構難しいよ。
長方形を半分ずつずらすか、平行四辺形にすると結構簡単なんだけどね。

634:名前は開発中のものです。
05/05/22 00:07:34 uqvFjLO8
六角の画像を置けば楽。

635:名前は開発中のものです。
05/05/22 00:10:43 LyHQEhVu
ヒントとしてはY座標が奇数の時に半分ずらすかな
コツをつかめば割りといけるよ

今、作ってる奴の昔のソースなら出してもいいけど、要る?

636:名前は開発中のものです。
05/05/22 00:12:24 nZCAd3ZE
表示はともかく、移動経路の計算とかメンドそうだなぁ。

637:名前は開発中のものです。
05/05/22 00:16:48 p+ndikOr
四方向の探索が六方向になるだけで、特に難しくは無いと思うんだけど。

638:名前は開発中のものです。
05/05/22 00:45:50 2NRvxqub
>>632-637
どーもです
参考になります
特に635さんのソース気になります
とても見てみたいです

639:名前は開発中のものです。
05/05/22 00:48:21 nZCAd3ZE
>>637
四角マップを一行置きに半マスずらしたようなHEXを考えてるんだが、
これをマップを2次元配列のまま処理しようとする場合、
奇数行と偶数行で縦方向の連続する番号が違うよな。
これを条件分岐させながら検索することになるのかなぁ、なんて思って。

640:名前は開発中のものです。
05/05/22 10:09:04 r8NQ8lyq
話の流れを読まない漏れが作り始めてみましたよ。
FEをモデルにしてるんでHEXじゃないけど。
URLリンク(gamdev.org)
Level1までできました。

641:名前は開発中のものです。
05/05/22 11:53:48 LyHQEhVu
>>638
マップ表示だけでいいの?移動もですか?
漏れの再起処理は独流なので効率わるいかも
理論は合ってるとおもうけど

多少きれいに書き直してから

>>640
イイ感じ


642:名前は開発中のものです。
05/05/22 15:44:58 SYf3tkzB
>>640
好きです、こういう雰囲気w

>>641
マップ表示、移動、何でもいいです
Hexマップの使い方(作り方)の基本が学べれば
それを元に応用してみます

643:名前は開発中のものです。
05/05/22 17:12:16 BE1O9AZZ
>>640
いいね。
FPSってのは、フレーム数/秒の事。そのままだけど。
一秒間に何度画面が更新されるか、ってのの目安なんだよね。
この数が多ければアニメーションが滑らかに表示されるし、少なければカクカクした動きになる。

644:名前は開発中のものです。
05/05/22 18:24:34 +iYYjrfb
6角HEXマップの描画と移動のサンプル
URLリンク(gamdev.org)

注釈はないけど簡潔に書きました
普通の4方向のSLGにも応用できると思う

参考になればいいなー

645:名前は開発中のものです。
05/05/22 20:07:47 65VcCrkF
>>644
乙&サンクスです

丁寧に整理されてて見やすくて勉強になります
暫くは色々と弄って自分なりに工夫してみます

646:名前は開発中のものです。
05/05/23 19:04:43 PtFPkfPC
URLリンク(gamdev.org)
Level4までできました。

>>641-643
ありがとう。
FPSがどういった物なのかは理解できたんだけど、それをどうやって設定すればいいのか…
色々考えてみます。
ここまで課題の実装のみを目指して突き進んできたので
そろそろ細かな所を少しずつ実装していかないと。

647:名前は開発中のものです。
05/05/23 20:18:38 6SppXZso
HSPなら、await があるので、FPS制御は結構楽。
await は、指定したmsから前回のawaitからの経過時間をさっぴいて、待機してくれる。
例えば FPS を 30 にする場合、1秒間に30回画面を更新、つまり
1秒間に30回awaitすれば良い。問題は、どのぐらいawaitすればよいか。

1秒間 = 1000 ms なのでこれを、 30で割る。
1000 / 30 = 33.3333… ≒ 33。
つまり、await 33 とすれば、FPSは約30となる……はず。

648:名前は開発中のものです。
05/05/23 21:41:33 5Z7yNaba
60FPSなら、17ms,17ms,16ms,17ms,17ms,16ms…
とウエイトかければぴったり1000msで割れる。

649:647
05/05/24 00:16:14 sE2KC9V6
>>646
HSP用のFPS制御モジュール作ってみたよ。
URLリンク(www.geocities.jp)

一応 >>648 の方法で誤差も丸めるようにしてある。

650:640
05/05/25 20:49:45 oU2eTdrS
お絵かきしてたら物凄くへぼくて凹んだ。

>>647-649
ありがとう。参考になります。
勉強かねて作ってるんだから最終的には自力で何とかしなきゃとは思っておりますが
早速モジュールを有り難く使用させて頂きました。

651:名前は開発中のものです。
05/06/08 06:14:57 9kzzpgho
このスレのゴールって、大戦略みたいな本格派?ネクタリスみたいなライトゲーム?スーパーロボット対戦みたいなキャラゲー?

652:名前は開発中のものです。
05/06/08 10:35:49 QlsV3Xgg
このスレの目的はプログラムの基礎を学ぶことであり、
ゲームを作成するのはその手段でしかない・・・とか知った風な口を聞いてみる

653:651
05/06/08 14:04:33 9kzzpgho
>>652
なるほど・・・納得しました

654:Now_loading...774KB
05/06/08 23:44:46 ZQ8Wu/oH
俺も>>1と同気でシミュレーションRPGがつくりたい。
シミュレーションRPGの作り方が載っているHSPについ
ての本あるかい?


655:名前は開発中のものです。
05/06/09 00:52:11 SEexozTr
>>654
ゲームプログラミングクックブックとか。
しかしシミュレーションRPGの作り方より、それに関連するアルゴリズムを学ぶ方がいいと思うよ。

656:名前は開発中のものです。
05/06/09 02:00:26 ybEXZXvq
経路探索とか人工知能とか?

657:名前は開発中のものです。
05/06/09 11:52:20 eXK3HkPI
>>654
HSPでどこまでできるの?
設計したりアルゴリズムを考えたり実装したりするプログラマーとして腕は?
今までゲーム作ったことある?
どんなシミュレーションRPGを目指してる?

まず、ゴールとなる形を細かく分割して何を作るべきかを考えれば?
ボトムアップでゲームを作るなんてのはそれなりに経験がないと難しいよ。

経路検索とか人工知能なんて後でどうにでもなる。
まずはゲームフレームワークの設計じゃねーの?

このスレは初心者がシュミレーションゲームのフレームワーク構築をしてるスレ。
それは理解できるかな?

658:Now_loading...774KB
05/06/09 15:57:38 bRJDzYA+
>>655確蟹RPGに最も必要な計算方はアルゴリズムですなー。

659:Now_loading...774KB
05/06/09 20:30:24 bRJDzYA+
俺が作りたいのは

1・自分が味方キャラコンピュータが敵キャラの位置を決める
(味→敵→味→敵→味→敵→スタート)
2・スタート
3・自分が最初に出した魔物から順番に攻撃していく1の(~)のとおり(魔物はそこで攻撃する「動けない」)
4・ゴール条件=敵を全て倒す
こんなかんじだが簡単か?
4・

660:名前は開発中のものです。
05/06/09 21:47:13 SEexozTr
画像表示とかキー入力とか基本は理解してんの?

661:名前は開発中のものです。
05/06/09 22:50:34 eXK3HkPI
>>659
プログラムを組む腕はあるけど、ゲームのアルゴリズムが分からないの?
それともプログラムの組み方から分からないの?
『簡単か?』なんて漠然と聞いてるあたり、プログラム開発っていう部分から分かっていない気がするけど。

ここは初心者専用スレだから全然分からなくても構わないんだけど、どんくらい分からないか教えてくんないと適切なアドバイスできないよ。

まず、レスの>>3にある内容は理解できる?
何故そういうステップで作っていく必要があるか理解できる?




で、単に質問に答えるなら『オレなら簡単にできるよ』です。
君の腕前は知らんから評価のしようが無い。

662:名前は開発中のものです。
05/06/09 23:02:28 SEexozTr
俺のIDちょっとすごくねぇ!?

663:名前は開発中のものです。
05/06/09 23:05:08 26Scav+W
別に。ID:SEXerorzとかならまだしも。

664:名前は開発中のものです。
05/06/09 23:22:48 SEexozTr
どれもこれも微妙で個人的にうけたんだが…。

665:Now_loading...774KB
05/06/10 09:49:21 SRA4QeNs
プログラムの組み方だよ

666:名前は開発中のものです。
05/06/10 10:37:32 Vi1qnRdT
>>665
もしかしてHSPでのプログラム開発経験は無い?
他の言語でならある?
勝敗が出るゲームを作ったことはある?

667:Now_loading...774KB
05/06/10 14:54:23 SRA4QeNs
3ljpy
ありません

668:名前は開発中のものです。
05/06/10 15:36:23 Vi1qnRdT
>>667
プログラム開発の経験が全く無いのであれば、いきなりゲームを作るのは無理かと思います。
シミュレーションゲームはショボく最低限とかにしようとしても、意外に結構な量のアルゴリズムを実装する必要があります。
このスレでレベルごとに課題形式でやっているのは、そのアルゴリズムを一つずつ積み重ねているためです。

まずはHSPの初心者向け書籍やサイトを見て、HSPによる開発に慣れることかと思います。。
アルゴリズムとその実装については、プログラムを書けるようになればある程度はカンがつかめてきます。
カンをつかむ場所として、このスレの課題を順次こなしていくというのが近道だと思います。

HSPの勉強自体はHSPの初心者向けコミュニティなんかでするのが良いかと思います。

669:Now_loading...774KB
05/06/10 17:46:38 SRA4QeNs
はっきり言うとコンピュータ語です

670:名前は開発中のものです。
05/06/10 18:31:25 Vi1qnRdT
良識あるかもしれない住民のみなさんスレ汚しすみません、本気で釣られました orz

まだまだ修行が足りないようです。

671:名前は開発中のものです。
05/06/10 18:49:34 ZUn7C9lC
いや、お前さんは悪くない、悪くないよ……

672:Now_loading...774KB
05/06/10 19:18:58 SRA4QeNs
???

673:名前は開発中のものです。
05/06/11 12:46:38 QQQ4RQxE
>>672
釣りですか?
本気で作りたいんですか?

674:名前は開発中のものです。
05/06/11 15:00:55 8WJF4CTk
>>670
おつ。よくがんばった! ^^

675:Now_loading...774KB
05/06/11 17:02:38 SU+kbL8z
>>673とんでもない、釣りなんか一度もしていません。本気です。
さっきまでプログラムやアルゴリズムなどの設定をみてました。

676:名前は開発中のものです。
05/06/11 19:06:26 RCbXq2jM
アルゴリズムの設定ってのがよくわからんぞ…。
目標があるのはいい事だが、初めてならいきなり難しい事をしようとせず段階を踏んでやった方がいい。
ウィンドウの表示の仕方がわからなければ、キャラクターを動かすなんて出来ないだろ?
>>659のようなのを作るにはまず>>3のような基本を理解してなければいかん。

677:名前は開発中のものです。
05/06/11 21:32:44 qRsu6xlo
>>676
また釣られてるぞ

678:Now_loading...774KB
05/06/11 21:53:33 SU+kbL8z
>>676 フラッシュソフト類は必要ですか?
>>677 釣ってなんていません。。

679:名前は開発中のものです。
05/06/11 21:59:40 RCbXq2jM
・゚・(つД`)・゚・

680:名前は開発中のものです。
05/06/11 22:32:22 WvchJRDN
"Now_loading...774KB"はこのスレ最初から読んで一通り試して、
できなければム板に行って知識蓄えてやりなおしてみて、
それから質問しる。


681:名前は開発中のものです。
05/06/12 08:49:52 WhyZAEvM
>>679
よーがんばたった ^^

682:名前は開発中のものです。
05/06/12 10:14:12 Jmf2rBli
670だけど、最後にもう一度だけ信じて。

>>675
もし釣りじゃないとしたならば、今まで貴方に対して出てきた質問に答えてください。
もし質問の意味が分からないのであればその旨書いてください。
アドバイスするのに最低限の質問が揃っていますから。

ゲームを作るのは家を作るようなものです。
外見はこうがいいとか、間取りはこうがいいとか、風呂はどうのとか言う前に、基礎を固めたり柱を力学的に矛盾無いように設計したり水回りなどのインフラを設計する必要があります。
貴方がポツポツと言ってるのは見たくれの話ばかりで、本質ではありません。
なので経験が無いのでは?と思うわけです。
で、経験が無いのであればそれなりにはじめるステップが色々あるので、そこをアドバイスしたいので質問をしたわけです。

以上

683:Now_loading...774KB
05/06/12 10:40:19 D9VVBbSG
すみません、経験はありません

684:名前は開発中のものです。
05/06/13 13:46:09 uaSMbl8R
>>683
まず、HSPをダウンロードして、初心者向けのサイトで基本的なプログラムを作ってみてください。
ここは初心者専用とは言え、プログラム開発について丸っきり何も分からない人までは面倒見きれんと思いますよ。
全くのプログラム初心者向けのスレに言ってある程度プログラム開発について知ってから来て見た方がよいですよ。

685:名前は開発中のものです。
05/06/16 17:03:00 QD5w5dQa
と、まぁ釣られてるわけで。

686:名前は開発中のものです。
05/06/17 03:08:07 ptGGON/Q
仮に初心者だとして、これで嫌になって諦めるようじゃゲームどころかプログラミング自体無理だな…。

687:名前は開発中のものです。
05/06/24 20:06:10 7EC5oqgL
>>685 IDが左右対称だな

688:名前は開発中のものです。
05/06/24 20:14:11 xcZbklkw
MAJIだSUGEEE

689:名前は開発中のものです。
05/06/25 02:03:55 H/M0B/KN
気づいた>>687もすげえ


690:名前は開発中のものです。
05/07/07 04:59:04 dHiONDtl
寂れたこのスレに俺がTipsを教えてやろう。
4角形、6角形のマップ探索のしかたはみんな知っていると思うが、
8角形の探索方法を知っているか?
答えは簡単。上下左右の4方向に加えて、斜めにも探索すればいいんだ。
でもそれだけじゃあ正方形になるだけだから、斜めの時には移動ポイントの消費量を1.4倍(正確には√2倍)するんだ。
アルゴリズムもきつくなるし、計算量も増える上に探索範囲が広くないとあんまり効果の違いがわからないけどね。
広範囲SLGを作るときにはぜひ試してみてくれ。Let's try it!

691:名前は開発中のものです。
05/07/08 08:12:04 I24t0Qz3
しかしルール上斜め移動アリならそれで良いが、
無しなら地形の移動コストの計算が合わなくなる罠。

692:名前は開発中のものです。
05/07/08 22:06:45 2B6JNn4p
リアルに見えるルート検索は地形とユニットによる移動量とは別の重み付けを行うのが良い。
例えば同じ移動コストの地形でも戦車系なら草原を優先し、タイヤ系なら道路を優先し、歩兵なら視界の悪いところを選ぶなど。
また、現在位置から移動先までの直線を元にしたルートを最も重くし、そこに近しいルートを選択するようにすれば、同一の地形をただ縦→横と不自然に移動する動きを抑制できる。
ZOCや支援効果を採用する場合は重み付けを味方ユニット敵ユニットのZOCを元にするなどすると、あまり賢く無いAIでもZOCを活かした動きになり戦略性が増す。

693:名前は開発中のものです。
05/07/08 22:36:10 ow81KmR2
そこまでするならマス目をやめて自由移動マップにすりゃいいじゃん。

694:名前は開発中のものです。
05/07/08 23:07:09 ItB7BLbF
つか8角って埋め尽くせなくない?

695:名前は開発中のものです。
05/07/08 23:55:34 Ni7Nense
埋め尽くすのは四角でやるんだよ。
8角形ってのはただ単に、四角+斜めに動ける、というだけ。

696:名前は開発中のものです。
05/07/08 23:59:02 ogA81X+T
斜め移動時は
移動コストに1.4倍とかするんかいな。

697:名前は開発中のものです。
05/07/09 00:38:56 HIt5zJbB
8角形とか言ってるんだしネタだと思っていた…
オレが中学生の頃考えてゴミ箱に捨てたアイデア…
もしかして本気なのか…?

698:名前は開発中のものです。
05/07/09 02:16:24 keYuF5P7
いっそ場所によって三角四角六角のポリゴン風味にバラバラにしてみたらよくね?

699:名前は開発中のものです。
05/07/09 02:36:35 4wEdaWM1
ついでに高さも加えて攻撃方向多種多様で戦術性アップ、つか作んの禿ムズだ。

700:名前は開発中のものです。
05/07/09 07:25:27 lINeCis7
ヘクスやスクエアといったものは移動や空間といったものをデフォルメし分かりやすくするために行ったもの。
なのにわざわざややこしい概念を持ち込むのは本末転倒。

よりリアルに近い動きを持ち込むのであれば、仮想座標(例えばcm単位)で計算し実座標(ピクセル単位)にマップするべき。
OpenGLやDirectXはそうしてマップしているわけで。
ただそうすると仮想座標をヘクス・スクエア単位の大きな座標にマップするのは難しいから自由移動の方が良い。
>>693の言葉は正しい。

中途半端なリアル化は逆に不自然さを増すだけ。

701:名前は開発中のものです。
05/07/09 08:25:30 +kDBT/yn
そういう自由マップの経路探索ってどうやるか典型的アルゴリズムって有るのですか?

702:名前は開発中のものです。
05/07/09 08:31:37 xNuR4CM7
言い方に禿しく語弊があったらしい。すまん。
たしかに移動力が3単位とか多くても5単位のSLGなら八方やってもほとんど意味は無いだろう。
>>690の「広範囲」ってのは少なくとも15単位、多ければ30単位ぐらいの事を指してるんだけど、
そのぐらい広くなれば、当然升目は小さくなるだろうし、自由移動になってもかまわない、というかそっちのほうがいいと思う。
そのぐらいに広さがあれば、菱形はちょっと格好悪いし一工夫してみようぜ、ってことを言いたかったんだ。

もう、何を言っても言い訳にしか聞こえない気がするし、最初の目的はスレに話題を提供することだったんだ。
十分活気付いたし俺はそろそろこのあたりで逃げるか。

703:名前は開発中のものです。
05/07/09 09:07:48 lINeCis7
>>701
基本は692が書いたようなのの解像度を上げたもので良い。
その上で閉じた経路の回り込みを高度に行うか右手回りにするかとかで特色が出る。
自由度が高い場合は単に移動コストだけでなくユニットや地形による経路選択の重み付けがリアル化に繋がる。
例えば移動コストは高いが森林だと防御力の上がる偵察ユニットならあえて平原を選ばず森林を移動し続けるとかね。

704:名前は開発中のものです。
05/07/11 12:39:24 jZ6q26A5
ここに書くのも変かなとは思うんだが・・・

FEで実装して欲しい機能

1. 味方ユニットをつかみ、移動可能範囲が青色に表示されたときに
 そのマスに移動した場合、攻撃されうる敵キャラの数を表示して欲しい
 (※ 0 は邪魔なので従来どおり数字なしがいいと思われる)

 今は、相手ユニットをつかみ、相手の移動及び攻撃可能範囲を目で見て
 MAPのこのマスだな、と目印をつけることもできず覚えなくてはならない
 超長距離で攻撃してくるユニットに気づかなかったり・・・


2. 上記の数字のあるマスにカーソルを合わせると
 攻撃可能となる敵ユニットが点滅する

 点滅、というのはわかればいいんだけど。
 だんだん白くして赤に戻す(光らせる)でもいいし。
 画面外の敵の場合もあるが、数字が合わなければそれもわかる

 攻撃可能箇所(上下左右)が一ヶ所でも、必殺で倒してしまう可能性もあり、
 攻撃可能となるユニットすべてを示す

705:名前は開発中のものです。
05/07/11 12:40:41 jZ6q26A5
3. 数字のあるマスにカーソルを合わせ R ボタンを押すと
 戦闘を仕掛けるときのウィンドウが表示される(武器名, HP, 威力, 命中など)

 顔グラがある敵は顔グラも表示されるとなおよい
 複数の敵キャラの可能性もあり、その場合さらに R ボタンを押すことで
 次のキャラとの戦闘ウィンドウが表示される(1/1, 1/2 --> 2/2 などの表示も必要)
 この時の順番はできればCOMが動かすユニット順がよいが、特に指定はしない
 戦闘ウィンドウが表示されているキャラのみ点滅させ、
 どのキャラとの戦闘ウィンドウか、明確にする

 これにより、「傭兵か。槍でいいな」と思ったらランスバスターorz、
 「剣士か。A.ナイトで楽勝w」-->「!!?? A.キラー!!?? あせふじこorz」な事態が激減

 というか、2回攻撃されるかどうかを調べるのがメンドウすぎなのだ
 こちらから仕掛けられる範囲にいる場合、試しに戦闘ウィンドウを出せばいいが
 A.ナイト等、移動力の低いユニットの場合、
 味方、敵キャラ双方の、速さ、体格、武器の重さを調べ、計算し、比較しなければならない
 こういった計算はCOMがやってください・・・(攻速がステータス画面にあれば・・・)

 (※ 敵キャラが複数の武器、魔道書を持つ場合も R でそれぞれを見られるとなおよい
  この場合、攻撃可能な敵キャラの数と、戦闘ウィンドウ表示時の分母の数は当然合わないが
  該当キャラのみ点滅しているため、混乱はごく初期だけで済むと思われる)

706:名前は開発中のものです。
05/07/11 18:03:59 dZx77fm7
微妙にスレ違いか
「シミュレーションゲーム初心者」専用スレ向けじゃないか?

707:名前は開発中のものです。
05/07/11 18:50:59 0QGcl+Fl
微妙どころじゃない気がす

708:名前は開発中のものです。
05/07/11 19:32:09 uw1e2nob
FEって何?な俺が来ましたよ。

709:名前は開発中のものです。
05/07/11 20:24:10 HbG3yNKb
ファイヤー援助交際

710:名前は開発中のものです。
05/07/12 15:54:21 coyez/vG
>>706
ここはゲーム製作技術の初心者にシミュレーションゲームで実習してみようというスレ。

スレ違いどころか板違い。
日本語も理解できない香具師はカエレ

711:706
05/07/12 16:56:12 vNvKsOE9
え?俺かよ!

712:710
05/07/12 16:57:52 coyez/vG
禿しくすまんかった orz
吊ってくる

713:名前は開発中のものです。
05/07/13 06:56:27 4JWzmIj9
おモロ

714:704
05/07/15 20:40:22 ifymfeCL
>>710
FEで実装して欲しいと書いてはいるが、
こんな機能も実装してみては? という意味合いも。

日本語読めても理解できない香具師には言ってもムダかwww

715:名前は開発中のものです。
05/07/15 21:09:05 w6jeklw2
どっちにしろ、初心者が段階を踏んでプログラム技術を身に付けるっつー主旨からは多少ずれてる気ガス

716:名前は開発中のものです。
05/07/15 21:09:26 w6jeklw2
どっちにしろ、初心者が段階を踏んでプログラム技術を身に付けるっつー主旨からは多少ずれてる気ガス

717:名前は開発中のものです。
05/07/15 21:09:50 w6jeklw2
ゴメソ…

718:名前は開発中のものです。
05/07/16 00:47:22 CjTMqOeg
負け犬必死だなとしか言いようがない。
だったら最初から「FEに実装」じゃなくて「FE見てこういう機能があればよいと思った」
とでも書けばよかっのた。

719:名前は開発中のものです。
05/07/17 04:23:56 SHrD5R6r
先ずはまともな文書いてから言ってくれ…

720:名前は開発中のものです。
05/07/18 17:38:30 c4GW3wJY
移動可能、待機不可能な地点ってどのように計算したらいいんですかね?

移動範囲の計算が、再帰関数で現在地から4方向を探査し、
MAP大の配列にその地点の残り移動力を記入していくやり方で

移動経路計算が移動先地点から移動元地点まで残り移動力が大きい場所を探査するやり方なのですが。

ようは味方を通り抜けられるようにしたいのですが、
MAP大の配列に敵味方の位置を書き込んで
移動範囲・経路計算時にいちいち参照するくらいしか思いつかないのですが
ほかにいい方法はあるでしょうか?

721:名前は開発中のものです。
05/07/18 23:20:56 VDhsg7Dy
>>720
キャラクタが移動した時点でマップのデータにキャラクタがいるというデータを持たせるしかないかな
移動可、移動不可、ダメージ床とかあるんでしょ?
そこに見方キャラ在(通過可)、敵キャラ在(移動不可敵在)のデータを付加するとか
あとはそのデータを1ビットずつで持ってandだかorだかxorだか知らんけどそれらで計算して移動すれば

722:名前は開発中のものです。
05/07/19 22:15:28 TrGcimsz
>>721
レスありです。
>キャラクタが移動した時点でマップのデータにキャラクタがいるというデータを持たせる
という方法でやってみて
最初は移動計算関数の中で処理させようとしたのですがうまくいかず。
結局他キャラクターがいる位置は移動決定時のクリックに反応しないという方法でやってみました。

これ用にブログとか作ってるんですが誰も来ないので、しょぼいですがここで晒してみます。
あまりに汚くて恥ずかしいのでソースは無し。メモリとかCPU負荷とかよく分かりませぬ。重いかも?
level1,2,3,4,10,11あたり実装 C++,DXライブラリ使用
操作できるのは女性キャラのみです。
ESC 終了
左クリ 決定
右クリ キャンセル
カーソルを画面外に持っていくとスクロール

とここまで書いたのにあぷろだにアップできない、なぜ?orz
しかたがないのでこちらのロダからどうぞ
URLリンク(f11.aaa.livedoor.jp)

723:722
05/07/20 02:57:03 rXZ/lObf
>>722も失敗してたorz
livedoorになってからaaacafeもいろいろと不便なようで。
アップできる場所がないどうしたものか・・・

724:名前は開発中のものです。
05/07/21 06:47:38 9r2RMUuP
>>720
自分がやっている方法とたぶん大体同じ。
移動範囲・経路計算時に参照するというのは、計算し終わった後でいいかな。

>>722
使ってない領域もあるから、フルスクリーンでなくウィンドウでもいいと思うが。

>>723
まさか圧縮ファイルが全てダメとか?
昔少し使っていた事があってけど、zipはダメだったけどlzhならいけたはずだが。

725:722
05/07/22 01:04:57 iA3O23Je
>>724
あれからいろいろ調べてzipがだめということに今頃気がつきました。
かなり放置してたので気がつきませんでした。
lzhならいけました。

フルスクリーンは色が24ビットだと表示されないらしいので(DXライブラリが24未対応らしい)
一応フルスクリーンにしておきました。


726:名前は開発中のものです。
05/07/22 08:27:01 B+hZefkw
>>725
そう。zipはいけたはずだと思った。
DLSiteとしたらばはホントダメになったみたいだけど。

727:名前は開発中のものです。
05/07/31 21:02:02 8HWGgLul
名スレっぽいのにすっかり寂れてるので少し質問を

もしFEのようなゲームが作りたいと思ったら
やはりシミュレーションPRGツクールのようなツールか
スクリプトでストーリーなどを
書けるようにして作るんですかね?

728:名前は開発中のものです。
05/07/31 22:44:11 XMD4BRC7
>>727
そんなでかいファイルを常にメモリ上になんて持って置けないだろ?
だから別のファイルに書いておいて必要なときにだけ読みにいくの

729:名前は開発中のものです。
05/07/31 23:11:36 ndjTZ52C
>>727
そうだよ、スクリプトだけで行くこともあるしツールを作ることもある。

730:名前は開発中のものです。
05/07/31 23:34:35 7GrRC3HE
>>728
その理屈って今の PC ではあまり説得力ないと思う。
ゲームのテキストなんて、1MB 作るのも恐ろしく大変なのに。

スクリプトやツールを使うのは保守性の問題と断言していいんじゃないか?


731:730
05/08/01 00:06:37 LsHzmgLA
いやまてよ >>728 の書き込み自体がおかしい事に今気付いた。
そもそも、スクリプトやツールでデータを作る話と
データをメモリに置く話は何の関係も無いじゃないか。

732:名前は開発中のものです。
05/08/05 06:35:50 Dp/AcVLh
関係アリアリジャマイカ

733:名前は開発中のものです。
05/08/27 20:41:51 ThAt36E5
する必要があるのか知らんけど保守

734:名前は開発中のものです。
05/09/25 11:34:37 HBAG1ZAY
まあ保守


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch