盗賊職業特性追加 一覧

DQ3 盗賊に切り返し(カウンター)を実装する3

前回からの続き。今回はダメージを発生させるところから。

  • SR: $02D580 直接攻撃反射ダメージ計算等
省略
02D593JSL $CFAEB8SR: $0FAEB8盗賊切り返しダメージ処理
省略

  • SR: $0FAEB8 盗賊切り返しダメージ処理(新SR)
0FAEB8PHAPush A
0FAEB9PHXPush X
0FAEBAPHYPush Y
0FAEBBLDA $2602A=$2602
0FAEBEAND #$0004A&=#$0004
0FAEC1BEQ #$14if(z==on) goto $0FAED7
0FAEC3LDA $23E4A=$23E4攻撃主体と行動対象を入れ替える
0FAEC6PHAPush A
0FAEC7LDA $23E8A=$23E8
0FAECAPHAPush A
0FAECBJSL $CFAEDBSR: $0FAEDB盗賊切り返しダメージ処理(コア)
0FAECFPLAPull A
0FAED0STA $23E8$23E8=A攻撃主体と行動対象を元に戻す
0FAED3PLAPull A
0FAED4STA $23E4$23E4=A
0FAED7PLYPull Y
0FAED8PLXPull X
0FAED9PLAPull A
0FAEDARTLreturn

続きを読む


DQ3 盗賊に切り返し(カウンター)を実装する2

今回から実装に移ります。ダメージが発生する前に切り返し判定を行い、発生する場合には行動対象へのダメージ処理をスキップします。

  • SR: $028E70 ダメージ確定メイン
省略
028E8DJSL $CFAF00SR: $0FAF00ダメージ確定後の処理メイン(含盗賊の切り返し)
省略

  • SR: $0FAF00 ダメージ確定後の処理メイン(含盗賊の切り返し)(新SR)
0FAF00JSL $CFADDFSR: $0FADDF盗賊切り返し発生判定
0FAF04LDA $2602A=$2602
0FAF07AND #$0004A&=#$0004切り返しが発生していたらスキップ
0FAF0ABEQ #$05if(z==on) goto $0FAF11
0FAF0CLDA $23FAA=$23FAダメージが0ならスキップ
0FAF0FBEQ #$04if(z==on) goto $0FAF15
0FAF11JSL $C29200SR: $029200ダメージ確定後の処理メイン
0FAF15RTLreturn

続きを読む


スポンサーリンク

DQ3 盗賊に切り返し(カウンター)を実装する1

リクエストがあったので解説エントリを投下します。実装自体は1日程度で終わりましたが、あとはバランスをどんなものにするかの検討・テストのほうが手間がかかったという印象。まず仕様としては以下のとおり。

  1. レベル20の盗賊が特定の戦闘行動(「切り替えし可」フラグを新設)に対して確率で発動する。死亡・麻痺・眠り・パーティアタックでは発動させない。例外として痛恨の一撃は回避できない
  2. 発動すると「自分が受けるはずだったダメージ」を返す(防御時は1/2、回避した場合には発生せず)
  3. 発動率はレベル20台で15%、以後レベル60までレベル10ごとに+5%される(最大35%)
  4. 新設アイテム「盗賊の短刀」を装備していると発動率が2倍になる

続きを読む