Users browsing this thread: 1 Guest(s)
Black Belt Counterattack

#1
Posts: 4
Threads: 1
Thanks Received: 1
Thanks Given: 0
Joined: Feb 2014
Reputation: 0
Status
None
Have just found out that counterattack using black belt is handled in
903D0 (command)
903D6 (additional value i.e. spell type)
(FF VI Advance)
1. Is it possible for each character to have it's own counterattack?
2. When I change counterattack method into Throw, the name and damage is always the last ever thrown item (or Dagger before I throw anything). That is not happened when I use spell as counterattack (i.e. set it as Death, Ultima, or even Hyper drive, and the spell will counter the attacker as normal ST spell).
Is there any method to handle them?

Thanks.
  Find
Quote  

#2
Posts: 175
Threads: 11
Thanks Received: 10
Thanks Given: 8
Joined: May 2013
Reputation: 13
Status
Well-Fed
1. Definitely, and I don't think it would be terribly complicated ASM coding -- it's actually not a bad idea, and I may take a look at trying it myself. What you'd want to do is jump to a subroutine that checks which character is acting/counterattacking and returns the relevant command/ability rather than a fixed one.

2. What I suspect is happening is that you're not setting a specific Thrown item as part of the counterattack, so it's using the existing state of the variable -- #00 before you've otherwise Thrown anything, and then the #ID of whatever was thrown last once you have -- to determine which item is being Thrown. It's not Throw itself that's broken, it's the way it interacts with the counterattack function.

There'd be a way to fix Throw-as-counterattack however you want it to work; the degree of complexity depends on what you want it to do. If you have a specific Thrown item in mind, that's much simpler; you'd just need to set it during the command process. (I'd need to look at the code to figure out exactly how/where you'd do that, which I don't have time for now but may look at later.) If you want a random Thrown item, it becomes increasingly complex, and moreso depending on whether you're checking existing inventory vs. all-Throwable-items (which would be interesting if Shadow randomly counterattacked with a Thrown, IDK, Illumina or something); you'd need to write code that checks through the Throwable items in the inventory. Although you may be able to cannibalise that from the function that builds the Throw menu.


Current Project: FF6: Tensei | Discord ID: TristanGrayse
  Find
Quote  

#3
Posts: 4
Threads: 1
Thanks Received: 1
Thanks Given: 0
Joined: Feb 2014
Reputation: 0
Status
None
For now, it's possible for general counterattack. The thrown item is read from 030036D0 (have just found it), which is unmodified by counterattack (must be modified when choosing thrown item). Luckily, only 17 modified bytes (and still under counterattack only).
This is what I've changed
Code:
903D0 2008
903D4 2043
903D6 7060
903D8 4B04
903DA 7018
903DC F000
903DE FD05
903EC 36D0
903EE 0300
For personal counterattack and inventory based-Throw, still haven't found the related subroutine (still need help for it).
Anyway, Thanks.
  Find
Quote  



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite