☆ベルトアクション作成 Beats of rageスレッド☆ (658レス)
1-

262
(2): 名前は開発中のものです。 [sage] 2022/02/09(水) 03:04:22.06 ID:FIV9SGUf(2/2) AAS
なんか、なに言ってんだ?状態ですね。

>>160
160(4): 名前は開発中のものです。 [sage] 2021/06/13(日) 00:36:10.90 ID:54syd5Da(1/3) AAS
楽しい BindEntity

anim idle
loop 1

@script
if (frame == 0) {
clearspawnentry();
setspawnentry("name", "Ariel");
void vSpawn = spawn();
bindentity(vSpawn, getlocalvar("self"), -60, 0, 0, -1, 4, 1);
}
@end_script

これは、プレイヤーキャラが アイドリング状態になるたびに Arielというキャラを呼び出すもの
もちろんArielは自キャラ同様 MODELS.txtで設定しておく必要があります。
幾つか自キャラを選べるなら、そのうちの一つで良いのです。
ただし、呼び出すキャラと呼び出されるキャラ、ややこしいですね、上の例だと
Selfが親でArielが子になります。
書式は bindentity(entity, target, int x, int z, int a, int direction, int bindanimation, int sortid)
長いですね、entity(子)target(親)x,y,z(親の何処に表示するか)
direction(向き、0出現した時の向き、1親と一緒、2常に右、−2常に左)
bindanimation(子に親と同じAnimが設定されていると実行される)
sortid(重なった際に優先して表示されるか?なので、こだわり無ければ別に)
一番面白いのは bindanimation部分でしょうか、0何もせず、1親と同じAnimを実行
2親と同じAnimをFrame数までシンクロして実行、3は無くて
4は基本1で親と同じAnimが無ければEntity(上だとAriel)を消去(bindentity消去)
夢が広がるコマンドですね。
に詳しく載ってました。
>>230
230(3): 名前は開発中のものです。 [sage] 2022/01/02(日) 17:52:59.47 ID:hMCLGhN2(1) AAS
本年も宜しくお願いいたします。
さて、上の方で Bindentityコマンドを利用して、例えばロボットキャラクターを
別パーツで動かす事も出来ると紹介しました。
実際に動かすとどのようになるか、実験動画をアップしましたので興味があったら
検索してみてください(お手数ですが;)。
[OpenBoR][BindEntity] でたぶんヒットします。
ちょうど少し上で話題に上がった LoRのシーン6で出現するキャラクターです。
おあつらえ向きにロボットタイプの敵ですが、アームパーツが攻撃時の時にしか描画されなかったものに
BindEntity をつかってAnim IdleやWalkにもアームパーツを描画させるようにしました。
これは本体のAnimとアームのAnim作成という2重の手間がかかりますが、
個人的にとても好きな表現ができます。
ただBindEntityの特性なのか、投げや吹き飛ばしで画面外に飛び出すと、アームのBindが
外れてしまうんですよね。
それがなければ Anim Spawnで一回処理するだけでよいのですが、動画ではAnim Fallで
KillEntityして、Anim Riseで再度BindEntityしなおしてます。
で検索して出てくる動画(1分程度、音声無し)に、
身体と腕が別な Entityで構成された敵がでてきます。
腕パーツのEntityには Anim attackやAnim idle、Anim Walkなどが用意してあって
身体パーツのEntity が動くと 腕パーツの同じAnimが実行されています。
263: 名前は開発中のものです。 [sage] 2022/02/09(水) 22:24:10.37 ID:3wZqpd99(1) AAS
>>261-262
うおーありがとうございます!>>160の通りにやったら無事成功しました
解説いただいたんで理解が深まりましたよ、何度もご丁寧にありがとうございました!
264: 名前は開発中のものです。 [sage] 2022/02/11(金) 02:59:45.13 ID:aG1kfbJs(1/3) AAS
すでにCrimeBustersやLadiesOfRageなど参考になる作品が挙がっていますが
MOD内のスクリプトや各Entityの動作なんかが素直で読みやすいと個人的に感じるのが
WorldHeroesSupremeJusticeExtraとか、RocketViper2Purificationなどで入手し易いと思います。
同じRocketViperでも最近のものはメニューやプレイヤーセレクトなどもスクリプト使いまくりで
派手で凄いですが、なにもそこまでって感じなので、
MOD作成のお手本としては少し古いものをお勧めします。
特にRocketViper2Purificationあたりは、ストーリー(アクション画面上で展開)や
背景のアニメーションなど、わかり易く作られています。一通り中身を覗いてみれば
漠然とした自分のやりたい表現の手段が見えてくるんじゃないかなー?と思います。
BurnigFoxSilverEditionあたりも良いかもしれません。
265: 名前は開発中のものです。 [sage] 2022/02/11(金) 18:41:50.61 ID:aG1kfbJs(2/3) AAS
すでにご存知の方も多いかと思いますが、ChronoCrashサイトにて
Piccolo氏が ToolKitを発表されています。
簡単に言えば、OpenBoR Statsです。
まだ試せてないですが、ムゲンのSFFやAIRファイルも読めるようです。
使用感としてはムゲンのFFのように、その場でAnimを再生したり
オニオンスキンが使えたりで、新鮮な気持ちでキャラ作成ができそうです。
266: 名前は開発中のものです。 [sage] 2022/02/11(金) 18:57:17.48 ID:aG1kfbJs(3/3) AAS
>>262 さん
ちょっとした表示だけなら
Subentity {entity}
SpawnFrame # x z y c
あと似たものにSummonFrame
#はそのAnimでのFrameを上から数えて何番目か x z y は座標、
cはキャラクターの画像の位置か、画面の左上を0として数えるかです。
これを使って{entity} を表示させる事ができるんですが、
この場合、キャラクターが移動すると
{entity} は画面上の最初に表示された位置に留まってしまいます。
エフェクトなんかには便利です。
SummonFrameを使った場合の違いは、呼び出したものを任意のタイミングで消せる事でしょうか。
呼び出したキャラが倒れたら一緒に消えるとかできます。
SpawnFrameだと{entity}にLifeSpan を設定しておかないと表示された場所に残り続けます。
267: 名前は開発中のものです。 [sage] 2022/02/15(火) 03:22:00.11 ID:XMpwbOyV(1) AAS
>>251
251(3): 名前は開発中のものです。 [sage] 2022/02/05(土) 02:10:42.29 ID:8GsEw0Lg(2/3) AAS
@cmd slamstart
@cmd position 0 30 60 1 0
@cmd depost 0
@cmd throw 40 1 5 1 0 0
@cmd clearlocalvar

使い方として、この辺はお約束の形になります。
void throw(int Damage, int Type, int Vx, int Vy, int Vz, int Face)
パラメータとして、ダメージ、攻撃のタイプ(1でOK)、投げる威力(横方向)
投げる威力(縦方向)、投げる威力(手前奥行き)、ターゲットの向き
基本的に掴み(slamstart、depost、clearlocalvar)とセットで使います。
打撃からの投げや、フィニッシャーなど、スクリプトのヴァリエーションで色々違うので、
お持ちのスクリプトファイルを覗いてみてみてください。
にあるスクリプトに @cmd dasher を組み合わせて
簡単に 相手を引きずって投げる 動作をさせてみました。
動画ではカクカクですが、もともとのキャラクターはムゲン用に作成されたものなので
スプライトが豊富でとてもスムーズに動いてます。
うちのPCが貧弱なのでコマ落ちしてますw
うちの環境ではPicclo氏のToolKitではAirファイルの変換は出来なかったので、
まだエディター部分以外はメニュー表示だけかもしれません。
まだ暫くはOpenBoR Stats0.53のお世話にならないとです。
268
(1): 名前は開発中のものです。 [sage] 2022/02/17(木) 03:44:44.17 ID:PDHSLg1A(1) AAS
有名で入手し易い作品、InfinityWar
プレイアブルキャラも非常に多く、疎いのでちょっと判りませんが
きっと原作のキャラの特徴を捉えているんだろうなと感じます。
スプライトの枚数は少なくてもとても活き活きしているので
一度覗いてみると、とても参考になります。
特に、スクリプト部分では Updated.c 部分が Zoom (技を使うとき一瞬拡大)特化なので
必殺技のエフェクト時にどのように画面の一部を拡大してるか、わかり易いと思います。
Anim の中で Loop 1を設定して、@CMD で Velocityを 0 0 0 にすると浮きっぱなしになるのは
かなり参考になりました(Cancel 0 99 0 A Freespecial#などで離脱する手段が必要)。
269: 名前は開発中のものです。 [sage] 2022/02/19(土) 03:28:54.07 ID:9tJDMn9r(1/4) AAS
>>268 で、Anim中に Loop 1 など設定されていると
ChangeEntityProperty({Entity}, "Animation", openborConstant("ANI_Freespecial"))
など使って別なAnimを実行させようとしても抜け出せない事があります。
そんなときは、PerformAttackやExecuteAnimationを使う事になりますがそれでもだめな事があります。
Running # # # 1 1 などと設定されていると特にわかりやすいのが
Anim Run中に 一旦 Freespecial# に移行しても、また Anim Runに戻ってしまいます。
Anim Walkや Idleに戻ってしまうなど。
これはOpenBoRの仕様なのでどうしようもない面もあるのですが、
ChangeEntityPriperty({Entity}, "AIFlag", "Running", 0) とすると
Anim Runのループから抜け出せたり、同様にAnim Idleなら
ChangeEntityPriperty({Entity}, "AIFlag", "Idling", 0)
Walking、Jumping などなど、様々なAnim毎ににあります。
DCManualにもAIFlagに関してはほぼ載っていないので(私の探し方がわるいかも)、
いろいろな方の作られたスクリプトを覗くか、自分で総当りで試すしかなさそうです。
まあでも、IdleやRun、Jumpから抜け出せれば大概の事は足りるんじゃないでしょうか。
270: 名前は開発中のものです。 [sage] 2022/02/19(土) 03:40:05.66 ID:9tJDMn9r(2/4) AAS
私がよくやるのが、Anim Grabに
Cancel {startFrme} {endFrame} {0} {A2} Freespecial#

ex.: Cancel 0 99 0 A2 Freespecial1
と記述して、キャンセル技が出るようにすることです。
乱戦中、コマンド技を出そうして意図しないところでGrab状態になってしまい、
とっさにJumpボタン(Grab終了技(Anim_Attack3))を押せればよいのですが、
気付かずお見合いになって他の敵から攻撃を受けてしまうことがあります。
そんな時、GrabにCancelコマンドを記述しておけば、下・右・A2なんてコマンドの時
敵を掴んでしまってコマンド技が不発でも、Cancelが発動して、何らかの技が出せるようになるわけです。

まああ、Grab状態のときは BBox 0 で無敵にしておけばよい事なんですがw
271: 名前は開発中のものです。 [sage] 2022/02/19(土) 04:49:31.93 ID:9tJDMn9r(3/4) AAS
とても凄いスクリプトがChronCrashで発表されてます
2人でプレイしていた場合、画面のプレイヤーキャラが離れると
画面が分割されて表示されるというもの。
画面内にもう一つ画面を用意して、プレイの様子を映し出す演出は
RocketViper2等でもありましたが、プレイヤーの動きに合わせて
画面を分けるなんて凄い技術ですね。
272: 名前は開発中のものです。 [sage] 2022/02/19(土) 10:48:11.30 ID:9tJDMn9r(4/4) AAS
もう一つ同じKratus氏が上げてるzoomBoss も大変使い勝手が良いです。
特定の場所をアップ(zoom)にすることができるので、ボスに限らず
ステージの目標やゴールにも簡単に応用できます。

この方のように発想を道具(スクリプトライブラリ)と結びつけられる能力を一欠片でも欲しいw
273: 名前は開発中のものです。 [sage] 2022/02/20(日) 02:17:16.16 ID:4xgUpQdN(1) AAS
Kratus 氏の作成したスクリプト Zoom for Bosses を早速つかわせていただいて
動画にしてみました。
ついでに上のほうにあった ランダムな敵の出現スクリプトもテスト。
スクリプトは上手く動いてくれているのですが、WallやPlatformの設定がイマイチで
設定しても基本透明なので確認が難しいです。
if (openborvariant("count_enemies")<4) { 〜
この一行を足して、敵の数が 4以下になったら補充って感じで敵をスポーンさせます。
Level.txtのGroup {Min} {Max} と同じような感じになります。
274
(1): 名前は開発中のものです。 [sage] 2022/02/24(木) 04:36:47.41 ID:Xp/HWEAz(1) AAS
そういえばこれって防御力って概念はないんですかね?
275
(2): 泥酔迷走スーパーラリー [sage] 2022/02/24(木) 10:55:39.59 ID:+Q1phfs/(1) AAS
キャラの中にキャラを埋め込んで
やられたり倒したりしたら
変身できたりしたら面白いのにね
生物から背景(ドラゴンズクラウンラスボス)とかね
276
(1): 名前は開発中のものです。 [sage] 2022/02/24(木) 23:08:04.14 ID:lG9kY8kz(1) AAS
>>274
offense
defense という要素がありますよ
それぞれに、normal攻撃からburn,freezeなどなど
なので普段のAttackコマンドなどでは攻撃力を変えずに
offense all 1.5 とヘッダーで設定すれば、全ての攻撃が1.5倍に
defense all 0.6と設定すれば被ダメージが40%減らせます。
>>275さん Weapon コマンドを上手く使って変身を実現してるModなら
ありましたね。
277: 名前は開発中のものです。 [sage] 2022/02/25(金) 14:46:49.81 ID:jrQUKCkk(1) AAS
>>276
defense all いけました!
ググっても情報見つけられなかったんで助かりました!
278: 名前は開発中のものです。 [sage] 2022/02/27(日) 01:07:56.28 ID:ofDNDNVo(1/6) AAS
Offense は 特殊攻撃 Burn Shock Freezeなどの攻撃力を上げ下げするだけなんですけど、
Deffense はBurnは吸収する、 Freezeは弱点で喰らいダメージ1.5倍 などなど
様々な設定ができるようなんですが、わたしもまだ真っ当に弄った事ないので
All で全ての攻撃に耐性をつけるくらいしか。
MODではD&D系のもので設定してる事が多いかも?
うろ覚えなんですが、通常攻撃は全く効かず、炎の攻撃で秒サツみたいな敵キャラが
登場したような?
279
(1): 名前は開発中のものです。 [sage] 2022/02/27(日) 03:32:35.68 ID:BVcqNQ44(1) AAS
掴み技からレバガチャで脱出みたいなのってできます?
280
(1): 名前は開発中のものです。 [sage] 2022/02/27(日) 20:33:11.90 ID:ofDNDNVo(2/6) AAS
>>279
mod レスキューコマンド2やトラブルインサウスタウンなどで
使われてますね、仕組みとしては
掴み側の敵の攻撃が成功したら、レバガチャ用のentityを喰らったプレイヤーにbindしてます。
レバガチャentityはプレイヤーのレバーとボタン入力をスクリプトで検知して
自身のhealthを減らし、0になったら消滅するので脱出成功。
掴んだ側の敵は、delayなどで一定時間待ち時間を
281
(1): 名前は開発中のものです。 [sage] 2022/02/27(日) 20:37:32.32 ID:ofDNDNVo(3/6) AAS
経過したら、攻撃コマンドを実行させるというもの。
プレイヤーを掴むときはスクリプトのslamstart&#12316;positionコマンドで拘束します。
実際にmodをプレイしたほうがわかり易いかもw
282
(1): 名前は開発中のものです。 [sage] 2022/02/27(日) 21:01:29.27 ID:ofDNDNVo(4/6) AAS
script @script
void main()
{
void self = getlocalvar("self");
void attacker = getentityproperty(self,"parent");
void victim2 = getentityproperty(attacker, "opponent");
void victim = getentityproperty(victim2, "playerindex");
int HP = getentityproperty(self,"health"), HPmax = getentityproperty(self,"maxhealth");
int x1 = getentityproperty(attacker,"x"), z1 = getentityproperty(attacker,"z");
if(HP>=HPmax){
changeentityproperty(victim2, "position", x1, z1);
performattack(victim2, openborconstant("ANI_FREESPECIAL"));
setidle(attacker, openborconstant("ANI_IDLE"));
bindentity(victim2, NULL());
performattack(attacker, openborconstant("ANI_PAIN"));
setentityvar(self, "madjon", NULL());
killentity(self);
} else if(playerkeys(victim, 2, "moveleft")){ // Left is pressed?
changeentityproperty(self, "health", HP+4);
} else if(playerkeys(victim, 2, "moveright")){ // Right is pressed?
changeentityproperty(self, "health", HP+4);
} else if(playerkeys(victim, 2, "attack")){ // Attack is pressed?
changeentityproperty(self, "health", HP+2);
} else if(playerkeys(victim, 2, "jump")){ // Jump is pressed?
changeentityproperty(self, "health", HP+6);
}
}
@end_script
これが心臓部で、レバガチャEntityのヘッダー部に記述すると、このEntityが存在しているあいだ実行され続けます。
で、Anim Idleにレバガチャの画像を表示させればOK、上のスクリプトだと、Healthを増やしてMaxHealthまで行ったら脱出ですね。
283
(1): 名前は開発中のものです。 [sage] 2022/02/27(日) 21:07:55.32 ID:ofDNDNVo(5/6) AAS
レバガチャEntityが出現するとき(Anim Spawn)、NPCやOBSTACLEを掴んだら
自動で消滅するようになっていますね。
anim spawn
@script
void self = getlocalvar("self");
void atk = getentityproperty(self,"parent");
void vtm = getentityproperty(atk, "opponent");
changeentityproperty(self, "health", 1);
if(getentityproperty(vtm, "type")==openborconstant("TYPE_NPC")
||getentityproperty(vtm, "type")==openborconstant("TYPE_OBSTACLE"))
{
killentity(self);
}
@end_script
284
(1): 名前は開発中のものです。 [sage] 2022/02/27(日) 21:51:12.10 ID:ofDNDNVo(6/6) AAS
別のテストのときの動画なので、ちょっと混沌として分かりずらいですが
レバガチャの様子がが映ってたので参考になれば。

tu.be/V4o4JU56YFU
285
(1): 名前は開発中のものです。 [sage] 2022/02/28(月) 02:55:23.68 ID:T0w0iYnz(1) AAS
>>280-284
ぐおおおおお!お手間取らせました、すみません!

やっぱり簡単にはいかないんですね…全く理解が及びませんw
少しずつやってみようと思います、ありがとうございましたm(_ _)m
286: 名前は開発中のものです。 [sage] 2022/02/28(月) 18:49:21.11 ID:e4RME2GR(1) AAS
>>285
mod トラブルインサウスタウンの data/chars/misc/grab/grab1.txt
に上のレバガチャentityがあります。
基本 >>251 のようなslamスクリプトと一緒に混ぜて使います。
modをプレイして動作を実感したあと、entityのtxtやスクリプトを
覗いたほうが理解しやすいかも?
txtをコピーしてキャラ画像を差し替えてみたりとか。
私は良く関係無い画像を表示させて、しおりというか目印にしてますw
1-
あと 372 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.022s