☆ベルトアクション作成 Beats of rageスレッド☆ (656レス)
☆ベルトアクション作成 Beats of rageスレッド☆ http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
315: 名前は開発中のものです。 [sage] 2022/04/08(金) 01:33:24.24 ID:W27/nC7P >>304 のChangeEntityPropertyでTypeやHostileを変更するを利用して キャラ(Entity)がKnockdownCountで転ぶ(Fall)度に 敵になったり味方になったり変わる様にしたんですが、ChangeDrawmethodなどで 色も変えないと混乱の元なので却下。 動画では、一部の敵を倒すと一定時間NPCが出現するようにしましたが、このほうが分かり易いですね。 Stage2では敵を倒すとどんどん増援が来るようにしたはずが、レベル設定のGroup{Min}{Max}の 影響も受けるようで、
そんなに敵だらけになるようなことはありませんでした。 Stage1のようにEnemyポータル方式のほうがメリハリがついて良いかもしれません。 テストとはいえ、コンセプトや世界観なしで適当に登録してある敵をただ順番に出現させているだけなので ゲーム性は全く無いですね。ステージもTGS4からの流用です。オリジナルを作れる日はいつの事やらw tu.be/k1-ss0M1Klc http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/315
316: 名前は開発中のものです。 [sage] 2022/04/09(土) 02:45:15.79 ID:huMt1Pej >>302 にてlocalvar と globalvar について軽く触れていますが、もう一つ EntityVar もあり、setEntityvar({entity},{index},{var}) 的につかいます。 EX. SetEntityVar(Self, 1, 999)GetEntityVar(Self,1)な感じで、 好きな入れ物(変数)として使えます。 Localvarはシステムも使っていて、結構な頻度でリセットされるので、 キャラ(Entity)固有の変数収納場所(フラグ処理とか)として便利かと。 MOD SailorMoonでは Kastorというキャラが、これを利用し
て 2対でプレイヤーの情報を共有して、同時攻撃をするなどしています。 http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/316
317: 名前は開発中のものです。 [sage] 2022/04/09(土) 02:58:53.09 ID:huMt1Pej >>316 なので、いわゆるピヨリ値などはGlobalVarよりEntityVarに収納したほうが 管理しやすいかも知れませんが、いまのマシンパワーならメモリ効率とか考えなくても とくに支障はなさそうなので、使い易いほうで良さそうです。 http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/317
318: 名前は開発中のものです。 [sage] 2022/04/11(月) 03:53:09.40 ID:mFlGfZLx プレイヤーが敵の情報を取得して、その敵を投げた際にdrawmerhod rotateを 使って回転しながら吹き飛ぶようにしようとスクリプト組んでたんですが ぜーん全上手くゆかないので、プレイアブルキャラ作成に逃避 http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/318
319: 名前は開発中のものです。 [sage] 2022/04/12(火) 01:32:29.29 ID:vWluw1zD void slamSpin() { void self = getlocalvar("self"); void target = getlocalvar("Target"+self); if(target==NULL()) { target = getentityproperty(self, "grabbing"); setentityvar(self,3,NULL()); setlocalvar("Target" + self, target); } if(target!=NULL()) { if (getentityvar(self, 3)==NULL()){ setentityvar(self, 1, 36); setentityvar(self, 2, 16); setentityvar(self, 3, 69); } int zoom = getentityvar(se
lf,2); int zoomfct = 256+(zoom*4); int rotate = getentityvar(self,1); if(rotate>=360) { setentityvar(self, 3, 99); } changedrawmethod(target, "enabled", 1); changedrawmethod(target, "rotate", rotate); changedrawmethod(target, "fliprotate", 1); changedrawmethod(target, "scalex", zoomfct); changedrawmethod(target, "scaley", zoomfct); changeentityproperty(target,"projectile",1); updateframe(target, 0); setentityvar(self, 1, rotate+=36); setentityva
r(self, 2, zoom+=8); if(getentityvar(self,3)==99) { changedrawmethod(target, "rotate", 0); setentityvar(self,1,NULL()); setentityvar(self,2,NULL()); setentityvar(self,3,NULL()); depost(0); throw(999,1,0,4,3,0); changedrawmethod(target, "alpha", 3); spawnEF("crash",0,0,1,384,0); anichange("ANI_DODGE"); } } } http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/319
320: 名前は開発中のものです。 [sage] 2022/04/12(火) 01:51:05.23 ID:vWluw1zD 思ってたんと違ったけど、まあなんとか必殺投げが出来たので 最後の5行に別なスクリプトを呼んでますが、演出用なので 基本上のスクリプトをLooperという別なスクリプトで呼び出して使ってます。 動画のプレイヤーキャラ(黄色いの)が連続キックを繰り出しますが ああいう同じ動きをするとき便利なスクリプトで、殆どのユーザースクリプトに導入されていると思います。 @CMD Looper 3 5 という感じで7番目のFrame Data/〜に記述すると 3番目のFrame から6
番目のFrame までを5回繰り返すというもの 標準コマンドのLoop だと延々と繰り返してしますので、Looper の便利さが分かるかと思います。 動画だと動画のフレームが跳んでしまって分かりにくいですが、 なんとなーく私のやりたいこと分かっていただけますでしょうか? tu.be/CRGXjQowAG8 http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/320
321: 名前は開発中のものです。 [sage] 2022/04/12(火) 02:29:22.96 ID:vWluw1zD 上のスクリプトは汎用性はほぼ無し、条件設定として Health が25%切った相手を投げた際に30%の確立で発動な感じです (動画ではテスト用に発動条件ユルユルですが)。 なのでやっぱり 攻撃者のAttack5 などに、相手側がリアクションとして Pain5 や Fall5 を 設定しておいたほうが結果手間が掛からないかと思います。 http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/321
322: 名前は開発中のものです。 [sage] 2022/04/13(水) 00:14:16.67 ID:aDur5ZAn ピヨリについて、面倒だと思うよーとか適当な事言っておいて EntityVar に値を入れておけば楽だと思うよーとか超いい加減なことばっかレスしてるんで 一応作ってみました、結果そんなに苦労はないかも? 今回はプレイヤーがピヨリ値を蓄積し、一定に達すると4秒間ピヨリ レバガチャで時間短縮と成功でリバーサル攻撃。 内容は単純でAnim Pain実行時ピヨリ値をプラス、Anim Idleで少しづつピヨリ値減少 一定数たまったら、Executeanimationで”Ani_Follow{#}”でピヨピ
ヨ実行 このとき、レバガチャEntityをプレイヤーにBindEntityして ガチャ成功するとリバーサル攻撃用のAnim_Follow{#}にExecuteanimationするというもの レバガチャEntityにはLifespan 4が設定してあって、4秒で自動消滅 CPU戦でピヨるとかウザイだけかもという認識でしたが、作ってみたら意外と良かったw tu.be/6iLBqsjC2eI http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/322
323: 名前は開発中のものです。 [sage] 2022/04/13(水) 01:10:35.54 ID:aDur5ZAn anim pain @script if (frame==0) { void self = getlocalvar("self"); int incDM = getentityvar(self,9); if((incDM==NULL())||(incDM<=0)) { incDM=1; } incDM+=incDM; spawn01("dmflashsp", 0, 4, 0); if(incDM>=20) { executeanimation(self,openborconstant("ANI_Follow9")); } setentityvar(self,9,incDM); } @end_script ピヨリ蓄積部分もこんな感じで単純です。Anim Painの度に倍になってゆき、 数値20以上でピヨリAn
im(Follow9)を実行。 anim idle @script if(frame==5) { void self = getlocalvar("self"); int incDM = getentityvar(self,9); if (incDM<=0) { setentityvar(self,9,NULL()); } if(incDM!=NULL()) { setentityvar(self,9,incDM-=1); } } @end_script アイドル状態でピヨリ値1ずつ減少。AnimのFrameが最後の方まで描画されたら 減少するようになってます。または、Anim Sleepを設定しておいて、 そちらで下がるようにしても良いかも。 http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/323
324: 名前は開発中のものです。 [sage] 2022/04/13(水) 01:17:03.20 ID:aDur5ZAn script @script #include "data/scripts/escript.c" void main() { void self = getlocalvar("self"); void par = getentityproperty(self,"parent"); void vict = getentityproperty(par, "playerindex"); void vict2 = getplayerproperty(vict,"entity"); int HP = getentityproperty(self,"health"); int HPmax = getentityproperty(self,"maxhealth"); if(HP>=80) { spawn01("dm
super", 0, 0, 1); executeanimation(vict2, openborconstant("ANI_Follow11")); bindentity(self, NULL()); killentity(self); } else if(playerkeys(vict, 2, "moveleft")) { // Left is pressed? changeentityproperty(self, "health", HP+4); } else if(playerkeys(vict, 2, "moveright")) { // Right is pressed? changeentityproperty(self, "health", HP+4); } else if(playerkeys(vict, 2, "attack")) { // Attack is pressed? changeentityproperty(self, "heal
th", HP+2); } else if(playerkeys(vict, 2, "jump")) { // Jump is pressed? changeentityproperty(self, "health", HP+6); } } @end_script レバガチャ部分もシンプルで、方向キーで+4、アタック+2、ジャンプ+6で 80以上溜まったら成功(Follow11、リバーサル攻撃) http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/324
325: 名前は開発中のものです。 [sage] 2022/04/13(水) 01:25:34.49 ID:aDur5ZAn 2行目で #include "data/scripts/escript.c" してるのは、 成功時の演出 spawn01("dmsuper", 0, 0, 1);の為だけです。 anim spawn @script void self = getlocalvar("self"); changeentityproperty(self, "health", 1); @end_script 最初に Health 100(MaxHP)などと設定しておき、Anim Spawn時に 現HPを1にしています。 これを プレイヤーにBindEntity するのですが、スクリプト上方のSelf,Par,Vict,Vict2 ここを理
解するのに頭こんがらがるかも知れませんね、元々他のモッダーさんが組んだ スクリプト(古くからあるのでBloodBane氏でしょうか?)をアレンジしましたです。 http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/325
326: 名前は開発中のものです。 [sage] 2022/04/13(水) 04:05:16.91 ID:aDur5ZAn 元々、仕様とバグのギリギリいってる手法なので、 ピヨリ中にもう一回敵からのBindEntityを利用した攻撃を受けると OpenBoRが落ちますw やっぱり標準コマンドで何とかしたほうが良さそうですね。 レバガチャで回復早めるとかしなければ、EntityVarを使って 値を蓄積して、一定時間無防備になるというのは バグの危険なく可能です。 中々難しいものですね。 http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/326
327: 名前は開発中のものです。 [sage] 2022/04/17(日) 02:42:23.91 ID:xLR26ELd なんか煮詰まったので、プレイアブルキャラ作成に逃避。 ムゲンからキャラのインポート(聞こえが良いですね)。 ここで新たに、光弾問題に遭遇、どうもDBキャラはいろいろ撃ちますが、 単純に弾を撃つならCustKnifeなりで作ればよいし、誘導弾ならType NPCのSubType Chaseとかで 追尾させればよいのですが、なんとなく弾幕作りたいな〜とかやってドハマリ中。 通常攻撃とシンプルな特殊技はこんな感じかな? tu.be/_xQBhCUit8c http://mevius.5ch.net/test/r
ead.cgi/gamedev/1547405874/327
328: 名前は開発中のものです。 [sage] 2022/04/17(日) 03:48:50.61 ID:xLR26ELd SpawnEF S{vName} {X} {Y} {Z} {S} {A} {R} {Ani} ナニコレ? 私個人のスクリプトですが、上の動画でも多用されています。 XYZは単純に座標、SはScale(Zoom)AはAlpha(透明度)R(回転)Ani(Anim) 本来、複雑な手続きを簡略化するのもスクリプトのメリットの一つだと思いますが 色々出来るようにして、かえって煩雑になった悪例w ちゃんと設計やらしない大雑把な性格そのままです。 怪我の功名とでもいいますか、一つAnimがあれば回転拡大縮小をつかって さまざま
なエフェクトに活用出来そう。 ただし、ソースを見ないと意味不明、ですが、自身のオリジナルではないので アップは憚れるという、ムゲンと共通のジレンマ。 オリジナルの作者様には尊敬しかないです。 http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/328
329: 名前は開発中のものです。 [sage] 2022/04/17(日) 16:44:32.78 ID:xLR26ELd openBoRには標準でsin cos atanなど揃っていたので、扇弾を弄ってたのですが 考えてみれば敵はそんなのお構いなしですし。 自分が敵にやられたらイラだつだろうしで、全方位弾にしました。 おおよその敵の方向に撃つ直進弾がたまに止まっちゃいますがご愛嬌w 一見おおっ!となっても実は使い道の無い技ということで。 特に敵以外との衝突判定はしてないので32×4射ってますが さすがopenBoR処理落ちなどしないですね。 セブンティーン氏が洪水おこしてますが、技が思
いつかないので適当です。 Krrnはサポートに飛び込んできて、入力に連動して攻撃を繰り出すように出来ないか考え中。 http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/329
330: 名前は開発中のものです。 [sage] 2022/04/18(月) 12:39:49.39 ID:+se/Swu+ 何の事だと思ったら、動画の話しなんですね。 まだ、何も分かりませんが、日本語での解説ありがたいです。 http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/330
331: 名前は開発中のものです。 [sage] 2022/04/19(火) 03:14:29.19 ID:a3xIrRSp >>275 Anim Death 中に SpawnFrame を実行させれば 倒されるたびに新たな敵({Entity}なら何でも)を出現させられます。 Anim Deathを必ず実行させる為に Falldie 1or2(Death 1or2) nodieblink はお好みで設定すればOK。 ですが Level(ステージやBranch)の中で Group 1 2 など出現キャラ数に 制限をしていると、SpawnFrame が実行されないので注意です。 Weapon で設定した場合、一定数転んだら別キャラ({Weapon})のような感じだったり 任意のタイミング(
Freespecialなど)で切り替えたりして変身的に使えます。 {Weapon や Entity}で継承される技(Anim {xxx})が被ったりすると 上書きされたり(止める事もできますModelflag)するので気をつけないと 謎の技が暴発したりしますw Weapon を使うなら Animal も研究すると面白いかもしれませんね。 http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/331
332: 名前は開発中のものです。 [sage] 2022/04/19(火) 03:24:07.55 ID:a3xIrRSp >>別キャラ({Weapon}) ({WeaponFrame} や{WeapLoss} などを設定して切り替わるようにする)。です。 このあたりの設定の細かさは流石です。 http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/332
333: 名前は開発中のものです。 [sage] 2022/04/20(水) 21:43:31.43 ID:PW9VJXxm weaponの技の上書きというより、マージと言ったほうがわかり易いかも? Anim Freespecial1のみプレイヤーキャラにあって、weaponにAnim Freespecial2があった場合、武器を拾ったプレイヤーは両方使えるようになります。 Modelflag{0,1,2}を設定してないと、混ざったままになってしまうことがあるということですね。 http://mevius.5ch.net/test/read.cgi/gamedev/1547405874/333
334: 名前は開発中のものです。 [sage] 2022/04/22(金) 01:04:20.67 ID:g9+olsrt 算数も割り算の時点で微妙な私は、もちろんプログラムなんて全く分からなかったけれど kt住江さんの作品に出会ってOpenBoRを知って、なんとか拡散砲を撃てるようになりました。 リソースは全部ひと様のものなので本来動画すら微妙なんですが、 スクリプトの中身見たら四則演算って知ってる?って感じですが そんな私でも、For文とDrawmethodを組み合わせると、 こんな感じも演出出来てしまう。そしてすっごく軽いOpenBoR凄いという話です。 tu.be/hpDEMufHzC8 http:/
/mevius.5ch.net/test/read.cgi/gamedev/1547405874/334
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 322 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.023s