HSP - Hot Soup Processor [2]
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
02/10/24 12:05ID:???( ,,,)
.( ,,) スクリプト言語 HotSoupProcessor について
( ,,). ゲーム製作の視点から、また〜りと語り合うスレ。
, -──- 、
(,;::-──-; )-、
.|` ̄ ̄ ̄´;;|ヽ l * 質問する前に検索してみる事
l; :::;;;l-' / * ヲチ、ネタなどはスレ違い
,-ヽ───.'-、´.. * 前スレ、関連サイトは >>2-5 あたり
ヽ ──── '
0781名前は開発中のものです。
03/01/18 21:36ID:wMBVImLC0782あぼーん
NGNG0783名前は開発中のものです。
03/01/18 22:31ID:Vy3oIQykどのように「うまく動かない」のか説明しる。
乱数が起動ごとに違う数字にならないのなら、
スクリプトの最初に一回だけ randomize を呼ぶ。
0784783
03/01/18 22:36ID:Vy3oIQyk時々 rnd を呼ぶ手前で randomize を
呼び出しているスクリプトを見かけるが間違い。
↓を実行するとわかるが、引数のない randomize は
時間を乱数シードにするので、wait がないループ内で使うと
毎回同じ値を生成してしまう。多分 >>694 もそれ。
repeat 10
randomize
rnd r,256
mes r
loop
stop
0785名前は開発中のものです。
03/01/18 23:15ID:y+/AtLlQ0786名前は開発中のものです。
03/01/18 23:23ID:gAU9PK3k0787名前は開発中のものです。
03/01/18 23:31ID:CHhXNTNo0788名前は開発中のものです。
03/01/18 23:41ID:bxSI4/7bサンクス!
名前的に完全な乱数ではないのね。
調べてくる。
0789あぼーん
NGNG0790名前は開発中のものです。
03/01/19 16:28ID:/9qPSjjPぜひ評価を下さい。
http://my.reset.jp/~aclass/index.htm
0791名前は開発中のものです。
03/01/19 17:17ID:1MBubDP4なんかやけにもっさりした動きだな。仕様なのか?
それとも結構なスペックを必要とするのか。cel 733でやったが。
まあたぶん後者だろうな。
つーか単純にゲームをやるユーザーとしていうと
どこを面白さとして売ってるんだ?
一ヶ月だからしょうがないと思うけど、
システムはもっと工夫がいると思うよ。
0792790
03/01/19 17:31ID:/9qPSjjP実はawaitじゃなくてwaitを使っています。機種によっては重いかもしれませ
ん。そういう事を抜きにしても、もっさりしているかもしれません。
まだまだ試作品のレベルです。これからどんどん肉付けしていきます。
0793名前は開発中のものです。
03/01/19 17:41ID:1MBubDP4シューティングなんかはawaitのほうが良いと思うよ。
cpu使用率が気になってるなら2.6を使えばいいし。
あと加速にいくらか段階をつけて制限時間を設けるとあせる感じが良いかも。
まあ頑張っちょくれ。
0794あぼーん
NGNG0795名前は開発中のものです。
03/01/19 17:57ID:R9Ehg1vL0796あぼーん
NGNG0797790
03/01/19 19:53ID:/9qPSjjP2.6ですか!
ありがとう。
awaitの値っていくつにすればいいのか、気になってたんですよ。
あまり小さくすると、遅いマシンではWindowsに渡す時間がなくなりそうだし。
0798名前は開発中のものです。
03/01/19 20:17ID:q648J7XZいやそういうことではなくてhspのバージョンの話。
2.55ではawaitを使うとCPU使用率が100%になるが
2.6ではsleepで負荷が軽減できるはず。ってこと。
awaitの値は 16でいいかと。
0799名前は開発中のものです。
03/01/19 21:41ID:i6LUPVBfダイレクトXは使わんの?
0800あぼーん
NGNG0801名前は開発中のものです。
03/01/19 22:18ID:O+tGE7h2AAサロン板で公開されてるが、
あっちはあんまりもっさりしてないよ。
もっさりの原因は wait じゃない?
0802名前は開発中のものです。
03/01/19 22:22ID:4SkWYupK( ´∀`)< 糸冬 !!
/, つ
( ((_(_, )) )
しし'
0803名前は開発中のものです。
03/01/19 22:44ID:q648J7XZだから本人もそういってるわな。
0804あぼーん
NGNG0805名前は開発中のものです。
03/01/20 06:13ID:bnGeoYqn動きの滑らかさ(早さ)にこだわるゲームは毎秒60枚。描画は30だが、判定は
秒間60回というのもある。
awaitは1ms(1秒=1000ms)だから、30秒毎ならawait 33。60秒枚なら16。
もっとも窓9x系はタイマーの精度が悪いため、30ms以下の指定はあてに
ならんけどな。
あと、awaitは、「指定数値-前回のawaitから経過時間」で一定のリズムを
刻んでくれるが、waitは指定数値分しっかり休むから、処理にかかる時間に
よってリズムは不定になる。
0806名前は開発中のものです。
03/01/20 09:08ID:m6jH1ets0807あぼーん
NGNG0808名前は開発中のものです。
03/01/20 11:43ID:Bf9zvPzS日本語べんきょうしろ。
0809名前は開発中のものです。
03/01/20 12:58ID:ULqM/MndWindowsXP、Pen4 2.4GHz,メモリ512Mで動作しました。
サクサク動きましたよ。絵もきれいですし。
一ヶ月でここまでならたいしたものだと。
0810名前は開発中のものです。
03/01/20 13:43ID:s+HIX2sR0811名前は開発中のものです。
03/01/20 14:35ID:qjSpPiA2プログラミングやったことない人、全く出来ない人の発言なのか?
出来る人の発言だとしても、人間的にどうかと思うが…
でも、いい人たちも居ますね
という自分はHSP始めて1週間の超初心者でした
まだ見ていないけど一ヶ月でシューティング作れるのは凄ひと思ふ
0812811
03/01/20 15:18ID:qjSpPiA2ツクレクレ君なんて居ないね
みんな普通の人でした
0813名前は開発中のものです。
03/01/20 15:21ID:qjSpPiA20814あぼーん
NGNG0815名前は開発中のものです。
03/01/20 16:01ID:S40EXEZs俺もいきなりシューティングを作ったが、いろいろな人のソースをみながら
ノウハウや処理の流れみたいのを覚えていくのはかなりためになったと思う。
つーか絵が上手い人はいいなぁ。
理想の雰囲気があっても俺はそれを表現できないからな。
0816あぼーん
NGNG0817名前は開発中のものです。
03/01/20 17:17ID:qjSpPiA2グラフィック的に頑張る余裕が無いので8dotサイズのキャラの
極小サイズシューティングにしますた。
でも調子に乗って敵機を大量に表示したら処理が重くなった。
0818名前は開発中のものです。
03/01/20 17:19ID:qjSpPiA2すまん 許して
0819あぼーん
NGNG0820名前は開発中のものです。
03/01/20 18:32ID:qyHfXg8PDellか?(w
>>815
(´_ゝ`)フーン
>>qjSpPiA2
氏ね
0821名前は開発中のものです。
03/01/20 18:36ID:tgfV0fV6最終的に絶対DirectXが必要だから、
ZGPをはやいうちから使うべし。
HSPDXは回転、α合成がないのでやめたほうがいい。
0822あぼーん
NGNG0823( ´-`)y-~~~
03/01/20 18:37ID:BR2J96hlだ め ぽ
0824名前は開発中のものです。
03/01/20 18:41ID:YUkp8VS8致命的なバグがまだあったとか?
完全移行しちまったんだが。
0825あぼーん
NGNG0826( ´-`)y-~~~
03/01/20 19:00ID:BR2J96hlいや、制御文をマクロで表現するようなワケワカラン仕様がやだなーと思っただけ。
俺はforマクロなんか気持ち悪くて気持ち悪くて使えん。
愚痴ですた。
0827名前は開発中のものです。
03/01/20 19:04ID:LI5IDyec今HSPDX使ってるんだけど、ZGPの方が良い?
使い勝手はどうなんだろ。
0828あぼーん
NGNG0829名前は開発中のものです。
03/01/20 19:29ID:tgfV0fV62Dでしか使ってないが、簡単やし、多機能。
一回つかってみ、はまるよ。
0830名前は開発中のものです。
03/01/20 19:38ID:LI5IDyecオレのマシン、ボロイからなあ。どっかにZGPで作られた2Dゲームってないかな。
0831あぼーん
NGNG0832名前は開発中のものです。
03/01/20 19:46ID:U8P/pR9lサンプルにある。
あと月姫とかいうシューティングもたしかZGP
体験版やったけどびびった。
0833790
03/01/20 20:22ID:gO/C32W1実は昔ゲームプログラミングを趣味でやっていまして、その後小説書きへと
移行したのですが、HSPでのプログラミングを最近始めました。
次はawait 16でやろうと思います。
0834名前は開発中のものです。
03/01/20 20:26ID:LI5IDyecサンプルでも十分動いてるね。
月姫はウチのマシンでは動かんかった。あんがと。
0835あぼーん
NGNG0836名前は開発中のものです。
03/01/21 01:17ID:a37FJ2M3たまたまこのスレを見まして…
ZGPですが、わりと使えると思います。
ただ、バージョンが上がるたびに、
(今まで問題の無かった)どこかにバグが出てくるのは
勘弁して欲しいなー、と思います…。
0837実用に耐えない画像回転表示
03/01/21 01:19ID:l5AYVmXmangle=96 : fbit=8 : sx=0 : sy=0
screen 0,640,480 : mref vram1,66 : mw=winx : mh=winy
dialog "bmp",16 : if stat=0 : end
buffer 2 : picload refstr : mref vram2,66 : sw=winx : sh=winy
gsel 0
emath fbit : emcos cosA,angle : emsin sinA,angle
dw=sw*cosA-(sw*cosA<0*sw*cosA*2)+(sh*sinA)-(sh*sinA<0*sh*sinA*2)>>fbit
dh=sw*sinA-(sw*sinA<0*sw*sinA*2)+(sh*cosA)-(sh*cosA<0*sh*cosA*2)>>fbit
scx=sw/2 : scy=sh/2 : dcx=dw/2 : dcy=dh/2
repeat dh : y2=cnt : repeat dw : x2=cnt
x=x2-dcx*cosA-(y2-dcy*sinA)>>fbit+scx
y=x2-dcx*sinA+(y2-dcy*cosA)>>fbit+scy
y3=y2+sy : x2+=sx
if x>=0 : if y>=0 : if x<sw : if y<sh {
if x2>=0 : if y3>=0 : if x2<mw : if y3<mh {
memcpy vram1,vram2,3,mh-y3-1*mw+x2*3,sh-y-1*sw+x*3
}}
loop : loop
redraw 1 : stop
0838名前は開発中のものです。
03/01/21 01:24ID:UdIO+TJb作ったものを見せてほしいです。
0839名前は開発中のものです。
03/01/21 01:29ID:a37FJ2M3|))))))
0840あぼーん
NGNG0841名前は開発中のものです。
03/01/21 03:13ID:/6BIC5KEヽ(´∀`)ノ ワーイ 作者サソだ〜
HSPであそこまでやった根性に敬服。
で、次の言語を決めかねてるようだけど
Del厨兼HSP厨の漏れはDelphiを勧めまつ。
OOPマンセー
0842あぼーん
NGNG0843名前は開発中のものです。
03/01/21 07:17ID:e46NXxl1次あたり、カウンタと配列変数を組み合わせて、敵の出現を固定化するって
のはどうだろう。
0844836 ◆C6SeeSExNw
03/01/21 07:36ID:a37FJ2M3>HSPであそこまでやった根性に敬服。
どうもありがとうございます。
使い始めた当初はマジ泣きました。
なんたって1+2*3=9ですからねえ。
それでもなんとかあそこまでできるようになりました。
Delphiは手元にv3 professionalはあるんですよ。
…ちょっと古すぎですか。
0845あぼーん
NGNG0846名前は開発中のものです。
03/01/21 07:43ID:KIJo+GMcタマタマというにはタイミング良すぎW
という突っ込みはしないけど
HSPスレ初めての口先だけでない実力者に感涙しますた
常駐きぼん
0847あぼーん
NGNG0848名前は開発中のものです。
03/01/21 07:50ID:e46NXxl1ちょっと古めのグラフィックボードだと、DirectX8のサーフェイスあたりの
バグに巻き込まれて劇重になってたけど、DirectX9では直ったと思われ。
そか、ちょっといじってみるかな。
0849836 ◆C6SeeSExNw
03/01/21 08:04ID:a37FJ2M3いや、本当に偶々ですよ、あんまし疑わないでクダサイ…(´Д`;)
ZGP自体は最近新バージョンが出たようで、
OpenGLを呼ぶこともできるようになったらしいです。
らしい、というのはまだ試してないからなんですが…。
というか、>>836で書いたとおりの理由で(新版はバグが増えてる事がままある)、
新しいバージョンのZGPをすぐさま投入するのには抵抗があります。
0850名前は開発中のものです。
03/01/21 12:01ID:ivIZ2KOWゲームとかのアルゴリズム以外ほとんど役に立たないことを思い知らされたよ…
つーかHSPでゲーム作るのって大変なほうなの?
エディターの問題な気がする。
0851名前は開発中のものです。
03/01/21 12:33ID:RerC4SrX構造体を素直に実装できないこと、
OOPチックなデータの取り扱いが難しいため、大規模なプログラムを書こうとすると漏れができること、
グローバル変数の管理がプログラムサイズが膨れ上がるにつれおざなりになってしまうこと、
再帰が直感的に実装できないこと。
一度書いた結果、このあたりがつらいと感じました。
一般的な話ですが、プログラムはモジュール化してdevide&conquerで仕上げるのが
もっとも習熟を必要とせず、また効率がよいので、
BASICライクなHSPの文法はなかなか辛いところですね。
0852名前は開発中のものです。
03/01/21 12:37ID:T4uatCEThspdxだけでも十分ちゃ十分なんだけど、やっぱ半透明と回転があるのは魅力だよなー。
0853名前は開発中のものです。
03/01/21 12:46ID:ivIZ2KOW1806は安定してるんじゃない。
0854836 ◆.MgXVgU6KM
03/01/21 12:50ID:BJloHZDgエディター、とは、付属のスクリプトエディタのことでしょうか。
個人的にはあのエディタ以上にデバッグのための機能が弱すぎる
ことが問題です。
フリーソフトで、Hot Soup Tasterっていうデバッガがあります。
ブレークポイントの設定もできる、そこそこ使えるデバッガですが、
大規模なプログラムのデバッグを試みるとプログラムが動く前に
HSPが落ちます。これはHSP側の問題じゃないかなと思いますが。
とりあえずアドレス貼っときます。
ttp://www.pcbsoft.net/
>>851
まったくその通りですね。変数管理の辛さは身に凍みて感じています。
0855836 ◆.MgXVgU6KM
03/01/21 12:59ID:BJloHZDgうちで使ってるのは1806ですが、
sprparamにバグっぽいものが一つありまして…。
帰って来る速度値が正しい値になってないみたいです。
確証が取れてない&作者が最近までオフモードだったので
報告はまだしてませんが…。
あと、ZGPというと毎回のバージョンアップで発生する大きな仕様変更が…。
かつて、1702から180に乗り換えたときにZGPの仕様変更にあわせてコードを
書き直したのですが、仕様がかなり変わったため、大量のコード書き直しの
目に遭って泣きそうになりました…。
0856名前は開発中のものです。
03/01/21 13:08ID:2+O12QMbでもサポートは結構しっかりしてるからいいよ。
0857あぼーん
NGNG0858( ´-`)y-~~~
03/01/21 19:33ID:CWloMFR10859名前は開発中のものです。
03/01/21 22:32ID:gJ0HON3l同じタダならdelphiのがいいけど、HSPにもいいとこはあるから
漏れはどちらも使ってる派。
ところで >>836 サン、>>849と>>854とでトリップが違うけど
>>854,855の方が正式かな?
0860836 ◆C6SeeSExNw
03/01/21 22:43ID:a37FJ2M3正直どっちでもいいんですけど
# もういっこ使ってるトリップがあるのですが、冷静に考えるとちょっと痛いので
# こっちで。
いま、上に出てるやつを正式と言うことにしてください。
0861あぼーん
NGNG0862名前は開発中のものです。
03/01/22 14:19ID:uv7hV8pk0863あぼーん
NGNG0864名前は開発中のものです。
03/01/22 15:40ID:WZUAWu5t生きがいなのかねぇ
0865あぼーん
NGNG0866名前は開発中のものです。
03/01/22 15:52ID:XqTSheRT0867あぼーん
NGNG0868名前は開発中のものです。
03/01/22 16:37ID:klmfDZerD=winx:E=winy/2:K=$8000:sdim A,K:sdim B,K:dim I,256:objmode 1:mesbox A,D,E-10,5
objsize D,20:button"Go",*C:mesbox B,D,E-10,4:title"BF":stop:*C:F=0:H=0:L=0:M=0
sdim B,K:sdim G,K:J=-1:N=0:repeat:peek O,A,H:H++:peek P,G,L:if(O=0)|(N!0){break
}if O=93{M--:if M<0{N=1}if J!M{if P{H=I.M}}else{J=-1}}if O=46{poke B,F,P:F++
objprm 2,B}if O=91{I.M=H-1:if(J<0)&(P=0){J=M}M++:if M=256{N=2}}if(O=62)|(O=60){
L+=O-61:if(L<0)|(L>(K-1)){N=3}}if(O=43)|(O=45){P-=O-44:if(P<0)|(P>255){N=4}
poke G,L,P}if O=44{poke B,F,95:objprm 2,B:repeat:Q=-1:repeat 240:getkey R,cnt
if R{Q=cnt:break}loop:if Q<0{poke G,L,Q}wait 1:loop:poke B,F,0:objprm 2,B}loop
if N {H--:B+="\n\nErr"+N+"-"+H}else{B+="\n\nDone."}objprm 2,B:stop
0869868
03/01/22 16:41ID:klmfDZerD=winx:E=winy/2:K=$8000:sdim A,K:sdim B,K:dim I,256:objmode 1:mesbox A,D,E-10,5
objsize D,20:button"Go",*C:mesbox B,D,E-10,4:title"BF":stop:*C:F=0:H=0:L=0:M=0
sdim B,K:sdim G,K:J=-1:N=0:repeat:peek O,A,H:H++:peek P,G,L:if(O=0)|(N!0){break
}if O=93{M--:if M<0{N=1}if J!M{if P{H=I.M}}else{J=-1}}if O=46{poke B,F,P:F++
objprm 2,B}if O=91{I.M=H-1:if(J<0)&(P=0){J=M}M++:if M=256{N=2}}if(O=62)|(O=60){
L+=O-61:if(L<0)|(L>(K-1)){N=3}}if(O=43)|(O=45){P-=O-44:if(P<0)|(P>255){N=4}
poke G,L,P}if O=44{poke B,F,95:objprm 2,B:repeat:Q=-1:repeat 240:getkey R,cnt
if R{Q=cnt:break}loop:if Q>0{poke G,L,Q:break}wait 1:loop:poke B,F,0:objprm 2,B
}loop:if N{H--:B+="\n\nErr"+N+"-"+H}else{B+="\n\nDone."}objprm 2,B:stop
0870( ´-`)y-~~~
03/01/22 16:45ID:lCFUDwR30871名前は開発中のものです。
03/01/22 16:47ID:klmfDZer> ポインタをインクリメント
< ポインタをデクリメント
+ ポインタが示すメモリ位置のデータをインクリメント
- ポインタが示すメモリ位置のデータをデクリメント
. ポインタが示すメモリ位置のデータを出力
, ポインタが示すメモリ位置のデータに入力
[ ポインタが示すメモリ位置のデータがヌルなら対応する]までジャンプ
] ポインタが示すメモリ位置のデータがヌルじゃないなら対応する[までジャンプ
例として '@' を書くとしたら
1.単純に64回インクリメントして出力
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.
2.ループを利用して出力
>++++++[<++++++++++>-]<++++.
(1bite目を文字用、2bite目をカウンタ用とする。
[〜] は、単純に言えば指定biteが0になるまでループする。
この例だとまず2bite目に6回インクリメントして
それをループカウンタに使用している。)
0872名前は開発中のものです。
03/01/22 16:50ID:klmfDZerコマンドラインから入力にすれば7行になりそうかも。
それにしてもレス早いなw
頭の体操にはもってこい ヽ( ´ー`)ノ
0873あぼーん
NGNG0874名前は開発中のものです。
03/01/22 22:00ID:DGjj6H7zアクションやSTGにつかえるようなの。
0875( ´-`)y-~~~
03/01/22 22:47ID:GfCkIG6l0876名前は開発中のものです。
03/01/22 23:37ID:4ffgTA0Gふーん
0877836 ◆C6SeeSExNw
03/01/22 23:48ID:pWRc/ekYググってみましたが見つからない。
RPG系の素材なら簡単に見つけられますが、
アクション系は無いですねえ。
>>875
AAを素材にしろと…。
面白そうではあります。
0878名前は開発中のものです。
03/01/23 00:10ID:4FiZUY4Jそうですか…
自分もくぐってはみたのですが、やはり見つかりませんでした。
自前の目をつぶってかいたような絵を使うしかないかな。
0879名前は開発中のものです。
03/01/23 00:50ID:yuzj6bDT0880あぼーん
NGNG0881名前は開発中のものです。
03/01/23 01:28ID:t0ttDdw5おまいらが求めていたものなのかは知らんが
自作ゲームに使った素材を出来る限り公開します。
もちろん使用はフリー! どんどん使って下さい。
だとさ。アニメーション用の画像もあった
■ このスレッドは過去ログ倉庫に格納されています