HSPでRPG

このエントリーをはてなブックマークに追加
241名前は開発中のものです。
HSPでRPG作りたいんですが、正直難しいと思います。
でもやりたいんです!!僕はHSPでブロック崩し(アルカノイド)
ぐらいなら作ったことあります。
今のところ、オープニングまで作ったのですが、どなたか僕に
HSPの基礎からすべてを叩き込んでくれませんか??
お願いします。
242名前は開発中のものです。:2006/03/06(月) 02:10:41 ID:av83XSQ2
>>241
 いきなりRPGを作ろうと思わないこと。RPGはいろいろなジャンルのプログラムテクが必要に
なるので、まずそれを身に付けてからでも遅くは無く。あと、プログラミングだけじゃなく、RPG
はシステムを考案する要素が高いので、そのあたりをきちんと決めておかないと、仕様変更の
連続でまともに作れなくなります。

 とりあえずブロック崩しが作れるとの事なので、グラフィック表示、キー入力、キャラ移動、
当り判定、1画面分のマッピングはマスターしていると思うから、次はシューティングで背景の
スクロールと他キャラの同時制御を身に付けるとよろし。成長要素(自弾の拡張・耐久力上昇)
を盛り込めば、RPGのレベルアップ処理に応用できるのでモチベーションは維持できるかと。

 次はアドベンチャーでメニューとイベント処理を身に付けること。
243名前は開発中のものです。:2006/03/06(月) 02:11:30 ID:av83XSQ2
 ぐはっ。ネタにマジレスしてしまった…orz
244名前は開発中のものです。:2006/03/06(月) 16:30:14 ID:udrVls8W
いいではないか
245名前は開発中のものです。:2006/03/11(土) 18:11:39 ID:RYsmwx3R
HSPでRPG作りたいんですが、正直難しいと思います。
でもやりたいんです!!僕はHSPでブロック崩し(アルカノイド)
ぐらいなら作ったことあります。
今のところ、オープニングまで作ったのですが、どなたか僕に
HSPの基礎からすべてを叩き込んでくれませんか??
お願いします。
246名前は開発中のものです。:2006/03/11(土) 21:14:39 ID:gwbGO0UZ
>>245
 いきなりRPGを作ろうと思わないこと。RPGはいろいろなジャンルのプログラムテクが必要に
なるので、まずそれを身に付けてからでも遅くは無く。あと、プログラミングだけじゃなく、RPG
はシステムを考案する要素が高いので、そのあたりをきちんと決めておかないと、仕様変更の
連続でまともに作れなくなります。

 とりあえずブロック崩しが作れるとの事なので、グラフィック表示、キー入力、キャラ移動、
当り判定、1画面分のマッピングはマスターしていると思うから、次はシューティングで背景の
スクロールと他キャラの同時制御を身に付けるとよろし。成長要素(自弾の拡張・耐久力上昇)
を盛り込めば、RPGのレベルアップ処理に応用できるのでモチベーションは維持できるかと。

 次はアドベンチャーでメニューとイベント処理を身に付けること。
247名前は開発中のものです。:2006/03/11(土) 21:15:22 ID:gwbGO0UZ
ぐはっ。ネタにマジレスしてしまった…orz
248名前は開発中のものです。:2006/03/11(土) 21:24:50 ID:QXDXslQw
249名前は開発中のものです。:2006/03/14(火) 18:35:13 ID:GInoHtdf
HSPでRPG作りたいんですが、正直難しいと思います。
でもやりたいんです!!僕はHSPでMMORPG(FF11)
ぐらいなら作ったことあります。
今のところ、オープニングまで作ったのですが、どなたか僕に
HSPの基礎からすべてを叩き込んでくれませんか??
お願いします。
250名前は開発中のものです。:2006/03/15(水) 11:35:49 ID:5IbhmKpH
・・・。
同じ文ありすぎですぉ・・・。
251名前は開発中のものです。:2006/03/16(木) 00:33:52 ID:eRkKGol4
よし、俺について来い!
252名前は開発中のものです。:2006/03/21(火) 08:57:11 ID:qDEKE9+t
HSPでRPG作りたいんですが、正直難しいと思います。
でもやりたいんです!!僕はHSPでブロック崩し(アルカノイド)
ぐらいなら作ったことあります。
今のところ、オープニングまで作ったのですが、どなたか僕に
HSPの基礎からすべてを叩き込んでくれませんか??
お願いします。

253名前は開発中のものです。:2006/04/19(水) 21:58:59 ID:vhZ7ka1f
HSPでRPG作りたいんですが、正直難しいと思います。
でもやりたいんです!!僕はHSPでブロック崩し(アルカノイド)
ぐらいなら作ったことあります。
今のところ、オープニングまで作ったのですが、どなたか僕に
HSPの基礎からすべてを叩き込んでくれませんか??
お願いします。
254名前は開発中のものです。:2006/04/20(木) 09:44:57 ID:EMny2njT
>>249
 いきなりRPGを作ろうと思わないこと。RPGはいろいろなジャンルのプログラムテクが必要に
なるので、まずそれを身に付けてからでも遅くは無く。あと、プログラミングだけじゃなく、RPG
はシステムを考案する要素が高いので、そのあたりをきちんと決めておかないと、仕様変更の
連続でまともに作れなくなります。

 とりあえずMMORPGが作れるとの事なので、グラフィック表示、キー入力、キャラ移動、
当り判定、1画面分のマッピングはマスターしていると思うから、次はシューティングで背景の
スクロールと他キャラの同時制御を身に付けるとよろし。成長要素(自弾の拡張・耐久力上昇)
を盛り込めば、RPGのレベルアップ処理に応用できるのでモチベーションは維持できるかと。

 次はアドベンチャーでメニューとイベント処理を身に付けること。
255名前は開発中のものです。:2006/04/20(木) 16:56:26 ID:kWNL2aTY
256名前は開発中のものです。:2006/04/20(木) 17:19:06 ID:Anty6Cdq
>>255
>>242,246
257名前は開発中のものです。:2006/05/10(水) 03:29:45 ID:MjqwJ3xa
HSPでRPG作りたいんですが、正直難しいと思います。
でもやりたいんです!!僕はHSPでブロック崩し(アルカノイド)
ぐらいなら作ったことあります。
今のところ、オープニングまで作ったのですが、どなたか僕に
HSPの基礎からすべてを叩き込んでくれませんか??
お願いします。
258名前は開発中のものです。:2006/05/10(水) 10:23:03 ID:NUqaBftN
| 釣れますか?                ,
\                         ,/ヽ
   ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄         ,/   ヽ
   ∧_∧          ∧∧  ,/         ヽ
  ( ´∀`)         (゚Д゚,,),/            ヽ
  (    )      (|  つ@               ヽ
  | | |   ___ 〜|  |                ヽ
  (__)_) |――|.  ∪∪                     ヽ
   ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|                 ヽ
  /⌒\/⌒\/⌒\/⌒\|彡~゚ ゜~ ~。゜ ~ ~ ~ ~~ ~ ~~ ~ ~~ ~~ ~~
  ⌒\/⌒\/⌒\/⌒\/⌒\彡 〜 〜〜 〜〜 〜〜 〜 〜
259名前は開発中のものです。:2006/05/10(水) 10:44:57 ID:hiutgL36
>>257
マップ移動できれば大丈夫でしょ
HSPでRPGは難しいというより面倒
大規模なデータ構造だと辛そうだね

サンプルソースは色んなとこにあるよ、下は一例
ttp://www2.pf-x.net/~shink/hspindex.html
260名前は開発中のものです。:2006/05/10(水) 18:27:38 ID:n4uiCo3X
HSPじゃなくてもRPGは面倒だけどな。
相当な忍耐がないとファミコン以下のもんしかできん。
261名前は開発中のものです。:2006/07/24(月) 07:50:43 ID:oArTn05k
http://www.onionsoft.net/hsp/ ここにhsp3最新版あるよ
262名前は開発中のものです。:2006/09/06(水) 20:22:20 ID:aczt72Y/
ttp://www.smith-project.jp/main/index.html
ここは参考になるかな
263名前は開発中のものです。:2006/09/07(木) 23:18:22 ID:2FdFXXyi
ここが有名な
「〜で〜したいんですが、正直難しいと思います。 」
のおおもとのスレか
264名前は開発中のものです。:2007/03/11(日) 09:22:38 ID:2p/x7h0m
HSPでRPG作りたいんですが、正直難しいと思います。
でもやりたいんです!!僕はHSPでブロック崩し(アルカノイド)
ぐらいなら作ったことあります。
今のところ、オープニングまで作ったのですが、どなたか僕に
HSPの基礎からすべてを叩き込んでくれませんか??
お願いします。
265名前は開発中のものです。:2007/03/11(日) 21:53:58 ID:woiS+kpN
>>264
 いきなりRPGを作ろうと思わないこと。RPGはいろいろなジャンルのプログラムテクが必要に
なるので、まずそれを身に付けてからでも遅くは無く。あと、プログラミングだけじゃなく、RPG
はシステムを考案する要素が高いので、そのあたりをきちんと決めておかないと、仕様変更の
連続でまともに作れなくなります。

 とりあえずブロック崩しが作れるとの事なので、グラフィック表示、キー入力、キャラ移動、
当り判定、1画面分のマッピングはマスターしていると思うから、次はシューティングで背景の
スクロールと他キャラの同時制御を身に付けるとよろし。成長要素(自弾の拡張・耐久力上昇)
を盛り込めば、RPGのレベルアップ処理に応用できるのでモチベーションは維持できるかと。

 次はアドベンチャーでメニューとイベント処理を身に付けること。
266名前は開発中のものです。:2007/03/11(日) 22:22:59 ID:C2VUxkMj
なんか悲しい…
267名前は開発中のものです。:2007/03/11(日) 22:34:13 ID:k4eFOmxa
俺はワロタ
268名前は開発中のものです。:2007/03/11(日) 23:25:13 ID:o8jznlMp
俺はツマンネ('A`)
269名前は開発中のものです。:2007/03/12(月) 08:45:04 ID:HjqKfI9M
これはマジ質問なのですが、hspでrpg作る場合
アイテムや主人公・敵キャラクターのデータはどう扱えばいいんでしょうか。
例えばアイテムの情報はあらかじめアイテム情報を書き込んだテキストファイルから読み込むとして、
テキストの一列ごとにアイテムの名前、ステータスなどを書き込んでいってそれをファイル側で読み込む。
だけど、そうした時にプログラム側ではそのテキストを読み込むとき、
そのアイテムがあるラインを指定してやらないと読み込めないので
アイテム名でアイテムの情報をテキストから読み出せなくて、やり辛いと思うんです。
それともインデックスを用意しておいて、指定したイニシャルと同じアイテムリストを全部バッファに
読み込んで比較してアイテムの情報を読み込む???
それと、所持アイテムの処理の仕方もわかりません。
270名前は開発中のものです。:2007/03/12(月) 12:40:58 ID:zNGWNd+L
マジレスするとnotegetとcsvstrで読み込んで、配列変数に入れる。
その後、#enumで振った名前でアクセスすれば構造体みたいなもんだろ。
271名前は開発中のものです。:2007/03/13(火) 06:16:11 ID:K8oTsumj
>>269
#define gs(%1,%2,%3,%4=',') getstr %1,%2,%3,%4:%3+strsize
#module
//IDに合わせた要素に文字列データを入れていく
//p1=ID順に入る変数名 p2=元の文字列データ statに一番大きいIDが入る
#deffunc setlst array list,str temp,local maxid,local _temp
_temp=temp:sdim list :notesel _temp
repeat noteinfo(0)
noteget n,cnt
getstr id,n,0,','
list(int(id))=strmid(n,strsize,strlen(n))
if int(id)>maxid {maxid=int(id)}
loop
noteunsel
return maxid
#global
load="10,ポーション,100,5,回復(小)\\雑魚が良く落とす\n15,回復剤,200,10,回復(大)\n"
load+"20,解毒剤,320,30,毒消し\\たまに効かない\n100,短剣,2000,100,80,5,5,武器\\一番弱い武器"
setlst item,load:itemmax=stat+1 ;使われてる要素の数はID+1になる
load="1,スライム,10,3,5,10,10,10,15\n10,レッドスライム,15,10,20,15,15\n50,モンスター,25,30,120,20"
setlst mons,load:monsmax=stat+1
load="1,名無しA,5,100,30,5000,12345\n5,ななしB,10,300,200,10000,23456"
setlst play,load:playmax=stat+1
//プレーヤーIDに対応した所持アイテムリストIDが使われる
load="1,3,100,1,10,3,20,5\n5,4,15,1,10,10,20,5,100,2" ;所持アイテムリストID,種類数,アイテムID,個数,・・・
setlst pitem,load:pitemax=stat+1
mess="モンスター名","HP","MP","EXP","所持item1","所持item2","所持item3","所持item4"
pmess="名前","レベル","HP","MP","所持金","EXP","所持アイテム種類数","個","アイテム個数"
imess="名前","値段","重さ","説明","名前","値段","重さ","攻撃力","防御力","魔力","説明"
>272 に続く・・・
272271:2007/03/13(火) 06:19:51 ID:K8oTsumj
>271 からの続き
repeat playmax:
temp=play(cnt):if temp="" {continue } ;存在しないIDは飛ばす
mes "プレーヤーID: "+cnt:index=0
repeat 6
gs p,temp,index:mes pmess(cnt)+": "+p ;プレーヤーステータス表示
loop
index=0 :pi=pitem(cnt) :gs i,pi,index :mes pmess(6)+": "+i ;所持品の種類
repeat int(i),7:
gs i,pi,index :gs is,pi,index ;アイテムIDと所持数
itemstr=item(int(i)) :getstr n,itemstr,0,',' ;アイテムIDからアイテムデータ取り出し
y=ginfo(23) :button gosub n,*item_mes :butid(stat)=int(i)
pos 70,y:mes is+pmess(7):pos 0,y+24:loop:mes:loop:
pos 300,0:
repeat monsmax
:m=mons(cnt):if m="" {continue }:
index=0:mes "モンスターID: "+cnt:
repeat 4:gs d,m,index:mes mess(cnt)+": "+d:loop ;モンスターデータ表示
repeat 4,4:gs d,m,index:s=stat:itemstr=item(int(d)):getstr n,itemstr,0,',' ;モンスターデータからアイテム名を収得
mes mess(cnt)+": "+n:if s!',' {break}:loop:mes:loop:stop ; , が無かったら所持アイテム終わり
*item_mes:
iid=butid(stat) :a=item(iid)
c=0:screen 1,200,96+(iid>=100)*100,8+16,300,300:cls 1
repeat 4+(iid>=100)*3,(iid>=100)*4 ;ID100以上は装備品として扱う
gs b,a,c :cc=0:bb=""
repeat:gs d,b,cc,'\\' ; "\\" これを改行として文字列操作
if stat!'\\'{bb+d:break}
bb+d+"\n"
loop
if imess(cnt)="名前"{title imess(cnt)+": "+bb}else{mes imess(cnt)+": "+bb}
loop:gsel 0:return
273名前は開発中のものです。:2007/03/13(火) 06:49:46 ID:K8oTsumj
>>269
>それともインデックスを用意しておいて、指定したイニシャルと同じアイテムリストを全部バッファに
>読み込んで比較してアイテムの情報を読み込む???

IDを振ってそれを基準に処理すればいんじゃね?
IDで管理しとけばアイテムの名前変えても他を弄る必要ないし
追加削除してもIDを変えなければ直接関係有る物しか弄らなくていい
274名前は開発中のものです。:2007/03/13(火) 21:34:56 ID:lw1fUGj9
>>270
>>271
参考にします。ありがとうございました。

それから、ソースを書いてもらってすいません。
よくできていて感心してしまいました・・・
275名前は開発中のものです。:2007/03/14(水) 02:09:15 ID:pkgaAWGt
>>274 ゲーム中に変化があるのは整数型でデータを持ってた方が扱いやすいと思う
#define PLAYMAX 10
#enum PLAY1=0
#enum PLAY2
#enum playNAME=0
#enum playLEVEL=6
#enum playHP
#enum playMP
#enum playEN
#enum playEX
#enum playTEMP
#enum playtempEND=playTEMP+10
#enum playEND
#enum playITEM
#enum playitemEND=playITEM+20
#enum playdatEND
pmess="名前","レベル","HP","MP","所持金","EXP","所持アイテム種類数","個","アイテム個数"
load="10,ポーション,100,5,回復(小)\\雑魚が良く落とす\n15,回復剤,200,10,回復(大)\n"
load+"20,解毒剤,320,30,毒消し\\たまに効かない\n100,短剣,2000,100,80,5,5,武器\\一番弱い武器"
setlst item,load:itemmax=stat+1:dim play,playdatEND,PLAYMAX:n="名無しA":
memcpy play,n,strlen(n),playdatEND*4*PLAY1,0:play(playLEVEL,PLAY1)=5,100,30,5000,12345
play(playITEM,PLAY1)=100,1,10,3,20,5:n="ななしB":memcpy play,n,strlen(n),playdatEND*4*PLAY2,0
play(playLEVEL,PLAY2)=10,300,200,10000,23456:play(playITEM,PLAY2)=15,1,10,10,20,5,100,2
repeat playmax:if play(0,cnt)=0 {continue } ;存在しないIDは飛ばす
pid=cnt:mes "プレーヤーID: "+pid :sdim n,5*20:memcpy n,play,20,0,(playdatEND*4)*pid
mes pmess(0)+": "+n:repeat playTEMP-playLEVEL:mes pmess(cnt+1)+": "+play(cnt+playLEVEL,pid) :loop:b=""
repeat :if play(playITEM+cnt*2,pid)=0{icnt=cnt:break}
i=play(playITEM+cnt*2,pid):is=play(playITEM+cnt*2+1,pid) ;アイテムIDと所持数
itemstr=item(i) :getstr n,itemstr,0,',' ;アイテムIDからアイテムデータ取り出し
b+n+" "+is+pmess(7)+"\n":loop:mes pmess(6)+": "+icnt:mes b:loop:stop
↑271のモジュールを使うのが前提
276名前は開発中のものです。:2007/05/17(木) 20:54:25 ID:QslptYDj
パーティー数・戦闘参加人数に制限のないツールってあります?
277名前は開発中のものです。:2007/05/17(木) 21:02:55 ID:SRf6VBZ+
278名前は開発中のものです。:2007/05/17(木) 22:52:18 ID:QslptYDj
……すみません、別スレに投下するつもりが誤爆しました…
279名前は開発中のものです。:2008/07/20(日) 19:07:16 ID:2Ijm4eAV
>>120
この人が作ったRPGの紹介動画、ニコニコ動画のコンテストかなんかで賞貰ってたよ
そんな人が数年前にこんなレスしてたってのはなんかあれだね、面白いね
俺も頑張らないと
280名前は開発中のものです。:2009/08/10(月) 13:04:26 ID:sFddjEWZ
2年で3レスか…
babelっていうゲームはHSPらしいが
281名前は開発中のものです。:2009/08/11(火) 00:41:24 ID:q2fvLOcR
ちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこ
ちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこ
ちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこ
ちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこ
ちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこ
282名前は開発中のものです。:2009/08/16(日) 12:34:20 ID:mUJcX4L/
まんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこ
まんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこ
まんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこ
まんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこ
まんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこ
まんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこ
283名前は開発中のものです。:2009/08/17(月) 18:09:14 ID:rLW8yDpb
たていすかんなにらぜ゜ちとしはきくまのりれれけむむ
284名前は開発中のものです。:2010/02/04(木) 05:44:42 ID:AjRDC0nc
なんかもう一個のほうのスレで頑張ってる奴がいるから俺はこっちで頑張ろうかな
285名前は開発中のものです。:2010/02/04(木) 11:10:06 ID:j8+pLPQE
じゃあ俺は応援する
286名前は開発中のものです。:2010/02/06(土) 19:45:13 ID:eBoJBxgs
>>120
この文字だけのRPGすげーカッケェーっすね
センスがパネェっす
287名前は開発中のものです。:2010/02/11(木) 17:05:34 ID:w5NM98dn
マップエディタ作るのが難しいっす
既存のエディタを借用すれば楽だけどせっかくなので全部自作を目指すのだった
288名前は開発中のものです。:2010/02/12(金) 15:57:35 ID:etgrazeU
開発中はインタプリタで実行して
exeファイルにするときはコンパイルするってこと出来ないかな
289名前は開発中のものです。:2010/02/16(火) 00:46:29 ID:Tfo84wDg
なんかマップエディタよりドット絵が描きたくなってきたです
290名前は開発中のものです。:2010/02/20(土) 01:33:10 ID:tShVZmmA
ゲーム制作より絵を描く方に興味を持ったのでそっちに行きます
それではお元気で(・∀・)/ヾ〜
291名前は開発中のものです。:2010/02/21(日) 08:41:22 ID:zQLFxu4y
>>289から>>290にいって、自分の素材を使いたいがためにゲーム制作に戻ってきたっていうタイプもいる。
292名前は開発中のものです。:2010/06/18(金) 23:39:46 ID:x/+wsHqQ
自分で作ったプログラムと絵と音楽が合わさると感動するわな
293名前は開発中のものです。:2010/06/26(土) 17:41:26 ID:p8tPjhCB
自分で使うのが恥ずかしいってことも・・・そうそう無いか
音楽とか作るの苦手だわ、俺
294名前は開発中のものです。:2010/08/05(木) 16:31:18 ID:+9m6bvWS
まちびとに話しかける度に、文字を表示したいのですが、文がたくさんありすぎて
画面がみずらくなってきました。
文だけを別ファイルにするほうほうとかはあるのですか?
295名前は開発中のものです。:2010/08/05(木) 22:42:17 ID:WhyL8tJg
あります
296名前は開発中のものです。:2010/08/29(日) 10:17:26 ID:Oy6sz1B5
>>294
「みずらく」じゃなくて「みづらく」な
297名前は開発中のものです。:2010/10/06(水) 01:38:18 ID:p01vOLw3
戦闘部分のソースがカオスになってきた
298名前は開発中のものです。:2010/10/09(土) 21:35:38 ID:nr26u1G7
ho
299名前は開発中のものです。:2011/01/06(木) 22:25:24 ID:FIV/E0G/
無料RPG製作ツール「ロープレジェネレーター」
ttp://sekisekki.net/index.htm
 直感的操作で簡単なゲームが作れます。 簡単に配布可能な状態に出力することができます。
(HSP製のソースコード付きで、スクリプトの知識があれば自由度の非常に高いカスタマイズ
ができます)
他にも仲間預かり機能(100人も)や、仲間の状態/状態異常を細かく設定できたり、
乗り物が作れたりゲーム中に画像を差し込んだり、回転やフラッシュなどのエフェクト
なんかも簡単に作れる様です。戦闘はデフォだとドラクエ系。
移動は矢印キーの他に、キャラがマウスを追っかけたりするとのこと。
 他にはオートアクションというのがあってオリジナルシステムの製作に役に立つかも
しれない機能です。これは、マップエディタで設定することで、「マップに入った時・
出た時・一歩歩いた時・戦闘開始前」に自動的に実行されるアクションを設定できる
機能です。
■分からないことや要望は掲示板へどうぞ。他にもいろいろ進化中みたい。
300名前は開発中のものです。:2012/06/01(金) 12:21:34.45 ID:l7w1OgnU
>>294が何年前かドキドキしながら書いてみる

別ファイルにまとめて書いた文章&文章表示命令にそれぞれラベル付けて、メインファイルからgosubで呼び出して使う

…の前に、文章まとめた別ファイルを#includeな、#include

#include だぞ、忘れるな
301名前は開発中のものです。:2012/06/03(日) 11:10:09.88 ID:81pO3LcG
>>300
ありがとうございます。

294じゃないけどHSP本家BBS見て荒んでた心が和んだw
302名前は開発中のものです。:2012/06/05(火) 13:25:06.21 ID:cxs02+xg
>>301
見てくれてて良かった……
なら詳しく書くけど、メインファイルに

#include "(別のファイル名)"

を記述しておくと、ここで指定した名前のファイルがコンパイル時に結合されて、これ以降は同一ファイルのように扱える

ただし、別ファイル内で作成した変数やラベルなどを呼び出すより前に#include命令がないとエラーになる(存在しないものとして扱われる)から、なるべく最上段に書いとくのがいいよ
303名前は開発中のものです。:2014/03/01(土) 18:22:21.95 ID:WBxaUI7+
気がついた
304名前は開発中のものです。:2014/03/02(日) 09:40:09.56 ID:atW71/f2
sage
305名前は開発中のものです。:2014/03/06(木) 17:54:53.54 ID:yEMfzKkL
HSPもそろそろクラスや構造体使えるようになっても良いよな
データ管理がキツイ
306名前は開発中のものです。:2014/03/06(木) 23:01:34.80 ID:rL+xy/Vr
>>305
モジュール変数使おうぜ
307名前は開発中のものです。:2014/04/06(日) 13:13:48.60 ID:Q3z9QZOl
ドラクエのような、全方向MAPスクロールって、割と簡単に作れるのね。
(まだ、作ってる途中だけど)

ちょっと、ビックリした。
308名前は開発中のものです。:2014/04/06(日) 13:33:11.66 ID:ca6AyU1Z
mjd?あれ難しくない?>マップスクロール
以前やろうとしたけど、難しくて上手くいかなかった
しょうがないので、マップは固定させて、
プレイヤーが動き回るようにした覚えがある
309名前は開発中のものです。:2014/04/06(日) 14:48:41.93 ID:ca6AyU1Z
暇だしHSPでRPG作ってみるか
とはいえ、絵は描けんし音楽も作れんしプログラムもろくに書けん

・マップはフィールド/村のみ
当然ながらマップスクロールなんてものは無し ムズいから
・戦闘は攻撃/逃げるのみ
 魔法やらアイテムは難しいから無し
・音楽もマップチップも借り物

ぎりぎり何とかRPG?と呼べるレベルの
DQ1を超劣化させたRPGもどき

・・・これでも完成できるかどうかわからんなあ・・・
310名前は開発中のものです。:2014/04/06(日) 16:21:59.89 ID:ca6AyU1Z
プロジェクトスレッドについて 概要や製作状況をまとめたWebページがあることが最低条件です

とか書いてあったので、ひとまずブログ作成
zipファイルはアップロードできるので、
作成途中のファイルはここにアップしていく予定

ttp://hsprpgseisaku2c.blog.shinobi.jp/%E6%9C%AA%E9%81%B8%E6%8A%9E/%E8%A3%BD%E4%BD%9C%E3%83%A1%E3%83%A2%201
311307:2014/04/07(月) 10:51:54.10 ID:ezV4jUIS
ブログたてたんだ。
フットワーク軽いね。

自分は、
A=裏仕事用のウィンドー、
B=表示用のウィンドー、
C=キャラクターチップ用のウィンドー、
D=MAP用のウィンドーと、
4つ用意して、

redraw 0
DのチップをAにちまちまとコピー
AをごっそりBにコピー
CもBにコピー
redraw 1

っていう、
むちゃくちゃ単純な作業の繰り返しで為したんだけど、
キャラクターはアニメーションするし(わざわざ前の絵を消さなくても、AをBにコピーした段階で勝手に消える)、
スクロールはドット単位で出来るし。
なんか、ずいぶん楽だなぁ。
って思っただけです。
(実験に使用したマシンは、Pen3時代のボロマシンです)

ちょっと改良すると、
洞窟物語のようなアクションゲームにも流用できるし、
スクロールするシューティングにもなるし、
『あれ? ゲーム作りって、こんな簡単だったっけ?』って思ったんで。
312名前は開発中のものです。:2014/04/08(火) 17:19:31.62 ID:bsYD0gLY
ダウンロードしたよ。

まずは、フリーの素材を適当に見繕ってきて、見栄えを良くしてみるといいんじゃないかな?
作りたいもののイメージが固まると、モチベーションが高まるよ。
313名前は開発中のものです。:2014/04/08(火) 22:50:08.16 ID:WdwFRxgH
アドバイスありがとー
素材探すのめんどくさかったんで、画像は超適当
フリー素材探してみます
314名前は開発中のものです。:2014/04/10(木) 16:42:08.19 ID:kBrjlf64
参考になるかな?

マップを表示する
ttp://www.geocities.jp/hspgame2/rpg1.htm
315名前は開発中のものです。:2014/04/12(土) 12:50:34.17 ID:tJO0Cf3l
ありがとー
他人のスクリプト読んで勉強せんとなー
そもそもマニュアルの理解もあやふやだしな・・・
316名前は開発中のものです。:2014/04/14(月) 23:43:51.10 ID:DNwjyPET
さて、309に書いたことはほぼ出来たので・・・
後はスクリプトを拡張していこうと思ってる

今日はマップチップとの当たり判定。
移動不可の地形には移動できないようにした。
317名前は開発中のものです。:2014/04/15(火) 19:57:17.87 ID:jaj/AwrL
どうぐ → アイテム一覧 → アイテム説明みたいな
メニューを次々表示していくのはシーン番号で管理するのかな

メニューごとに表示フラグを用意して
現在カーソルを持ってるメニューはどれか〜とか
キャンセルしたらどういう順番でメニューが消える〜とか

それをまたインプットに反映させるのもややこしそう
318名前は開発中のものです。:2014/04/15(火) 23:39:18.15 ID:JOMG6Oxk
>>317
それ難しいねえ…
今自分の作ってるやつは、それより遥か下のレベルなので、
そんなの考えたことなかった

どうぐ → アイテム一覧 → アイテム説明
この流れの場合、メニューは3つ全部表示されてるのが普通かと思うんで
各メニューごとに表示のフラグがいるわけね そうかー・・・
flag_menu(0):どうぐ
flag_menu(1):アイテム一覧
flag_menu(2):アイテム説明
みたいな感じかな
んで、今カーソルがあるメニュー示す変数を作って(たとえばmenu_number=1とか)
キャンセルしたら、flag_menu(menu_number)=0 : menu_number--
とか。
・・実際にRPG作ってみた人に聞いてみないと、何ともわからないなあ
319名前は開発中のものです。:2014/04/16(水) 22:50:44.96 ID:ckCZB3EQ
さて、次は街にいるNPCを作っていく予定
プレイヤーや通行不可チップとの当たり判定とか
プレイヤーとの会話とか。めんどくさそう・・・
320名前は開発中のものです。:2014/04/17(木) 10:02:28.90 ID:RM8w7nSJ
頑張ってますね。
321名前は開発中のものです。:2014/04/19(土) 03:01:59.27 ID:pwx7j+mD
ありがとー ぼちぼちやってきます

当たり判定完成
次はNPCとプレイヤーとの会話
会話ウィンドウの表示があるのでちょっと手間かな・・・
322名前は開発中のものです。:2014/04/19(土) 22:27:09.76 ID:pwx7j+mD
NPCとの会話完成
次はいよいよ↑で難しそう、と書いたメニュー表示か・・・
ステータス、アイテム、魔法、装備、セーブ等々
323名前は開発中のものです。:2014/04/20(日) 08:12:36.11 ID:EaVHaGow
・メニューを1つでも表示してたらメニュー操作モード
・カーソルを受け付けるのは最後に出したメニュー
・メニューを出した順に描画するが、描画済みバッファを利用たほうが速い
・どの順にメニューを表示したかのスタックを用意する(配列とインデックス)
・メニュー毎に保持カーソル・項目数・項目名・ジャンプ先・表示位置を保持

要素毎に分解して考えると簡単かも
324名前は開発中のものです。:2014/04/20(日) 09:27:28.43 ID:tgLb1tKI
>>323
うお、凄い・・・
めっちゃ助かります ありがとう
325名前は開発中のものです。:2014/04/21(月) 12:38:51.76 ID:zmlcMClv
>>308
マップ上のキャラクター座標を中心に、周囲?×?ドットぶんを切り出して毎回描画するだけ
?、は移動マップ表示部分(というか視界)のサイズね
100*100サイズのマップでキャラクター位置が50,50だとしたら、50,50を中心にした視界範囲ぶんを切り出す

でもこれだと、キャラクターがマップ端にきたときにマップ外の何も無いとこ読み込もうとするエラーが出るから、あらかじめマップ外周を移動不可マスで囲んで読み込みぶんを確保しておくか、または読み込み不足ぶんをマップ反対側から切り出してループ構造にする…とかかな
326名前は開発中のものです。:2014/04/21(月) 21:22:20.71 ID:F/3c8DQj
マップがループ構造になってるRPGって良くあるけど、
そういうことだったのね・・・
327名前は開発中のものです。:2014/04/23(水) 12:18:16.93 ID:UD6vo4r0
>>326
他のゲームの仕組みは知らないけど、無限大の連続マップは無理だろうしたぶんこの手段かなと思う

あと、これはruby言語で試作中の方法だけど…

ベースマップを1マス辺り1ドットのサイズで、移動不可マス、移動可能マスを合わせて全5色〜くらいで色分けして描く
で、キャラ座標周囲の視界ぶん?×?マスを1ドットづつ色判定して、判定色ごとに決められた地形用マップチップを定位置に張り付ける…てな方法なら、数千×数千マスなんて広大なマップも作れそう
328名前は開発中のものです。:2014/04/23(水) 12:31:13.72 ID:UD6vo4r0
例えばドラクエで例えると…
3×3が視界範囲だとして、ベースマップのキャラ座標左上のドット色が0,0,0の通行不可色なら、16×16サイズの岩山チップを視界表示部の左上に描画
キャラ座標真上が255,255,255の通行可能色なら草原チップを表示部真ん中上に、キャラ座標右上が200,255,200なら森チップを表示部右上に……
これをフレーム毎に上段、中段、下段と繰り返す

視界範囲が広がるとフレームあたりのドット色判定処理が飛躍的に多くなるし、1ドットづつのなめらか移動じゃなくて地形チップ1枚ごとの古臭い移動表示にはなるけど、ベースマップのサイズは小さて済むから好きなだけ広いマップが作れる
329名前は開発中のものです。:2014/04/27(日) 13:38:32.40 ID:Kzmc8tD2
へえー・・・
自分はフリーソフトのマップエディタ落としてきて、ちまちま
マップデータ作ってたんだけど、そんなやり方もあるのね
マップデータの書き方って色々あるんだな
330名前は開発中のものです。:2014/05/28(水) 15:11:51.72 ID:3EakAuiE
ttp://sekisekki.net/regene/
HSPのRPGジェネレーター

ソースリスト付きだから、参考になるんじゃないかな?
331名前は開発中のものです。
ドルアーガの塔は、MAPデータ60バイト(裏モードを合わせると120バイト)
だと聞いてぶったまげた俺がいる。
60キロバイトじゃないぞ。
60バイトだぞ。