News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Author Topic: Secret of Mana, Turbo - Beta 191205  (Read 129008 times)

hmsong

  • Sr. Member
  • ****
  • Posts: 261
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #640 on: October 09, 2019, 05:19:16 am »
@zoolgremlin

Hey.  So I took a look at the Defensive_Petrify part, and honestly, I have no idea how to change anything there.  Thanks to Queue's descriptions, I know which paragraph deals with petrify damage and defense increase, but I have no idea how to edit it.

zoolgremlin

  • RHDN Patreon Supporter!
  • Full Member
  • *****
  • Posts: 130
  • Steam Profile Name: keeperofcastlegreydusk
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #641 on: October 09, 2019, 08:47:25 am »
hmsong:  Okay!  Soooo... it's just as well I did try it first, because I had to check and revise my proposed change a few times.   :laugh:

If you go to the [Defensive_Petrify] module in the ZPS (you might already be there now), scroll down until you see the line that says:

@OFF Petrify_Defense()

Under that line is all of this:

Spoiler:
BIT+X   $E190   ' STATUS_EFFECTS_LO

' overwritten code $C05155
REP   #20
LDA   $87   ' temp, defense

BVS   *petrify   ' 0x40
RTL
*petrify
LSR      ' /2
ADC   #0000   ' round up
LSR      ' /4
'CLC      ' round down
ADC   $87   ' temp, defense
RTL

Note the two LSR commands.  Change the first one (from top to bottom) to ASL, and change the second one to NOP.  Leave everything else as is, and save the change.  Making sure you have a backup of the ZPS somewhere before saving.  (Your text editor of choice might be set to automatically make a backup in the same folder, but then again it might not be.) Then build a new patched ROM with the altered ZPS file, and the change is now in the game.

What's happening in this part of the module is that the program is checking if the target of the current physical attack has the Petrify bit set.  If it does, it takes the value of Temporary Variable $87 (which is the previously-calculated Defence Power against the current attack), which was loaded into the Accumulator before (LDA $87), divides that Accumulator value by 2 (LSR), rounds the result up to the nearest whole number (ADC #0000), divides the result by 2 again (LSR), and adds the final value to Temp Variable $87 (ADC $87).  Increasing it by 25%, exactly the same as Defence Up would do, if that were the thing being checked.  (Defence Up is checked in another part of the Weapon Damage algorithm, but that's another story...  :laugh:)

Changing this part of the mod as I outlined, the program will instead multiply the Accumulator by 2 (ASL), do the "round up to nearest" part, do nothing for 2 cycles (NOP, meaning No Operation), then add that result to Temp Var $87.  Doubling it.  Which doubles the petrified target's Defence Power.

Not sure if this explanation is too technical, or not technical enough, to be honest!   :crazy:

But having tried it myself, with a little addition to make testing it easier (doesn't really matter what that is), it seems to be bug-free.  I was a bit off the mark before, it's only a 2-command change.  Not 3.

If you're up for it, give it a try, and feel free to let me know if it worked for you or not.  I'll wait...  :)
« Last Edit: October 09, 2019, 06:19:18 pm by zoolgremlin »
If you try to fail, and succeed, what've you done?!

hmsong

  • Sr. Member
  • ****
  • Posts: 261
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #642 on: October 09, 2019, 09:14:49 pm »
@zoolgremlin

Hmm.  I just tried it, and I don't see the damage output difference.  I tried it against petrified Heck Hound, and the damage output seems the same as non-saber.  Maybe it's because I'm Lv99?

I assume the petrified enemies can't be killed, because of the other paragraph.

Hmm.  What to do what to do.  I want them to be killable, at least.

Vanilla: freeze + 50% damage, killable
Current: freeze + 25% damage, Def +25%, unkillable
I want:  freeze + 50% damage, Def x2 (or 1 damage), killable

Also, did Engulf (and maybe all SEs) always dispel Sabers?  Even in vanilla?

kethinov

  • Full Member
  • ***
  • Posts: 109
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #643 on: October 09, 2019, 09:24:20 pm »
"Sheex is a Master Ninja" now with a zeroed out chest drop chance: https://www.romhacking.net/hacks/4709/
« Last Edit: October 09, 2019, 10:29:17 pm by kethinov »

zoolgremlin

  • RHDN Patreon Supporter!
  • Full Member
  • *****
  • Posts: 130
  • Steam Profile Name: keeperofcastlegreydusk
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #644 on: October 09, 2019, 09:31:50 pm »
Did you get a chance to check the base Defence scores of monsters and bosses in my "Documents"?  You'd be surprised how many of them have a score of 0 or very close to it.  That's a Vanilla fault... it does amaze me somewhat that almost nobody considers this a problem worth fixing or even knows about it.  Ah well, what can you do?  My so-called Shortlist may eventually hit upon the solution for that.  Any decade now...  :laugh:

Also in Vanilla, monsters and bosses only ever have either 0 Eva% or 99 Eva%.  That also affects damage taken by attacks.  It is part and parcel of the same (EDIT) weird, difficult-to-decipher game design, that Square keeps churning out.  They're storytellers (EDIT) and businessmen, not game-design masters.  Which is why I'm only half-hoping they don't screw up the battle system, (EDIT) for a second time, in the Trials of Mana Remake.  But that's off-topic, technically.   :)
« Last Edit: October 10, 2019, 12:17:03 pm by zoolgremlin »
If you try to fail, and succeed, what've you done?!

hmsong

  • Sr. Member
  • ****
  • Posts: 261
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #645 on: October 09, 2019, 09:33:53 pm »
@zoolgremlin

Ahh.  So that's what happened.  Hmm.  Maybe instead of x2, perhaps +100 Defense would be better.  Don't know if that's possible though, in programming sense.


@kethinov

Thank you for the update.  I hope it doesn't affect the Master Ninjas from the Mana Fortress.

zoolgremlin

  • RHDN Patreon Supporter!
  • Full Member
  • *****
  • Posts: 130
  • Steam Profile Name: keeperofcastlegreydusk
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #646 on: October 09, 2019, 09:40:40 pm »
hmsong:  Oh, whoops.  Forgot to reply to the other bit... as far as I know, both characters and monsters are still killable while Petrified.  The only catch is that AI-controlled characters and monsters do not (EDIT) directly attack Petrified targets, not with physicals anyway.  It's kinda like the Petrified target temporarily stops existing, as far as the game is concerned.  So I would just use the character I control to finish off monsters while they're "stoned", harhar...  ::)
« Last Edit: October 10, 2019, 10:49:33 pm by zoolgremlin »
If you try to fail, and succeed, what've you done?!

kethinov

  • Full Member
  • ***
  • Posts: 109
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #647 on: October 09, 2019, 09:41:36 pm »
Thank you for the update.  I hope it doesn't affect the Master Ninjas from the Mana Fortress.

It won't. This is hardcoded to zero out the chest drop chance in that single fight.

hmsong

  • Sr. Member
  • ****
  • Posts: 261
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #648 on: October 09, 2019, 10:07:07 pm »
hmsong:  Oh, whoops.  Forgot to reply to the other bit... as far as I know, both characters and monsters are still killable while Petrified.  The only catch is that AI-controlled characters and monsters do not attack Petrified targets, not with physicals anyway.  It's kinda like the Petrified target temporarily stops existing, as far as the game is concerned.  So I would just use the character I control to finish off monsters while they're "stoned", haha...  ::)

@zoolgremlin

I used Stone Saber to test the petrify on Heck Hound.  They don't die.  Try it.  You see it being damaged, but they just don't die.  I even tried with spells that do 500+ damage, and that didn't kill them either (I kept refreshing Petrify by hacking away the dog with Stone Saber, so that Petrify doesn't wear off).  Even Howlers, who have far less HP.

zoolgremlin

  • RHDN Patreon Supporter!
  • Full Member
  • *****
  • Posts: 130
  • Steam Profile Name: keeperofcastlegreydusk
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #649 on: October 09, 2019, 10:23:37 pm »
hmsong:  Sounds like we have another mystery on our hands!  Uh... sounds like something Fred would say on "Scooby Doo"...  :D
If you try to fail, and succeed, what've you done?!

hmsong

  • Sr. Member
  • ****
  • Posts: 261
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #650 on: October 10, 2019, 12:07:30 am »
@kethinov

I must say... I really appreciate your patches.  You have so many useful patches that makes the game better in one way or another.  Even your No Missable Monster patch, which I stopped using after I discovered Turbo's Pure Land access... I'm using it again, just to test my Grave Flare spell (I'm still failing to get that right, but that's besides the point).  So thank you.

kethinov

  • Full Member
  • ***
  • Posts: 109
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #651 on: October 10, 2019, 12:11:43 am »
I'm gonna be releasing an updated version of that one too based on the conversation we had over email. You had lots of great thoughts on it, but it will be one of the last ones I revise because I need lots of save states handy to test it effectively that I'm still in the process of making. That's why the other updates came first—I was able to get to those parts of the game faster in my latest playthrough.

I probably should have made a bunch of save files / save states that are anchored to various parts of the game a long time ago, but I never do it because tinkering with files while in the middle of a playthrough ruins the fun a bit for me haha.

hmsong

  • Sr. Member
  • ****
  • Posts: 261
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #652 on: October 10, 2019, 01:01:56 am »
Same for me.  I have 3 different srm files, just to test things out (4 slots per srm, so total of 12 saved files).

kethinov

  • Full Member
  • ***
  • Posts: 109
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #653 on: October 10, 2019, 02:52:56 am »
I'm trying to fight the new monster in the Mana Fortress and I don't think it's behaving in the way intended. It casts Fireball but the spell never hits me. It also never does melee damage, nor can I hit it with weapons. When I cast spells on it, I see glitchy graphics and then it disappears.

Mr X

  • Full Member
  • ***
  • Posts: 126
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #654 on: October 10, 2019, 03:12:10 am »
I'm trying to fight the new monster in the Mana Fortress and I don't think it's behaving in the way intended. It casts Fireball but the spell never hits me. It also never does melee damage, nor can I hit it with weapons. When I cast spells on it, I see glitchy graphics and then it disappears.

You can't damage it physically and that's the only spell, however it worked before and it sure did a lot of damage. You are supposed to take it down through "different" means.

teahouser

  • Jr. Member
  • **
  • Posts: 96
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #655 on: October 10, 2019, 03:26:37 am »
Hey guys I have a question. I'm playing through and noticed that X isn't bringing up my allies menus, is that normal for turbo?

hmsong

  • Sr. Member
  • ****
  • Posts: 261
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #656 on: October 10, 2019, 03:34:02 am »
@kethinov

The snowman enemy is immune to melee attacks, but it also lacks any melee attacks of their own.  Their fireball missing is probably due to your Reflect status (cast Dispel Magic on yourselves and see if it still doesn't work).  I don't know about their immunities against magic.  I think they just don't take any damage from anything, ever.  And they're immune to all SEs, except one (more on that later).  And they run away after a while.

As Mr X mentioned, there's really only one way to damage them: 
Spoiler:
Change Form, then do damages.  I heard they're vulnerable to Evil Gate, but I don't know if that's true.

Also, would you be willing to take over my Grave Flare spell exchange, and make that into reality? (Speed Up <--> Fire Bouquet)  The effects can remain the same (Grave Flare is <damage + Atk down>), for the non-Turbo people in Romhacking (they have no access to Inferno Barrier, so Primm's other Salamando spell would still be an attack spell).  I'm having a rather tough time trying to change enemies to target the spells correctly, and I'm failing.  I'm feeling rather frustrated with all my failures.  I also completely failed to edit the spell graphic (I changed the animation pretty easily, but I can't change the colors without screwing up the animation).  You can have all the credit, of course.

      Vanilla            My intent
      --------         --------
Chess Knight   Speed Up (Gnome, self)      Grave Flare (Gnome, one-enemy)
Ghoul      Speed Up (Gnome, self)      Grave Flare (Gnome, all-enemies)
Imp      Fire Bouquet (Salam, one-enemy)   Speed Up (Salam, all-ally)
Spikey Tiger   Fire Bouquet (Salam, enemy)   Speed Up (Salam, self)
Mech Rider 1   Speed Up (Gnome, self)      Speed Up (Salam, self)
Mech Rider 2   Speed Up (Gnome, self)      Speed Up (Salam, self)
Mech Rider 3   Speed Up (Gnome, self)      Grave Flare (Gnome, all-enemy) <-- He would attack OFTEN with this spell (due to AI trying to cast Speed Up on himself), making him quite challenging, in a good way.

I can give you my progress (name change, spell menu change (plus color), spell animation (minus color) change, and effect change), but I have a feeling that's really easy for you.  The stuff I failed to do (spell color, enemies use the correct target) is probably the hard part... maybe.  I also made Salamando's remaining attack spell, Fire Wall's PWR from 33 to 43 (don't want Salamando's attack spell to be weaker than Gnome's).

For the Dark Stalker in the Emperor's room, was there any reason you put only 1 Dark Stalker, instead of 3?  If I remember correctly, there were 3 Dark Ninjas in that room.



@Queue

Is there a way I can edit [Quick_Recovery]?  While I like that they get up quickly, they're getting up WAY too quickly.  Even with double stamina regen, enemies are getting up faster than that.  I want to make them (and consequently PC) get up slightly slower (but obviously faster than vanilla).  I looked at the codes, but I have absolutely no idea how to edit it.
« Last Edit: October 10, 2019, 09:44:23 pm by hmsong »

Queue

  • Full Member
  • ***
  • Posts: 237
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #657 on: October 10, 2019, 04:03:17 am »
teahouser, Quality_of_Life\Equip_2nd_Weapon overrides the X hotkey to be a weapon swap hotkey. You can still access teammate menus by going to your character's menu first (using Y) and then pressing X. And obviously if you don't use the weapon swap feature, or just can't cope without one-button teammate menu access, you can just disable Equip_2nd_Weapon.

hmsong, that's why Quick_Recovery is off by default, I didn't like how it worked either. If you want to do some simple experimenting, search for INS_KnockBackTimer; you'll find:
Code: [Select]
@OFF INS_KnockBackTimer
'NOP
'NOP
BRA $02
NOP
NOP
LDA #01
My guess is you can change that #01 value to larger numbers to increase the recovery time. Probably. It's not like I've tried, and I didn't make this feature and have never looked at exactly what it's doing, but I bet it's replacing a value based on damage taken with a fixed value (of 1). Make sure not to change that $02 unless you want the game to crash.

- Edit: I took a quick glance and I think valid values are #01 through #06. It's probably some sort of stun duration time value. Vanilla logic uses the incoming damage value and divides it by 8, then caps it at 6. Which damage animation to play is based on if incoming damage is >= 25% of max health.

Not sure regarding petrified enemies not taking damage. I didn't do that on purpose, so will need to look into it.

Regarding frostied enemies, I don't know what mechanism prevents casting on them, but it's almost definitely for the same reason they're melee immune: they don't have a damage animation and causing them to try and play one vaporizes the enemy.

kethinov, their fireballs should be capable of hitting, so not sure what the issue is there, but otherwise that screwiness is intended. Their vaporizing looking glitchy is because that's vanilla snowman-taking-damage animation glitchiness (as is melee immunity), but I just rolled with the limitations. When I revisit them and build a snowman animation table I should be able to at least get rid of the visual jank but will likely keep the weird fight mechanics. Almost all of their animations are screwball; their "idle" wiggling is actually the highstepper idle blinking animation. Their vaporizing is the cannon travel cannon fuse burning down. Their jump is... probably a moogled player whip post jump? I didn't verify that one.
« Last Edit: October 10, 2019, 04:26:57 am by Queue »

Mr X

  • Full Member
  • ***
  • Posts: 126
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #658 on: October 10, 2019, 04:24:14 am »
@kethinov

The snowman enemy is immune to melee attacks, but it also lacks any melee attacks of their own.  Their fireball missing is probably due to your Reflect status (cast Dispel Magic on yourselves and see if it still doesn't work).  I don't know about their immunities against magic.  I think they just don't take any damage from anything, ever.  And they're immune to all SEs, except one (more on that later).  And they run away after a while.

As Mr X mentioned, there's really only one way to damage them: 
Spoiler:
Change Form, then do damages.  I heard they're vulnerable to Evil Gate, but I don't know if that's true.

Also, would you be willing to take over my Grave Flare spell exchange, and make that into reality? (Speed Up <--> Fire Bouquet)  The effects can remain the same (Grave Flare is <damage + Atk down>), for the non-Turbo people in Romhacking (they have no access to Inferno Barrier, so Primm's Salamando would still be an attack spell).  I'm having a rather tough time trying to change enemies to target the spells correctly, and I'm failing.  I'm feeling rather frustrated with all my failures.  I also completely failed to edit the spell graphic (I changed the animation pretty easily, but I can't change the colors without screwing up the animation).  You can have all the credit, of course.

      Vanilla            My intent
      --------         --------
Chess Knight   Speed Up (Gnome-self)      Grave Flare (Gnome-enemy)
Ghoul      Speed Up (Gnome-self)      Grave Flare (Gnome-enemy)
Imp      Fire Bouquet (Salam-enemy)   Speed Up (Salam-ally)
Spikey Tiger   Fire Bouquet (Salam-enemy)   Speed Up (Salam-self)
Mech Rider 1~3   Speed Up (Gnome-self)      Grave Flare (Gnome-enemy) <-- He would attack OFTEN with this spell, making him quite challenging.

I can give you my progress (name change, spell menu change (plus color), spell animation (minus color) change, and effect change), but I have a feeling that's really easy for you.  The stuff I failed to do (spell color, enemies use the correct target) is probably the hard part... maybe.  I also made Salamando's remaining attack spell, Fire Wall's PWR from 33 to 43.



@Queue

Is there a way I can edit [Quick_Recovery]?  While I like that they get up quickly, they're getting up WAY too quickly.  Even with double stamina regen, enemies are getting up faster than that.  I want to make them (and consequently PC) get up slightly slower (but obviously faster than vanilla).  I looked at the codes, but I have absolutely no idea how to edit it.

Spoiler:
Yup evil gate worked on them, firenado/hellfire should be able to work on them too.
« Last Edit: October 10, 2019, 05:20:35 am by Mr X »

hmsong

  • Sr. Member
  • ****
  • Posts: 261
    • View Profile
Re: Secret of Mana, Turbo - Beta 191006
« Reply #659 on: October 10, 2019, 08:59:13 am »
@Queue
Quote
Not sure regarding petrified enemies not taking damage. I didn't do that on purpose, so will need to look into it.

Regarding frostied enemies, I don't know what mechanism prevents casting on them, but it's almost definitely for the same reason they're melee immune: they don't have a damage animation and causing them to try and play one vaporizes the enemy.

Sorry, turns out that [Petrify=unkillable] thing happened after altering LSR in the codes.  Your version works just fine.  So... is there a way to make petrify victim's DEF stronger? (a lot stronger)  Also, which paragraph do I need to delete to keep the original vanilla's 50% damage?

Is Snowman damage animation necessary?  Don't all "Freeze" SEs not have damage animation?  They all just stay still, even when they get damaged.
« Last Edit: October 10, 2019, 09:58:00 am by hmsong »