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

HSP - Hot Soup Processor

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。01/11/10 04:04ID:???
HSPは、お手軽に使うことのできるスクリプト言語システムです。
テキストによるスクリプトを書くだけで、誰にでも簡単にウインドゥズ上で
画像表示、メニューシステムの構築ができます。
多彩な命令セットを使いこなすことでゲームアプリケーションまで作成する
ことができます。

Hot Soup Processor 公式サイト
http://www.onionsoft.net/hsp/
0748名前は開発中のものです。02/07/06 12:14ID:???
>>747
始めてやるコトだから範囲広い方がいいかもよ
俺もスゴロクかなぁ
文字しか使わないゲームって作ったこと無いから、逆にシンセンに思えるよ
0749名前は開発中のものです。02/07/07 20:46ID:???
出来たにゃ出来たがもっと短く縮めなければいけない・・・
意外と難しいなーとか俺ってまだまだだなーとかって事を思い知ったよ
ガンバロ
0750名前は開発中のものです。02/07/12 18:09ID:???
何か例がほしいな
0751名前は開発中のものです。02/07/12 20:55ID:???
>>750
例というと?
0752名前は開発中のものです。02/07/12 23:00ID:???
ボードゲーム期待age…はまずい?
0753名前は開発中のものです。02/07/13 09:18ID:???
期待するんじゃなくて作れ
0754名前は開発中のものです。02/07/13 20:43ID:6U4DNobQ
オセロは出来た
0755名前は開発中のものです。02/07/13 21:12ID:???
それじゃ、2ch版もな生ゲームということで。
0756 02/07/27 12:04ID:UJrNIu3g
800GETOー!
0757名前は開発中のものです。02/07/31 00:20ID:???
640×480のフルカラー画面にredrawで更新かけると、
それだけで40ミリ秒近くかかるよー! うわーん!
0758名前は開発中のものです。02/07/31 08:28ID:???
(´-`).。oO(40msかかるなんてどんな環境なんだろ‥‥)
075975702/07/31 21:50ID:???
>>758
ペン3の450+GeForce2MX。まあかなり古いけど。

include "time.as"
screen 0,640,480,0:timer:prtime=stat
*main
redraw 0
color 255,255,255:boxf 0,0,50,50:color 255,0,0
timer:pos 20,20:mes stat-prtime
prtime=stat
await 0
redraw 1
goto *main

時間計測用にMIAさんのtime.hpi使ってます。自分の環境だと
平均45msくらいかかります。パレットモードだと10〜15msくらい。
758さんとか他人の環境ではどんなかむちゃむちゃ知りたいです。
0760名前は開発中のものです。02/07/31 23:05ID:???
Celeron850 + G400 + Win2k
今測った結果だと7ms位だねい‥‥
(大量にアプリが立ち上がってる状態なので通常より遅い可能性大)

ちなみに時間測定は200回ループさせて測定してる。

ちなみにredrawのかわりに自前のアルファ合成(DLLで実装、非MMX)やっても17ms程度。
076176102/08/09 22:05ID:???
mes "キタ━━━━(゚∀゚)━━━━!!"


て言わせて( ゚д゚)ホスィ…
0762名前は開発中のものです。02/08/09 22:33ID:???
意味和漢ねえよ
0763名前は開発中のものです。02/08/10 23:00ID:???
ボードゲームはどうなったのだろうか…
他の人がどうやってスクリプト縮めるか結構期待していたのだが
0764名前は開発中のものです。02/08/18 14:06ID:???
だれもやってねえのかよ
0765名前は開発中のものです。02/08/18 15:18ID:???
誰かO2の使い方教えろや
0766名前は開発中のものです。02/08/18 19:50ID:???
>>765
サンプル見れ。
あのサンプルはわかりづらいが。
分からないとこは、ここで聞けば答える。
いちお漏れはO2でゲーム作った。
0767名前は開発中のものです。02/08/18 21:02ID:???
O2でゲームって・・・
非公開で作れんの?
0768名前は開発中のものです。02/08/18 22:05ID:???
SDKにテスト用の鯖付属
つまり個人鯖での運用も可
076976602/08/19 10:05ID:???
非公開で作れるよ。
おにたまたんにゲームコードもらう時に
メール出すんだが、そのメールの中に
「紹介していいか」っていう項目がある。
077076102/08/21 07:57ID:???
なんか( ゚д゚)ホスィ…
077176702/08/24 20:36ID:???
非公開じゃ意味ないけどな(藁

っていうか、うpプリーズ>>769
077276602/08/26 02:51ID:???
うpは勘弁してそ・・・ダレダカバレチャウ(´д`;

非公開って、「本家ページで公開されるか否か」って
意味だと思ったんだが違った?
0773名前は開発中のものです。02/09/01 01:49ID:???
今DirectXを使わずにRPG作ってる。
まだフィールドを歩くことぐらいしか出来ない。
とりあえず人に話しかけられるようにしないと。

挫折しなきゃいいけどな・・。
0774名前は開発中のものです。02/09/01 10:52ID:???
>>773
がんがれー。
ここに製作過程を書き込んでけば
アドバイスもらいつつ、
適度なプレッシャーになっていいかも。

まあ、嫌ならいいが。
0775名前は開発中のものです。02/09/02 03:05ID:???
>>746
どうですか。
SCREEN 0,640,0:STR f:STR a:p=2:g=64:f="イクゾ ゴルァ!!":o="サアイクゾナントカガンガレコロンデモナクナイササカナンブツショウブハコレカララストスパートショウリノヨカーン!"
REPEAT -1:z++:REPEAT p,1:f="":s=1:c=cnt:IF x=m.c :a=" (・∀・)" :else :a=" (・ω・)"
DIALOG ""+c+"サン "+a+"/ イイ! \n\ny=ー( ゚д ゚)・∵."+z+"ターン"
*@:AWAIT 1:GETTIME t,7:d=((t\60)/10)+1:TITLE ""+c+">> "+f+""+a+""+d:GETKEY k,1
IF k=0 :GOTO *@b
n=s*d:m.c=n+m.c:IF x<m.c :x=m.c:STRMID f,o,0,m.c:TITLE ""+c+">>ε"+n+"≡"+f+"(・∀・)"
IF m.c>g :GOTO *e
IF (n\5)=0 {DIALOG "ウマー!(゚Д゚) サラニフレ!":s=1:GOTO *@b}
IF (n\7)=0 {DIALOG "モドル!(・A・)イクナイ!":s=-1:GOTO *@b}
LOOP:LOOP;(・∀・)タイトルバー デ スゴロク イイ! (sugo6.as) 2002/9/2
*e:TITLE ""+cnt+"キタ━━━━━━ (・∀・) ━━━━━━!!("+z+")":DIALOG ">>"+cnt+"ノ カチー!!

左クリックでダイスを止めてね。
077677502/09/02 03:08ID:???
いかん。最後のダブルクォーテーション消えとる。
そのまま打ちこんでも実行できないYQ…鬱だ…。
逝ってきます。
0777名前は開発中のものです。02/09/02 23:49ID:???
stickだけど、同じループの中で2回使うと
うまくキー入力が拾えないような気がするけど。
なにかいい対処方法ってない?
0778名前は開発中のものです。02/09/03 03:05ID:???
一回だけひろえばいい
0779名前は開発中のものです。02/09/03 03:11ID:???
>777
片方をgetkeyにしたら?
あとループをループ状?につなげるとか。
0780名前は開発中のものです。02/09/03 11:46ID:???
ちうか何故同じループの中で2回使う必要があるの?
0781名前は開発中のものです。02/09/12 23:14ID:???
>>777
wait入
0782名前は開発中のものです。02/09/14 23:08ID:???
これでシミュレーションゲーム作ろうと思ったんだが、作りやすい?
JavaとCを少々かじった程度のレベルなんだが、
勉強しなおしてCで作った方がいいのかな?
0783名前は開発中のものです。02/09/14 23:11ID:???
hspをやってからまたCを勉強しなおしてくれ。
0784名前は開発中のものです。02/09/14 23:31ID:???
なんで?
078577502/09/15 15:31ID:???
>>782
漏れもSRPGを作ってますが、HSPには再帰ないからしんどい。
0786名前は開発中のものです。02/09/15 17:43ID:???
>>785
データ管理と思考ルーチンはDLLに実装した方がいいと思われ。
0787名前は開発中のものです。02/09/15 22:25ID:srxbmoUG
png画像使いたいんですが、どうやったら使えるようになりますか?
0788名前は開発中のものです。02/09/15 23:16ID:???
AMpng使え。
0789名前は開発中のものです。02/09/15 23:16ID:???
コマンドじゃなくてDLLな。
079078702/09/15 23:35ID:???
>>788-789
ありがとうございました。
0791名前は開発中のものです。02/09/16 20:20ID:???
(´-`).。oO(PNGは展開速度が遅いから正直、ゲームにはおすすめできない‥‥)
0792名前は開発中のものです。02/09/16 20:47ID:???
RPG作るのなら、やっぱりDirectXは必須でしょうか?
今はXを使わず作っているのですが、速度は安定しているので
できればこのまま作り続けたいのですが・・。
0793名前は開発中のものです。02/09/17 01:29ID:???
速度に不満がなければDirectXなんか使わなくていいよ
0794名前は開発中のものです。02/09/18 03:47ID:???
全画面、3Dエフェクト使うならDXが楽(2Dエフェクトも3Dでやったほうが楽)

0795名前は開発中のものです。02/09/18 13:42ID:???
去年の話ですが、HSPやってみましたが途中でやめちゃったっす。
なんか、HSPって面倒臭くないですか?

このとき出来たのはここまで。
ttp://www.bf.wakwak.com/~turkey/KuwaShot.lzh
0796名前は開発中のものです。02/09/18 18:56ID:???
>>795
ゲーム製作してる間は面倒くさいものだよ
俺はもう少しで発狂しそう
0797名前は開発中のものです。02/09/18 20:13ID:???
>>795
どうでもいいけど、BGMのサイズでかすぎ
0798名前は開発中のものです。02/09/18 20:38ID:???
>>795
面倒臭いの種類によるがCのほうが楽
0799名前は開発中のものです。02/09/18 20:46ID:???
>>797
スマソ
シーケンサが勝手にエフェクト残すもんで。
多分半分くらいのサイズにできるんですが。

>>798
もともとCだから結構イライラする事多いっす。
HSPには構造体みたいな機能ないのでしょか?
0800名前は開発中のものです。02/09/18 21:03ID:???
>>799
常識的な機能は一通り実装されていないようです
0801名前は開発中のものです。02/09/19 18:18ID:???
>>799
配列とdupで何とかやるしかないと思われ(;´Д`)
0802名前は開発中のものです。02/09/19 20:59ID:???
>>800
ワラタ
3+4*5の答えが35になるような言語だしなあ・・・
0803名前は開発中のものです。02/09/20 12:40ID:???
HSPのエディタって容量制限あるの?
なんか変になってきますた!
0804名前は開発中のものです。02/09/20 13:22ID:???
>>803
48000bytes。
0805名前は開発中のものです。02/09/20 14:12ID:???
>>804
おぅ、ビンゴ!(涙
0806名前は開発中のものです。02/09/20 14:51ID:???
モジュール使えばファイル分割できそうだけど、なんだか仕様がよくわかんね

まずmodules.asに

#module

#deffunc なんてろ arg1 arg2 …

rerurn

#deffunc かんてろ arg1 arg2 …

rerurn

#global

を書いておいて、メインの方で

#include "modules.as"

とやれば、“なんてろ”と“かんてろ”っていう関数が使える、と。
いいよね?

でさ、その関数の戻り値はどうやって実現するの?
0807名前は開発中のものです。02/09/20 15:00ID:???
ふつうにインクルードは
ひっかっかるんか
0808名前は開発中のものです。02/09/20 15:13ID:???
なんだよmrefって
使いにくいよ
説明文間違いあるし
コリャダメポ

>>807
どうやらそれしかなさそですねぇ
期待した俺がパカだったyo
0809名前は開発中のものです。02/09/20 21:46ID:???
漏れ、秀丸でソースかいてるから容量制限にはひっかかんないよ。
0810名前は開発中のものです。02/09/21 00:06ID:???
キッチンとかいうコンパイル支援ソフトを見つけたんで、
俺も自分のエディタが使えるようになりました!

つーかデフォルトのエディタをどうにかしる!
0811名前は開発中のものです。02/09/21 02:03ID:???
タブ幅は半角4文字分の方が好みなんだけどなぁ…
ベータ版が新しくなっていたので久しぶりにDLしてみた。
今回のバージョンナップは少し嬉しい改善が結構あった。
0812名前は開発中のものです。02/09/21 08:42ID:???
>>811
またネタか・・・と思ったら
本当に2.6β14キテタ━━┃━┏┃━━!!
さんくすこ。
0813名前は開発中のものです。02/09/21 08:46ID:???
EXE作成バグとエラー行番号のズレと全角#define問題が
解消されただけで俺は満足だ。
いくらβ版とはいえ、致命的すぎ・・・
0814名前は開発中のものです。02/09/21 10:09ID:???
早く配列要素に式使えるようにしてほすぃ・・・
0815名前は開発中のものです。02/09/21 12:58ID:???
Ver2.55で動くソースをVer2.6b14で動かそうとしたら
「バッファオーバーフローが発生しました」
0816名前は開発中のものです。02/09/21 13:08ID:???
エラーチェックが厳しくなったね
0817名前は開発中のものです。02/09/22 09:47ID:???
漏れの肛門も厳しくなってきました
0818名前は開発中のものです。02/09/22 10:59ID:???
今まで甘かったのか・・・大変だったね
0819名前は開発中のものです。02/09/22 17:50ID:???
buffer 2,32,32,1:boxf:screen 0,160,160,1:boxf:a="0010200121021222":sdim b,256,32:randomize:repeat 32:c=cnt:repeat 32:rnd d,2:b.c+""+d:loop:loop
dim e,32,32:dim f,32,32:repeat 32:g=cnt:repeat 32:h=cnt:peek i,b.g,h:i-='0':e.h.g=i:loop:loop
*@:repeat 1024:j=cnt\32:k=cnt/32:gosub y:loop:repeat 1024:h=cnt\32:g=cnt/32:e.h.g=f.h.g:loop:gosub z:await 9:goto @b
*y:n=0:repeat 8:peek h,a,cnt*2:h-='1':h+=j:peek g,a,cnt*2+1:g-='1':g+=k:if (h<0)|(h>=32)|(g<0)|(g>=32){continue}:n+=(e.h.g>0):loop
if e.j.k=0{if n=3{f.j.k=2}else{f.j.k=0}}:if e.j.k>0 {if (n>=2)&(n<=3){f.j.k=1}else{f.j.k=0}}:return
*z:gsel 2:redraw 0:color 0,0,0:boxf:repeat 1024:h=cnt\32:g=cnt/32:o=e.h.g:if o{color 255,255,255}else{continue}:pset h,g:loop:gsel 0:pos 0,0:gzoom 160,160,2,0,0,32,32:redraw 1:return

ライフゲーム(774byte)
誰かもう少し縮めてくれ・・・。
0820名前は開発中のものです。02/09/22 18:40ID:???
>>818
チェックで実行速度が遅くなるデメリットあり。



もっともネイティブの実行速度と比べたら大して変わらないレベルだけど。
0821名前は開発中のものです。02/09/22 20:45ID:???
むしろ速くなってない?
0822名前は開発中のものです。02/09/22 20:57ID:???
2.55と比してはね。
0823名前は開発中のものです。02/09/22 21:31ID:???
width 160,160:a="0010200121021222":sdim b,256,32:randomize:repeat 1024:c=cnt/32
rnd d,2:b.c+""+d:loop:dim e,32,32:dim f,32,32:repeat 1024:c=cnt/32:d=cnt\32
peek i,b.c,d:i-48 : e.d.c=i:loop:*l:repeat 1024:c=cnt/32:d=cnt\32:n=0:repeat 8
peek i,a,cnt*2:i+d-49:peek j,a,cnt*2+1:j+c-49:if i>=0|i<32|j>=0|j<32:n+e.i.j>0
loop:if e.d.c=0{f.d.c=n=3*2}:if e.d.c>0{f.d.c=n=2|(n=3)}:loop:memcpy e,f,4096
redraw 0:color:boxf:repeat 1024:c=cnt/32:d=cnt\32:palcolor 255*e.d.c
boxf d*5,c*5,d*5+4,c*5+4:loop:redraw:await 5:goto l

ほい。79*7達成ね。
配列変数のコピーは、memcpy使うと早いし楽だよ。
082481902/09/22 22:44ID:???
width 160,160:a="0010200121021222":sdim b,256,32:randomize:repeat 1024:c=cnt/32
rnd d,2:b.c+""+d:loop:dim e,32,32:dim f,32,32:repeat 1024:h=cnt/32:g=cnt\32
peek i,b.h,g:i-48:e.h.g=i:loop:*@:repeat 1024:j=cnt\32:k=cnt/32:n=0:repeat 8
peek h,a,cnt*2:h+j-49:peek g,a,cnt*2+1:g+k-49:if (h<0)|(h>=32)|(g<0)|(g>=32){continue}
n+=(e.h.g>0):loop:if e.j.k=0{f.j.k=n=3*2}:if e.j.k>0{f.j.k=n=2|(n=3)}:loop:memcpy e,f,4096
redraw 0:color:boxf:repeat 1024:h=cnt\32:g=cnt/32:if e.h.g{color 255,255,255}else{continue}
boxf h*5,g*5,h*5+3,g*5+3:loop:redraw:await 5:goto @b

>>823
ありがd。おかげで参考になりますた。
どうもうちの環境では動かなかったのでコピペを交えつつ改造。ちと増えてしまった・・・。・・・環境の違いかな?
082582302/09/23 01:12ID:???
>>824

.   Λ_Λ
アアン(・∀・ ;)

HSP 2.6b14 でやってるんだけど、無茶な省略してるから
他のバージョンじゃ動かないのかも・・・。スマソ
0826名前は開発中のものです。02/09/23 10:58ID:???
あー。
memcpyてそうやって使うんだ。
今やってるヤツ修正したくなってきた!
082781902/09/23 12:45ID:???
n=32:width n*5,n*5:a="0010200121021222":sdim b,256,n:randomize:repeat n*n
c=cnt/n:rnd d,2:b.c+""+d:loop:dim e,n,n:dim f,n,n:repeat n*n:g=cnt/n:h=cnt\n
peek e.h.g,b.h,g:e.h.g-48:loop:*z:repeat n*n:j=cnt\n:k=cnt/n:l=0:repeat 8
peek g,a,cnt*2:g+j-49:peek h,a,cnt*2+1:h+k-49:if (g<0)|(g>=n)|(h<0)|(h>=n):continue
l+=e.g.h>0:loop:if e.j.k=0{f.j.k=l=3*2}if e.j.k>0{f.j.k=l=2|l=3}loop
memcpy e,f,4096:redraw 0:color:boxf:repeat n*n:g=cnt\n:h=cnt/n
if e.g.h{palcolor 9:boxf g*5,h*5,g*5+3,h*5+3}loop:redraw:wait 1:goto z

がんがって縮小。
・・・難しいなあ。
0828名前は開発中のものです。02/09/23 16:11ID:MkK9RRSv
2.55で動いてたソースを2.6b14で動かそうとしたら
HSEDが強制終了…(つД`)
0829名前は開発中のものです。02/09/23 17:37ID:5viZ/ERy
えっ、b14もう出てるの?見にいこ。
0830名前は開発中のものです。02/09/23 17:43ID:5viZ/ERy
ダウンロード完了。。。
083182302/09/23 20:02ID:???
n=32:width n*5,n*5:boxf:a="0010200121021222":sdim b,256,n:dim s,n*n:dim t,n*n
randomize:repeat n*n :rnd d,2:s.cnt=d:loop:*z:repeat n*n:j=cnt\n:k=cnt/n:l=0
repeat 8:peek g,a,cnt*2:peek h,a,cnt*2+1:g+h+k-49*n+j-49:if (g<0)|(g>=(n*n)){
continue}l+=s.g>0:loop:if s.cnt=0{t.cnt=l=3*2}:if s.cnt>0{t.cnt=l=2|l=3}:loop
memcpy s,t,4096:redraw 0:repeat n*n:g=cnt\n:h=cnt/n:palcolor s.cnt!0*9
boxf g*5,h*5,g*5+3,h*5+3:loop:redraw:wait 1:goto z

6行達成しますた。
083276102/09/23 23:10ID:???
なんかみんなすげー。
0833名前は開発中のものです。02/09/23 23:51ID:???
みんなっていうか、二人で推敲してる感じな。
083481902/09/24 12:21ID:???
(;゚Д゚)・・・。
ごめんなさいもう漏れには無理でつ。LVが違う・・・。(;´Д`)
0835名前は開発中のものです。02/09/24 14:10ID:???
n=32 固定でもいい?
0836名前は開発中のものです。02/09/24 14:12ID:???
  ていうかすでに固定でやってるね
0837名前は開発中のものです。02/09/24 14:51ID:???
それなんですか?丸いのがくるくる回ってるけど・・・
0838名前は開発中のものです。02/09/24 14:55ID:???
ライフゲーム。

それはミクロの世界に蠢く微生物のように。
それは儚く散る花びらのように。
それは戦争を続ける醜い人類のように。

ライフゲーム。
0839名前は開発中のものです。02/09/24 15:23ID:???
n=32:m=n*n:width n*5,n*5:boxf:a="@DHAIBFJ":dim s,m:dim t,m:randomize:repeat m
rnd s.cnt,2:loop:*z:repeat m:j=cnt\n:k=cnt/n:l=0:repeat 8:peek g,a,cnt
g=g>>2&3+k*n+(g&3)+j-33:if g>>10=0{l+=s.g>0}:loop:t.cnt=l=3&(s.cnt=0)*2
t.cnt+=l/2=1&(s.cnt>0):loop:memcpy s,t,m*4:redraw 0:repeat m:g=cnt\n*5:h=cnt/n*5
palcolor s.cnt>0*9:boxf g,h,g+3,h+3:loop:redraw:wait 1:goto z

80 * 5 行
084083902/09/24 15:43ID:???

n=32:m=n*n:width n*5,n*5:boxf:a="@DHAIBFJ":dim s,m:dim t,m:randomize:repeat m
rnd s.cnt,2:loop:*z:repeat m:l=0:c=cnt:repeat 8:peek g,a,cnt:g=g/4&3*n+(g&3)+c
g-=33:if g>>10=0{l+=s.g>0}:loop:t.c=l=3&(s.c=0)*2|(l/2=1&(s.c>0)):loop
memcpy s,t,m*4:redraw 0:repeat m:g=cnt\n*5:h=cnt/n*5:palcolor s.cnt>0*9
boxf g,h,g+3,h+3:loop:redraw:wait 1:goto z

もちょっと小さくなりました
084182302/09/24 15:59ID:???
ポカーン(゚д゚)
084283902/09/24 16:35ID:???

n=32:m=n*n:boxf:a="@DHAIBFJ":dim s,m:dim t,m:randomize:repeat m:rnd t.cnt,2:loop
width n*5,n*5:*z:memcpy s,t,m*4:wait 1:repeat m:c=cnt:l=0:repeat 8:peek g,a,cnt
g=g/4&3*n+(g&3)+c-33:if g>>10=0{l+=s.g>0}:loop:t.c=l=3&(s.c=0)*2|(l/2=1&(s.c>0))
palcolor t.c!0*9:boxf c\n*5,c/n*5,c\n*5+3,c/n*5+3:loop:goto z

えいや
084382302/09/24 16:49ID:???
・・・(゚д゚)アングリ

まったく太刀打ちできませんでしたw
四行達成おつかれさまでつ。すごすぎでつ…。
084483902/09/24 17:08ID:???
いえ、処理内容なんか理解してません(;´Д`)
おもしろそうだったから簡単化してみただけ
084581902/09/24 17:55ID:???
漏れのソースがここまで簡略化できるとは・・・。
理解できるぐらいまで精進しまつ。(;´Д`)
0846名前は開発中のものです。02/09/24 18:39ID:???
某糞スレで荒らし依頼が出されてたぞ。
削除人は注意しててくれ。
0847名前は開発中のものです。02/09/24 22:12ID:???
無毛タン
■ このスレッドは過去ログ倉庫に格納されています