このページはSmash Attacksについてのページです。
基本こちらは、管理人はほとんど手をつけません。
こちらの身勝手ですが追加編集お願いしますm(_ _)m
基本こちらは、管理人はほとんど手をつけません。
こちらの身勝手ですが追加編集お願いしますm(_ _)m
目次
Smash Attacksとは
コチラから手に入る、各キャラの技性能や運動性能を確認、編集できるアプリケーションです。
キャラの技性能や運動性能のファイルはこちら
編集して、テクスチャハックのときと同じように、フォルダにセットしFile Patch Code 3.5.1コードを作動させると動画サイトにあるようなキャラを生み出すことができます。
動画 brawl+ Project SA
キャラの技性能や運動性能のファイルはこちら
編集して、テクスチャハックのときと同じように、フォルダにセットしFile Patch Code 3.5.1コードを作動させると動画サイトにあるようなキャラを生み出すことができます。
動画 brawl+ Project SA
※PSAv2.70で開けないpacファイルは、v1.90を使うことで開いて編集できます。
しかし、v1.90ではポケトレは編集できますが、デデデを編集することができません。
そのため、デデデやポケトレの編集はv1.90ではなく、Dantarion氏作成のPSAMod.exeを使うことになります。
PSAMod.exeをSmashAttacks.exe(v1.90)と同じフォルダ内に保存、配置してこちらを使用するようにして下さい。
ただし、保存時にpacファイルのサイズが数十KBほど増加するバグが確認されています。、編集する際には必ずSave As(名前を付けて保存)で、元のファイル名とは別のファイル名を付けて保存してください。こうすることでバグの発生率をある程度抑えられ、万が一バグが発生しても被害を最小限に抑えられます。
しかし、v1.90ではポケトレは編集できますが、デデデを編集することができません。
そのため、デデデやポケトレの編集はv1.90ではなく、Dantarion氏作成のPSAMod.exeを使うことになります。
PSAMod.exeをSmashAttacks.exe(v1.90)と同じフォルダ内に保存、配置してこちらを使用するようにして下さい。
ただし、保存時にpacファイルのサイズが数十KBほど増加するバグが確認されています。、編集する際には必ずSave As(名前を付けて保存)で、元のファイル名とは別のファイル名を付けて保存してください。こうすることでバグの発生率をある程度抑えられ、万が一バグが発生しても被害を最小限に抑えられます。
Smash Attacksで編集するには
pacを使うにはテクスチャハックの環境さえあればいいのですが
pacを編集する上で必要な知識は、コードの特に技変更系の知識、BASICやC言語等のプログラミング(if else、構造体、ユーザー指定関数等)の基礎あたりがあると良いと思います。
マニュアルはココにその他の情報はココにあるのでgoogle等のページ翻訳を使って参考にしてください
pacを編集する上で必要な知識は、コードの特に技変更系の知識、BASICやC言語等のプログラミング(if else、構造体、ユーザー指定関数等)の基礎あたりがあると良いと思います。
マニュアルはココにその他の情報はココにあるのでgoogle等のページ翻訳を使って参考にしてください
Attributes
Attributesは、キャラの運動性能(ジャンプ回数や走る速さや吹っ飛びにくさ等)を調整するところです。
編集方法はAttributesタブの表から変えたいものを選び、新しい値を入力してください。
一番簡単で解りやすいのはジャンプ回数(*0x060 Jumps)だと思うので、10でも20にでもして試してみれば何をしているのか解ると思います。
一番簡単で解りやすいのはジャンプ回数(*0x060 Jumps)だと思うので、10でも20にでもして試してみれば何をしているのか解ると思います。
■Dataフォルダ内のAttributes.txtの書式の説明(Version0.2Beta)
|
0x004
Walk Acceleration
The speed of acceleration while walking. 0 | |
| (1) | 変数が格納されているアドレス 変数は通常浮動小数点で表されているが、頭に「*」がついているものは通常の16進数です。 しかしVersion0.2Betaではそこらへんの処理は勝手にやってくれるので気にしないでいいです。 唯一気にすることと言えば、通常は+-と小数点が使えるのですが「*」の場合は自然数しか入力できません。 |
| (2) | アドレス名 |
| (3) | アドレスの値が何を示しているのかの説明です この部分は、日本語にしても問題なさそうなので日本化する再はココを変えると良さそうです。 なので一番簡単な日本語化の方法はAttributes.txtを翻訳サイトで翻訳してこの部分を置き換えるのが手っ取り早そうです。 |
| (4) | 変数の本来の値にプラスされている値 大抵は0ですがジャンプ回数は+1されています。 |
基本リスト一覧
Action Events
Specials
| Specials |
Sub Action
属性
| 属性リスト |
アイテム
Event
Event解説
Set Loop
Eventを何回繰り返すかを設定する。XをFFFFFFFFにすると無限に繰り返す。
↓設定の仕方
Set Loop X times
(繰り返したいEventをここに設定)
Execute Set
↓設定の仕方
Set Loop X times
(繰り返したいEventをここに設定)
Execute Set
Loop Rest
Set Loopを無限に繰り返すように設定した場合は、Execute Loopの前に必ずこれを設定しておかないと、ゲームがフリーズしてしまう。
Execute Loop
Eventの繰り返しを終わらせる。Set Loopとは必ずセットで。
Timers
Asynchronus Timer
動作(Subaction)が始まってからのフレーム数を指定する。
この後ろにEventを配置することで、「動作が始まって何F後に次のEventを開始させる」といったことができる。
この後ろにEventを配置することで、「動作が始まって何F後に次のEventを開始させる」といったことができる。
Synchronus Timer
前のEventが終わってからのフレーム数を指定する。
この後ろにEventを配置することで、「前のEventから何F後に次のEventを開始させる」といったことができる。
この後ろにEventを配置することで、「前のEventから何F後に次のEventを開始させる」といったことができる。
例)動作が始まって5フレーム後に攻撃判定を付加させ、その2フレーム後に判定を消す場合
Asynchronus Timer: frames=4
Offensive Collision
Synchronus Timer: Frame=2
Terminate Collision
Asynchronus Timer: frames=4
Offensive Collision
Synchronus Timer: Frame=2
Terminate Collision
If系
条件によって、実行するEventを変えるときによく使用される。
数学の論理について学んでいると理解しやすくなる。
数学の論理について学んでいると理解しやすくなる。
| If | If文の中で最も単純なEvent。つけたい条件をRequirementで指定する |
| If(Value) | パラメーターにVariable(ただしTypeはValue:16進数)が加わったもの。 条件に関わる要素がいくつもある条件はこれを使う |
| If(Comparison) | パラメーターにVariable(変数)、Comparison Method(不等号の設定)が加わったもの。 2つの異なる値や変数を比較させて条件をつける |
| And | 追加条件を指定するときに使う、論理積 |
| And Value | "And"のIf(Value)版 |
| And Comparison | "And"のIf(Comparison)版 |
| Or | 複数の条件のうち一方を満たせばOKにしたい場合はこれを使う、論理和 |
| Or Value | "Or"のIf(Value)版 |
| Or Comparison | "Or"のIf(Comparison)版 |
| Else | 前に指定した条件を満たさなかった場合の実行先を指定する |
| Else If | "Else"のIf版 |
| Else If Value | "Else"のIf(Value)版 |
| Else If Comparison | "Else"のIf(Comparison)版 |
| End If | If文は必ずこれを最後において閉じること |
基本
If文は、「"こういう時に"こういうことをさせたい」という時に使われるEventです。
例えば、
「攻撃が相手に当たったら、自分の蓄積ダメージ%から10%を引く」
というコマンドを書きたいとします。
このとき
例えば、
「攻撃が相手に当たったら、自分の蓄積ダメージ%から10%を引く」
というコマンドを書きたいとします。
このとき
- 条件「攻撃が相手に当たった」
- 条件を満たしたときに実行するEvent「自分の蓄積ダメージ%から10%を引く」
となるので、それに対応したRequirement(条件)とEventを探します。
- 「攻撃が相手に当たる」に対応するRequirementは「3D(Hitbox Has Connnected)」
- 「自分の蓄積ダメージ%から10%を引く」に対応するEventは「Add/Subtract Damage」
なので、SmashAttacks上で書かれるコマンドは次の通りになります。
| If: 3D (Hitbox Has Connnected) (←もし攻撃が相手に当たったら) Add/Subtract Damage: 1-FFF6D840 (←蓄積ダメージ%から10%引く) End If: (←If文は必ずこれで閉じる) |
If Value
"If Value"は、「○○のボタンを押したときに、こういうことをさせる」といったように、条件に対する要素がいくつもあるときに使用するIf文です。
さっきと同じように例を挙げます。例えば、
「Bボタンを押すと、Subactionが59に切り替わる」
というコマンドを書くとします。
このとき
さっきと同じように例を挙げます。例えば、
「Bボタンを押すと、Subactionが59に切り替わる」
というコマンドを書くとします。
このとき
- 条件「ボタンを押す」
- 条件に対する要素「Bボタン」
- 条件を満たしたときに実行するEvent「Subactionが59に切り替わる」
となるので、さっきと同じようにRequirement(条件)とEventを探します。
- 「ボタンを押す」に対応するRequirementは「Button Press」
- 「Bボタン」に対応する要素のVariableは、Typeを"Value"にして「00000001」
- 「Subactionが59に切り替わる」に対応するEventは「Change Subaction」
なので、SmashAttacks上で書かれるコマンドは次の通りになります。
| If Value: Button Press: 1 (←もしBボタンを押すと) Change Subaction: subaction = 59 (←Subactionを59に切り替える) End If: (←必ずこれで閉じる) |
If Comparison
"If Comparison"は、「2つの値を比べて、こういう大小関係ならこういうことをさせる」といったように、条件を比較で指定したいときに使うEventです。
このIf文を使うときには、必ず条件は"Compare"にしてください。
例として、
条件:3Dスティックをキャラの向いている方向に倒す
実行内容:キャラの速度(Character Momentum)に、向いている方向に1.2加える
ときには、
このIf文を使うときには、必ず条件は"Compare"にしてください。
例として、
条件:3Dスティックをキャラの向いている方向に倒す
実行内容:キャラの速度(Character Momentum)に、向いている方向に1.2加える
ときには、
| If Compare: IC-Basic[243(1011)] >= IC-Basic[77(3149)] (↑もしキャラの向いている向きに倒したら) Add/Subtract Momentum: 1-11940, 1-0 (←キャラの向いている方向に速度を加える) End If: (←必ずこれで閉じる) |
And系
"And"は、「こういう状況で、"しかも"こういう時にこういうことをさせる」というように、前に指定した条件にさらに条件を追加したいときに使います。If文の後に挿入してください。
Or系
"Or"は、「こういう状況か、"あるいは"こういう状況ならこういうことをさせる」というように、いくつかある条件のうち1つでも条件を満たせば次のコマンドを実行する、ということをしたいときに使います。And系同様、If文の後に挿入してください。
Else系
"Else"は、「こういう状況"でなければ"、こういうことをさせる」というように、指定した条件を満たさなかった場合にコマンドを実行させたい場合に使います。If文の条件を満たした場合のコマンドの後に、これを挿入してください。
コマンド例:
コマンド例:
| If : On Ground |
| Change SubAction: sub action=1CE |
| Else: |
| Change SubAction: sub action=1CF |
| End If: |
End If
If文で始まるコマンドは、必ずこれで閉じるようにしてください。
Body Collision系
武器判定や無敵を自分で設定したいときは、このEventを利用する。
| Body Collision | 体全体の当たり判定の設定。体全体を無敵にすることができる |
| Bone Collision | Boneの当たり判定の設定。部分的に無敵にすることができる。武器判定はこの設定によるものが多い |
| Undo Bone Collision | Bone Collisionの設定をリセット、Normalに戻す |
00(Normal) = 当たり判定あり、普通にダメージを受ける
01(Invincible) = 当たり判定はあるが、ダメージを受けない(例:スーパースター)
02(Intangible) = 当たり判定がなくなる(例:緊急回避)
03(Intangible No Flash) = 効果はIntangibleと同じだが、白くフラッシュしない
04(Intangible Quick Flashing) = 効果はIntangibleと同じだが、フラッシュが激しい
01(Invincible) = 当たり判定はあるが、ダメージを受けない(例:スーパースター)
02(Intangible) = 当たり判定がなくなる(例:緊急回避)
03(Intangible No Flash) = 効果はIntangibleと同じだが、白くフラッシュしない
04(Intangible Quick Flashing) = 効果はIntangibleと同じだが、フラッシュが激しい
Terminate Collisions
攻撃判定、つかみ判定といった様々な判定を消す。
Allow Interrupt系
このEventを挿入することで、その後のEventをすべて省略して別の動作に切り替わることができるようになる。
| Allow Interrupt | 今行っているSubactionを途中でキャンセルできるようにする |
| Allow Specific Interrupt | 今行っているSubactionを、指定した行動をとることでキャンセルできるようにする |
| Disallow Specific Interrupt | Allow Specific Interruptの逆。指定した行動でのSubactionのキャンセルができなくなる |
| Allow/Disallow Specific Interruptで指定できる行動一覧 |
Graphic Effect
グラフィックの表示の仕方を設定する。
graphic
Bone / X Offset / Y Offset /Z Offset
size
グラフィックの大きさを指定する。
ただし、同じsizeの数値でも、読み込むグラフィックによって大きさに結構ばらつきがある。
ただし、同じsizeの数値でも、読み込むグラフィックによって大きさに結構ばらつきがある。
Z/Y/X Rotation
グラフィックをZ軸、Y軸、X軸に対してどの程度回転させるかを設定する。反時計回りが正の方向(60度に設定すれば、反時計回りに60度ぐるっと回転する)。
Z軸の場合は左/右向きに回転、Y軸の場合は手前/奥に回転、X軸の場合は上/下向きに回転する感じ。
Z軸の場合は左/右向きに回転、Y軸の場合は手前/奥に回転、X軸の場合は上/下向きに回転する感じ。
Random Z(Y/X) Offset / Random Z(Y/X) Rotation
上で指定したグラフィックの出現位置からさらに、ランダムでどのぐらいグラフィックを移動/回転させるかを指定するためのもの。移動範囲、回転範囲は設定した値を限度とする。
With Character?
基本的にはTrue。詳細不明
名前からしてキャラと一緒に動くかだとおもう
名前からしてキャラと一緒に動くかだとおもう
画面上に永久に表示されるGFXについて
一部の共有グラフィックには、一度表示させてしまうと試合が終わるまで半永久的に残ってしまうエフェクトが存在する。(スーパースコープの弾など)
せっかく派手なエフェクトであっても、画面上にずっと残りっぱなしになるというネックはやはり大きく、使える場面が非常に限られていた(はず)。
しかし、SmashAttacks_ver2.70で使える"Character Spef GFX(11150300)"(旧VerではTerminate Graffic Effect)を
下の通りに設定して利用すれば、この問題を解消することが可能になる。
せっかく派手なエフェクトであっても、画面上にずっと残りっぱなしになるというネックはやはり大きく、使える場面が非常に限られていた(はず)。
しかし、SmashAttacks_ver2.70で使える"Character Spef GFX(11150300)"(旧VerではTerminate Graffic Effect)を
下の通りに設定して利用すれば、この問題を解消することが可能になる。
| Parameter 0(Type:Value): 消したいGFXのID(GFXリストは↑) キャラ固有のGFXの場合は左4ケタにキャラID、右4ケタに固有のGFXIDを設定 Parameter 1(Type:Boolean):Falseに設定 Parameter 2(Type:Boolean):Trueに設定 |
この設定方法はアイクのSpecialHi2やサムスのミサイルの設定(Offset=BB58)などでExternal Graffic Effectを消去するために使われている。もちろん通常の共有GFXをこの設定で消去することもできる。
Generate Article
そのキャラ固有の武器や飛び道具などを出す。
飛び道具は各キャラで固有のものであるため、ファルコンがファルコのブラスターを出すといったような、他キャラの飛び道具の利用はできない。
飛び道具は各キャラで固有のものであるため、ファルコンがファルコのブラスターを出すといったような、他キャラの飛び道具の利用はできない。
| Article ID |
Character Momentum
0E080400 Type:Scalar
キャラをどの方向にどのぐらい速度を加える(Add)か、またはどのぐらいの速度に固定する(set)かを設定する。
デフォルトでは主に、トゥーンリンクやゲームウォッチといった、空中下でキャラが急降下するような技で使用。
Parameter 0(Horizontal Velocity) :
水平方向(+だと向いている方向、-だとその逆向きに移動)
Parameter 1(Vertival Velocity) : 垂直方向(+だと上に、-だと下に移動)
Parameter 2(水平方向の運動量) : 0でAdd、1でSet
Parameter 3(垂直方向の運動量) : 0でAdd、1でSet
デフォルトでは主に、トゥーンリンクやゲームウォッチといった、空中下でキャラが急降下するような技で使用。
Parameter 0(Horizontal Velocity) :
水平方向(+だと向いている方向、-だとその逆向きに移動)
Parameter 1(Vertival Velocity) : 垂直方向(+だと上に、-だと下に移動)
Parameter 2(水平方向の運動量) : 0でAdd、1でSet
Parameter 3(垂直方向の運動量) : 0でAdd、1でSet
Rumble
コントローラーの振動設定
Parameter 0(Size) : 振動の大きさ
Parameter 1(Time) : 振動がどれだけ続くか
Sizeが3だと振動が止まらなくなる。
Parameter 0(Size) : 振動の大きさ
Parameter 1(Time) : 振動がどれだけ続くか
Sizeが3だと振動が止まらなくなる。
Offensive Collision解説
Offensive Collisionは、その名の通り攻撃判定のことを言う。
いうまでもないが、攻撃ワザの性能を設定するのにかなり大事なパラメーターである。
自分で攻撃判定を設定する前に、予備知識としてふっとびに関わってくる仕様について64版スマブラ拳で調べておくことをおすすめします。
※64版スマブラ拳で、攻撃判定についてひそかに解説していたのでした
いうまでもないが、攻撃ワザの性能を設定するのにかなり大事なパラメーターである。
自分で攻撃判定を設定する前に、予備知識としてふっとびに関わってくる仕様について64版スマブラ拳で調べておくことをおすすめします。
※64版スマブラ拳で、攻撃判定についてひそかに解説していたのでした
Bone/Id
Bone(パーツ)
攻撃判定を身体や武器などのどの部分に出すかを設定する。
Bone=0だと、そのキャラの原点に判定が出る。ちなみにBone=0で設定している技の判定のほとんどは、後述のOffsetで判定が出る位置を調整している。
キャラごとのBoneの設定はこれを参照すべし。
※Boneに16進数で+190すると、すべてのモデルに共通した攻撃判定が設定できるようになる。これは1キャラで複数のモデルを持つワリオ(メイドインワリオ/オーバーオール)とカービィ(コピー能力)にのみ使用されている。
Bone=0だと、そのキャラの原点に判定が出る。ちなみにBone=0で設定している技の判定のほとんどは、後述のOffsetで判定が出る位置を調整している。
キャラごとのBoneの設定はこれを参照すべし。
※Boneに16進数で+190すると、すべてのモデルに共通した攻撃判定が設定できるようになる。これは1キャラで複数のモデルを持つワリオ(メイドインワリオ/オーバーオール)とカービィ(コピー能力)にのみ使用されている。
Id(設定番号)
攻撃判定を区別するために使われるパラメーター。地味なパラメーターに見えて意外といろんな機能があったりする…
- Idは始めは0で設定し、その後攻撃判定を1個追加で設定するたびにIdは+1ずつされていく。(ただし、多段ヒットするワザでは先にId=1やId=2などから設定し、後からId=0などを設定していることもある)
- 攻撃が相手に当たったとき、攻撃判定がいくつか相手に重なっている場合はIdの低い方が優先される。例えば、ID=0,1,2の3つがヒットした場合は、自動的にId=0の攻撃判定がヒットした扱いになる。
- 本来Id=1などと設定すべきところを、16進数で+100させてId=101とすることで、攻撃判定を"区別"させることができる。
通常、攻撃判定は設定したIdの判定を全てひっくるめて1つの判定としているが、Idに+100された判定は、+100されてない判定とは異なるもう1つのグループとして区別されるようになる。
じゃあ別々に扱われるようになったところで何が違うの? という話になってくる。攻撃判定には、相手に一度ヒットすると同じ相手に対しては攻撃判定が無効になる仕様がある。しかし、攻撃判定を区別している場合、一方の攻撃判定は消えてももう1つの攻撃判定は無効にならないため、相手が一方の判定に当たってふっとんだ後、もう1つの判定にも当たって2段ヒット、ということができるようになる。(例1参照) - また、すでにIdを設定している場合は、この後に+100したIdの判定を設定することで+100する前のIdと同じ扱いでありながら、性能は+100したIdの判定のものに上書きされ、さらに多段ヒットさせることができる。(例2参照)
例1:マルスの上スマ
Asynchronous Timer: frame=7
Offensive Collision: Id=100, Bone=65, …
Offensive Collision: Id=101,Bone=65, …
Offensive Collision: Id=102 Bone=65, …
Offensive Collision: Id=3 Bone=0, …
Offensive Collision: Id=4 Bone=0, …
Synchronous Timer: frame=2
Delete Hitbox: 0-3
Delete Hitbox: 0-4
解説:Id=100,101,102の攻撃判定は、マルスの剣についている判定で、Id=3,4の攻撃判定は、マルスの前後に出る判定。Id=3,4の判定はマルスの突き上げた剣に吸い寄せるようなふっとばし方にしてあり、上スマを地上の相手にも当てやすくするようにうまく設定してあると言える。
Asynchronous Timer: frame=7
Offensive Collision: Id=100, Bone=65, …
Offensive Collision: Id=101,Bone=65, …
Offensive Collision: Id=102 Bone=65, …
Offensive Collision: Id=3 Bone=0, …
Offensive Collision: Id=4 Bone=0, …
Synchronous Timer: frame=2
Delete Hitbox: 0-3
Delete Hitbox: 0-4
解説:Id=100,101,102の攻撃判定は、マルスの剣についている判定で、Id=3,4の攻撃判定は、マルスの前後に出る判定。Id=3,4の判定はマルスの突き上げた剣に吸い寄せるようなふっとばし方にしてあり、上スマを地上の相手にも当てやすくするようにうまく設定してあると言える。
例2:リザードンの空前
Asynchronous Timer: frame=8
Offensive Collision: Id=0, Bone=0, …
Offensive Collision: Id=1,Bone=0, …
Asynchronous Timer: frame=10
Offensive Collision: Id=256(100), Bone=0, …
Asynchronous Timer: frame=12
Offensive Collision: Id=512(200), Bone=0, …(当たってもひるまない判定)
Asynchronous Timer: frame=14
Offensive Collision: Id=768(300), Bone=0, …(当たってもひるまない判定)
Asynchronous Timer: frame=16
Terminate Collisions:
解説:Id=0の攻撃判定が、2FおきにIdに+100(16進数)されることで再設定されている。これにより、Id=0の判定の設定は2Fおきに+100されたものに上書きされ、しかもId=0,100,200,300の計4ヒットさせることができる。
Asynchronous Timer: frame=8
Offensive Collision: Id=0, Bone=0, …
Offensive Collision: Id=1,Bone=0, …
Asynchronous Timer: frame=10
Offensive Collision: Id=256(100), Bone=0, …
Asynchronous Timer: frame=12
Offensive Collision: Id=512(200), Bone=0, …(当たってもひるまない判定)
Asynchronous Timer: frame=14
Offensive Collision: Id=768(300), Bone=0, …(当たってもひるまない判定)
Asynchronous Timer: frame=16
Terminate Collisions:
解説:Id=0の攻撃判定が、2FおきにIdに+100(16進数)されることで再設定されている。これにより、Id=0の判定の設定は2Fおきに+100されたものに上書きされ、しかもId=0,100,200,300の計4ヒットさせることができる。
Damage(攻撃力)
与えるダメージの%。16進数で指定する。
Direction(ベクトル)
吹っ飛ぶ角度を、16進数で自分の好きな値に調整できる。
ただし361~365のみ特別な設定がされているようだが、謎が多い。
ただし361~365のみ特別な設定がされているようだが、謎が多い。
| 10進数 | 16進数 | 備考 |
| 361 | 169 | 弱いふっとびだと真横に飛ばし、強いふっとびだとおおよそ37度の角度でふっとばす。TripRateを0%にしても関係なく、低確率で相手を転ばせる効果もある |
| 362 | 16A | 相手を真横に飛ばす。ベクトル変更がまったくできない |
| 363 | 16B | 相手が地上にいるときは床に沿って相手をふっとばしたり45度の方向に飛ばしたりする。また相手の向きを強制的に逆にすることもある。空中にいるときは真横に飛ばす。キャラが移動する技にこの値を設定すると、移動方向と全く同じ角度でふっとばす。 |
| 364 | 16C | 362の場合と同じ? |
| 365 | 16D | 相手を全くふっとばさないが、ヒットスタン(硬直)は通常通り扱われる。空中で当てると相手を緩やかに真下に落とす。地上で当てると相手が立ち状態で硬直し、少しの間動けない(蓄積%がたまってるほど長くなる)。また、363/16Bと同じく移動する技に設定すると移動方向と同じ角度で飛ばせるが、こちらはKnockbackの影響を受けない?転倒率0%でも高確率で転倒させる効果もあり。 |
Shield Damage(盾削り)
盾削り値を設定する。
マルスNB、ドンキー横Bなど、技の威力に見合わないシールド削り能力はこの設定による。そのままだと通常ダメージがシールドに与えられる。
※PSAだとShield DamageとWeight Knockbackの設定が逆になっているので注意してください。
現在の最新verのSAではBase Knockbackを設定する項目のXXXXYYYYのXXXX部分(左4ケタ)がShield Damageの部分です。
マルスNB、ドンキー横Bなど、技の威力に見合わないシールド削り能力はこの設定による。そのままだと通常ダメージがシールドに与えられる。
※PSAだとShield DamageとWeight Knockbackの設定が逆になっているので注意してください。
現在の最新verのSAではBase Knockbackを設定する項目のXXXXYYYYのXXXX部分(左4ケタ)がShield Damageの部分です。
Knockback Growth(リアクション影響値)
ふっとばし力の計算に絡んでくる一種の比例定数みたいなもの。
この値が大きいほど、相手の蓄積ダメージが高まるほど強くふっとばすようになる。
ネスの後ろ投げが有名だったり。
(Knockback Growth = 130 , Base Knockback = 15)
この値が大きいほど、相手の蓄積ダメージが高まるほど強くふっとばすようになる。
ネスの後ろ投げが有名だったり。
(Knockback Growth = 130 , Base Knockback = 15)
Base Knockback(リアクション付加値)
相手のダメージによらずにふっとばす距離の調整。
- ネスの前投げがわかりやすかったり。
(Knockback Growth = 10 , Base Knockback = 120) - 実はスネークの横スマもこの値がかなり高かったり。
(Knockback Growth = 60 , Base Knockback = 100)
Weight Knockback(リアクション固定値)
相手の重量によるふっとばしの調整。この値を設定するとふっとばし力が固定になる。
弱攻撃や多段技などでよく用いられる。
※PSAでの設定はShield damageの部分で行います
弱攻撃や多段技などでよく用いられる。
※PSAでの設定はShield damageの部分で行います
Size(サイズ)
攻撃判定の大きさ。判定の形は球で表される。
プリンと同じ大きさだと大体8程度。
スネークの横強はSize7の判定が前方に真空判定としてでかく出ているのでぶっとんでいるのがよくわかる。
プリンと同じ大きさだと大体8程度。
スネークの横強はSize7の判定が前方に真空判定としてでかく出ているのでぶっとんでいるのがよくわかる。
Offsets(オフセット)
設定したBoneの位置からどのぐらい攻撃判定を離すかを調整する。
BoneによってX軸、Y軸、Z軸の方向が違うので、設定したいときはBrawlBoxで確認しながらやったほうがいい。
ちなみにどういうわけか、BrawlBoxではX軸が奥行き、Z軸が横方向として設定されている。PSAでもOffencive CollisionではちゃんとX軸が横方向になるように配慮されているが、Graphic EffectsではBrawlBoxと同じくX軸が奥行きの扱いになっていて、統一されてなかったりする。
スマブラX自体がX軸を奥行扱いしているかは不明。
BoneによってX軸、Y軸、Z軸の方向が違うので、設定したいときはBrawlBoxで確認しながらやったほうがいい。
ちなみにどういうわけか、BrawlBoxではX軸が奥行き、Z軸が横方向として設定されている。PSAでもOffencive CollisionではちゃんとX軸が横方向になるように配慮されているが、Graphic EffectsではBrawlBoxと同じくX軸が奥行きの扱いになっていて、統一されてなかったりする。
スマブラX自体がX軸を奥行扱いしているかは不明。
Tripping Rate(転倒率)
相手を転ばせる確率。百分率ではなく少数で設定する。(1=100%,0.5=50%,など)
通常は0に設定されているが、強攻撃下やそれ以外の一部のワザは各キャラごとに個別の値が設定されている。
また、転倒率を0%にしても、ベクトルが365度である場合は相手を転倒させることがある。属性が「転倒」の場合、転倒率によらず必ず相手を転ばせる。
通常は0に設定されているが、強攻撃下やそれ以外の一部のワザは各キャラごとに個別の値が設定されている。
また、転倒率を0%にしても、ベクトルが365度である場合は相手を転倒させることがある。属性が「転倒」の場合、転倒率によらず必ず相手を転ばせる。
Hitlag Multiplier(ヒットストップの大きさ)
攻撃を当てた/受けたときに、どのぐらいヒットストップをかけて硬直させるかを設定する。デフォルトは1倍。
ウルフの横強がヒットストップの倍率の違いを表すいい例になっている。(1段目:×3、2段目:×0.5)
電撃が属性として設定されている技だと、ヒットストップの倍率をさらに1.5倍にする。
ウルフの横強がヒットストップの倍率の違いを表すいい例になっている。(1段目:×3、2段目:×0.5)
電撃が属性として設定されている技だと、ヒットストップの倍率をさらに1.5倍にする。
Directional Influence Multiplier(ずらしやすさ)
ヒットストップ時の位置のずらしやすさ。デフォルトは1倍。
ゼルダの稲妻キックでヒットストップ時に位置がずらせないのはこの値が0倍に設定されているため。一方、少し似たような技でもファルコンの膝はデフォルトの1倍であるため、ずらしができる。
ゼルダの稲妻キックでヒットストップ時に位置がずらせないのはこの値が0倍に設定されているため。一方、少し似たような技でもファルコンの膝はデフォルトの1倍であるため、ずらしができる。
※攻撃を受けると一瞬硬直する現象がヒットストップ。ふっとばし力の高い電撃技だと強く現れる。
ヒットストップ中、攻撃を受けた側は硬直してる間に自キャラの位置をわずかに変えることができる。これがヒットストップずらしである。
(タイマーを使ってる間にヒットストップの長い技を当てると確認しやすい)
ヒットストップ中、攻撃を受けた側は硬直してる間に自キャラの位置をわずかに変えることができる。これがヒットストップずらしである。
(タイマーを使ってる間にヒットストップの長い技を当てると確認しやすい)
Flags
ワザの属性やヒット時の効果音、攻撃判定の表れ方などを指定。
設定方法
まず、flagの値を、ケタごとにバラバラにしてから、それぞれの数値を16進数から2進数に変換する。
変換はこちらのサイトを使うと便利です
左上のHEXと書かれている所にflagの値を入力し、下のdecodeボタンをクリックすると
BINARYの所に2進数に変換されたものが表示されます
設定が終わったらBINARYに2進数を入力してdecodeをクリックすればHEXの方に16進数に変換されます
左上のHEXと書かれている所にflagの値を入力し、下のdecodeボタンをクリックすると
BINARYの所に2進数に変換されたものが表示されます
設定が終わったらBINARYに2進数を入力してdecodeをクリックすればHEXの方に16進数に変換されます
具体例:
2B430602
⇒2 B(=11) 4 3 0 6 0 2
⇒0010 1011 0100 0011 0000 0110 0000 0010
2B430602
⇒2 B(=11) 4 3 0 6 0 2
⇒0010 1011 0100 0011 0000 0110 0000 0010
次に、2進数に直した32ケタの数を↓に載せてあるようなようなグループにまとめる。
1グループ目:1ケタ目-2ケタ目
2グループ目:3ケタ目
3グループ目:4ケタ目
4グループ目:5ケタ目
5グループ目:6ケタ目-10ケタ目
6グループ目:11ケタ目-14ケタ目
7グループ目:15ケタ目
8グループ目:16ケタ目
9グループ目:17ケタ目-18ケタ目
10グループ目:19ケタ目-26ケタ目
11グループ目:27ケタ目
12グループ目:28ケタ目-32ケタ目
具体例:
0010 1011 0100 0011 0000 0110 0000 0010
⇒00 1 0 1 01101 0000 1 1 00 00011000 0 00010
1グループ目:1ケタ目-2ケタ目
2グループ目:3ケタ目
3グループ目:4ケタ目
4グループ目:5ケタ目
5グループ目:6ケタ目-10ケタ目
6グループ目:11ケタ目-14ケタ目
7グループ目:15ケタ目
8グループ目:16ケタ目
9グループ目:17ケタ目-18ケタ目
10グループ目:19ケタ目-26ケタ目
11グループ目:27ケタ目
12グループ目:28ケタ目-32ケタ目
具体例:
0010 1011 0100 0011 0000 0110 0000 0010
⇒00 1 0 1 01101 0000 1 1 00 00011000 0 00010
そして、最後に再分割後の各々の数値を10進数に戻す。
具体例:
00 1 0 1 01101 0000 1 1 00 00011000 0 00010
⇒00 1 0 1 13 0000 1 1 00 24 0 2
具体例:
00 1 0 1 01101 0000 1 1 00 00011000 0 00010
⇒00 1 0 1 13 0000 1 1 00 24 0 2
ここからは、各グループの数値が何を意味しているかを書いていきます。
実際に自分の手で設定するときは、上に書いた手順を逆からやっていくことで楽にできます。
実際に自分の手で設定するときは、上に書いた手順を逆からやっていくことで楽にできます。
1グループ目:1ケタ目-2ケタ目
6グループ目:11ケタ目-14ケタ目
9グループ目:17ケタ目-18ケタ目
11グループ目:27ケタ目
未使用
6グループ目:11ケタ目-14ケタ目
9グループ目:17ケタ目-18ケタ目
11グループ目:27ケタ目
未使用
3ケタ目:直接攻撃/間接攻撃
その攻撃技が直接系かどうかを判別するためのもの。1で直接系、0で間接系のワザになる。
亜空でシールの効果を得るときに使う。
その攻撃技が直接系かどうかを判別するためのもの。1で直接系、0で間接系のワザになる。
亜空でシールの効果を得るときに使う。
4ケタ目:Unknown
効果不明。メタナイトの攻撃に0として設定されていることが多いために、
相殺判定の有無に関係していると思われたが違ったようだ。
効果不明。メタナイトの攻撃に0として設定されていることが多いために、
相殺判定の有無に関係していると思われたが違ったようだ。
5ケタ目:相殺/非相殺
相殺の有無を設定する。1だと相殺することができ、0だとできない。
相殺の有無を設定する。1だと相殺することができ、0だとできない。
6ケタ目-10ケタ目:部位
技の種類を決めるもの。亜空でシールの効果を得るときに使われる。
技の種類を決めるもの。亜空でシールの効果を得るときに使われる。
| 技の種類 |
15ケタ目:対象(空中)
空中にいる相手にその攻撃判定がヒットするかを設定する。
1でヒットし、0でヒットしなくなる。
空中にいる相手にその攻撃判定がヒットするかを設定する。
1でヒットし、0でヒットしなくなる。
16ケタ目:対象(地上)
地上にいる相手にその攻撃判定がヒットするかを設定する。
1でヒットし、0でヒットしなくなる。
地上にいる相手にその攻撃判定がヒットするかを設定する。
1でヒットし、0でヒットしなくなる。
19ケタ目-26ケタ目:SFX(効果音)
攻撃判定が相手に当たったときに鳴らす効果音を設定する。
攻撃判定が相手に当たったときに鳴らす効果音を設定する。
| 効果音 |
28ケタ目-32ケタ目:属性
その攻撃判定が持つ技の属性を設定する。10進数で出た数値を16進数に直せば上のエフェクトにある表と一致するので、属性のリストは上のエフェクトを参照してください。
※わかりやすいやり方
flagの7・8桁目:属性
そのワザの属性を指定する。わかりやすいやり方↓
「39030285」これを闇属性にするには、まず下2桁を80にしてそこから闇の値を足す。
39030285-5+13=39030293
やっぱり氷属性にしたい。それなら、闇属性の値を再び引いて氷の値を足す。
39030293-13+4=39030284
その攻撃判定が持つ技の属性を設定する。10進数で出た数値を16進数に直せば上のエフェクトにある表と一致するので、属性のリストは上のエフェクトを参照してください。
※わかりやすいやり方
flagの7・8桁目:属性
そのワザの属性を指定する。わかりやすいやり方↓
「39030285」これを闇属性にするには、まず下2桁を80にしてそこから闇の値を足す。
39030285-5+13=39030293
やっぱり氷属性にしたい。それなら、闇属性の値を再び引いて氷の値を足す。
39030293-13+4=39030284
ちなみに、上で例として出したFlag:2B420602の性質を上の説明と合わせると
- 相殺ワザ
- ワザの種類はスピンで直接系
- 空中、地上の相手にともにヒット
- 効果音は切り裂き系の弱いヒット音
- 属性は切り裂き
となります。これだけで元のワザがなんなのかがほとんどわかったも同然ですね!
フッ
Special Offensive Collision解説
その名の通り、風を起こす、その判定をリフレクターなどで反射可能にする、といった特殊な効果をもたらす攻撃判定を設定する。設定の仕方は基本的にはOffensive Collisionと同じだが、さらに2つの項目(SAではUndefinedとされている)が追加されていて、これが特殊な効果を与える設定となっている。
1つ目のUndefined(Rehit Rate:再ヒット間隔)
その攻撃判定が何Fに1回相手にヒットするかを設定する。通常通り1ヒットで十分な場合は0のままでOK。
SAでファルコの空前の設定を見たときには判定が1つしか出てないのに、実際には多段ワザとなっているのはこの設定のおかげである。
Set LoopやTerminate Collisionsなどを用いなくても、お手軽に多段ヒットワザが作れるのが魅力的。
ちなみに、タイマーでスローになったときも「8Fに1回」という設定は守られるため、スロー状態になったファルコが空前をヒットさせるとヒット数がすさまじいことになる。
SAでファルコの空前の設定を見たときには判定が1つしか出てないのに、実際には多段ワザとなっているのはこの設定のおかげである。
Set LoopやTerminate Collisionsなどを用いなくても、お手軽に多段ヒットワザが作れるのが魅力的。
ちなみに、タイマーでスローになったときも「8Fに1回」という設定は守られるため、スロー状態になったファルコが空前をヒットさせるとヒット数がすさまじいことになる。
2つ目のUndefined(Special Flags)
もう1つのflagであり、特殊な効果を設定する。
Offensive Collisionの項目で書いたのと同じやり方で、Special Flagもグループ別に再分割する。
こっちの場合は2進数のままで扱ったほうがやりやすい。
Offensive Collisionの項目で書いたのと同じやり方で、Special Flagもグループ別に再分割する。
こっちの場合は2進数のままで扱ったほうがやりやすい。
~以下、各桁ごとの設定の説明~
(省略してあるケタは、いずれも効果不明、または効果が見られないもの)
(基本的に、各桁の値を1にすると効果が表れ、0にすると効果が表れない)
(省略してあるケタは、いずれも効果不明、または効果が見られないもの)
(基本的に、各桁の値を1にすると効果が表れ、0にすると効果が表れない)
1ケタ目:やられ状態の有無
1に設定すると、その攻撃判定がヒットしても相手がのけぞらなくなるが、相手を押し出す効果が残る。押し出す力はリアクション影響値、リアクション付加値、(設定した場合は)リアクション固定値によって決まる。
1に設定すると、その攻撃判定がヒットしても相手がのけぞらなくなるが、相手を押し出す効果が残る。押し出す力はリアクション影響値、リアクション付加値、(設定した場合は)リアクション固定値によって決まる。
3ケタ目:ヒットストップの有無
1にするとヒットストップが一切なくなり、吹っ飛ばしたときも歓声が上がらなくなる。攻撃ワザではヒップドロップやクッパドロップで設定されている。
また、ガノンの上強の風判定やマリオのポンプの水流などは1ケタ目の設定とこれを併用している。
Hitlagを×0にするのと同じ効果があるが、それと何が違うのかは不明。
1にするとヒットストップが一切なくなり、吹っ飛ばしたときも歓声が上がらなくなる。攻撃ワザではヒップドロップやクッパドロップで設定されている。
また、ガノンの上強の風判定やマリオのポンプの水流などは1ケタ目の設定とこれを併用している。
Hitlagを×0にするのと同じ効果があるが、それと何が違うのかは不明。
4ケタ目:チームアタックの有無
1にすると、チーム戦でチームアタックをoffにしても味方に攻撃を当てることができる。C4爆弾やマインなどにも使われている。
1にすると、チーム戦でチームアタックをoffにしても味方に攻撃を当てることができる。C4爆弾やマインなどにも使われている。
5ケタ目:つかんだ相手に攻撃を加えた時の強制つかみ解除の有無
1にすると、どんなに強い攻撃を加えてもつかんでいる相手をふっとばさず、ダメージだけが入る。つかみ攻撃や、投げの途中で攻撃を加えるような多段ヒット投げのほぼすべてに設定されている。
1にすると、どんなに強い攻撃を加えてもつかんでいる相手をふっとばさず、ダメージだけが入る。つかみ攻撃や、投げの途中で攻撃を加えるような多段ヒット投げのほぼすべてに設定されている。
6ケタ目:すり抜け無敵の貫通の有無
1に設定すると、すり抜け無敵であっても貫通して攻撃を与えられる。
1に設定すると、すり抜け無敵であっても貫通して攻撃を与えられる。
7ケタ目:当たりあり無敵の貫通の有無
1に設定すると、当たりあり無敵であっても貫通して攻撃を与えられる。
(アシストフィギュアのロビンの攻撃判定に使われている)
1に設定すると、当たりあり無敵であっても貫通して攻撃を与えられる。
(アシストフィギュアのロビンの攻撃判定に使われている)
8ケタ目:吸収可能/不可の設定
1に設定すると、ネスとリュカのサイマグネット、ゲームウォッチのオイルパニックで自分の攻撃判定が吸収されるようになる。
1に設定すると、ネスとリュカのサイマグネット、ゲームウォッチのオイルパニックで自分の攻撃判定が吸収されるようになる。
9ケタ目:反射可能/不可の設定
1に設定すると、自分の攻撃判定を相手が反射できるようにする。
ゼロスーツサムスの下スマはこの上2つの設定がともにONになっているため、飛び道具に近い判定となっているが、厳密には飛び道具ではない。
1に設定すると、自分の攻撃判定を相手が反射できるようにする。
ゼロスーツサムスの下スマはこの上2つの設定がともにONになっているため、飛び道具に近い判定となっているが、厳密には飛び道具ではない。
10ケタ目:ガード可能/不可の設定
攻撃判定をシールドで受け止められるかどうかの設定。
最後のきりふだ、ワープスター、一部のポケモン/アシストフィギュアの攻撃以外では、全てガード可能に設定してある。バランスのことを考えれば当然だが…
攻撃判定をシールドで受け止められるかどうかの設定。
最後のきりふだ、ワープスター、一部のポケモン/アシストフィギュアの攻撃以外では、全てガード可能に設定してある。バランスのことを考えれば当然だが…
13ケタ目-26ケタ目:攻撃判定の対象
攻撃判定がどんな相手にヒットするかを設定する。
ファルコンダイブなど、亜空の敵に対して特別な攻撃判定があるのはこの設定による。
今のところわかっているのは
攻撃判定がどんな相手にヒットするかを設定する。
ファルコンダイブなど、亜空の敵に対して特別な攻撃判定があるのはこの設定による。
今のところわかっているのは
- 13ケタ目:これが1でないと攻撃判定としての意味をなさなくなる
- 15ケタ目:ワドルディ、ワドルドゥ、ピクミン、リモコンミサイル(ニキータ)、ワリオマン
- 16ケタ目:リンクの爆弾、トゥーンのバグダン、ロボのジャイロ、スネークの手榴弾、ボム兵、どせいさん、当たり判定のあるやくもの・ギミック関係?
- 17ケタ目:壊せる床(グリーンヒルゾーンの地面など)
- 18ケタ目:壊せる壁(シャドーモセス島の柱など)
- 19ケタ目:壊せる床/壁/天井
- 20ケタ目:床/壁/天井以外の、当たり判定のあるギミック
- 23ケタ目:ロボのジャイロ、スネークの手榴弾、どせいさん
- 25ケタ目:亜空の敵
- 26ケタ目:使用キャラ、ワドルディ、ワドルドゥ、ピクミン
ぐらい。ほとんどのワザにおいて全ての設定がONになっている。
28ケタ目:攻撃判定の変化
これをON(1に設定)すると、Offsetで指定した座標の位置から、あらかじめ設定したBoneの原点にまで攻撃判定が円柱状に伸びるようになる。
これをON(1に設定)すると、Offsetで指定した座標の位置から、あらかじめ設定したBoneの原点にまで攻撃判定が円柱状に伸びるようになる。
30ケタ目-32ケタ目:ふっとばし方向の変化(ここだけ10進数で扱う)
攻撃を当ててふっとばすときのふっとばし方を決める。
攻撃を当ててふっとばすときのふっとばし方を決める。
- 0,2,5:通常のふっとばし方。相手は攻撃を加えた側から常に離れるような方向にふっとぶ。
- 1,3:相手を必ず自分の向いている方向にふっとばす。トゥーンリンクの横スマ二段目やファルコンの膝などで設定されている。
- 4:相手を必ず自分の向いている方向と逆にふっとばす。ピーチの後ろ投げ、シークの空後、デデデのすいこみのみで設定されている。
- 6,7:相手を強制的に画面の方向(こっちを見るような状態)にさせる。
Throw Attack Collision解説
投げワザの性能の設定をする。
ID
Throw Attack Collisionでは、基本的にID=0のほうが使用される。
ID=1は、投げる際に強制的に投げモーションが解除される際に使われる設定。
たまにリンクのトライフォースラッシュがうまく発動せず、謎の30%のダメージが相手に与えられるのもID=1の設定によるもの。
ID=1は、投げる際に強制的に投げモーションが解除される際に使われる設定。
たまにリンクのトライフォースラッシュがうまく発動せず、謎の30%のダメージが相手に与えられるのもID=1の設定によるもの。
Damage / Trajectory / Knockback Growth
この辺はOffensive Collisionと同じ。
設定画面での表記の誤り
SAでは、Throw Attack Collisionの設定画面での表記に誤りが2つある。
| 訂正前 | 訂正後 |
| Base Knockback | Weight Knockback |
| Element | Base Knockback |
SFX
投げた時に鳴らす効果音。通常効果音を鳴らす必要がないためか、0に設定されている。
ファルコンやガノンの上Bなどでは例外で、2に設定されている。
ファルコンやガノンの上Bなどでは例外で、2に設定されている。
Air/Ground12
不明。ガノンの横Bでは16進数でBに設定されている。
ガノンの横Bで、Trajectoryが361度に設定されていながら、真下に落とすようになっているのはこれが影響しているか?
ガノンの横Bで、Trajectoryが361度に設定されていながら、真下に落とすようになっているのはこれが影響しているか?
Undefinedについて
| 1つ目のUndefined | Element | その技の属性を16進数で決める。 |
| 2つ目のUndefined | TripRate? | 0であることが多いが、ガノンの横Bでは1に設定されている。 |
| 3つ目のUndefined | HitlagMultiplier | ヒットストップの大きさを設定する。 |
| 4つ目のUndefined | SDIMultiplier | ベクトル変更のしやすさを設定する。 |
| 5つ目のUndefined | 不明 | 通常3に設定されている。 |
| 6つ目のUndefined | ヒットストップ | Trueにするとヒットストップが強制的に0になり、 Falseだとヒットストップが通常通りかかる。 Trueに設定していると、投げ技で吹っ飛ばしても歓声が上がらない。 ゼニガメ、リザードンの下投げなどで歓声が起きるのはこれをFalseに設定しているため。 |
| 7つ目のUndefined | 不明 | 通常Trueに設定。 |
| 8つ目のUndefined | 不明 | 0,1,2,3,8のいずれかの値が設定されているが不明。 |
メモ
| どこに加筆したらいいか解らない、または適切な場所が無いものはココに箇条書きしてください |
- Smash AttacksのDataフォルダ内にあるtxtを編集すれば日本語化出来るかもしれない
- Action Eventsタブが各技のモーションや性能の指定、Attributesタブがそのキャラの性能(ジャンプ回数や走る速さや吹っ飛びにくさ等)の指定ができる
Button ID (ChangeActionとかでボタン指定するときに使う)
00 = A
01 = B
02 = X,Y,スティック上
03 = L,R
04 = R, L, Z
05 = Unknown (Couldn't trigger this one)
06 = 十字キー上
07 = 十字キー下
08 = 十字キー左右
09 = 十字キー左
0A = 十字キー右
0B = B, X, 十字左右
0C = Y, X ,十字上右
0D = B, Y, X , 十字上左右
0E = A+B
0F = Cスティック
10 = With a value of "10," the IF statement triggered everytime, regardless of inputting any button...or not pressing anything at all.
11 = Unknown (Couldn't trigger this one)
12 = Unknown (Couldn't trigger this one)
00 = A
01 = B
02 = X,Y,スティック上
03 = L,R
04 = R, L, Z
05 = Unknown (Couldn't trigger this one)
06 = 十字キー上
07 = 十字キー下
08 = 十字キー左右
09 = 十字キー左
0A = 十字キー右
0B = B, X, 十字左右
0C = Y, X ,十字上右
0D = B, Y, X , 十字上左右
0E = A+B
0F = Cスティック
10 = With a value of "10," the IF statement triggered everytime, regardless of inputting any button...or not pressing anything at all.
11 = Unknown (Couldn't trigger this one)
12 = Unknown (Couldn't trigger this one)
SAの編集例(仮説のものが多いです)
着地硬直をなくす場合
Bit Variable Set: RA-Bit[30] = true
~(攻撃に関する記述)~
Synchronous Timer: frames= (任意の数値)
Terminate Collisions: /*これで設定した攻撃判定消滅
Synchronous Timer: frames= (任意の数値)
Bit Variable Clear: RA-Bit[30] = false
/*このフレームよりも後に着地した場合着地硬直が発生しない
(実際は、何も攻撃してない状態で着地したときと同じ扱いになる)
~(攻撃に関する記述)~
Synchronous Timer: frames= (任意の数値)
Terminate Collisions: /*これで設定した攻撃判定消滅
Synchronous Timer: frames= (任意の数値)
Bit Variable Clear: RA-Bit[30] = false
/*このフレームよりも後に着地した場合着地硬直が発生しない
(実際は、何も攻撃してない状態で着地したときと同じ扱いになる)
具体的にフォックス空後の例をとってみると
Asynchronous Timer:frames=8
Bit Variable Set: RA-Bit[30] = true
Offensive Collision: id=0,bone=11,damege=F,ShieldDamege=0,(以下略)
Offensive Collision: id=1,bone=11,damege=F,ShieldDamege=0,(以下略)
Offensive Collision: id=2,bone=B,damege=9,ShieldDamege=0,(以下略)
Offensive Collision: id=3,bone=D,damege=9,ShieldDamege=0,(以下略)
Synchronous Timer: frames=3
Terminate Collisions:
Synchronous Timer: frames=3
Bit Variable Clear: RA-Bit[30] = false
Asynchronous Timer:frames=48
Allow Interrupt:
Asynchronous Timer:frames=8
Bit Variable Set: RA-Bit[30] = true
Offensive Collision: id=0,bone=11,damege=F,ShieldDamege=0,(以下略)
Offensive Collision: id=1,bone=11,damege=F,ShieldDamege=0,(以下略)
Offensive Collision: id=2,bone=B,damege=9,ShieldDamege=0,(以下略)
Offensive Collision: id=3,bone=D,damege=9,ShieldDamege=0,(以下略)
Synchronous Timer: frames=3
Terminate Collisions:
Synchronous Timer: frames=3
Bit Variable Clear: RA-Bit[30] = false
Asynchronous Timer:frames=48
Allow Interrupt:
アニメーション開始から8フレーム後(空後の入力をしてから9フレーム)に
攻撃判定発生。攻撃判定発生フレームから3フレーム後に判定消滅。
攻撃判定消滅フレームから3フレーム目以降は空後の動作入力がなかったこと扱いをされるため何も攻撃してない状態で着地したときと同じ扱いになる。(ただし、Allow Interruptの設定が48フレーム後なので、それまでは空中の他の動作(空中攻撃や空中回避など)に移行できない。)
攻撃判定発生。攻撃判定発生フレームから3フレーム後に判定消滅。
攻撃判定消滅フレームから3フレーム目以降は空後の動作入力がなかったこと扱いをされるため何も攻撃してない状態で着地したときと同じ扱いになる。(ただし、Allow Interruptの設定が48フレーム後なので、それまでは空中の他の動作(空中攻撃や空中回避など)に移行できない。)
没ボイスを使う場合
例えば、アイクの没ボイスで「とどめだ!」を使いたいなら、SmashBoxで没ボイスの入ってる位置を確認しておく
(この場合Wave6が「とどめだ!」のボイス)
(この場合Wave6が「とどめだ!」のボイス)
そしたら、次に横スマや上スマなどボイスが固定されてるヤツからボイスのナンバーを抜き出す
横スマ1つだけ見るとSFXが他にあって紛らわしいけど、上スマとか下スマのSFXも見ると横スマから連番になってるSFXのナンバーがある
(アイクの場合横スマのボイスが973、上スマが974、下スマが975)
横スマ1つだけ見るとSFXが他にあって紛らわしいけど、上スマとか下スマのSFXも見ると横スマから連番になってるSFXのナンバーがある
(アイクの場合横スマのボイスが973、上スマが974、下スマが975)
次に横スマor上スマor下スマのボイスの位置をSmashBoxで確認する
(横スマがWave29、上スマがWave30、下スマがWave31)
(横スマがWave29、上スマがWave30、下スマがWave31)
最後に没ボイスと横スマのボイスのWaveのナンバーの差異を取って、
差異をSFXのナンバーに対応できるように16進数にする
没ボイスが上にあるならマイナス、下にあるならプラス
(横スマのWave29、没ボイスのWave6
29 - 6 = 23 → 17 これを横スマのSFXのナンバー973から16進数の計算で引く
するとSFXが973 - 17 = 95C が出る、これが「とどめだ!」の没ボイス)
差異をSFXのナンバーに対応できるように16進数にする
没ボイスが上にあるならマイナス、下にあるならプラス
(横スマのWave29、没ボイスのWave6
29 - 6 = 23 → 17 これを横スマのSFXのナンバー973から16進数の計算で引く
するとSFXが973 - 17 = 95C が出る、これが「とどめだ!」の没ボイス)
SFXの項目でSound Effect:xxxってあるのがボイスとか効果音
ボイスのランダム化
EventはIf(000A0200)、Requirementを2Bにして、たとえばこんな感じで
アイクのカウンターのボイスに「させん!」「そこ!」を加えてランダムにする場合
If 2B: 3
Sound Effect: 95A
Else: If 2B: 2
Sound Effect: 95B
Else:
Sound Effect: 95D
End If:
アイクのカウンターのボイスに「させん!」「そこ!」を加えてランダムにする場合
If 2B: 3
Sound Effect: 95A
Else: If 2B: 2
Sound Effect: 95B
Else:
Sound Effect: 95D
End If:
最初の2Bの後の数字はSEの数、次の2Bの後の数字はその数から1を引いた物、…
ちなみに 「If 2B: 1」は、最後のElseがその役割を果たしているので入れなくていい
ちなみに 「If 2B: 1」は、最後のElseがその役割を果たしているので入れなくていい
2ちゃんねるからコピペ(後で暇見てまとめます)
[843]名無しさん@お腹いっぱい。[sage] 2009/08/06(木) 00:55:52 ID:SMOo69Xt
AAS
Specialsタブが各ボタンに対する技表?で
Set Basic Variable: LA-Basic[64] = 1CE の(これはファルコンAction112のファルコンパンチ)
1CE の部分が今度は Sub Actionsタブ に当てはまってるつまりは1CE部分を参照している
C言語で言うユーザー定義関数かな?
Sub Actionsタブの sub Sciton の1CEを見ればそれの技モーションとかの設定がわかるっぽい
この場合はファルコンパンチのモーションやダメージ等の設定が載っている
Specialsタブに戻ってAction112の2行目見ると書いてある = 1D0 は振り向きの設定へのアドレスかと
AAS
Specialsタブが各ボタンに対する技表?で
Set Basic Variable: LA-Basic[64] = 1CE の(これはファルコンAction112のファルコンパンチ)
1CE の部分が今度は Sub Actionsタブ に当てはまってるつまりは1CE部分を参照している
C言語で言うユーザー定義関数かな?
Sub Actionsタブの sub Sciton の1CEを見ればそれの技モーションとかの設定がわかるっぽい
この場合はファルコンパンチのモーションやダメージ等の設定が載っている
Specialsタブに戻ってAction112の2行目見ると書いてある = 1D0 は振り向きの設定へのアドレスかと
Event List の Main がダメージやダメージ範囲、GFXがグラフィック、SFXが効果音、Otherは・・・なんなんだ?
あと下のリストは時系列になっているのでTimerをいじれば速さが調節できそうだね
攻撃範囲はOffensive CollisionのSizeっぽいね、ためしに100倍にしたら・・・
あと下のリストは時系列になっているのでTimerをいじれば速さが調節できそうだね
攻撃範囲はOffensive CollisionのSizeっぽいね、ためしに100倍にしたら・・・
まあとりあえずプログラミングの知識がある人が見れば案外わかりそうだが
関数の解読しないといけないからかなりがんばらないといけないね
関数の解読しないといけないからかなりがんばらないといけないね
しかし自分でも何言ってるかわからんことを書いてるな・・・
[833]名無しさん@お腹いっぱい。[sage] 2009/08/05(水) 19:51:53 ID:gMiVbOLl
AAS
damage=○とかdirection=○とかsize=○とか書いてある長い行をダブルクリック
すると小さい別ウィンドウが開いてdamageとかknockbackとか色々書いてあるから
変えたいものを選択して右の数値を書き換えてDoneを押せばいいと思う
AAS
damage=○とかdirection=○とかsize=○とか書いてある長い行をダブルクリック
すると小さい別ウィンドウが開いてdamageとかknockbackとか色々書いてあるから
変えたいものを選択して右の数値を書き換えてDoneを押せばいいと思う
2ちゃんねるID:BdSolyVZ神のコピペ
[700]名無しさん@お腹いっぱい。[sage] 2009/10/18(日) 08:37:56 ID:BdSolyVZ
698
例えば、アイクの没ボイスで「とどめだ!」を使いたいなら、SmashBoxで没ボイスの入ってる位置を確認しておく
(この場合Wave6が「とどめだ!」のボイス)
(この場合Wave6が「とどめだ!」のボイス)
そしたら、次に横スマや上スマなどボイスが固定されてるヤツからボイスのナンバーを抜き出す
横スマ1つだけ見るとSFXが他にあって紛らわしいけど、上スマとか下スマのSFXも見ると横スマから連番になってるSFXのナンバーがある
(アイクの場合横スマのボイスが973、上スマが974、下スマが975)
横スマ1つだけ見るとSFXが他にあって紛らわしいけど、上スマとか下スマのSFXも見ると横スマから連番になってるSFXのナンバーがある
(アイクの場合横スマのボイスが973、上スマが974、下スマが975)
次に横スマor上スマor下スマのボイスの位置をSmashBoxで確認する
(横スマがWave29、上スマがWave30、下スマがWave31)
(横スマがWave29、上スマがWave30、下スマがWave31)
最後に没ボイスと横スマのボイスのWaveのナンバーの差異を取って、
差異をSFXのナンバーに対応できるように16進数にする
没ボイスが上にあるならマイナス、下にあるならプラス
(横スマのWave29、没ボイスのWave6
29 - 6 = 23 → 17 これを横スマのSFXのナンバー973から16進数の計算で引く
するとSFXが973 - 17 = 95C が出る、これが「とどめだ!」の没ボイス)
差異をSFXのナンバーに対応できるように16進数にする
没ボイスが上にあるならマイナス、下にあるならプラス
(横スマのWave29、没ボイスのWave6
29 - 6 = 23 → 17 これを横スマのSFXのナンバー973から16進数の計算で引く
するとSFXが973 - 17 = 95C が出る、これが「とどめだ!」の没ボイス)
以下今の所発見した没ボイスリスト(サウンドテストにあるのは除外)
361(メタナイト):「これで私もレア物か…」
4F3(ルイージ):低い声で「ドォッ」って言ってる気がする…
4F6(ルイージ):「ワーホォホォホォホォホウ」みたいな変なボイス ダッシュ攻撃に合いそう
811(リュカ):「スルー」にも「トゥルー」にも聞こえる
812(リュカ):上スマのボイスと似てるが微妙に違う
95C(アイク):「とどめだ!」
95D(アイク):「させん!」
361(メタナイト):「これで私もレア物か…」
4F3(ルイージ):低い声で「ドォッ」って言ってる気がする…
4F6(ルイージ):「ワーホォホォホォホォホウ」みたいな変なボイス ダッシュ攻撃に合いそう
811(リュカ):「スルー」にも「トゥルー」にも聞こえる
812(リュカ):上スマのボイスと似てるが微妙に違う
95C(アイク):「とどめだ!」
95D(アイク):「させん!」
[714]名無しさん@お腹いっぱい。[sage] 2009/10/18(日) 23:13:52 ID:BdSolyVZ
702>>703
flagsではボイスは弄れない、SFXの項目でSound Effect:xxxってあるのがボイスとか効果音
flagsは攻撃があたって相手にダメージを与える時に同時に出るSFXを指定できる
flagsは攻撃があたって相手にダメージを与える時に同時に出るSFXを指定できる
あと、flagsの前から4桁目(xxxyxxxx)は攻撃判定の出方
y=1なら地上の敵にしか判定が出ない、y=2なら空中の敵にしか攻撃が当たらない、y=3なら地上空中問わずに当たる
flagsの末2桁は言うまでもなく属性
y=1なら地上の敵にしか判定が出ない、y=2なら空中の敵にしか攻撃が当たらない、y=3なら地上空中問わずに当たる
flagsの末2桁は言うまでもなく属性
705>>707
飛び道具のスピードを変える手段はわからないなぁ…俺が言ったのはキャラのモーションの速度を変える方法だから
ちなみにモーションの速度を変えること自体はSpecialsを変える必要はない
SubActionにそのEventを記述すればおk
例えばソニックのスピンダッシュの体当たり時のモーションの速度を1.3倍速にしたいなら、
SubAction:1D8 SpecialSDashHi にこう記述すればいい
ちなみにモーションの速度を変えること自体はSpecialsを変える必要はない
SubActionにそのEventを記述すればおk
例えばソニックのスピンダッシュの体当たり時のモーションの速度を1.3倍速にしたいなら、
SubAction:1D8 SpecialSDashHi にこう記述すればいい
04070100: 1-130B0 (Parameter0で速度を指定、TypeはScalar)
Terminate Collitions:
Offensive Collision: (略)
Terminate Collitions:
Offensive Collision: (略)
モーションの速度を変えることは、実質移動速度の変更になるのでソニックのスピンダッシュ最大タメの速度も1.3倍になる
ただし、WalkやRunなど、歩く・走るといった基本動作には反映されない、
このモーションのフレームスピードはRun Intial VelocityなどAttributesが支配してるから
ただし、WalkやRunなど、歩く・走るといった基本動作には反映されない、
このモーションのフレームスピードはRun Intial VelocityなどAttributesが支配してるから
Run Intial Velocity(ダッシュから走りに変わる瞬間に得る速度)は数字を増やすだけだと緩やかに速さが変わるっぽい
ソニックで7.0にしても、確かに速度は上がったけど急激に変わったわけではない
多分 Dash & StopTurn Initial Velocity(ダッシュした瞬間の速度)の値に結構依存してるかもしれない
ソニックで7.0にしても、確かに速度は上がったけど急激に変わったわけではない
多分 Dash & StopTurn Initial Velocity(ダッシュした瞬間の速度)の値に結構依存してるかもしれない
[715]名無しさん@お腹いっぱい。[sage] 2009/10/18(日) 23:14:32 ID:BdSolyVZ
706
ボイスのランダム化は可能
EventはIf(000A0200)、Requirementを2Bにして、たとえばこんな感じで
アイクのカウンターのボイスに「させん!」「そこ!」を加えてランダムにする場合
If 2B: 3
Sound Effect: 95A
Else: If 2B: 2
Sound Effect: 95B
Else:
Sound Effect: 95D
End If:
EventはIf(000A0200)、Requirementを2Bにして、たとえばこんな感じで
アイクのカウンターのボイスに「させん!」「そこ!」を加えてランダムにする場合
If 2B: 3
Sound Effect: 95A
Else: If 2B: 2
Sound Effect: 95B
Else:
Sound Effect: 95D
End If:
最初の2Bの後の数字はSEの数、次の2Bの後の数字はその数から1を引いた物、…
ちなみに 「If 2B: 1」は、最後のElseがその役割を果たしているので入れなくていい
ちなみに 「If 2B: 1」は、最後のElseがその役割を果たしているので入れなくていい
コメント欄
Projrct SAに関することについて書いてください。
- 実は、アイクとマルスのNBにはBaseDamageなるものが設定されています。
これは名前通り、噴火やシールドブレイカーのダメージの最低値(つまり溜めなしのダメージ)になるもので、1秒溜めるごとに、別に設定された値の分だけダメージが上乗せされていきます。
なので、SA上でダメージの値を弄っても、アイクの噴火の場合は10、マルスのシールドブレイカーの場合は8に、強制的になってしまうはずです。
最大溜めのsubactionが個別に設定されているのを見るあたり、1D0ではなく空きのsubactionを設定すればどうにかなる…かもしれません。
この場合、チャージした時のダメージを自分で設定しないといけないと思いますが。
こっちでもやってみます。 -- (名無しさん) 2011-10-23 01:24:59
- 回答ありがとうございます。
そんな特殊な設定がされていたとは知りませんでした。
溜め部分のループを削除して単発技にしていたので、ずっと10ダメージ固定でした
Gotoや他のSubActionで試したりもしていたんですが、どうりでならないわけですね…
NBで技を設定する以上、BaseDamageを回避するのは難しそうですね
-- (名無しさん) 2011-10-23 01:50:13
- こちらでも空きsubaction、RA-Bitを利用してやってみましたが、固定になってしまいました。うーん…
こういうたぐいのチャージ技は他にも
・ルイージの横B(ルイージロケット)
・ピカチュウの横B(ロケットずつき)
・ピットのNB(パルテナアロー)
があります。
ちなみに、同じチャージ技でも横Bの居合い斬りにはBase Damageが設定されておらず、ダメージ増加量のみ設定されているため、こちらは個別に設定できると思います。
あと、Base Damageだけなら、Offsetさえわかればバイナリエディタを使って変更することができます。
さらに、必殺技別に設定されているいろいろなパラメーターも変更できます。
(浮動小数点の変換ソフトが必要になる場面もあります)
詳しくは↓のOpenSAへどうぞ。
http://opensa.dantarion.com/wiki/Article_Floating_Points -- (名無しさん) 2011-10-23 02:10:55
- 溜めのある技の殆どがこういう仕様だったんですね
アイクのNBはバイナリで変更できました
個人ではどうしようもなかったのでホントに助かりました -- (名無しさん) 2011-10-23 03:28:23
- BrawlBoxがあったら楽ですかね?
けど何故か開けない; -- (名無しさん) 2011-11-12 21:44:30
- 移動距離を伸ばすにはどうすればいいんですか?
ピカチュウの電光石火やルイージのルイージロケットなどの飛ぶ距離をかえたいです -- (ナルシス) 2011-11-18 14:45:34
- ナルシスs
そういう技の移動距離はOffsetで設定できます
http://opensa.dantarion.com/wiki/Article_Floating_Points
ところでピカチュウの手、たとえばboneID44にアイテムを持たせたいのですが
FitPikachu.pacのどこに編集を加えれば良いのでしょうか? -- (名無しさん) 2011-11-18 16:46:00
- 自己解決しました -- (名無しさん) 2011-11-19 20:17:48
- ボイスのランダム化のElse: If 2B: 2の所、
最新のでは、Else: if valueになっていた。 -- (KAI@Marth) 2011-12-19 18:48:03
- 自分以外のプレイヤーの速度を遅くしたり
特定の範囲で相手を自分の方向に引き寄せる事は可能ですか? -- (名無しさん) 2011-12-20 14:17:06
- 上はTime manipulation(0C230200)で出来ます。
parameter 1にvalurで減速度を入力(4でタイマーと同じ)
parameter 1にvalurで効果時間を入力
下はOffensive Collisionを駆使してやれば出来ます。
リンクの横Bとかを参考に。 -- (KAI@Marth) 2011-12-21 07:55:48
- ↑すみません。Time manipulationの
最初のparameterは0です。 -- (KAI@Marth) 2011-12-22 17:01:01
- 何フレーム~何フレームまでの間にボタンを押せば、
攻撃できるというようなことはできますか?
(例)
Asynchronous Timer:frames=10 技が始まってから10フレーム後
If Value: Button Press: 1もしBボタンを押すと -- (blue) 2012-01-08 21:37:50
- ↑ミスりました。すみません。
(例)---------------------------------------------------
Asynchronous Timer:frames=10 技が始まってから10フレーム後
(15フレームの間に) ←こういうコード
If Value: Button Press: 1 Bボタンを押すと
Offensive Collision(適当な数値)
-------------------------------------------------------
みたいな事ができますか? -- (blue) 2012-01-08 21:42:56
- ループで同じ事をやっていたのを
見たことがありますよ。synchronous Timer:frames=1
をループの最後に入れてください。
でも1フレームごとなので、繰り返す処理は、
If Value: Button Press: 1ではなく
If Value: Button Pressd: 1だと思います。(勝手な予想 -- (KAI@Marth) 2012-01-08 23:26:34
- Brawl-のデデデをPSAModで編集し、バグ回避方法で保存しても
367kbから408kbと増加してしまいます。
どうすればいいのでしょうか? -- (名無しさん) 2012-01-12 17:29:39
- 掴み判定後に他のSub Actionに移るようにするにはどうすれば良いのでしょうか? -- (NAME) 2012-01-16 11:55:20
- 詳しく内容を聞かせてください。 -- (KAI@Marth) 2012-02-07 17:55:08
- カービィのストーンをマルスのカウンターの闇属性にしたいのですが、
使い方がわかりません。アドバイスお願いします。
-- (クロウサ) 2012-02-13 23:03:21
- zボタンの掴み技以外のコマンドで掴み判定を出すにはどうすればいいのですか?(例えばクッパのB→とか)
Catch Attack CollisionとかCatch Collision入れてboneとか座標いじっても掴んでくれません -- (NAME) 2012-02-15 01:34:42
このwikiの更新情報RSS