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

Poll

Which control scheme would you prefer for the weak/strong attacks

B for Weak, forward + B for strong
0 (0%)
B for Weak, A for strong (running only available in towns)
0 (0%)
Forward B for weak, B for strong
0 (0%)
B for weak, Y for strong (X used for own menu and X again to change to other characters menu)
0 (0%)
other (please post your suggestion)
0 (0%)

Total Members Voted: 0

Author Topic: Secret Of Mana Gameplay Improvement Hack  (Read 185675 times)

zhade

  • Full Member
  • ***
  • Posts: 193
    • View Profile
    • zhaDe's stuff
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #360 on: January 08, 2017, 09:39:14 am »
D MAS:
It's not a bad idea, there needs to be something that prevents you from blocking all the time or else it would be way op (in the new thing, you will be able to hold the button). Altho beign able to hold block as long as you like when at 100% would make it so you can always hold block and wait for the enemy to attack, then attack safely as the enemy is recharging its power%. So that gave me the idea that, as you hold block, your power% decreases and if it gets lower than 25% (or something) it goes to 0% directly, and while it is between 0 and 25 you can't block but, if you are at 100%, you can hold it for a small amount of time before it starts decreasing meaning you can try to time your block well and have the opportunity to counter-attack, or play it safe and hold it longer in times of danger where not beign hit is more important.

Sprout:
The bow does not yet get extra distance, but it will (altho probably less then it did in the old patch), I'd like it to have a '"rain of arrow" attack as well
As for the number of patches, if you mean patch files, only 1, but with many different selectable options :P As much as I thought that keeping each feature seperate from each other would make it harder for me, it actually makes it so much easier to keep it all organized.. And makes it easier to keep compatibility with other patches, like for instance, The "MP visible at all time" thing, is not compatible with Mop's ancient cave because of how he placed his custom graphics used to display the time and floor at the same spot I used for the MP graphics. Since you can disable it, other features can still be used without the need for a different patch. It also makes it possible to include WIP features and stuff that needs testing. If you meant of many of those options there will be.. no idea, probably lots of them, but at the same time, you won't be able to choose aspects of a feature.. like say, "strong and weak attacks" will include all alternate attacks for each weapon, so the javelin melee attack and the bow's rain of arrow are both in or out.

Heres what my baby, my project development program called "Snes Asm Studio" looks like (just had to show it.. im kinda really proud of how I managed to make it all work to be honest  :-[) :
an ASM file:


a definition (adf) file:


Once compiled, its possible to view each line's offset of an ASM file:


Project options manager:


An asm file which will have some lines included only if some option is chosen at patching-time


It has some cool useful features like auto-completion:


Fast navigation: middle clicking a subroutine name (like after a JSR) will navigate to the sub-routine's code:


named(defined) addresses appear in yellow, named values appear in blue. middle-clicking an address or value name will navigate to the definition file where it is defined:


Compiling Technicality:

The compiler first reads a definition file called DEF.adf in the root folder, which will have some "FILE" instruction that tells the compiler to include other reference files.
Reference files can have a "REQ 'some option'" instruction meaning it will only be included if the specified option is used.
Reference files are responsible of specifying the path of each asm file to be added to the list of asm files that will later be processed (usually done with "DIR" instruction that will include all asm files in a directory).
Reference files can act as folders (those blue folders) so for example each feature is within a reference folder that starts with a "REQ" instruction with the feature's option name, then a "DIR <>" instruction meaning, "add all asm files in this directory (or any of its sub-directory) to the list of asm files to be processed"
Reference files can define address or values name using "/", which basically mean "if you encounter this word in an asm file, treat it as if it was this address or value"
Reference files can declare "relative" 24-bit address names (usually used for sub-routines) by using the "!" prefix : "!someRelativeSub" these will be bound to the last "relative block" (defined with the "@" prefix ie: "@E00000") but will have an undefined value until later (more on this later)

Once the compiler is done with reference files, it start processing the .asm file list
.asm files have a special instruction "@OFF 'someAddress'" that basically sets where, in the ROM, the assembled code bytes will be written.
If a @OFF instruction address is an undefined relative address like say "@OFF someRelativeSub", the value of the "relative address" will be set to the matching "relative block's offset", so using the same example as above,its value would be $E00000 so "@OFF someRelativeSub" would become "@OFF $E00000'". Then, until another "@OFF" is reached, each assembled byte will increase the relative block's offset by 1.
So if later another @OFF instruction address is an undefined relative address which is bound to the same "relative block" (@E00000) lets say.. "@OFF someOtherRelativeSub" its value will be set to the block's offset which has been increased by the number of bytes in "someRelativeSub" so, say "somRelativeSub" had 2 instructions: JSL $C00000 and RTL, so 5 bytes total, "somRelativeSub" would be set to $E00005.
Relative Addresses once set act exactly like defined addresses names, so whenever they are encountered, they are repalced by their value ie: "LDA someOtherRealtiveSub" would be replaced by "LDA $E00005".
In the case where a relative address is encountered before being defined, it is replaced by a temporary dummy value "$000000" (or any 24-bit address, doesnt matter)
 
Once the compiler is done processing all .asm files in the list, it starts over and do it again once more. Since all relative address should to be defined by now, no undefined relative address should be encountered and replaced by a dummy value this time, if an undefined relative address does appear, a compilation error is thrown and the programmer is judged guilty of having made illegal use of an undefined address with no possibillity of appeal.



January 13, 2017, 03:42:55 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
Ok, time for version 0.02 :  V0.02
it includes a new version of the patcher, the old version wont work with the new patch. The patcher now shows a little description for each option.

New features:
* Walking to the edges of the screen
* Faster Enemies (WIP, testing needed)
  This makes enemies move faster/attack more frequently
* Faster chest openning
  Mop asked if there would be a way to skip the "chest openning" animations, since chests drop so much more often in Ancient Cave, I found a way to make it work, and thought I should add the feature in my mod too.
* Manual blocking (well.. not really)
  For now, it only shows the character blocking animation as you hold L ... it won't block attacks or anything tho :P

Changes:
* strong and weak attacks:
  the javelin melee attack is now a thrust instead of a slash


I've changed the location where my routines are written in the expanded region of the rom from E0/0000 to F0/0000, this makes it compatible (at least some of the features..) with Moppy's Ancient Cave. It is now possible to change this location with the patcher's "definitions.." button
« Last Edit: January 13, 2017, 03:42:55 pm by zhade »

Pizzano

  • Jr. Member
  • **
  • Posts: 25
    • View Profile
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #361 on: January 13, 2017, 09:21:53 pm »
Awesome! I'm glad you added the ability to walk to the edge of the screen.   :thumbsup:

I'm not sure if improved range on the bow is part of the weak/strong attacks, but any chance you can add the increased range on the bow as a separate option?
« Last Edit: January 13, 2017, 09:27:54 pm by Pizzano »

zhade

  • Full Member
  • ***
  • Posts: 193
    • View Profile
    • zhaDe's stuff
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #362 on: January 14, 2017, 11:28:43 am »
Awesome! I'm glad you added the ability to walk to the edge of the screen.   :thumbsup:

I'm not sure if improved range on the bow is part of the weak/strong attacks, but any chance you can add the increased range on the bow as a separate option?

It took me quite some time to get the "walking to the edges" thing to work actually, my old code was full of nonsense lol. I remember there was a bug in pureland related to it at the cutscene where the tree is seen. the screen would scroll too far because it normally stops because of the other characters, ill have to fix that later.

About the bow, it will be included in the strong and weak attack option, im working on this right now, just added some code that gives the axe an increased knockback so each hit pushes enemies around. For the next version ill focus on "strong and weak attacks" and "manual block", there probably still will be some weapons lacking some attacks, but the bow's increased range should be there, IIRC it was just a small change.

While working on this I had "faster enemies" on, and I don't know if it's because I had just woke up, but on my first try, I got my ass kicked and died at the very first rabite lol. You guys should try this one out, really makes the enemies much more aggressive !

SageOwl

  • Jr. Member
  • **
  • Posts: 81
    • View Profile
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #363 on: January 14, 2017, 11:38:28 am »
For some reason it isn't working on my sd2snes, but fine on emulator.

zhade

  • Full Member
  • ***
  • Posts: 193
    • View Profile
    • zhaDe's stuff
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #364 on: January 14, 2017, 11:52:26 am »
For some reason it isn't working on my sd2snes, but fine on emulator.

Damn.. Ill have to get my hands on one of these someday..

What happens ? just wont run at all ?

Could you try without "MP shown below status area" ?

Also, does anybody know if these special cartriges care about the rom checksum ?

Lancalot117

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #365 on: January 14, 2017, 08:04:13 pm »
I don't know why, but I used the new patcher and the hack wont work on any rom for Secret of Mana for me. I made sure it was showing green for file size and CRC32 also. Using Snes9X v1.5.4.1. Am I doing something wrong?

zhade

  • Full Member
  • ***
  • Posts: 193
    • View Profile
    • zhaDe's stuff
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #366 on: January 15, 2017, 05:22:28 am »
Lancalot117:
I just tried (with all options on) using the patcher and the patch in the zip file and it worked.

* Are you sure you used the patched rom ? I mean, the patcher doesn't patch over the rom you select, it creates a new file in the directory where your rom is (named "patched.smc" by default). I must say its not really obvious.. the box on the left of the "apply" button is where you set the name of the file that will be created.

if you did use the newly created rom:

1) What happens when you load the rom ?
2) What is the size of the created rom (should be 4mB)
3) Did you select all options ? If not can you send me the "debug.txt" file that is in the same directory as the patcher ?

Lancalot117

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #367 on: January 15, 2017, 09:55:26 am »
wow, well I found the patched.smc file in the same directory as the original rom, I had no idea it was there.
Just a suggestion, I think it might be better to have your patcher in later updates let the person know there was a new
patched rom added to the directory. Everything works fine as it should.

zhade

  • Full Member
  • ***
  • Posts: 193
    • View Profile
    • zhaDe's stuff
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #368 on: January 15, 2017, 11:19:48 am »
wow, well I found the patched.smc file in the same directory as the original rom, I had no idea it was there.
Just a suggestion, I think it might be better to have your patcher in later updates let the person know there was a new
patched rom added to the directory. Everything works fine as it should.

Haha, yea sorry, like I said, its not very obvious, the button beign labeled "Apply" kinda suggests the patch will be applied over the selected rom.. :crazy: my bad. Ill change it in the next version. Im glad it was only that, thought I might have broken something major in the patching process :P

SageOwl

  • Jr. Member
  • **
  • Posts: 81
    • View Profile
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #369 on: January 15, 2017, 02:00:16 pm »
I'll futz about with it later and see what is breaking it for you. Really want to try it on there.

D MAS

  • Jr. Member
  • **
  • Posts: 5
  • Apathetic Loser
    • View Profile
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #370 on: January 15, 2017, 11:33:56 pm »
Thanks, zhade. Honestly I'm happy with the evade as is. But, maybe you could tap 'L' to evade (full immunity) and hold it to guard (take about half or a third damage or something)? I'm not sure how easy or hard it would be to modify damage like that in Seiken Densetsu 2. Just throwing it out there. And I like a lot of your ideas, like the spell mapping, spell cooldown (even though I'm spam-happy af SD2 desperately needs something like that), and I can't express how much better the increased speed of combat makes things, Seiken Densetsu 2's vanilla combat is fine, just lacking. The spell cooldown idea reminds me of the Star Ocean games, actually.

EDIT: So, are there any ideas for balancing the spells themselves? Some of them are f***ing broken. XD

Sorry for being obnoxious with my question. XD
« Last Edit: January 16, 2017, 07:02:59 pm by D MAS »

SageOwl

  • Jr. Member
  • **
  • Posts: 81
    • View Profile
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #371 on: January 17, 2017, 10:56:49 am »
It goes to a black screen and nothing else. I tried all of the patches and none of them work. In fact, I even tried patching the ROM with just the patcher and that wouldn't load either. I cannot imagine it is the ROM I am using since the CRC and filesize matches up and it works on an emulator.

zhade

  • Full Member
  • ***
  • Posts: 193
    • View Profile
    • zhaDe's stuff
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #372 on: January 19, 2017, 10:38:59 am »
Oh ! I just noticed the rom is actually 1 byte larger than it should.. The real hardware probably doesn't like this at all.. You can try to just remove that last byte using an hex editor or wait and ill post a link to an updated version of the patcher which will expand the rom to the proper size.
note to self.. in vb.net arrays have elements 'up to' the specified value so Byte(10) is 11 bytes, byte(0) to byte(10)... :laugh:

Zeikar

  • Full Member
  • ***
  • Posts: 108
    • View Profile
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #373 on: January 19, 2017, 10:57:44 pm »
I need to find the time to try this out

dejan07

  • Full Member
  • ***
  • Posts: 109
    • View Profile
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #374 on: January 21, 2017, 10:47:27 am »
Sorry to bump here this way but is it possible to exchange the backround image in the intro sequence from this:



To this:



The intro looks so much better in the jap version.

Vanya

  • Hero Member
  • *****
  • Posts: 1489
    • View Profile
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #375 on: January 22, 2017, 10:40:10 am »
The problem with that is that the title text is part of the background image IIRC.
So it would take some effort to translate it properly without butchering the image.


zhade

  • Full Member
  • ***
  • Posts: 193
    • View Profile
    • zhaDe's stuff
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #377 on: January 22, 2017, 12:55:45 pm »
ExL sent me a fixed version of the origninal background, without the blurry area a while ago:

Original:

Mockup Of how it could look like with the US title over it:


The real problem is my inabillity to insert it back into the game : /
For one, it needs to be compressed and im really bad when it comes to compression, only had to deal with it to decompress weapon graphics to view them properly in my animation viewer, but those used a very simple compression algorithm. Then, what I have is a png, it would have to be transformed into the proper graphic format before beign compressed.

Hiei, who was working with a team on retranslating the game from japanese to french have sent me some code a while ago, he said at first they tried inserting their new graphics uncompressed, skipping the decompression part, but it ended up making some visual errors, so they ended up compressing it. He sent me a patch so I could see for myself, and it did work. The hard-som patch also had a custom title-screen, so it sure is possible.. it all depends on my abilities at this point :P

somEdit manages to uncompress the title screen, so I might be able to find how it does it looking at the code.

But I guess my best hopes would be that mop helps me a bit with it. But anyway, since this might end up taking lots of time, because it will require me to learn stuff about graphics and compression etc.. I probably wont get into it until later, focusing on gameplay elements first. But it surely is something I would like to have in the end.

January 24, 2017, 06:14:39 am - (Auto Merged - Double Posts are not allowed before 7 days.)
Alright ! I finally managed to make the game run anims in other banks, meaning I can now make my own animations instead of having to rely on tricks like what I did with the javelin..
Heres my progress with the rain of arrows attack : Video
Its hard to use right now, ill have to change the range and stuff.. I think ill also make all arrows fall at the same time with a different pattern.
I've changed the regular axe attack too, the slash now is wider and the axe now pushes enemies when it hits.
« Last Edit: January 24, 2017, 06:14:43 am by zhade »

Vanya

  • Hero Member
  • *****
  • Posts: 1489
    • View Profile
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #378 on: January 24, 2017, 02:00:10 pm »
Nice!! That animation is wicked. I can see that as an awesome charge ability.
Also, nice to see the title screen has made some good progress than last I heard.
I was going to mention the compression thing, but I don't know much about that other than I don't know much.

Atrushan

  • Jr. Member
  • **
  • Posts: 65
    • View Profile
Re: Secret Of Mana Gameplay Improvement Hack
« Reply #379 on: January 25, 2017, 10:00:12 am »
Is the rain of arrows an aoe or does it just hit one enemy?