Hmsong's non-SoM patches

Preserved from the legacy forum and rendered as a read-only archive page. Posting is intentionally not supported.

Starterhmsong
Started2020-01-03 08:41 UTC
Posts recovered237
Views in legacy forum58515

I'm thinking about creating a spell balance patch for Seiken Densetsu 3 (SNES), so that certain classes (of the same character) aren't inferior to another class.  Lise is especially guilty of this (two of her final classes don't even get the buff/debuff multi-target, for no reason), but there are plenty of others (Duran's Duelest and Paladin, Kevin's God Hand and Bashkar, Hawkeye's Rogue and Ninja Master, Angela's Delvar, Carlie's dark classes, etc etc).  The problem is, I have no idea what the addresses are for these.  I can create IPS and I can edit things using hex editors, but I need to know the specific addresses to modify these things.

So... does anyone have any idea which address contain this info?

as long as you are aware that that changes nearly nothing until you address the bigger problems like Kevin...

Spoiler

 

11BCC0 - Duran, base class
11BCD8 - Kevin, base class
...

11BD50 - Duran, Knight
11BD7C - Duran, Gladiator
...

11BF60 - Duran, Paladin skills
11BF90 - Duran, Lord skills
...

order is as you'd expect:
char wise Duran, Kevin, Hawk, Angela, Charlie, Lise (same as char select screen)
class wise: L/L, L/D, D/L, D/D

base classes have 6 entries each
first classes 11
final classes 12
4 bytes per entry
1st - targetting:
        00 mimic last used spell's targetting
        01 one
        02 always all
        03 one/all
        04 always self
2nd - required stat + value
    first  4 bit determine attribute; 4 = AGL, 8 = INT, A = PIE
    second 4 bit determine amount (0-15)
3rd - unused in vanilla
4th - which skill is learned

 

 

Wuw, thank you.  I shall try some editing and see how things work out.  I'll have to make a list of what code does what though, but your post really helps.  Thanks.

 

Wait, how do you "assign" spells to a class of a character?  For example, if I wanted to give Duran (Paladin) a multi heal, how do I do that?

these are not codes but the addresses in the rom.

9 hours ago, hmsong said:

Wait, how do you "assign" spells to a class of a character?  For example, if I wanted to give Duran (Paladin) a multi heal, how do I do that?

11BF60 - Duran, Paladin skills
so you could just put 03 00 00 21 as an entry there, 03 for target one/all and 21 for heal light.

Great!  Thanks.

Sorry, I had some problems with personal issues, but all of that is now solved (very well too).  Now, I can get back to hacking.

Okay, I'm looking at at vanilla addresses from 11BCC0 to 11BCD7 (Duran base), and I'm seeing the following:

11BCC0: 00 00 00 00

11BCC4: 00 00 06 00

11BCC8: 00 00 00 00

11BCCC: 00 00 00 54

11BCD0: 00 00 00 00

11BCD4: 00 00 00 06

So does that mean Duran can learn Vacuum Sword (54) and Diamond Saber (06) in his base class, with no requirement at all?  I don't understand how that works.  Or am I using the wrong ROM?  I'm using the english translated version.  If I'm using the wrong ROM, which one should I download?  Obviously, I'd want a rom which is compatible with Sin of Mana patch.

EDIT:  Hmm.  It seems that some roms are different from another rom.  I found a new ROM, and the address is what it seems to be.  The SFC version uses 11BCC0, whereas .SMC version must be using another address.  Which ROM do I use for the Sin of Mana?  Or does it matter?

Btw, the only "guide" I have is [Seiken Densetsu 3 PAR Codes and Hacking] by Paul Le and les1two (gamefaqs.com).  If you have any other guides I can use, I'd appreciate it if you can point me in the right direction.

Any help anyone can provide me is greatly appreciated.  Thank you.

@praetarius5018

Thank you so much.  Thanks to you, I was able to create my own balance-tweak patch (for vanilla).  Obviously, nowhere near as deep as Sin of Mana (I just changed the spell list and stats, so that some of the crappy class won't be as crappy as before).  I truly appreciate everything you taught me.

I know you already did this for Sin of Mana, but if I intended on creating a patch for enemies NOT countering any freezing screen techs, would you be willing to help?  I feel like that's the biggest drawback of the original game, since it made half of the magic and all techs useless.

You could try replacing $D0/C62B 20 65 C6 with EAEAEA - that is no jab at a certain company for once - to skip the whole logic.
At least I think that was all that is needed.

Wait, seriously?  That's all it takes?  Just 3 bytes?  Holy crap.

I can't help but ask.  How do you know all this?  Were you one of the creators for the original game or something?  Hot damn.  How can you possibly know which address contains what?  I mean, I can open up a game in hex editor to see the addresses and values, but I have no idea what any of the codes mean, nor which address does what.  And I definitely can't create something that didn't already exist in the game (such as Sin of Mana's awesome equipment tweaks).

Btw, which program do you use to create IPS files?  Right now, I use hex editor (HxD) to open up a ROM, and manually change the codes, then use Lunar to create the IPS, but I have a feeling that it's a very ineffective way to create a IPS file (and way too many possibilities of errors).

9 hours ago, hmsong said:

I can't help but ask.  How do you know all this?

nearly 6 years of work with a debugger on the game.

9 hours ago, hmsong said:

Btw, which program do you use to create IPS files?  Right now, I use hex editor (HxD) to open up a ROM, and manually change the codes, then use Lunar to create the IPS, but I have a feeling that it's a very ineffective way to create a IPS file (and way too many possibilities of errors).

exactly the same.
once you do bigger code changes you might want to pickup something like asar.

Okay, so far, I made hacks for stat balance, magic balance, and the enemies don't counter attack every time you use a screen freezing attack spell.

I'm sorry to ask you (again), but would you help me to create the "run on the battle" hack?  That always bothered me, since the AI allies were able to run, but your controlled characters couldn't.  I know Sin of Mana used B for running, and Y for the tech (Y was unused in battle, so that was a brilliant idea).  I intend on doing the same thing.  Obviously, this is your idea from Sin of Mana, so unless you give me your permission, I will not release the hack to the public.  But I still want it for my own private use.

I have a feeling that this is going to be one of those "bigger code changes".  I'll learn how to use asar.  It can't be that hard to learn.

Nope, sorry, that's one where you'll have to work a bit more with a debugger.

Also don't forget that Y will be used when battle ends to enter the menu so you have to change something there as well or players will be annoyed when they try to use a tech, and AI ally kills the last enemy and they enter the super slow menu.

Hmm.  you mentioned this before too, but I don't exactly know what a debugger is.  I know what a debug room is (it was in gamefaqs.com), but I don't' think you're referring to that.  How would I use a debugger to create a running in battle patch?  Or is that something more... advanced than all the stuff I did?  Am I just going over my head?

Yeah, you're right about the Y button.  That would indeed be annoying.  I figured making it Y+B (like Sin of Mana) would be even more difficult than it already was, but I suppose if I had the skills to program the stuff that didn't already exist in the game, I wouldn't have that problem with just assigning buttons to stuff.

Now that I think about it, I'm sure you have mixed feeling about teaching me about the battle run tweak.  I mean, it's one of the signature features of Sin of Mana -- I'm sure you wouldn't want to give that away.  Sorry for asking about that.

@praetarius5018

I wanted to avoid starting another topic, so I'm continuing from here.

I released a balance patch several days ago, and some people have asked if I can release a patch that only fixes the bugs, but not change anything else.

They made a good point, so I'd like to do that (in fact, since I'm done with the balance patch, I'll just focus on the bug fixes -- at least, the ones I can fix with my limited skills).  Starting with what you told me -- Kevin's unlimited strength (that seems to be the most critical game-breaker).  Could you please help me with that?  What do I do to fix that?  I know that Kevin can be powered up infinitely using the Wind Drum in his werewolf form.  You also told me that Kevin doesn't get stat boost if he levels up in his werewolf form.  Are those two bugs one of the same? (as in, if you fix one, you fix the other)

3 hours ago, hmsong said:

Could you please help me with that?  What do I do to fix that?

You'll have to get busy with a debugger for that, there's no quick and easy solution for that.
What I did was to force a stat recalculation on screen transition. Should be the part where the game checks for dead party members and revives them to 1 HP if necessary.
That circumvents most of the issues with those 2 bugs as they last at most until the end of the current screen.

Damn, I have no idea how to use a debugger.  Or even know what it is (I googled it, but I don't really understand it).  I mean, it's obviously for hacking (or to analyze the game), but I have no idea how to go about that.

Are there any quick fixes for the following bugs?

  • Critical not working
  • Dex not working
  • Spell casting wait time can be canceled with the Pause button.
  • Burn status effect not working

I'm sure there are more bugs, but I don't know any.  Also, do vanilla shields do anything, other than raising the EVA stat?  I heard that they resist certain elements or something (all the element shields sold in Forcena), but I couldn't exactly test that.  Or maybe they're supposed to, but that's not working due to yet another bug?

Thanks in advance.  And I'm sorry to bother you all the time.

40 minutes ago, hmsong said:

Are there any quick fixes for the following bugs?

  • Critical not working
  • Dex not working
  • Spell casting wait time can be canceled with the Pause button.
  • Burn status effect not working

No, functionality for those doesn't exist and would have to be added, so nothing simple as just uncommenting the call for the ASM equivalent of checkAIreaction(); as above.

41 minutes ago, hmsong said:

Also, do vanilla shields do anything, other than raising the EVA stat?  I heard that they resist certain elements or something (all the element shields sold in Forcena), but I couldn't exactly test that.  Or maybe they're supposed to, but that's not working due to yet another bug?

Vanilla shields actually have 2(!) functions:
-they waste your money
-they change Duran's sprite (technically the game checks if there is anything in the shield item slot, not necessarily for a shield)

13 hours ago, praetarius5018 said:

No, functionality for those doesn't exist and would have to be added, so nothing simple as just uncommenting the call for the ASM equivalent of checkAIreaction(); as above.

Vanilla shields actually have 2(!) functions:
-they waste your money
-they change Duran's sprite (technically the game checks if there is anything in the shield item slot, not necessarily for a shield)

First, thank you for answering my question.  It's too bad that I don't have the skills to fix any of the bugs.  I'm so sad.  I would like to learn how to do these.  Any recommendation on where to start?  A guide?  A specific app?  Any help would be appreciated.

Second, LOL!!  Shields ultimately don't have any actual practical purpose in the game? (due to bug)  Yikes.  But I loved your sarcastic comment.  Thanks for that.  That was funny.

Third, someone today emailed me a link to your long-time-ago work:

http://ngplus.net/InsaneDifficultyArchive/www.insanedifficulty.com/board/index567c.html?/topic/6274-fix-only-patch/

I took a look at the patch using IPSPeek, and my god, I didn't understand any of it (seemed very complicated).  This is way way beyond anything I can do.  Having said that, some questions:

  1. Regarding Energy Ball critical hit, I know that after the bug fix from your patch makes the crit to 50%, but how do does that work?  I know that you made Sin of Mana into 10%.  I'm guessing you adjust the crit at $D19BF7, but I also remember you telling me that Energy Ball ignores what crit rate you had before, and sets it to 50%.  So let's say I adjusted D19BF7 tp 0A (which is 10%, which is the same as Sin of Mana -- I don't know where you adjusted for Sin of Mana, since it doesn't seem like you adjusted anything in D19BF7).  Now, let's say Hawkeye has Luck of 18 (so your bug-fix patch will make his crit rate to 20%, right?).  So, if I were to cast Energy Ball to Hawkeye, would his crit hit rate actually go DOWN to 10%?
  2. Quote

    -corrected issue with level-ups where max stats were sometimes those of later levels

    I don't know what that means.  Were there cases where you can reach max level stats early or something?

  3. You said in one of the posts:
    Quote

    You're mixing two things up:
    get-hit bonus and transformation bonus

    If Kevin gets hit, he simply gets the normal power-up spell effect. That seems to be intended as the byte for "has power up buff" is set when he transforms (I removed it in the regular hack).
    This is properly removed when you call flammie as it doesn't modify base attack, only the derivated value.


    When Kevin transforms into a wolf, he gets a well-known 1/7 bonus to his base attack.
    This overwrites his base attack. His original base attack is stored in a backup variable.
    Normally, when he transforms back this backup is loaded and stored as his base attack, so all is back to normal.
    But if you call flammie while he is in wolfform this is not executed; his current base attack keeps the wolfbonus.
    So when you land and transform again, you get another 1/7 on top of that and the original base attack is overwritten with the base attack that has 1x wolfbonus.
    Repeat until he reaches 370 base attack - that is a cap solely present for wolf-Kevin.

    This lasts until his attack is recalculated; in vanilla this is only the case on level up (just be in wolfform then to avoid the loss...) or when you go weapon shopping as Kevin (why would you need to?)
    So my fix is simply to force recalculation on every map transition.

    So, does the bug-fix patch (not Sin of Mana patch) fix any of the Kevin bugs?  I'm not sure which one you meant by "regular hack" in the 2nd paragraph and "my fix" at the end.  Are you referring to Sin of Mana hack or bug-fix hack?

  4. Quote

    change $D2:C9AF (12C9AF in a hexedit of an unheadered ROM) to 00 to disable Kevin's auto-power up

    Which auto-power up are you talking about?  The one where Kevin can stack his werewolf powerup?  Or the one you mentioned as "(I removed it in the regular hack)"?

Whew, that was a lot.

12 hours ago, hmsong said:

LOL!!  Shields ultimately don't have any actual practical purpose in the game? (due to bug)  Yikes.  But I loved your sarcastic comment.  Thanks for that.  That was funny.

I'm not sure it is a bug really, like crits I suspect their effect was removed on purpose since physical combat was obviously OP enough and having near god mode shields vs most mono-elemental endgame bosses with no drawback is obviously too powerful.

12 hours ago, hmsong said:

Regarding Energy Ball critical hit, I know that after the bug fix from your patch makes the crit to 50%, but how do does that work?  I know that you made Sin of Mana into 10%.  I'm guessing you adjust the crit at $D19BF7, but I also remember you telling me that Energy Ball ignores what crit rate you had before, and sets it to 50%.  So let's say I adjusted D19BF7 tp 0A (which is 10%, which is the same as Sin of Mana -- I don't know where you adjusted for Sin of Mana, since it doesn't seem like you adjusted anything in D19BF7).  Now, let's say Hawkeye has Luck of 18 (so your bug-fix patch will make his crit rate to 20%, right?).  So, if I were to cast Energy Ball to Hawkeye, would his crit hit rate actually go DOWN to 10%?

Vanilla energy ball sets a derived luck value to 50, by default it is same as luck, not sure if a few weapons had a bonus for that or if that was my own creation at this point.
This value is never used anywhere but it is likely that that was the intended crit rate.
In the fix only patch I changed that to base luck value+10 so that luck investment has a purpose again.

I've no idea what $D19BF7 is supposed to be, that is so far off the mark as to not even be funny. Like millions of bytes.

12 hours ago, hmsong said:

I don't know what that means.  Were there cases where you can reach max level stats early or something?

Oh that is one of the BEST glitches in vanilla - hf fixing that >.>

The game tracks TWO values for your level. One for onscreen display, one for internal use.
The later goes up by 1 every time an enemy dies and you have enough exp to level up.
Take a guess what happens when you kill 2-3 enemies at the same time and the first was enough to trigger the level up.
Your current stat cap is determined by the internal value.
This cap is supposed to only go up by 1 every 3 levels but this glitch makes it possible to take e.g. STR all the way to the hard class cap without taking useless stats in between.

12 hours ago, hmsong said:

So, does the bug-fix patch (not Sin of Mana patch) fix any of the Kevin bugs?

It should prevent the attack stacking.

12 hours ago, hmsong said:

Which auto-power up are you talking about?  The one where Kevin can stack his werewolf powerup?  Or the one you mentioned as "(I removed it in the regular hack)"?

When Kevin transforms the game gives him the power up buff for free.
He doesn't get the attack increase yet, that only happens when the game feels like updating character stats, e.g. after taking a hit that could potentially inflict stat altering flags.

Quote

Vanilla energy ball sets a derived luck value to 50, by default it is same as luck, not sure if a few weapons had a bonus for that or if that was my own creation at this point.
This value is never used anywhere but it is likely that that was the intended crit rate.
In the fix only patch I changed that to base luck value+10 so that luck investment has a purpose again.

Vanilla Energy Ball was:  B5 00 62 0D 01 41 06 B4 09 40 00 00 00 40 32 00 00 <<--- 32 is where $D19BF7 was.  I figured 32 represented the 50% or something.

And my balance patch has:  B5 00 62 0D 01 41 07 96 08 40 54 54 00 00 00 00 00 (all stat up)

So if I were to apply your bug fix patch after my balance patch was applied, would that overwrite the all stat up (meaning, canceling the stat up), or would Energy Ball have all stat up + crit up?  Obviously, I prefer the bug patch to cancel out the stat up, but I can't tell.  I don't have a save file with Energy Ball.

Quote

It should prevent the attack stacking.

So the bug-fix fixes Kevin from stacking the power.  Does it also fix Kevin's werewolf form not getting the stat up from level ups?

Quote

When Kevin transforms the game gives him the power up buff for free.
He doesn't get the attack increase yet, that only happens when the game feels like updating character stats, e.g. after taking a hit that could potentially inflict stat altering flags.

Maybe I'm misunderstanding something.  So if I change $D2:C9AF to 00, that would make the werewolf form's attack power and non-werewolf form to be the same power? (aka making werewolf form meaningless, at least in terms of damage output)

...I'm not interested in further discussions of a patch I wish I'd have never made in the first place.
It wasted a lot of time, attracted some annoying people which wasted even more time and didn't produce anything I care about at all - I shoulda learn to say no, really...

If I had any say in the matter in the matter I'd just make that fix-only version disappear completely.

On 5/3/2020 at 7:11 AM, hmsong said:

I released a balance patch several days ago

I'd have been ok if the no enemy counter thing was a small part of a proper project
but as it turns out I did 100% of the work
which I'm NOT ok with.

That's true.  I'll get rid if it.  I hope you accept my sincere apologies.  I'm sorry.

Also, if you wanted that bug patch to disappear, why not just get rid of the link?  Isn't that in your power, as the original creator? (not that I would want you to)

No, people have already downloaded it so even if that link wasn't there anymore they could still pass it around.

I really am sorry.  How do I make up?

I don't think too many people downloaded my patch (which I confirmed is down now).  And people generally post link (just like how a guy sent me a link), rather than pass around the patch via attachment.  Also, I advertised your Sin of Mana patch in my balance patch, but should I not advertise the bug-fix patch?  I was intending on doing that for the next update, but I'll not do that if you don't want me to.

Hmsong, are you aware that Speed Up does nothing in the vanilla game? Since Evade and Accuracy do nothing in the original game, there's no point ever casting Speed Up. Maybe you could make Speed Up decrease spell casting time, and the other way around for Speed Down?

That's an excellent idea, but I have no idea how to do that.  I know how to reduce the cast time for each spells, but I don't know how to make Speed Up decrease the cast time for the target character.  And this seems like one of those "things that don't exist in vanilla" that praetarius5018 said before, so that is even more difficult to do.  The only thing I can do is change the existing logics that's already present in the game.  And even that depends on if I already know what I'm looking for.

 

@praetarius5018

I don't know if you're still willing to help me, but if you are, would you please tell me the values for the usage items? (consumables and magic items)  I'm guessing they are 2 bytes, since there are more than 256 items, if you included equipments.  I'm intending on making a new item shop patch, but I don't even know which values goes with which items, so I can't even search for anything.

Not sure which values you are looking for, can you elaborate?

For example, item shops sell things like Round Drop, Pakkun Chocolate, Puipui Grass, etc.  What are the values for those?  And in the black market, they sell magic items and throw items -- I would love to know the values for those too.  What are the values for those?  Based on the PAR guide in gamefaqs.com, Bronze Sword is 2C39 (item in the storage code), but I'm not entirely sure if that's even reliable.  And it didn't have the values for the usable items either.

Well, I'm not gonna touch the equipment shop, but I wanted to change the shopping items for all item shops (similar to what I did for Secret of Mana patch in Queue's Turbo pack -- I was only able to do that, because Queue told me the shop addresses and the value codes of the items).  I don't know how hard it is to overhaul the shops, but I wanted to try -- specifically, add one magic item or throw item in all shops, to make those item shops unique.  Well, maybe just the big towns.

Of course, I'd love to know the addresses for all item shops too, if you're willing to go that far to help me.

I can break your hopes here;
item shops are the same list for all regular item shops except the one in the tutorial I think.

Go into a shop and open the buy ring menu, look up the value at 7E2F00 (1 byte).
Double that value and add CFE880.
That is the 2byte pointer in the ROM to the shopping list.

E.g. 7E2F00 holds 0x05 so look at CFE88A, 54 E9, so the shop data is at CFE954

Each item entry has 3 bytes.
1st item id
2nd required char code;
    weapons: 04 - Duran, 08 - Kevin, 10 - Hawk, 20 - Angela, 40 - Charlie, 80 - Lise
    armor: 05 - Duran, 09 - Kevin, 11 - Hawk, 21 - Angela, 41 - Charlie, 81 - Lise
    consumable: FE
3rd required class code: 7F - any, 1A - light only, 64 - dark only

A shop terminates if the item id is 0.
Shops with 0 or 13+ displayed items glitch the game out.

Oh damn it.  So much for my brilliant idea.  I really thought I had something there.  Sigh.

Okay, I went to Maia, and the opened up the item shop ring.  The value of 7E2F00 is 17.  So 17 x 2 = 2E.  Add that to CFE880 is CFE8AE.  The 2 byte values at that address is 16 EE.  So I'm guessing the shop data for Maia item shop is at CFEE16?  The first 3 bytes from that are 53 FE 7F, so I'm guessing Round Drop is 53?  Do I understand correctly so far?

Then is there a way to expand the items that are being sold in the regular shops?  I want to at least add Dreamsee Herb.  And/or Item Seed.

 

That info applied to all shops, as long as don't want to add more options than is already has you can replace all of them.

Sorry, I just editted my reply.  The question was, is there a way to expand the items for the regular shop?  If spaces are necessary, then I have no problem with using tutorial shops as regular shops.  Okay, I think I got that figured out.  My god, the weapon/armor shop is ridiculous.  Good thing I'm not gonna mess with that craziness.

Also, for the 3rd byte for the item entry in the shop, what is 7E?  Some of the entries have 7E for the 3rd byte.

Now, I realize that the seeds are way too cheap.  Do you know which addresses adjust the price for the seeds?

dunno, those 3rd bytes are not bit masks to my understanding. maybe 7e is any promoted?

price index:
Item seed D1ABDF
Mysterious seed D1ABF0
Fly Item seed D1AC01
Magic seed D1AC12
??? seed D1AC23
W/A Seed D1AC34

D1D3E3-D1D62B (no header rom)are  price of all items . 

 

But literally ALL items.
This should be the list all of the indeces go to so if you change the price for one "item" there you mess up prices of probably 2-10 more items.

Outstanding.  I can work with that.  Thanks.

Okay, that's weird.  I took a look at the addresses, and here's what:

  • Item Seed (D1ABDF): 0A 00
  • Mysterious Seed (D1ABF0): 1B 00
  • Flying Seed (D1AC01): 0A 00
  • Magic Seed (D1AC12): 11 00

The buying price for the items are:

  • Item Seed: 5 Luc
  • Mysterious Seed: 40 Luc
  • Flying Seed: 5 Luc
  • Magic Seed: 18 Luc

Hmm.  I don't see any pattern here.  For Item Seed and Flying Seed, I just divide the hex number by 2, but the other two are all wrong.  What am I missing?

You know, I checked out your patches.  They're quite decent.  Based on the compatibility (and your comment about the failed Freeze Breath), I'm guessing you specifically created them for the official Trials of Mana (and the fan translation compatibility is just a side effect).  You should probably say that in the document, just so people know why you created your patches in the first place.

I genuinely mean no offense (I'm so sorry if I offend you in what I'm about to say), but Sin of Mana is better than your patch in pretty much every single way.  In fact, I'm sure you realize it too.  The only thing your patch has over Sin of Mana is its compatibility towards Trials of Mana.  You should pitch your patch in that direction.  Don't get me wrong though.  I'm very grateful to you, because I only found about Sin of Mana from your patch document.  I'm just stating my opinion on how to sell your product.

Btw, maybe you should have Rainbow Dust also cause Trans Shape on all your allies (your v1.2 has only Life Boost).  Life Boost by itself is kinda boring and useless, since it wears itself out during the battle (I don't think Stat Ups or Saber wears off in vanilla until the battle is over).  Yes yes, Trans Shape wears out too, but it has cool effect (very useless in vanilla, due to how quickly it wears out).  Also, speaking of Trans Shape, 5 MP for that spell is just absurdly high.  It wears out so quickly, hence useless.  So unless you can change its duration time (similar to what Sin of Mana did), I suggest you to reduce its cost.

I could have PMed you on RHDN, but I felt that maybe others share my opinion.

8 hours ago, hmsong said:

What am I missing?

These are as mentioned price indeces not the prices directly.
Basically like index of an array.
They should refer to the list at D1D3E3-D1D62B.

10 hours ago, Soul Knight said:

I genuinely mean no offense (I'm so sorry if I offend you in what I'm about to say), but Sin of Mana is better than your patch in pretty much every single way.

The thing is, not everyone wants harder difficulty, death penalty, BS boss gimmicks that you have to guess out of nowhere (such as Dolan and Mispolm), not to mention Sin of Mana is way more tedious and grindy than the original game, and SoM 2.0 seems to be becoming even more tedious with its TP resource system. So I can totally understand why some people would just want class and ability rebalances without all the weird extra features and extra difficulty.

@Soul Knight

Actually, when I first started making SD3 patches, I didn't even know about the existence of Trials of Mana.  I simply created the balance patch, because I wanted to.  I wasn't satisfied with how the vanilla's balance was, so I wanted to balance it.  But of course, I didn't know anything about which address contained what, so I couldn't even start.  Even my hacking skills were VERY limited (it still is), so I was completely lost.  Then I learned about the existence of Sin of Mana.  I asked Praetarius5018 about where to edit what and so on, and he told me exactly where and how.  So I created a half-assed patch (for the sake of creating, and not for public release).  Then I played Sin of Mana, and I realized how pointless my patch was, so I stopped working on it (and due to my real-life issues at the time).  After my issues were dealt with and after reading through the discussion board, I realized the existence of Trials of Mana, and that it had significantly better translation.  So I picked up a rom for that to see if I can edit anything there.  And surprise surprise, many things were at the same location as the old J rom.  So I started working on the patch again, which worked on both the old SD3 and the new ToM.

No offense taken.  And I'm glad you found your way to Sin of Mana (that's why I put the link in my document).  I did say in my document that any suggestion is welcome.  And yes, I'm aware that my patch will never be as good as Sin of Mana, and as you said, my patch will most likely be for people who play ToM.  But I already said in my document that my patches are compatible with ToM.  I don't think I need to advertise any more than that.  It's not like I'm competing or trying to make money.  I just wanted to throw my patch into the world, that's all (for my my own ego).  Ultimately, I guess I just wanted to be a part of the hacker community who put out the "improvement" hacks, just so other people can appreciate the original game more.  And partly, I enjoyed many hacks from RHDN, and I wanted to return the favor.

Your suggestion on Rainbow Dust is actually doable.  Had you suggested to add Counter Magic or Aura Wave or something, I would not be able to, because I wouldn't know how.  But TransShape can be combined with Life Boost.  Thanks for the suggestion.  I shall add that.

As for your request to extend the duration for TransShape, I honestly don't know how to do that.  I didn't even test TransShape much, but after what you said, I tried TransShape, and oh my -- it really has short duration.  According to SoM document, the vanilla behavior is [25 - Luck].  That is indeed terrible (what were the devs thinking?).  I shall inquire Praetarius5018 if it's something that can be fixed easily (and if it's doable, then obtain permission to use the fix in my balance patch).

Posting your thoughts here works great.  In fact, I prefer it, since I can edit my reply.  And other people can respond too.  As long as the comments are civil, I welcome all opinions, even criticism.  That's how I make improvements after all.

 

@Praetarius5018

Ohhhh, so that's what you meant.  I didn't really understand, because the addresses were different, and I just figured it was a typo or something.  You're right.  I should indeed adjust the price by pointing to different index, rather than change the price directly.  If I adjusted the price directly, it would probably affect other items too.  Thank you.

Also, a question.  Do Stat Up/Downs, Saber, and Counter Magic have time limit?  I know Life Up/Down has time limit, but I couldn't tell if other buffs have time limits (or in Counter Magic's case, # of times of reflection).

Thanks to Soul Knight, I realized that vanilla TransShape is really crappy.  You obviously made the fix for Sin of Mana, but could you tell me how to make the TransShape have your logic, instead of the vanilla logic?  I would love to put that in my balance patch (with your permission, of course).  Is there some sort of quick fix for that?  Or is this one of those, "gotta expand the codes, and therefore incompatible with Trials of Mana" thing?

 

38 minutes ago, Serafie1999AD said:

The thing is, not everyone wants harder difficulty, death penalty, BS boss gimmicks that you have to guess out of nowhere (such as Dolan and Mispolm), not to mention Sin of Mana is way more tedious and grindy than the original game, and SoM 2.0 seems to be becoming even more tedious with its TP resource system. So I can totally understand why some people would just want class and ability rebalances without all the weird extra features and extra difficulty.

Thank you.  I'm glad that people enjoy my patches.

1 hour ago, hmsong said:

Thank you.  I'm glad that people enjoy my patches.

To be honest, I probably won't start a new playthrough of the SNES version any time soon. However, I'm interested in playing the 3D remake of Trials of Mana for Steam. There is already a difficulty rebalance mod that makes enemies harder, supposedly creating a much more satisfying game, and if you could additionally create a class rebalance mod, I'd definitely be interested in trying it out. I especially liked your idea of making Vanadis and Dragon Master more competitive with Star Lancer and Fenrir Knight, so it would be great if you could implement these changes on the 3D remake as well. I'm not sure how hard the game is to edit, but considering there's already several mods out after the game has been out for 3.5 weeks, I suppose the game is easier to edit than the SNES version.

5 hours ago, Serafie1999AD said:

BS boss gimmicks that you have to guess out of nowhere (such as Dolan and Mispolm)

I take offense at that one.

5 hours ago, hmsong said:

Also, a question.  Do Stat Up/Downs, Saber, and Counter Magic have time limit?  I know Life Up/Down has time limit, but I couldn't tell if other buffs have time limits (or in Counter Magic's case, # of times of reflection).

None of them do, HP Up doesn't have one either.
Are you ready for what actually happens?
Yes? Good.
Healing cancels the HP Up buff (flag) but only healing a second time forces a recalculation of your maxHP.

5 hours ago, hmsong said:

Thanks to Soul Knight, I realized that vanilla TransShape is really crappy.  You obviously made the fix for Sin of Mana, but could you tell me how to make the TransShape have your logic, instead of the vanilla logic?  I would love to put that in my balance patch (with your permission, of course).  Is there some sort of quick fix for that?  Or is this one of those, "gotta expand the codes, and therefore incompatible with Trials of Mana" thing?

There is a reason why they made it that way.
The timer calculation is shared between TransShape and sleep status.

If you want to remove the -Luck part change D0/D8D8 to EAEA
D0/D8D3 holds the base duration.

Quote

None of them do, HP Up doesn't have one either.
Are you ready for what actually happens?
Yes? Good.
Healing cancels the HP Up buff (flag) but only healing a second time forces a recalculation of your maxHP.

Are you serious?  Jeez.  That's... umm... I'm at loss for words.  I assume Stardust Herb/Anti-Magic dispels that though, right?  It's not some error where the devs misplaced the dispel effect on healing, right?  And I assume healing (2nd time) doesn't affect other Stat Up/Downs or Sabers, right?

Is there a quick fix for that one?

Quote

There is a reason why they made it that way.
The timer calculation is shared between TransShape and sleep status.

If you want to remove the -Luck part change D0/D8D8 to EAEA
D0/D8D3 holds the base duration.

Oh damn.  I thought Spirit is the one that dealt with status effect recovery.  Oh well.

May I please use the TransShape fix on my balance patch?  Of course, it will not be a stand-alone, and I will say that the fix was your work.

8 hours ago, hmsong said:

Are you serious?  Jeez.  That's... umm... I'm at loss for words.  I assume Stardust Herb/Anti-Magic dispels that though, right?  It's not some error where the devs misplaced the dispel effect on healing, right?  And I assume healing (2nd time) doesn't affect other Stat Up/Downs or Sabers, right?

If I remember right it removes all of HP/MP up/down, spell cost double/half and transshape.

No simple fix.

8 hours ago, hmsong said:

Oh damn.  I thought Spirit is the one that dealt with status effect recovery.  Oh well.

May I please use the TransShape fix on my balance patch?  Of course, it will not be a stand-alone, and I will say that the fix was your work.

Yes, it is indeed luck, the stat half broken and half detrimental to you.

Go ahead.

Hmsong, I'm glad what I said didn't offend you.  And you're welcome for the suggestions.

I see praetarius is helping you a lot.  If I had the skills to make my own hack, I would have.  Okay, that's a big fat lie.  I'm too lazy to make a hack, even if I had the skills.  So I appreciate people like you.

And while at it, why not include the agility and critical fix in your patch?  It'll help with spells not working properly (ex: Energy Ball).  Well, assuming there is a "quick fix" that praetarius is willing to help you with.

@praetarius5018

In vanilla, all seeds (Item Seed, Magic Seed, etc) heal all your character by 50HP.  Is there a way to change that?  Maybe change the healing amount to 1HP?  I want to include Item Seed in the regular item shops, but its Heal-Everyone-By-50HP effect would make it too powerful in the beginning of the game.  If I can't change the healing amount, then is there a way to target only one character, instead of all characters?

 

@Soul Knight

My balance hack is specifically for balancing, not bug fix.  I'm only including the TransShape fix, because of how bad vanilla TransShape is (which affects the balance of Ninja Master).  And it's the same for No Skill Counter -- without it, Angela is useless, except Rune Maiden (and that I cannot release it as stand-alone).

Agility and Critical don't play any part in balancing (in terms of class balancing).  As for Agility, it already plays a functioning role in the game -- power of throw weapons (and some skills).  True, it's not the most useful stat, but I intend on bettering that slightly by making Dart available in every single item shops (I will eventually release a patch that tweaks the item shop items).

And as for critical hits... if praetarius5018 is right about how critical hits throw off the balance in the game, then that's all the more reason to AVOID making critical hits exist in the game.  And I definitely don't want to see Hawkeye's non-buffed melee attacks having 20+% critical hit rate (it can be as high as 24%!!).  He's powerful enough as it is.  No need to make him even more powerful.  If anything, I want to make everyone's melee attacks less powerful (since it dominates most of the battle).

I made a separate Energy Ball patch (buffs all stats), specifically because criticals don't play any part in the game.

5 hours ago, Soul Knight said:

Well, assuming there is a "quick fix" that praetarius is willing to help you with.

Okay, this needs to be said.  Please don't ask on my behalf.  If you want to know, then you're free to ask him yourself, but what you said just now seemed like you were asking on my behalf.  That's just wrong, and I think you know that too.  Don't do that again.  If you really must say that, then please PM me directly, instead of posting that.

7 hours ago, hmsong said:

@praetarius5018

In vanilla, all seeds (Item Seed, Magic Seed, etc) heal all your character by 50HP.  Is there a way to change that?  Maybe change the healing amount to 1HP?  I want to include Item Seed in the regular item shops, but its Heal-Everyone-By-50HP effect would make it too powerful in the beginning of the game.  If I can't change the healing amount, then is there a way to target only one character, instead of all characters?

Items are the same as spells. In case of regular item seeds they are spell id 0x119, amount healed should then be at D1ABE6.

7 hours ago, hmsong said:

And as for critical hits... if praetarius5018 is right about how critical hits throw off the balance in the game, then that's all the more reason to AVOID making critical hits exist in the game.

If you don't believe me change D0CAE1 to EAEA and see every attack crit.
The math is quite simple, regular damage is atk-def.
Crit damage is (1.5x atk) - def, same as Lv1 techs.

Changing that is ofc. much more involved.

7 hours ago, hmsong said:

If anything, I want to make everyone's melee attacks less powerful (since it dominates most of the battle).

You'll have to get down to asm proper for that.

The game is programmed around a multiplier to atk before def mentality which makes every bonus super strong when atk is barely above def.

30 atk, 20 def, 33% power up? 10 -> 20 damage
250 atk atk, 240 def, same buff? 10 -> 92 damage, 820% extra

14 hours ago, hmsong said:

Okay, this needs to be said.  Please don't ask on my behalf.  If you want to know, then you're free to ask him yourself, but what you said just now seemed like you were asking on my behalf.  That's just wrong, and I think you know that too.  Don't do that again.  If you really must say that, then please PM me directly, instead of posting that.

Now that I look back at what I said, you're right.  I can see why you read it that way.  I didn't mean to do that.  That was weird of me.  Sorry about that.  Won't happen again.

Okay, I get why you don't want critical hits.  Personally, I don't find criticals to be such a big deal, but I never played the "bug fix" version.  I only played the original and SoM.  And I'm personally very much for "make your characters OP, and you get to destroy all your enemies while laughing like a maniac, and you get to experiment different ways to rip your enemies apart" thing.  It's one of the main reasons why I loved Castlevania SotN so much.  This game is all about "trying new methods" to kill your enemies (character, class).  I don't see why you'd take away the means to destroy your enemies.

But you should still try to make agility work, because vanilla Speed Up/Down are literally useless spells, which will affect the balance of whichever class that has those spells (that technically affects the balance in some way).  I know it says that Acc/Eva changes, but we already know that acc/eva don't work.  Besides, since you want to make melee attacks less powerful, having agility work would be good, since it'll make melee attacks miss from time to time (the vanilla game makes melee attacks have 100% accuracy or something).  And it'll make shields actually do something productive, which is a part of balance of Duran's L classes.

@praetarius5018

Ohh, awesome.  Now, I can implement Item Seed to the shop (just changed 32 to 01).  Thanks.

You were right.  Criticals are... more than what I'd bargain (not that I doubted what you said).  I wouldn't mind implementing Criticals if the frequencies were significantly less (max 10%), but 20+% by the end of the game is just too much.  And I'm not going to lower the cap on Luck stat, since that affects the traps in the chest.  And normal enemies doing criticals on you was... less than likable (my allies died way too quickly).  Hell, I can already tell that getting mobbed by moderate normal enemies would end up killing you (which is just ridiculous).

Btw, you said that TransShape and Sleep SE share the same duration time.  What about Freeze and Petrify?  Does that share that same code?  Or is it different code?

Sigh.  I'm sorry to ask you again, but could please you help me to make Acc/Eva work?  Soul Knight had me convinced.  I'm sure it's more complicated than anything I've done before, but if it's doable, then I'd like to try as much as I can.

 

@Soul Knight

Wow, you make a compelling argument about Agility.  I forgot about Speed Up/Down spells, despite Serafie1999AD said above that Speed Up/Down not working properly (and therefore literally useless).  Boy, my mind is wondering off a lot these days.  And you're right.  Enabling Acc/Eva probably would make melee attacks weaker (less frequency of hits), which is in line with what I want.  But that probably applies to enemies too.  I think someone somewhere said that most normal monsters don't have any accuracy, and therefore would make high EVA characters (such as Duran with shield) immune to normal attacks.  Well, I can just lower the EVA bonus from all shields to fix that.  But I think someone said that Jewel Eater and Gorva has very high EVA, which would make them impossible to hit with the normal attacks (softlock, unless you have Angela or some ways to attack them with screen freezing skills).

This is something I'll have to test and see.  Even if AGI works properly, there are probably some additional "corrections" that need to be done.  I think praetarius5018 mentioned that somewhere (I think that was from an older board).  This is going to be a tough work, but it'll be worth it, since it'll have Speed Up/Down actually do something, and it'll make Shield actually do something.  Unless it's something beyond my ability.

In any case, thank you for bringing that up.  I can't guarantee that I can implement ACC/EVA though, whether due to lack of skills or impracticality (if it makes it impossible to damage some bosses, then I can't use it -- it'll soft lock the game).

As for the Criticals, I tried what praetarius5018 said, and oh boy.  That makes everything ridiculous.  Christ.  Critical hits do too high damage.  And you take just as high damage (normal enemies were doing 150+ per hit in the final dungeon).  Although I can see why some people would like that (assuming it is default crit, and not "crit every hit"), I don't like it.  If people want that, then they can just use the old bug fix patch on top of my patch.  The point is, I have no intention of making criticals exist.  Still, thanks for the suggestion -- you made a valid argument, but I have decided not to implement that.

 

7 hours ago, hmsong said:

You were right.  Criticals are... more than what I'd bargain (not that I doubted what you said).  I wouldn't mind implementing Criticals if the frequencies were significantly less (max 10%), but 20+% by the end of the game is just too much.

I mean technically you could change it to a fixed rate or change the luck-in-X rate from 100 to say 255.
And the +50% damage could be turned into +25%, that would be a one-byte change.
The major issue (for you) would be actually loading the luck value for the crit rate instead of the constant 0. THat would need some bytes of unused space somewhere.

7 hours ago, hmsong said:

Btw, you said that TransShape and Sleep SE share the same duration time.  What about Freeze and Petrify?  Does that share that same code?  Or is it different code?

Petrify doesn't wear off before battle end. Freeze is probably the same as sleep, didn't check that one.

9 hours ago, praetarius5018 said:

I mean technically you could change it to a fixed rate or change the luck-in-X rate from 100 to say 255.
And the +50% damage could be turned into +25%, that would be a one-byte change.
The major issue (for you) would be actually loading the luck value for the crit rate instead of the constant 0. THat would need some bytes of unused space somewhere.

Wow, implementing those two things would work greatly (probably).  255 is much more reasonable than 100 (that means crit maxes out at ~8.6%).  Fixed isn't bad either (5% sounds about right -- if I can't load the luck stat, I'll go with that).  And changing to +25% damage would work great too.  I need to test that though -- could you please tell me which byte I need to change?  I assume the address I need to change is D0CAE1~E2.

As for the unused space... I'm just gonna take a wild guess, but would I be able to use any space where there's bunch of collection of FFs? (105720~105FFF, 10B5E0~10BFFE, 112860~112A3F)  Or would I need 00s space? (11D630~11D6CF)  I don't know what is unused.  I just randomly chose D0xxxx~D1xxxx, because I have a vague feeling that that's where anything is supposed to happen.  I'm honestly not sure.  How much space would I need?

And that exactly is where it gets interesting.
Is it unused? Is it a black square of a graphic? Placeholder mob data?

Whether unused space is FF, 00, EA, or something else is different for each game.
Might even be different within the same game.

For a quick check I'd look at the last few bytes if they can be return codes for routines.
The most sane options for routine enders are:
6B - rtl, return for a routine usually called from a different bank (chuck of xx0000-xx7FFF or xx8000-xxFFFF), basically a public function in programming terms
60 - rts, return for a function that must live in the same bank, basically a private function
4C yy xx - jmp, goto xxyy in same bank
5C zz yy xx - jmp, goto xxyyzz for any location

Lets ignore the madness that would be function calls that rip out the return value from the stack and replace the return location..

  1. 105720 - the preceding bytes have neither of those options, could actually be legit data.
  2. 10B5E0 - might be usable, the last bytes before ff look like usual SD3 code
  3. 112860 - same as the first

Personally I'd prefer the end of 13Fxxx.
D3/xxxx is where a majority of the compressed AI code lives and FFs to that amount is not a useful operation.

So wanna do this?
Don't say I didn't warn you, I'm not a teacher.

First of, this is your bible. It tells you what hexcodes are what real operation.

Second, you need an emulator with debugging abilities, I use Snes9X v1.51.ep10r1 - Geiger's Snes9x Debugger.
Srm save files are compatible between emulators so you should at least transfer your savefile so you have some save games to work with. Preferably at least a post godbeast save so you have enough techs/spells and can quickly check every shop and whatever else you may need.

Third, grab a list with cheats, this helps finding the relevant code areas faster and if the list is good it already has the ids for items or spells you may need at some point.

Important stuff to know:

  1. if the M flag is on (big M) operations related to the value in A only use 8 bit mode, if it is off (small m) 16 bit. SEP 20 turns it on and REP 20 off. This also affects the lengths of some instructions since the extra 8 bits need to be written as well.
  2. you usually want to end your modification with the same CPU flags as you started (any SEP undone via REP and vice verca)
  3. everything you add to the stack (e.g. PHA) should be removed again before you end your modification (e.g. PLA)
  4. avoid crossing bank borders (never go past a xxFFFF)

D0/CACA is where the crit rate is loaded. Put an execution breakpoint there in the debugger and then try to hit something. Try step into a few times to see what happens next.

 

Overwrite the 4 bytes at D0/CACA in the rom with 22 zz yy xx where xxyyzz (watch snes writing and order!) is the location where you place your code.

And the location with free space you want the byte equvalent of:
LDY #$00E2 //offset for crit rate, note that the offsets for attacker and target are different because SD3...
LDA ($2A),y //loads the crit rate in this case; $2A is in the pointer to the attacker
AND #$00FF (crit rate is 8 bit but the mode is 16 bit so we need to cut off the excessive bits)
LDY #$00F3 //this was the result of Y in the section we overwrote and it may be used later
RTL //return to where we came from

so:

Spoiler

A0 E2 00 B1 2A 29 FF 00 A0 F3 00 6B

You could do this conversion autoamtically with something like xkas but I think it is better to do this a few times manually to better understand what is going on.

If you now reload the rom and try to hit something again it should give you a non-0 crit rate.

Run the same breakpoint as before and continue until the game wants to call code from C00620 this is an RNG function in SD3 and the value in A holds the range that the result should be in.
With that you should've seen where the value for A came from and can modify it to adjust the range as you want.

Last the crit damage.
Run the breakpoint again up to the RNG call and step over it.
It should be followed by a CMP $1A BCS $18, $1A holds our crit rate.
Now depending on the result the code will either branch forward $18 bytes or not.
If it doesn't jump forward that many bytes it is a critical hit.
Note how the result of the RNG call must be equal or smaller than our crit rate.
The modification to the damage (specifically attack power before defense) is handled like this:
LDA $1C 
LSR A (divide A by 2)
CLC (clear carry/overflow)
ADC $1C
STA $1C

$1C hold the current attack power (you can see that if you follow the code a long while backwards). Now we can replace the CLC with another LSR A.
This would change the bonus from 50% to 25% but add the chance for an off-by-1 error because we no longer remove the carry flag which means it may add another +1 at the ADC $1C step if that flag was set.
Since damage has a range anyway and +1 is near nothing I see no need here to create another call to currently unused space and creating a routine there.

 

Now time for homework:
change
D0/C97A 0C to 0A
D0/D83B 03 to 05
and
D/0C983
85 1A B0 03 A9 00 00 D0 01 1A to
B0 03 A9 00 00 4A EA 1A 85 1A

What have I done?
Hint: breakpoint a few bytes before each and try with and without the most OP buff.

Oh my god...

I took a look at 65816 Reference (the bible).  I couldn't even understand the 1st table.  I feel like this page assumes the viewer already knows the basics of these... codes and terms (such as the definition of "Mnemonic" or "binary value").  I am so lost.  I feel like I've been given a text book about PhD on advanced physics, when I barely passed high school physics class (15 years ago).  I'm afraid I may need something more... basic.

Well, I got the debugger snes9x (I can only find ep10r2).  I can't even open it though... (included picture)  "Side by side config"?  "Event log"?  What is the computer talking about?

I don't understand what "execution breakpoint" means.  Boy, this is a train wreck.  =::(

Maybe I'm in way over my head with trying to implement Luck to critical.  I feel like I'm too unskilled for this.  I feel... hopeless.  I'm looking at a pit, and it's bottomless.

Sigh.  Is making AGI work (well, Acc/Eva) just as complicated?  That's of higher priority than critical (since several spells are literally useless).

01.png

I know I couldn't get 10.2 running either that's why I said 10.1, but I'm on W7 still so no idea how to help you there.

13 minutes ago, hmsong said:

Is making AGI work (well, Acc/Eva) just as complicated?

No, AGL is worse, this is just warm up.

Wow.  I googled, "Snes9X v1.51 "ep10r1" Geiger Debugger", and I only got 2 hits.  That's a first.  I always get a ton of hits on anything.  And I only got 2 hits (total of 6), and they're all in Japanese.  With no links to the download.

Uhh, can you upload ep10r1?  Apparently, GOOGLE doesn't have it.

Thanks.  I guess I just suck at finding stuff.

Figuring out your instructions may take some time.  It's a lot to process.  I'll try my best.  Started by reading some elementary materials (google).

Btw, is there a way to reduce the amount Aura Wave is giving to the Tech bar?  It fills 9 bars, but I much prefer it do less (7 if fixed, 6 if not).  I tried to reduce D19C4C, but it's not having any effect (it still fills the bar all the way).  Is there some "quick fix" to do that for vanilla?  Or any other way to reduce the OP-ness of Aura Wave (while still having something to do with the tech bar).

Edit:  I see that Sin of Mana already has that.  I don't know what "+1 tech buff" means, but I'm still interested in how you changed the bar fill-ness from the spell.  Could you please tell me?

all i know is if u change D0C588  04 to 00,you can use lv1 tech always after u got 4 TP

10DACF:E7 03          10DAD4:E7 03    attack limit

10DBD9:3C             10DBDD:3C    evade limit (bug) u know that

10DBFB:2C 01          10DC00:2C 01 defense limit 

10DC1D:2C 01          10DC22:2C 01   magic def (elements)

10DC43:2C 01          10DC48:2C 01 magic def (lihgt and dark?)not sure

d2d770-d2d8e0   characters tech learn (very simple figure out)    01=one 03=all     and tech code

that is all i know and experience  address 

 

8 hours ago, hmsong said:

Btw, is there a way to reduce the amount Aura Wave is giving to the Tech bar?  It fills 9 bars, but I much prefer it do less (7 if fixed, 6 if not).  I tried to reduce D19C4C, but it's not having any effect (it still fills the bar all the way).  Is there some "quick fix" to do that for vanilla?  Or any other way to reduce the OP-ness of Aura Wave (while still having something to do with the tech bar).

There is a way.
The code is at D0/E586, after the homework above you should be able to figure it out.
The vanilla code just loads the current maxTP and shoves it into both currentTP values.
Don't ask me why it needs 2 TP values, at some points it checks one, at other points the other.

24 minutes ago, shiliwei said:

10DC1D:2C 01          10DC22:2C 01   magic def (elements)

10DC43:2C 01          10DC48:2C 01 magic def (lihgt and dark?)not sure

One is the (INT based) m.def for INT based spells, the other is the hidden (PIEbased) m.def for PIE based spells.

Also all of these are imcomplete. The cap value is there twice, once for the value it checks against and once for the value it then loads as the final value.
With what you've given you could only create stat spikes, like if def > 150 def = 300; but not the intended if def > 150 def = 150.

8 minutes ago, praetarius5018 said:

One is the (INT based) m.def for INT based spells, the other is the hidden (PIEbased) m.def for PIE based spells.

thank you!!

and i know why i can't use tech now.

u can't use tech if all TP got form enemy missed. that is why i can't use tech every time against boss. cuz i use spell all the time in beginning.

Thank you, to both of you.

Sigh.  The more I read about hacking, the more I realize how difficult it is for me to really understand all this hacking knowledge.  A strong part of me wishes that there was a bug fix patch for the official Trials of Mana (I'm not expecting it, since almost nobody is working on that game).  I mean, as Soul Knight said, I ended up creating something that's mostly for Trials of Mana.  But with all the bugs present (some more devastating than others), most people will just go back to fan translation.  Hence why I'm trying to incorporate many of the bugs in my patch.  This is going to take a long time for me to learn.

Oh my god.  I see you released a bug patch 1.3 on RHDN.  Several questions:

  1. Is that compatible with Trials of Mana?
  2. I have No Skill Counter on my balance patch, but would your bug patch overwrite that?  Which takes priority?
  3. In my balance patch, I changed several things (stats and skills) in Kevin's D classes.  Apparently, Bashkar and Deathhand got mixed up in the menu (which you corrected), but would that affect which character has which stat and/or skills?
7 hours ago, hmsong said:

Is that compatible with Trials of Mana?

Didn't test.

7 hours ago, hmsong said:

I have No Skill Counter on my balance patch, but would your bug patch overwrite that?  Which takes priority?

Since both our edits are applied to different locations: both.

7 hours ago, hmsong said:

In my balance patch, I changed several things (stats and skills) in Kevin's D classes.  Apparently, Bashkar and Deathhand got mixed up in the menu (which you corrected), but would that affect which character has which stat and/or skills?

I ONLY switched what is displayed in that menu, so Deathhand is still Deathhand, stats and skills and all.

Thanks.  I'm sure you had mixed feelings about releasing the bug fix patch.  I truly appreciate that you decided to do so.

For last several days, I tried to find some resource to learn about hacking.  I'm sad to say that none of them really helped much.  Very far from anything that was covered in the "bible".  The only thing that I found useful was the video about pointer table, which somewhat helped me understand... some parts of your bug fix patch, regarding what the address an another address was pointing to (not that I know what specific thing those addresses/valuees did).

Sigh.  I'm throwing in the towel.  Hacking things to create working criticals and agility that is compatible with Trials of Mana is beyond my ability.  I simply lack the prerequisite knowledge to even understand the "bible", and nothing I can find seems to help me understand that.  I have no choice but to use the fan translation if I want to play the bug fixes version.  I truly thank you for even trying to help me (esp that long explanation above).  But for now, I'll just stick with minor tweaks that's within my ability.

So... could you please tell me how to make Aura Wave fill only 6 bars? (7 if fixed)

Quote

I mean technically you could change it to a fixed rate or change the luck-in-X rate from 100 to say 255.

I assume you didn't do that for the bug fix 1.3 patch.  So, how do I make it to 255?  And would that affect Energy Ball critical rate? (I think you said you made it +10%, just like SoM, but I'm guessing that was based on 100)  Obviously, it's not for any of my public patches, since other than the obvious moral reasons, that's no good by itself anyways.  I'm just going to use it for my private usage to simply play the game.  Just gonna enjoy playing the game.

And thanks for reducing the critical rate to 25%.  And reducing the stat up/down to 20% (that ought to balance things a bit).

On 5/28/2020 at 9:41 AM, hmsong said:

So... could you please tell me how to make Aura Wave fill only 6 bars? (7 if fixed)

Find some free space as described above. I suggest the end of D3/xxxx.

B1 34 18 69 06 D1 36 90 02 B1 36 91 34 6B

D0/E589 B1 36 91 34 -> 22 zz yy xx, where xxyyzz (in that order!) is the address your code will go to.

On 5/28/2020 at 9:41 AM, hmsong said:

I assume you didn't do that for the bug fix 1.3 patch.  So, how do I make it to 255?

One last try.

Take the debugger, put a write breakpoint at D0CACA, try to hit an enemy, the game should stop.
Use "step into" until you reach an instruction for JSL $C00620. The LDA #$0065 before that is the range used (+1 because reasons).

Aura Wave worked!  I don't know the logic behind it, but it worked.  Many thanks!

Quote

Take the debugger, put a write breakpoint at D0CACA, try to hit an enemy, the game should stop.
Use "step into" until you reach an instruction for JSL $C00620. The LDA #$0065 before that is the range used (+1 because reasons).

I wrote a breakpoint at D0CACA (pic 2) and then hit an enemy, but the game did not stop.  I clicked on "step into" and got pic 3, but it didn't say anything about LDA #$0065 (it says LDA #$0000).

One of the biggest problem is that I don't know know what numerous vocabularies are, in practical knowledge.  What is JSL?  What is LDA#0065?  I mean, I know "LDA #const" means, "Load Accumulator from Memory" -- that's from the bible -- but I have no idea what that actually means in hex edit (or what it's suppose to represent).  The only thing I know how to do is edit the hex numbers using HxD.

2.png

3.png

Try again with the breakpoint set as execute.

Execute - when the address is to be executed as code
Read - when the game wants to read from that address in store it into variable A,X or Y
Write - when the game wants to write to that address, if for some reason a value is to be stored at a ROM address we're in massive trouble, at best the emulator crashes.

If in doubt check all three.

21 minutes ago, hmsong said:

One of the biggest problem is that I don't know know what numerous vocabularies are, in practical knowledge.  What is JSL?  What is LDA#0065?  I mean, I know "LDA #const" means, "Load Accumulator from Memory" -- that's from the bible -- but I have no idea what that actually means in hex edit (or what it's suppose to represent).  The only thing I know how to do is edit the hex numbers using HxD.

That's what that page should help with:

JSL Jump to Subroutine 22 Absolute Long   4

JSL is the asm representation

Jump to Subroutine - explains what it does: continue code execution at the address given. *

22 is the hex representation

absolute long means this code expects an explicit address, all 3 bytes

4 tells you how many bytes the full instruction needs, it this case 22 as the instruction + 3 bytes for the address to be used

 

*for longer explanations of what the codes mean search for the asm code and you'll find lower on the page:

JSR - Jump Subroutine

JSL - Jump Subroutine Long

If you already know a programming language, this is basically calling a function. This performs the same as JMP except the address of the current program counter is saved. In subroutines, the RTS and RTL are used to return back to the saved address.

Hmm.  As soon as I put the breakpoint on D0CACA, the game froze (before I got the chance to hit any enemy) and gave me this result (pic 04).  And it still didn't give me " JSL $C00620" result, no matter how many times I pressed "Step Into" (pic 05).

04.png

05.png

Good, when the game freezes that way it has reached the breakpoint, now you have to the other instruction I gave:

On 5/29/2020 at 6:47 PM, praetarius5018 said:

Use "step into" until you reach an instruction for JSL $C00620. The LDA #$0065 before that is the range used (+1 because reasons).

 

Yes, I pressed "Step Into" (multiple times).  The problem is, I didn't see the instruction for JSL $C00620 (2nd pic of the previous post).  It gave me bunch of other stuff, such as LDX #00E3.

Also, what is "instruction" for JSL$C00620?  I don't think it's telling me what to do or anything.

Wuw, I feel like I'm talking to you real time.

Go on, follow the code a bit more.
Rarely is anything as simple as finding it directly within 2-3 instructions.

Clipboard01.png.277178a335ca89942e6207a3406895a2.png

25 minutes ago, hmsong said:

Also, what is "instruction" for JSL$C00620?

Exactly that JSL $C00620.

Oh.  Okay.  Got it (just as you said).  But now what do I do?  Since crit is out of 100, I thought I'd see hex number 64 somewhere, I but I don't.  Even in at C00620.

05.png

Perhaps I'm jumping ahead, but according to what you posted above, I'm supposed to overwrite the 4-byte values at D0CACA with 22 zz yy xx, so if I were to do so at the end of bank D3 (let's say D3F140), then I'd be overwriting that with 22 40 F1 13.  And at D3F140 (it's currently full of FFs), I'd be overwrite the next few bytes with:

Spoiler

A0 E2 00 B1 2A 29 FF 00 A0 F3 00 6B

But again, I still don't see 64 anywhere.

7 hours ago, hmsong said:

Oh.  Okay.  Got it (just as you said).  But now what do I do?  Since crit is out of 100, I thought I'd see hex number 64 somewhere, I but I don't.  Even in at C00620.

Please read this again:

On 5/29/2020 at 6:47 PM, praetarius5018 said:

Take the debugger, put a write breakpoint at D0CACA, try to hit an enemy, the game should stop.
Use "step into" until you reach an instruction for JSL $C00620. The LDA #$0065 before that is the range used (+1 because reasons).

the way it is programmed it is programmed you need to give our intended max value but +1 to the RNG method. or rather the exact value doesn't matter. It takes the value that is currently in A, so you have to check where that came from and change that, hint: the instruction directly before it.

7 hours ago, hmsong said:

then I'd be overwriting that with 22 40 F1 13.  And at D3F140 (it's currently full of FFs), I'd be overwrite the next few bytes with:

no, you want the SNES addressing there, so 22 40 F1 D3.
SNES does NOT know our addresses in the hex editor. Just be happy you don't have to deal with headered Lo-ROM, that is a headache and a half.

Oh, okay, so please correct me if I'm wrong:

Currently, D0CADB's value is A9 65 00.  So... I'm supposed to change it to A9 FF 00? (which will result in 254 instead of 100?)

Quote

It takes the value that is currently in A, so you have to check where that came from and change that, hint: the instruction directly before it.

The instruction before LDA #$0065 is STA $1C (which is apparently pointing to 000E1C?), but the value is 3B 18 69 08.  I have a feeling I'm looking at something completely unrelated.

Quote

no, you want the SNES addressing there, so 22 40 F1 D3.
SNES does NOT know our addresses in the hex editor. Just be happy you don't have to deal with headered Lo-ROM, that is a headache and a half.

Wait, so for Aura Wave edit, I replaced the 4-byte values at 10E589 to 22 30 F1 13 (and 13F130 to B1 34 18 69 06 D1 36 90 02 B1 36 91 34 6B).  Was I supposed to replace the values of 10E589 to 22 30 F1 D3?

8 hours ago, hmsong said:

Oh, okay, so please correct me if I'm wrong:

Currently, D0CADB's value is A9 65 00.  So... I'm supposed to change it to A9 FF 00? (which will result in 254 instead of 100?)

Sure.

8 hours ago, hmsong said:

The instruction before LDA #$0065 is STA $1C (which is apparently pointing to 000E1C?), but the value is 3B 18 69 08.  I have a feeling I'm looking at something completely unrelated.

I meant the value that is in A when we get to the JSL, so the LDA is the right one.

8 hours ago, hmsong said:

Wait, so for Aura Wave edit, I replaced the 4-byte values at 10E589 to 22 30 F1 13 (and 13F130 to B1 34 18 69 06 D1 36 90 02 B1 36 91 34 6B).  Was I supposed to replace the values of 10E589 to 22 30 F1 D3?

Yes.

I see.  Thank you for your help.  That'll make the normal crit not so common (max = [2 + 22]/254 = ~9.4%), which is a lot more sane.

Hmm.  So if I were to change the crit to be based on 254 (instead of the original 100), how would that affect Energy Ball?  I remember you telling me that you made the bug-fix patch's Energy Ball to normal crit +10% (just like Sin of Mana).  But if I make crit based on 254, it won't be +10% -- it'll only be +3.9% (10/254 = 3.9%).  Right?  How would I be able to change the Energy Ball's critical bonus rate?

Energyball sets your crit rate to 50, in this case ~20%.
The saving happens at D0/E580.

If you want to look where that value came from you may want to put a breakpoint execute there, check Logging:CPU (preferably only close to the end of the spell animation) and then check the output log in the log folder.

Okay, I put a breakpoint at D0E580, and did so near the end of the spell animation of Energy Ball.  I see <rom name>.usage file in the Logs folder.  How do I open it?  I opened it with Notepad, and all I got was some weird texts, so I'm guessing I'm supposed to use a different program to open it.

Better try the .log file.

Hmm.  Perhaps the reason I can't find .log file is because I don't know how to use the Logging:CPU function.  How do I do that?  I don't see any button that says, " Logging:CPU" or anything close to that.

In the window where you set breakpoints there's in the middle a section with the header logging.
Check the box next to CPU and all instructions will be written to <rom name>_0000.log.
The logging ends when you uncheck that box.

Wuw... that's a lot of logging.  And I can't even tell what's what.

Btw, I see that you updated your bug fix patch to 1.3b.  What has changed?  I don't see any difference in the description.

Just a fix for the crash caused by attacking in chibikko state.

Awesome.  Thank you.

Btw, the patch seems to only reduce effects for Power Up/Down, but not other stat up spells.  So questions.

  1. For vanilla, did Protect Up/Down and Mind Up/Down also change their stats by 33%?  (You already insinuated that Speed Up/Down didn't change anything, even when Agi/Eva were enabled, so let's put that aside)
  2. For other spells and items that changes Powers (such as Hawkeye's Water Jutsu, Black Curse, and various magic items), would that also be reduced to 20%?
4 hours ago, hmsong said:

For vanilla, did Protect Up/Down and Mind Up/Down also change their stats by 33%?  (You already insinuated that Speed Up/Down didn't change anything, even when Agi/Eva were enabled, so let's put that aside)

Def change was 25%, magic I think 25% for damage, 20% for defense.

4 hours ago, hmsong said:

For other spells and items that changes Powers (such as Hawkeye's Water Jutsu, Black Curse, and various magic items), would that also be reduced to 20%?

They all use the same value, so yes.

Heh, it seems like that vanilla's 33% power boost was more like an error than anything else.  Thanks for telling me.

I'm gonna take down the No Skill Counter and TransShape fix from my patch, since your bug fix patch is simply better.  But may I have your permission to include the Aura Wave mod for my balance patch?

I don't know how complicated the "cast time in menu" fix is, but if possible, could you include that in the next fix only patch?  I feel like that's one of the more obvious glitches in the game.

8 hours ago, hmsong said:

Heh, it seems like that vanilla's 33% power boost was more like an error than anything else.

I'm quite certain it was done on purpose.
They knew that magic was OP in Secret of Mana so they tried to be cautios here, too much really.

8 hours ago, hmsong said:

I'm gonna take down the No Skill Counter and TransShape fix from my patch, since your bug fix patch is simply better.  But may I have your permission to include the Aura Wave mod for my balance patch?

Go ahead.

8 hours ago, hmsong said:

I don't know how complicated the "cast time in menu" fix is, but if possible, could you include that in the next fix only patch?  I feel like that's one of the more obvious glitches in the game.

Very complicated, and it stays where it is.

Thank you.

7 hours ago, praetarius5018 said:

Very complicated, and it stays where it is.

Aww.  Oh well.  Thanks anyways.

Thank you very much.  You've been a tremendous help.  Now, I'm just gonna casually enjoy the game.

@praetarius5018

For your bug patch on RHDN, why exactly did you switch the menu name for Death Hand and Dervish?  Here's vanilla:

Menu    Class            Item ID    Upgrade Item       Tech

DL        Deathhand    07           Death Wolf Soul    Seiryuu Death Fist

DD        Dervish         08           Devil Wolf Soul     Suzaku Sky Dance

Seiken Densetsu 3 (J)[Eng][Hack]_00000.png

Yours reverses the "Menu" section (Deathhand is DD, and Dervish is DL).  I mean, there's no particular problem, because Death Wolf Soul still transforms Kevin into Death Hand and all.  It's just that for other characters, their DL item ID is before their DD item ID, and Kevin was no different.  So I just want to know why you decided to switch their menu.

Or did the new Trials of Mana (Switch/PS4) switch DL and DD class or something?

It was always suspected that Deathhand should've been D/D instead of Dervish and the Remake thought the same.

1 hour ago, hmsong said:

Yours reverses the "Menu" section (Deathhand is DD, and Dervish is DL).  I mean, there's no particular problem, because Death Wolf Soul still transforms Kevin into Death Hand and all.  It's just that for other characters, their DL item ID is before their DD item ID, and Kevin was no different.  So I just want to know why you decided to switch their menu.

their spell data reverses

3 minutes ago, shiliwei said:

their spell data reverses

no it doesn't

15 minutes ago, praetarius5018 said:

no it doesn't

11C0B0 :should be DD 

11C080:should be DL

i think i make it right.

so? Dervish still learns the list from 11C0B0, that has not changed.
The ONLY thing changed is what is displayed in that menu, absolutely nothing else.

No wait, I get that it doesn't really change anything (so it won't affect the gameplay in any way).  As an analogy, it's as if you made Ninja Master into DD and Nightblade into DL (in the menu) -- it doesn't change anything gameplay-wise.  I'm just wondering the reason you chose to switch Kevin's DL and DD in the menu, that's all.  Since this is a "bug fix" patch, I figured that there was a bug somewhere, where the the name didn't match something, and I missed it.

Btw, this may be something I'm falsely seeing, so could you please tell me if I'm wrong or not?  Just for fun, I upped the starting stats (and the following level up "limits") of all characters -- D13EB0~D14167.  But when I did that, I thought I saw some enemies doing more damage on me (esp magic).  So here's the question:  Do these level-up limits of your characters affect the enemy stats too?  At least for some enemies?

I know for certain that Koren (when you first meet him in the Duran tutorial scenario) did more damage, despite Duran having higher INT stat than the vanilla.

Most enemies follow Lise's stats, 20+ uses her light class, and 40+ her light-light class.
I think the only 2 exceptions were Koren who clones Angela and Heath for Charlie.

8 hours ago, praetarius5018 said:

Most enemies follow Lise's stats, 20+ uses her light class, and 40+ her light-light class.

When you said, "most enemies follow Lise's stats", do you mean her base class stats?  As in, if I increase stats from D14108~D14167, it would make normal enemies harder?

Also, because 1.3b was so hard (I was barely doing any damage), so I tried v1.3b and vanilla.  And for whatever reason, v1.3b melee attack is doing only half the damage.  Could you check what's going on?  I feel like instead of halving the critical hit damage, you ended up halving the regular melee attack.

8 hours ago, hmsong said:

When you said, "most enemies follow Lise's stats", do you mean her base class stats?  As in, if I increase stats from D14108~D14167, it would make normal enemies harder?

I wrote the answer to your question in the part you even quoted...

8 hours ago, hmsong said:

Also, because 1.3b was so hard (I was barely doing any damage), so I tried v1.3b and vanilla.  And for whatever reason, v1.3b melee attack is doing only half the damage.  Could you check what's going on?  I feel like instead of halving the critical hit damage, you ended up halving the regular melee attack.

I did indeed half all melee damage; regular, Lv1 and crits.
So sounds like it is working as intended.

1 hour ago, praetarius5018 said:

I did indeed half all melee damage; regular, Lv1 and crits.
So sounds like it is working as intended.

Oh, the attached document said, "-changed attack of crits from +50% to +25%".  I thought that was simply the power of the crit attacks, not normal attacks.

Nah, I've done both.
Crits give only +25% atk before defense (which can still mean some crits deal x4 regular damage later)
AND all melee damage is halved after defense.

I see.  Thank you for the information.  I don't know if you'll ever update the bug fix patch, but if you do, I'd really appreciate it if you can put in the document something like, "the power of all regular attacks (both you and monsters) is halved."  Personally, I dislike the decreasing the melee power to that magnitude, since that makes each battles (esp before the 1st class change) take forever.  But you must have your reasons for doing that.

Btw, is there a way to decrease Kevin's werewolf bonus?  I heard vanilla is 1/7 power boost, but I want to decrease its power boost further (1/10?).

17 minutes ago, hmsong said:

Personally, I dislike the decreasing the melee power to that magnitude, since that makes each battles (esp before the 1st class change) take forever.  But you must have your reasons for doing that.

Because melee damage is stupid OP, especially with "fixed" crits.
240 attack in endgame vs 220 defense?

20 damage normal.
80 damage crit (with the nerfed "25%" increase)
140 damage L1 tech
380 damage L3 tech

with power up (33% increase version):
100 damage normal
180 damage crit
260 damage L1 tech
580 damage L3 tech

with power up AND saber vs weakness:
260 damage normal
380 damage crit
500 damage L1 tech
580 damage L3 tech (L2/3 techs in vanilla have no logic for elements)

PER HIT, that was Hawk btw.

18 minutes ago, hmsong said:

Btw, is there a way to decrease Kevin's werewolf bonus?  I heard vanilla is 1/7 power boost, but I want to decrease its power boost further (1/10?).

There probably is. I have no documentation on where it happens in vanilla.
But with what you should've learned about logs recently you should be able to find it.

Put a write breakpoint on Kevin's attack power value, activate the CPU logging and then have him transform until the breakpoint snaps.
I recall that it was in the compressed section so prepare to sift through a couple thousand lines.

With the way physical damage worked in the original you never would want to put Angela in your party. The physical damage was just stupid. The decrease makes sense, hell even Duran in the original I would say wouod be better off by using Level 1 techs when using a saber for weakness. Level 2/3 techs served no purpose when you had such a dumb attack power per hit with power up + saber, might as well always stick with your Level 1 techs.

This becomes especially true when you consider that L3 techs are twice as expensive but with saber get even with L1 techs at best and most bosses and several mobs answer L3 techs or spells with extra attacks of their own.

2 hours ago, praetarius5018 said:

Put a write breakpoint on Kevin's attack power value, activate the CPU logging and then have him transform until the breakpoint snaps.

I recall that it was in the compressed section so prepare to sift through a couple thousand lines.

Okay, what is the address on Kevin's attack power value?  I don't think you're referring to the "level stat limit".

1 hour ago, praetarius5018 said:

This becomes especially true when you consider that L3 techs are twice as expensive but with saber get even with L1 techs at best and most bosses and several mobs answer L3 techs or spells with extra attacks of their own.

That's true.  Okay, then is there a way to make Lv1 tech worse?  I feel like Lv1 tech is the real problem here.  For example, is there a way to make the Lv1 bar be "spent", whether you hit the enemy or not?  It doesn't seem like you used that idea for Sin of Mana, so you may want to make that for Sin of Mana 2.0.

 

1 hour ago, smileless said:

With the way physical damage worked in the original you never would want to put Angela in your party. The physical damage was just stupid. The decrease makes sense, hell even Duran in the original I would say wouod be better off by using Level 1 techs when using a saber for weakness. Level 2/3 techs served no purpose when you had such a dumb attack power per hit with power up + saber, might as well always stick with your Level 1 techs.

Well, I guess that's true.  But praetarius5018's bug patch made Power Up weaker (I can't test it, since I can't compare it to the vanilla value, but I believe him).  And my Item Shop patch made it so Drake's Scale is no longer available in the black market (although magic seed being available may technically mean otherwise).

4 hours ago, hmsong said:

Okay, what is the address on Kevin's attack power value?  I don't think you're referring to the "level stat limit".

Correct, I'm referring to the actual ingame value.

You'll have to search for it in RAM since hero data can actually move around.

4 hours ago, hmsong said:

That's true.  Okay, then is there a way to make Lv1 tech worse?  I feel like Lv1 tech is the real problem here.  For example, is there a way to make the Lv1 bar be "spent", whether you hit the enemy or not?  It doesn't seem like you used that idea for Sin of Mana, so you may want to make that for Sin of Mana 2.0.

That would only make the game more frustrating.

 

 

9 hours ago, praetarius5018 said:

Correct, I'm referring to the actual ingame value.

You'll have to search for it in RAM since hero data can actually move around.

Hmm.  How do I search for the attack power value?  I can search for things like experience and gold, since there's a specific number that I can search for, but for the attack value, I don't know how.

9 hours ago, praetarius5018 said:

That would only make the game more frustrating.

Well, if Lv1 techs are weakened by being able to miss, then I think it'd be worth it.

The issue I have with weakening all melee attack isn't because of the end-game -- that makes perfect sense to weaken the melee.  It's the beginning 1/3 of the game (before 1st class change).  The grind takes forever, because regular enemies take forever to kill.  And the bosses are even worse.  I couldn't even beat Full Metal Hugger at Lv6 (that's overleveled in that point of the game, since the enemies only give 3~4 exp).  I had to hack and give myself infinite money to buy 9 chocolates and candies and puipui grass, and even then, I only barely beat it (I only had 2 characters -Duran and Angela).

 

Btw, for vanilla, could you please tell me the levels of all bosses up to Gorva?  I don't see any documents anywhere in the internet about their levels.  Unlike the normal monsters, the game doesn't display the levels of the bosses.  Specifically:

  • Full Metal Hugger
  • Machine Golem
  • Jewel Eater
  • Tzenker
  • Genova
  • Bill & Ben
  • Gorva

I'm trying to create a patch that edits the starting stats for everyone (and growth limit), but since it messes with the boss stats, I want to make sure that things aren't too easy/hard.  If I at least know their level (and therefore their upper stat limit for that particular level), then I can work out the difficulties.

5 hours ago, hmsong said:

Hmm.  How do I search for the attack power value?  I can search for things like experience and gold, since there's a specific number that I can search for, but for the attack value, I don't know how.

On 6/6/2020 at 4:40 PM, hmsong said:

Seiken Densetsu 3 (J)[Eng][Hack]_00000.png

The picture offers a different opinion.

5 hours ago, hmsong said:

The issue I have with weakening all melee attack isn't because of the end-game -- that makes perfect sense to weaken the melee.  It's the beginning 1/3 of the game (before 1st class change).  The grind takes forever, because regular enemies take forever to kill.  And the bosses are even worse.  I couldn't even beat Full Metal Hugger at Lv6 (that's overleveled in that point of the game, since the enemies only give 3~4 exp).  I had to hack and give myself infinite money to buy 9 chocolates and candies and puipui grass, and even then, I only barely beat it (I only had 2 characters -Duran and Angela).

I got 2 reviews on the bugfix patch and that is one of the few things they didn't complain about, how come?

Wait, that's what you meant by attack value?  I thought the attack value you spoke of was [strength stat + weapon stat + RNG variation + probably some other stuff].  I assumed Kevin's attacks in werewolf form is calculated that way, except adding additional 1/7 attack value.

As for the bug patch, I'm simply stating what I felt, just like how those people said their pieces in the review.  I could leave a review too, but I felt it would be more proper for me to say things here, since this would allow conversation.  Actually, I thought the melee half power was an unintended error of some kind.  And now, I know it wasn't unintended, and more importantly, I also now know the reason you made it that way.  Just because I disliked some parts of what you did doesn't mean I disliked the entire patch.  I have nothing but gratitude towards you for creating the bug patch.  And for helping me so much throughout last few months in creating my own patches.  So once again, thank you.

Also, could you please tell me the levels of the bosses that I previously mentioned?  I'd really appreciate it.

18 hours ago, hmsong said:

Okay, then is there a way to make Lv1 tech worse?  I feel like Lv1 tech is the real problem here.  For example, is there a way to make the Lv1 bar be "spent", whether you hit the enemy or not?  It doesn't seem like you used that idea for Sin of Mana, so you may want to make that for Sin of Mana 2.0.

I think this is a terrible idea now that the evade stat actually works. If the tech bar is drained because of player not targeting anything, that's so-so but can be understood, but if the tech bar is drained because RNG decides to mess up the player due to evade stat kicking in, that's just frustrating, cheap and something the players have no control over.

2 minutes ago, Serafie1999AD said:

I think this is a terrible idea now that the evade stat actually works. If the tech bar is drained because of player not targeting anything, that's so-so but can be understood, but if the tech bar is drained because RNG decides to mess up the player due to evade stat kicking in, that's just frustrating, cheap and something the players have no control over.

Well, the point is to make Lv2/3 tech better than Lv1 tech.  In this case, Lv1 tech is too powerful, so making it worse would be a good idea, at least in my humble opinion.  In any case, I'm already aware this won't happen, since praetarius5018 rejected the idea, and I lack the ability to make this.

4 minutes ago, hmsong said:

Well, the point is to make Lv2/3 tech better than Lv1 tech.  In this case, Lv1 tech is too powerful, so making it worse would be a good idea, at least in my humble opinion.

It's not that level 1 techs themselves are powerful, but the way they stack with the bonuses is what makes them so strong. If they aren't affected by Sabers, Power Up and critical hits, their damage can't get out of hand. I'm not saying level 1 techs shouldn't get any bonuses, just set the bonuses so that they won't stack.

 

7 minutes ago, hmsong said:

praetarius5018 rejected the idea, and I lack the ability to make this.

Honestly, have you considered crediting praetarius5018 as the co-author of your hack? It feels like over 75% of the features implemented in your hack have been directly told to you by him.

32 minutes ago, Serafie1999AD said:

Honestly, have you considered crediting praetarius5018 as the co-author of your hack? It feels like over 75% of the features implemented in your hack have been directly told to you by him.

I did that.  I specifically credited praetarius5018 for his works (and obtained his permission to use them for my patch, after my first blunder).  It's right in the document.  And I specifically said in the document that praetarius5018 helped me to create the patches.

And where are you getting 75%?  I only released 3 hacks.  And one of them is an extension of another.  And while praetarius5018 told me the addresses of where things are (and the values), he didn't tell me what to put for my patches (the things he did, I specifically credited him as his sole work).

But if he wants me to credit him for Energy Ball and Item Shop, then I will do so.  He definitely helped me on those, directly or indirectly.  I don't have any problem with that.

8 hours ago, hmsong said:

Also, could you please tell me the levels of the bosses that I previously mentioned?  I'd really appreciate it.

I don't know the exact levels but bosses are either the same level as the mobs in their dungeon or at most 1 level higher.
So that range should be around L4 to 12.

Lv1 tech:
Any specific edit there would be a mess.
You have the x1.5 multiplier which imo should stay because that is the point of the Lv1 tech.
Then you have the power up buff, kinda needed to make regular attacks not suck.
Saber element? if I remember right it uses the same function as spell element so changing that would also nerf spell casting.
You could remove/nerf the day bonus but that affects spell damage as well.

Your best bet would probably be moving the defense subtraction to the start when (power up modified) attack is loaded but that changes basically the whole game.

7 hours ago, praetarius5018 said:

I don't know the exact levels but bosses are either the same level as the mobs in their dungeon or at most 1 level higher.
So that range should be around L4 to 12.

Thanks.  I figured that was the case.  I just wanted to know the specifics, since the little details are the ones that affect the difficulties.  Oh well.

 

Yeah, I agree that Lv1 tech should be x1.5.  And messing with the stacking would probably require heavy endeavor that I'm unlikely able to do (not that I wanted to do that in the first place).  And indeed, the defense re-calculation would do some things, but as you said, that would change the whole game, with who-knows what kind of unwanted side effects there are.

I was watching the review of the new Trials of Mana for Switch/PS4.  They mentioned that in that game, the techs will be used up the moment you use it, not when it hits an opponent.  One guy mentioned that it would have been a positive change if that were applied in the original game, since Lv1 tech was so powerful in that game.  I thought about it, and having a "risk of missing it" would make it less powerful without reducing its powers or something (and force players to think more carefully before unleashing that -- vanilla makes it so that people can spam it the moment they get them, since there's no risk of any kind).  I just thought it'd be a neat idea, that's all.

I don't think this would be an improvement.
Considering the lack of mobility in vanilla it would be hard to get out of range.
And the game has some issues with registering hits sometimes especially at the outer parts of your attack hitbox. There's a whole range where it first thinks the hit would succeed and then at the end doesn't.

I mean with those cases it would be more consistent if the TP is used up the moment you press the tech button but... still feels like stealing.

8 hours ago, hmsong said:

I was watching the review of the new Trials of Mana for Switch/PS4.  They mentioned that in that game, the techs will be used up the moment you use it, not when it hits an opponent.  One guy mentioned that it would have been a positive change if that were applied in the original game, since Lv1 tech was so powerful in that game.  I thought about it, and having a "risk of missing it" would make it less powerful without reducing its powers or something (and force players to think more carefully before unleashing that -- vanilla makes it so that people can spam it the moment they get them, since there's no risk of any kind).  I just thought it'd be a neat idea, that's all.

Techs are completely different in the Trials of Mana Remake, though. They take several battles to build up (sort of like limit breaks in the FF series), and when you use them, level 1 techs are just like level 2-4 techs in the way that they launch a special attack that always hits the enemy or enemies.

1 hour ago, praetarius5018 said:

I mean with those cases it would be more consistent if the TP is used up the moment you press the tech button but... still feels like stealing.

Yeah, that's it.  That's EXACTLY what I want.  I can see why some people would feel that it's stealing, but that means it will discourage people to use Lv1 tech -- it may be powerful (esp with saber/buff), but unlike Lv2/3 tech, you may actually miss, and it'll all be player's fault (not being in range of your enemy, not raising AGI stat, etc).  Computers don't press the tech button, so they may be immune to "TP being used up" part (I'm okay with either case though).

I understand that you don't want to apply this to Sin of Mana (SoM has its own ways to power down Lv1 tech).  But would you be willing to create this and release it on RHDN?

7 minutes ago, Serafie1999AD said:

Techs are completely different in the Trials of Mana Remake, though. They take several battles to build up (sort of like limit breaks in the FF series), and when you use them, level 1 techs are just like level 2-4 techs in the way that they launch a special attack that always hits the enemy or enemies.

Huh?  I thought you can miss (or rather, you can use it when nobody is around, and it'll be used up).  At least, I think that's what one of the reviews said.  Or maybe I misheard something?  Oh well.

11 minutes ago, hmsong said:

Yeah, that's it.  That's EXACTLY what I want.  I can see why some people would feel that it's stealing, but that means it will discourage people to use Lv1 tech -- it may be powerful (esp with saber/buff), but unlike Lv2/3 tech, you may actually miss, and it'll all be player's fault (not being in range of your enemy, not raising AGI stat, etc).  Computers don't press the tech button, so they may be immune to "TP being used up" part (I'm okay with either case though).

As I said, I think this is just a lousy idea. If the game's hitbox mechanics or evade RNG messes you over, you lose the tech even though you have no control over it. This makes the game more frustrating, not better. It's not like Sabers and buffs/debuffs are available until the first class change (especially if you nerf Byzel items to be more expensive or less available). So before that, this kind of level 1 tech mechanics just reinforce the playstyle of spamming the attack button and never using techs, since without the stack multipliers, level 1 techs aren't that much better than normal attacks, and the risk of them backfiring and causing you to lose the tech completely just encourages you to attack with physical attack spam instead. I'd take the implementation of all physical attacks doing half damage over this kind of mechanic any day.

14 minutes ago, hmsong said:

Huh?  I thought you can miss (or rather, you can use it when nobody is around, and it'll be used up).  At least, I think that's what one of the reviews said.  Or maybe I misheard something?  Oh well.

I just tried, and if there are no enemies on the screen, Trials of Mana doesn't even let you use techs. When there's an enemy on the screen and you use a level 1 tech, the game automatically moves you closer to the target and makes you always hit.

28 minutes ago, Serafie1999AD said:

As I said, I think this is just a lousy idea. If the game's hitbox mechanics or evade RNG messes you over, you lose the tech even though you have no control over it. This makes the game more frustrating, not better. It's not like Sabers and buffs/debuffs are available until the first class change (especially if you nerf Byzel items to be more expensive or less available). So before that, this kind of level 1 tech mechanics just reinforce the playstyle of spamming the attack button and never using techs, since without the stack multipliers, level 1 techs aren't that much better than normal attacks, and the risk of them backfiring and causing you to lose the tech completely just encourages you to attack with physical attack spam instead. I'd take the implementation of all physical attacks doing half damage over this kind of mechanic any day.

I see.  Well, if that option is at least available, then you can simply choose not to implement that.  In my case, I'd like to implement that.  I very much would like that.

Uh, sure, that logic is somewhere in the compressed region, so have fun with that >.>
I for my part am happy I'm done with that area.

On 8.6.2020 at 3:40 AM, hmsong said:

The issue I have with weakening all melee attack isn't because of the end-game -- that makes perfect sense to weaken the melee.  It's the beginning 1/3 of the game (before 1st class change).  The grind takes forever, because regular enemies take forever to kill.  And the bosses are even worse.  I couldn't even beat Full Metal Hugger at Lv6 (that's overleveled in that point of the game, since the enemies only give 3~4 exp).  I had to hack and give myself infinite money to buy 9 chocolates and candies and puipui grass, and even then, I only barely beat it (I only had 2 characters -Duran and Angela).

I loaded up some of my old teams to try Praetarius5018's bugfix patch, and I don't know what you are talking about with Full Metal Hugger. Okay, I was on level 6 too, but I never had to cheat to beat him.

First group: Duran, Lise, Carlie. I spent 7 Round Drops and 2 Puipui Grasses. Nothing too hard, just took me longer than usual. When I was starting to run out of Round Drops, I was thinking of simply not healing Carlie, since she wasn't doing much in the battle.

Second group: Kevin and Duran. For challenge, I had Kevin on his human form. I spent 6 Round Drops and 2 Puipui Grasses before winning.

My conclusion: FMH definitely isn't impossible, let alone something that requires cheating or even chocolates to win.

Slightly off-topic, but why were you using Duran and Angela? Since you didn't have Carlie on that battle, it means she's not your third character, which means your third character was Kevin, Hawk or Lise. Why didn't you have them as your second character, since Angela is practically useless against FMH? In terms of mechanics, Duran and Angela don't even have much synergy in the vanilla game.

@praetarius5018

Thanks for everything.  You've been a such huge help.  If I have any suggestions for 2.0, I'll post it on that board.

 

10 minutes ago, Serafie1999AD said:

Slightly off-topic, but why were you using Duran and Angela? Since you didn't have Carlie on that battle, it means she's not your third character, which means your third character was Kevin, Hawk or Lise. Why didn't you have them as your second character, since Angela is practically useless against FMH? In terms of mechanics, Duran and Angela don't even have much synergy in the vanilla game.

The reason I had Duran and Angela was because they both had direct relations to the main story.  And as you said, if I wanted for pragmatic purpose, then sure, I could have made it so that my 3rd char would be 2nd to join (therefore making the FMH fight easier).  But I wanted to test it with the "typical" setting (Duran+Angela, Hawk+Carlie, Hawk+Lise), for people who's not familiar with this game.

Btw, the typical level for FMH fight is Lv5 (I just grinded like hell to make the fight easier).  That means, you'd either not-level up STR or VIT for FMH fight (assuming you leveled up those two in the first 3 levels).  Well, if I wanted to make the fight easier specifically for FMH fight, then I'd level up SPI instead of VIT, since all of FMH attacks are SPI attacks.  But I don't "waste" my point on that stat, since VIT or INT is more important for all other bosses and monsters, at least in the beginning.

SPI wouldn't help much, that is 4 damage less taken per point.
M.def in general is a rather weak stat, imo.
Spells are rarely thrown at you (boss-only spells are mostly physical even), the best you can get is 8 damage reduction per point (physical goes up to 15), and then half of them are INT other PIE based defense. For a rebalance it might make more sense to make all spell damage INT based and unify the m.def to PIE or something like that, so you are not getting nothing out of your displayed m.def 90% of the time.

16 hours ago, praetarius5018 said:

SPI wouldn't help much, that is 4 damage less taken per point.
M.def in general is a rather weak stat, imo.
Spells are rarely thrown at you (boss-only spells are mostly physical even), the best you can get is 8 damage reduction per point (physical goes up to 15), and then half of them are INT other PIE based defense. For a rebalance it might make more sense to make all spell damage INT based and unify the m.def to PIE or something like that, so you are not getting nothing out of your displayed m.def 90% of the time.

Yeah, M.Def is rather weak.  Or rather, Def/M.Def is much weaker than offense, hence why this game suffers so much.

I noticed this while testing some things yesterday (I've been restarting over and over again to test various things), and as you said, most of boss attacks are indeed INT/PIE based non-screen-freezing attacks.  Very interesting logic.  No wonder you used that for SoM.

I thought about what you said about making all spells INT based and making M.Def based on PIE.  Hmm.  In addition to it probably being not an "easy fix" (meaning I probably can't do it), it would make Carlie quite useless in fights, even more so than she already is.  Then again, that might be a good thing.

As for rebalance, I was actually thinking about making some of spells based on PIE or AGI rather than INT.  Most of them were too INT based.  For example, things like Poison Bubble and Evil Gate/Dark Force would be PIE based, while Dive Attack and Power Punch would be AGI based.  However, not much was tested --  for all I know, one boss may have some absurd AGI or something and just one-shot my party.

Btw, for the multiplies for spells (ex: 11994E for Diamond Missile), I know that 00 is INT attack, 10 is PIE attack, and 20 is AGI attack.  But what is 30?  Spells like Hypercannon, Spiral Moon, and Hell Cross seems to use it.  I don't think it's based on STR (although I haven't tested on it), but I highly doubt it's LCK based either.  I can't tell at all.

7 hours ago, hmsong said:

I thought about what you said about making all spells INT based and making M.Def based on PIE.  Hmm.  In addition to it probably being not an "easy fix" (meaning I probably can't do it), it would make Carlie quite useless in fights, even more so than she already is.  Then again, that might be a good thing.

She has 1 INT less than PIE. And Angela already has to deal with the same split because light spells are PIE based.

7 hours ago, hmsong said:

However, not much was tested --  for all I know, one boss may have some absurd AGI or something and just one-shot my party.

Btw, for the multiplies for spells (ex: 11994E for Diamond Missile), I know that 00 is INT attack, 10 is PIE attack, and 20 is AGI attack.  But what is 30?  Spells like Hypercannon, Spiral Moon, and Hell Cross seems to use it.  I don't think it's based on STR (although I haven't tested on it), but I highly doubt it's LCK based either.  I can't tell at all.

30 is STR. Every boss aside from Heath and Koren uses Lise's stat base so there is no boss that would have sudden absurd AGL or anything. In fact STR is her highest stat - that is probably the reason boss unique spells are based on STR, they've already used the max multiplier of 15 and that wasn't enough with her other stats.
On the downside that makes those spells be subject to the higher p.def so that doesn't even help as much as it could.

38 minutes ago, praetarius5018 said:

She has 1 INT less than PIE. And Angela already has to deal with the same split because light spells are PIE based.

Yeah, so I thought about making Holy Ball and Saint Beam into INT based (but keeping Heal Light as PIE based).  But I felt that it would mostly make PIE even less useful, since it means that most enemies will be using INT based attacks.  I figured one typical spell that can be bought from black market should have PIE based attack.

42 minutes ago, praetarius5018 said:

30 is STR. Every boss aside from Heath and Koren uses Lise's stat base so there is no boss that would have sudden absurd AGL or anything. In fact STR is her highest stat - that is probably the reason boss unique spells are based on STR, they've already used the max multiplier of 15 and that wasn't enough with her other stats.
On the downside that makes those spells be subject to the higher p.def so that doesn't even help as much as it could.

Ah, so that's what it is.  Thank you.  I shall test to see if making some boss attacks using AGI stat instead of INT will make some fights more interesting.

Btw, here's what I found out about the beginning few bosses (I used Ghost's Eye to manually test out what the bosses' levels are):

                                    Level

  • FM Hugger          04
  • Machine Golem    04
  • Jewel Eater         06
  • Tzenker              10
  • Genova               12
  • Bill & Ben            12
  • Gorva                 13

I tried to make the first two bosses (FM Hugger and Machine Golem) easier by giving higher stat to the player characters in the beginning (+1 for all stat), but that also raised bosses' stats, which made them even harder (even with the bonus stats).  But I can't just lower the Lv4 stats, since that'll lower the stats of the players later joining (they all join at Lv4).  Is there a way to make the later characters join at Lv3 instead of Lv4?  Perhaps an address where I can edit their initial experience points?

8 hours ago, hmsong said:

Yeah, so I thought about making Holy Ball and Saint Beam into INT based (but keeping Heal Light as PIE based).  But I felt that it would mostly make PIE even less useful, since it means that most enemies will be using INT based attacks.  I figured one typical spell that can be bought from black market should have PIE based attack.

No I meant INT for all spell damage (primary elemental spells, light, dark and summons), PIE for Heal Light and all magic defense.
Though I'd leave Jutsus as they are.

8 hours ago, hmsong said:

I tried to make the first two bosses (FM Hugger and Machine Golem) easier by giving higher stat to the player characters in the beginning (+1 for all stat), but that also raised bosses' stats, which made them even harder (even with the bonus stats).  But I can't just lower the Lv4 stats, since that'll lower the stats of the players later joining (they all join at Lv4).  Is there a way to make the later characters join at Lv3 instead of Lv4?  Perhaps an address where I can edit their initial experience points?

Same answer as for the werwolf bonus.

There's a tool called map jester, it lets you edit boss levels if that helps.
Though you'll need to make a patch that fixes an issue with it; every time I save with that tool it screws some 80 bits up which are responsible for lampflower forest flower color at night (the hint for the labyrinth) and the autumn/destruction theme of the mana holy land at the end.

  1. backup current ROM
  2. make a change, save
  3. undo that change, save again
  4. create IPS patch that uses the new file as "unchanged" and the backup from 1. as "changed"

Hmm.  I played around with the exp points, and apparently, when a character joins, it doesn't matter what the exp is -- it checks for Level.  And in this case, it's Lv4, regardless of what the required exp is for Lv4.  Damn it.

My intention is not to reduce the boss strength (nor its level), but not increase it either.  That's why I'm trying to reduce the character's level when they join.  That way, I only need to edit the stats for the first 3 levels of a character, and it won't affect the bosses' strength.  Do you know how I should go about that?  It would help if I at least knew its bank.

I actually tried using map jester some time ago (found it on RHDN), but I couldn't really figure out how it worked.  It loaded the game, but after that, it didn't tell me anything.  The only thing I could do was look at some of the maps.

01.thumb.png.23b2c91a2a35a70ba5d36264789dc572.png

 Really, there's no guide of any kind for me to use this to its potential.  Do you know if there's any kind of guide somewhere?  I only read the attached document, and it simply tells me what some of its capabilities are, but not tell me how those are done.

Why would you not want the Jutsus to be AGI based?  Hawk has high AGI, so I figured jutsus based on AGI would make sense.  It's got weak multiplies (6), so it doesn't do much damage though.

 

Btw, I can see why you decided to change everyone's max stat limit, strength, level, equipment power, and everything else for SoM.  Balancing is hard.  Very hard.  Christ.

14 hours ago, hmsong said:

Why would you not want the Jutsus to be AGI based?  Hawk has high AGI, so I figured jutsus based on AGI would make sense.  It's got weak multiplies (6), so it doesn't do much damage though.

Don't ask me that. Square made them based on INT, in Sin of Mana they are based on AGL; they probably thought that debuff + decent damage on a "main" stat was too much.

14 hours ago, hmsong said:

My intention is not to reduce the boss strength (nor its level), but not increase it either.  That's why I'm trying to reduce the character's level when they join.  That way, I only need to edit the stats for the first 3 levels of a character, and it won't affect the bosses' strength.  Do you know how I should go about that?  It would help if I at least knew its bank.

On 6/11/2020 at 9:25 AM, hmsong said:

Is there a way to make the later characters join at Lv3 instead of Lv4?  Perhaps an address where I can edit their initial experience points?

23 hours ago, praetarius5018 said:

Same answer as for the werwolf bonus.

Deja vu

14 hours ago, hmsong said:

I actually tried using map jester some time ago (found it on RHDN), but I couldn't really figure out how it worked.  It loaded the game, but after that, it didn't tell me anything.  The only thing I could do was look at some of the maps.

Try the NPC tab. Priority for mobs is their level (+128 because the $80 bit is used for something)

14 hours ago, hmsong said:

Btw, I can see why you decided to change everyone's max stat limit, strength, level, equipment power, and everything else for SoM.  Balancing is hard.  Very hard.  Christ.

As you may have guessed by now, vanilla enemy levels are very stair-ish. Going from 4 to 6 doesn't do much since the stat cap it is based on is the same. But going from 6 to 7 is a massive leap. That makes the whole thing even better.

4 hours ago, praetarius5018 said:

Deja vu

Okay, I guess I was not being specific enough when I asked that question.  As you said for werewolf, I can change his STR stat and then change to werewolf form to see the difference -- 2 reference points to compare.  But for the initial level of joining, I can't.  There's only 1 reference point.  I can change a character's level just fine during the gameplay (RAM), but I can't change the initial level when they first join (neither ROM nor RAM).  There's no 2nd reference point for me to experiment.  That's why I can't use the same method.  Or is there?  If so, could you tell me what I should look for as a 2nd reference point?

4 hours ago, praetarius5018 said:

Try the NPC tab. Priority for mobs is their level (+128 because the $80 bit is used for something)

For adding $80, are you talking about the "Memory Check" part? (shown in the picture above)  So for FM Hugger (I'm guessing my picture is looking at that map), it's $FE2F32?

4 hours ago, praetarius5018 said:

As you may have guessed by now, vanilla enemy levels are very stair-ish. Going from 4 to 6 doesn't do much since the stat cap it is based on is the same. But going from 6 to 7 is a massive leap. That makes the whole thing even better.

Yeah, I noticed that.  It's esp noticeable in the beginning.  Of course, that can be changed if you changed Lise's stat "cap" (which what I'm trying to avoid doing, since that may really screw up the enemies' difficulty in mid-dungeon).

43 minutes ago, hmsong said:

Okay, I guess I was not being specific enough when I asked that question.  As you said for werewolf, I can change his STR stat and then change to werewolf form to see the difference -- 2 reference points to compare.  But for the initial level of joining, I can't.  There's only 1 reference point.  I can change a character's level just fine during the gameplay (RAM), but I can't change the initial level when they first join (neither ROM nor RAM).  There's no 2nd reference point for me to experiment.  That's why I can't use the same method.  Or is there?  If so, could you tell me what I should look for as a 2nd reference point?

If you have no 2nd reference point then make one.

Make a savestate before the cutscene where a character joins.
Let the cutscene run until the character is in the party.
Now search for where its level is.
A give you a hint here: level is saved as displayed level-1.
There'll be hundreds of 3s in the RAM, so how about finding out first where the actual attack power (NOT STR!!!) is saved, there should be 2 values, one for buffed, one base. Level should be close-ish by.

Once you have the level address you can put a write breakpoint on the address of level and run the cutscene with that and logging running.

41 minutes ago, hmsong said:

For adding $80, are you talking about the "Memory Check" part? (shown in the picture above)  So for FM Hugger (I'm guessing my picture is looking at that map), it's $FE2F32?

Clipboard01.thumb.png.8cd1a4954e634bbcce693ce33660395e.png

2 hours ago, praetarius5018 said:

There'll be hundreds of 3s in the RAM, so how about finding out first where the actual attack power (NOT STR!!!) is saved, there should be 2 values, one for buffed, one base. Level should be close-ish by.

Ohh, so that's why I couldn't find the werewolf change  I was searching for STR values.  I guess the number I'm looking for is the one displayed on the Equip screen.  I gave up mid-way, because I couldn't find it.  Dang it.  Okay, I'll approach it in that sense.  Thanks.

Yeah, I found out (the hard way) that level displayed is actually Level-1.  I struggled for a bit to find that info.  Thanks for telling me nevertheless.

Okay, for changing werewolf form boost, I found out that there are 3 addresses that deal with Kevin (P1)'s attack power -- 7e3390, 7ff743, and 7ff753 (in the final Mana Holyland).  I'm guessing it's 7ff743, since changing that seems to change the numbers shown in the menu screen.

I put the breakpoint, and I logged it -- lots of logged files, from 0000 to 000A to 0034.  But now what do I do?  Sure, I can open the files using notepad, and it has lots of codes, but I don't know what I'm supposed to search.

I didn't say this was easy. This is not a beginner friendly section at all. Or game.

You have to search where the value originally comes from. Which means going from the write to 7ff743 backwards until you find where the math happens.
STA writes to an address.
LDA loads from an address to A.
And all the other nice tricks like stack manipulation.

37 minutes ago, praetarius5018 said:

You have to search where the value originally comes from. Which means going from the write to 7ff743 backwards until you find where the math happens.
STA writes to an address.
LDA loads from an address to A.
And all the other nice tricks like stack manipulation.

Uhh.  Sorry, but I did not understand that explanation.  "going from the write to 7ff743 backwards"?  What does that mean?  And math?  I remember there being 25 - Luck for TransShape, but I don't know which code goes with "Luck" or "-".  Could you tell me some of the math codes that I need to know to find the Kevin werewolf boost?

Also, so I need to search for "07" for Kevin's werewolf boost?  Or is it another number? (ex: Level was [Level - 1], so in my case, I had to search for 03 instead of 04).

9 hours ago, hmsong said:

Uhh.  Sorry, but I did not understand that explanation.  "going from the write to 7ff743 backwards"?  What does that mean?

I've no idea how else to say this.
You need to log up to the point where the new attack value gets written to 7ff743 and then search where it comes from.
Considering this is the compressed section this can easily be 10s of thousands of lines back.

9 hours ago, hmsong said:

Could you tell me some of the math codes that I need to know to find the Kevin werewolf boost?

LDA, STA, ADC, SBC, LSR, ASL, ROL, ROR, ... that it was the "bible" is for.

9 hours ago, hmsong said:

Also, so I need to search for "07" for Kevin's werewolf boost?

No idea, that's what you have to find out. If I knew what we're looking for I'd knew where it was.

I'd suggest making a new log; start the logging when 7ff743 is read first and then log until it is written to again.
And turn of the split option to have it all in one file.

20 hours ago, praetarius5018 said:

I'd suggest making a new log; start the logging when 7ff743 is read first and then log until it is written to again.

And turn of the split option to have it all in one file.

Okay, I did that.  I don't see anything resembling 7ff743 in the log file.  And I don't know what value I'm suppose to search for.  Hmm.  What am I supposed to search for in the log file?  The value of Kevin's attack power?

 

3 hours ago, hmsong said:

Okay, I did that.  I don't see anything resembling 7ff743 in the log file.

If you've set the breakpoint correctly that should've been the last line in the log. Specifically the instruction where it writes the updated value to it.

3 hours ago, hmsong said:

And I don't know what value I'm suppose to search for.  Hmm.  What am I supposed to search for in the log file?  The value of Kevin's attack power?

 

That should already be the 7ff743.
I thought you wanted to find where Kevin's wolf bonus is or did I understand you wrong?

Damn, I wish I could upload a video or something, but I can't (can't record my computer screen, because Game Bar is not working).

Here's what I did:

01.thumb.png.8fe5d483e4ac683576a1f8a844dd24d4.png

02.thumb.png.b35cbcee3d115f4347256261a660d9d7.png

03.png.9bd65e40ddae19e41111286aaaf2cde7.png

 

Well, the log file from non-split resulted in a huge notepad file, so I couldn't even open it (my computer simply froze).  So I had to use Split.  Anyways, for the last file (before Breakpoint froze the game), I couldn't find 7ff743, but I was able to find its equivalent, 7fee43 (this code is used in different map for the same attack edit):

04.thumb.png.4f34b8250c49aa53910545fd78847a28.png

But now what do I do?

 

8 hours ago, praetarius5018 said:

I thought you wanted to find where Kevin's wolf bonus is or did I understand you wrong?

Well, I certainly would like to find that, but my real goal is to edit the joining level for the allies (default is Lv04, which in code is 03, as you mentioned earlier).

5 hours ago, hmsong said:

I couldn't find 7ff743, but I was able to find its equivalent, 7fee43 (this code is used in different map for the same attack edit):

if it is used on a different map but here it is 7ff743 then 7fee43 is "useless" now. it means something entirely different here.

5 hours ago, hmsong said:

Well, the log file from non-split resulted in a huge notepad file, so I couldn't even open it (my computer simply froze).

I use HiEditor for that, can load files of multiple GB size.

So just that I get what you did right:

  1. put a read&write breakpoint at 7ff743
  2. do NOT mark CPU logging yet
  3. enter a battle and have Kevin transform
  4. the game should freeze now and you should see one line in the debugger that has some variation of a LDA on 7ff743
  5. NOW you toggle CPU logging and hit run
  6. wait until the game freezes again; you should now see a variant of STA on 7ff743 in the debugger
  7. hit "step into" once and then cancel the logging (step into isn't strictly necessary but it adds the STA line to the log which otherwise is missing)
5 hours ago, hmsong said:

Well, I certainly would like to find that, but my real goal is to edit the joining level for the allies (default is Lv04, which in code is 03, as you mentioned earlier).

Then why are we doing this?
As written way above, you need to find the RAM address of the joining ally's level AFTER they have joined (make a savestate BEFORE the cutscene), have you got that one?

3 hours ago, praetarius5018 said:

Then why are we doing this?

As written way above, you need to find the RAM address of the joining ally's level AFTER they have joined (make a savestate BEFORE the cutscene), have you got that one?

Quote

There'll be hundreds of 3s in the RAM, so how about finding out first where the actual attack power (NOT STR!!!) is saved, there should be 2 values, one for buffed, one base. Level should be close-ish by.

Apparently, I misunderstood.  I thought I have to find the ATK first, and for some reason, I misinterpreted that as solving the werewolf form first (I thought buff = werewolf).  Now that I read back, I feel stupid for misreading.

But it's true that I want to decrease the werewolf bonus boost, since I hated seeing Kevin being so stupid OP (esp with his Energy Ball).

Thank you for the specific instruction on how to make a logging file.  I was doing it all wrong.  Way wrong.  I started logging before Kevin transformed, then transformed, then waited until the game froze.  Boy, was I off.

One thing at a time.  I shall proceed with whichever one is easier first, then proceed with the harder one.

Here's what I got for werewolf boost:

01.png.5bc484df0c70abd499afd63e95166f90.png

02.thumb.png.327f846cffa39851461c0c2f08f3bac7.png03.thumb.png.bc9cb20c0d7c4def9a0d31a18c9211d8.png

 

I feel like there's some real progress there.  I hope that's a progress.  Okay.  They seem to give the same info.  It doesn't seem to point to any particular address, unless D0D871 is supposed to mean something.

As for the level joining, I have a saved state before an ally joins.  And I found the level edit RAM address for joined ally at the waterfall (I got this by simply leveling up the ally, which is 7ff111).  But what do I do with this info?

Btw, thank you for suggesting HiEditor.  I can actually open this file, and the computer doesn't freeze.

10 hours ago, hmsong said:

03.thumb.png.bc9cb20c0d7c4def9a0d31a18c9211d8.png

I feel like there's some real progress there.  I hope that's a progress.  Okay.  They seem to give the same info.  It doesn't seem to point to any particular address, unless D0D871 is supposed to mean something.

D0D871 is the address in the ROM where this code is.

As you should be able to see whatever is now in 7ff743 came from 7ff753 so you have to look further back where 7ff753 got the changed value from.
If it looks like we're going down some rabbit hole with chasing origin after origin - that is really what it is.

10 hours ago, hmsong said:

As for the level joining, I have a saved state before an ally joins.  And I found the level edit RAM address for joined ally at the waterfall (I got this by simply leveling up the ally, which is 7ff111).  But what do I do with this info?

Same process as with the the Kevin attack bonus, make a log up to the write breakpoint snaps, though in this case there's no read before so this can be a much bigger log.
7ff111 looks ok, that is the expected difference to the attack value.

As for which of the two is easier? Dunno.
Kevin bonus involves math (harder) but you have a got idea of the range where it should happen, between the read and the write (easier).
Starter level should just be a constant (easier) but you have NO idea where it may even start (harder).

On 6/18/2020 at 3:58 AM, praetarius5018 said:

As you should be able to see whatever is now in 7ff743 came from 7ff753 so you have to look further back where 7ff753 got the changed value from.

Huh?  How did you figure out that 7ff743 came from 7ff753?  I mean, I know they have the same value, since they resulted in the same thing when I searched for Kevin's attack value, but looking at the picture I pasted earlier, I don't see how you got 7ff753 from looking at 7ff743.  The value is at  D0D871 is 91 34, which doesn't seem like anything close to 7ff753.  It doesn't even seem to be pointing at d0d86f.

I don't mind chasing origin after origin, as long as I know how to chase and know what to look for.

7 hours ago, hmsong said:

Huh?  How did you figure out that 7ff743 came from 7ff753?

On 6/15/2020 at 8:36 AM, praetarius5018 said:

STA writes to an address.
LDA loads from an address to A.

Check the middle of the last two entries in the window.
LDA 7ff753 -> it takes the value from that address and puts it into A (shown to the right of that)
STA 7ff743 -> it takes the value of A and write it to that address

Wow, this is hard.  I couldn't do either of them.  This is... disappointing.  Damn it.  I thought werewolf would be easier, but in the end, I couldn't do either of them.  It seems I'm just... not understanding it.  I mean, I understand that LDA copies a value from the given address to another address (A), and STA takes the value from A and copies it to the given address.  But I don't understand how 7ff743 and 7ff753 are connected, since one is $34 and the other is $36, which means "A" is different for each address.

Sigh.

On a different matter... I noticed that if I give Luna element to a magic attack, it ends up hurting me instead (I figured Luna magic would allow me to absorb HP or something, since Dryad element absorbs MP).  Is there a simple fix for that?

For now it doesn't matter what kind of LDA or STA is used; look to the right columns.

LDA $something takes the value that is in the variable $something and puts it to A (the value is update for the next line).
STA $something takes whatever value is in A and writes it to the variable $something.

Whether it is LDA $34,y or whatever is not relevant for now, just follow the actual displayed address in the [] brackets.

There may also be a lot of space between the reading and writing, in that case you have to follow the value at the right side;
it may get doubled (ASL A), halved (LSR A), incremented (INC A), decremented (DEC A), or something
and it may be transferred to a different column, e.g. TAX copies the value of A and writes it to X, TXA does the opposite.

5 hours ago, hmsong said:

On a different matter... I noticed that if I give Luna element to a magic attack, it ends up hurting me instead (I figured Luna magic would allow me to absorb HP or something, since Dryad element absorbs MP).  Is there a simple fix for that?

The simple way is - don't.
The game tries to run the HP steal from normal weapons but this part is not intended for spell routines which interpret some values differently, so any attempt to fix this quickly will 99% break weapon logic.

I was quite sick for the last few days (hypotension, of all things).  That sucked.  I'm still having trouble.

I tried to follow what you were saying, but I... can't seem to actually do what I want to do.  I mean, I can see the addresses in [], but I don't see how one address links to another.  I can find the RAM codes of level, stat, etc, but I can't seem to apply that to ROM.  So sad.  And my physical condition isn't helping the matter.  I give up.  I truly thank you for your help, but I feel like what you're trying to teach requires prerequisite knowledge, and therefore beyond my ability.

 

Quote

The simple way is - don't.

So I shall.  I don't want to mess with weapon logic.  I'm guessing it'll screw with Moon Saber.

 

On a different matter, for the 9th byte of spell definition, I found the following (including the info that you provided me):

00: Damage (+SE Cause, +Debuff)
01: Heal - Depends on stat
04: Saber
05: Debuff and SE Cause
07: SE Purify
08: Buff
09: Critical Hit, Aura Wave, and Counter Magic
0A: Traps (percent damage based on Max HP)
0B: Half Vanish (percent damage based on Current HP)
13: Heal - Fixed amount
15: MP Recovery - Fixed amount
18: Exorcism (works only on Undead enemies)
19: Weapon Special (Lv2/3 Tech)
1A: Magical Rope effect?
1C: Revive from Death
25: Anti-Magic
27: Death (checks for Level)

In addition, 12 does fixed damage on a target (not sure what determines the damage though), and 17 does some sort of unfinished Detect thing.

Are there any others that can be used? (maybe some spell logics are available, but were not used?)

 

Also, could you please tell me what address determines the spell animation? (ex: Saint Saber's spell animation is linked to xxxxxx address for xx bytes).  I can change the effects of the spell, but I can't switch the animation of a spell.  For example, I want to give Black Curse the animation of Demon Scream, but I don't know how to do that.  Or give Unicorn Head spell the multi-target animation (just does vanilla animation for all 3 targets).  Or give Good Luck Die the Counter Magic spell animation instead of Life Up animation.  Or use the Angel's Grail animation for some random spell.

What I have for those is:
type flags:
00 damage spell; respects stat1-3 for (de)buffs and status ailments
01 heal, variable (Heal Light, Regeneration)
02 does nothing
03 does nothing
04 saber spells, no extra options...
05 debuff, set POWER1 1-5 to ORA respective resistance by spell's element, POWER1 6+ to reset all resistances
06 does nothing
07 tinkle rain, Bottle of Salt
08 buff, set POWER1 1-5 to ORA respective resistance by spell's element, POWER1 6+ to reset all resistances
09 counter magic, aura wave, energy ball
0A fraction damage (enemy-exclusive damage spells); deals no damage vs bosses; damage is target maxHP / POWER1
0B fraction damage (half vanish); deals no damage vs bosses; fraction set by POWER1
0C was same as 0A but without boss check
0D was same as 0B but without boss check
0E does nothing
0F does nothing
10 unknown but used by some (dummy?) spells, seems to do nothing
11 does nothing
12 fixed 162 damage?
13 heal, fixed (items); use both power flags for exact value
14 does nothing
15 MP restore; use both power flags for exact value
16 does nothing
17 analyze, but bugged
18 exorcism
19 Lv2/3 tech damage (only consumes TP when used as tech?)
1A escape rope
1B ...dunno calls same stuff as map transition
1C revive; use both power flags for exact HP value, MP is always full?
1D EXACT same routine as 1B, NOT a copy
1E reinitializes variables
1F does nothing
20 does nothing
21 does nothing
22 does nothing
23 toggle status ailment (chibikko hammer, moogle badge)
24 does nothing
25 anti-magic
26 does nothing
27 death (&roulette)
28 from here on crashes the game

 

I doubt you'll manage to do with spell animations what you set out to do but give this a try:
the animations are at 17E200+4x spellId, 4 bytes per entry, first 2 bytes are the ST animation, other 2 the MT animation

if you try to set an ST-only animation as MT the spell will crash the game and blindly guessing is right out since those 2 bytes are our "friends" pointers.

Hmm.  I can't do anything with the type flags, since it's either too powerful (0C/0D) or too useless (23).  I'm not sure what you mean by, " set POWER1 1-5 to ORA respective resistance by spell's element, POWER1 6+ to reset all resistances ".  I'm guessing Power1 is the multiplier (14th byte).  Do you mean change the value of 14th byte to 01~05 to resist particular element?

 

9 hours ago, praetarius5018 said:

I doubt you'll manage to do with spell animations what you set out to do but give this a try:

the animations are at 17E200+4x spellId, 4 bytes per entry, first 2 bytes are the ST animation, other 2 the MT animation

if you try to set an ST-only animation as MT the spell will crash the game and blindly guessing is right out since those 2 bytes are our "friends" pointers.

So, Diamond Missile animation (ID: 01) is from 17E204~17E207, and the vanilla values are EA CB 06 CD?  And Earthquake spell (ID: 02) is from 17E208~17E20B?  Then what about magic items, such as Paladin's Proof? (ID: 01)

I suppose I'll just avoid giving ST spells the MT animations then.  Hopefully, giving MT animation to ST spell won't cause a crash.

2 hours ago, hmsong said:

Why did this double post?  How do I delete the double post?

do you have an options button to the bottom right of the post?
I can delete it there.

2 hours ago, hmsong said:

Paladin's Proof? (ID: 01)

items are still "spell IDs" $101+

6 hours ago, praetarius5018 said:

do you have an options button to the bottom right of the post?
I can delete it there.

No, I don't have the option.  I only see this:

03.thumb.png.bc9cb20c0d7c4def9a0d31a18c9211d8.thumb.png.c2394197ce9329405790fe61e38f297e.png

The plus button is "MultiQuote".

 

6 hours ago, praetarius5018 said:

items are still "spell IDs" $101+

Woot!  That is useful.  Thank you.  I'm only coping/pasting the animation, so I can make use of what you posted.  Sigh.  I can't give Demon Scream animation to Black Curse, since Demon Scream doesn't summon Shade.  Well, I can assign the animation, but I don't want to, because it doesn't have Shade animation.  That... limits my options a lot.

 

I just noticed this, but it seems that for some spells (like Detect or monster-only spells), my characters freeze in mid-cast motion, then finishes the cast motion after the spell animation is already finished.  Is there any way to fix that, at least for Detect?

Only if you are willing to dive into asm.
Though I wouldn't know where to start with animation editing.

I see.  Thank you.  If I couldn't do werewolf boost or starting level edit, then I assume I won't be able to change the animation edit.  Oh well.  It seems that there are some vanilla spells that doesn't complete the casting animations, such as Axe Bomber and all of trap spells.

 

I assume what you posted for the animation was the animation pointer.  Is there one for the spell names?  There are unused spell slots (namely Ancient 2 and Ancient 3), and I want to use it to create new spells.  I can change the effect, and now the animation (well, use the ones available), but I don't want them to be called Ancient (I don't know if there are any spell names that are not being used).  Of course, since I'll only be changing the pointer, I assume I'll have to use the existing names instead of coming up with something of my own, but that's fine.  I intend one of them being Smoke (the trap spell), since it's one of the convenient spells that has ST and MT animation (ST animation isn't used in vanilla, it seems).  But I don't want to change the vanilla Smoke trap.

7 hours ago, hmsong said:

Is there one for the spell names?

Just no. Anything involving texts is WORSE than the Kevin wolf bonus^3, no joke there.
Anything involved text is like compressed twice. Can't undo that manually.

Your best bet to make "new" spells is taking existing enemy-only spells and working with those - but keep the target side the same or those enemies will do dumb stuff like heal/buff your party or kill themselves.

Whoa, really?  I figured that as long as I don't actually touch the text themselves, and only mess with the pointer, I would be okay (just like I'm messing with the animation pointer, rather than animation themselves).  Damn, that means I can't use the Ancient 2/3 slots.

Do you know any enemy spells that has a name and are not being used by the game, whether they are normal monster, boss or even events?  Here are the ones I can't find any enemies using (some don't even have animation, although they seem to do damage), but could you confirm?

  • Sky Attack
  • Feather Blizzard
  • Gas Cloud
  • 100 Tentacles
  • Squid Ink
  • Tidal Wave
  • Revenge Spike
  • Sandstream
  • Spined Kelp
  • Bomb (the non-trap version)
  • Bloody Axe

Also, is there a way to give a spell the Dreamsee Herb effect?  I want to give that to Pressure Point, but the data in D1B090 isn't giving me any info, since it seems to be a dummy effect.

Btw, I figured out what spell flag 12 does.  It does fixed damage of the... spell ID (Diamond Missile is 01, so it does 1 damage, and Unicorn Head's ID is 3C, so it does 60 damage).  What a weird spell.

There are no text pointers you can use without asm.
The pointers that exist vary by translation and version of translation.

8 hours ago, hmsong said:

Do you know any enemy spells that has a name and are not being used by the game, whether they are normal monster, boss or even events?  Here are the ones I can't find any enemies using (some don't even have animation, although they seem to do damage), but could you confirm?

  • Sky Attack
  • Feather Blizzard
  • Gas Cloud
  • 100 Tentacles
  • Squid Ink
  • Tidal Wave
  • Revenge Spike
  • Sandstream
  • Spined Kelp
  • Bomb (the non-trap version)
  • Bloody Axe

Sky Attack and Feather Blizzard should be used anonymously by Tzenker.
Gas Cloud should likewise be Lightgazer's "normal" attack.
Spined Kelp is Gildervine's.
For Bomb and Bloody Axe I wanna say Ogre Chest has them.
Revenge Spike - isn't that on Mispolm?

100 Tentacles, Squid Ink and Tidal Wave should be safe.

8 hours ago, hmsong said:

Also, is there a way to give a spell the Dreamsee Herb effect?  I want to give that to Pressure Point, but the data in D1B090 isn't giving me any info, since it seems to be a dummy effect.

Then it likely works like the escape rope by having the actual effect in the animation.

10 hours ago, praetarius5018 said:

There are no text pointers you can use without asm.
The pointers that exist vary by translation and version of translation.

I was specifically talking about NCorlett+LNFT v1.01 version, since that's the only English version I know exists.  I'm sure v1.00 existed too, but I was unable to find it (nor any other English translations).  In any case, if you can tell me the spell name pointer specifically for NCorlett+LNFT v1.01 version (the most common English version), then I'd appreciate it.  This isn't for any of my public release though, since as you pointed out, there are other language translations, and I don't want to mess with it.

10 hours ago, praetarius5018 said:

Sky Attack and Feather Blizzard should be used anonymously by Tzenker.
Gas Cloud should likewise be Lightgazer's "normal" attack.
Spined Kelp is Gildervine's.
For Bomb and Bloody Axe I wanna say Ogre Chest has them.
Revenge Spike - isn't that on Mispolm?

100 Tentacles, Squid Ink and Tidal Wave should be safe.

I think the attacks are all screen freezing attacks.  So none of them could be "normal" attack, and they would definitely display the names of the attack before it coming out (they displayed the name when I used it).  Some sources tell me that indeed Spined Kelp is Gildervine's attack, but I never seen him use it.  Gotta try again.  I tried playing around with Tzenker, Lightgazer, and Mispolm too (I basically gave myself infinite HP and sat stood around to see all their attacks, for all bosses, actually).  They never used any of the spells.  Still, I know you changed boss behaviors for SoM, so you're probably right about them having the spells available, but could you tell me how to make those guys use the spells?  Maybe there's a special condition to make them use it? (level?)

I think Kaiser Mimic has Surprise Box Bomb (ID: 85), not spell Bomb (ID: A9).  I never saw Ogre Box using any screen freezing spells.  But I didn't really explore the Mimics though.  Gotta check that out.

10 hours ago, praetarius5018 said:

Then it likely works like the escape rope by having the actual effect in the animation.

I tried that.  I first thought the animation is at D7E780.  But the animation didn't exist (it was a blank animation).  So I tried numerous other things, and the animation in D7E5DC resembled Dreamsee Herb, but it didn't have any effect either.

Btw, I thought all addresses are 3 bytes (before value), but the animation pointer seems to only have 2 bytes (assuming ST and MT are separate).

7 hours ago, hmsong said:

I was specifically talking about NCorlett+LNFT v1.01 version, since that's the only English version I know exists.  I'm sure v1.00 existed too, but I was unable to find it (nor any other English translations).  In any case, if you can tell me the spell name pointer specifically for NCorlett+LNFT v1.01 version (the most common English version), then I'd appreciate it.

I don't know those.

7 hours ago, hmsong said:

I think the attacks are all screen freezing attacks.  So none of them could be "normal" attack

Sorry, but you are wrong here.
Just check Zable Fahrs side head - the firebreath one of them uses is actually the Gremlin spell (or that is one of the bugs the translation I use added) 

7 hours ago, hmsong said:

Btw, I thought all addresses are 3 bytes (before value), but the animation pointer seems to only have 2 bytes (assuming ST and MT are separate).

Please read it again.

On 6/30/2020 at 7:40 PM, praetarius5018 said:

I doubt you'll manage to do with spell animations what you set out to do but give this a try:
the animations are at 17E200+4x spellId, 4 bytes per entry, first 2 bytes are the ST animation, other 2 the MT animation

if you try to set an ST-only animation as MT the spell will crash the game and blindly guessing is right out since those 2 bytes are our "friends" pointers.

 

5 hours ago, praetarius5018 said:

Sorry, but you are wrong here.
Just check Zable Fahrs side head - the firebreath one of them uses is actually the Gremlin spell (or that is one of the bugs the translation I use added)

I thought Zabel Fahr's firebreath is a normal attack completely unrelated to Gremlin spell.  Do they share the same stats or something?  Because obviously, they do not share the same name nor spell animation (well, its firebreath isn't even screen freezing spell, so I thought it was a melee attack that uses INT stat or something).

Wait, did you mean that some melee attacks don't freeze the screen?  Because if so, I know that.  But my point was that spells like Sky Attack, Feather Blizzard, Gas Cloud, and Revenge Spike are probably screen freezing attacks too, just like how Power Punch (from Jewel Eater) is a screen freezing attack, even though my character doesn't do any animation if I were to use it.

5 hours ago, praetarius5018 said:

Please read it again.

Okay, let me rephrase my question.  For example, Diamond Missile animation is at 17E204~17E207, and the values are EA CB 06 CD (EA CB is for ST, and 06 CD is for MT).  I understood that part.  I'm guessing EA CB is pointer to some another address in the ROM, and 06 CD is a pointer to some another address -- after all, each spell animation takes a lot of bytes, so there's no way EA CB is the animation itself.  The problem is, I don't know where the pointers are pointed at.  If the values were xx yy zz, I would think the address is zzyyxx in the rom, but there are only 2 bytes.  I initially thought it would be 17yyzz, but that turned out to be false, since some spell animations like Pink Typhoon is 59 E2 (17E259 would not be the correct address, since that's the address of the spell pointer for Power Up spell).  Perhaps I'm not understanding what "friends" pointers are.

4 hours ago, hmsong said:

I thought Zabel Fahr's firebreath is a normal attack completely unrelated to Gremlin spell.  Do they share the same stats or something?  Because obviously, they do not share the same name nor spell animation (well, its firebreath isn't even screen freezing spell, so I thought it was a melee attack that uses INT stat or something).

Wait, did you mean that some melee attacks don't freeze the screen?  Because if so, I know that.  But my point was that spells like Sky Attack, Feather Blizzard, Gas Cloud, and Revenge Spike are probably screen freezing attacks too, just like how Power Punch (from Jewel Eater) is a screen freezing attack, even though my character doesn't do any animation if I were to use it.

No, I mean it exactly as I said.
Some seemingly "normal" attacks are actually spells that don't freeze the game and may even have a different animation than expected or when used by you.

4 hours ago, hmsong said:

Okay, let me rephrase my question.  For example, Diamond Missile animation is at 17E204~17E207, and the values are EA CB 06 CD (EA CB is for ST, and 06 CD is for MT).  I understood that part.  I'm guessing EA CB is pointer to some another address in the ROM, and 06 CD is a pointer to some another address -- after all, each spell animation takes a lot of bytes, so there's no way EA CB is the animation itself.  The problem is, I don't know where the pointers are pointed at.  If the values were xx yy zz, I would think the address is zzyyxx in the rom, but there are only 2 bytes.  I initially thought it would be 17yyzz, but that turned out to be false, since some spell animations like Pink Typhoon is 59 E2 (17E259 would not be the correct address, since that's the address of the spell pointer for Power Up spell).  Perhaps I'm not understanding what "friends" pointers are.

hmm if you want to know... how about you put a read breakpoint on D7E204 and cast the spell in ST variant and then watch where it goes with that pointer?

it may be a pointer but noone says it has to be the same bank or even a neat +0000 pointer; it could be added to C81657 for all I know to find the actual animation data at C8E241. No idea without looking at it, but really, does it matter?
Just change the 2 bytes and see what happens.

10 hours ago, praetarius5018 said:

No, I mean it exactly as I said.
Some seemingly "normal" attacks are actually spells that don't freeze the game and may even have a different animation than expected or when used by you.

Oh my.  I didn't know that.  Crap, I hope me screwing with some spells didn't screw up some of boss attacks (ex: I gave Rainbow Dust a non-damaging self-enhancements, and gave Ghost summon the Angel's Grail effect).

11 hours ago, praetarius5018 said:

hmm if you want to know... how about you put a read breakpoint on D7E204 and cast the spell in ST variant and then watch where it goes with that pointer?

it may be a pointer but noone says it has to be the same bank or even a neat +0000 pointer; it could be added to C81657 for all I know to find the actual animation data at C8E241. No idea without looking at it, but really, does it matter?
Just change the 2 bytes and see what happens.

Okay, I'll try that.  I just wanted to see how to make the caster finish the casting animation before the spell animation comes out.  That's really annoying for me.

Btw, something neat I found out (that you may want to use for 2.0).  The spell ID: F5 (it's called SBD) has a cool animation where the caster casts TransShape to the target, then immediately follows up with Thunder Jutsu.  And the caster finishes his casting animation too.  You may want to use it as a ST version of Double Spell.  I know I am.

Btw, which translation patch are you using for your SoM?  You don't seem to be using NCorlett+LNFT patch, since you called Detect "Analyser" and Iormungand "Jurmungand".  That means whatever patch you're using, you're using the more accurately translated patch.  But someone already said that the official Trials of Mana is incompatible with your SoM, so that must not be it.

6 hours ago, hmsong said:

Oh my.  I didn't know that.  Crap, I hope me screwing with some spells didn't screw up some of boss attacks (ex: I gave Rainbow Dust a non-damaging self-enhancements, and gave Ghost summon the Angel's Grail effect).

I know of the Zable Fahr firebreath, Tzenker feather shot, Dangaard screaming, Gorva clouds, ...

All of the following are behind item addresses but still "spells":
Carmilla (Queen) bloody dance, Carmilla Queen heart attack, Slime Prince red glow, Harpy talon drain, Sea Dragon frost breath, Frost Dragon ice breath, Death Machine laser, Guardian laser, Cockabird 8-dir shot, Cockabird feather hail, Basilisk petribreath, Gold Unicorn K.O. attack, Chibi-Devil bubble, Grell dance, Grell Mage dance, Sahagin Bubble, Kerberos firebreath, Petit Dragon breath, Needlion needle spam, Golden Bulette armor buff, Petit Tiamat breath, Assassin Bug poison ball, Zombie breath, Siren song, Shadow Zero's nerf beam, Ruster Bug shot, Ghoul headless, Zombie Dragon breath, Firedrake firebreath, Jewel Eaters green spit, Lightgazer cloud

for maximum confusion just look at Gildervine's Hammerbean. it is a spell and time freezing but does not darken the screen.

6 hours ago, hmsong said:

Btw, which translation patch are you using for your SoM?

Not 100% sure which exactly.
I have the one that says:

5f004abbe10bb_SeikenDensetsu3(J)_sinofmana025.png.304b8b2bb8a6a081f5d3f6646330bbb7.png

instead of 1.01e's:
5f004abe52d1d_SeikenDensetsu3(J)_sinofmana022.png.ba95a9f842b4e46fd97ac8fce08f7f43.png

2 hours ago, praetarius5018 said:

Not 100% sure which exactly.

I have the one that says:

5f004abbe10bb_SeikenDensetsu3(J)_sinofmana025.png.304b8b2bb8a6a081f5d3f6646330bbb7.png

instead of 1.01e's:
5f004abe52d1d_SeikenDensetsu3(J)_sinofmana022.png.ba95a9f842b4e46fd97ac8fce08f7f43.png

What da?!  I sure would like that version.  Is that the version where Lise's default name is spelled Riesz?

And your translation version doesn't say whom it's by or anything like that in the beginning?  For example, the 1.01e version says it in the character selection screen.  If I knew who it was by, then I can search for it (hopefully) and download it myself.  Unless, you're actually willing to post/send the translated ROM.

8 hours ago, hmsong said:

Is that the version where Lise's default name is spelled Riesz?

Nope, she is Lise as she should be.

8 hours ago, hmsong said:

And your translation version doesn't say whom it's by or anything like that in the beginning?  For example, the 1.01e version says it in the character selection screen.

It says the exact same as the other version there.

Jesus christ.  I just downloaded 20+ ips/roms of 1.01 versions from all over the internet from many many sites.  I even found 1.00 somehow.  But none of them do what your version does.  I'm aware you can't post the pre-patched rom, but could you please post the .ips file of the one you have?  If not, a link to where you found yours?

Sorry, can't do that.
The only version of that translation I have left has been integrated into the main patch at this point.

Forgot to make a backup before, lets hope I don't need it :S

Oh.  Too bad then.  It's still possible to make the ips file -- use the old 1.01e (post SoM patch) as a base, and use your new 1.01e (post SoM patch) as a goal, then use Lunar to create a patch.  But would you be willing to do that?

How should that work?
I'd have at best:
original 1.01e + SoM live version
vs
other 1.01e+ + current SoM dev version

the ips patch would just create garbage

So why not use the following?

1. original 1.01e + current SoM dev version

2. other 1.01e+ + current SoM dev version

I mean, you're the SoM dev, which means you have the "current SoM dev" version.  And original 1.01e is easy to find, which means you (and only you) should be able to create "original 1.01e + current SoM dev" version.

Of course, whatever patch that gets created, it would have to be applied on top of the original 1.01e rom (instead of raw J version rom) in order to be "other 1.01e" rom, but it'll still get the job done.

Not possible since the current dev version is already a fusion of translation and my work.

I see.  That's too bad then.  Oh well.  It'd be nice to be able to contact the original translation patch guy, but I was unable to.  No contact info (and the info that was posted in the guide no longer exists, since it was university email).  Thanks anyways.

Hey.  I heard that starting D10000, it affects the monster stats.  But I have no idea how many bytes are used for each monster, nor what each of those bytes mean.  I have rough idea what the orders of the monsters are (assuming it starts with Shell Hunter).  If it's not too trouble, could you please explain how many bytes are used for each monster, and what each bytes mean?  Thanks.

$D104A4 Rabite
00:    1A         sprite index
01:    21         palette index
02:    99 57 D2 action script offset
05:    A0         d5-7: index in base HP pack (see monster base HPs)
            NOTE: always 0xA0 except for bosses Koren and Heath
06: 00         (always 0 for regular monsters except for King Rabite, 0x55 for some bosses)
07:    5A         affects XP
            d7: multiply addend by 20 (see #$89 below)
08:    D1 
09: E4         (very often 0xE4 for regular monsters, 0x32 and 0x78 are common for bosses)
0A:    89         d0-d6: XP addend
            d7: subtract
0B:    B0         d0-6: attack power (d4-7 almost always 0xA for regular monsters, thus attack power almost always between 32 and 47)
            d7: 
0C: E2         (d7 almost always set)
0D:    D5         d0-6: defense power?
            d7: 
0E:    E3 E3     (these two values are almost always equal, except for a few monsters & bosses)
10: FD         (d4-7 always 0xF for regular monsters, various for bosses)
11: 00         (almost always 0 except for a few monsters & bosses)
12: 00 00 00 00 
16: 40         (only single bits are ever set)
17: 00         (only single bits are ever set)
18: 00         attack sparks (only d6 is ever set, only by Jagan)
            d0: pink element
            d1: purple element
            d2: blue element
            d3: fire element
            d4: dark element
            d5: lightning element
            d6: drain HP
            d7: drain HP
19: 21         (almost always 0x21, some bosses 0x64)
1A:    00 00    status effect
            d0:  snowman
            d1:  
            d2:  chibikko
            d3:  poison
            d4:  moogled
            d5:  petrified
            d6:  sleep
            d7:  wounded
            d8:  
            d9:  
            d10: 
            d11: 
            d12: 
            d13: silence
            d14: 
            d15: 
1C:    00 00     (always 0 for all monsters)
1E: 00         (only d6,7 are ever used)
            d6,7: 
1F: 00         d1: (used only by Ruster Bug and Needle Bird)
            d2: (used only by Great Demon and Dark Battum)
            d4,5: (these are both set for almost all bosses)
20: 00         (only d5 is ever used)
            d5: 
21: 10 
22: 03 03     (always 3 for all monsters)

 

someone did it not me.i just posted 

Thanks, but I don't understand what all these d11, d12 means.  It doesn't seem to be values.  For example, in the Rabite example you posted, 07 (experience)'s value is 5A.  What does that mean?  Does that mean Rabite gives 90 exp or something?  Because that's definitely not true.  I don't understand how that works.  Or is there a experience table or something somewhere?

praetarius5018, if you can help me in detail, I would really appreciate it.  Thanks.

1 hour ago, hmsong said:

praetarius5018, if you can help me in detail, I would really appreciate it.  Thanks.

You should ask the person that gave you those values, I can't read minds.

Well, the person who messaged me said, "I think monster stats are decided from 110000.  I don't know what each bytes do though, esp since monster stats vary depending on their level.  I suggest you go ask someone (namely praetarius) who actually knows what he's doing."

But now that I think about it, I guess it doesn't really matter, since I have no intention of editing monster stats.

But I do want to edit the level of the bosses, specifically for the first Full Metal Haggar and the first Machine Golems.  From what I can tell, normal enemies levels are as it is displayed (player levels' values are [level-1], but normal enemies are [level]), meaning if the normal enemy level is 05, then the value is 05.  But I don't know how the bosses' levels are calculated.  If the boss level is 04, what would the value be?  Could you please tell me that?  If I at least knew that, I can maybe work with it, since I know what I'm looking for.

We so already had that one...

On 6/12/2020 at 5:58 PM, praetarius5018 said:

Try the NPC tab. Priority for mobs is their level (+128 because the $80 bit is used for something)

Oh crap.  I guess I completely forgot.  My bad.  And thanks for your patience.

Hmm.  I'm trying to make it so that less exp is required for level up.  So far, I understood that it starts at 11F450 (for level 2), and it's 4 bytes each for each level (00 00 1E 00).  But it starts to get weird starting Lv25, and the numbers don't match.  How does exp required for level up work from Lv25 and on?  I know level 25 requires 57316 experience (which is DFE4, or 00 00 E4 DF), but I don't see anything like that nearby.  11F4AC (which is where I thought defined Lv25 exp) is 01 00 94 1C (which translates to either 7316 or 72852 in digits), which doesn't match anything that should resemble 57316.  Could you please tell me how req exp works, starting Lv25?

XX 00 AA AA

AA AA:49999 = 4F C3 max
XX:1 = exp 50000,XX=05 =exp 250000
XX×50000+AAAA =real exp

10 minutes ago, shiliwei said:

XX:1 = exp 50000,XX=05 =exp 250000

Oh wow, so that's how it worked?  Thanks.  I shall see how that works (but it's gonna be hard as hell to change things now).

I've no idea what exp curve adjustment has to do with spell balance at this point.

It's not spell balance.  I'm just creating another patch (or try), but I thought starting another topic would be a bad idea.  I'm sure you don't want your board filled with all these topics that only has a couple of messages.

Technically it has nothing to do with Sin of Mana at all so the entire topic is misplaced.
You could at least edit the topic title to something like "rebalance patches" (no spell and plural) at this point :D

 

Yeah, I wanted to rename the topic for a while (Hmsong's non-SoM patches), but I didn't see any way to do that.  Could you post a pic of what I'm supposed to click?  Thanks in advance.

Okay, when I move my cursor to the title, it says, "click and hold to edit the title."  I clicked and held it, but I still couldn't edit the title.

I just went to the first post and edited that to get the option to edit title.

Oh, thanks.

Okay, I created a patch that edits some monsters shown in certain map (thanks to MapJester) -- mostly to make ??? Seed available in all God Beast dungeons (to not punish people who overlevel).  That was a lot of work, but I got it done.

And that got me thinking.  I want to create a Black Rabite patch so that it can be fought in all routes.  You already told me that your SoM Black Rabite patch is incompatible with vanilla, so I want to make my own.  I'm intending on putting it on the stone platform in the final Mana Holyland (map 582).  I already know that address to call the enemy pack (NPC pack) in that map is 0CD5C6 (figured it out, thanks to MapJester).  The problem is, that address only calls enemies in already-existing pack.  For example, NPC pack 52 (digit 82) has Shapeshifter x2 and Shadowzero x1.  I know that lots of NPC packs from A0 and on are full of unused enemy packs (they're all basically group of one enemy only) -- and lots of them are just a group of Myconid, for whatever reason.

So here's the question.  Could you please tell me how to edit the enemies in each NPC pack? (I don't even know which NPC Pack contains which enemy, and I know they vary depending on the time of the day, but I know that most of A0+ packs don't depend on the time of day)  I know Black Rabite's ID is 68 (thanks to the SD3 document in RHDN), so I'm hoping I can put him in one of the unused NPC packs.  Probably Black Rabite + 2 Great Demons.  Then I can just call the new NPC Pack with 0CD5C6.

EDIT:  Holy crap!  I figured it out!  I just searched for 00 00 00 01 01 01 02 02 02 (because I knew A0+ packs calls the same enemies in monster ID order), and boom!  Hot damn.

Hey, it's been a while.

Are there any enemies that drop Demon's Claw or Wolf Devil's Oil?  I thought Lesser/Great Demon would drop Demon's Claw, but they don't seem to drop it, and Wolf Devil doesn't seem to drop Wolf Devil's Oil either.  Lesser Demon already drops 3 different items (Shade Statue, ??? Seed, Weapon/Armor Seed), so he can't be it.  Great Demon and Wolf Devil (and Death Machine, Gold Unicorn, and Nightblade) seem to only drop Weapon/Armor Seeds.  I even used save states to test all these.  Or is this another error from the vanilla game?

If they're error, then I'd like to fix that.  Could you tell me the addresses for the drops for Great Demon and Wolf Devil?

1 hour ago, hmsong said:

Hey, it's been a while.

Are there any enemies that drop Demon's Claw or Wolf Devil's Oil?  I thought Lesser/Great Demon would drop Demon's Claw, but they don't seem to drop it, and Wolf Devil doesn't seem to drop Wolf Devil's Oil either.  Lesser Demon already drops 3 different items (Shade Statue, ??? Seed, Weapon/Armor Seed), so he can't be it.  Great Demon and Wolf Devil (and Death Machine, Gold Unicorn, and Nightblade) seem to only drop Weapon/Armor Seeds.  I even used save states to test all these.  Or is this another error from the vanilla game?

If they're error, then I'd like to fix that.  Could you tell me the addresses for the drops for Great Demon and Wolf Devil?

from 11C3F7 to 11CA6F are monster item drop code.u can search easy.

from Myconid to Black Rabbit.

Oh wow.  Thank you so much.  It may be in Japanese, but there are pictures included in it, so that helps immensely.  And I can sort of read Japanese if it's not Kanji.

I knew it.  Demon's Claw and Wolf Devil's Oil are never dropped.  I shall mitigate that, as soon as I figure out how (shouldn't be a problem).

If there are other information you can give me, I'd appreciate that.  It may give me ideas on new things that I never even thought about.

47 minutes ago, hmsong said:

I shall mitigate that, as soon as I figure out how (shouldn't be a problem).

11C3E0-area one row per enemy
11C3E0   - base chance rare drop pre luck
11C3E1-6 - all 20? seem unused
11C3E7-C - rare items
11C3ED-F  - common items

47 minutes ago, hmsong said:

It may give me ideas on new things that I never even thought about.

Like it being impossible to get the "common" items once you get 20+ luck?

5 hours ago, praetarius5018 said:

Like it being impossible to get the "common" items once you get 20+ luck?

Argghh.  God damn it.  This is gonna be a pain.  I thought the rare items would be more common or something, because it uses up 6 bytes, whereas common items use 3 bytes.  Apparently, I got the whole thing wrong.

Could you please tell me exactly how the mechanics behind odds of common/rare item work?  Or is it that after 20+ Luck, the game ignores the last 3 bytes or something?  Or is it that for certain range of Luck, it uses specific bytes for the odds? (ex: if Luck is 15, it uses byte 1, 3, 5, 7, 9)

Oh, and thanks for telling me how to manipulate the treasure chest drop rate.  I'm guessing the odds of drop is out of FF (255), since Black Rabite is 64 (100), but it doesn't always drop the chest.

chance for chest at all:
1/3, independant of monster type

chance for rare item is:
((LUCK+5) x LUCK) / 10 + flat chance from enemy out of 100

if it results in a rare item it is simply 1/6 for each of the possible rare drops
if it results in a common drop instead, 1/3 for each common drop, straight forward really

there's a routine in the game that runs every so often (after every kill?) and if it sees that you have 20+ luck it just randomly decides to max your luck out.
I don't know why it is there but it is.
Combine it with the above and you get a rare drop rate of "yes" or at least very close to it.

Ahh.  I see.  So if I were to change that, for Myconid, then I can change it to: 49 57 53 49 57 53 49 57 53, and that'll make everything even regardless of Luck?  Or maybe 49 49 49 49 57 53 57 53 53?  I'm guessing the order of first 6 bytes (the rare items) don't matter?

The former.

Thank you.

Hey,

Sorry to bother you once again (to both of you, praetarius5018 and shiliwei), but do you know how to make trap room into non-trap?  Using MapJester, I was able to make the locked door disappear (and the whole "open door after the battle" affect), but the message that says, "Trapped" in the beginning of the battle is something I was unable to make disappear.  From what I can tell, if you enter a room that begins with "Trapped" message, the enemies don't drop treasure chest (well, they do, but extremely rarely).  My goal is to make certain trap rooms in the Valley of Flames into non-trap rooms, so that enemies will drop items after the battle.

On 2020/9/3 at 2:58 AM, hmsong said:

Hey,

Sorry to bother you once again (to both of you, praetarius5018 and shiliwei), but do you know how to make trap room into non-trap?  Using MapJester, I was able to make the locked door disappear (and the whole "open door after the battle" affect), but the message that says, "Trapped" in the beginning of the battle is something I was unable to make disappear.  From what I can tell, if you enter a room that begins with "Trapped" message, the enemies don't drop treasure chest (well, they do, but extremely rarely).  My goal is to make certain trap rooms in the Valley of Flames into non-trap rooms, so that enemies will drop items after the battle.

sorry,I don't know 

same, also I don't see the point in fretting over a few chest chances.

Well, for my Better Monster patch, I wanted to make it so that the one-time monsters can be encountered again at any time.  For example, Matango Oil can only be obtained from Darth Matango, who can only be encountered before defeating Mispolm.  Once you defeat him, Darth Matango is gone for good, hence Matango Oil is gone for good (well, except Magic Seed chance).  Luckily, Mispolm dungeon doesn't have any trap rooms, so I can use any of the 5 isolated areas.  Similary, I wanted to make all God-Beast dungeon monsters to be encounterable (and their drops be obtainable), but only in isolated areas (usually one exit), where the player can choose to ignore.  There are only 3 spots in Flame Valley, and all 3 are Trap rooms.  Hence why I wanted to disable the Trap.

 

32 minutes ago, hmsong said:

Once you defeat him, Darth Matango is gone for good, hence Matango Oil is gone for good (well, except Magic Seed chance)

I don't understand what do u mean?do u mean we can't encounter lv 28 Darth Matango  after we beated Mispolm?

if you want the item like "Matango Oil"or something else,u can set the item code to another monster.

23 minutes ago, shiliwei said:

I don't understand what do u mean?do u mean we can't encounter lv 28 Darth Matango  after we beated Mispolm?

As far as I know, you can't fight Darth Matango (regardless of level) after you clear Mispolm, just like all God-Beast dungeons.  So enemies like Sea Dragon, Siren, etc will be gone for good from the game once you beat their particular dungoens.

26 minutes ago, shiliwei said:

if you want the item like "Matango Oil"or something else,u can set the item code to another monster.

Yes, I could, but I'm trying not to edit the item drops too much (except to edit way-too-many-Puipui Grass). 

Besides, I WANT to be able to fight Darth Matango.  Specifically, similar to kethinov's No Missable Monster for his Secret of Mana patch, I want to create one for SD3, where you can encounter any monster by the end of the game (and access their drops).

1 hour ago, hmsong said:

As far as I know, you can't fight Darth Matango (regardless of level) after you clear Mispolm, just like all God-Beast dungeons.  So enemies like Sea Dragon, Siren, etc will be gone for good from the game once you beat their particular dungoens.

u still can fight them after beat their particular dungeons,they all disappear after Dark beast show on the map。anyway, i can't help for"trap"

I wouldn't count losing access to the item a bad thing; magic reflection can be quite broken or useless with little to no middle ground.

8 hours ago, shiliwei said:

u still can fight them after beat their particular dungeons,they all disappear after Dark beast show on the map。anyway, i can't help for"trap"

I see.  Thanks anyways.

3 hours ago, praetarius5018 said:

I wouldn't count losing access to the item a bad thing; magic reflection can be quite broken or useless with little to no middle ground.

Well, what I wanted was have access to Firedrake's drops, since its drops are unique.  One trap room has only Firedrakes, but because of the traps, you can't access their drops.  Although I can just replace enemies in some areas with just Firedrakes (well, the NPC pack that has Firedrakes), I wanted a corner room in Flame Valley.

That sounds way better than trying to meddle with potentially story related triggers.

9 hours ago, praetarius5018 said:

That sounds way better than trying to meddle with potentially story related triggers.

Huh?  You think messing with trap is potentially story related trigger?

But now that I think about it, you might be right.  It probably has to do with the script on the beginning of the battle, similar to how before boss battle, there's a dialog of some kind.

... Damn.

Hmm.  I've been messing with item drops, and I'm getting weird results.  For example, I've made all regular enemies have the following drops, just for testing:

0A 20 20 20 20 20 20 [21 20 1F 1E 1D 1C 1B 1A 19]

But whether in the beginning of the game or at the end of the game (where most characters are vanilla max stats), all enemies end up dropping are Basilisk's Fang (21), Item Seed (19), and sometimes Mysterious Seed (1A).  I did see Flying Seed (1B), but extremely rarely.  The rest drops (Magic Seed, ??? Seed, Weapon Seed, Earth Coin, and Gnome Statue), I have never seen.  Is this normal?  Is there a way I can make it so that the other byte items are actually possible?  I tried playing with 1st byte a bit (0A), but I didn't really find any different results.

Hmm.  In addition to the question in the previous post, do you know how to edit the EXP of 2nd Bill/Ben boss? (fought in the Scorching Desert)  The EXP of first Bill/Ben (fought in Rolante) can be edited at 111EB2, but for whatever reason, it doesn't seem to affect the 2nd Bill/Ben.  Could you please tell me the address for the 2nd Bill Ben EXP?  Thanks.

They should use 110DF6 and 111EB2 for that.
For the human sized bosses there always seem to be 2 full stat version and it is chosen randomly which gets used.

Ohh.  So I guess that means Lugar and Machine Golem does that too.  What are the codes for those guys?  It seems pretty random (Bill/Ben's ID was DA, but now, apparently, their other ID is 63?).

Once again, thanks.

Edit: I just tried the code for both 110DF6 and 111EB2, but neither seem to affect the Desert Bill/Ben EXP.  Uhh, please help?

as alternate ids I have:
Bill/Ben: 63, DA
Lugar: 69, D7
Koren: 6F, AF
Deathjester: 70, B4
Jagan: 71, B2
Heath: 74, B5
Dangaard; 78, 107

make sure you change the exp value BEFORE you enter the room.

I changed the code before entering.  I even tried it by changing the ROM address permanently, for both addresses (I changed the value to 80, from 87/85).  No changes in EXP gain after the battle (didn't kill anyone on the way).  I even tried with and without changing the class, to see if that makes any difference.  Nope.  What am I doing wrong?

As for Dangaard, it seems they're actually different enemies.  One is the front view Dangaard, and the other is side view Dangaard.  Only side view Dangaard drops EXP (which means 8A is 0 EXP no matter what level).

Hey.

I'm trying to put the Magic Pots in the final dungeons, and I'm having trouble putting one in an area.  Specifically, I want to put it in map 1086 (near the dead-end door), but whenever I put it, it gets behind the layer and therefore, inaccessible..  If I disable one of the layers, I can see the Magic Pot, so I know I got the location right (in X/Y axis).  Could you please tell me how I could get the Magic Pot sprite to the foreground, therefore accessible for the normal gameplay?

Nvm.  Figured it out.  Thanks.

Well, I at least solved one problem I was trying to solve.  I said earlier that I'm trying to mess with the trap rooms (so that it wouldn't trigger).  I figured it out.  As suspected, it's the beginning script.  And that's found here:

1.thumb.png.0504215b6ee44a8a522b38ab8cbd8402.png

I used it to not only disable some trap rooms, I made it so that my Black Rabite patch would use the cool script that the original Duran/Angela path had (that's the picture above).  I figured that you might want to use this info for your Black Rabite patch or any other cool things.

Did you check how that event interacts with trap rooms if the Black Rabite has already been beaten in a different place?
E.g. you beat BR in his original spot and then trigger the same event in a later trap room with another BR placed among the mobs.

4 hours ago, praetarius5018 said:

Did you check how that event interacts with trap rooms if the Black Rabite has already been beaten in a different place?
E.g. you beat BR in his original spot and then trigger the same event in a later trap room with another BR placed among the mobs.

I know that once you beat the black rabite in the original room (or even in the new Mana Holyland room), that dialog doesn't come up again.  For example, if you beat the Black Rabite in the original Dragon's Hole, then the event I selected for my new patch doesn't play out (although you can still fight Black Rabite, since I specifically made it so that it respawns -- I did this so that people don't have to reset the game if it doesn't drop the chest -- I wish I knew how to make the BR drop the chest at 100% rate).  To answer your question, I don't know how it'll react if BR is placed among the mob though.  I'm guessing the beginning dialog gets activated as long as you don't get that "victory dance" thing that's specifically related to that specific beginning dialog.  So for example, in your BR patch, I'm guessing the fight ends with the typical 0E00 ending script, instead of original Black Rabite's 46E9 ending script.  If my guess is correct, you'll continue to get the beginning dialog, since the fight didn't end with 46E9 ending.  This is just my guess though.

The problem for your BR's fight location is, it is held in one of the maps where you have access to in the first visit.  I think the script will enact, even in the first visit (without the BR mob).  I had similar trouble too, since I originally placed my BR in map 582, but after playing a bit, I realized that the beginning dialog plays out in map 249 too (they share the same map).  Ultimately, I had to change the location entirely to map 618, since that map doesn't share with other maps.

4 hours ago, hmsong said:

in your BR patch

what BR patch?

23 minutes ago, praetarius5018 said:

what BR patch?

bonusfight__BlackRabite_Bigieu_DKS.ips

eh, that is just an optional fight. I've planted black rabite proper on the required path.

6 hours ago, praetarius5018 said:

eh, that is just an optional fight. I've planted black rabite proper on the required path.

Oh yeah (the mandatory fight where the locked door opens).  Still, even that path didn't have the beginning script (and it shares the same map as the first visit to holyland).  Well, I guess that can't be helped, since you probably wanted Black Rabite to guard that door.  And you wouldn't be able to change that ending script either (beating the enemy unlocks the door).  Hmm.  Still, having that optional fight (BR + 2 bosses) in some isolated place would allow you to use the cool script.

In any case, perhaps you can use the "beginning script" to increase the pleasure of some parts of the game (not limited to BR fight).  I felt that I should post the method, in case someone (mainly you) wanted to modify things.  I remembered you saying that you didn't know how to modify the "trap" rooms, which is the same as the beginning script.  I'm not sure if you would use it, but just in case.

Hey, I was wondering.  Are certain character sprites being used in the vanilla game?  Specifically, 91 (some queen?), 92 (some princess?), and C1 (Young Nikita).  I don't think I saw those sprites being used anywhere in the game, but I feel like that's unlikely, and I just missed it.

I wanna say in some flashbacks with the queen of altena and/or duran's dad?

On 12/24/2020 at 6:16 PM, praetarius5018 said:

I wanna say in some flashbacks with the queen of altena and/or duran's dad?

Yeah, I looked for that (in both Duran and Angela scenario).  I didn't see them anywhere.  Nor did I see Young Nikita in Hawk's scenarios.  At least not in tutorials nor their endings.  Hence why I was asking if you'd know (probably in some unrelated scenes), since you probably looked through all scenarios.

Hey, do you know how to change the prices of the inns?  They all have various prices, and for lots of early ones, the inn price just isn't worth it, so I want to make most of the inns cheaper.  But I have no idea how to do that.  Could you please help?  Thanks.

praetarius5018

Hey, I know I'm reposting, but I wasn't sure if you saw this post earlier (the board was quiet for quite some time), so I'm asking again.

Could you please teach me how to change the prices of the inns?  They all have various prices, and for lots of early ones, the inn price just isn't worth it, so I want to make most of the inns cheaper.  But I have no idea how to do that.  

I tried using the scripts of different inns, but they ended up doing some weird stuff, like my characters going to some weird directions to sleep.  So that failed.

Could you please help?  Thanks.

no, I do not know

@praetarius5018

Hey, it's been a while.  I hope you're doing well.

To the main point.  I'm trying to attach the level up error correction (the issue with level-ups where max stats were sometimes those of later levels), specifically for my Better Starting Stats and Class Balance Stat (currently, using those makes the max stats go all over the place from time to time).  I know you created your own fix only patch, but that's incompatible with Trials of Mana, and my patches are mostly intended for Trials of Mana.  From what I can tell, ToM is compatible with any corrections that deal with addresses less than $EFFFFF, and unless the "additions" are huge or something, I'm sure I can add that in $D3F150 or something.  I would like to add that correction to my patch (of course, I'll give you the credit).

Good luck with that.

The game tracks two instances of a characters "level"; assume 7FF111 is the displayed level - 1 then 7FF112 is the level used for determining stat caps (itself capped at 20, reset to 0 on class change). The later goes up whenever the game thinks you have enough exp to level up and it can queue a level up screen; the bug happens because you can kill multiple enemies between qualifying the first time for a given level up and the screen actually coming up.

5 hours ago, praetarius5018 said:

Good luck with that.

The game tracks two instances of a characters "level"; assume 7FF111 is the displayed level - 1 then 7FF112 is the level used for determining stat caps (itself capped at 20, reset to 0 on class change). The later goes up whenever the game thinks you have enough exp to level up and it can queue a level up screen; the bug happens because you can kill multiple enemies between qualifying the first time for a given level up and the screen actually coming up.

I guess I screwed up my phrasing.  My bad.  What I meant is, could you please help?  I guess you sort of did, but you lost me.  Are you saying 7FF111 is the value I need to look for? (aka 11 F1 7F)  That can't be the address, since the address of the original Japanese version only goes up to $3FFFFF.  If you can tell me the addresses I need to look at, I'd appreciate that.

On 14.8.2021 at 3:48 PM, hmsong said:

I guess I screwed up my phrasing.  My bad.  What I meant is, could you please help?  I guess you sort of did, but you lost me.  Are you saying 7FF111 is the value I need to look for? (aka 11 F1 7F)  That can't be the address, since the address of the original Japanese version only goes up to $3FFFFF.  If you can tell me the addresses I need to look at, I'd appreciate that.

you want to help me with FF5? thanks, I appreciate it

2 hours ago, praetarius5018 said:

you want to help me with FF5? thanks, I appreciate it

Huh?  I feel like that message is for someone else.  I don't think I have the skills necessary to help you (never even played that game before).  Having said that, if I can, then yeah, I'll help you.

Back to what I was saying earlier, could you please tell me what address and/or value I need to look for the SD3 level up fix?

Ok, since it totally went over your head:
I'm absolutely not interested in working on SD3. Especially after what happened here on the first few pages.

That was the address you need to look for, or one of the potential ones; stuff in ram in sd3 can be moved to different locations on save/load and world map transitions.
You first need to find the place where the displayed level is saved - it displays it as +1 compared to the value in ram - in my last save it was 7FF111 for one of my characters, then go to the value after it and see how that behaves at/before level up.
I recall I send you a debugger on the first few pages here, so you should have all necessary tools to find the issue.