News:

11 March 2016 - Forum Rules

Main Menu

Secret of Mana, Turbo - Beta 210915

Started by Queue, January 31, 2019, 06:45:12 PM

Previous topic - Next topic

GrimVandal

Would it be possible to give the healing water spell (undine) from Primm its own cooldown?

eg.:
healing water has a cooldown of 10 secs
other spells from primm have a cooldown of eg. 5 secs


Vanya

Wouldn't that be easier to control by simply adjusting how many HP the spell heals?
For example if the standard cool down is 5 sec and the spell heals 200 HP,
changing the cool down would be 200 HP healed every 10 sec,
but that is the same as reducing the amount healed by 50%,
so 100 HP every 5 sec thus is essentially the same amount over time.

andrewclunn


Uberdubie

#83
After a quick try -- LOVING what I am seeing here so far!  This is indeed the dream modifcation for this game, and one of the best romhacking experience I've ever had with the customizable setup of the .zps file you've composed.

My only concern right now is the game's flow feels too fast and a bit too close to easy-mode at the moment.  I've only played for about 30 minutes so far, and right away dungeons are so much faster to breeze through considering you can endlessly run around and keep spamming attack with no downsides.  And with every fast hit doing 100% weapon damage, basic enemies that take multiple hits go down soooo fast now -- 2-5 times faster than they used to.  In addition to that, the new blocking mechanic seems a bit OP as well.  I do really like the inclusion of it and the potential depth it adds to gameplay, but it still seems a bit too easy to cheese the first boss by simply holding down block whenever I'm not attacking, and as long as I'm mostly spamming block with an occasional attack, I'm pretty much invincible.  So in other words, timing doesn't seem as important as it should be, since you can endlessly hold block and as far as I can tell you'll never take any damage.

I'm sure you intend to tweak all this further, and all things considered there's amazing potential here.  To reiterate my 2 issues: to have a way that makes blocking not 100% safe, and have player-based attacks flow a bit better.  It's too easy to breeze through bosses at the moment -- at least at the start (since I admittedly haven't played that long yet).  Perhaps have a way to make the player get an invulnerable stun status after an attack is successfully blocked?  Any way of having the player not 100% safe just by holding the block button would be an improvement.  You could also consider making all non-magic enemy damage higher, to balance the fact that blocking is so low-risk (would make for a great optional side-mod to this regardless imo).  As far as spamming the attack button, I'm not sure how to balance that so that it's less annoying than the vanilla stamina system that awkwardly slows you down a lot, but also not so fast and effortless that it feels way too easy.  There just needs to be more of a feeling of risk/reward between blocking and attacking.

Sorry if this was a bit of a ramble -- I wanted to get some time in to play this incredible hack/compilation and still give some feedback for you.  Can't what to see where this goes from here -- truly fantastic work.

maseter


Queue

#85
Version 2019-03-26:
https://ufile.io/nwx29

Changes:
- Added checksum adjustment code to the Helper Script for the case where the ROM is resized down to 3 MB
- The SFROM file generated by the Helper Script should be backwards compatible with old emulators that accept headered SNES ROM files (though the extension may need to be changed to make selecting the file easier); this feature is really just for testing and I haven't double checked that I didn't break compatibility with SNESCE / Canoe
- Split the [Balance] section into three sections: [Magic], [Items] and [Balance]
- Changed [Hittable_Vampires] to be Off by default
- Added Kethinov's [Earlier_Midge_Mallet], [Later_Midge_Mallet], [Faerie_Coconut] and its graphic replacement
- Added the ability to "unforge" level 9 weapons back to 1 (the feature is called [Circular_Forging]), after which you can forge them back up; just burns through some money
- Made disabling auto-casing when using [Mixed_Case_Naming] toggle-able; mostly useful for continuing saves where your characters already have dumpy all-caps names
- Fixed an obscure vanilla crash that occurs if you walk multiple characters into an auto-talk NPC simultaneously
- Slight adjustment to boomerang diagonal down left/right quick throw so you won't miss the catch
- A good amount of code cleanup
- Almost finished untangling dependencies; this is mostly an internal issue but wanted to document it




GrimVandal, possible, but not trivial; as-is it can be given its own longer cooldown that would also block out other spells. Like others pointed out though, a cooldown isn't the only option for controlling its use. The game intended for mana cost to be the limiter for spell spam, but as can be seen in vanilla, it's inadequate on its own; I scaled back zhaDe's lockout timer duration because I wanted to prevent stacking, but not have recast time be what drives over-all spell use. Ultimately, spell power per cast is probably the strongest control lever for balancing them with how spells work in this game. Aaand is not high on my list of things to mess with and Timbo's big project will likely get spell balance right for those concerned with such things.

Uberdubie, my principal stance is this: I don't really care if the game winds up easier; it's an easy game to begin with, but tedious; my goal was to remove the tedium. Between my changes, and all of other authors' work that I have enabled by default, removing tedium was the goal, with adding fun as a secondary (and fixing bugs because those ruin fun, even the ones that provide short-term fun but long term anti-fun); difficulty is an afterthought.

My view on blocking is that yes, it's way too good, but you also cannot do anything else while blocking, so I'm not in a hurry to overhaul it yet; I also don't personally like timing-based blocking in games, I prefer decision-based blocking (do I want to be in turtle mode or do I want to be in offense mode?). Currently, only spells get past blocking. That said, I'm not averse to a successful block leading to some sort of cooldown, I just don't like the initial block needing split-second timing; I want to be able to just hold up a shield all day waiting for that attack to hit me.

For attacks, it's mostly just a matter of beefing up enemy HP to compensate (changing attack or defense is far more complicated to balance since this game uses a threshold damage system rather than percentage resistance); this keeps the combat fun, but lets enemies live long enough to fight back. Enemies are far more aggressive in Turbo, but it's also far easier to pin them down (though I consider this a plus), but you're generally just pinning one down at a time (there can be 3 enemies at a time, and the game tends to try and keep all 3 slots in use until you've totally cleared an area). I'll likely get Masterflow's Hard Mode imported eventually, which definitely leans in the bullet-sponge direction for enemies. I myself won't be messing with enemy stats (ignoring a minor tweak I made to the Mantis Ant tutorial fight if you have [Manual_Block] and/or [Turbo_Mode] enabled).

maseter, the patcher itself already calculates a new internal ROM checksum, but if you pick a combination of features that results in the 4th MB of ROM being unused, AND you let the Helper Script resize the ROM down to 3 MB, then the checksum won't be accurate (due to the brain-dead way the SNES ROM checksum works for non-power-of-2 ROM sizes). I added code to the Helper Script to adjust the internal checksum in the case that it resizes it down to 3 MB.

maseter

>the patcher itself already calculates a new internal ROM checksum
I just used this version and still got a bad checksum on the resulting 4MB rom.

Another one for the pot?
Gaia's Navel With the Girl Without Doubling Back
https://www.romhacking.net/hacks/4415/

Queue

Hm, I wonder what the best way to figure out the checksum issue is. When I've checked prior to this, I've always seen the 4 MB (and 2 MB) checksums come out correctly, but I certainly don't double check that every time.

What is reporting that the checksums are wrong? I assume it's whichever emulator you're using (version number etc. is useful).

What is your patching process like? Are you applying any IPS's after Turbo? Are you using the IPS patching functionality inside the ZPS Patcher itself?

You don't need to point out Kethinov's patches, I'll get them all eventually. I'm trying to pace myself importing them so I don't burn out (also so I can try each specifically as I go).

maseter

Sorry it was my mistake, Gaia's Navel screwed the checksum, the checksum is OK when using just ZPS_Patcher.

GrimVandal

Quote from: Vanya on March 23, 2019, 11:27:37 AM
Wouldn't that be easier to control by simply adjusting how many HP the spell heals?
For example if the standard cool down is 5 sec and the spell heals 200 HP,
changing the cool down would be 200 HP healed every 10 sec,
but that is the same as reducing the amount healed by 50%,
so 100 HP every 5 sec thus is essentially the same amount over time.

With a different/separate cooldown for healing water primm could heal every 10 seconds while she could cast other spells in between.

kethinov

Quote from: Queue on March 26, 2019, 07:10:44 PM
Kethinov's patches, I'll get them all eventually. I'm trying to pace myself importing them so I don't burn out (also so I can try each specifically as I go).

Just released another new one. Faster Weapon Grinding: http://www.romhacking.net/hacks/4430/

Queue

Version 2019-03-28:
https://ufile.io/0nprd

Changes:
- Updated Timbo's Relocalized to 1.7
- Added Kethinov's Faster Weapon Grinding
- A few more code comments here and there
- Slight adjustment to a cutscene bugfix related to [CPUs_Dont_Block_Screen] and [Walk_To_Edges_Of_Screen] (which I haven't tested, so here's hoping)




maseter, no sweat, glad it's figured out.

kethinov, I didn't put this one off until later. Wasn't totally sure how I wanted to let the user pick between the 4 optional speeds so going with an editable value in the advanced config menu for now.

Sarah Shinespark

Is zhaDe's ZPS patcher available as a utility? It sounds super useful but a quick search failed to find it. It's only bundled with this patch?  :(

Queue

The only other place I know of is here:
https://www.romhacking.net/forum/index.php?topic=20093.msg361754#msg361754

(The "v0.18" on the first line is a link.)

I used ILMerge...

https://www.microsoft.com/en-us/download/details.aspx?id=17630
https://github.com/dotnet/ILMerge

...to combine SnesPatcher.exe and lib_RomHacking.dll and slightly renamed the result. The next Turbo release will include a slightly modified patcher that fixes a race condition and allows checkboxes to start unchecked, but I don't have the source code to the patcher so don't intend to go too crazy modifying it. Documentation will include the changes I made to it.

Also, I'll need to double-check, but I'm pretty sure the ZPS patcher only really knows how to deal with HiROM SNES ROMs. It is a pretty awesome patch format though. Normally I wouldn't touch something that's not a de facto standard (IPS in this circumstance), but ZPS made me violate my own rules.

kethinov

Quote from: Queue on March 28, 2019, 06:54:10 PM
kethinov, I didn't put this one off until later. Wasn't totally sure how I wanted to let the user pick between the 4 optional speeds so going with an editable value in the advanced config menu for now.

Another new one that will require you to make some decisions about how to present the options: "Easier or Harder Monsters." https://www.romhacking.net/hacks/4435/

This one offers ten different options for adjusting monster/boss difficulty which depending on the combination of hacks you apply can either increase or decrease the amount of level grinding that is necessary to finish the game.

It is good to pair with "Equipment Progression Balance" (https://www.romhacking.net/hacks/4422/) so as to make an easy mode, hard mode, or very hard mode out of it.

Also I had to update "Equipment Progression Balance" because I accidentally bundled the hex changes from the "Harder Final Boss" hack that turns the final bosses into superbosses with it. I stripped that accidental inclusion in 1.2.

Gi Nattak

#95
Quote from: kethinov on April 02, 2019, 11:27:52 AM
Another new one that will require you to make some decisions about how to present the options: "Easier or Harder Monsters." https://www.romhacking.net/hacks/4435/

This one offers ten different options for adjusting monster/boss difficulty which depending on the combination of hacks you apply can either increase or decrease the amount of level grinding that is necessary to finish the game.

Definitely nice patches to have for this mod! I'm wondering though why the monster stats besides HP and EXP/GP drops weren't altered as well? More or less HP would indeed make the battles last longer/shorter, but arguably not easier/harder in terms of difficulty... well, except of course in terms of battle length and item/spell usage, which in SoM's case does factor in greatly to it's 'difficulty'. I'd imagine though it was just that much more work, tweaking all the monster stats, or maybe just not in the scope of what you desired to achieve with this particular mod in mind?

kethinov

Quote from: Gi Nattak on April 02, 2019, 12:27:10 PM
Cool patch(es), but I'm wondering how come the monster stats besides HP and EXP/GP drops weren't touched?

When I examined the tables, it occurred to me that the other stats are all rabbit holes. I suppose it's technically possible to make subtler adjustments on a per monster basis to balance the relative difficulty of—say—Terminator against Master Ninja by adjusting str, int, physical defense, or whatever, but my view is the original game's figures are all basically fine. You get the best bang for your buck making across the board percentage adjustments to HP (to lengthen fights) and separate adjustments to XP/GP (to reduce or increase grinding).

I paired XP/GP because if they were separated, you could end up overleveled but unable to afford equipment or rich but underleveled. This reduces the question of difficulty merely to how long do you want the fights to be (largely a HP question) and how much grinding do you want there to be in order to be high enough in level to be evenly matched against the current set of monsters plus rich enough to afford the current equipment (largely a XP+GP question).

Or putting it in a simpler way, the big takeaways are:

1. If you want longer fights, amp up HP.
2. If you want harder fights, cut XP/GP (because this will make future enemies harder and harder if you don't do some grinding first).
3. If you want longer and harder fights, do both.
4. If you want easier fights, amp up XP/GP.
5. Adjusting the other stats has unclear/inconsistent effects or would need to be reimagined one monster at a time, extremely painstakingly. And it's not clear it's even necessary. (I did make an exception to this amping up many other stats for my "Harder Final Boss" hack, but the use case for that was clearer: I wanted to make the final two boss fights superbosses, so adjusting the other stats made sense there.)

Bear in mind, my HP / XP+GP hacks keep it simple enough that if someone else wanted to adjust the other stats independently for some other reason, they could, and that could be combined with this.

GrimVandal

Yes great thought process and once again awesome patches, thank you so much for this.  :thumbsup:

Queue

#98
Version 2019-04-07:
https://ufile.io/bop1y

Patcher Changes:
- Checkbox state based on feature variables; this means features can start in the Off state and the !!_Inverted workaround is no longer necessary
- Checkboxes can be inactive (useful for section separators)
- Fixed race condition when reapplying patch without restarting patcher
- Changed window title to add a + symbol
- Relaxed version checking so a ZPS file can contain a screwy version value to intentionally block compatibility with the older patcher

Changes:
- No more !!_Inverted patcher options, yay; some stuff just starts unchecked
- Added [Balance] feature to disable item damage canceling (On by default)
- Added Kethinov's Neko and Watts in the Mana Fortress
- Added Doom's Wall's desperation attack name fix (Cave -> Cave In; the space was an invalid character)
- Added a fix for getting too many weapon orbs from events causing a lockup
- Added a fix for the script event that causes your party to gather on to the leader where it can get stuck in an infinite loop if party members are at the far left edge of the screen
- Finished converting any lowercase assembly mnemonics to uppercase
- Added preliminary New Game Plus feature, lots of little issues at the moment, but should be functional enough to test




Kethinov, you missed event 659 in the VWF part of your "Neko and Watts in the Mana Fortress" patch. It's at offset 0x22E1CF.




For anyone curious about the New Game Plus feature, after the end credits, you'll get... let's call it an "immersive" prompt, where you can choose to restart the game or see the "The End" scene. There are probably lots of things you can do to break stuff terribly on your second playthrough, so if anyone gives it a shot, I'd like to hear about the trouble you get into.

kethinov

#99
haha, I literally just authored a patch to disable item canceling last night and was about to submit to RHDN. Damn it!  :P

April 08, 2019, 01:20:13 AM - (Auto Merged - Double Posts are not allowed before 7 days.)

I found a bug: goblin capture scene has graphics issues on the north trees with Scroll Hack enabled.

Also I like your dialog edits that explain how to use block if you die to the Mantis Ant. Nice touch.