Final Fantasy Hacktics

Modding => PSX FFT Hacking => Topic started by: pokeytax on January 02, 2011, 10:16:01 am

Title: Total Request ASM: All armor replaced by shoes
Post by: pokeytax on January 02, 2011, 10:16:01 am
Bugfixes/Improvements


WORLD_WORLD_BIN
0x42D6C
40100700
2010E200
00210200
0680023C
20204400
B8108424
01008290
FF00C330
06006210
0F008330
0E006328
FAFF0314
02008424
02000010
00000000
0040C634
01001026
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
0x44B08
0680013C
0x44B28
0680013C
40280300
20286500
00290500
20082500
B8102124
01002294
62008594
00000000
0200A214
02002124
620080A4
0F002530
F8FF0514
00000000
F8FF2120
01002294
64008594
00000000
0200A214
02002124
640080A4
0F002530
F8FF0514
00000000
F8FF2120
01002294
66008594
00000000
0200A214
02002124
660080A4
0F002530
F8FF0514
00000000
F8FF2120
62008194
64008294
00000000
02004114
00000000
620080A4
66008294
00000000
02004114
00000000
620080A4
64008194
00000000
02004114
80101400
640080A4

Instead of preventing Chemist & Throw Item / Mediator & Monster Talk / Ninja & Two Swords / Monk & Martial Arts, this hack prevents all inherent abilities from being equipped. So in vanilla it alters nothing, but it will adjust to whatever you do in FFTPatcher. If you're feeling silly, you can do things like giving Knights innate Equip Armor / Equip Sword / Equip Shield to prevent the player from equipping junk. It does not stack with the previous hack; you can't ban specific combos.

It also prevents equipping multiple copies of a single R/S/M ability, which again has no effect in vanilla, but is probably desirable if you're using a "merge Support/Movement" hack.


BATTLE.BIN
0x11C0B4
53000492


0x11C104
54001F92


0x11C110
40008430


0x11C11C
0100FF33


0x11C124
82210400


0x11C12C
24F89F00


0x11C140
2530DF00


0x11C1c0
54001F92
02008010
0100FF33
0FFFC630
00F91F00
2530E603
1000C230


SCUS_942_21
0x4E28C
23105502
03000334
E4700508
1A004300

BATTLE_BIN
0xF5390
12100000
00006392
06006492
0400632C
08006014
02000334
80008330
05006014
25180000
40008330
02006014
01000334
03000334
0580013C
20082200
0C000434
18008300
12200000
20202400
0CF18490
05000234
18004300
12100000
20102200
3CF14290
80230400
40130200
20104400
23100202
1B005700
12100000
AB760108
23800202


Hacks & Edits


Units with the specified support ability (value XX on byte WW) equipped are treated as having the specified job/skillset (job YY, skillset ZZ) for the duration of learn-on-hit checks. So if you specify byte 91, value 10, job 51, skillset 0c, units with Monster Talk equipped learn Time Magic (e.g. Haste 2 and Slow 2), not their current skillset. It should not interfere with the support ability's ordinary functioning.

A previous version of this hack functioned only for the Support slot, not for Reaction/Movement or innates. This version should be fine.

BATTLE.BIN
0xF2F14
03000292
1680053C
12000492
549FA524
0800A2A0
WW000292
0400A4A0
XX004230
04000210
ZZ000234
120002A2
YY000234
030002A2
DE390608
00000000

0xF2F54
52FF7322
0C000234
51000334
120062A2
030063A2
623A0608
00000000

0x127774
c5670508

0x127774
25104202
000062A0
D5670508



A quick fix to make all learn-on-hit checks succeed X% of the time instead of "Chance to learn" %. Obviously you could do this in FFTPatcher, but with this ASM you can manipulate that flag for crystallization/AI learning purposes instead.

BATTLE.BIN
0x127844
XX000534


BATTLE.BIN
0x10fc70
XX000534
1800A300
3378010C
12280000


XX = status bit from here (http://www.ffhacktics.com/wiki/Formula_Hacking) (e.g. $10 for Undead, $78 for Regen + Protect + Shell + Haste)
YY = status bit offset - 3C (1C, 1D, 1E, 1F, 20)

examples:
Transparent + Chicken
XX = $10 + $04 = $14
YY = bit 3 = $1E

Innocent:
XX = $40
YY = bit 5 = $20

Sunken State
BATTLE.BIN
0x00124020
XX000234

0x00124028
YY0062A0

Caution
BATTLE.BIN
0x00124038
XX000234

0x00124040
YY0062A0

Dragon Spirit
BATTLE.BIN
0x00124050
XX000234

0x00124058
YY0062A0

Regenerator
BATTLE.BIN
0x00124068
XX000234

0x0012406c
YY0062A0


XX:
10 = level
11 = level, down
12 = speed
13 = CT
14 = PA
15 = MA
16 = Brave
17 = Faith

YY = desired boost + $80

example: XX = 16, YY = E4 converts to Brave + 100

Speed Save
BATTLE.BIN
0x124008
YY000234
862C0608
XX0062A0

A Save
BATTLE.BIN
0x123fe0
YY000234
862C0608
XX0062A0

MA Save
BATTLE.BIN
0x123ff4
YY000234
862C0608
XX0062A0

Brave Up
BATTLE.BIN
0x124090
YY000234
862C0608
XX0062A0

Faith Up
BATTLE.BIN
0x1240a4
YY000234
862C0608
XX0062A0



BATTLE.BIN
0x11AA34
E4670508

0xF2F90
F800A88F
06000810
XX000234
18005100
YY000234
12880000
1A002202
12880000
92060608
00000000


BATTLE.BIN
0x11F064
0x186064
0F000214
04006230
0D000210
1980023C
D9384290
0A000210
1980023C
CE384284
XX000134
18002200
YY000134
12100000
1A004100
12100000
1980013C
CE3822A4
1980023C
942D428C


BATTLE.BIN

Disables Potion slot
0x117798
20100000

Disables Hi-Potion slot
0x1177AC
20100000

Disables X-Potion slot
0x1177c8
20180000


BATTLE_BIN
0x118038
0c00a534


WORLD_WORLD_BIN
AAAA - BBBB: Action Abilities (fiddling not recommended)
CCCC - DDDD: Reaction Slot
EEEE - FFFF: Support Slot
GGGG - HHHH: Movement Slot

Note that these are all half-words, with the lowest byte first. So CCCC defaults to A601 for 01A6 (A Save).

0x429B8
AAAA0334
0x429C0
BBBB0234

0x429D0
CCCC0334
0x429D8
DDDD0234

0x429E4
EEEE0334
0x429EC
FFFF0234

0x429F8
GGGG0334
0x429FC
HHHH0234


SCUS_942_21
0x4E278
80FF0234

0x4C0FC
80FF0234


WORLD.BIN
0x4539C
B0008228

WORLD.BIN
0xAD7E0
09

SCUS_942_21
0x483E8
AFAEADAC
ABAAA9A8
A7A6A5A4
A3A2A1A0
9F9E9D9C
9B9A9998
97969594
93929190
FFCFCECD
CCCBCAC9
C8C7C6C5
C4C3C2C1
C0BFBEBD
BCBBBAB9
B8B7B6B5
B4B3B2B1
B0FF


Outstanding (for my own benefit, not ordered):

FFTorgASM XML is attached.

I have some vague ambitions about hacks for my own use, but I'm not sure how to do most of them yet. So in the meantime, I'm going to try to fill requests, since the last request thread seems dead - I know there is a lot of mundane stuff out there that can be done to augment FFTPatcher so might as well practice on that.

Requests will get filled in order of:
- personal interest
- applicability to ongoing project(s)
- utility-to-effort ratio

Just like every other request thread, lots of requests will never get filled, it doesn't mean you are unloved. I am pretty new to this so it may just be beyond me.
Title: Re: Baby's first ASM: "Learning" support for Blue Mages
Post by: RavenOfRazgriz on January 02, 2011, 05:26:16 pm
So this is an add-on to a Support Ability of choice that allows it to Learn on Hit the specified set but still allows the original function of the specified Support Ability to work unhindered?

Stealing this.  Very nice.
Title: Re: Baby's first ASM: "Learning" support for Blue Mages
Post by: Pride on January 02, 2011, 05:30:14 pm
You could have also had this go over one of the empty support skills around equip change but this is very nice, adds some to a normally weak support, and I'll have to test it out later
Title: Re: Baby's first ASM: "Learning" support for Blue Mages
Post by: RavenOfRazgriz on January 02, 2011, 05:42:22 pm
Quote from: Pride on January 02, 2011, 05:30:14 pm
You could have also had this go over one of the empty support skills around equip change but this is very nice, adds some to a normally weak support, and I'll have to test it out later


He did say you can map which slot it adds the effect to yourself, you know, which is honestly better than outright overwriting anything.
Title: Re: Baby's first ASM: "Learning" support for Blue Mages
Post by: pokeytax on January 02, 2011, 05:50:15 pm
Quote from: RavenOfRazgriz on January 02, 2011, 05:26:16 pm
So this is an add-on to a Support Ability of choice that allows it to Learn on Hit the specified set but still allows the original function of the specified Support Ability to work unhindered?


Yes, exactly. However, while it is equipped, you will lose the ability to learn your current primary (e.g. Summoner with TM Learning cannot learn Zodiac, just Slow/Haste 2).

If there's interest in doing it with something besides support it's doable; you could even make Learning a true passive, by checking whether the skill is known instead of equipped, although if you have more than one LoH skillset that makes a mess of things. I just did it this way to best match series tradition.
Title: Re: Baby's first ASM: "Learning" support for Blue Mages
Post by: Vanya on January 02, 2011, 05:56:38 pm
Well that's just freakin' awesome! I'll definitely be using this. Thanks for posting it! ^_^
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: formerdeathcorps on January 04, 2011, 04:50:13 am
Let's give a concrete example to see if I understand.

If I have a Summoner with TM Support, which of the following is true?
A) The Summoner can only use Haste2/Slow2 if he had already learned it.
B) The Summoner can only use Haste2/Slow2 even if he hadn't already learned it.
C) The Summoner can use his summons but can learn Haste2/Slow2, not Lich/Salamander/Zodiac/Leviathan
D) The Summoner can use his summons but can learn Haste2/Slow2, on top of Lich/Salamander/Zodiac/Leviathan
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: philsov on January 04, 2011, 07:07:53 am
Requests:

The ability to modify any/all of the self-statii reactions (dragon spirit, regen, sunken state, caution) to stuff like auto-protect, auto-shell. Preferably auto-XX, but I won't be too picky.  Suggest starting with sunken state?  It's most likely to go.
Teleport chances are reduced by 20% (or XX?) per additional tile past base movement

There's a whole trove of requests in Raz's thread if you take a peek in there.
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: FFMaster on January 04, 2011, 07:18:37 am
QuoteTeleport chances are reduced by 20% (or XX?) per additional tile past base movement


I've tried this one before. I ended up with the AI Teleport hack =p

If you can do this one, point out how you found the location for me. I need to learn.
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: Vanya on January 04, 2011, 07:56:50 pm
There is tons of demand for edited formulas. Do you think you could do something with all those blank slots so they can be usable as custom formulas?
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: pokeytax on January 04, 2011, 08:10:39 pm

BATTLE.BIN
0x10fc7c
80280500


I am short on time tonight, but I'll go into more detail later and add variables. It's two bit-shifts and an addition, so XX is hard but I can get close to whatever you need. (The current formula to work with is per-tile penalty of P%, P = (2^X + 1)*2^Y; currently X = 2, Y= 1, I changed it to X = 2, Y = 2.) Can't directly test but seems to work fine (move+5 teleport always fails, etc.)

Quote from: formerdeathcorps on January 04, 2011, 04:50:13 am
If I have a Summoner with TM Support, which of the following is true?


The Summoner can use his summons but can learn Haste2/Slow2, not Lich/Salamander/Zodiac/Leviathan.
I should also point out this is a virtual support, not a real one, so I'm 99% sure it won't work as a job innate.

Quote from: FFMaster on January 04, 2011, 07:18:37 am
If you can do this one, point out how you found the location for me. I need to learn.


- set a Memory Read breakpoint at the unit's Move attribute (unit 2, so 0x19268c + 0x3a)
- F9'd through the action and took the address closest to the teleport (starting point to scan)
- set a Memory Write breakpoint at the unit's X attribute (unit 2, so 0x19268c + 0x47)
- wrote down the address this is written after the teleport (ending point to scan)
- bumbled incompetently for a while
- saw a call to the RNG at 0x176c78 [jal 0x0005e0cc]
- ran to cursor a few lines before this, saw the code I was looking for (basically I got lucky)

Quote from: Vanya on January 04, 2011, 07:56:50 pm
There is tons of demand for edited formulas. Do you think you could do something with all those blank slots so they can be usable as custom formulas?


Good question! I'll look at it when I have more time, maybe the weekend. Custom formulas, preferably automating formula editing, is on the list for sure. I haven't been around long enough to know where to look for previous work - was it SentinelBlade who was working on a formula editor?

Quote from: philsov on January 04, 2011, 07:07:53 am
The ability to modify any/all of the self-statii reactions (dragon spirit, regen, sunken state, caution) to stuff like auto-protect, auto-shell.


Should be doable, Float is basically Auto-Float + Move on Lava. Just enable Auto-Status and disable the usual reaction...
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: RavenOfRazgriz on January 04, 2011, 10:22:32 pm
So if I wanted to make Teleport fail beyond range 100% of the time, just change X to 6, then get P% = (2^6+1)*2^1, or 64 * 2, or 128, and since P%> 100, the Teleport will fail beyond range?

The math seems more than easy enough to work with once you clarify what things to toggle about to adjust X/Y.  Being able to control it in general is good, people can go learn to do basic math if you can't get XX without rewriting the entire procedure.  Though, with a convoluted procedure like that, it'd probably save a lot of space to do so...
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: Tigerspike on January 04, 2011, 11:02:04 pm
@Philsov

PickleGirlFanboy already found the BATTLE.bin offset for Sunken State.  It is at 0x123FA8.  Change the 5A to whatever effect you want.  To quote him from the thread I had started:

Quote from: Pickle Girl Fanboy on June 20, 2010, 06:42:25 pm
Change Sunken State Effects

Gameshark Code
d018afa7-005a
8018afa7-00??

BATTLE.BIN Offset (not tested yet, CDMage doesn't like my ISO)
0x123FA8

??
57 = +1 PA (A Save)
58 = +1 MA (MA Save)
59 = +1 SP (Speed Save)
5A = Transparent (Sunken State)
5B = Defending (Caution)
5C = Reraise (Dragon Spirit)
5D = Regen (Regenerator)
5E = +3 Brave (Brave Up)
5F = +3 Faith (Face Up)
60 = Restore HP to max (HP Restore)
61 = Restore MP to max (MP Restore)
62 = Quick (Critical Quick)
63 = Deal damage to self in amount of max HP (Meatbone Slash)

There may be more effects that correspond to the other Reactions, but this is all I can do for now.
As you can see, it doesn't make a whole lot of sense.


Still not much luck in finding the Cheer-up formula, but Sunken State is ripe for the picking.
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: Vanya on January 05, 2011, 03:17:00 am
Quote from: pokeytax on January 04, 2011, 08:10:39 pm
Good question! I'll look at it when I have more time, maybe the weekend. Custom formulas, preferably automating formula editing, is on the list for sure. I haven't been around long enough to know where to look for previous work - was it SentinelBlade who was working on a formula editor?


SB was indeed working on something, but IIRC he lost all his work in a crash or his computer got stolen or something.
I do remember seeing a thread with info that included some existing formula hacks.
Edit: it was FFMaster's thread.

Here's something that I found while reading the FF5 Algorithm FAQ that might be interesting to consider:

********************************
7.2) ABILITIES THAT MODIFY STATS
********************************

Note that none of these modifiers are applied if it ends up lowering a
character's stat (i.e. Knight with Equip Whip will retain his own Strength
value and not the Mediator's Strength).

WHITE
Magic Power = White Mage Magic Power - 2 * (6 - White Mage Job Level)

BLACK
Magic Power = Black Mage Magic Power - 3 * (6 - Black Mage Job Level)

SUMMON
Magic Power = Summoner Magic Power - 4 * (5 - Summoner Job Level)

DIMEN
Magic Power = Time Mage Magic Power - 2 * (6 - Time Mage Job Level)

BLUE
Magic Power = Blue Mage Magic Power

RED
Magic Power = Red Mage Magic Power - (3 - Red Mage Job Level)
If Red Mage Job Level = 4, Magic Power = Red Mage Magic Power

X-MAGIC
Magic Power = Red Mage Magic Power

MAGIC SWORD
Magic Power = Mystic Knight Magic Power - 2 * (7 - Mystic Knight Job Level)
Strength = Mystic Knight Strength - 2 * (7 - Mystic Knight Job Level)

EQUIP SWORD
Strength = Knight Strength

EQUIP SPEAR
Strength = Dragoon Strength

EQUIP KATANA
Strength = Samurai Strength

EQUIP AXE
Strength = Berserker Strength

EQUIP BOW
Strength = Hunter Strength
Agility = Hunter Agility

EQUIP WHIP
Strength = Mediator Strength
Agility = Mediator Agility

EQUIP HARP
Magic Power = Bard Magic Power
Agility = Bard Agility

BRAWL
Strength = Monk Strength

DBL GRIP
Strength = 37 (applied before Character bonuses)


Maybe you could do something to tack stat multiplier boosts to some of the more pathetic support abilities?
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: philsov on January 05, 2011, 09:19:11 am
Quotebut Sunken State is ripe for the picking.


Not really.  From what you posted I'm free to change sunken state into... another, already existing reaction effect?  That won't do any good =\
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: pokeytax on January 05, 2011, 10:48:58 am
Quote from: philsov on January 04, 2011, 07:07:53 am
The ability to modify any/all of the self-statii reactions (dragon spirit, regen, sunken state, caution) to stuff like auto-protect, auto-shell.

To be clear:
change Regenerator to Auto-Regen (or Auto-XX), the way Float is Auto-Float? and ditch the reaction?
change Regenerator to inflict Auto-XX for the remainder of the fight when triggered?
change Regenerator to inflict XX instead of Regen?
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: philsov on January 05, 2011, 11:12:58 am
change Regenerator to inflict XX instead of Regen, please.

Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: Pickle Girl Fanboy on January 05, 2011, 12:42:00 pm
Cheer Up Formula gains MA instead of Brave
d018c124-0024
8018c124-0037

I think I found this in BATTLE.BIN.
0X125124.


IIRC, this changes every incidence of Brave gain for every formula that gains brave into MA gain.
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: Tigerspike on January 05, 2011, 04:53:21 pm
Yeah, that's what my tests indicated.  I tried Cheer Up, Praise, and Brave-Up.  All three changed to MA after swapping the 24 with 37.  I did not, however, test instances where the game alters your brave through your story responses (like rescuing Algus).

@philsov, the work may not be complete on sunken state, but there is a solid starting point for a more experienced hacker to tweak the ability.  Please don't dismiss PGF's work outright just because it was only tested with pre-existing reactions.  I'm sure a more experienced hacker can find the offsets that correspond with each of those values listed for the other reaction abilities.
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: philsov on January 05, 2011, 05:09:30 pm
Quotebut there is a solid starting point for a more experienced hacker to tweak the ability.


Certainly, and I thank you for bringing this data to pokey.  I didn't mean any disrespect :)
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: Pickle Girl Fanboy on January 05, 2011, 05:30:44 pm
Quote from: Tigerspike on January 05, 2011, 04:53:21 pmI did not, however, test instances where the game alters your brave through your story responses (like rescuing Algus).

Those shouldn't be affected by that offset.  They're coded to the events.  Could be wrong though.

Quote from: Tigerspike on January 05, 2011, 04:53:21 pmPlease don't dismiss PGF's work outright just because it was only tested with pre-existing reactions.

The Pickle demands respect.

Quote from: Tigerspike on January 05, 2011, 04:53:21 pm@philsov, the work may not be complete on sunken state, but there is a solid starting point for a more experienced hacker to tweak the ability.  I'm sure a more experienced hacker can find the offsets that correspond with each of those values listed for the other reaction abilities.

That's what I hope happens.  I did what I could, and then passed it off to someone else who could improve it.  That is community.
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: Tigerspike on January 05, 2011, 08:34:00 pm
Quote from: philsov on January 05, 2011, 05:09:30 pm
Certainly, and I thank you for bringing this data to pokey.  I didn't mean any disrespect :)


It's okay, I wasn't offended, I just didn't want PGF's work to be dismissed/overlooked.
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: pokeytax on January 05, 2011, 08:44:34 pm
Okay, I've got Sunken State triggering Chicken. Surely that's good enough, right? (Getting closer.)
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: philsov on January 05, 2011, 10:10:41 pm
Dan Hibiki reactions work >_>

Note,if you don't wrangle it to XX, personal preference is sunken state to auto shell, caution to auto-protect, haste to regenerator, and... uh... dragon spirit to cancel all negative statii?  Not that I'd use em all (first two would gladly suffice.  any, really), but it seems like a good spread. 
Title: Re: Pokeytax's ASM hacks: Total Request ASM
Post by: pokeytax on January 06, 2011, 08:10:03 pm

XX = status bit from here (http://www.ffhacktics.com/wiki/Formula_Hacking) (e.g. $10 for Undead, $78 for Regen + Protect + Shell + Haste)
YY = status bit offset - 3C (1C, 1D, 1E, 1F, 20)

examples:
Transparent + Chicken
XX = $10 + $04 = $14
YY = bit 3 = $1E

Innocent:
XX = $40
YY = bit 5 = $20

BATTLE.BIN
0x00124020
340200XX

0x00124028
A06200YY


XX = status bit from here (http://www.ffhacktics.com/wiki/Formula_Hacking) (e.g. $10 for Undead, $78 for Regen + Protect + Shell + Haste)
YY = status bit offset - 3C (1C, 1D, 1E, 1F, 20)

examples:
Transparent + Chicken
XX = $10 + $04 = $14
YY = bit 3 = $1E

Innocent:
XX = $40
YY = bit 5 = $20

BATTLE.BIN
0x00124038
340200XX

0x00124040
A06200YY


XX = status bit from here (http://www.ffhacktics.com/wiki/Formula_Hacking) (e.g. $10 for Undead, $78 for Regen + Protect + Shell + Haste)
YY = status bit offset - 3C (1C, 1D, 1E, 1F, 20)

examples:
Transparent + Chicken
XX = $10 + $04 = $14
YY = bit 3 = $1E

Innocent:
XX = $40
YY = bit 5 = $20

BATTLE.BIN
0x00124050
340200XX

0x00124058
A06200YY


XX = status bit from here (http://www.ffhacktics.com/wiki/Formula_Hacking) (e.g. $10 for Undead, $78 for Regen + Protect + Shell + Haste)
YY = status bit offset - 3C (1C, 1D, 1E, 1F, 20)

examples:
Transparent + Chicken
XX = $10 + $04 = $14
YY = bit 3 = $1E

Innocent:
XX = $40
YY = bit 5 = $20

BATTLE.BIN
0x00124068
340200XX

0x0012406c
A06200YY


The rest should be easy, and I found the pointers for 1B8 (Reflect) and 1BB (blank after Counter), so I will probably try to replace those with placeholder "inflict status XX on self" slots to get them usable. Obviously this is slightly limiting - you can't do Mbarrier because Reraise is off on another byte - but it's 99% I hope. Now to test I'm not somehow screwing up the actual status code... [edit: looks good!]

That earlier hack had the odd assorted effects because it was increasing the index - I'm guessing it effectively shifted the reactions down, treating Brave Up as Faith Up for instance. Helped me find the pointers though! This is the way!

When I have a bit more time I will tidy the other hacks - Teleport could easily be XX, Learning can work for innate support too.
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: philsov on January 06, 2011, 10:00:00 pm
WOOT!  Pokeytax that is fantastic!  Thank you sooooo much.

Also, for everyone's edification:
(http://philsov.ffhacktics.com/Pictures/status_hex.PNG)
As pokeytax mentioned multiple effects within the column are possible, and remember to do your math in hex :)
Hm... further requests...

Distribute to work with self-heals as well.  
Gilgame heart changed into... uh... another auto-xx?
Speed Save changed to gain 20 CT?  (Or "don't act/move" CT, if that's easier?)
New support - ?Serpentarious? zodiac compat is ignored for calculations from this character
Throw Item now only enables a range of 3 for Items
Monster Skill effect expanded to 2.

Or any other fix/great idea to the rarely used and/or overpowered reactions (Hamedo, I'm looking at you), but I'm at a loss for what they can turn into.
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: RavenOfRazgriz on January 06, 2011, 10:52:47 pm
Expanding on Philsov.

Distribute triggers on self-heals.
Gilgame Heart becomes fucking anything honestly.  More Auto-XXs seem worthless though.  Actually, what trigger do Auto-XX Reactions use?  Countergrasp, right?  If I'm remembering this correctly, is it possible for you to make them use Damage Split's trigger instead?  This would make them all a lot more worthwhile.
Speed Save gains +XX CT.
Throw Item range becomes XX. -> FFMaster just did it, woot.
Monster Skill Range becomes XX.  Also, if possible, if the equipped is a Monster, make Monster Skill apply to the unit itself as well so a monster that has Monster Skill innately can access its entire set.
Teleport becoming XX if you can would be great news, though the current state is still workable enough.

While on the topic of reactions - modify Auto-Potion to only apply the Item set to the original "Potion" Item Slot instead of all 3 so that you're not forced to give up 2 Item slots to disable Auto-X-Potion?

The Zodiac support seems rather worthless, personally, though I suppose making it for the hell of it wouldn't hurt.  Far better. in my opinion, would be to simulate FFTA's Monkeygrip - Weapons flagged as "Two Hands Only" can be held in one hand, and merge it with Equip Shield  (Or if it's easier - make it like Learning where it can be "attached" to any other R/S/M, allowing it to either be merged with something else or stand alone).  I remember talking to FDC about that one a while ago, but I don't think he's done work on it yet.  I would bring up Vehemence / reverse Vehemence / Blood Magic / Turbo Magic, but again, FDC and/or Pride are working on those as memory serves.

One from a purely personal perspective - would it be possible to make Two Hands boosts WP by 1.5x instead of 2x?  Or even better, XX/YY over 2x so the user can set it however they like?  Possibly make a hack that allows Half of MP to become MP costs are modified by XX/YY as well?

I had one final one but I forgot it.  Ugh.  Regardless, I think between expanding on Philsov's thoughts and adding a few of my own, you've been requestdumped enough already.  Just tossing my thoughts out there though since you actually seem to enjoy taking requests. =p
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: FFMaster on January 06, 2011, 11:00:41 pm
QuoteThrow Item range becomes XX.


This one is very easy I think. I can make it in a bit.
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: RavenOfRazgriz on January 06, 2011, 11:05:14 pm
I thought it would be.  I'm going to assume Square's not completely retarded and just used a Item Range +X for Throw Item, so making that +X editable would be easy.

Then again, this is Square, I wouldn't be surprised if Throw Item has so much code under it I could fit half of a properly coded Battle.bin under it.  :/
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: philsov on January 07, 2011, 09:15:09 am
QuoteActually, what trigger do Auto-XX Reactions use?


As per the BMG, dragon spirit and sunken state are counter-BG-able, while Regen and Caution are any damage a la damage split. 
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: Tigerspike on January 07, 2011, 10:58:09 am
How about counter-magic?  I'd like to see that one played around with, especially if we could cause it to inflict a status instead of countering with a spell.  Imagine fighting a boss that auto-inflicts Innocent on you (or itself) if you cast spells on it.
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: Pickle Girl Fanboy on January 07, 2011, 11:28:27 am
Didn't someone find the trigger routines for reactions a while ago?

My only request is that you find the pointers for item attributes.  I can provide more details, like where item attributes start and end, if you want.
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: pokeytax on January 07, 2011, 06:44:32 pm
Quote from: philsov on January 06, 2011, 10:00:00 pm
Or any other fix/great idea to the rarely used and/or overpowered reactions (Hamedo, I'm looking at you), but I'm at a loss for what they can turn into.


Can we decide what makes Hamedo broken? Would it be broken if you didn't get the counter? I was thinking about something like Sidestep, where you just change position, or Trip, where you sidestep and the enemy takes your spot, or as much as I'm sick of Ninjas Kawarimi, where you teleport to behind the opponent, instead of a counterattack. Maybe even Bribe where you shell out some cash or Evade where you lose XX CT. Not that I know how to do that... I imagine I can find a way to nerf the trigger rate on Hamedo/Blade Grasp if that's all it takes.

Quote from: Pickle Girl Fanboy on January 07, 2011, 11:28:27 am
My only request is that you find the pointers for item attributes.  I can provide more details, like where item attributes start and end, if you want.


Any info you have would help, just slap it on the wiki and/or link me.
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: RavenOfRazgriz on January 07, 2011, 06:56:24 pm
Hamedo's busted because it's free turns.  It allows you to negate an opponent's action and take a free attack command as an immediate interrupt without CT cost.  Stopping it from negating the command the attacking unit originally was trying to perform and making it reduce CT by 20 on trigger would balance it well, so that it goes unit attacks -> Hamedo triggers and interrupts -> Hamedo unit attacks -> Hamedo unit loses CT -> original unit connects its attack, imo.  This makes it a more narrow Counter that has a chance of trading some CT to kill the triggering unit before it does damage.

Granted, such a hack isn't at all easy to do, but probably easier than most other options and it still keeps it rather Hamedo-y.
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: philsov on January 07, 2011, 07:14:44 pm
QuoteWould it be broken if you didn't get the counter?


Yes.  Less broken, mind, but still superior to the majority of other reactions.  Heck, still superior to evasion/curing/defensive buffs.  Just park a meat-shield-in-disguise to try and attract all the melee, dodge everything, and then have the rest of the team swoop in and kill everything.

Evasion and armor work because because it makes them less likely targets by the AI.  Unless you can fix the AI to think about their targets' reactions, I don't think even CT -XX will save hamedo. 
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: Tigerspike on January 07, 2011, 08:51:25 pm
Could hamedo be turned into a less powerful counter that has a guaranteed knock-back?
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: Vanya on January 08, 2011, 04:08:30 am
I think it would be fine to either just remove the counter and have a small CT cost or nerf the counter damage down to 25% and have a big CT cost.

Quote from: Tigerspike on January 07, 2011, 08:51:25 pm
Could hamedo be turned into a less powerful counter that has a guaranteed knock-back?


I think it would be better to have Counter Tackle have 100% knock-back or at least a much higher trigger rate for the knock-back effect. (Just make it XX% knock-back trigger, that's what everyone will want.)

EDIT:

Just had an idea for a hack that probably isn't easy, but might be a cool thing to have. You know how the game loads specific sprites for the special jobs regardless of the current job? How about hijacking that routine and making it work like FF5 where they have their own sprites for each job. Of course you couldn't do this for every special unit you can recruit with out a massive expansion of the ISO to DVD proportions, but it might be useful for hacks that only have two or three specials. I think the game could handle 45 sprites for 3 specials. (It would require 210 sprites for all 14 permanent specials to have custom sprites for all their jobs; not to mention expanding the game's code & FFTPatcher to handle a 2byte index for sprites.)
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: pokeytax on January 08, 2011, 09:12:36 am
Quote from: RavenOfRazgriz on January 07, 2011, 06:56:24 pmStopping it from negating the command the attacking unit originally was trying to perform


This could be tricky. All counters go Original => Reaction. Even Hamedo just snips the Original and skips straight to Reaction. Dunno if I can kickstart the original attack afterward.

Quote from: philsov on January 07, 2011, 07:14:44 pmUnless you can fix the AI to think about their targets' reactions, I don't think even CT -XX will save hamedo.  


While reducing the trigger rate is quite inelegant, that might be what it takes.

Quote from: Tigerspike on January 07, 2011, 08:51:25 pm
Could hamedo be turned into a less powerful counter that has a guaranteed knock-back?


Oh, sure. I'm just trying to think of a way to keep the Hamedoness, where something triggers instead of the opponent's attack.

Quote from: Vanyainvolved sprite hack


This is the precise hack I want to make, but it seems like the kind of thing one should have the sprites on hand for before investing the effort. Of course, without the functionality on hand, hard to get up the effort to paste that many heads...
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: Pickle Girl Fanboy on January 08, 2011, 01:21:28 pm
Each item attribute is 25 bytes long, and right now there are 79 item attributes.
PA 0 to 255 (1 byte)
MA 0 to 255 (1 byte)
Speed 0 to 255 (1 byte)
Move 0 to 255 (1 byte)
Jump 0 to 255 (1 byte)
Absorb Element (1 byte)
Cancel Element (1 byte)
Half Element (1 byte)
Weak Element (1 byte)
Strengthen Element (1 byte)
Permanent Status (5 bytes)
Status Immunity (5 bytes)
Starting Status (5 bytes)

The first byte of Item Attribute data is 0x642c4 and and the last is 0x64a93.  That's RAM, by the way.

0x642c4 1st Item Attribute
0x642dd 2nd Item Attribute
...
0x64a62 78th Item Attribute
0x64a7b 79th Item Attribute


SCUS_942.21

Jobs
Items
Inflict Statuses
Item Attributes
Skill Sets
Monster Skills
Job Level

The first byte of Job data is 0x610b8, and the last is 0x62eb7, RAM.
The first byte of Item data is 0x62eb8, and the last is 0x63fc3, RAM.
The first byte of Inflict Statuses data is 0x63fc4, and the last is 0x642c3, RAM.
The first byte of Item Attribute data is 0x642c4 and and the last is 0x64a93, RAM.
The first byte of Skill Set data is 0x64a94, and the last is 0x65bc3, RAM.
The first byte of Monster Skill data is 0x65bc4, and the last is 0x65cb3, RAM.
The first byte of Job Level data is 0x660c4, and the last is 0x66193, RAM.


About Hamedo: why not allow the hacker to customize it as they see fit?  You could divide the evasion and the counter, allow the hacker to toggle the counter on or off, and allow the hacker to select the ability to counter with.
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: pokeytax on January 08, 2011, 01:54:56 pm
Quote from: philsov on January 06, 2011, 10:00:00 pm
Monster Skill effect expanded to 2.


This is proving to be a bitch (it's hardcoded as adjacent, i.e. x1 = x2 OR y1 = y2 rather than simply range 1). I will keep at it though, since range 1 really takes the fun out of things.


BATTLE.BIN
0x124008
94000234
862C0608
130062A0


This is just the proof of concept, it doesn't look hard to freely modify amount and attribute for the three Saves and two Ups and I should have those up shortly. Don't worry, I love XX as much as you do!
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: philsov on January 09, 2011, 12:06:07 pm
Quotetwo Ups


FDC cracked this one already -- at least increment, not parameter.

Either way, awesome work!!!!

*runs off with speed save hack into the woods*
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: Vanya on January 09, 2011, 12:50:13 pm
Quote from: pokeytax on January 08, 2011, 09:12:36 am
This is the precise hack I want to make, but it seems like the kind of thing one should have the sprites on hand for before investing the effort. Of course, without the functionality on hand, hard to get up the effort to paste that many heads...


Just doing head swaps is easy. I can have them done in a week or two.
Title: Re: Total Request ASM: Sunken State inflicts XX
Post by: pokeytax on January 09, 2011, 01:14:04 pm
Oh man, probably could have saved a lil' time then. That's what I get for not paying attention to other people's oeuvres! Anyway, the generalized .xml is up. "Freely" is a misnomer - it turned out much less useful than I would have liked, but whatever. Here is what you can boost easily:

PA, MA, Speed, Brave, Faith
CT
Level, up and down (?!)

On the plus side, it looks quite nice - you get a little message and everything.
Title: Re: Total Request ASM: Speed Save boosts CT by 20
Post by: RavenOfRazgriz on January 10, 2011, 05:42:19 pm
It's too bad to hear that about Monster Skill.  Good luck mauling it, though if it's that bad I almost want to say take a break and do something that should be simpler first and leave the big shithead for last.  May I recommend the making all the Auto-XX Reactions use the Damage Split trigger one or the Distribute on Self-Heals one?

Also, amazing on the Speed Save becomes +ZZ CT hack - I'm with Philsov in mugging that as it's something I've been asking around about behind closed IRC doors for a while now.
Title: Re: Total Request ASM: Speed Save boosts CT by 20
Post by: Vanya on January 10, 2011, 06:29:25 pm
Thanks for all your effort so far! ^_^
Title: Re: Total Request ASM: Speed Save boosts CT by 20
Post by: pokeytax on January 10, 2011, 11:10:55 pm
Picking some lower-hanging fruit for now.

BATTLE.BIN
0x11F064
0x186064
0F000214
04006230
0D000210
1980023C
D9384290
0A000210
1980023C
CE384284
XX000134
18002200
YY000134
12100000
1A004100
12100000
1980013C
CE3822A4
1980023C
942D428C


(Yes, although the calculation probably comes at the end so as to be indistinguishable, Two Hands seems to modify XA like other attack modifiers.)
Title: Re: Total Request ASM: Two Hands boosts attack by XX/YY
Post by: RavenOfRazgriz on January 11, 2011, 10:10:07 am
I love how "pick lower hanging fruit" came out to being doing one of the ones I wanted the most.  Win.  Thank you very much.

I've also remembered the one Support skill I had said I'd forgotten before, but I'll hold off until you have most of this stuff done I think.  Very nice work so far though.
Title: Re: Total Request ASM: Two Hands boosts attack by XX/YY
Post by: Pickle Girl Fanboy on January 11, 2011, 01:46:21 pm
How would you make Gilgame Heart suck less?  I'm curious.

On that subject, Steal Gil and Gilgame Heart are tactically useless for enemies - they produce no advantages during a battle - and, because they do so little damage to Ramza's wallet, they are also strategically useless for enemies - they do not force Ramza to reset the battle by stealing all his money.

For Ramza to win, he must come through the battle alive, and with his resources intact so he can survive future battles.  All the enemy has to do is crystalize that one ninja you raised from a level one squire, and they win, because you have to reset.

IMO, if you want to make Gilgame Heart useful, while retaining it's original purpose, make the amount of Gil taken from Ramza's wallet equal Damage*100 or Damage*1000.  Same with Steal Gil.

I want to know what you think.
Title: Re: Total Request ASM: Two Hands boosts attack by XX/YY
Post by: Vanya on January 11, 2011, 03:11:56 pm
Doesn't modifying Steal Gil also change Gilgame Heart?
From what I understand, Gilgame Heart basically amounts to a support ability that reacts to physical damage with X skill.

As for Gilgame Heart it would be interesting to make it use a random skill from X skillset instead of a specific one.
Title: Re: Total Request ASM: Two Hands boosts attack by XX/YY
Post by: philsov on January 11, 2011, 03:59:58 pm
Quote from: Vanya on January 11, 2011, 03:11:56 pm
Doesn't modifying Steal Gil also change Gilgame Heart?
From what I understand, Gilgame Heart basically amounts to a support ability that reacts to physical damage with X skill.

As for Gilgame Heart it would be interesting to make it use a random skill from X skillset instead of a specific one.


Steal gil is [Caster_Lv * Caster_Sp]
gilgame heart is (damage * 10)

I'm pretty sure they're not linked.
Title: Re: Total Request ASM: Two Hands boosts attack by XX/YY
Post by: Vanya on January 11, 2011, 04:37:52 pm
That seems terribly inefficient, when you already have money stealing code.
Title: Re: Total Request ASM: Two Hands boosts attack by XX/YY
Post by: pokeytax on January 11, 2011, 06:37:24 pm
Quote from: Vanya on January 11, 2011, 04:37:52 pm
That seems terribly inefficient

:lol: (Not laughing at you... laughing with you.)

Quote from: Pickle Girl Fanboy on January 11, 2011, 01:46:21 pm
How would you make Gilgame Heart suck less?  I'm curious.


Probably by replacing it - similar flavor, but still a complete replacement. IMO gil and even item abilities are tricky to balance; either the cost/gain is too small and is just flavor, or it's high risk/high reward and either unusable or broken (e.g. basically every implementation of Gil Toss; it's just usually overshadowed by even more broken stuff). Plus a significant fraction of players like collecting/accumulating and will avoid the ability altogether if it threatens their hoard. I really prefer to make the cost trivial and balance around the other effects.

Up Gilgame Heart to Dmg*100 or Dmg*1000 and it's a world-class gilfarming ability, then it has to be enemy-only or coded to work differently for allies; already a royal pain. I was thinking of replacing it with Bribe: Hamedo with reverse Gilgame Heart instead of Counter, but in any case there will be multiple options (auto-status at least)!
Title: Re: Total Request ASM: Two Hands boosts attack by XX/YY
Post by: Vanya on January 11, 2011, 10:11:05 pm
Quote from: pokeytax on January 11, 2011, 06:37:24 pmI was thinking of replacing it with Bribe: Hamedo with reverse Gilgame Heart instead of Counter, but in any case there will be multiple options (auto-status at least)!


That sounds brilliant!
Title: Re: Total Request ASM: Two Hands boosts attack by XX/YY
Post by: pokeytax on January 12, 2011, 02:41:08 pm

BATTLE.BIN
0x11AA34
E4670508

0xF2F90
F800A88F
06000810
XX000234
18005100
YY000234
12880000
1A002202
12880000
92060608
00000000


I managed to break my .xml file by doing some terribly dumb thing and can't find the closing tag or quotation mark I need to get it back into FFTorgASM compliance. If anyone sees what I did wrong, let me know, it's marked "broken" in the OP, obviously. It seems limited to the latest two hacks, as the file is fine when these are removed!
Title: Re: Total Request ASM: Two Hands, Half of MP have XX/YY effect
Post by: RavenOfRazgriz on January 12, 2011, 03:21:07 pm
I took a quick skim and couldn't find the problem either.  I'll look more closely later today if you don't find it by then.

But the Half of MP hack is obviously other hack I offhandedly mentioned but wanted very much.  Thank you, you have saved me many headaches.
Title: Re: Total Request ASM: Two Hands, Half of MP have XX/YY effect
Post by: philsov on January 12, 2011, 05:53:01 pm
Quotemaking this the one reaction that works on self-action is no picnic


Heh, I hadn't even considered that facet :3

Maybe... uh... somehow make it a "passive" like weapon guard/abandon so it's 100% and then can be used strategically?
Title: Re: Total Request ASM: Two Hands, Half of MP have XX/YY effect
Post by: pokeytax on January 12, 2011, 09:05:25 pm
Quote from: philsov on January 12, 2011, 05:53:01 pm
Heh, I hadn't even considered that facet :3


Fortunately this is false, I forgot about MP Switch! So I at least have somewhere to start.
Title: Re: Total Request ASM: Two Hands, Half of MP have XX/YY effect
Post by: RavenOfRazgriz on January 12, 2011, 11:20:37 pm
I'm going to take a bit of the burden off your shoulders and rescind my request of Monster Skill being able to "unlock" the skill of a monster unit that carries it innately.  I've learned that Zodiac's Skillset Hack carries that functionality itself when used and applied competently, and also does everything it says on the tin in regards to Throw/Equip Change/etc from the mild bit of testing I've been doing to try and force Monsters to be able to access the Attack window.
Title: Re: Total Request ASM: Two Hands, Half of MP have XX/YY effect
Post by: Pride on January 13, 2011, 04:57:23 am
As a warning, you will slap yourself to why the .xml was broken.......






You wrote BATTLE.BIN instead of BATTLE_BIN. Here is a fixed version.
Title: Re: Total Request ASM: Two Hands, Half of MP have XX/YY effect
Post by: Atma on January 13, 2011, 05:02:38 am
just throwing this out there...
i think a cool idea for Hamedo would be for u to act before they hit u, like it already does, but instead of just attacking, maybe do break skill (PA or Weapon) or inflict Don't Act or Chicken (lower Brave)?
of course, i have ZERO knowledge of how any of this would be possible, just throwing it out there, may just be for funzies with no actual possibility of it being implemented.
Title: Re: Total Request ASM: Two Hands, Half of MP have XX/YY effect
Post by: Xifanie on January 13, 2011, 07:41:50 am
You forgot to reverse the order of bytes for all "Reaction X adds Y status".
Title: Re: Total Request ASM: Two Hands, Half of MP have XX/YY effect
Post by: pokeytax on January 13, 2011, 06:40:13 pm
Quote from: Pride
As a warning, you will slap yourself to why the .xml was broken.......


Quote from: Zodiac
You forgot to reverse the order of bytes for all "Reaction X adds Y status".


Wow... thank you guys a ton, given my level of expertise that's at least three hours of work right there. Updated the OP.
Title: Re: Total Request ASM: Two Hands, Half of MP have XX/YY effect
Post by: Vanya on January 14, 2011, 08:28:30 pm
Here's a request that is probably not easy.
Make one of the unused flags force a T shaped AoE for non-lame breath attacks.
Kinda like how Linear Attack and 3-Directions flags work.

Just thought of this one while researching Berserker & Berserker-like jobs in the FF series.
How about giving Brave an effect on damage calculation, like Xifanie's Fury Hack, but only active while a specified support skill is in use?

In conjunction with that, how about also giving Brave an inverse effect on Hit% while a specified support skill is in use?
This would be for an innate ability for a Riskbreaker job that mimics the way Risk works in Vagrant Story.
Title: Re: Total Request ASM: Two Hands, Half of MP have XX/YY effect
Post by: pokeytax on January 15, 2011, 10:26:29 am

BATTLE.BIN

Disables Potion slot
0x117798
20100000

Disables Hi-Potion slot
0x1177AC
20100000

Disables X-Potion slot
0x1177c8
20180000
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: pokeytax on January 15, 2011, 08:59:19 pm
Quote from: Pickle Girl Fanboy on January 07, 2011, 11:28:27 am
My only request is that you find the pointers for item attributes.  I can provide more details, like where item attributes start and end, if you want.


Okay, I'm poking around but I still don't understand what you want. When looking up an item:
- the game reads the item number (e.g. A8 for Thief Hat)
- the game uses that item number as the offset to look up the item data, specifically the item attribute
- the game uses the item attribute as the offset to look up the item attribute data

So I guess what you want is to know where the game goes when it finds out an item has Auto-Regen, for example?
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: RavenOfRazgriz on January 15, 2011, 10:02:10 pm
I like very much that you included the two hacks that disable the Potions separately.

I know you have a nice list of stuff to do as it is, but I have a simple one I'd like to add in if you don't mind - A Support Skill that boosts both a unit's Max HP and Max MP by 25%.  XX is obviously better, but I have a personal need for 25%.  Making it like Learning where I can attach it to something dumb like Monster Talk is fine, probably preferable to make it easier for people to use.  If it's easier I can give a bunch of Supports I have no need for that you could write it over one of, though, but the empty slots are already in use sadly.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: Vanya on January 16, 2011, 07:50:51 am
Quote from: pokeytax on January 15, 2011, 10:26:29 am

BATTLE.BIN

Disables Hi-Potion slot
0x1177AC
20100000

Disables X-Potion slot
0x1177c8
20180000



Can you also provide a disable code for the basic potion slot? That would make it more versatile. Thanks! ^_^
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: philsov on January 20, 2011, 12:25:46 pm
Request:

Give confusion (possibly other statii?) a CT duration.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: BeoulveBlack on January 21, 2011, 01:02:43 pm
some of these are simple, others maybe not.

Requests:

1) is there a way to change moldball spore's formula (cant remember the number) to "...HIT: (MA+K)" to "...HIT: Fa(MA+K)"?

2) the same way that people hacked it so that the target's faith was left out of dmg calculation for spells, is it possible to change the way the target's faith is implemented? for example, with CFa=80 and TFa=60, instead of

> .80 * .60 * (MA*Y) -->  .48 * (MA*Y)

could we do something so that faith acts like magic attack/defense?

> (CFa - (TFa/3))/100 * (MA*Y)  -->  (80 - 20)/100 * (MA*Y)  -->  .60 * (MA*Y)

3. could i get a formula like this: " - Br/Fa (X), - PA/MA/SP (Y) " for a curse-type skill?
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: pokeytax on January 21, 2011, 08:19:31 pm
Quote from: BeoulveBlack on January 21, 2011, 01:02:43 pm
formulas

These all look doable in theory but I'm holding back on formulas until FDC finishes the yeoman's work he is doing there reorganizing. Honestly, I will probably try to write a formula editor if no one else does, every patch is going to want at least a few unique ones.

Quote from: philsov
Give confusion (possibly other statii?) a CT duration.


Pretty tough, since there's no space for the CT counter! Although again, FDC was working on this at some point.

I have been banging my head on Distribute for a while but I give up for now, vexes me to do so but it's just too minor to spend a ton of time on.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: philsov on January 21, 2011, 08:55:29 pm
understandable, I greatly appreciate the effort though.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: pokeytax on January 22, 2011, 09:38:03 pm
I'm working on an involved hack to let supports adjust stats (e.g. set HPM to 110 if HPM < 110; HPM * XX/YY; HP +/- C) but I need room in WORLD.BIN. I think. God, I don't even know. The code itself is at 0x5b968 in RAM and is called from both the world map and battle, so where would I put that? And where can I put my jumped code?
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: Pickle Girl Fanboy on January 24, 2011, 03:54:09 pm
Quote from: pokeytax on January 15, 2011, 08:59:19 pm
Okay, I'm poking around but I still don't understand what you want. When looking up an item:
- the game reads the item number (e.g. A8 for Thief Hat)
- the game uses that item number as the offset to look up the item data, specifically the item attribute
- the game uses the item attribute as the offset to look up the item attribute data

So I guess what you want is to know where the game goes when it finds out an item has Auto-Regen, for example?


I just want you to investigate and document item attributes so someday we can make more of them.  Seventy-nine isn't enough.

I'm not in a hurry though - I can wait a year or two.  I have plenty of other stuff on my plate.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: FFMaster on January 24, 2011, 08:36:14 pm
The main problem is that all the data is in SCUS and it's packed pretty tightly.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: The Damned on January 24, 2011, 08:48:37 pm
Pretty great hacks so far. I have to get on stuff like this.

Quote from: philsov on January 20, 2011, 12:25:46 pm
Request:

Give confusion (possibly other statii?) a CT duration.


If you do this, giving Berserk a CT duration would seem like it's pretty high up there priority-wise too IMO.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: pokeytax on January 24, 2011, 08:50:13 pm
Quote from: FFMaster on January 24, 2011, 08:36:14 pm
The main problem is that all the data is in SCUS and it's packed pretty tightly.


That's what I was afraid of. The jump from 0x5b968 is no problem and is done in existing space, but it looks like I have to duplicate the sizable jump routine in both WORLD.BIN and BATTLE.BIN, then? That's a bother - I'm not sure how much space is left in WORLD.BIN.

Just finished the proof-of-concept so I'm just hammering out where it goes now.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: formerdeathcorps on January 27, 2011, 03:25:07 am
Quote from: pokeytax on January 24, 2011, 08:50:13 pm
That's what I was afraid of. The jump from 0x5b968 is no problem and is done in existing space, but it looks like I have to duplicate the sizable jump routine in both WORLD.BIN and BATTLE.BIN, then? That's a bother - I'm not sure how much space is left in WORLD.BIN.

Just finished the proof-of-concept so I'm just hammering out where it goes now.


Or you could simply find where the game calculates the CTR reduction for status effects (like Poison) and merge opposite effects together (this works since opposite effects cancel each other and the resultant reset in CTR timers would not affect anything).  Xifanie and I talked about this a few months back; the safest effects to merge would be Regen/Poison and Innocent/Faith, though a merger of DS/Re-Raise (as long as DS cancels re-raise), and Slow/Haste (as long as both now only last for 24 CTR) would also be interesting.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: RavenOfRazgriz on January 27, 2011, 05:12:29 am
As long as you release all of them as separate hacks and make the hacks for "this status uses the CT we just freed up" customizable enough, those all seem worth doing.

I can personally make use of 3 of those, more than likely.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: Pickle Girl Fanboy on January 27, 2011, 02:48:32 pm
http://www.ffhacktics.com/wiki/Inherent_Support_Abilities_Limitations

Anyone feel like finishing this one?
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: pokeytax on February 01, 2011, 05:47:22 pm
Been short on time and working on the same monstrosity (I keep expanding the scope). Don't want to tease what I might not be able to deliver, so I'll keep it under wraps, but it checks off a few requests at once.

I'm currently fiddling with a jump from the first 0x64000 bytes. What file is this? "SCUS_942_21"?

I need a code that works in and out of battle - so I can just branch, then jump to either WORLD_BIN or BATTLE_BIN depending, right? There's no time I'm dealing with unit data and one of those isn't loaded?

How much of a constraint is the limited number of item attributes? Anyone else seriously hampered by this?
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: RavenOfRazgriz on February 01, 2011, 07:43:30 pm
Define "limited number of item attributes."

If you mean volume, then that's not bugged me much but more is always better.  I had enough room for what I needed to do though, personally.

If you mean the actual attributes - like not being able to make Shields give MP without hex editing, etc., yes that annoys the fuck out of me, but an ASM hack can't fix that since what's really needed is an update to FFTP.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: pokeytax on February 01, 2011, 07:47:05 pm
I mean volume.

Quote from: RavenOfRazgriz on February 01, 2011, 07:43:30 pm
If you mean the actual attributes - like not being able to make Shields give MP without hex editing, etc., yes that annoys the fuck out of me, but an ASM hack can't fix that since what's really needed is an update to FFTP.


That's interesting, I didn't know you could do that! This hack should remedy that, though.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: RavenOfRazgriz on February 01, 2011, 08:16:34 pm
How would this hack fix that?  The problem is literally just not having a button on FFTP to push, the code already exists.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: pokeytax on February 01, 2011, 08:29:29 pm
Quote from: RavenOfRazgriz on February 01, 2011, 08:16:34 pm
How would this hack fix that?  The problem is literally just not having a button on FFTP to push, the code already exists.


Well, it doesn't fix it, so much as reroute the sewage through another big pipe, I guess!

The basic idea of the hack is to add "ability attributes" that work like item attributes, but for equipped R/S/M. They have the functionality of item attributes + HP + MP, as well as multipliers (HP * X%) and decrements (HP - 40). So you could do "Necropotence" for Auto-Undead and appropriate elemental/status mods, or make Hamedo decrease Speed by 5. I figured I might as well make "ability attributes" attachable to items too so you could have the added functionality, along with more item attribute space if you're running short.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: philsov on February 01, 2011, 08:39:28 pm
QuoteHow much of a constraint is the limited number of item attributes? Anyone else seriously hampered by this?


No, not really.  I think when I wrote everything up and then tried to input it I came up 2 short and had to trim a bit.  Tragic, I know.

However, the thought of giving item-like functionality to R/S/M... is causing me to salivate on myself.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: RavenOfRazgriz on February 01, 2011, 09:41:33 pm
Quote from: pokeytax on February 01, 2011, 08:29:29 pm
Well, it doesn't fix it, so much as reroute the sewage through another big pipe, I guess!

The basic idea of the hack is to add "ability attributes" that work like item attributes, but for equipped R/S/M. They have the functionality of item attributes + HP + MP, as well as multipliers (HP * X%) and decrements (HP - 40). So you could do "Necropotence" for Auto-Undead and appropriate elemental/status mods, or make Hamedo decrease Speed by 5. I figured I might as well make "ability attributes" attachable to items too so you could have the added functionality, along with more item attribute space if you're running short.



This works amazing and great for me as long as you can make it all be not retarded and convoluted.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: Pickle Girl Fanboy on February 03, 2011, 10:48:00 am
Quote from: RavenOfRazgriz on February 01, 2011, 07:43:30 pm
If you mean the actual attributes - like not being able to make Shields give MP without hex editing, etc., yes that annoys the fuck out of me, but an ASM hack can't fix that since what's really needed is an update to FFTP.

Did not know that.  Is our FFTPatcher coder is AWOL?
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: Vanya on February 03, 2011, 01:14:11 pm
No. He's always been a recluse.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: pokeytax on February 03, 2011, 07:27:27 pm
Quote from: pokeytax on February 01, 2011, 05:47:22 pm
I'm currently fiddling with a jump from the first 0x64000 bytes. What file is this? "SCUS_942_21"?


Bumping this again because I'm in the testing phase and still fiddling with savestates. I just want to hit 0x5C82C in RAM during formation and battle, is that so much to ask?!?!
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: pokeytax on February 06, 2011, 12:59:11 pm
Figured out where to put the SCUS code thanks to a note from FDC, now debugging this, which is pretty hellish. Code that breaks when run, but not on stepthrough... maybe I need to account for load delay or something. (EDIT: Yes, that was it... PGF I am gonna eviscerate you for jumbling the order of the item attribute data!! As apology for this stream-of-consciousness garbage hopefully I'll have this released within a couple days, branching from SCUS to either WORLD.BIN or BATTLE.BIN based on the unit ID seems to be working fine.)
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: pokeytax on February 07, 2011, 06:07:37 pm
Okay, put out the first version of the ALMA hack, which should address a few of these (item attributes, support multipliers, general R/S/M balancing). Check that thread (http://ffhacktics.com/smf/index.php?topic=6664.0) for details.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: pokeytax on February 12, 2011, 02:38:12 pm
Now that ALMA can fill in unused ability slots with mildly interesting stuff, I'm going to see which ability slots I can manually disable without much trouble, so they can be reused for something more interesting. Expect a lot of piecemeal posting as I check them off.

Move +1,+2,+3 and Jump +1,+2,+3 to start, but what a drag - the preview is hardcoded and disregards what they actually do. For a cosmetic issue, that thing is sure moving up my list...

AA,BB,CC,DD,EE,FF: The values of byte 93 these are attached to. So these default to 80,40,20,10,08,04. 00 disables.
UU,VV,WW,XX,YY,ZZ: The increase these grant. So these default to 01,02,03,01,02,03.

SCUS_942_21

0x5c910
AA00c230
02004010
BB00c230
UU00a524
02004010
CC00c230
VV00a524
02004010
DD00c230
WW00a524
02004010
EE00a524
XX006324
02004010
FF00a524
YY006324
02004010
ffffa230
ZZ006324
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: RavenOfRazgriz on February 12, 2011, 04:44:08 pm
Haha.

I'm going to post that request from the ALMA thread, since it actually ties into what you're doing now perfectly.

Merge Any Weather with Any Ground and Walk on Water with Move Underwater, gut all effects from Secret Hunt, Monster Talk, Throw Item, Maintenance, Monster Skill, Equip Change, Move +2, Move +3, Jump +1, Jump +3, Move-EXP UP, Move-JP UP, Any Ground, Move on Lava, Move Underwater, Silent Walk, and replace Move-EXP UP, Move-JP UP, Any Ground, Move on Lava, Move Underwater with Defend-like commands that call the Action Menus of 06 Item, 11 Elemental, 12 Jump, 13 Draw Out, 14 Throw, with the 06 Item Support Ability coming bundled with the properties of Throw Item.

Obviously, since I only need actual operations performed on Any Weather, Any Ground, Walk on Water, Move Underwater, Move-EXP UP, Move-JP UP, and Move on Lava, the rest can wait, but I have full intentions of giving them new effects and they comprise a full list of Supports and Movements I could see anyone conceivably wanting to null and replace so I figure'd I list all of them.  *shrug*

Even if you can just perform those two mergers, and make those other 5 sets into Action Menu calls, I'll be incredibly delighted as it'll save me from needing to do a ton of bullshit with the Generic Skillset Fix hack to only get a fraction of the functionality.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: pokeytax on February 13, 2011, 10:31:21 am

Setting a value to 00 disables the ability.

Ignore Height attached to value XX on byte 93 (defaults to 02)
BATTLE.BIN
0x10D824
XX004230

Move-HP Up attached to value WW on byte AA (defaults to 01 on 93; may not work with all values of WW)
Move-MP Up, Move-Get Exp, Move-Get JP attached to values XX,YY,ZZ on byte BB (default to 80,40,20 on 94)
BATTLE.BIN
0x119134
AA008290 <--- Move-HP Up byte
BB008490 <--- Move-MP/EXP/JP Up byte
WW004230 <--- Move-HP Up value (??)
23100200
22004330
XX008230 <--- Move-MP Up value
02004010
YY008230 <--- Move-Get Exp value
42006334
02004010
ZZ008230 <--- Move-Get JP value


Like anyone with spirit, I am interested in cracking open Defend/Equip Change, but gutting the effects from things is much easier so I'm doing that first.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: RavenOfRazgriz on February 13, 2011, 01:02:39 pm
You should make your explanations regarding the various Move-UP abilities more friendly to people who don't actually assembly edit as they're going to be the primary users of pretty much every assembly hack.  Your current explanation is very technical and doesn't work well for someone who isn't already part of the "in" crowd, if you know what I mean.  

But alright, get to disabling stuff so that it can be nommed.
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: Cheetah on February 13, 2011, 02:56:52 pm
I just wanted to give a shoutout for the great work that is happening here, keep it up guys.

Oh and if you can make auto-potion only used potions, could you make an additional skill that was auto-high potion?
Title: Re: Total Request ASM: Auto-Potion ignores Hi-Potion & X-Potion
Post by: pokeytax on February 18, 2011, 09:57:44 pm
I'm going to consolidate and simplify the disabling stuff once it's all done, but that could be a while.


BATTLE_BIN
0x118038
0c00a534


Did this one almost by accident, not very well-tested, but can't hurt to throw it up here.

Quote from: Cheetah on February 13, 2011, 02:56:52 pm
Oh and if you can make auto-potion only used potions, could you make an additional skill that was auto-high potion?


Not supereasily (although you can make Auto-Potion use only Hi-Potions).
Title: Re: Total Request ASM: Float status temporarily allows Fly
Post by: RavenOfRazgriz on February 18, 2011, 11:20:36 pm
Does Float status still cause standard Float mechanics in addition to Fly movement?

Does this affect the Movement Float, or just the Status Float?  (I'm kinda interested in using this if it's only the latter, honestly.)
Title: Re: Total Request ASM: Float status temporarily allows Fly
Post by: pokeytax on February 18, 2011, 11:26:31 pm
Yes.

Both (only because the Float movement causes Auto-Float).
Title: Re: Total Request ASM: Float status temporarily allows Fly
Post by: RavenOfRazgriz on February 18, 2011, 11:29:30 pm
That's annoying then.  I would've liked this for Status-Float if I could've kept Movement-Float the way it normally is.  Hmm.

Guess I'll need to make a choice here.  Nice find regardless.
Title: Re: Total Request ASM: Float status temporarily allows Fly
Post by: pokeytax on February 27, 2011, 12:38:56 pm
What is desirable in a broad skillset hack affecting what appears in the "Act" menu?

Just having a few more copies of Equip Change/Defend, combined with ALMA, covers most of what I can think of.

The only other thing would be adding ways to replace Attack (e.g. a FFX-2 White Mage with Pray instead of Fight, FFVI DragoonBoots changing Fight to Jump).

It looks like you get graphical issues when you try to add more than five commands (Attack, Primary, Secondary, Equip Change, Defend). I guess I'd better code in a max of five.
Title: Re: Total Request ASM: Float status temporarily allows Fly
Post by: RavenOfRazgriz on February 27, 2011, 05:36:13 pm
I'd personally like the ability to null the special coding of the Attack Command to place a skillset inside of it without the AI bugging out (then you can use trickery with ALMA to replicate the FFX-2 and FFVI stuff possibly; you can add a skillset to it currently using the Generic Skillset Fix but the AI will try to use the original Attack Command still and bug out) and maul Support Abilities (preferably at user's choice) into more skillset-calling ones a-la Defend and Equip Change, which is basically what you have listed there.  That, combined with the completed versions of ALMA and its accompanying hacks, the Formula Hack, and some ARH fun should cover most things anyone would ever want.

Xifanie said you could go up to 7 sets without glitches.  Either way, I wouldn't personally waste code on a hard cap, it makes the hack itself longer than it needs to be and makes your debugging potentially more painful.  Just post that you get a graphical glitch after 5  skillsets, 7 skillsets, whatever, and if your end user is too retarded to read then, to mimic the great Carlos Mencia, they're *duh* retawhded!

That's me, I wouldn't waste the time and code and debugging hell to hard-block something that can be avoided with a 10 word cliffnote.  That, and over 5 sets would still be something of theoretical use for an AI unit that you want to have access to all of Attack / Jump / Throw / Geomancy / Item / Draw Out / Charge / Defend or something for... whatever insane reason that would serve, and there's no reason to stifle that option since it doesn't cause error.
Title: Re: Total Request ASM: Float status temporarily allows Fly
Post by: pokeytax on February 27, 2011, 05:55:11 pm
Quote from: RavenOfRazgriz on February 27, 2011, 05:36:13 pm
the AI will try to use the original Attack Command still and bug out


Ugh... well, will worry about that later.

Quote from: RavenOfRazgriz on February 27, 2011, 05:36:13 pm
Either way, I wouldn't personally waste code on a hard cap, it makes the hack itself longer than it needs to be and makes your debugging potentially more painful.


Well, if for example your Monk class had innate Geomancy and equipped Item and Aim, that would trigger an ugly window. Even if that's not the case, I can see someone else doing it in their patch. I'll just leave it adjustable, since I already wrote the code anyway.
Title: Re: Total Request ASM: Float status temporarily allows Fly
Post by: RavenOfRazgriz on February 27, 2011, 07:13:33 pm
Ah, I see.  If you already have the code written, I suppose.  Just seemed like a minor thing that'd send you through debugging hell trying to get it to work properly for something you can just go "DON'T LET MORE THAN FIVE WINDOWS APPEAR UNDER THE ACT COMMAND OR IT LOOKS LIKE SHIT" in big letters next to the hack to resolve.

If it's already done though, keep it I guess.  But yeah, there's some freaky AI hardcoding around the Attack Command.  Using Xifanie's Skillset Hack you can toss anything you want in there and the player can use it without issue... it's the AI that's a huge pain in the balls on this one.
Title: Re: Total Request ASM: Float status temporarily allows Fly
Post by: pokeytax on February 28, 2011, 06:51:41 pm
Okay, this is by no means tested thoroughly but I'm going to post it so anyone who wants to can play with it. ALMA will now generate two hacks, one for skillsets and one for the rest.

95% of the conditions are almost useless, but it cost nothing to add them so why not. If even one person is able to use, say, "player is immune to Curse" as an item attribute and save an RSM slot, it's worth it.

Still need to check the AI. Rather than editing skillset 01, the hack entirely replaces it, so maybe the AI won't vomit when faced with the change?

Wonder if you can use the generic skillset fix to make a command like Pray that just executes the command without calling up a skillset?

EDIT: Ugh, this is player-only, it looks like. AI units are unaffected. Back to the drawing board... obviously the AI can use added skillsets, see Defend, but delving into the AI to figure out how and why is not my idea of fun. Looks like it's going to be a wholly separate fix for the AI side. Glitchy with some commands as well.
Title: Re: Total Request ASM: Faith status changes "Attack" to "Talk Skill"
Post by: RavenOfRazgriz on March 01, 2011, 04:22:36 pm
It's because the game processes the Attack Command differently from the rest, I imagine.  Attack takes an ability slot but the data initially inserted into it is basically garbage, then fed through a bunch of doohickyness to read the weapon's formula and then attack with it properly, then a ton more code is added to tell the AI wtf is going on because it can't read that garbage data by default either.  The whole thing's a mess, really.

The AI can probably use commands from Defend because it doesn't go through a million hoops to make Defend work then a million more to make the AI get it.  Just a bit of hardcoding for 100% Self-Defend.

If it helps and you didn't know, "Attack" is the topmost ability slot in FFTPatcher, so you can always play with its settings to configure something you can easily trace through, though I don't think changing its formula will do anything because like I said, the default formula there is basically a garbage proxy that I'm pretty sure the game ignores.
Title: Re: Total Request ASM: Faith status changes "Attack" to "Talk Skill"
Post by: pokeytax on March 03, 2011, 08:02:32 pm
Huh... took a look, should be able to hijack the "all units gain innate A9 skillset" hack to add up to one command for AI according to a priority list (how on Earth did you figure that one out, Xif?) but I'm not tackling replacing the Attack command for AI, that is a litany of pain right there.
Title: Re: Total Request ASM: Faith status changes "Attack" to "Talk Skill"
Post by: RavenOfRazgriz on March 03, 2011, 08:52:07 pm
Quote from: pokeytax on March 03, 2011, 08:02:32 pm
Huh... took a look, should be able to hijack the "all units gain innate A9 skillset" hack to add up to one command for AI according to a priority list (how on Earth did you figure that one out, Xif?) but I'm not tackling replacing the Attack command for AI, that is a litany of pain right there.


Good.  I was actually meaning to point you in that direction a few days ago but I got sidetracked with stuff and kinda forgot, heh, sorry.  Glad you found it on your own instead of being forced to reinvent the wheel.
Title: Re: Total Request ASM: Faith status changes "Attack" to "Talk Skill"
Post by: LastingDawn on March 03, 2011, 09:22:53 pm
Actually this "Faith Status changes Attack to Talk Skill" hack sounds like it could have great potential! I see great use for it combined with the ARH. Of course this is in the assumption that Faith and Talk Skill are able to be modified with other status and skillsets.

Say in a slightly modified normal game that a special character like say... Agrias is in her Holy Knight job. When you cast a new Ramza only skill called Inspire this would give her the "Talent" status effect. Which will allow her to use "Southern Cross" which would cause... blah, blah, blah. You see where this is going.

This being deprived from the AI isn't necessarily a bad thing but has great potential as a tool for specialty moves that people would want to use, best combined with the ARH, in my opinion.
Title: Re: Total Request ASM: Faith status changes "Attack" to "Talk Skill"
Post by: The Damned on March 03, 2011, 09:47:10 pm
As always, LastingDawn has an excellent point.

As ever, I must ask for a points of clarification, pokeytax: Does this "Faith" making "Attack" become "Talk Skill" thing overcome Faith's other effects? Or it is just an additional change like most of the things with ALMA?

There are a few other things that have just occurred to me:

1. This only works with humans as they are now, correct? Given that (vanilla) monsters all have separate "attacks" (or, rather, attacks they can "call" when not Berserked or whatever), I'm guessing this doesn't work for them, correct?

2. Similarly, what happens to Counter, Berserk and such if the user of the reaction is "Faithed"? Does it work like normal? I'm guessing it would given the above monster example of Berserk, but I'm curious now that I think about it.

3. What Talk Skills does the Faithed unit have access to? Just the ones its learned? Or all of them? Does anything wonky happen if the Faithed unit does even have Mediator open (or can't get it open, ala monsters)? (I'd imagine not with regards to the latter.)

4. Finally, I'm guessing this calls from the normal vanilla Talk Skill skill set, right? It feels pretty obvious that it would/does, but it's something I want to confirm.
Title: Re: Total Request ASM: Faith status changes "Attack" to "Talk Skill"
Post by: pokeytax on March 03, 2011, 10:09:40 pm
Uh, I should be more clear, maybe!

This thread title is just my usual goofy title, detailing the silliest thing you can do. Download the hack and you'll see that it is much more general: any RSM or active status can enable any skillset or replace the Attack command. Combined with a little ALMA you can do the following, for example:

- give player Geomancers Elemental in place of Attack
- have Throw Item enable "Item"
- have Critical enable "Limit"
- have "White Signet" accessory enable "White Magic"

The Damned:

0) yes, this is all add-on functionality
1) yes (AFAIK, still not very tested)
2) probably nothing
3) for normal generic stuff, what it's learned; for special skillsets, I think it depends on learn % and that kind of thing
Title: Re: Total Request ASM: Faith status changes "Attack" to "Talk Skill"
Post by: LastingDawn on March 03, 2011, 10:20:57 pm
Quote from: pokeytax on March 03, 2011, 10:09:40 pm
Uh, I should be more clear, maybe!

This thread title is just my usual goofy title, detailing the silliest thing you can do. Download the hack and you'll see that it is much more general: any RSM or active status can enable any skillset or replace the Attack command. Combined with a little ALMA you can do the following, for example:

- give player Geomancers Elemental in place of Attack
- have Throw Item enable "Item"
- have Critical enable "Limit"
- have "White Signet" accessory enable "White Magic"

The Damned:

0) yes, this is all add-on functionality
1) yes (AFAIK, still not very tested)
2) probably nothing
3) for normal generic stuff, what it's learned; for special skillsets, I think it depends on learn % and that kind of thing


Oh, I see now. Yes, I missed that "Replace Attack" command in ALMAs until you just mentioned it here in the thread.

Ah, one other thing. In the thread you mention about nullifying a lot of the Move X UP, skills, but they don't appear to be in your .xml file for the patcher.
Title: Re: Total Request ASM: Faith status changes "Attack" to "Talk Skill"
Post by: pokeytax on March 03, 2011, 10:26:18 pm
This is so simple it seems implausible no one's done it yet, but it seems to work.

WORLD.BIN
0x000429EC
FD010234
0x000429F8
C6010334


The base .xml is quite outdated, I'm leaving that for later when I have a healthy % of the disables done. Haven't had a lot of time recently.
Title: Re: Total Request ASM: Faith status changes "Attack" to "Talk Skill"
Post by: LastingDawn on March 03, 2011, 10:34:26 pm
It's no trouble. You took the time to write out how to do it in normal Hex, just feeling a little lazy is all, hehe.

Though what does this do now? As in when I go to put on a Support Skillslot or Move Skillslot, I can make them both either Support, Move, or one of each?
Title: Re: Total Request ASM: Merge Supports and Movements
Post by: pokeytax on March 03, 2011, 10:36:48 pm
Quote from: LastingDawn on March 03, 2011, 10:34:26 pm
Though what does this do now? As in when I go to put on a Support Skillslot or Move Skillslot, I can make them both either Support, Move, or one of each?


Yes. Two Swords and Attack UP, Move +3 and Jump +3, Defense UP and Move-HP UP, and unfortunately, Move +1 and Move +1, which is still just Move +1.
Title: Re: Total Request ASM: Merge Supports and Movements
Post by: LastingDawn on March 03, 2011, 10:38:46 pm
Very impressive! Though that leads to some clearly abusable situations... It does add a new level to tactics and attempted balance though!

EDIT: Hmm, how difficult would it be to create a "Serpentarius" Support? It's only real purpose would be to nullify Zodiac Compat, but it may also have good value combined with ARH.
Title: Re: Total Request ASM: Merge Supports and Movements
Post by: RavenOfRazgriz on March 03, 2011, 10:55:14 pm
Quote from: LastingDawn on March 03, 2011, 10:38:46 pm
Very impressive! Though that leads to some clearly abusable situations... It does add a new level to tactics and attempted balance though!


Yup.  This is probably one of the more defining mechanics in my Patch, actually.  It was something on FDC's list of stuff to figure out how to do if Pokeytax didn't, but it's very nice to see he got it and that it seems to be a simple edit that doesn't even take freespace.  Great job.

Have you worked through the A9 base to get the AI to use the attached skillsets properly yet?  Once that's done and you update all the various xml related stuff ALMA's going to be quite the useful little behemoth.
Title: Re: Total Request ASM: Merge Supports and Movements
Post by: pokeytax on March 04, 2011, 08:15:39 pm
Quote from: LastingDawn on March 03, 2011, 10:38:46 pm
Hmm, how difficult would it be to create a "Serpentarius" Support? It's only real purpose would be to nullify Zodiac Compat, but it may also have good value combined with ARH.


Very easy, and philsov already put the request in, but I'm waiting on most Support edits until after the epic formula overhaul is done.

Quote from: RavenOfRazgriz on March 03, 2011, 10:55:14 pm
Have you worked through the A9 base to get the AI to use the attached skillsets properly yet?


I'm currently doing nothing and hoping this codes itself. It's on the list.
Title: Re: Total Request ASM: Merge Supports and Movements
Post by: RavenOfRazgriz on March 04, 2011, 08:28:23 pm
Quote from: pokeytax on March 04, 2011, 08:15:39 pm
Very easy, and philsov already put the request in, but I'm waiting on most Support edits until after the epic formula overhaul is done.


[fakespoiler]You'll be able to set specific abilities to ignore Zodiac Compatibility and easily hijack that feature to make this Support super-easily, so you're very smart to wait.[/fakespoiler]

Quote from: pokeytax on March 04, 2011, 08:15:39 pmI'm currently doing nothing and hoping this codes itself.


Eh, worked for Squaresoft.
Title: Re: Total Request ASM: Merge Supports and Movements
Post by: pokeytax on March 05, 2011, 06:48:02 pm
Does anybody actually want Speed growth? Judging by every patch having it set to 255, I should just hack a way to turn this off.
Title: Re: Total Request ASM: Merge Supports and Movements
Post by: RavenOfRazgriz on March 05, 2011, 07:18:34 pm
I'd use it.  I have 1 point of Speed Growth at level 30 for all units currently but that's only because 255 doesn't prevent gaining a point from 1-50.  I'd be more than happy to tell that Speed Point to screw off.
Title: Re: Total Request ASM: Merge Supports and Movements
Post by: pokeytax on March 05, 2011, 09:50:40 pm
Here is an updated version of the skillset hack which hijacks Xifanie's hack to allow AI use of one and only one "Extra Slot" ability, although Defend is likely spammed as usual and has to be manually disabled by me someday.

EDIT: Boo, some graphical glitches with "Attack" with the original skillset hack.
Title: Re: Total Request ASM: Merge Supports and Movements
Post by: pokeytax on March 06, 2011, 10:28:20 am
This changes any growths set to zero in FFTPatcher to 65535. It's possible you could squeeze a few points of HP out 1-99 as a Lucavi or something, but it'll certainly kill speed growth.
Title: Re: Total Request ASM: Zero speed growth
Post by: RavenOfRazgriz on March 06, 2011, 06:50:46 pm
Woot, so Extra Slot is functional at last for the AI, even though it means you need to take care when combining it with double Supports. Why would it be glitching out Attack's animation though, unless this also makes replacing Attack work properly for the AI as well?

That growth hack is great.  I know a few people have been wanting to abuse ALMA far more extensively than I to make a completely different stat growth system, and to do that you really need to be able to null out growths since you still need levels to cause gear scaling.  I'll be using it to cancel out Speed Growth, of course.  I think your spoiler is meant to say "HPC/MPC/SPC/PAC/MAC of 0 produces no growth", though, since that title is incorrect and will likely mislead some genius who doesn't realize it and send them bitching back to you about it.
Title: Re: Total Request ASM: Zero speed growth
Post by: pokeytax on March 06, 2011, 07:39:26 pm
Quote from: RavenOfRazgriz on March 06, 2011, 06:50:46 pmWhy would it be glitching out Attack's animation though, unless this also makes replacing Attack work properly for the AI as well?


I don't know. Having an AI unit trigger the extra slot seems to leave some kind of debris that makes the player's Attack command pull up a menu with one blank option, which seems to act as Attack. It works okay, but it's not clean. In battles against, say, all monsters, there was no problem.

Although, maybe you could just get around it by permanently replacing Attack... unfortunately my understanding of how it all works is very loose, since I'm just piggybacking on Xifanie's hack.
Title: Re: Total Request ASM: Zero speed growth
Post by: RavenOfRazgriz on March 06, 2011, 07:58:51 pm
...That blank command is the <Nothing> Command at the top of the Abilities list in FFTPatcher.

Try adding skills to the Attack window using FFTPatcher's Skillsets tab and see if both the player units and AI can use the skills correctly. If that window's being called and functioning correctly, you may have just accidentally made Attack editable without the need for additional editing.
Title: Re: Total Request ASM: Zero speed growth
Post by: Kokojo on March 07, 2011, 04:46:56 pm
Quote from: pokeytax on March 03, 2011, 10:26:18 pm
This is so simple it seems implausible no one's done it yet, but it seems to work.

WORLD.BIN
0x000429EC
FD010234
0x000429F8
C6010334


The base .xml is quite outdated, I'm leaving that for later when I have a healthy % of the disables done. Haven't had a lot of time recently.


Woa wait, does this means the player can manualy choose to put these two or is it only possible in FFtpatcher and the likes?
Title: Re: Total Request ASM: Zero speed growth
Post by: RavenOfRazgriz on March 07, 2011, 05:49:15 pm
Quote from: Kokojo on March 07, 2011, 04:46:56 pm
Woa wait, does this means the player can manualy choose to put these two or is it only possible in FFtpatcher and the likes?


The player can manually choose to use two Movements or two Supports instead of just one and one.
Title: Re: Total Request ASM: Zero speed growth
Post by: pokeytax on March 07, 2011, 07:44:05 pm
This was a good reminder to post the general version of this code. Probably 90% of the time you would just want to merge Support and Movement but I can think of special cases (Reaction based on Job, three Supports?) and it's not like this is rocket science to hack.

This code changes where abilities show up to be learned and where they can be equipped. R/S/M are not fundamentally different so you can equip three Reactions or three Movements without conflict (beyond priority and occasional weird overwriting Reactions).

If I ever finish disabling the Movement abilities, this will be a lot more useful, as you can use ALMA to easily fill those slots with semi-nutritious goo.


WORLD_WORLD_BIN
AAAA - BBBB: Action Abilities (fiddling not recommended)
CCCC - DDDD: Reaction Slot
EEEE - FFFF: Support Slot
GGGG - HHHH: Movement Slot

Note that these are all half-words, with the lowest byte first. So CCCC defaults to A601 for 01A6 (A Save).

0x429B8
AAAA0334
0x429C0
BBBB0234

0x429D0
CCCC0334
0x429D8
DDDD0234

0x429E4
EEEE0334
0x429EC
FFFF0234

0x429F8
GGGG0334
0x429FC
HHHH0234


Quote from: RavenOfRazgriz
Try adding skills to the Attack window using FFTPatcher's Skillsets tab and see if both the player units and AI can use the skills correctly.


Sadly it's not this easy. (For AI; for player, all you have to do is use the existing hack and design a custom skillset.)
Title: Re: Total Request ASM: Zero speed growth
Post by: RavenOfRazgriz on March 07, 2011, 09:07:28 pm
Quote from: pokeytax on March 07, 2011, 07:44:05 pmThis code changes where abilities show up to be learned and where they can be equipped. R/S/M are not fundamentally different so you can equip three Reactions or three Movements without conflict (beyond priority and occasional weird overwriting Reactions).

If I ever finish disabling the Movement abilities, this will be a lot more useful, as you can use ALMA to easily fill those slots with semi-nutritious goo.


Wow, that's ridiculously simple. It's good to have on-hand too.  ALMA works nicely for me in this regard, I think I get about 4-5 Support Abilities out of it.

Quote from: pokeytax on March 07, 2011, 07:44:05 pmSadly it's not this easy. (For AI; for player, all you have to do is use the existing hack and design a custom skillset.)


I know how to make it work for player without using ALMA or your hack at all.  I just know you're calling the Attack Action Window, and the top blank command is the top <Nothing> Ability in FFTP, whereas all the other <Nothing> commands in the skillset are the bottommost <Nothing> command, which you can verify with the skillset tab.  Because you're actually calling the window, I was thinking you're already partway to just outright editing Attack without doing some retarded trickery involving putting a different skillset over it (very obtuse) or using the Generic Skillset Fix to make it mime Basic Skill (less obtuse, but doesn't work for AI).

E: The export XML feature on ALMA doesn't work with OpenOffice 3 from what I can tell.  I think this is why Xifanie's spreadsheets all use a copy bar instead of trying to export XML.  Looking for a fix but it doesn't look to good currently.

E2: Added screenshot of error.
Title: Re: Total Request ASM: Zero speed growth
Post by: pokeytax on March 07, 2011, 10:18:38 pm
Unhiding the XML tab and copy-pasting the whole thing into Notepad should work okay for OpenOffice. If not, I'll work something out.
Title: Re: Total Request ASM: Zero speed growth
Post by: RavenOfRazgriz on March 08, 2011, 06:25:13 pm
That workaround seemed to work.  I had intended on toying with that Attack Command error you said hijacking Xifanie's code gave you, Pokeytax, but I can't seem to reproduce the drop down error.  Huh.  

Also, this is going to sound like a strange request, but is there any way to make it so ALMA properties can be attached to a Status?  Or would the whole unit stat refreshing garbage make it require extra code to force a refresh every time a status is applied/removed?  It'd be a rather ad hoc means of making status give +/- PA/MA/SP/element properties/etc.

More importantly than that, though, this seems to need a means of auto-learning attached skillsets.  Even with all Item commands at 0 JP / 100% Learn, I seem to only have access to them randomly when attaching them to the player unit, and it's not something you can just put into an empty set and have work correctly due to the hardcoding if memory serves.

Title: Re: Total Request ASM: Zero speed growth
Post by: pokeytax on March 08, 2011, 07:49:20 pm
Quotedrop-down error

It's actually part of the main skillset routine, not the AI routine, and it's triggered by guest units, maybe? I am rewriting the code to fix bugs so don't get too attached.

QuoteALMA status

Yes, you would have to learn how to code a refresh every time a status is applied and removed. Beyond me for now.

Quoteauto-learning attached skillsets

Yeah, I'm going to have to sort this out somehow once the basic mechanic itself is hammered out.
Title: Re: Total Request ASM: Zero speed growth
Post by: RavenOfRazgriz on March 08, 2011, 08:00:42 pm
I see.  Alright.  I was just going to play with the drop down error to see if I could get further with it for editing Attack than the Generic Skillset fix, but oh well.  Stupid Attack Command AI hardcoding, else the GSF would do this by itself.  I asked FDC about it a while back but if memory serves he didn't know where to look offhand to fix that issue either. 

If it helps your code hammering though, using the GSF and editing Defend, Equip Change, Attack, etc. to carry proper skillsets results in them always being 100% learned in my experience, and the AI seems to be able to access all the skillsets sans the ones placed into Attack simultaneously due to that command's own special issues if memory serves.  Not sure if there's anything you could integrate from  that to here to make your life easier or not, though.
Title: Re: Total Request ASM: Zero speed growth
Post by: pokeytax on March 09, 2011, 08:38:51 pm
Here is the current version, without known bugs. I'm probably going to leave it a while; it provides 80-90% functionality, digging further into the AI is painful to contemplate, and there's other stuff to do (I want to release this & a good chunk of disables for ALMA 3).

You can manipulate player skillsets more or less as desired. Replace Attack, tack on Use Hand/Starry Heaven/All Swordskill.
The AI will take the last applicable Extra Slot ability. It ignores Replace Attack and other Extra Slot abilities.

I dunno what's up with the attached skillsets. I have been getting 100% learn rates, but I've been using esoteric stuff and a Ramza with everything mastered. Because I don't know where to start, I'll have to come back later.
Title: Re: Total Request ASM: Zero speed growth
Post by: Pickle Girl Fanboy on March 10, 2011, 05:24:43 pm
I need to make Parry useful for Barehanded fighters, since I can't stop Monks from using it due to stupid AI.
W-Ev (when Barehanded) = (PA * 2)
W-Ev = (PA + Speed)
W-Ev = (Either of the above) * (Current HP / Max HP) //Triggers more often the higher your HP, the idea being you're in peak condition.
W-Ev = (Either of the above) * (???) //Works more often the lower your current HP in relation to your Max HP.

Reworking many or all of the reactions so they work more often the lower your HP seems like a good idea.

Another idea: How many R/S/M abilites are duplicates?  I had a nice little list of R/S/M abilities typed up with their effects next to them, but I lost it.  I'll redo it later.  The general idea is that maybe different Reactions should utilize different stats, according to which class they come from.  Like maybe a MA-based evasion boost, and a SP-based evasion boost, ditto counters, and so on.  This sort of thing is impossible without an entire rewrite of the R/S/M portions of BATTLE.BIN.
Title: Re: Total Request ASM: Zero speed growth
Post by: RavenOfRazgriz on March 10, 2011, 05:28:45 pm
I'm testing with a fresh Ramza using 06 Item fresh out of Orbonne / Gariland with the Chemist's actual skillset replaced with Sing.  And before you ask, no, the learned abilities when I tried to use the 06 Item support were not the same as those in the Sing skillset, and I had him rigged to be a Master Squire so there was no relation there either. When I give him a skillset he can access from a different Job such as 0A (?) White Magic, it does mirror what he currently knows in that class.  Basically, ALMA needs some kind of optional feature that causes forced mastery in cases where the skillset needs to be from 05-16 but isn't from an actual generic class.

...However, I also just thought of an alternative fix using the Generic Skillset Fix to point skillsets that get auto-learned to hardcoded ones like 06 Item to mimic them and see whether the player can use the skills, but I'm unsure if that'll work and don't have time to test at the moment.

(I'm pretty sure A1 Item lacks the code needed to allow a player to use the skillset.  My testing when combining that and Generic Skillset Fix was 100% learned, unusable skills, though I've not tested it with ALMA yet, as much as I expect it to get the same result.  This reminds me, for when you want to mess with the AI more for the 3.0 release, the Item Innate All 1.1 could be a nice place to look as well.)

Pickle Girl Fanboy: Just set Weapon Guard to 0% Learn, force-apply it to units you want to know Weapon Guard.  Weapon Guard's already often a pretty trashy draw off a <Random> select even if the unit actually has a weapon.  That last one you're looking for is (MaxHP-CurHP)/MaxHP, by the by.  Also, a lot of that functionality is actually slated for the Formula Hack.  Not sure about PA/MA/SP based, but a number of other toggle-able things in order to maximize customization.  We've not actually done a detailed planning of that section yet though since it's pretty far off in the scheme of things.
Title: Re: Total Request ASM: Zero speed growth
Post by: Pickle Girl Fanboy on March 10, 2011, 05:42:56 pm
QuoteWe've not actually done a detailed planning of that section yet though since it's pretty far off in the scheme of things.

Would a list of duplicates help?  And things like Any Weather can be funky, because Any Weather has two effects:
1. Allows units to move through Marsh panels during rain with no movement penalty, and
2. Negates weather-based elemental bonuses, though I'm not sure if it applies to damage received or damage dealt, or both.  If it's damage dealt or both, then it's stupid, because that punishes the player for equipping it.
And how do the sprites for enemies that have Cannot Enter Water innate behave in water when you remove it?
Title: Re: Total Request ASM: Zero speed growth
Post by: RavenOfRazgriz on March 10, 2011, 06:22:44 pm
No, I mean the changing reaction triggers, not the disabling duplicated stuff.

Disabling stuff is what Pokeytax has going on here.  Sorry for the confusion.  Getting a list of duplicates would be good in general, though, especially with the water-based movement skills, since there's like four of them with almost the same goddamn name.  It'd also help people figure out exactly what they want to disable when ALMA 3 is done, since if memory serves Pokeytax is just finding ways to disable all of the S/M.

No idea on that last bit with Cannot Enter Water, never tested.
Title: Re: Total Request ASM: Zero speed growth
Post by: Pickle Girl Fanboy on March 10, 2011, 06:30:11 pm
Okay, I'll have a list tomorrow, and I'll make a topic for it.
Title: Re: Total Request ASM: Zero speed growth
Post by: pokeytax on March 10, 2011, 06:56:24 pm
what is a "duplicate" help I don't understand

You'll be able to turn off all the supports and movements (eventually). The unit will still have the ability active, so any ALMA attribute or new support coding will work fine, but the original effect will be disabled.

Interestingly, some stuff can be rehomed to other miscellaneous stuff (the conditions in the Skillset tab of ALMA, notably statuses) so I will try to permit that as possible, subject to arcane byte restrictions:

Attaching Move-HP Up to Regen status instead of ability 1ED is easy.

Attaching Move-MP Up to Faith status works, but you have to disable Move-Exp Up and Move-JP Up (or attach them to trash like Death Sentence and Innocent, woo).
Attaching Move+1 and Jump+1 to Float status should work, but you'll have to scrap all the other Moves and Jumps.

A lot of Supports should work well, they are often checked on their own bytes.

I'll make it as clear as possible in the final product.
Title: Re: Total Request ASM: Zero speed growth
Post by: The Damned on March 10, 2011, 07:16:58 pm
Thanks for being so diligent about this, pokeytax.

You too, RavenofRazgriz.

Quote from: Pickle Girl Fanboy on March 10, 2011, 05:42:56 pmAnd how do the sprites for enemies that have Cannot Enter Water innate behave in water when you remove it?


I think they behave normally, but I forget if I ever got around to testing it like I intended to before I took that massive break. I can't think of any good reason why they would react differently, though.
Title: Re: Total Request ASM: Zero speed growth
Post by: formerdeathcorps on March 14, 2011, 03:52:10 am
Quote from: pokeytax on March 05, 2011, 06:48:02 pm
Does anybody actually want Speed growth? Judging by every patch having it set to 255, I should just hack a way to turn this off.


Yes, I do.  In fact, in my patch, speed growths were almost unchanged from Vanilla.  I balanced damage instead.  That being said, however, I'm sure most people would want that no SPD growth hack.
Title: Re: Total Request ASM: Zero speed growth
Post by: pokeytax on March 15, 2011, 11:34:36 pm

WORLD.BIN
0x44b28
4B000234

0x44b38
DA010234

0x44b60
4E000234

0x44b70
D8010234

0x44b98
54000234

0x44ba8
D9010234

0x44bd0
59000234

0x44be0
DD010234


You have to use this with the code on the wiki (http://ffhacktics.com/wiki/Inherent_Support_Abilities_Limitations (http://ffhacktics.com/wiki/Inherent_Support_Abilities_Limitations)). I will clean it up when I have time.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on March 16, 2011, 12:38:04 am
I can use this same information to make different classes unable to equip certain Supports, yes?

This is a very nice find, though.  I actually needed this a lot, myself.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on March 16, 2011, 07:02:27 pm
Quote from: RavenOfRazgriz on March 16, 2011, 12:38:04 am
I can use this same information to make different classes unable to equip certain Supports, yes?


Yeah, you only get four spots but you can use them for whatever you want - no Monks with Two Swords or whatever.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on March 17, 2011, 02:28:36 am
Great to hear then.  Pickle Girl Fanboy will be pleased.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Zozma on March 20, 2011, 09:35:38 pm
Has anyone made an asm that makes it so if a skill has multiple elements, and when used on something that is immune to only one of them, that it doesnt completely miss, but instead takes the damage from the element that it is not immune to?
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RandMuadDib on March 20, 2011, 09:41:38 pm
You might want to ask FDC over in the BATTLE.BIN mapping thread, see how he's handling multiple elements in his formula hack.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on March 21, 2011, 05:18:03 am
^ No plans for multiple elements have been made yet because they require seeing how many free bytes to manipulate are left over.  I'm pretty sure he's interested in it, so if there's room there will likely be an optional feature that changes how the game handles multiple elements. I just don't know if there's room because we've been focusing on features that don't take free bytes and don't forcibly change vanilla mechanics (eg, like how the game handles elements), leaving anything that does as optional features for the end.  Right now though, the only stuff planned for are things like "fixed" versions of the FloatvWind and BlindvDark hacks along with few others if memory serves.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Zozma on March 22, 2011, 06:03:28 pm
cool thanks for the reply on that.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: formerdeathcorps on March 22, 2011, 10:06:27 pm
Quote from: Zozma on March 20, 2011, 09:35:38 pm
Has anyone made an asm that makes it so if a skill has multiple elements, and when used on something that is immune to only one of them, that it doesnt completely miss, but instead takes the damage from the element that it is not immune to?


I'm currently doing it so null one element = null all, because that's the one in FFT and is mathematically the simplest.  Your suggestion is less realistic (since a unit's null has no effect on a dual element spell), but it's still relatively simple to code.
If you want to go for realism, you'd probably have to do what I tried using in my tabletop RPG: assuming your ability evenly split the damage between 2+ elements, multi-elemental meant division of damage by the number of elements (so fire/water spell has 1/2 damage be water and 1/2 damage be fire), and then apply null/weak/halve/boost to each portion of the damage...the resulting calculations, although doable, was very nasty.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RandMuadDib on March 22, 2011, 11:22:39 pm
what you did in your tabletop makes the  most sense to me, if a designer allows multiple elements. like you said though, calculations are nasty, and must be more than difficult to code.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Zozma on March 24, 2011, 08:19:12 pm
oh, i see how that could be a pain in the butt. i agree its not worth it. i suppose it has been considered before.
btw does a multi element spell calculate damage properly anyway? if you have a unit weak to wind and fire, and get hit with a spell thats both elements
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Pride on March 24, 2011, 08:59:23 pm
No it'll only take it into account once.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RandMuadDib on March 24, 2011, 10:28:27 pm
yeah as i understand it, bonus damage is added if the target is weak to at least one of the elements of the ability.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: The Damned on March 27, 2011, 03:04:16 am
You're not the person who made the hack, but given that Razele isn't around, I might as well take Eternal's advice and ask you to see if you know: When it comes to the "broken and stolen equipment can be bought back at Fur Shops" hack he made, do you know if this applies to Guests?

Because I would very much like not to have to give some Guests Maintenance just to prevent exploits, though I will if I have to.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on March 27, 2011, 09:49:57 am
If you check the last page of Razele's thread, that is not the only major issue with that hack - I don't think it's presently usable.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on March 28, 2011, 07:21:38 pm
Anybody know anything about "squad capacity"? The number that is four while you're saddled with guests and then finally goes up to five. (EDIT: ah, the wiki says ATTACK.OUT)
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Zozma on March 29, 2011, 04:08:12 am
i have one..
there are blank AI flags in patcher right?
well... is there a way to make one of those blanks override priority so that ai sees it equally as important to use as say inflicting "death" status?

i ask because this could make ai want to use things more often such as zalbags destroy sword skills if its checked for them...
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: The Damned on March 29, 2011, 05:30:24 am
Wow, I can't believe I was forgot to ask this question yet. Perhaps because I too busy asking an inane question that I could have looked up myself.

Anyway, when it comes to your "Inherent Support Abilities Limitation" hack, I was wondering something: Can you use that same hack to inherently limit a support ability on a class? Or does it "only" gets rid of the limitations that are normally in place like with Ninja and Two Swords, Chemist and Throw Item, Monk and Martial Arts and so on?

Quote from: Zozma on March 29, 2011, 04:08:12 am
i have one..
there are blank AI flags in patcher right?
well... is there a way to make one of those blanks override priority so that ai sees it equally as important to use as say inflicting "death" status?

i ask because this could make ai want to use things more often such as zalbags destroy sword skills if its checked for them...


You mean like a "KO" flag? Not sure you mean by "death" status and I thought that computer already recognized KO flags, though maybe that's more after they exist rather than application. As with many things, I forget at this point in time.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on March 29, 2011, 06:19:18 pm
You can change the job/ability combos to whatever you want. It's part of ALMA 3 if you want to fiddle with it.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Zozma on March 31, 2011, 04:09:13 pm
by "death" flag i meant that AI looks at a skill that inflicts "death" as high priority as an example.

wanting to make a skill like "speed ruin" be seen as that kind of priority with an ai flag that tells it to override.
currently the AI sees the whole "destroy sword" set as very low priority, the ai would even rather take no action if the ruins are the only other available action.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: formerdeathcorps on April 11, 2011, 10:07:14 pm
Quote from: Zozma on March 31, 2011, 04:09:13 pm
by "death" flag i meant that AI looks at a skill that inflicts "death" as high priority as an example.

wanting to make a skill like "speed ruin" be seen as that kind of priority with an ai flag that tells it to override.
currently the AI sees the whole "destroy sword" set as very low priority, the ai would even rather take no action if the ruins are the only other available action.


This implies the problem should be fixed by fixing the AI (to make it understand that -stats is a good idea when you can't easily KO someone or status them with petrify) and not by adding more flags; in any case, you'd need to debug AI code, so you might as well do a large job that's done right.

That and I'm using all the blank AI flags in my formula hacks.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Zaen on April 12, 2011, 01:06:11 pm
Hey, pokeytax, you made a typo in the recategorising RSM hack. You have FFFF and GGGG in the last part instead of GGGG and HHHH.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Zozma on April 12, 2011, 05:12:37 pm
I see, well thats stuck then. too bad. there really should be a way to make AI use whatever you want it to lol
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Zaen on April 12, 2011, 07:23:17 pm
Also, unless it has been mentioned before, the setting growths to 0 hack doesn't work at all. I was getting 15 to 18 speed level 3 archers and wizards in Dorter... which explains the quadruple turning.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on April 12, 2011, 07:35:56 pm
Quote from: Zaen on April 12, 2011, 07:23:17 pm
Also, unless it has been mentioned before, the setting growths to 0 hack doesn't work at all. I was getting 15 to 18 speed level 3 archers and wizards in Dorter... which explains the quadruple turning.


Uuuugh, really? Well, back to the drawing board to fix the spreadsheet leveling and not just the in-battle leveling - thanks for the catch.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Pickle Girl Fanboy on April 18, 2011, 11:15:42 am
What if you want to give nearly every class an inherent?
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on April 18, 2011, 05:56:15 pm
Quote from: Pickle Girl Fanboy on April 18, 2011, 11:15:42 am
What if you want to give nearly every class an inherent?


(http://i53.tinypic.com/68t382.gif)

That would require freespace and ASM coding, as opposed to changing the existing limitations, which is just a little hex editing. I can envision a hack that reads inherent abilities directly from job data and blocks those, rather than checking four hardcoded values and jobs. Actually, thinking through it is making me more interested! For now though you might just want to turn them all off, I have a huge pile of stuff that I want to do first.

Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Pickle Girl Fanboy on April 18, 2011, 06:00:46 pm
Quote from: pokeytax on April 18, 2011, 05:56:15 pm
I can envision a hack that reads inherent abilities directly from job data and blocks those, rather than checking four hardcoded values and jobs. Actually, thinking through it is making me more interested!

If it's in battle.bin, then won't it be part of that project?
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on April 18, 2011, 06:09:51 pm
It's in WORLD.BIN. If you check the XML output from ALMA 3.xls, the location of the pertinent code is there (both the missing piece I found and the previously known stuff from the wiki).

As far as I know FDC is not Batman so I don't think literally everything in BATTLE.BIN is getting covered (although he did crack the AI a bit, so maybe he is Batman, or at least Superman?).
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Pickle Girl Fanboy on April 18, 2011, 06:25:47 pm
He's Christian Bale Batman, for sure, but if he covers ALL of battle.bin then he's earned his silver age batwings, as far as I'm concerned.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on April 23, 2011, 01:03:55 pm
Well, having worked with formerdeathcorps a lot on his BATTLE.BIN mapping, I can say the way he gets through it involves a lot more "Biff!", "Bam!", and "Kapow!" than stealthy drop-shots from behind, for what it's worth...
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on April 28, 2011, 10:39:31 pm
Quote from: Zaen on April 12, 2011, 07:23:17 pm
Also, unless it has been mentioned before, the setting growths to 0 hack doesn't work at all.


I fixed it in the OP, so this should work now. If not, well, I'll fix it again!
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on April 29, 2011, 09:33:46 pm

WORLD_WORLD_BIN
0x42D6C
40100700
2010E200
00210200
0680023C
20204400
B8108424
01008290
FF00C330
06006210
0F008330
0E006328
FAFF0314
02008424
02000010
00000000
0040C634
01001026
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
0x44B08
0680013C
0x44B28
0680013C
40280300
20286500
00290500
20082500
B8102124
01002294
62008594
00000000
0200A214
02002124
620080A4
0F002530
F8FF0514
00000000
F8FF2120
01002294
64008594
00000000
0200A214
02002124
640080A4
0F002530
F8FF0514
00000000
F8FF2120
01002294
66008594
00000000
0200A214
02002124
660080A4
0F002530
F8FF0514
00000000
F8FF2120
62008194
64008294
00000000
02004114
00000000
620080A4
66008294
00000000
02004114
00000000
620080A4
64008194
00000000
02004114
80101400
640080A4


Instead of preventing Chemist & Throw Item / Mediator & Monster Talk / Ninja & Two Swords / Monk & Martial Arts, this hack prevents all inherent abilities from being equipped. So in vanilla it alters nothing, but it will adjust to whatever you do in FFTPatcher. If you're feeling silly, you can do things like giving Knights innate Equip Armor / Equip Sword / Equip Shield to prevent the player from equipping junk. It does not stack with the previous hack; you can't ban specific combos.

It also prevents equipping multiple copies of a single R/S/M ability, which again has no effect in vanilla, but is probably desirable if you're using a "merge Support/Movement" hack.

I also updated the .xml, finally, for those who want to try hacks out without painstaking effort.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on May 04, 2011, 07:13:38 pm
I've been working on a pretty specialized hack to modify which units are allowed into combat. Unfortunately you can backdoor it at present by swapping units instead of placing them on new squares but I'm working on that.

The hack records six types of classes. Each job can be a "master" or "pet" for one of these. One version of the hack bans the pet class unless accompanied by one master for each; the other version allows a "free" pet if a master is present. (And no, I can hear the question already: you're still bound by the five unit limit. Or rather you aren't and the game glitches.)

So if Mediators were Type 1 Masters and Knights were Type 2 Masters, and Chocobos were Type 1 Pets and Squires were Type 2 Pets, you could either have:

1) Chocobos ONLY allowed into combat with an accompanying Mediator, Squires ONLY allowed into combat with an accompanying Knight
2) One free Chocobo allowed in combat for each Mediator, one free Squire for each Knight.

I'm still working out the kinks but I figured I'd ask for comments and suggestions. I plan to use it for a patch with two perma-guests and one main character, which should permit true "pet classes" (the hack will read guest data).
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on May 04, 2011, 07:58:02 pm
Tl;dr: You can only use Class B if Class A is present?

Could be nifty for more elaborate hacks.  Could you explain 2) better, please?  What do you mean by "free"?  Do they just like, magically spawn on the map?  Can you place them without it affecting the unit limit?  Etc?
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Pride on May 04, 2011, 08:00:32 pm
go go pokemon patch
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on May 04, 2011, 10:04:38 pm
Quote from: RavenOfRazgriz on May 04, 2011, 07:58:02 pmWhat do you mean by "free"?


They can be placed after the unit limit is reached, up to X units. So if you had a unit limit of 2 and placed 2 Mediators, you could place 2 Chocobos for a total of 4 units. If you had one Mediator and one Calculator, you could place only one Chocobo for a total of 3 units. If you had one Mediator and one Knight, you could place an extra Squire and Chocobo.

This essentially mandates a global unit limit of 4 or less, so I can't see many people using it. (I can hardcap party size at 5 to avoid glitchiness, but then there's no point to the hack.)

The other version is as you said, each class A can bring one class B, otherwise banned. Still pretty niche but usable in a normal hack.

Quote from: Pride on May 04, 2011, 08:00:32 pm
go go pokemon patch


BOCO is evolving into FROCOBO
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on May 05, 2011, 02:48:23 am
I could see the first one being useful for a Pokemon style hack, or possibly combining them, so you can have say 4 "Trainer" Units, but can only place 2 per battle, but then can place up to 3 "Pokemon" Units related to which Trainers were deployed.

(Obviously I use Trainer and Pokemon because Pride's a Pokenerd, but you get the basic idea.  Being able to combo them as above would be very nice and in turn would justify you writing that hardcap code.)
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on May 06, 2011, 08:02:49 pm
The hack is included in the OP. I'm not going to put a ton of effort into general explanation or spreadsheeting, because it's a niche hack and a patch relying on it would probably need a custom build anyway. Feel free to ask for help though!

The hack has a large table that looks like this:


00070000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00001000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000


This is a job table, with the first hex being job 00. So this table is zero except for Ramza (07) and Squire (10).

The first digit determines the unit's impact when placed in pre-battle formation.
The second digit is active for all party members (including guests who are in your Formation screen).

Values 1-6 mean that the unit is a pet of type 1-6.
Values 7-C mean that the unit is a master of type 1-6, where type = value - 6.

So the default job table says that if Chapter 1 Ramza is in your squad, even if unplaced, you can bring a free squire.

You don't get your freebie if you already have a squire, and there's no hard cap of five units. I'll worry about these if someone actually wants to use this hack for a patch.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on June 18, 2011, 09:51:39 pm

WORLD_WORLD_BIN

AAAA - BBBB: Action Abilities (fiddling not recommended)
CCCC - DDDD: Reaction Slot
EEEE - FFFF: Support Slot
GGGG - HHHH: Movement Slot

Note that these are all half-words, with the lowest byte first. So CCCC defaults to A601 for 01A6 (A Save).

0x429b0
21804000
60260508

0x69980
02140800
00000000
15000210
00000000
04001214
01000234
AAAA0334
808A0408
BBBB0234
03005214
CCCC0334
808A0408
DDDD0234
02000234
03005214
EEEE0334
808A0408
FFFF0234
03000234
02005214
01000334
GGGG0334
808A0408
HHHH0234
03001214
00000000
6E8A0408
00000000
718A0408
00000000


This hack lets you set a different recategorization for the Set abilities menu only. If you use this hack and the other recategorizing R/S/M hack, you can have different categories for the Set and Learn abilities menus. I'm not sure how widely useful this is (I intend to use it to have a separate category for ALMA passives) but you can at least stop the merged movement/support category from showing up twice.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on June 19, 2011, 11:41:04 pm
Am I stupid for not being able to figure out exactly what the hell that does from your description?
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on June 20, 2011, 07:38:13 pm
Quote from: RavenOfRazgriz on June 19, 2011, 11:41:04 pm
Am I stupid for not being able to figure out exactly what the hell that does from your description?


No, I had to retype it because the first time even I couldn't figure out what I was saying.

Set Abilities
Slot 1:Primary
Slot 2:Secondary
Slot 3:Reaction
Slot 4:Support
Slot 5:Movement

Learn Abilities
Pane 1: Action
Pane 2: Reaction
Pane 3: Support
Pane 4: Movement

In vanilla FFT, you can equip Supports to slot 4 and Movements to slot 5, and learn Supports in pane 3 and Movements in pane 4.

With the first recategorization hack (e.g. merge Support and Movement hack), you can set Supports and Movements to slots 4&5, and Supports&Movements to panes 3&4. So Lancers would see Equip Spear and Ignore Height in both pane 3 and pane 4. That's ugly.

With this hack on top of that hack, you can set Supports and Movements to slots 4&5, and Supports to pane 3, and Movements to pane 4. Or Supports & Movements to pane 3 and White/Black/Time/Yin-Yang/Summon Magic to pane 4. Basically organize things however you like while still keeping dual supports.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on June 20, 2011, 07:49:34 pm
Oh, now that's pretty useful.  I thought that's what it did but that description made my brain hurt.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RandMuadDib on June 22, 2011, 05:15:05 pm
hey pokeytax, are you still taking requests, or are you too swamped with ARH and ALMA?
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on June 22, 2011, 05:17:12 pm
He may be, worst you can do is leave your request and wait for him to tell you to fuck off.

I'm personally waiting for the Ability-Linked Multiplier Attributes hack to be finished and graduate to being called the Ability-Joined Omnipotent Restructuring of Attributes hack.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on June 22, 2011, 05:29:55 pm
I'm always taking requests (in fact I was thinking of updating this thread to make that clear). If you are lucky, your request may be contained inside code I've previously examined so I immediately know where to go. Even if it's tricky, I need smaller projects to break up the monotony of large hacks. Only caveat is I don't do formula hacks right now, because Pride is taking requests and fdc is revamping them and I don't even know how in the first place.

(And no, I haven't forgotten about Monkeygrip! It's harder than anticipated though due to lack of a readily accessible unit data pointer.)
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RandMuadDib on June 22, 2011, 05:58:17 pm
okay, well in that case, i was hoping to make the lucavi closer to their ffxii counterparts, and some of them erect 'palings' where they were immune to either physical or magical damage (or both). I was wondering if you could make wall negate physical damage (instead of all damage) and reflect negate magical damage (instead of, well, reflecting it). Yes, i could use innocent, but not all magic attacks use faith.

Of course, i haven't thought this through and don't know what i would use to designate 'physical' from 'magic', though i plan on using FDC's hack, which i believe -does- make that designation.

Maybe this should really be held off until he finishes that hack...
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Pride on June 22, 2011, 06:09:30 pm
Quote from: RandMuadDib on June 22, 2011, 05:58:17 pm
okay, well in that case, i was hoping to make the lucavi closer to their ffxii counterparts, and some of them erect 'palings' where they were immune to either physical or magical damage (or both). I was wondering if you could make wall negate physical damage (instead of all damage) and reflect negate magical damage (instead of, well, reflecting it). Yes, i could use innocent, but not all magic attacks use faith.

Of course, i haven't thought this through and don't know what i would use to designate 'physical' from 'magic', though i plan on using FDC's hack, which i believe -does- make that designation.

Maybe this should really be held off until he finishes that hack...


You can just disable Reflect through the patcher. Not too difficult of a hack either... And a good idea imo

Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on June 22, 2011, 06:16:09 pm
Yeah, the issue is that even if I hacked that now, I would have to hack it again to be compatible with FDC's hack. I don't mean to put any pressure on FDC, obviously he can take as long as he needs. I just still have a long long list of non-battle-mechanics stuff I want to do (ALMA 4, RAD 4, a Learn menu hack that permits toggles/refunds/mutual exclusion/etc.) so I might as well do all that first.

As Pride says though, it's not that hard a hack (just apply it when Protect/Shell apply).
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on June 22, 2011, 06:39:34 pm
Quote from: pokeytax on June 22, 2011, 05:29:55 pm(And no, I haven't forgotten about Monkeygrip! It's harder than anticipated though due to lack of a readily accessible unit data pointer.)


I wasn't even meaning to bring up Monkeygrip, hah.  Good to know it's not forgotten at least.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RandMuadDib on June 22, 2011, 07:14:22 pm
Quote from: pokeytax on June 22, 2011, 06:16:09 pm
As Pride says though, it's not that hard a hack (just apply it when Protect/Shell apply).


Wow i didn't even think about that.

Monkeygrip is for using a forced two-hand weapon in one hand, right?
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on June 22, 2011, 07:17:18 pm
Yes it is. 
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Shade on June 25, 2011, 06:42:40 pm
Pokeytax

How do I know what abilites to change with Recategorizing R/S/M or can I change whatever abilites I want begin with or is it just that it makes support and movement skills to merge together.

And if it's whatever abilities I want by ASM (not by FFTorgASM(I tested it and I know that it doesn't let you do anything else except merge support and movement abilities)), so could you have perhaps a list of the abilities in hex so I can find them and edit them.
(Also I just want this for reactions that don't work, and movement abilities that are almost useless, so I can use Alma 3 to remake them to good supports.)
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on June 25, 2011, 06:51:12 pm
You can only set boundaries right now, so you can't make A Save a support without making every other reaction a support too.

The wiki has pretty good hex lists: http://www.ffhacktics.com/wiki/Abilities_List (http://www.ffhacktics.com/wiki/Abilities_List).
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Shade on June 26, 2011, 08:02:25 am
Quote from: pokeytax on June 25, 2011, 06:51:12 pm
You can only set boundaries right now, so you can't make A Save a support without making every other reaction a support too.

The wiki has pretty good hex lists: http://www.ffhacktics.com/wiki/Abilities_List (http://www.ffhacktics.com/wiki/Abilities_List).


So I shall request that you make ASM that allows to do that without making every reaction a support.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on June 26, 2011, 03:51:23 pm
Open question: does the Ability Type byte you can edit in FFTPatcher actually do anything for R/S/M, ever? (Or for active abilities too, for that matter. The one that goes [Blank/Normal/Item/Throwing/Jumping/Aim/Math Skill/Reaction/Support/Movement/Unknown1/...]) Because if it doesn't, maybe I'll do what I should have in the first place and read this byte to sort things, so you can just change R/S/M in FFTPatcher and have it work instead of being a cruel lie.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on June 26, 2011, 04:54:18 pm
It doesn't do anything to my knowledge.  It might change the menus a bit maybe, but that's it at best.

I'd definitely just use that byte if you can.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Shade on June 27, 2011, 03:37:44 pm
Request:
Make a ASM that makes having two diffrent types of weapon at the same time impossible(so no gun and ninja sword combo).

Also changing the ability type byte doesn't do anything.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: formerdeathcorps on June 27, 2011, 09:22:08 pm
Shade, what currently happens if you try that?  If I recall, in Tactics Ogre LuCT (PSX), if you equip both a crossbow and a sword, you will only attack with one weapon at range (the crossbow) and one weapon at melee (the sword), and the same is true on counterattacks.  Does FFT also do this?
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on June 27, 2011, 09:23:33 pm
The second hit currently gets the range of the first hit or something else wonky.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: formerdeathcorps on June 27, 2011, 09:28:19 pm
Quote from: pokeytax on June 27, 2011, 09:23:33 pm
The second hit currently gets the range of the first hit or something else wonky.


Then I'd rather see an ASM that makes it so it behaves more like it does in LuCT.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RandMuadDib on June 27, 2011, 09:33:06 pm
Yeah it only offers range based on which weapon is in the main hand. I do not recall if both weapons trigger or just the one, however
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Pride on August 11, 2011, 02:18:04 am
No shame in asking since I can't figure it out.

Requesting to be able to use Headgear slots in armor slots and vise versa. Right now there are some flags in the patch that have what type the item is but they don't do anything other then change the icon. I know there are a few others that have been wanting to be able to do this as there are quite a bit more armor slots then hat slots.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on August 11, 2011, 05:58:46 pm
That's a good idea. Headgear and armor use the same secondary item data so that shouldn't be too hard, although I'm sure it's hardcoded stupidly all over the place. Once I have a break between fixing creaking monstrosities I'll look into it.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Dome on August 15, 2011, 03:28:43 pm
I'd like to request an hack I need for FFT: Plus
humans always crystallize and monsters always turn into treasure boxes
I tried making humans immune to "treasure" and monsters immune to "Crystal" and it worked...but when the death counter of an unit reaches 0, instead of definitively dying they just (Sometimes) "Skip" the ultimate death and lay there for some additional turns

P.s: There is no hurry, do it only if you want and when you can
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on August 15, 2011, 04:59:01 pm
I'll make an addendum to Dome's request to make it more generally useful, as I could use a variation on it as well.

If a unit is immune to Crystal or Treasure (innately or through gear, etc.), that part of the final death roll is skipped.  Ergo, any unit immune to Crystal always turns into a Treasure Box upon death, any unit immune to Treasure always turns into a Crystal, any unit immune to both simply lays dead.  If the unit is Undead and immune to both Crystal and Treasure Box, it should revive at a 100% rate, and if it is only immune to one, that 25% rate should be added to the other's rate.  (Eg, an Undead immune to Crystal either 50% revives or 50% Treasure Boxes.)
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on August 19, 2011, 11:31:49 pm
I tested this a little but got bored of whacking Squires over the head after two minutes so feel free to try it out yourself (it's in the OP .xml). It adheres to Raven's generalization.


BATTLE.BIN
0x11C0B4
53000492


0x11C104
54001F92


0x11C110
40008430


0x11C11C
0100FF33


0x11C124
82210400


0x11C12C
24F89F00


0x11C140
2530DF00


0x11C1c0
54001F92
02008010
0100FF33
0FFFC630
00F91F00
2530E603
1000C230
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on August 20, 2011, 12:18:20 am

SCUS_942_21
0x4E288
2088D102

Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Dome on August 20, 2011, 04:05:25 am
Thanks a lot Pokeytax!
You are my hero (Again)! xD

P.s: What's the purpose of the "Leveling down uses XAC instead of..." ?
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on August 20, 2011, 09:48:53 am
Quote from: Dome on August 20, 2011, 04:05:25 am
What's the purpose of the "Leveling down uses XAC instead of..." ?


In vanilla FFT, leveling down decrements your stats slightly more than leveling up does. The effect is similar to subtracting one from the class's growth stats on the level down. Most of the time this effect is quite small, but I was looking at that code anyway and I'm too fussy to let it go.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: Shade on August 20, 2011, 12:37:21 pm
Can I request that you undead status immune water(or better make force it to do damage even if the unit has ability to absorb it.).
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on August 20, 2011, 04:38:34 pm
Quote from: pokeytax on August 20, 2011, 09:48:53 am
In vanilla FFT, leveling down decrements your stats slightly more than leveling up does. The effect is similar to subtracting one from the class's growth stats on the level down. Most of the time this effect is quite small, but I was looking at that code anyway and I'm too fussy to let it go.


Tl;dr - if I want to use flat growths and level downs and have level up/down work properly (ie, stats can't be farmed/don't get horribly maimed), do I want to use this or not?

Quote from: Shade on August 20, 2011, 12:37:21 pm
Can I request that you undead status immune water(or better make force it to do damage even if the unit has ability to absorb it.).


I can't imagine "Undead ignores Absorb:" is very hard.  That's one I can make use of too, haha.

Quote from: pokeytax on August 11, 2011, 05:58:46 pm
That's a good idea. Headgear and armor use the same secondary item data so that shouldn't be too hard, although I'm sure it's hardcoded stupidly all over the place. Once I have a break between fixing creaking monstrosities I'll look into it.


I imagine this is as simple as finding some tables and telling people how to shift them, similar to your R/S/M shifting mod.  Issue in this case probably is that it's just multiple tables, to get all the various displays and stuff to function correctly too... only bit that probably has horrific hardcoding or odd placement is probably the Shurikens and Balls because they have Weapon data but go onto the Item tables basically everywhere.
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on August 20, 2011, 04:57:34 pm
Quote from: RavenOfRazgriz on August 20, 2011, 04:38:34 pm
Tl;dr - if I want to use flat growths and level downs and have level up/down work properly (ie, stats can't be farmed/don't get horribly maimed), do I want to use this or not?


Yes, this is the "level down okay with flat growths, go ahead and be a jerk to players" hack. I'm working on the general "level down okay" hack, but that will not preserve initial stat variance the way this does.

The undead/elements thing goes on the "later" pile because it's pretty core BATTLE.BIN. Obviously "status X checks/unchecks bit Y in unit data while active" would be nice to have but I'll wait until fdc is done.

QuoteI imagine this is as simple as


Oh I'm sure the eventual hack will look simple but it's been a painfest so far. Haven't forgotten though.

EDIT: Here is a comprehensive level down fix, which fixes both the level down stat slippage and the level up/level down exploit. It's in the OP .xml if you want to try it out, but I haven't yet tested it.


SCUS_942_21
0x4E28C
23105502
03000334
E4700508
1A004300

BATTLE_BIN
0xF5390
12100000
00006392
06006492
0400632C
08006014
02000334
80008330
05006014
25180000
40008330
02006014
01000334
03000334
0580013C
20082200
0C000434
18008300
12200000
20202400
0CF18490
05000234
18004300
12100000
20102200
3CF14290
80230400
40130200
20104400
23100202
1B005700
12100000
AB760108
23800202
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on August 20, 2011, 06:17:15 pm
Yeah, hacking Undead's properties will be easy when FDC's Formula Hack is released because he ignores all the hardcoding and ties Undead's properties to Elements instead, making both of Shade's requests easy as dirt.  (With his hack, Element Weak + Undead = Undead Reverse, Undead auto-sets Weak: Holy, Fire and Absorb: Dark, though those things are easily malleable since FDC posts all his source code and stuff.  Extending that to Ignore Absorb and Cancel: Water can't be that hard, I'd imagine.)

Does your new level down fix have any strings attached to it that you know of before testing?  Not that I need it with my flat growths, but you mentioned stat variance not being able to fit with it earlier but don't mention it with the actual posting so I don't know if you got around that issue or not.

Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: formerdeathcorps on August 20, 2011, 06:37:49 pm
No, Raven, thinking about it again, the best way to preserve all the existing vanilla usages is this

Weak NO Absorb= healing of this element is ALWAYS damage at 1x
Absorb = Drain ALWAYS hurts the caster
Weak WITH Absorb = healing of this element is ALWAYS damage at 1x; damage of this element is ALWAYS healing at 2x

Innates would then be:
Oil = Weak: Fire
Undead =  Absorb: Darkness; Weak: Holy
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: RavenOfRazgriz on August 20, 2011, 06:49:27 pm
^ I'm making a quick poll out of the above, because we fight over this one constantly.

Here you go kids. (http://ffhacktics.com/smf/index.php?topic=7627.0)
Title: Re: Total Request ASM: Throw Item equippable on Chemist, etc.
Post by: pokeytax on August 20, 2011, 08:40:52 pm
Quote from: RavenOfRazgriz on August 20, 2011, 06:17:15 pm
Does your new level down fix have any strings attached to it that you know of before testing?


Every time you level down, a bit of your natural stat variance will be muted.

Let's say you have a Level 40 Squire with above-average HP. If she gets hit by "Dischord" and has her level halved to 20, her HP will be reduced toward the average base female HP, not her own base HP. So she will become a little more ordinary when she levels back up. If she then gets hit with "Belittle" and loses 99 levels, she will become level 1 and have absolutely average female HP forever. The same goes for subpar units, which will progress toward the mean instead.

The previous hack, on the other hand, simply makes leveling up stat-equivalent to leveling down. It will preserve natural variation in HP/MP (and PA/MA for monsters).
Title: Re: Total Request ASM: Level Up/Down exploit fix
Post by: pokeytax on August 21, 2011, 12:36:51 am

WORLD.BIN
0x4539C
B0008228

WORLD.BIN
0xAD7E0
09

SCUS_942_21
0x483E8
AFAEADAC
ABAAA9A8
A7A6A5A4
A3A2A1A0
9F9E9D9C
9B9A9998
97969594
93929190
FFCFCECD
CCCBCAC9
C8C7C6C5
C4C3C2C1
C0BFBEBD
BCBBBAB9
B8B7B6B5
B4B3B2B1
B0FF




This changes the distribution from 28 hats/36 armors to 31 hats/33 armors, which I assume is preferred? I didn't go to 32/32 because it looks measurably harder than what I did. I might try and tinker more, but I'm not sure if there are any other pressing needs. Shifting between headgear and armor is definitely the easiest change to make.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on August 21, 2011, 01:13:08 am
Does this change display correctly on Shop and Equip menus and such?

I'm one of the rare people who'd definitely want/need/prefer 32/32, so I'm compelled to ask: Why changing one more piece of armor into a headgear is so hard?  Is it a space issue or what?  This is definitely an improvement, though.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: formerdeathcorps on August 21, 2011, 06:04:05 am
Pokeytax, anything in that routine check the difference between accessories and shields?

If you think Raven's odd, I'm running 26 Hats/34 armors/17 shields/31 accessories.  I technically had 2 slots in hats and armor each that I didn't even notice.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pride on August 21, 2011, 07:16:16 am
Quote from: pokeytax on August 21, 2011, 12:36:51 am

WORLD.BIN
0x4539C
AF008228

SCUS_942_21
0x483E8
AEADACAB
AAA9A8A7
A6A5A4A3
A2A1A09F
9E9D9C9B
9A999897
96959493
929190FF


This changes the distribution from 28 hats/36 armors to 31 hats/33 armors, which I assume is preferred? I didn't go to 32/32 because it looks measurably harder than what I did. I might try and tinker more, but I'm not sure if there are any other pressing needs. Shifting between headgear and armor is definitely the easiest change to make.


Much better ^_^

I'm wondering why its harder though? I haven't taken a look at the routine or what your asm does yet but it seems odd, to me, that it would be more difficult to change up one more slot.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on August 21, 2011, 10:57:21 am
Pride and Raven, there's a "item less than XX?" boundary check that's reasonable, and then a set of weird reversal tables that has three zeroes at the end before the armors start. I just filled those three zeroes for now. I was too sleepy to go full 32/32 but since people seem interested I'll investigate.

fdc, the main reason body/headgear are the easy slots (besides that their item numbers are consecutive) is the "Second Table" lookup in FFTPatcher. They both share one table. With a short jump to freespace and some other edits, I think you could sort things into different slots pretty easily, but I'm guessing the old offset would be applied to a new table, so one entry would be looked up by two items and one would be ignored.

I haven't really tinkered enough to say for sure how this all works yet, I plan to take another look today. In theory, you should be able to manually shift the second table boundaries or just load the offsets as signed and have lookup spaghetti all over the place.

EDIT: okay, looks like it's just changing a value to shift where armors begin, so I changed the hack to 32/32. Might do a spreadsheet - with some work I think you could swap around shields/head/body/accessories as well as turn the throwables into actual weapons.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on August 22, 2011, 07:09:18 pm
So it was just simple tables.  Does shifting them fix how they display in Shops too?

32/32 is wheee.  I have a gear-set fetish so this is perfect for me.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on August 22, 2011, 07:58:22 pm
Hm, what looked like a table was apparently dynamically generated. Not quite ready for prime time yet! It does affect what displays in shops, though, and I'm pretty confident we'll be there soon.

Once I have a version that can perform the offset trickery necessary to swap things besides head/body, I will release a spreadsheet.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on August 22, 2011, 10:27:52 pm
Sounds good. 

I hate to pile another request on you so soon, but while I'm thinking of it - is it possible for you to find the hardcoding that dictates that Math Skill can only draw from the White Magic, Black Magic, Time Magic, and Yin-Yang Magic skillsets and make it so that you can alter which skillsets it reads from?  This one's actually a really important issue for a few different things I'm planning I'm doing, as I need to Calculate skills that are nowhere near existing in those skillsets, and the ability to be more flexible with it would probably help people make better use of the otherwise-useless hardcoded skills in general.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: formerdeathcorps on August 22, 2011, 11:09:43 pm
Quote from: RavenOfRazgriz on August 22, 2011, 10:27:52 pm
Sounds good. 

I hate to pile another request on you so soon, but while I'm thinking of it - is it possible for you to find the hardcoding that dictates that Math Skill can only draw from the White Magic, Black Magic, Time Magic, and Yin-Yang Magic skillsets and make it so that you can alter which skillsets it reads from?  This one's actually a really important issue for a few different things I'm planning I'm doing, as I need to Calculate skills that are nowhere near existing in those skillsets, and the ability to be more flexible with it would probably help people make better use of the otherwise-useless hardcoded skills in general.


You sure about that?  Are you telling if if I flag Shiva as under math skill, it won't take?  I recall hearing something to the contrary.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on August 23, 2011, 12:01:05 am
DaveSW did lots of testing with it, and apparently Math Skill only takes if you use those four skillsets.  When we were having the discussion, I also remember Samuraiblackbelt corroborating him, and it's something I just thought of.  DaveSW even retested it on the spot to make sure he was correct, IIRC.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on August 23, 2011, 05:53:41 pm
Here's the prototype equipment resorter. Unfortunately you have to do some Patcher work like changing item types, I will integrate that into the spreadsheet at some point. Plus the previews don't work since they're also based on item number, which I have to change to Patcher item type. Plus you can't whack people with throwables yet. But, you can put shoes on your head, which is what's most important.

Actually useful applications might be reclaiming the six throwing weapons and a few of the Chemist items as equippable.

After fixing the rest, going to try to rewire the slots so you can do something like hat/accessory/accessory if so desired.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on August 23, 2011, 06:30:18 pm
Quote from: pokeytax on August 23, 2011, 05:53:41 pmAfter fixing the rest, going to try to rewire the slots so you can do something like hat/accessory/accessory if so desired.


...What.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: MysticKnightFF5 on August 23, 2011, 07:14:37 pm
Quote from: pokeytax on August 23, 2011, 05:53:41 pm
After fixing the rest, going to try to rewire the slots so you can do something like hat/accessory/accessory if so desired.

DO WANT, DO WANT
Quote from: pokeytax on August 23, 2011, 05:53:41 pm
Actually useful applications might be reclaiming the six throwing weapons and a few of the Chemist items as equippable.

Items being equips would be very nice.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: formerdeathcorps on August 23, 2011, 07:29:26 pm
Quote from: pokeytax on August 23, 2011, 05:53:41 pm
Plus the previews don't work since they're also based on item number, which I have to change to Patcher item type.


Minor issue, and not really important, I think.  Pokeytax, you've overworked yourself by trying to even bother fixing the previewer on ALMA.

Quote
But, you can put shoes on your head, which is what's most important.


Does it take +HP/MP on the two slots or A-PEV/A-MEV?

Quote
After fixing the rest, going to try to rewire the slots so you can do something like hat/accessory/accessory if so desired.


That's good as an ASM advancement, but I have some logic issues.
1) How do you wear two helmets or two pieces of armor?  It's not like clothing and robes (or rings/gauntlets) where one easily fits over the other (or is worn on the other hand) without seriously restricting mobility.  Could you imagine someone going into battle wearing a ruby slipper and a steelplated boot?  That seems like logically the unit would suffer (since his battle stance and mobility would be hampered), and he wouldn't be getting the benefits of either equipment type.
2) This also assumes an even balance between helmets, armors, and accessories.  Most people tend to allow for slightly more OP accessories than helms/armors (viewing the accessory slot as about equal to the importance of the helm + armor slot), and most people tend to tilt a higher HP bonus towards armor (than helmets) since well, armor covers more of your body (I just did this in a more extreme fashion than everyone else).  Of course, once this hack comes out, people are free to rebalance things/not use it, but I feel we're starting to abut against basic sense.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on August 23, 2011, 08:37:30 pm
Quote from: formerdeathcorps on August 23, 2011, 07:29:26 pm
Minor issue, and not really important, I think.  Pokeytax, you've overworked yourself by trying to even bother fixing the previewer on ALMA.


That's because he actually realizes the importance of things looking correct graphically, FDC.  Quality control.  It's far more important for something to display properly than you seem to realize...
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: MysticKnightFF5 on August 23, 2011, 09:31:49 pm
Most knights did tend to wear a chainmail and a full plate.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on August 23, 2011, 11:53:12 pm
Hmmm... hopefully this works fine with the AI's random equip options? One more thing to check.

Quote from: formerdeathcorps on August 23, 2011, 07:29:26 pm
Does it take +HP/MP on the two slots or A-PEV/A-MEV?


Once the item's type is changed to "hat", it takes HP/MP: A-PEV becomes HP, A-MEV becomes MP. Likewise, if you sort item 90 (Leather Helmet) as a Shield, HP becomes S-PEV and MP becomes S-MEV. Of course you can use ALMA to add whatever (...once I get that all running).

QuoteCould you imagine someone going into battle wearing a ruby slipper and a steelplated boot?  That seems like logically the unit would suffer (since his battle stance and mobility would be hampered), and he wouldn't be getting the benefits of either equipment type.


That's exactly what I imagined and I would personally explicitly permit it because it makes me smile, but new equip routines would be desirable for things like shoes. Alternately you could use item set bonuses in ALMA, e.g. two pairs of shoes add Can't Equip Shoes.

Quote
2) This also assumes an even balance between helmets, armors, and accessories.


Yes, you would need to rebalance equipment very carefully, especially if there's no routine preventing doubling up... Bracer x 2?

Quote from: RavenOfRazgriz on August 23, 2011, 06:30:18 pm
...What.


Reactions from equipment and job, three supports, three accessories... no, wait, default weapons based on job FFX-2 style and five accessories, definitely that one.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on August 24, 2011, 02:34:46 am
Quote from: pokeytax on August 23, 2011, 11:53:12 pmReactions from equipment and job, three supports, three accessories... no, wait, default weapons based on job FFX-2 style and five accessories, definitely that one.


...You've been going through my scrapped notes, haven't you?
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Tea on August 24, 2011, 08:46:50 am
Quote from: pokeytax on August 23, 2011, 11:53:12 pm
Reactions from equipment and job, three supports, three accessories... no, wait, default weapons based on job FFX-2 style and five accessories, definitely that one.


Bracer*5 plx
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RandMuadDib on August 24, 2011, 02:42:35 pm
instead of thinking about it logically, think about it munchkinly. Its like disgaea, where you can wear 3 pieces of "armor" which seems to include armor, shields, shoes, glasses orbs, belts, dumbells, muscles, etc. Its less about where you physically place the item and more about the feel of the stat boosts the item gives you.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on August 25, 2011, 12:35:31 pm
In SaGa Frontier, humans have four armor slots, where you can equip one of any type of armor, provided the don't cancel each other out:
* Full body suits cancel out headgear, body armor, gloves/rings, and leggings, but not clothes (which are the clothes you wear under your armor, I guess) or accessories.
* You can equip multiple accessories; they don't cancel each other out.  However, they suck - they're earrings and necklaces and crap like that.

Unrelated to this, but they also have four weapon/shield/expendable item slots.  So you can equip four swords, four shields, four potions, and choose which one you attack with each turn.


Could make for some interesting mechanics, though I can't wait to see how the AI will screw it up.  I'm more interested in making new equipment types though.  Like different types of mantles and shields, one type each for warriors, mages, and balanced jobs; separting gloves, rings, and footwear into three separate types, and a few other things I forgot.

About your level-down fix: did you figure out how to change it so that leveling down is exactly the reverse of leveling up?  IIRC, leveling down removes more raw stat than leveling up gains, so if you level up/down with the same growths, you'll end up with lower stats than you started with.
EDIT
BLARGH, I found it.  You need to move all your hacks to the front page, boyo.

Do you think you could make something for the Equip X Supports that will check what items an Equip X Support grants and restrict any class that can already equip all those items from equipping that ability?
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on August 25, 2011, 12:42:48 pm
Quote from: Pickle Girl Fanboy on August 25, 2011, 12:35:31 pmDo you think you could make something for the Equip X Supports that will check what items an Equip X Support grants and restrict any class that can already equip all those items from equipping that ability?


http://ffhacktics.com/smf/index.php?topic=6505.msg144169#msg144169
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on August 25, 2011, 12:56:56 pm
I'm aware of that.  But what if you used all the inherent abilities for other things, and don't have room for more?  Thus,
QuoteDo you think you could make something for the Equip X Supports that will check what items an Equip X Support grants and restrict any class that can already equip all those items from equipping that ability?

So you won't need to waste precious inherent ability slots denying the AI a chance to be stupid.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on August 25, 2011, 01:06:33 pm
Set the AI Learn Chance of Equip X to 0% and force-equip it when you want them using it then?

Tis what I do, since many times, the AI coming with /any/ Equip X is a chance for them to be very, very stupid.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on August 25, 2011, 01:19:06 pm
That's what I usually do anyways.  It's fine, I just wish there was something better.

And I never set anything (except player-only abilities, like equip change) to 0%.  5% is my minimum, and 95% my maximum.  Most of the time the enemy will misuse it, but that one time the enemy gets it right is worth the ten times it doesn't.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on August 25, 2011, 06:12:49 pm
Yeah, the first hack sets level down shrink = level up growth (suited to flat job growths patches).
The second hack sets level down shrink = level up growth, AND changes stat loss on level down to a job-independent 1/L of stats gained (suited to variable job growths patches), but is unable to completely preserve the minor HP/MP variation between units.

The inherent support limitations either don't apply to AI or are coded outside of my hack, so my adding them would only help the player, not the AI.

The randomized enemy unit generator, like passive abilities, is something I thought ALMAscript would resolve but I'm going to have to do a separate hack for, because I want the capability to just assign a flag to an enemy in ENTD and have the game spit out a random level-appropriate enemy that isn't embarrassing to look at. Likewise, I want the ability to have two mutually exclusive job passives ('specializations"), and while I can have ALMAscript to nuke both of these and refund JP when both are selected, it's clunky as hell.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on August 25, 2011, 06:23:17 pm
Reworking most all of the R/S/M abilities would fix most of the AI problems, but, as I understand it, that ball is in fdc's court.  I'm wondering if there's anything I can do to help him, short of learning MIPS.

http://ffhacktics.com/smf/index.php?action=dlattach;topic=6885.0;attach=6981
This is how I would do it, if I could.

Er.  Pokeytax, could you do me a favor and copy the contents of the *.txt files in this topic (http://ffhacktics.com/smf/index.php?topic=7569.0) to spreadsheets, while preserving their formatting, so they look more like the attachment to this message and less like a giant piece of crap (http://ffhacktics.com/smf/index.php?action=dlattach;topic=7569.0;attach=8558;image)?  I don't mean the formatting: I mean the data retains it's hexadecimal conventions, like 00 doesn't turn into 0.

Also, would you teach me the finer points of data validation in Gnumeric.  Specifically:
1. Having drop-down boxes organized according the order the data is in, not alphabetically.
2. Finding a way to set every entry to it's default value without having to do it entry by entry.  There are 12000 entries in FFTA item data (bytes per row * number of items); there's no way I can set these to their default values by myself.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on August 25, 2011, 08:03:29 pm
Quote from: Pickle Girl Fanboy on August 25, 2011, 06:23:17 pm
I don't mean the formatting: I mean the data retains its hexadecimal conventions, like 00 doesn't turn into 0.


It looks like Gnumeric did okay pulling in the values themselves, just screwed up the hex formatting. Looking at abilities.txt:
- enter the formula =dec2hex(hex2dec(A11),2) in cell A424
- copy that formula across the rectangle all the way to cell AB835
- copy the entire rectangle
- select cell A11 and go to Edit > Paste Special, Paste as Values.
- delete the lower rectangle

Quote
1. Having drop-down boxes organized according the order the data is in, not alphabetically.


Good luck. Excel does this automatically and I don't see an easy option. Personally I would label "01 Weapon" "02 Shield" "03 Head", still ugly but a lesser evil.

QuoteFinding a way to set every entry to its default value without having to do it entry by entry.


I'm assuming your setup is like mine - allow a selection from a dropdown list, use VLOOKUP to get the matching hex for that. So just invert your tables on another worksheet: put the hexes first and the associated selections second. Use the ROM dump as your source and get the matching selections, then paste them as values into your entry area. Maybe not lickety-split, but easier than hand entry...
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on August 29, 2011, 04:05:07 pm
Just had an idea, for how you could make extra elements (like a restore element) that will work with FFTPatcher.

Why not make anything that flags as multiple, opposite, or improbable elements (you choose) be overridden by the replacement element?  It's like a way to get extra flags, though it would rule out items like 108 Gems bracelet that strengthen all elements.

Or you could use something like a bit in some semi-related thing to flip the switch, as it were, between the normal set of elements and another set of elements, though that means you could only use one set or another.  Like, 0x40 in Jump for items, and 0x80 in Ability Learn % for abilities.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Tea on August 29, 2011, 04:33:39 pm
If I'm right, then there are 8 elements, so 8 flags, for 8*7*6*5*4*3*2 combinations. That's a lot, and you can keep the option of something doing something to all elements and more if you make this a table of sorts, like this:


flags = element
1 = a
2 = b
3 = c
4 = d
5 = e
6 = f
7 = g
8 = h
1+2 = i (healing a for example)
1+3 = j
etc.



It's like assinging attributes!
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Eternal on August 29, 2011, 04:42:26 pm
I have an ASM request, if it's not too hard.

Soldier's Office units cost 3000 Gil flat, with no gear equipped.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on August 29, 2011, 04:50:31 pm
Quote from: Tea on August 29, 2011, 04:33:39 pm
If I'm right, then there are 8 elements, so 8 flags, for 8*7*6*5*4*3*2 combinations. That's a lot, and you can keep the option of something doing something to all elements and more if you make this a table of sorts, like this:


flags = element
1 = a
2 = b
3 = c
4 = d
5 = e
6 = f
7 = g
8 = h
1+2 = i (healing a for example)
1+3 = j
etc.



It's like assinging attributes!

You still have to be careful.  It would have to be some combonation of elements that no one ever uses.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RandMuadDib on August 29, 2011, 10:14:57 pm
sorry its not 8! = 40320 possibilities, rather its 2^8 = 256 possibilities.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on August 29, 2011, 10:17:15 pm
Quote from: Eternal248 on August 29, 2011, 04:42:26 pm
Soldier's Office units cost 3000 Gil flat, with no gear equipped.


Well, the gear edit is easy, I dunno why Razele didn't include it with his pre-raws:


These edit your starting equipment for male and female, respectively.
They follow the order of http://ffhacktics.com/wiki/Formula_Hacking beginning at 1A; the default string for male is 9D BA FF 13 FF FF FF.

SCUS_942_21
0x4F111
AABBCCDDEEFFGG

0x4F11D
AABBCCDDEEFFGG

Displayed male cost, displayed female cost, base unit cost (halfwords in hex, so defaults are DC05/7805/E803)

WORLD_WORLD_BIN
0x58E8C
XXXX
0x58E98
YYYY
0x58458
ZZZZ



The actual price of a unit is equal to the base unit cost plus the cost of its equipment, but the displayed price is shown regardless.

The problem with this elemental scheme is that equipping an item with Cancel: Fire when your job innately has Cancel: Dark suddenly gives you Cancel: Alligators or whatever. Plus you have to rework a ton of code all over the place, some in SCUS. In the grand scheme of things, eight elements seems like plenty to me? I'm not one to talk about wasting a ton of freespace for some added functionality but this is a lot of work for a few extra flags.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on August 30, 2011, 12:12:59 am
Agree with Pokeytax on the Element thing, there's plenty of leeway between 8 Elements to do all kinds of things if you're willing to use them as flags and not strictly FIRE = FIRE.  The logistics needed to do what was described are too atrocious, and the space requirement probably too high for what's honestly a very low net gain.

As for that pre-raw info: many thanks for posting that, Pokeytax!  I'll add that to my Pre-Raw Stat Spreadsheet once I get my laptop screen replaced, which should be within a week or so.  Though, its super easy, so anyone wanting to edit using that info before then should be able to just hex it up.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on August 30, 2011, 03:15:12 pm
Quote from: pokeytax on August 29, 2011, 10:17:15 pm
Well, the gear edit is easy, I dunno why Razele didn't include it with his pre-raws:


These edit your starting equipment for male and female, respectively.
They follow the order of http://ffhacktics.com/wiki/Formula_Hacking beginning at 1A; the default string for male is 9D BA FF 13 FF FF FF.

SCUS_942_21
0x5E911
AABBCCDDEEFFGG

0x5E91D
AABBCCDDEEFFGG

Displayed male cost, displayed female cost, base unit cost (halfwords in hex, so defaults are DC05/7805/E803)

WORLD_WORLD_BIN
0x58E8C
XXXX
0x58E98
YYYY
0x58458
ZZZZ



The actual price of a unit is equal to the base unit cost plus the cost of its equipment, but the displayed price is shown regardless.

The problem with this elemental scheme is that equipping an item with Cancel: Fire when your job innately has Cancel: Dark suddenly gives you Cancel: Alligators or whatever. Plus you have to rework a ton of code all over the place, some in SCUS. In the grand scheme of things, eight elements seems like plenty to me? I'm not one to talk about wasting a ton of freespace for some added functionality but this is a lot of work for a few extra flags.

And another harebrained idea bites the dust.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on September 11, 2011, 05:55:42 am
2 things:

1. I noticed a bit of space between where the male and female beginning gear and such is.  What goes there?  I assume it's related to Level / Brave / Faith, but some explicit knowledge would be nice, especially so I can add it into my Spreadsheets if its anything worth editing.

2. Random request when you have some time:  Would you happen to know how to edit which units have the Stepping Stone trait?  That's another thing I'd like to edit for myself, and another thing that seems like it could be made into a quick and dirty Spreadsheet if it works somehow like I'm thinking it does so that others could do the same.  It's a niche detail, but it's still nice to be able to get the niche details right.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RandMuadDib on September 11, 2011, 01:37:32 pm
Quote from: RavenOfRazgriz on September 11, 2011, 05:55:42 am
2. Random request when you have some time:  Would you happen to know how to edit which units have the Stepping Stone trait?  That's another thing I'd like to edit for myself, and another thing that seems like it could be made into a quick and dirty Spreadsheet if it works somehow like I'm thinking it does so that others could do the same.  It's a niche detail, but it's still nice to be able to get the niche details right.


Isn't that just having a jump value of 80+?
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Dome on September 11, 2011, 01:44:29 pm
"Defend" sucks, because if you misclick it, it doesn't even give you a "Are you sure?" message, and your turn is lost defending
Question: How hard would be making an ASM that makes that message pop out?
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on September 11, 2011, 03:08:17 pm
Quote from: RandMuadDib on September 11, 2011, 01:37:32 pm
Isn't that just having a jump value of 80+?

It uses the x80 part of the Jump Byte, not a Jump of 80, so even if that worked it'd need to be a Jump greater than 127-128, assuming that'd even work to begin with.  I kind of doubt it though.

Quote from: Dome on September 11, 2011, 01:44:29 pm
"Defend" sucks, because if you misclick it, it doesn't even give you a "Are you sure?" message, and your turn is lost defending
Question: How hard would be making an ASM that makes that message pop out?


This is also true with Teleport.  Having the "Are you sure you want to Move here?" pop up for Teleport would be great.  I know I'm personally always fucking up my turns because I click forgetting I don't get a warning and weeeeee.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RandMuadDib on September 11, 2011, 03:21:26 pm
Quote from: RavenOfRazgriz on September 11, 2011, 03:08:17 pm
It uses the x80 part of the Jump Byte, not a Jump of 80


Sorry that's what i meant i should have been more specific.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on September 11, 2011, 04:54:41 pm
Quote from: RavenOfRazgriz on September 11, 2011, 05:55:42 am
1. I noticed a bit of space between where the male and female beginning gear and such is.  What goes there?  I assume it's related to Level / Brave / Faith, but some explicit knowledge would be nice, especially so I can add it into my Spreadsheets if its anything worth editing.


I think it's just the pre-raw stats.

Quote
how to edit which units have the Stepping Stone trait?


Like RMD says, FFTPatcher can do this - look at the Morbol job. It has Jump of 131 (0x80 + 3).

It seems like you could just replace the Defend skillset with another skillset, and tell ALMA to grant that skillset instead of 02 Defend? I know not everyone wants to use ALMA but I don't know an easy way to do what you're asking.

I dunno how to fix Teleport, because even if I tacked on the confirm it seems likely it would permit cancelscumming for 100% success.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on September 11, 2011, 06:35:00 pm
Quote from: pokeytax on September 11, 2011, 04:54:41 pm
I think it's just the pre-raw stats.


So it is, I just checked.  OK.

Quote from: pokeytax on September 11, 2011, 04:54:41 pmLike RMD says, FFTPatcher can do this - look at the Morbol job. It has Jump of 131 (0x80 + 3).


Hah, never noticed.

Quote from: pokeytax on September 11, 2011, 04:54:41 pmIt seems like you could just replace the Defend skillset with another skillset, and tell ALMA to grant that skillset instead of 02 Defend? I know not everyone wants to use ALMA but I don't know an easy way to do what you're asking.


Use Generic Skillset Fix, make Defending reference Basic Skill, make Defend contain a skill that's 100% self-defending at 0 JP / 100% Learn Rate /etc.  Weeee.

Quote from: pokeytax on September 11, 2011, 04:54:41 pmI dunno how to fix Teleport, because even if I tacked on the confirm it seems likely it would permit cancelscumming for 100% success.


True enough.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on September 12, 2011, 11:12:39 am
Random ideas, tell me how useful they seem to you.

*Weapon ability procurement rate = (stat)/100 OR (stat)/??? OR something like that.  Maybe you could make it referense whatever stats power that weapon types attack.  SP, PA, MA, or a combonation of them.

*Does excess CT roll over (when your speed gives you, say, 107 CT, but the game defaults to 100)?  Should it roll over?

*Should excess experience roll over?

*Rework Gained EXP UP and Gained JP UP:
**Make spillover JP take these abilities into account.
**R/S/M abilities that balance bonuses with penalties.
**JP Bonus
***Increase JP gain to 3/2, decrease Exp gain to 1/2
**Exp Bonus
***Decrease JP gain to 1/2, increase Exp gain to 3/2

**Change Max HP calculation for each class to (PA * (x))*(Class HP Multiplier)
**Change Max MP calculation for each class to (MA * (y))*(Class MP Multiplier)
**Change Class evasion calculation for each class to (SP * (y))*(Class SP Multiplier)
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on September 12, 2011, 07:34:56 pm
Quote from: Pickle Girl Fanboy on September 12, 2011, 11:12:39 amWeapon ability procurement rate = (stat)/100 OR (stat)/??? OR something like that.  Maybe you could make it referense whatever stats power that weapon types attack.  SP, PA, MA, or a combonation of them.


Sounds like you could just modify Pride's Weapon Proc Hack (and Secondadvent's Critical Hack) if you wanted something like this.  Probably set the XA by Weapon Type and have that as an extra editable bit.

Quote from: Pickle Girl Fanboy on September 12, 2011, 11:12:39 amDoes excess CT roll over (when your speed gives you, say, 107 CT, but the game defaults to 100)?  Should it roll over?


It does not, but I wouldn't mind it doing so.  I doubt its possible though.

Quote from: Pickle Girl Fanboy on September 12, 2011, 11:12:39 amShould excess experience roll over?


Doesn't seem worth it, given how the experience system works.  The only thing it'd really do is make grinding a Level 1 up to Level 50 when the rest of your party is 50 a bit faster, and you can replicate that by just making Experience Boost at 0 JP cost on Squire available.

Quote from: Pickle Girl Fanboy on September 12, 2011, 11:12:39 am**JP Bonus
***Increase JP gain to 3/2, decrease Exp gain to 1/2
**Exp Bonus
***Decrease JP gain to 1/2, increase Exp gain to 3/2


So Experience Boost, a skill not worth using, gets even worse, and JP Boost gets even better.  Huh?

Quote from: Pickle Girl Fanboy on September 12, 2011, 11:12:39 am**Change Max HP calculation for each class to (PA * (x))*(Class HP Multiplier)
**Change Max MP calculation for each class to (MA * (y))*(Class MP Multiplier)
**Change Class evasion calculation for each class to (SP * (y))*(Class SP Multiplier)


This... sounds like a terrible idea.  You're essentially taking FFT and making it have even less stats than it already does by making 3 stats dependent on 3 different ones.  High damage units automatically either have high mana pools to avoid manascrew or high HP to tank like hell while also doing their tons of respective damages.  Obviously, this is why you had constants involved too, but if you need to use low constants for high stat classes and high constants for low stat ones anyway... you're defeating the purpose and may as well stick with the Vanilla setup.

I see no advantage to this kind of change is all, myself.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on September 12, 2011, 08:02:48 pm
Quote from: RavenOfRazgriz on September 12, 2011, 07:34:56 pm
It does not, but I wouldn't mind it doing so.  I doubt its possible though.


I thought that it did? While Quick grants 255 CT but does not grant 2.5 turns, it has special coding, AFAIK.

I'm interested in a broad EXP/JP hack that would allow what you said on Gained JP Up/Gained EXP Up, plus maybe multiple level-ups per action plus overflow.

I considered coding some Supports that did things like set PA to HP/30, but it's pretty niche.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on September 12, 2011, 08:14:41 pm
Quote from: pokeytax on September 12, 2011, 08:02:48 pm
I thought that it did? While Quick grants 255 CT but does not grant 2.5 turns, it has special coding, AFAIK.


Maybe it does, I forget, honestly.

Quote from: pokeytax on September 12, 2011, 08:02:48 pmI'm interested in a broad EXP/JP hack that would allow what you said on Gained JP Up/Gained EXP Up, plus maybe multiple level-ups per action plus overflow.


Is there really enough use for something like that in the game, though?

Quote from: pokeytax on September 12, 2011, 08:02:48 pmI considered coding some Supports that did things like set PA to HP/30, but it's pretty niche.


That sounds like something ALMA would handle if anything, honestly, lol.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RandMuadDib on September 12, 2011, 08:30:21 pm
I can't imagine getting the 100+ xp needed in a single action for multiple levelups, since xp is not based on defeating enemies but rather all actions.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on September 12, 2011, 08:32:41 pm
Quote from: RavenOfRazgriz on September 12, 2011, 08:14:41 pm
Is there really enough use for something like that in the game, though?


To be clear, I'd still personally trash Gained JP Up and Gained EXP Up, which I don't think can be saved. But if you attach them to passive toggles that don't require an equip slot, I think there's room for something like an zero-EXP effect for low-level playthroughs, or toggles that accelerate the JP grinding that 50% of the playerbase is going to do as soon as humanly possible.

Quote from: RandMuadDib on September 12, 2011, 08:30:21 pm
I can't imagine getting the 100+ xp needed in a single action for multiple levelups, since xp is not based on defeating enemies but rather all actions.


It would come as part of a radical change to the leveling curve (which might include, for example, no exp gain except from defeating enemies).
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RandMuadDib on September 12, 2011, 09:00:23 pm
Quote from: pokeytax on September 12, 2011, 08:32:41 pm
It would come as part of a radical change to the leveling curve (which might include, for example, no exp gain except from defeating enemies).


Haha wow my first reaction to this was "classes like thief and priest will never level up and will be quickly underpowered" before I realized its super easy to change jobs... been playing too much disgaea lately :D
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on September 13, 2011, 02:33:39 pm
Quote from: Pickle Girl Fanboy on September 12, 2011, 11:12:39 am
**Change Max HP calculation for each class to (PA * (x))*(Class HP Multiplier)
**Change Max MP calculation for each class to (MA * (y))*(Class MP Multiplier)
**Change Class evasion calculation for each class to (SP * (z))*(Class SP Multiplier)

I made a mistake in the Class evasion one.

And honestly, I don't like Gained JP UP or Gained Exp UP either.  I was wracking my mind, looking for  a set of circumstances where I would keep them, and this is what I came up with.  Even so, I doubt I'd still keep them, because they go against the ideals of my patch, whose goal is to increase tactical difficulty, while reducing strategic difficulty, and removing the need for tedium.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on September 15, 2011, 05:34:23 pm
New ideas (as always, I don't plan to use or request them, but you might find them useful):

*Base Zodiac Compatibility on something other than gender, or rework Zodiac compatibility so that there's another compatibility layer for interactions with monsters.
http://lparchive.org/Final-Fantasy-Tactics/Update%252001/13-2igkp4i.png
http://db.gamefaqs.com/console/psx/file/final_fantasy_tactics_zodiac.png

*Base Raw Stat selection on something other than gender and species.  Perhaps make them random - some people have better PA, other better MA, and others better Speed.  But for every bonus there should be an equal and opposite penalty.  I really like this, because I think that the difference between humans and monsters can easily be emphasized in their classes growths and modifiers, and there is no reason to have raw stat differences between them, especially when raw stat differences are better used to improve everyone's individuality.
EDIT
To clarify, you'd use each of the four existing raw stat sets - Ramza, Male, Female, and Monster - and modify them however you want, but the set chosen for any character would be random.  So you could start the game with Ramza using set 1 on your first playthrough, and on your second playthrough he might use a different set.


*Base Raw Stat selection on Zodiac sign.  There are only four sets of raw stats - if you feel like removing Ramza's - so there could be three different groups of Zodiac signs that share the same raw (or is it pre-raw?) stats.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Cheetah on September 15, 2011, 06:06:16 pm
I would like a hack, perhaps it already exists, that when you choose "New Game" it skips all the introduction stuff (text overlay intro, name insert, birthdate, opening movie) and instead goes immediately to the first event. This should be very useful for a lot of hacks with custom story.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RandMuadDib on September 15, 2011, 06:34:13 pm
Quote from: Cheetah on September 15, 2011, 06:06:16 pm
I would like a hack, perhaps it already exists, that when you choose "New Game" it skips all the introduction stuff (text overlay intro, name insert, birthdate, opening movie) and instead goes immediately to the first event. This should be very useful for a lot of hacks with custom story.


Not to mention playtesting!
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Cheetah on September 15, 2011, 07:39:59 pm
Quote from: RandMuadDib on September 15, 2011, 06:34:13 pm
Not to mention playtesting!


Haha yeah that is definitely my alterier motive. Useful regardless.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Vanya on September 25, 2011, 10:22:44 pm
Quote from: Pickle Girl Fanboy on September 15, 2011, 05:34:23 pmBase Raw Stat selection on Zodiac sign.  There are only four sets of raw stats - if you feel like removing Ramza's - so there could be three different groups of Zodiac signs that share the same raw (or is it pre-raw?) stats.


That could actually be pretty neat. Especially when you consider that the zodiac signs are split up into 4 groups by element.
Fire signs: Aries, Leo, Sagittarius
Air signs: Gemini, Libra, Aquarius
Earth signs: Taurus, Virgo, Capricorn
Water signs: Cancer, Scorpio, Pisces <3

That's not an error, AQUArius is an air sign. Although it would make more sense to swap Aquarius' and Scorpio's elements; that is how the real zodiac is set up.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RandMuadDib on September 25, 2011, 10:28:31 pm
and perhaps a minor strengthen: element based on that too, like 10% or so (or something close but easier to hex), fire boosts fire, air boosts lightning and air, earth boosts earth, and water boosts ice and water.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on September 26, 2011, 01:15:59 pm
Quote from: Vanya on September 25, 2011, 10:22:44 pm
That could actually be pretty neat. Especially when you consider that the zodiac signs are split up into 4 groups by element.
Fire signs: Aries, Leo, Sagittarius
Air signs: Gemini, Libra, Aquarius
Earth signs: Taurus, Virgo, Capricorn
Water signs: Cancer, Scorpio, Pisces <3

That's not an error, AQUArius is an air sign. Although it would make more sense to swap Aquarius' and Scorpio's elements; that is how the real zodiac is set up.

I'd prefer the random raw stats to the Zodiac one, but the Zodiac one could be very useful for, say, a Game of Thrones mod.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Rouenne on October 01, 2011, 07:31:02 pm
I have a request if it's not much trouble. I am trying to rework, Reis's class to make her more universal so I wanted to remove the Dragon Target requirement of her skills (also nerfing and putting some costs to them). I tried myself to do it but I just can't get it right. So if you could give me the code I would be really grateful.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: MysticKnightFF5 on October 06, 2011, 05:09:34 pm
1) Make certain skills require percentages of MP instead of a straight value of MP.
2) Immolation Status: deals fire damage to self and those around the immolated.
3) Minimum range editing for skills and weapons alike.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on October 07, 2011, 09:18:58 am
Quote from: Dunkelritter Luna on October 06, 2011, 05:09:34 pm
3) Minimum range editing for skills and weapons alike.

This may be possible already, could you describe what you want in greater detail?
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RandMuadDib on October 07, 2011, 10:31:57 am
using any ranged weapon between 1-3 panels? all weapons not marked as "striking" or "lunging" seem to not be able to target the first two panels.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: MysticKnightFF5 on October 07, 2011, 07:02:28 pm
Full editing for minimum range on both weapons AND skills.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RandMuadDib on October 07, 2011, 07:04:19 pm
skills don't have a minimum range, unless they use the weapon's range.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: MysticKnightFF5 on October 08, 2011, 12:47:36 am
That would be why I requested a hack, derp.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RandMuadDib on October 08, 2011, 03:05:48 am
i'm just saying its not necessary to hack skill ranges, just weapon ranges.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: MysticKnightFF5 on October 08, 2011, 09:28:08 pm
Thank you for telling me what's necessary for my patch, I'll keep that in mind.
Please stop debating this with me. I requested it and don't really expect it to be fulfilled, but hey, least I can say I requested it.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on October 23, 2011, 11:54:03 pm
Still alive.

Here is a usable Monkeygrip hack (although likely still not perfect). Thanks to FFMaster for his version which inspired me to try again. The support ability bytes are bolded so you can attach it to another Support if desired, although it's a little weirder than usual and only Supports are available, not Reactions or Movements.


WORLD_BIN_BIN
0x40b58
24260508
B93A2390
0x69890
1D80023C
7E9E4290
01006130
10004230
02004014
25180000
25182000
D8820408
00000000
0x40b58
30260508
B93A2290
0x69890
1D80033C
7E9E6390
01004130
10006330
02006014
25100000
25102000
CD910408
00000000
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Vanya on October 24, 2011, 02:05:52 am
Sweet! That's a nice addition to the roster of support skills.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on October 24, 2011, 03:23:07 am
Woo, Monkeygrip!
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Dome on October 24, 2011, 04:06:43 am
I was wondering...isn't it stupid that you can evade spells that can heal you?
Example, I'm wearing a fire shield, and someone casts fire on me...Why would I want to avoid the spell, if it's going to heal?
Also, even if I have Aegis shield and abadon, and I get targetted from the front, I'd never avoid a cure spell
Got what I mean? Is there any way to "Fix" this?


P.s:Monkeygrip, awesome!
Sooner or later I'll implement it in FFT: Plus
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Vanya on October 24, 2011, 07:20:23 am
Quote from: Dome on October 24, 2011, 04:06:43 am
I was wondering...isn't it stupid that you can evade spells that can heal you?
Example, I'm wearing a fire shield, and someone casts fire on me...Why would I want to avoid the spell, if it's going to heal?
Also, even if I have Aegis shield and abadon, and I get targetted from the front, I'd never avoid a cure spell
Got what I mean? Is there any way to "Fix" this?


That made me LOL.
Anyways, yeah I totally agree. I remember that happening to me, too.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on October 24, 2011, 11:33:17 am
You'd have to check for the undead byte.  And I think this is a formula thing - furthermore, I'm pretty sure I remember FDC covering this.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Dome on October 24, 2011, 11:38:16 am
Lol @Typo xD
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on October 24, 2011, 01:43:19 pm
Tl;dr Dome wants the Element Absorb Routine to skip the Evasion Routine.

If you're dodging Cure with an Aegis Shield, you flagged something wrong in FFTP...
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Eternal on October 24, 2011, 01:47:11 pm
It's not Cure he's dodging, I think. He means that if he has Absorb: Fire gear, and Fire III is being thrown at him, the hit rate should be 100% since he's absorbing it. I, personally, think that high M-EVD is fine as it is- it's beneficial but can screw you if you're relying on that. That said, I'm not sure when the AI would ever try to purposefully heal you...
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RandMuadDib on October 24, 2011, 02:48:34 pm
not ai, catch yourself in an AOE that hits enemies.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on October 24, 2011, 04:51:14 pm
Quote from: RandMuadDib on October 24, 2011, 02:48:34 pm
not ai, catch yourself in an AOE that hits enemies.

Or deliberately targeting one of your units with an elemental AOE he absorbs, then moving him next to an enemy.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RandMuadDib on October 24, 2011, 05:04:11 pm
Or Lv3Holy + Duplicated excalibur
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: formerdeathcorps on October 24, 2011, 10:52:57 pm
Quote from: Eternal248 on October 24, 2011, 01:47:11 pm
It's not Cure he's dodging, I think. He means that if he has Absorb: Fire gear, and Fire III is being thrown at him, the hit rate should be 100% since he's absorbing it. I, personally, think that high M-EVD is fine as it is- it's beneficial but can screw you if you're relying on that. That said, I'm not sure when the AI would ever try to purposefully heal you...


Easiest way to fix this?  Don't put M-EV on shields/mantles with elemental absorb.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on October 24, 2011, 11:58:16 pm
Quote from: Dome on October 24, 2011, 04:06:43 am
Is there any way to "Fix" this?


Yes, but it's a formula hack so not top of the stack.

Quote
1) Make certain skills require percentages of MP instead of a straight value of MP.
2) Immolation Status: deals fire damage to self and those around the immolated.
3) Minimum range editing for skills and weapons alike.


1) Percentages of current MP? Max MP? Can't deny I do want this one myself and it doesn't sound undoable.
2) a lot of work for something specific to a single patch
3) not sure what you mean

Quote
I wanted to remove the Dragon Target requirement of her skills (also nerfing and putting some costs to them).


This is a formula edit so again it's low priority. I know having rigid formulas is tough but if I ever touch this stuff it's going to be by doing a flexible editor, every single patch needs its own one-offs.

Quote
when you choose "New Game" it skips all the introduction stuff (text overlay intro, name insert, birthdate, opening movie)


I really want this but it involves wading through a lot of system calls and other Complicated Stuff. I'm not giving up, though - I would like to learn about the kernel anyway.

Quote*Base Raw Stat/Zodiac selection on something other than gender and species.


That is interesting, since as you note they seem pointless at present, especially monster preraw. But stuff even the requester isn't interested in using isn't a high priority.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: formerdeathcorps on October 25, 2011, 12:49:52 am
Quote
I know having rigid formulas is tough but if I ever touch this stuff it's going to be by doing a flexible editor, every single patch needs its own one-offs.


As efficient a system as Raven and I managed to design, I will tell you this:
1) For virtually every generalized patch, you'll create far more features than needed.
2) The more basic mechanical aspects (XA modification) are always easier to code than the smaller things (proc status/knockback).
3) Other people always generate crazier ideas than you do.
4) If you want a flexible editor not in ASM, you need a scripting language and those eat up large amounts of space.

In my own patches, I only code what I need, rather than code extra material.  If it weren't for the fact MIPS is not anyone's native language, I'd rather abandon the idea of a generalized hack altogether, and make specific ASMs for specific patches.  If I really wanted to make it custom, I'd do what I did for weapons, put all the possible XA variants used in FFT in one routine and branch accordingly within the routine (while using the free space to create novel XA).  My hack would set the branches to vanilla's default, but that would be editable by spreadsheet (think of my weapon formula editor).  That's always better than a scripting language, I think.

3) brings up another point.  You'll never be done, and too often your brainstorming sessions will yield features of increasingly little use, but you then stumble across a gem that forces you to remake your implementation.  The result is an ever larger hack with increasingly less organization.  Personally, if I had to use massive table space because I exceeded all the known free bytes in ability and weapon data space, then I'd know that my hack went too far.  In such a case, it would be better to make a weapon formula hack-style spreadsheet with X features out of Y total, done in mix-and-match style.  The addresses for branches should be calculated by the spreadsheet.
For example, we could have DEX/STR/CON/INT/CHA/DEF, but I think it's reasonable to assume if someone wanted a hack like that, they wouldn't need PA/MA/SP, so instead of branching out to free space, I'd just modify the existing stats that become redundant under such a model.  Thus, there should be no reason for such a hack to have its own "dedicated" spot in Kanji space; instead, it would override any other mutually exclusive features, leaving it up to the user to pick which collection of hacks he wants.  (Yes, I'm aware this means you can't have lots of extra numbers on your screen and you can't be as "specific", but usually it's only the ASMers and hardcore D&D players who even want such systems; most people get really confused trying to remember what 10 different numbers do, especially if some of them have only tangential relevance).
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: MysticKnightFF5 on October 25, 2011, 12:58:21 am
1) Max MP
2) Just an idea, thought someone might like it.
3) It would be nice to apply minimum range from bows/guns/crossbows to skills, as well as being given the ability to change what the minimum range value is.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on October 25, 2011, 12:31:25 pm
Quote from: formerdeathcorps on October 24, 2011, 10:52:57 pm
Easiest way to fix this?  Don't put M-EV on shields/mantles with elemental absorb.

Lame.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: FFMaster on October 26, 2011, 06:28:47 pm
Monkey Grip will likely bug out in Equip Change if I recall my notes correctly. There is a section in BATTLE.BIN you will need to edit as well, similar to the parts in WORLD.BIN. An easy check would be to equip someone with Monkey Grip and no offhand, and see what happens in battle.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on October 26, 2011, 07:10:17 pm
Quote from: FFMaster on October 26, 2011, 06:28:47 pm
Monkey Grip will likely bug out in Equip Change if I recall my notes correctly. There is a section in BATTLE.BIN you will need to edit as well, similar to the parts in WORLD.BIN. An easy check would be to equip someone with Monkey Grip and no offhand, and see what happens in battle.


Yeah, you are 100% correct Equip Change will screw up. I neglected that because I hate Equip Change but at some point it needs doing.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on October 27, 2011, 02:24:12 pm
Ideas for hacks:
*Every time Blade Grasp triggers, reduce Brave by (n).
*Every time any Reaction dependent on Brave triggers, reduce Brave by (n).
*A new reaction: Every time you take HP damage from a faith-based ability, or you are dealt a negative status by a faith based ability, reduce faith by (n).

FYI, the only reason I'm "not interested" in seeing the hacks I previously mentioned (the pre-raw stats are random ones, as well as attaching things to zodiac signs) is because I have no time to use them.  Had I time, I would totally use the shit out of them.  So, while they are back-burner material for sure, please don't dismiss them entirely.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Atma on December 09, 2011, 01:19:32 pm
I'm curious... with the hack to edit the failure rate of Teleport past the unit's move... is there a way to display the range of Teleport?  What i'm thinking is only allowing 100% chance in range and 0% beyond.  Essentially using it much like Fly, but with the Teleport animation.  I don't want the entire screen covered with selectable spaces, when i can only go so far.  Possible?
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on January 17, 2012, 08:27:54 pm
Random Thought: I was just talking with BP, and he said that TO - LUCT for the PSP has the the feature I'm gonna mention.

Currently, how far you move has no bearing on the amount of the CT penalty movement has.  That is, if you move, you won't get the +20 CT bonus.  But what if how far you move, in relation to the total range in which you can move, somehow influences the amount of bonus CT you get?

Like, if you have 10 move, and you move 1 square, then you have only used 10% of your total movement range, and, as such, you should get 90% of the Movement CT Bonus, which means you'd get 18 bonus CT.

I'm not sure it'd be a good idea, since the AI is already stupid enough, and it would give the player another exploit, but still, it sounds awesome.  What do you think of it?
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RandMuadDib on January 19, 2012, 03:58:59 pm
Perhaps something that can be mentioned in tethical?
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Austin on April 25, 2012, 10:32:34 pm
I'm using your inherent rsm hack right now and I noticed a (really) minor inconsistency. With vanilla's inherent abilities like item throw on chemist if you have item throw equipped and swap your job over to chemist, the game automatically unequips item throw. With any of the ones you do using this they'll stay equipped though. Figured I might as well let you know since I'm using it lol.

Thanks for working on these btw, I'm using a few of your other asms and they all work great.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on May 23, 2012, 03:52:22 pm
About previewability for the new item attributes: the routine that generates the stuff you see in menus doesn't "read" the actual item attributes, does it?  Or you don't know where the "preview" routine is?
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pride on May 23, 2012, 08:52:03 pm
It reads the actual item attributes.


Item Equip Preview
r17 = 0x801f0688 ; r18 = 0x801f0620
00122f9c: 27bdffd8 addiu r29,r29,0xffd8
00122fa0: afb00010 sw r16,0x0010(r29)
00122fa4: 00808021 addu r16,r4,r0
00122fa8: afb20018 sw r18,0x0018(r29)
00122fac: 00a09021 addu r18,r5,r0
00122fb0: afb10014 sw r17,0x0014(r29)
00122fb4: 00c08821 addu r17,r6,r0
00122fb8: afb3001c sw r19,0x001c(r29)
00122fbc: 00e09821 addu r19,r7,r0
00122fc0: 02402021 addu r4,r18,r0
00122fc4: afbf0020 sw r31,0x0020(r29)
00122fc8: 0c048b90 jal 0x00122e40 Clear data from r17 and r18
00122fcc: 02202821 addu r5,r17,r0
00122fd0: 321003ff andi r16,r16,0x03ff
00122fd4: 2602ffff addiu r2,r16,0xffff
00122fd8: 2c4200fd sltiu r2,r2,0x00fd
00122fdc: 10400073 beq r2,r0,0x001231ac Branch if equiped item is a "Chemist Item"
00122fe0: 00101040 sll r2,r16,0x01 Item ID * 2
00122fe4: 00501021 addu r2,r2,r16 Item ID * 3
00122fe8: 00021880 sll r3,r2,0x02 Item ID * C
00122fec: 3c018006 lui r1,0x8006 0x80060000
00122ff0: 00230821 addu r1,r1,r3 0x80060000 + Item ID * C
00122ff4: 90242ebf lbu r4,0x2ebf(r1) Load Item Attributes
00122ff8: 2a020080 slti r2,r16,0x0080
00122ffc: 10400014 beq r2,r0,0x00123050 Branch if equiped Item is not a Weapon
00123000: 2a020090 slti r2,r16,0x0090
00123004: 3c018006 lui r1,0x8006
00123008: 00230821 addu r1,r1,r3
0012300c: 90222ebc lbu r2,0x2ebc(r1) Load Item Second Table ID
00123010: 00000000 nop
00123014: 000210c0 sll r2,r2,0x03 ID * 8
00123018: 3c018006 lui r1,0x8006 0x80060000
0012301c: 00220821 addu r1,r1,r2 0x80060000 + ID * 8
00123020: 90233abc lbu r3,0x3abc(r1) Load Item's Weapon Power
00123024: 3c018006 lui r1,0x8006 0x80060000
00123028: 00220821 addu r1,r1,r2
0012302c: 90223abd lbu r2,0x3abd(r1) Load Item's Weapon Evade
00123030: 12600004 beq r19,r0,0x00123044 Branch if r19 (addu r19,r7,r0) = 0
00123034: 00000000 nop
00123038: a6230008 sh r3,0x0008(r17) Store Weapon Power into address at r17
0012303c: 08048c4e j 0x00123138
00123040: a622000c sh r2,0x000c(r17) Store Evade into address at r17
00123044: a6230006 sh r3,0x0006(r17) Store Weapon Power into address at r17
00123048: 08048c4e j 0x00123138
0012304c: a622000a sh r2,0x000a(r17) Store Evade into address at r17
00123050: 10400015 beq r2,r0,0x001230a8 Branch if equipment is not a shield
00123054: 2a0200d0 slti r2,r16,0x00d0
00123058: 3c018006 lui r1,0x8006 0x80060000
0012305c: 00230821 addu r1,r1,r3 0x80060000 + Item ID * C
00123060: 90222ebc lbu r2,0x2ebc(r1) Load Item Second Table ID
00123064: 00000000 nop
00123068: 00021040 sll r2,r2,0x01 Second Table ID * 2
0012306c: 3c018006 lui r1,0x8006 0x80060000
00123070: 00220821 addu r1,r1,r2 0x80060000 + Second Table ID * 2
00123074: 90223eb8 lbu r2,0x3eb8(r1) Load Shield Physical Evade
00123078: 00000000 nop
0012307c: a6220016 sh r2,0x0016(r17) Store Shield Physical Evade into address at r17
00123080: 3c018006 lui r1,0x8006 0x80060000
00123084: 00230821 addu r1,r1,r3 0x80060000 + Item ID * C
00123088: 90222ebc lbu r2,0x2ebc(r1) Load Item Second Table ID
0012308c: 00000000 nop
00123090: 00021040 sll r2,r2,0x01 Second Table ID * 2
00123094: 3c018006 lui r1,0x8006 0x80060000
00123098: 00220821 addu r1,r1,r2 0x80060000 + Second Table ID * 2
0012309c: 90223eb9 lbu r2,0x3eb9(r1) Load Shield Magical Evade
001230a0: 08048c4e j 0x00123138
001230a4: a6220020 sh r2,0x0020(r17) Store Shield Magical Evade into address at r17
001230a8: 1040000c beq r2,r0,0x001230dc Branch if Item is not Headgear or Bodygear
001230ac: 2602ff70 addiu r2,r16,0xff70 Item ID - 0x8F
001230b0: 00021040 sll r2,r2,0x01 Item ID * 2
001230b4: 3c018006 lui r1,0x8006 0x80060000
001230b8: 00220821 addu r1,r1,r2 0x80060000 + Item ID * 2
001230bc: 90233ed8 lbu r3,0x3ed8(r1) Load Item HP Bonus
001230c0: 00000000 nop
001230c4: a643000e sh r3,0x000e(r18) Store Item HP Bonus into address at r18
001230c8: 3c018006 lui r1,0x8006 0x80060000
001230cc: 00220821 addu r1,r1,r2 0x80060000 + Item ID * 2
001230d0: 90223ed9 lbu r2,0x3ed9(r1) Load Item MP Bonus
001230d4: 08048c4e j 0x00123138
001230d8: a6420014 sh r2,0x0014(r18) Store Item MP Bonus into address at r18
001230dc: 2a0200f0 slti r2,r16,0x00f0
001230e0: 10400016 beq r2,r0,0x0012313c Branch if Item is not an accessory
001230e4: 00041040 sll r2,r4,0x01 Item Attributes ID (?) * 2
001230e8: 3c018006 lui r1,0x8006 0x80060000
001230ec: 00230821 addu r1,r1,r3 0x80060000 + Item ID * 12
001230f0: 90222ebc lbu r2,0x2ebc(r1) Load Item Second Table ID
001230f4: 00000000 nop
001230f8: 00021040 sll r2,r2,0x01 Second Table ID * 2
001230fc: 3c018006 lui r1,0x8006 0x80060000
00123100: 00220821 addu r1,r1,r2 0x80060000 + Second Table ID * 2
00123104: 90223f58 lbu r2,0x3f58(r1) Load Accessory Physical Evade
00123108: 00000000 nop
0012310c: a6220018 sh r2,0x0018(r17) Store Physical Evade into address at r17
00123110: 3c018006 lui r1,0x8006 0x80060000
00123114: 00230821 addu r1,r1,r3 0x80060000 + Item ID * 12
00123118: 90222ebc lbu r2,0x2ebc(r1) Load Item Second Table ID
0012311c: 00000000 nop
00123120: 00021040 sll r2,r2,0x01 Item Second Table ID * 2
00123124: 3c018006 lui r1,0x8006 0x80060000
00123128: 00220821 addu r1,r1,r2 0x80060000 + Second Table ID * 2
0012312c: 90223f59 lbu r2,0x3f59(r1) Load Accessory Magical Evade
00123130: 00000000 nop
00123134: a6220022 sh r2,0x0022(r17) Store Magical Evade into address at r17
00123138: 00041040 sll r2,r4,0x01 Item Attributes ID (?) * 2
0012313c: 00441021 addu r2,r2,r4 ID * 3
00123140: 000210c0 sll r2,r2,0x03 ID * 18
00123144: 00441021 addu r2,r2,r4 ID * 19
00123148: 3c018006 lui r1,0x8006 0x80060000
0012314c: 00220821 addu r1,r1,r2 0x80060000 + Item Attributes ID * 19
00123150: 902342c7 lbu r3,0x42c7(r1) Load Attribute's Move
00123154: 00000000 nop
00123158: a6230000 sh r3,0x0000(r17) Store Move into address at r17
0012315c: 3c018006 lui r1,0x8006 0x80060000
00123160: 00220821 addu r1,r1,r2 0x80060000 + Item Attributes ID * 19
00123164: 902342c6 lbu r3,0x42c6(r1) Load Attribute's Speed
00123168: 00000000 nop
0012316c: a6230002 sh r3,0x0002(r17) Store Speed into address at r17
00123170: 3c018006 lui r1,0x8006 0x80060000
00123174: 00220821 addu r1,r1,r2 0x80060000 + Item Attributes ID * 19
00123178: 902342c8 lbu r3,0x42c8(r1) Load Attribute's Jump
0012317c: 00000000 nop
00123180: a6230004 sh r3,0x0004(r17) Store Jump into address at r17
00123184: 3c018006 lui r1,0x8006 0x80060000
00123188: 00220821 addu r1,r1,r2 0x80060000 + Item Attributes ID * 19
0012318c: 902342c4 lbu r3,0x42c4(r1) Load Attribute's PA
00123190: 00000000 nop
00123194: a6230012 sh r3,0x0012(r17) Store PA into address at r17
00123198: 3c018006 lui r1,0x8006 0x80060000
0012319c: 00220821 addu r1,r1,r2 0x80060000 + Item Attributes ID * 19
001231a0: 902242c5 lbu r2,0x42c5(r1) Load Attribute's MA
001231a4: 00000000 nop
001231a8: a622001c sh r2,0x001c(r17) Store MA into address at r17
001231ac: 8fbf0020 lw r31,0x0020(r29)
001231b0: 8fb3001c lw r19,0x001c(r29)
001231b4: 8fb20018 lw r18,0x0018(r29)
001231b8: 8fb10014 lw r17,0x0014(r29)
001231bc: 8fb00010 lw r16,0x0010(r29)
001231c0: 27bd0028 addiu r29,r29,0x0028
001231c4: 03e00008 jr r31
001231c8: 00000000 nop
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Glain on May 23, 2012, 11:02:01 pm
Couldn't help but notice...

0012313c: 00441021 addu r2,r2,r4      ID * 3
00123140: 000210c0 sll r2,r2,0x03     ID * 18 24
00123144: 00441021 addu r2,r2,r4      ID * 19 25

There are 25, not 19, bytes in each Item Attributes entry (0x642c4), so this would make sense. Coincidentally (or maybe not) 25 = 0x19, which could be where the 19 came from?

Edit - Actually, I think SA just listed the 18/19 as hex without any prefix at all... that probably wasn't even a mistake. I think he's just becoming a robot or something. :)
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pride on May 23, 2012, 11:14:22 pm
Oh haha, I didn't notice that
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pickle Girl Fanboy on May 24, 2012, 02:46:24 pm
So the problem with previewability is telling it to treat the new item attribute table the same as the old one?
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Edrin on June 06, 2012, 05:53:16 pm
ASM Request:

Choose job at Soldier office?

I am looking to make totally distinct branches of jobs to avoid jp sharing issues, but that requires me to start a character on specific jobs.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Timbo on June 06, 2012, 06:55:01 pm
Use RAD instead. RAD can allow you to add maximum level job requirements aka "less than level" job requirments. Lets say you want three specific branches: Warrior, Mage, and Thief. Each character will start only with access to Freelancer. The other 3 classes require level 2 in Freelancer to unlock. What more you'll need to set them to require less than level 2 for the other two classes.

Example:

Warrior requires: 1 Freelancer, "Less Than" 2 Thief, and "Less Than" 2 Mage.
Mage requires: 1 Freelancer, "Less Than" 2 Thief, and "Less Than" 2 Warrior.
Thief requires: 1 Freelancer, "Less Than" 2 Warrior, and "Less Than" 2 Mage.

What happens is that when you level up your Thief to level 2 you'll lose access to the Warrior and the Mage class permanently. The Freelancer part is pretty much a necessity though. You can't set job requirements for the Squire, so it can never truly go away. You could however drop it from the requirements if you want to have a branch that all characters can access.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Edrin on June 06, 2012, 09:59:54 pm
The only problem with that is bleedover jp locking your classes unintentionally. Even if you get your desired tree to begin with, bleedover jp will still affect the units and eventually shut down the last tree too, leaving you with nothing.

Alternatively a hack to turn off bleedover jp per class could work.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on June 07, 2012, 02:13:11 pm
I have a No Spillover JP hack from Pride somewhere.  If it's not in his ASM thread soemwhere I'll dig it up later.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Timbo on June 07, 2012, 09:47:39 pm
Oops. I totally forgot to mention that very necessary step. I thought the No Spillover JP hack is included in the ASM for the most recent FFTPatcher.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Edrin on June 11, 2012, 09:45:05 am
Ok found the spillover asm, thx.

Next on the list: I need to control who is affected by Golem. Currently it always applies to all allies, regardless of target. I need it to only affect targeted units. And, if possible, be able to set up multiple instances of Golem.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on June 11, 2012, 02:21:10 pm
You're... not going to be getting that to happen without rewriting the entire Golem routine.  Hate to break it to you.  Not to mention that one instance of Golem already breaks the AI, god knows how bad it'd get with multiples.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: MysticKnightFF5 on June 13, 2012, 11:56:27 am
Life as we know it will come to a neutral halt and be filled with nothingness... and golem.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on January 28, 2013, 11:12:15 pm
Bump.  (I am running out of Suikoden translation to do, so I'm looking over some old hacks.  You can post bug reports or new requests here - this thread is essentially starting again from scratch.  As always, no guarantees - I'm not as terrible at coding as I used to be, but I have less time too, and I've forgotten everything about FFT.)
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Celdia on January 29, 2013, 11:55:51 pm
Quote from: pokeytax on January 28, 2013, 11:12:15 pm
You can post bug reports or new requests here - this thread is essentially starting again from scratch.

So no chance of getting some small things in ALMA 4 tweaked then?
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Neophyte Ronin on January 30, 2013, 07:07:15 am
Maybe I'm imagining things, but isn't there a Hack that multiplies experience gains by zero so it does not increase Level?

Reasoning:

Set all characters to 50+original variance.  Their current Exp and Lv never change.  Dismiss instances of Degenerator (or retool them to perform another effect).  Any instance of Level Increase/Reduction ability is altered.  Equipment appears piss-poor, but can be altered so that some have qualities that others lack, so you now have a wider selection instead of things that get outdated by level.

Alternative: have equipment values improve by the level of characters equipping them.  One man's Aegis Shield is different from another man's Aegis Shield by virtue of level.  One man's broadsword is superior to another man's rune blade by virtue of level.  How that can be achieved will probably cause a sane programmer a heart attack.  I prefer the former.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: RavenOfRazgriz on January 30, 2013, 06:04:53 pm
There is a hack that allows you to hardcode the Experience gained from an Action to a specific value, which could be made 0, but the display for how much Experience is gained doesn't function properly.

I don't think you even begin to understand the rabbit hole you're getting into trying to make most/all equipment "usable".
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on January 30, 2013, 06:32:23 pm
Quote from: Celdia on January 29, 2013, 11:55:51 pm
So no chance of getting some small things in ALMA 4 tweaked then?


That is precisely what this thread is for!  Starting from scratch just means that my to-do list has zero things on it right now, because I don't know what needs doing most, and you probably do.

Quote from: Neophyte Ronin
Maybe I'm imagining things, but isn't there a Hack that multiplies experience gains by zero so it does not increase Level?


Well, you could just use the hack that zeroes stat growths.  That's pretty close.  Or use ALMA to make Gained EXP Up into Gained EXP = 0 and then give it to everyone.

Quote from: RavenOfRazgriz
I don't think you even begin to understand the rabbit hole you're getting into trying to make most/all equipment "usable".


Yeah, while this sounds tempting, and vanilla FFT goes too far the other way by having only a few viable equips at many points, what you end up with in practice is often someone using the same equipment all game because it's already optimal.  Raven is right.
Title: Re: (No subject)
Post by: Pride on January 30, 2013, 08:07:57 pm
My ASM thread has the experience edit (there are display issues though that i have yet to fix #asmcleanup2020) and to prevent level up is in Xifs if i remember correctly. Or Razele's thread.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Choto on January 31, 2013, 12:13:18 am
I would cast a vote on the side of ALMA or RAD revision. I remember always having trouble with RADster :(
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Celdia on January 31, 2013, 09:00:42 am
Quote from: pokeytax on January 30, 2013, 06:32:23 pm
That is precisely what this thread is for!  Starting from scratch just means that my to-do list has zero things on it right now, because I don't know what needs doing most, and you probably do.

Raven could probably point out more things than me since he pays more attention but I think my only current issue with ALMA 4 is how when a unit that has used a skill like Accumulate to boost their PA levels up in battle their stats reset back to pre-Accumulate values [which I assume are just the proper values for the unit at their new level.] A fix so it would have it keep the boosted value after the level up is calculated would be most helpful. ...and if there is a way to change the sheet without me having to re-input pages and pages of data into a new spreadsheet, that would be phenomenal. >_>
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: 3lric on January 31, 2013, 03:17:20 pm
I know that certain ASMs such as ALMA or RAD3 have the load delay that makes you unable to play on console or PSP. A fix for those would be great.

I know there was also a gameflow editor issue that effects sidequests? (Eternal experienced this)

Pride has also found a lot of new stuff concerning the worldmap commands that could be added to Gameflow Editor as well.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on January 31, 2013, 06:25:27 pm
Quote from: Elric on January 31, 2013, 03:17:20 pm
i know that certain asms such as alma or rad have the load delay that makes you unable to play on console or psp. a fix for those would b great.


Can anyone confirm these?  I ask only because I think I investigated a couple reports like this and they turned out to be other hacks.  (I'm not saying it didn't happen - lord knows RAD, especially, needs a lot of work.  But a clear reported case would help a lot.)

Celdia, if you send me your current ALMA 4 spreadsheet I'll make sure it's transferred.

Thanks for the notes.  I'm also looking at knocking out some of the hardcoding FFT does (e.g. having whether an item is a shield, hat, armor, or accessory be determined by FFTPatcher, not its item number; having the "Action Menus" tab in FFTPatcher actually do what you would expect it to without the Generic Skillset Hack).

Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Choto on January 31, 2013, 07:30:04 pm
Keep in mind that there's loads of new routines up on the new-and-improved wiki. Any routines that are red mean I have them in my working file. I can post it when I get home. No sense in documenting stuff that's already done.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on January 31, 2013, 08:07:59 pm
Quote from: Choto on January 31, 2013, 07:30:04 pm
Keep in mind that there's loads of new routines up on the new-and-improved wiki. Any routines that are red mean I have them in my working file. I can post it when I get home. No sense in documenting stuff that's already done.


Yeah, I've seen the page - it's very nice.  I'll try to add to it as I go.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Celdia on February 02, 2013, 09:52:22 am
Quote from: pokeytax on January 31, 2013, 06:25:27 pm
Celdia, if you send me your current ALMA 4 spreadsheet I'll make sure it's transferred.


I'll PM you a dropbox link for it
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Choto on February 06, 2013, 06:35:41 pm
At first glance, ALMA 4 and RAD 3 seems to be coded correctly with load delay. I literally just skimmed over a couple parts so that's not to say there isn't a bug somewhere hiding. I think in the ARH we found load commands being used in the branch delay slot and then using the value at the branch location.

This problem with the console crashing must be something different than load delay. My microprocessors professor said dividing by 0 may cause it to crash as well, so that's the next thing to check. I'm not sure what else could cause it to crash but there must be something. The dult/div and mfhi/mflo process has a delay stipulation too.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Glain on February 07, 2013, 11:29:05 am
I ran into another one when working on one of my elemental hacks and it was being tested on an EBOOT (and maybe we should put this in the coding standards sticky)...

The memory is aligned so that words (4-byte blocks) always begin at memory locations divisible by 4 (ending in 0x0, 0x4, 0x8, 0xC) and half-words (2-byte blocks) are always at memory locations divisible by 2 (even).

Say you have this:

lui r4, 0x8019
lw  r4, 0x2d93(r4)


You're loading a word from 0x80192d93... which is not divisible by 4, and that's illegal based on where words have to be aligned (memory addresses that are multiples of 4).  Apparently this freezes on an actual PSP EBOOT.  From my experience, both ePSXe and pSX will cheerfully do it without complaint.

Same idea with something like this:

lui r4, 0x8005
lhu r4, 0x9041(r4)


As you can't load a halfword from an odd memory address.

This seems to apply to the store instructions too.

For reference, here's where I discover/post about it:
http://ffhacktics.com/smf/index.php?topic=8351.40#msg168560

Here's another example of someone getting this error (simulator).  This seems to confirm it affects sh/sw too.
http://stackoverflow.com/questions/9830892/mars-mips-store-address-not-aligned-on-word-boundary

EDIT - I'm not sure if loading in a branch delay slot and then using the value at the branch location is actually an error (as the actual branch happens between the load and the fetch of the register value).  Does anyone know for sure?  I know sometimes parameters for subroutines will be loaded in the branch delay slot of a jal, for example.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on February 07, 2013, 06:07:35 pm
I was definitely aware of load delay, branch delay, load alignment, and mflo/mfhi pipelining.  All of my hacks target pSX, which seems stricter than ePSXe and has the handy debugger.

Hmmm... some of you may remember me whining about bizarre errors I got when writing ALMA that triggered in pSX, but not ePSXe, and only in runtime, not in stepthrough.  Just terrible stuff where a section would crash after 3 nops but not after 5 nops, and LOAD instructions in branch delay slots caused problems even when the results weren't being used at the destination.  (e.g. http://ffhacktics.com/smf/index.php?topic=6664.180#msg151469 (http://ffhacktics.com/smf/index.php?topic=6664.180#msg151469))  The most rational explanation is still that I screwed up somehow, but I checked every line of my code enough times to be sure that it wasn't an ASM 101 mistake.  Maybe I was simply cramming so many instructions in that it introduced inconsistency into the game loop?  Does that even make sense?  In any case, if there's a root cause to this I did not address, that could be creating problems on physical systems.

Anyway, I'm curious enough to test ALMA and RAD on a physical PSX myself and see if it works.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Choto on February 07, 2013, 10:24:14 pm
Thanks for those tips Glain, I definitely wasn't aware of that word loading/storing issue :P
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Glain on February 08, 2013, 12:02:37 pm
Pokeytax, my best guess on that ALMA issue is memory corruption. I've had really bizarre things happen when one of my hacks writes to the wrong place in memory; for example, the AI slowing down the game, acting strangely and running into corners, ending their turns without acting for no reason, and nearly grinding the game to a halt before crashing the emulator. (Might be the best error I've ever caused -- has a bit more style than the up-front emulator crashes! :D)

All that from one wrong store instruction. There's nothing wrong in the syntax and no pipeline hazards but chaos is running wild nonetheless. I'd check the store instructions in a debugger to make sure they're storing the right values in the right places.

And no, I don't think you can cram too many instructions into a CPU pipeline. They're built to be able to handle all that fun stuff!
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Kurosabes on February 08, 2013, 07:21:39 pm
After some testing, I found out the potion slots used in the Auto Potion hack only affect allies, not enemies. I found a way around this by simply altering Potion in FFTpatcher to heal as much as desired (as enemies use that auto potion slot by default no matter what, they have infinite Potions) and removing "Potion" from the game and giving Eye Drops the same effect as a Potion. It was just convenient that my patch had Eye drops disabled however. Not sure if that was a known issue or not but I'm pointing it out for those that don't know.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Choto on February 19, 2013, 12:27:30 am
While we're on the topic, maybe i'm having a dumb moment.. But is there a way to fix that word-aligned loading and storing problem without moving the thing you're loading? I'm guessing you could just put two lbu's... but that seems crumby. How does vanilla code do so?
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Pride on February 19, 2013, 02:29:45 am
im not too sure what your asking choto... you mean you have a half word stored at 0x0001 and you want to load it as a half word without moving the table?
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Choto on February 19, 2013, 08:53:36 am
pretty much Pride.. I was just looking at fixing the ARH code. I guess you'd have to do a lw at the even location and then OR or shift the stuff you don't want away, or move the table..
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: Glain on February 20, 2013, 12:52:46 pm
There's a routine somewhere in the code that loads halfwords regardless of alignment by issuing two load byte instructions as Choto described.

IIRC, the result is basically lhu r2, 0(r4) except r4 can contain an odd address.  I always thought it was the most pointless routine ever until I thought about the halfword alignment.

EDIT - It's at RAM 0x146078 (comes from battle.bin).  I added it to the wiki.
EDIT 2 - It mimics lh, not lhu.  It sign extends the first 16 bits via sll/sra.

EDIT for below - I can tell you the random equip algorithm is pretty dumb (hardcodes item IDs to search for valid equipment), so it probably will indeed try to give units the same type of item in different slots.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: pokeytax on February 20, 2013, 08:03:09 pm
This is an upgraded version of the equipment sorting hacks/spreadsheet earlier in this thread.  It lets you change shields to hats to armors to accessories, and change which items go in which slots.  For example, vanilla has 16 shields / 28 hats / 36 armors / 32 accessories.  You could change that to 16/32/32/32; or to 24 shields / 40 hats / 48 accessories and allow a second accessory in place of armor; or 96 accessories and three accessory equip slots.  You will need to change the item's type in FFTPatcher to match its new classification, and you should probably not change weapons into other equipment into items.

This should be pretty robust, covering the formation screen, the unit random equip algorithm, Equip Change (ugh), previews, and shops.  However, I'm sure I still missed some things, so let me know if you find them (and backup your patch before you try it).  Units with preset equipment will still have what you gave them, even if they absurdly have a helmet and armor instead of three hats, and the random equip algorithm might well give people two of the same thing, but it's a start.

Still need to figure out how to make the six throwables fully usable weapons and sort out some of the grousing it is doing about HP/MP <=> PEv/MEv.  [EDIT: hm, I just stabbed somebody with a Yagyu Darkness after changing item data.  I'll have to test more but this is looking better than it did last time I tried.]  And I would like to have this interact with RSM so that RSM could change your equip scheme... but wow, talk about a headache.
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: Celdia on February 20, 2013, 11:19:25 pm
I almost wish I weren't done with my equipment reshuffling so that I could use this.

One thought comes to mind about details: When changing a non-shield into a shield, will the new item display the proper graphics in battle when the equipped unit blocks with a shield?
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: pokeytax on February 20, 2013, 11:28:10 pm
I'm going to do some tinkering and find out.  I would guess so (should just pull the palette and graphic) but I'm still concentrating on getting basic gear shipshape rather than weapons/throwables/shields.  I certainly wouldn't be shocked if there is more dumb hardcoding there.  In fact, my Yagyu Darkness looked like a dagger, which is suspiciously normal... hm.  Definitely still a lot of work to do.

Glain, I adjusted those hardchecks - but if I read your thread right, the random equip routine isn't all that random, so I'll probably get randoms with three Leather Mantles rather than an interesting and diverse mix of stuff, right?

I think I'm going to have to code a multiplicative evasion routine for multiple accessories.  I need to do something to repair base functionality in any case and additive evasion gets too silly too fast.
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: Glain on February 21, 2013, 12:32:49 am
The randomness in the random equipment routine has to do with item level, I believe...

It basically finds the "peaks" in the item level for a given equipment slot... let's say it was searching through the list of items and saw this for the item levels:
3, 7, 10, 12, 2, 5, 8, 9, 7, 8, 3, 10

It would pick item #4 (item level 12), #8 (item level 9), #10 (item level 8), and #12 (item level 10), then randomly choose between one of those.  Basically the more peaks you have in the
item levels, the more options you'll get.  I believe the idea is that if the item level ever goes down, it must be a new type of item that it should consider.

Or, rather... that's the way it's supposed to work, and it will work that way if you use my hack to make random unit gear more selective.  What it actually does in vanilla is, IIRC... if the item level ever goes down, every subsequent item it encounters, no matter how low level, will be added to the list for random selection (and get an equal chance of being selected). 
Hooray, Chapter 4 Linen Robes! (In this example, it would be items 4, 5, 6, 7, 8, 9, 10, 11, 12)
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: hierophant on February 23, 2013, 09:23:55 am
Edit:  trying to make more plausible requests:

--Skip title screen, go directly to an event.
--Have an equipped item allow access to a command set. (For example, an equipped masamune allows access to the "masamune" skillset, populated by the "masamune" ability)
--Any ability that would check for range checks the jump stat for horiz/vert range.  Never mind if this would affect Attack.  Also with this:  Move stat = Move & Jump.

Edit2:  So I forgot monster skill triggers on adjacent monsters.  Could this be rigged to give a unit haste when an enemy is adjacent?
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: pokeytax on February 23, 2013, 07:21:47 pm
Quote from: hierophant on February 23, 2013, 09:23:55 am
--Skip title screen, go directly to an event.


Skipping the introduction and booting immediately to an event in New Game is something I have tried a few times and found very difficult.  But it's also something many patches would like, so I haven't given up.  Skipping the title screen entirely might be doable once that's figured out.

Quote from: hierophant on February 23, 2013, 09:23:55 am
--Have an equipped item allow access to a command set. (For example, an equipped masamune allows access to the "masamune" skillset, populated by the "masamune" ability)


You can do this using the Skillsets tab of the ALMA spreadsheet: http://ffhacktics.com/smf/index.php?topic=6664.0 (http://ffhacktics.com/smf/index.php?topic=6664.0).

I definitely recommend you check the Important Links thread in this forum, particularly "Programs, Spreadsheets, Other Utilities".  Stuff like Raven's Spreadsheets and ALMA, if you aren't already familiar, will give you a lot of functionality to play with.

Quote from: hierophant on February 23, 2013, 09:23:55 am
--Any ability that would check for range checks the jump stat for horiz/vert range.  Never mind if this would affect Attack.  Also with this:  Move stat = Move & Jump.


This is a little involved, because you would have to change every Jump check in the code.  It's also probably not very generally applicable, and would only help your patch.  It never hurts to ask!  But realistically, with so much else to do, I don't think I will ever get to this one.

Quote
Edit2:  So I forgot monster skill triggers on adjacent monsters.  Could this be rigged to give a unit haste when an enemy is adjacent?


Unfortunately, the game only checks this (I would guess) when you open a monster's skillset.  I have been thinking about how to route some more context-sensitive stuff like this through ALMA, but it would take some work.
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: Celdia on February 24, 2013, 08:49:02 am
Quote from: pokeytax on February 23, 2013, 07:21:47 pm

Quote from: hierophant on February 23, 2013, 09:23:55 am
--Have an equipped item allow access to a command set. (For example, an equipped masamune allows access to the "masamune" skillset, populated by the "masamune" ability)


You can do this using the Skillsets tab of the ALMA spreadsheet: http://ffhacktics.com/smf/index.php?topic=6664.0 (http://ffhacktics.com/smf/index.php?topic=6664.0).


I just want to point out - since I saw the original request and almost posted about it - the idea for Items specifically in this won't work with the ALMA Skillsets sheet [though I like your idea for Item bags] but I believe the error is tied to something else. I have successfully bound a Normal skillset to a piece of equipment as well as a limited-and-fully-mastered Jump skillset. You can NOT use Item, Throw [Weapon Inventory] or Draw Out [Katana Inventory] action sets with this. I don't know where it's documented exactly, but there is some issue with the other strange skillset types when using them outside of their original places. From my own testing I know for certain that Item, Throw and Draw Out skillsets [even with the Action Menus set correctly and both applying the Generic Skillset Fix and not applying it] will display the equipment-accessed skillset on your action menu in battle but it will be greyed out and will tell you no abilities have been learned even when using a skillset slot that should be automatically Mastered. I haven't tested Elemental, but that may work for this.


If you want to see Jump working with this, grab my CCP 2nd Beta patch and get ahold of the Dragoon Boots item. It replaces Attack with a Jump command that gives Range 3 and Vertical 5. The Dragoon job gives a Range 5/Vert 8 Jump command in addition to the normal Attack command even when their skillset is added as a Secondary skillset [which also has more Normal skills in it] and there is another item that let's you access a special command set when equipped but I don't think that's normally accessible in the Beta version...
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: pokeytax on February 24, 2013, 11:23:58 am
Glain, that should work great then (with your fix applied).  Also that's really good knowledge to have.  By manipulating what order you have items in, you can tell the game which accessories to consider.

Hm, thanks for that note, Celdia.  I really need to code up something that allows you to determine, for every skillset, what skills are considered learned, so you can have stuff like Red Magic.  Probably when I redo RAD I will try to allow a lot of that functionality separately, for people who don't necessarily need a bunch of jobs but do need better controls over skillsets, learned abilities, etc.

I updated the equipment sorting hack to properly load accessory evasion multiplicatively (e.g. 3 x Small Mantle gives 28% evasion, not 30%).  I don't know of any other bugs yet, but it's too wide-ranging of a hack for there not to be any.
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: Choto on February 24, 2013, 11:58:31 am
Quote from: pokeytax on February 24, 2013, 11:23:58 am
I really need to code up something that allows you to determine, for every skillset, what skills are considered learned, so you can have stuff like Red Magic.


If you do so, these routines may be helpful. They span from 00181584 to 001822c8. I posted them up on the wiki in case they may help. Sorry in advance for my shotty notation :P.

They are the routines that find known abilities for a skillset and load them to a list to be put into the skillset.
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: Astos on January 01, 2014, 01:13:11 pm
I have a question about the "R/S/M designates learn on hit". It says byte 91 value 10 is equivalent to Monster Talk. But if I want to use that to other support abilities, how do I find out which values I should use? Is there a list out there or another way to find out?
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: Choto on January 09, 2014, 08:18:52 am
Indeed, and it can be found here: http://ffhacktics.com/wiki/Battle_Stats

here's the relevant information:

Reaction abilities
0x008B:
0x80 = A Save
0x40 = MA Save
0x20 = Speed Save
0x10 = Sunken State
0x08 = Caution
0x04 = Dragon Spirit
0x02 = Regenerator
0x01 = Brave Up

0x008C:
0x80 = Face Up
0x40 = HP Restore
0x20 = MP Restore
0x10 = Critical Quick
0x08 = Meatbone Slash
0x04 = Counter Magic
0x02 = Counter Tackle
0x01 = Counter Flood

0x008D:
0x80 = Absorb Used MP
0x40 = Gilgame Heart
0x20 = Reflect
0x10 = Auto Potion
0x08 = Counter
0x04 =
0x02 = Distribute
0x01 = MP Switch

0x008E:
0x80 = Damage Split
0x40 = Weapon Guard
0x20 = Finger Guard
0x10 = Abandon
0x08 = Catch
0x04 = Blade Grasp
0x02 = Arrow Guard
0x01 = Hamedo

Support abilities
0x008F:
0x80 = Equip Armor
0x40 = Equip Shield
0x20 = Equip Sword
0x10 = Equip Katana
0x08 = Equip Crossbow
0x04 = Equip Spear
0x02 = Equip Axe
0x01 = Equip Gun

0x0090:
0x80 = Half of MP
0x40 = Gained JP-UP
0x20 = Gained EXP-UP
0x10 = Attack Up
0x08 = Defense Up
0x04 = Magic Attack Up
0x02 = Magic Defense Up
0x01 = Concentrate

0x0091:
0x80 = Train
0x40 = Secret Hunt
0x20 = Martial Arts
0x10 = Monster Talk
0x08 = Throw Item
0x04 = Maintenance
0x02 = Two Hands
0x01 = Two Swords

0x0092:
0x80 = Monster Skill
0x40 = Defend
0x20 = Equip Change
0x10 =
0x08 = Short Charge
0x04 = Non-charge
0x02 =
0x01 =

Movement abilities
0x0093:
0x80 = Move +1
0x40 = Move +2
0x20 = Move +3
0x10 = Jump +1
0x08 = Jump +2
0x04 = Jump +3
0x02 = Ignore Height
0x01 = Move-HP Up

0x0094:
0x80 = Move-MP Up
0x40 = Move-Get Exp
0x20 = Move-Get Jp
0x10 = Cannot enter water
0x08 = Teleport
0x04 = Teleport 2
0x02 = Any Weather
0x01 = Any Ground

0x0095:
0x80 = Move in Water (yes, this should be named Walk on Water)
0x40 = Walk on Water (yes, this should be named Move in Water)
0x20 = Move on Lava
0x10 = Move Underwater
0x08 = Float
0x04 = Fly
0x02 = Silent Walk
0x01 = Move-Find Item
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: Kurosabes on July 09, 2014, 04:46:09 pm
Just a minor display issue with 'Units rot or reanimate without skipped turns'. When a Death Sentence'd unit count is 0, the 'Death Sentence' doesn't show, the unit just drops to the ground without any indication, kind of like when it's the last unit standing in vanilla.
Title: Re: Total Request ASM: Level Up/Down exploit fix, plus a hat trick
Post by: DuxorW on July 14, 2014, 01:41:17 pm
Quote from: pokeytax on January 31, 2013, 06:25:27 pm
Can anyone confirm these?  I ask only because I think I investigated a couple reports like this and they turned out to be other hacks.  (I'm not saying it didn't happen - lord knows RAD, especially, needs a lot of work.  But a clear reported case would help a lot.)

Celdia, if you send me your current ALMA 4 spreadsheet I'll make sure it's transferred.

Thanks for the notes.  I'm also looking at knocking out some of the hardcoding FFT does (e.g. having whether an item is a shield, hat, armor, or accessory be determined by FFTPatcher, not its item number; having the "Action Menus" tab in FFTPatcher actually do what you would expect it to without the Generic Skillset Hack).


I know that I encountered some problems with ALMA on consoles and I applied ALMA to a clean ISO to make sure it wasn't my other hacks. I just figured it was not designed with consoles in mind but since that is not the case I am willing to do some bug testing for you. I had a few specific problems and once I double check them I'll post in detail.
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: DuxorW on July 15, 2014, 02:42:20 pm
I had a little bit of time today so I tested ALMA on consoles.

First, I tested a clean ISO on console to make sure it worked fine (Orbonne battle, etc).

Next, I applied all 4 parts of ALMA to the clean ISO (I didn't make any changes to any of the fields in ALMA, so a "clean ALMA").
The game froze when the text "Orbonne Monastery" appeared.
I loaded a saved game to see if I could get into a random battle. Strangely, I had a lot of difficulty triggering a random battle, but when I did, the game froze before loading the formation screen.
When I entered the party menu from the map, everyone's naked HP and MP had been reduced to 1. Equipment was able to add HP and MP to this naked value.

Next I applied only the "clean" attributes hack instead of all 4 hacks. Same result as before. I have not tried applying each of the other 3 hacks individually.

Lastly, since I was only able to access the party menu when ALMA was applied, I tried to see if the ALMA attributes could do anything that they were supposed to in the party menu. I gave monster talk "attribute 50" which I had set to double HP. With equipment, my mediator had 163 HP and it doubled to 326 when I set monster talk as her support ability. There weren't a lot of other things I could test since I could not enter any battles.

Battles were fine if I loaded the hacked ISO (where monster talk doubled HP) into ePSXe, and the hack worked as expected. I hope this is of some help.
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: 3lric on July 15, 2014, 08:28:09 pm
It is indeed good info to have for if Pokeytax decides to fix it. It might be a good idea to move this post to the ALMA thread though.
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: Choto on July 15, 2014, 11:14:19 pm
ALMA also has a problem which makes it lose stat breaks and increases due to where it jumps out of vanilla code. I think it's fixable, but it's down there on the list of things to do for me. Hopefully Pokeytax shows up super motivated for some reason, but don't hold your breath. Real life and motivation are cumbersome and fleeting, respectively.

And yes, it likely has code that doesn't fly on consoles. It needs to be gone through for problems like load delay and word address alignment. Still, thanks for the info. It would be a nice thing to slim ALMA down and make it usable.
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: nitwit on July 16, 2014, 12:24:21 am
Quote from: Choto on July 15, 2014, 11:14:19 pm
ALMA also has a problem which makes it lose stat breaks and increases due to where it jumps out of vanilla code. I think it's fixable, but it's down there on the list of things to do for me. Hopefully Pokeytax shows up super motivated for some reason, but don't hold your breath. Real life and motivation are cumbersome and fleeting, respectively.

And yes, it likely has code that doesn't fly on consoles. It needs to be gone through for problems like load delay and word address alignment. Still, thanks for the info. It would be a nice thing to slim ALMA down and make it usable.

I really want to use some parts of ALMA but I don't want to use the whole package if I don't need to.  Is it obvious where certain parts of the worksheet are linked to certain modified routines?  Could I trim out what I need without too much trouble?  And it seems that some of the things covered in ALMA are also covered by other hacks and other worksheets.
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: Choto on July 16, 2014, 10:06:53 pm
Yeh, you could cut out some things. The person to speak to about that is Celdia. She's been able to coax ALMA into behaving, but the previously mentioned restrictions still apply for attributes. I think the skillset hack may work, but perhaps not on consoles. I don't know at all if ALMAscripts work or not.

To tell where a hack jumps from, look for something that looks like this:

<Location file="BATTLE_BIN" offset="120248">
40490508
05000192
</Location>

if you highlight the hex code and pop it in MassHexASM, it'll decode it into ASM commands for you. If it's a j or jal command, it's jumping to the address specified (usually the address of custom code).

if it's not laid out so simply, just paste all the other code in the hack in masshexasm to see if it has those j or jal commands to custom code.

Title: Re: Total Request ASM: All armor replaced by shoes
Post by: nitwit on July 17, 2014, 10:54:10 pm
Quote from: Choto on July 16, 2014, 10:06:53 pmYeh, you could cut out some things. The person to speak to about that is Celdia. She's been able to coax ALMA into behaving, but the previously mentioned restrictions still apply for attributes. I think the skillset hack may work, but perhaps not on consoles. I don't know at all if ALMAscripts work or not.

To tell where a hack jumps from, look for something that looks like this:

<Location file="BATTLE_BIN" offset="120248">
40490508
05000192
</Location>

if you highlight the hex code and pop it in MassHexASM, it'll decode it into ASM commands for you. If it's a j or jal command, it's jumping to the address specified (usually the address of custom code).

if it's not laid out so simply, just paste all the other code in the hack in masshexasm to see if it has those j or jal commands to custom code.

What's the difference between j and jal?  I noticed that jal usually links to another routine (what's the difference between a routine and a subroutine?) while browsing the wiki.  Also some routines aren't documented on the wiki.  Steal Gil comes to mind.

I want the extra item attributes for sure, but I think I can find some uses for the other ones.  Besides that I'm concerned about any conflicts between ALMA and other spreadsheets and hacks.  I can't do everything I want to do to supports with ALMA, but I think if I use my imagination I can make something fun.
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: Choto on July 18, 2014, 07:26:22 am
Stand by. Looks like you have a solid base of understanding. When I get home later I'll describe some options and clarify J vs Jal

edit: Looks like Glain already explained Jal vs. J

Check this hack:

<Patch name="Speed Boost">
<Description>
Boosts Speed by 1
</Description>
<Location file="BATTLE_BIN" offset="4d0a8">
004C0508
00000000
</Location>
<Location file="BATTLE_BIN" offset="EC000">
93002292
00000000
20004230
02004010
FFFF6230
01006324
00006224
2C720108
3300422C
</Location>
</Patch>


This gives the unit Speed +1 if a certain R/S/M is equipped. Right now it's tied to byte 0x93, value 0x02

If you look at the data locations.txt. and go to 0x801924cc, then go to byte 0x93, you'll see which R/S/M this hack is referring to. This hack jumps from vanilla code where ALMA should jump from vanilla code. So you can this jump location and then hack in whatever type of stat manipulation you want based on the equipped R/S/M.

It's like a hardcoded version of alma that doesn't load the information from a big table or anything. At it's core it just says "Is this R/S/M active?" "Then perform this stat manipulation.

I'll try to explain this better later on, I only had a second to sit down and post it.
Title: Re: Total Request ASM: All armor replaced by shoes
Post by: nitwit on July 18, 2014, 11:42:42 pm
Let's move this to the other thread (http://"http://ffhacktics.com/smf/index.php?topic=10514.0").