- 1 名前:HSP [04/04/25 23:19 ID:FQRAx6j0.net]
- HSPでRPG作りたいんですが、正直難しいと思います。
でもやりたいんです!!僕はHSPでブロック崩し(アルカノイド) ぐらいなら作ったことあります。 今のところ、オープニングまで作ったのですが、どなたか僕に HSPの基礎からすべてを叩き込んでくれませんか?? お願いします。
- 258 名前:名前は開発中のものです。 mailto:sage [2006/05/10(水) 10:23:03 ID:NUqaBftN.net]
- | 釣れますか? ,
\ ,/ヽ  ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ,/ ヽ ∧_∧ ∧∧ ,/ ヽ ( ´∀`) (゚Д゚,,),/ ヽ ( ) (| つ@ ヽ | | | ___ 〜| | ヽ (__)_) |――|. ∪∪ ヽ  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄| ヽ /⌒\/⌒\/⌒\/⌒\|彡~゚ ゜~ ~。゜ ~ ~ ~ ~~ ~ ~~ ~ ~~ ~~ ~~ ⌒\/⌒\/⌒\/⌒\/⌒\彡 〜 〜〜 〜〜 〜〜 〜 〜
- 259 名前:名前は開発中のものです。 [2006/05/10(水) 10:44:57 ID:hiutgL36.net]
- >>257
マップ移動できれば大丈夫でしょ HSPでRPGは難しいというより面倒 大規模なデータ構造だと辛そうだね サンプルソースは色んなとこにあるよ、下は一例 ttp://www2.pf-x.net/~shink/hspindex.html
- 260 名前:名前は開発中のものです。 mailto:sage [2006/05/10(水) 18:27:38 ID:n4uiCo3X.net]
- HSPじゃなくてもRPGは面倒だけどな。
相当な忍耐がないとファミコン以下のもんしかできん。
- 261 名前:名前は開発中のものです。 mailto:sage [2006/07/24(月) 07:50:43 ID:oArTn05k.net]
- www.onionsoft.net/hsp/ ここにhsp3最新版あるよ
- 262 名前:名前は開発中のものです。 [2006/09/06(水) 20:22:20 ID:aczt72Y/.net]
- ttp://www.smith-project.jp/main/index.html
ここは参考になるかな
- 263 名前:名前は開発中のものです。 mailto:sage [2006/09/07(木) 23:18:22 ID:2FdFXXyi.net]
- ここが有名な
「〜で〜したいんですが、正直難しいと思います。 」 のおおもとのスレか
- 264 名前:名前は開発中のものです。 [2007/03/11(日) 09:22:38 ID:2p/x7h0m.net]
- HSPでRPG作りたいんですが、正直難しいと思います。
でもやりたいんです!!僕はHSPでブロック崩し(アルカノイド) ぐらいなら作ったことあります。 今のところ、オープニングまで作ったのですが、どなたか僕に HSPの基礎からすべてを叩き込んでくれませんか?? お願いします。
- 265 名前:名前は開発中のものです。 mailto:sage [2007/03/11(日) 21:53:58 ID:woiS+kpN.net]
- >>264
いきなりRPGを作ろうと思わないこと。RPGはいろいろなジャンルのプログラムテクが必要に なるので、まずそれを身に付けてからでも遅くは無く。あと、プログラミングだけじゃなく、RPG はシステムを考案する要素が高いので、そのあたりをきちんと決めておかないと、仕様変更の 連続でまともに作れなくなります。 とりあえずブロック崩しが作れるとの事なので、グラフィック表示、キー入力、キャラ移動、 当り判定、1画面分のマッピングはマスターしていると思うから、次はシューティングで背景の スクロールと他キャラの同時制御を身に付けるとよろし。成長要素(自弾の拡張・耐久力上昇) を盛り込めば、RPGのレベルアップ処理に応用できるのでモチベーションは維持できるかと。 次はアドベンチャーでメニューとイベント処理を身に付けること。
- 266 名前:名前は開発中のものです。 mailto:sage [2007/03/11(日) 22:22:59 ID:C2VUxkMj.net]
- なんか悲しい…
- 267 名前:名前は開発中のものです。 mailto:sage [2007/03/11(日) 22:34:13 ID:k4eFOmxa.net]
- 俺はワロタ
- 268 名前:名前は開発中のものです。 mailto:sage [2007/03/11(日) 23:25:13 ID:o8jznlMp.net]
- 俺はツマンネ('A`)
- 269 名前:名前は開発中のものです。 [2007/03/12(月) 08:45:04 ID:HjqKfI9M.net]
- これはマジ質問なのですが、hspでrpg作る場合
アイテムや主人公・敵キャラクターのデータはどう扱えばいいんでしょうか。 例えばアイテムの情報はあらかじめアイテム情報を書き込んだテキストファイルから読み込むとして、 テキストの一列ごとにアイテムの名前、ステータスなどを書き込んでいってそれをファイル側で読み込む。 だけど、そうした時にプログラム側ではそのテキストを読み込むとき、 そのアイテムがあるラインを指定してやらないと読み込めないので アイテム名でアイテムの情報をテキストから読み出せなくて、やり辛いと思うんです。 それともインデックスを用意しておいて、指定したイニシャルと同じアイテムリストを全部バッファに 読み込んで比較してアイテムの情報を読み込む??? それと、所持アイテムの処理の仕方もわかりません。
- 270 名前:名前は開発中のものです。 [2007/03/12(月) 12:40:58 ID:zNGWNd+L.net]
- マジレスするとnotegetとcsvstrで読み込んで、配列変数に入れる。
その後、#enumで振った名前でアクセスすれば構造体みたいなもんだろ。
- 271 名前:名前は開発中のものです。 [2007/03/13(火) 06:16:11 ID:K8oTsumj.net]
- >>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 に続く・・・
- 272 名前:271 [2007/03/13(火) 06:19:51 ID:K8oTsumj.net]
- >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.net]
- >>269
>それともインデックスを用意しておいて、指定したイニシャルと同じアイテムリストを全部バッファに >読み込んで比較してアイテムの情報を読み込む??? IDを振ってそれを基準に処理すればいんじゃね? IDで管理しとけばアイテムの名前変えても他を弄る必要ないし 追加削除してもIDを変えなければ直接関係有る物しか弄らなくていい
- 274 名前:名前は開発中のものです。 mailto:sage [2007/03/13(火) 21:34:56 ID:lw1fUGj9.net]
- >>270
>>271 参考にします。ありがとうございました。 それから、ソースを書いてもらってすいません。 よくできていて感心してしまいました・・・
- 275 名前:名前は開発中のものです。 [2007/03/14(水) 02:09:15 ID:pkgaAWGt.net]
- >>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 名前:名前は開発中のものです。 mailto:sage [2007/05/17(木) 20:54:25 ID:QslptYDj.net]
- パーティー数・戦闘参加人数に制限のないツールってあります?
- 277 名前:名前は開発中のものです。 [2007/05/17(木) 21:02:55 ID:SRf6VBZ+.net]
-
- 278 名前:名前は開発中のものです。 mailto:sage [2007/05/17(木) 22:52:18 ID:QslptYDj.net]
- ……すみません、別スレに投下するつもりが誤爆しました…
- 279 名前:名前は開発中のものです。 [2008/07/20(日) 19:07:16 ID:2Ijm4eAV.net]
- >>120
この人が作ったRPGの紹介動画、ニコニコ動画のコンテストかなんかで賞貰ってたよ そんな人が数年前にこんなレスしてたってのはなんかあれだね、面白いね 俺も頑張らないと
- 280 名前:名前は開発中のものです。 [2009/08/10(月) 13:04:26 ID:sFddjEWZ.net]
- 2年で3レスか…
babelっていうゲームはHSPらしいが
- 281 名前:名前は開発中のものです。 [2009/08/11(火) 00:41:24 ID:q2fvLOcR.net]
- ちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこ
ちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこ ちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこ ちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこ ちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこちんこ
- 282 名前:名前は開発中のものです。 mailto:sage [2009/08/16(日) 12:34:20 ID:mUJcX4L/.net]
- まんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこ
まんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこ まんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこ まんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこ まんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこ まんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこまんこ
- 283 名前:名前は開発中のものです。 mailto:sage [2009/08/17(月) 18:09:14 ID:rLW8yDpb.net]
- たていすかんなにらぜ゜ちとしはきくまのりれれけむむ
- 284 名前:名前は開発中のものです。 mailto:sage [2010/02/04(木) 05:44:42 ID:AjRDC0nc.net]
- なんかもう一個のほうのスレで頑張ってる奴がいるから俺はこっちで頑張ろうかな
- 285 名前:名前は開発中のものです。 mailto:sage [2010/02/04(木) 11:10:06 ID:j8+pLPQE.net]
- じゃあ俺は応援する
- 286 名前:名前は開発中のものです。 mailto:sage [2010/02/06(土) 19:45:13 ID:eBoJBxgs.net]
- >>120
この文字だけのRPGすげーカッケェーっすね センスがパネェっす
- 287 名前:名前は開発中のものです。 mailto:sage [2010/02/11(木) 17:05:34 ID:w5NM98dn.net]
- マップエディタ作るのが難しいっす
既存のエディタを借用すれば楽だけどせっかくなので全部自作を目指すのだった
- 288 名前:名前は開発中のものです。 mailto:sage [2010/02/12(金) 15:57:35 ID:etgrazeU.net]
- 開発中はインタプリタで実行して
exeファイルにするときはコンパイルするってこと出来ないかな
- 289 名前:名前は開発中のものです。 mailto:sage [2010/02/16(火) 00:46:29 ID:Tfo84wDg.net]
- なんかマップエディタよりドット絵が描きたくなってきたです
- 290 名前:名前は開発中のものです。 mailto:sage [2010/02/20(土) 01:33:10 ID:tShVZmmA.net]
- ゲーム制作より絵を描く方に興味を持ったのでそっちに行きます
それではお元気で(・∀・)/ヾ〜
- 291 名前:名前は開発中のものです。 mailto:sage [2010/02/21(日) 08:41:22 ID:zQLFxu4y.net]
- >>289から>>290にいって、自分の素材を使いたいがためにゲーム制作に戻ってきたっていうタイプもいる。
- 292 名前:名前は開発中のものです。 mailto:sage [2010/06/18(金) 23:39:46 ID:x/+wsHqQ.net]
- 自分で作ったプログラムと絵と音楽が合わさると感動するわな
- 293 名前:名前は開発中のものです。 mailto:sage [2010/06/26(土) 17:41:26 ID:p8tPjhCB.net]
- 自分で使うのが恥ずかしいってことも・・・そうそう無いか
音楽とか作るの苦手だわ、俺
- 294 名前:名前は開発中のものです。 [2010/08/05(木) 16:31:18 ID:+9m6bvWS.net]
- まちびとに話しかける度に、文字を表示したいのですが、文がたくさんありすぎて
画面がみずらくなってきました。 文だけを別ファイルにするほうほうとかはあるのですか?
- 295 名前:名前は開発中のものです。 mailto:sage [2010/08/05(木) 22:42:17 ID:WhyL8tJg.net]
- あります
- 296 名前:名前は開発中のものです。 [2010/08/29(日) 10:17:26 ID:Oy6sz1B5.net]
- >>294
「みずらく」じゃなくて「みづらく」な
- 297 名前:名前は開発中のものです。 mailto:sage [2010/10/06(水) 01:38:18 ID:p01vOLw3.net]
- 戦闘部分のソースがカオスになってきた
- 298 名前:名前は開発中のものです。 mailto: [2010/10/09(土) 21:35:38 ID:nr26u1G7.net]
- ho
- 299 名前:名前は開発中のものです。 mailto:sage [2011/01/06(木) 22:25:24 ID:FIV/E0G/.net]
- 無料RPG製作ツール「ロープレジェネレーター」
ttp://sekisekki.net/index.htm 直感的操作で簡単なゲームが作れます。 簡単に配布可能な状態に出力することができます。 (HSP製のソースコード付きで、スクリプトの知識があれば自由度の非常に高いカスタマイズ ができます) 他にも仲間預かり機能(100人も)や、仲間の状態/状態異常を細かく設定できたり、 乗り物が作れたりゲーム中に画像を差し込んだり、回転やフラッシュなどのエフェクト なんかも簡単に作れる様です。戦闘はデフォだとドラクエ系。 移動は矢印キーの他に、キャラがマウスを追っかけたりするとのこと。 他にはオートアクションというのがあってオリジナルシステムの製作に役に立つかも しれない機能です。これは、マップエディタで設定することで、「マップに入った時・ 出た時・一歩歩いた時・戦闘開始前」に自動的に実行されるアクションを設定できる 機能です。 ■分からないことや要望は掲示板へどうぞ。他にもいろいろ進化中みたい。
- 300 名前:名前は開発中のものです。 [2012/06/01(金) 12:21:34.45 ID:l7w1OgnU.net]
- >>294が何年前かドキドキしながら書いてみる
別ファイルにまとめて書いた文章&文章表示命令にそれぞれラベル付けて、メインファイルからgosubで呼び出して使う …の前に、文章まとめた別ファイルを#includeな、#include #include だぞ、忘れるな
- 301 名前:名前は開発中のものです。 mailto:sage [2012/06/03(日) 11:10:09.88 ID:81pO3LcG.net]
- >>300
ありがとうございます。 294じゃないけどHSP本家BBS見て荒んでた心が和んだw
- 302 名前:名前は開発中のものです。 [2012/06/05(火) 13:25:06.21 ID:cxs02+xg.net]
- >>301
見てくれてて良かった…… なら詳しく書くけど、メインファイルに #include "(別のファイル名)" を記述しておくと、ここで指定した名前のファイルがコンパイル時に結合されて、これ以降は同一ファイルのように扱える ただし、別ファイル内で作成した変数やラベルなどを呼び出すより前に#include命令がないとエラーになる(存在しないものとして扱われる)から、なるべく最上段に書いとくのがいいよ
- 303 名前:名前は開発中のものです。 [2014/03/01(土) 18:22:21.95 ID:WBxaUI7+.net]
- 気がついた
- 304 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 09:40:09.56 ID:atW71/f2.net]
- sage
- 305 名前:名前は開発中のものです。 mailto:sage [2014/03/06(木) 17:54:53.54 ID:yEMfzKkL.net]
- HSPもそろそろクラスや構造体使えるようになっても良いよな
データ管理がキツイ
- 306 名前:名前は開発中のものです。 mailto:sage [2014/03/06(木) 23:01:34.80 ID:rL+xy/Vr.net]
- >>305
モジュール変数使おうぜ
- 307 名前:名前は開発中のものです。 mailto:sage [2014/04/06(日) 13:13:48.60 ID:Q3z9QZOl.net]
- ドラクエのような、全方向MAPスクロールって、割と簡単に作れるのね。
(まだ、作ってる途中だけど) ちょっと、ビックリした。
- 308 名前:名前は開発中のものです。 mailto:sage [2014/04/06(日) 13:33:11.66 ID:ca6AyU1Z.net]
- mjd?あれ難しくない?>マップスクロール
以前やろうとしたけど、難しくて上手くいかなかった しょうがないので、マップは固定させて、 プレイヤーが動き回るようにした覚えがある
- 309 名前:名前は開発中のものです。 mailto:sage [2014/04/06(日) 14:48:41.93 ID:ca6AyU1Z.net]
- 暇だしHSPでRPG作ってみるか
とはいえ、絵は描けんし音楽も作れんしプログラムもろくに書けん ・マップはフィールド/村のみ 当然ながらマップスクロールなんてものは無し ムズいから ・戦闘は攻撃/逃げるのみ 魔法やらアイテムは難しいから無し ・音楽もマップチップも借り物 ぎりぎり何とかRPG?と呼べるレベルの DQ1を超劣化させたRPGもどき ・・・これでも完成できるかどうかわからんなあ・・・
- 310 名前:名前は開発中のものです。 mailto:sage [2014/04/06(日) 16:21:59.89 ID:ca6AyU1Z.net]
- プロジェクトスレッドについて 概要や製作状況をまとめた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
- 311 名前:307 mailto:sage [2014/04/07(月) 10:51:54.10 ID:ezV4jUIS.net]
- ブログたてたんだ。
フットワーク軽いね。 自分は、 A=裏仕事用のウィンドー、 B=表示用のウィンドー、 C=キャラクターチップ用のウィンドー、 D=MAP用のウィンドーと、 4つ用意して、 redraw 0 DのチップをAにちまちまとコピー AをごっそりBにコピー CもBにコピー redraw 1 っていう、 むちゃくちゃ単純な作業の繰り返しで為したんだけど、 キャラクターはアニメーションするし(わざわざ前の絵を消さなくても、AをBにコピーした段階で勝手に消える)、 スクロールはドット単位で出来るし。 なんか、ずいぶん楽だなぁ。 って思っただけです。 (実験に使用したマシンは、Pen3時代のボロマシンです) ちょっと改良すると、 洞窟物語のようなアクションゲームにも流用できるし、 スクロールするシューティングにもなるし、 『あれ? ゲーム作りって、こんな簡単だったっけ?』って思ったんで。
- 312 名前:名前は開発中のものです。 mailto:sage [2014/04/08(火) 17:19:31.62 ID:bsYD0gLY.net]
- ダウンロードしたよ。
まずは、フリーの素材を適当に見繕ってきて、見栄えを良くしてみるといいんじゃないかな? 作りたいもののイメージが固まると、モチベーションが高まるよ。
- 313 名前:名前は開発中のものです。 mailto:sage [2014/04/08(火) 22:50:08.16 ID:WdwFRxgH.net]
- アドバイスありがとー
素材探すのめんどくさかったんで、画像は超適当 フリー素材探してみます
- 314 名前:名前は開発中のものです。 mailto:sage [2014/04/10(木) 16:42:08.19 ID:kBrjlf64.net]
- 参考になるかな?
マップを表示する ttp://www.geocities.jp/hspgame2/rpg1.htm
- 315 名前:名前は開発中のものです。 mailto:sage [2014/04/12(土) 12:50:34.17 ID:tJO0Cf3l.net]
- ありがとー
他人のスクリプト読んで勉強せんとなー そもそもマニュアルの理解もあやふやだしな・・・
- 316 名前:名前は開発中のものです。 mailto:sage [2014/04/15(火) 19:57:17.87 ID:jaj/AwrL.net]
- どうぐ → アイテム一覧 → アイテム説明みたいな
メニューを次々表示していくのはシーン番号で管理するのかな メニューごとに表示フラグを用意して 現在カーソルを持ってるメニューはどれか〜とか キャンセルしたらどういう順番でメニューが消える〜とか それをまたインプットに反映させるのもややこしそう
- 317 名前:名前は開発中のものです。 mailto:sage [2014/04/15(火) 23:39:18.15 ID:JOMG6Oxk.net]
- >>316
それ難しいねえ… 今自分の作ってるやつは、それより遥か下のレベルなので、 そんなの考えたことなかった どうぐ → アイテム一覧 → アイテム説明 この流れの場合、メニューは3つ全部表示されてるのが普通かと思うんで 各メニューごとに表示のフラグがいるわけね そうかー・・・ flag_menu(0):どうぐ flag_menu(1):アイテム一覧 flag_menu(2):アイテム説明 みたいな感じかな んで、今カーソルがあるメニュー示す変数を作って(たとえばmenu_number=1とか) キャンセルしたら、flag_menu(menu_number)=0 : menu_number-- とか。 ・・実際にRPG作ってみた人に聞いてみないと、何ともわからないなあ
- 318 名前:名前は開発中のものです。 mailto:sage [2014/04/16(水) 22:50:44.96 ID:ckCZB3EQ.net]
- さて、次は街にいるNPCを作っていく予定
プレイヤーや通行不可チップとの当たり判定とか プレイヤーとの会話とか。めんどくさそう・・・
- 319 名前:名前は開発中のものです。 mailto:sage [2014/04/17(木) 10:02:28.90 ID:RM8w7nSJ.net]
- 頑張ってますね。
- 320 名前:名前は開発中のものです。 mailto:sage [2014/04/19(土) 03:01:59.27 ID:pwx7j+mD.net]
- ありがとー ぼちぼちやってきます
当たり判定完成 次はNPCとプレイヤーとの会話 会話ウィンドウの表示があるのでちょっと手間かな・・・
- 321 名前:名前は開発中のものです。 mailto:sage [2014/04/19(土) 22:27:09.76 ID:pwx7j+mD.net]
- NPCとの会話完成
次はいよいよ↑で難しそう、と書いたメニュー表示か・・・ ステータス、アイテム、魔法、装備、セーブ等々
- 322 名前:名前は開発中のものです。 mailto:sage [2014/04/20(日) 08:12:36.11 ID:EaVHaGow.net]
- ・メニューを1つでも表示してたらメニュー操作モード
・カーソルを受け付けるのは最後に出したメニュー ・メニューを出した順に描画するが、描画済みバッファを利用たほうが速い ・どの順にメニューを表示したかのスタックを用意する(配列とインデックス) ・メニュー毎に保持カーソル・項目数・項目名・ジャンプ先・表示位置を保持 要素毎に分解して考えると簡単かも
- 323 名前:名前は開発中のものです。 mailto:sage [2014/04/20(日) 09:27:28.43 ID:tgLb1tKI.net]
- >>322
うお、凄い・・・ めっちゃ助かります ありがとう
- 324 名前:名前は開発中のものです。 mailto:sage [2014/04/21(月) 12:38:51.76 ID:zmlcMClv.net]
- >>308
マップ上のキャラクター座標を中心に、周囲?×?ドットぶんを切り出して毎回描画するだけ ?、は移動マップ表示部分(というか視界)のサイズね 100*100サイズのマップでキャラクター位置が50,50だとしたら、50,50を中心にした視界範囲ぶんを切り出す でもこれだと、キャラクターがマップ端にきたときにマップ外の何も無いとこ読み込もうとするエラーが出るから、あらかじめマップ外周を移動不可マスで囲んで読み込みぶんを確保しておくか、または読み込み不足ぶんをマップ反対側から切り出してループ構造にする…とかかな
- 325 名前:名前は開発中のものです。 mailto:sage [2014/04/21(月) 21:22:20.71 ID:F/3c8DQj.net]
- マップがループ構造になってるRPGって良くあるけど、
そういうことだったのね・・・
- 326 名前:名前は開発中のものです。 mailto:sage [2014/04/23(水) 12:18:16.93 ID:UD6vo4r0.net]
- >>325
他のゲームの仕組みは知らないけど、無限大の連続マップは無理だろうしたぶんこの手段かなと思う あと、これはruby言語で試作中の方法だけど… ベースマップを1マス辺り1ドットのサイズで、移動不可マス、移動可能マスを合わせて全5色〜くらいで色分けして描く で、キャラ座標周囲の視界ぶん?×?マスを1ドットづつ色判定して、判定色ごとに決められた地形用マップチップを定位置に張り付ける…てな方法なら、数千×数千マスなんて広大なマップも作れそう
- 327 名前:名前は開発中のものです。 mailto:sage [2014/04/23(水) 12:31:13.72 ID:UD6vo4r0.net]
- 例えばドラクエで例えると…
3×3が視界範囲だとして、ベースマップのキャラ座標左上のドット色が0,0,0の通行不可色なら、16×16サイズの岩山チップを視界表示部の左上に描画 キャラ座標真上が255,255,255の通行可能色なら草原チップを表示部真ん中上に、キャラ座標右上が200,255,200なら森チップを表示部右上に…… これをフレーム毎に上段、中段、下段と繰り返す 視界範囲が広がるとフレームあたりのドット色判定処理が飛躍的に多くなるし、1ドットづつのなめらか移動じゃなくて地形チップ1枚ごとの古臭い移動表示にはなるけど、ベースマップのサイズは小さて済むから好きなだけ広いマップが作れる
- 328 名前:名前は開発中のものです。 mailto:sage [2014/04/27(日) 13:38:32.40 ID:Kzmc8tD2.net]
- へえー・・・
自分はフリーソフトのマップエディタ落としてきて、ちまちま マップデータ作ってたんだけど、そんなやり方もあるのね マップデータの書き方って色々あるんだな
- 329 名前:名前は開発中のものです。 mailto:sage [2014/05/28(水) 15:11:51.72 ID:3EakAuiE.net]
- ttp://sekisekki.net/regene/
HSPのRPGジェネレーター ソースリスト付きだから、参考になるんじゃないかな?
- 330 名前:名前は開発中のものです。 mailto:sage [2014/11/28(金) 23:17:27.42 ID:rDPMSnfR.net]
- ドルアーガの塔は、MAPデータ60バイト(裏モードを合わせると120バイト)
だと聞いてぶったまげた俺がいる。 60キロバイトじゃないぞ。 60バイトだぞ。
- 331 名前:名前は開発中のものです。 [2016/09/13(火) 22:38:16.77 ID:o26+3xuf.net]
- まじで?
- 332 名前:名前は開発中のものです。 mailto:sage [2016/09/14(水) 10:59:43.92 ID:6n5rpto4.net]
- ランダム生成で固定のデータ持ってないやん
チップのことだとしても小さいし色数も少ないし
- 333 名前:名前は開発中のものです。 [2016/11/20(日) 15:52:51.06 ID:Zr00I/Qf.net]
- ,彳;;;;;;;;;;;;;;;;;;;;;;;;;;、
/;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,ヽ 涙が あとからあとから あふれ出て /;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;t、 ,';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;z 止めることができなく なる !;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;i |''';;;;;;;;;;;;;'''" ,;;;;;;;;;;;;;;;;;;;;f ニ;、 マヨーレマヨーレ! {丁 "'' _ ,;;;;;;;;;;;;;;;;;//万 ! ! .i厂\( \ 六夂 i、__ goo.gl/kY6CYb ! .{.\ \ \ ,' ! ‐ ´  ̄ ̄ Zz、 i >、 ヽ \ \ | | \ .| \\\ ヽ ー= ! .\ ! \\\ 、,. `' | ヽ } ≧! 、,,. ! ! ノ .', | | ./ 八 ', ! / ./ .>‐、 .∧ :; .! ./ / / ヽ \ ∧ !: ハ / / ./ ', ヽ .∧ / ノ i / / , ', ∧ ! ' ! // ! ∨ ∧ ,' i .! / / セ、 ∨ ∧ ! ! .| /z ´ .\ ∨ \ _| .' .|
- 334 名前:名前は開発中のものです。 mailto:sage [2016/11/21(月) 08:46:23.59 ID:8T6AcjTU.net]
- >>332
60階だけ固定データ(それも簡略化)で 後は自動生成ルーチンに放り込む乱数の種の違いだろうかねぇ
|

|