トップページgamedev
117コメント34KB

俺をHSPでSLGを作れるまで成長させるスレ

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2008/10/06(月) 01:00:22ID:aU80qve4
FE・サモンナイト のようなのを作りたい

スペック
高2 HSPはやったりやらなかったりで素人
RPGのサンプルも作成中です
0002名前は開発中のものです。2008/10/06(月) 02:34:45ID:/SmTOU4p
期待age
でもサモンナイトみたいなクォータビューは止めといた方がいい。
0003名前は開発中のものです。2008/10/06(月) 02:55:57ID:7dR380Wi
FEのような、トップビューをイメージしています
0004名前は開発中のものです。2008/10/06(月) 02:58:25ID:euuPM+qP
さあこのスレは何日持つかな
0005名前は開発中のものです。2008/10/06(月) 03:13:46ID:n6o8Q3zt
スレはずっと残る
だから俺を〜みたいなのが
いっぱいできるんだ。
削除ないから負の連鎖w
0006名前は開発中のものです。2008/10/06(月) 03:49:08ID:wkTLgrAv
即死ってシステムがあるんだからみんなでレスするのを止めればいいだけの話

だからお前ら絶対に書き込むなよ!絶対だぞ!
0007名前は開発中のものです。2008/10/06(月) 04:00:39ID:6/V35qx2
把握
0008名前は開発中のものです。2008/10/06(月) 05:02:06ID:ykwgm3Ct
こーゆーので最後まで続いたスレってあるの?
0009名前は開発中のものです。2008/10/06(月) 06:15:30ID:QQGpdoDe
書くなよ?絶対書くなよ!?
0010名前は開発中のものです。2008/10/06(月) 12:44:43ID:BOh6Xf2K
俺は始めて1ヶ月ぐらいだけどブロック崩しも作れない
0011名前は開発中のものです。2008/10/06(月) 20:32:38ID:DCu6kH3e
http://pc11.2ch.net/test/read.cgi/gamedev/1159479074/l50
http://pc11.2ch.net/test/read.cgi/gamedev/1006284805/l50
http://pc11.2ch.net/test/read.cgi/gamedev/1059218326/l50
http://pc11.2ch.net/test/read.cgi/gamedev/1103618349/l50

>>1は削除依頼してこいよボケ
0012名前は開発中のものです。2008/10/06(月) 21:01:18ID:n6o8Q3zt
高校生の癖にHSP

高校生なら









vbsだろ
0013名前は開発中のものです。2008/10/06(月) 21:44:53ID:aU80qve4
http://imagepot.net/view/122329694830.jpg
http://imagepot.net/view/122329695012.jpg
http://imagepot.net/view/122329695182.jpg

オーソドックスなタイプのSLGにする予定です
移動可能範囲をどう取得するかで詰まってます
0014名前は開発中のものです。2008/10/06(月) 22:19:37ID:n6o8Q3zt
みんなの期待を裏切りほんきみたいだな

しかし「えとく」は・・・

3の方法でいいと思うよ
考え方書いとく

再帰ループで左右上下とればいいだけ
再帰ループはどんどん減らす
同じところのマスとっても問題ないしね

0015名前は開発中のものです。2008/10/06(月) 22:21:36ID:n6o8Q3zt
スレタイ「成長させる」なんだからコードは
書かなかったけど、もう辞めたいってくらい
悩んだら書くよ
0016名前は開発中のものです。2008/10/06(月) 22:26:10ID:iItKEGwu
>>13 きれいな字ですね♥
0017名前は開発中のものです。2008/10/06(月) 22:29:32ID:n6o8Q3zt
あと言いたいのが
>FE・サモンナイト
とかシラネ〜
HP・MPとか当たり前のじゃないんだから
もうすこし情報を伝える努力しろw
0018名前は開発中のものです。2008/10/06(月) 22:32:28ID:aU80qve4
>>14
>>15
ありがとうございます!
3の方法で頑張ってみます

>>16
味噌汁で目を洗うのをおすすめします^^^^^
0019名前は開発中のものです。2008/10/06(月) 22:33:07ID:aU80qve4
>>17
おk
0020名前は開発中のものです。2008/10/07(火) 10:55:30ID:5J/xamqj
原点からの移動距離制限のついた塗りつぶしみたいなもんだから
再帰でおkなんだろうけどHSPで再帰呼び出しとかできるんだっけ?
0021名前は開発中のものです。2008/10/07(火) 18:01:50ID:Y/rGs7GJ
最近発売したHSPの参考書に、戦略SLGのつくりかたが書いてるから
それ読んで勉強すればいいよ
移動可能範囲の取得法も載ってる

プログラムの上達なんて、独学以外にはあり得ないんだから
こんなスレ立てる暇があったら本読んどきなよ
よっぽど効率がいいよ
0022名前は開発中のものです。2008/10/07(火) 21:53:27ID:5nfw3v5Q
>>21
是非とも書籍名を教えて欲しい

俺も>>1みたいの作りたくてHSP初めてみたけど、正直難しいわ
0023名前は開発中のものです。2008/10/07(火) 22:02:04ID:RKEfyf8o
秀和システムの「HSPプログラミング入門」だな
サンプルスクリプトつきでわかりやすい
0024名前は開発中のものです。2008/10/07(火) 22:08:20ID:iBxrNsSf
ネット探せばいっぱいあるよ
0025名前は開発中のものです。2008/10/07(火) 22:32:04ID:Tz5Il7k0
>>21
>>23
ありがとう、購入してみる

>>22
一緒に頑張りましょう
0026名前は開発中のものです。2008/10/07(火) 22:55:26ID:5nfw3v5Q
>>23
>>24
サンクス。早速明日買ってくる。

ネット上の基礎講座が充実しているってのは、
初めてこういうものに触れる初心者にとってありがたい。
そこから発展させろっていわれると困るけども
0027名前は開発中のものです。2008/10/08(水) 02:37:04ID:2RKHdANm
ネットで調べたけど、
流れとしては

まずは上下左右の情報とって
移動出来たらそのマスにフラグつけて
また3方向調べるのを繰り返す

処理の途中で、フラグがついてるマスに当たったら処理を止めて
処理の分岐点まで戻る
(その際、既にあるフラグと
 今考えているフラグのどちらが短い歩数かを比べる)

1つ先のマスを調べる度に
移動可能な歩数を入れた変数から、地形毎の値を引いて、0かそれ未満なら処理を分岐点まで戻す

壁とかの移動不可のマスは
移動に必要な歩数を極端に高く設定する

でおk?
0028名前は開発中のものです。2008/10/08(水) 03:22:31ID:3i3N8AHZ
>処理の途中で、フラグがついてるマスに当たったら処理を止めて
処理の分岐点まで戻る
(その際、既にあるフラグと
 今考えているフラグのどちらが短い歩数かを比べる)

それは最短経路アルゴリズム
A*ではないか?

0029名前は開発中のものです。2008/10/08(水) 07:05:30ID:ROj5Oo9t
>>27
おk
0030名前は開発中のものです。2008/10/08(水) 07:18:45ID:+0rFaxp5
ここの>>1は、同じ高校生でも中高生で同人ゲー作るとか吹いてたカス共とは大違いだな
あとコテつけてくれ
0031 ◆RCpwXZg4Bs 2008/10/09(木) 01:09:18ID:ywSBlZJ5
何の音沙汰も無いのもあれなので、今まで書いたソースをうpしてみます

buffer 2
picload "chip.bmp" ; スクリーン2にチップを入れる
buffer 3
picload "chara.bmp"
screen 4,320,320,0,320,100 ; 画面保存用
;↑画像保存とかの
screen 0,320,320,0,0,100
;↑メイン画面

i = 0
ii = 0 ;i iiは一時的に使う変数です
glid = 16 ;1マスの大きさ
g_x = 20 ;
g_y = 20 ;マップチップがX・Yにどれだけ置けるのか
;↑変数定義

sdim a,g_x,g_y
sdim map,438 ;マップのテキストデータを入力する変数です
dim ia,g_x,g_y ;イベントや敵や主人公の位置のデータ
;↑配列変数定義

gmode 2 ;黒を透過します
;↑一度だけの命令

0032 ◆RCpwXZg4Bs 2008/10/09(木) 01:09:48ID:ywSBlZJ5
bload "map.txt",map ;mapにmap.txtを読み込む
repeat 20 ;Y座分だけ
i = cnt ;cntは1ループ中しか保存されませんので
repeat 20 ;X座分だけ
ii = cnt ;一応つけてみました
S = strmid(map,i*22+ii,1);Sで一つ一つチェックします
a (ii,i)=S ;aにマップデータをちくちく入れます
pos glid*ii,glid*i :gosub *mapdraw ;mapdrawに行ったり来たり
loop
loop

gsel 4
gcopy 0,0,0,320,320 ;4に0をコピー
gsel 0

hx=10 : hy=7 ;主人公のXYを指定 サンプル中だけで十分です
ia (hx,hy) = 1
pos hx*glid,hy*glid
gosub *hdraw
0033 ◆RCpwXZg4Bs 2008/10/09(木) 01:11:15ID:ywSBlZJ5
*main ;メインの処理 といってもgosubばっかだと思われ
repeat
stick ky
if ky&256 { ;左クリックされた
mx = mousex : my=mousey
mx = mx/glid : my= my/glid
i = ia(mx,my)
if i=1{ ;主人公をクリック
pos 0,e*12
mes "クリック"
e+1
}
}
await 1
loop
*mapdraw
gcopy 2,glid*S,0,glid,glid
return
*hdraw
gcopy 3,glid*0,0,glid,glid
return

>>28
最短経路アルゴリズム…だと…?
それって食べられるんですか?^q^
>>30
つけてみました
0034名前は開発中のものです。2008/10/09(木) 01:14:56ID:ywSBlZJ5
この時点でできてることは、

マップを.txtから読み込み
画面に表示させ

マウスの位置を常に取得して
どこのマスなのかを計算し
クリックされたら、そのマスに主人公がいるかどうかを判断
主人公が居たらメッセージを表示する

ということだけです
移動可能範囲以前の問題で
これだけのプログラムで頭がショートしそうです^^^^^^

ちなみに1マスは16*16で、縦に20マス横に20マス入るので
ウィンドウサイズは320*320となっています。
0035名前は開発中のものです。2008/10/09(木) 01:50:07ID:1JZoVWLv
>>1
HSP歴はどれくらい?
あと他の言語の使用経験とか。
0036 ◆RCpwXZg4Bs 2008/10/09(木) 01:57:36ID:SQ0HKPfQ
>>35
本当にやったりやらなかったりです。
初めて触ったのが小6位ですが、
マトモにプログラム作ってた期間は
全部で半年くらいです
0037 ◆RCpwXZg4Bs 2008/10/09(木) 01:58:57ID:SQ0HKPfQ
あ、他の言語経験は、
Cで"はろーしー"
を評価させたくらいです
0038名前は開発中のものです。2008/10/09(木) 12:03:25ID:8FPs54jG
FEみたいなのって作るの相当面倒だぞ
0039名前は開発中のものです。2008/10/09(木) 20:17:36ID:rUWjBSVI
敵AIが最も難しそう
■ このスレッドは過去ログ倉庫に格納されています