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

Poll

Should I make a patch base of the new battle system for other hacks to use?

Yes
15 (83.3%)
No
3 (16.7%)

Total Members Voted: 18

Author Topic: Yaki's Super Mario RPG Project  (Read 1245 times)

Yakibomb

  • Jr. Member
  • **
  • Posts: 13
  • SMRPG Hacker
    • View Profile
Yaki's Super Mario RPG Project
« on: October 30, 2017, 09:39:16 am »



Overview
This is what I've been doing on-and-off for the past year and a half. Documenting, programming and revisiting the world of Super Mario RPG: Legend of the Seven Stars!

At first it started as a simple project after several other too ambitious projects failed. Then it evolved into a remake everything project, then it downsized into a documentation project... Now at this stage, I'm contacting the world in order to get a better perspective on things--Should I continue to have the patch work exclusively for my project, or allow others to use my project as a base for their own hacks?

But what is my project?


Features

1. All stats in battle are revised, and some new ones are added in place of old ones. Stats are now: Power, Defense, Speed, Recovery, and Style.
  • Power increases damage dealt by any attack, not just "A" button attacks.
  • Defense decreases damage taken from any attack, not just "A" button attacks.
  • Speed increases accuracy against the opponent, as well as turn order.
  • Recovery, as it increases, changes the healing value from healing spells and items.
  • And finally, Style is basically "Luck", increasing a character's item Freebie chance, the chance to get a flower bonus on enemy's defeat, and to deal Critical damage against the opponent.
2. The status UI has been completely changed to include new features.
  • The P-Gauge Meter, which replaces FP (Mana/MP of the Mario universe) in the original game. This works for each individual character, and is no longer shared between the party. The P-Gauge's cap can even be adjusted.
    Spoiler:
    (Thank you, thank you Justin3009 for your help programming this!)
  • HP now changes colors turns red if >25% of max, green if <100% of max, or yellow if neither.
  • Buffs are now shown on top of the status bar.
  • Turn timer now displays when the character has a status debuff or invincible.
  • A new Power Up system (which is described in the next point). The power up is displayed to the left of the HP.
3. The three equipment slots have been revised to implement more features: Utility, Power Up, and Passive.
  • Utility replaces Weapons. This gives characters an active secondary ability, like a status refresh, a self buff, a tattle or a light damaging attack. It doesn't cost P-Gauge.
  • Power Up replaces Armor. This grants a character a new spell in their specials menu. It does cost some P-Gauge.
    Spoiler:
  • Passive replaces Accessory. This grants the character a new supportive passive ability. Would you rather have health regeneration, blocking after using an attack, or some extra defense?


4. All the ailments have been replaced with new ones. It'd actually rather not get into all of these, but I will explain the ones above. From left to right:
  • We have Oil, reducing Speed and increasing fire damage taken one time.
  • Next is Angry, or Berserk, or Furious... Increases all damage dealt by 50%, but the character automatically attacks one enemy. (Side Note: SMRPG had an unused ailment that did this, only the character attacked an enemy OR an ally!)
  • Last (but not least) is Ghost. The character, upon being turned into a ghastly ghost, their Recovery values are flipped to damage them! If that doesn't scare you I don't know what will.
5. Most of the battle formulas have been changed.
  • Damage = (Power * Power Level) - Defense (was previously Power Level and Defense were switched.
  • By manually blocking and having the Defend command up does not further decrease damage taken.
  • Mushroom, manual Defend, and DEFENSE UP! buff now stack.
  • Attacking an enemy that has Fear while having the ATTACK UP! buff now increases damage further.
  • Accuracy = Attacker's Speed - Opponent's Speed. If Speed Attacker<Opponent's speed = 100% miss chance.
  • Healing Value from Item = Target's Recovery * Item's Power Level.
  • Healing Value from Spell = Spell power + Target'S Recovery
.



To-Do (or Not-To-Do?)
Over time, I've wanted to add some other new features but I'm unsure as to if I want to include them. One feature I wanted to implement was the Card system, adding character buffs throughout the battle... only thing is, it would have to be butchered into oversimplification (something I don't want to do) because I am not about to program a menu for decks and stuff, even if it does sound fun to use. You can see the card in the corner in the battle screen at the top of this post.

A friend gave me the idea that I could make this a patch for the original game, and build the game around that instead of making this exclusively for my own game. What do others think of this? Please post and/or poll. Thank you.
« Last Edit: November 08, 2017, 01:36:46 pm by Yakibomb »

justin3009

  • RHDN Patreon Supporter!
  • Hero Member
  • *****
  • Posts: 1510
  • Welp
    • View Profile
Re: Yaki's Super Mario RPG Project
« Reply #1 on: October 30, 2017, 07:37:26 pm »
First of all, it's super nice to see you here Yaki! It's also nice to see this project is still going on too!

If you need any extra help with this project or anything else you want to dive into, feel free to spam me. I'm all on board to do what I can to help out!
'We have to find some way to incorporate the general civilians in the plot.'

'We'll kill off children in the Juuban district with an infection where they cough up blood and are found hanging themselves from cherry blossom trees.'

Da_GPer

  • Full Member
  • ***
  • Posts: 148
    • View Profile
Re: Yaki's Super Mario RPG Project
« Reply #2 on: October 30, 2017, 08:42:18 pm »
Super Mario RPG not only is my favorite SNES game, but also one of my favorite, if not my favorite RPG. I fully support this mod and will follow it very closely. Maybe, this might also lead to a new version of Lazy Shell, with the new stuff being able to be added in it.

Yakibomb

  • Jr. Member
  • **
  • Posts: 13
  • SMRPG Hacker
    • View Profile
Re: Yaki's Super Mario RPG Project
« Reply #3 on: November 03, 2017, 07:25:32 pm »
First of all, it's super nice to see you here Yaki! It's also nice to see this project is still going on too!

If you need any extra help with this project or anything else you want to dive into, feel free to spam me. I'm all on board to do what I can to help out!
Heya Justin! Thanks for the warming welcome! :D I know you're being nice, but I will not spam you, haha. I will ask for help some time in the future I'm sure, so thank you.

Super Mario RPG not only is my favorite SNES game, but also one of my favorite, if not my favorite RPG. I fully support this mod and will follow it very closely. Maybe, this might also lead to a new version of Lazy Shell, with the new stuff being able to be added in it.
Thank you for the support, Da_GPer! Actually, a need for a slightly altered LS might be a good idea... There are a few limitations to the way I programmed some things. Two examples of this:
- The new buff like HP Regen is on a byte that can't really be modified by traditionally LS unless it's through the hex editor.
- The way I programmed the new Power Up system, it only allows the last 12 spells to be addable. This is because 1. Each spell uses a bit, 2. There are 4 bytes, counting up to 32 applicable spells (32 bits), 3. I wanted to use 12 addable spells to my hack, and to do that I had to make sure that the already innate learned spells weren't removed if the Power Up uses the same byte as one of the innate learned spells.


Which brings up another discussion I should probably talk about... This mod is very "hacky", with lotsa spaghetti code and whatnot and additional artsy things that I would have to do without to make it more streamlined. Which begs the question: What should I do about the spaghetti code? What if someone wanted to add a new feature? Should I split up the different features into different patches ("Stat Base", "UI Update Base", "P-Gauge Base", "New Ailments Base" etc) with an included .txt document? I heard of ASAR but I haven't a clue how to use it.

In addition I was thinking of overhauling the entire battle system, since I have like... 80% documented so far, but it's all in a notepad!

Uhhh. :o
« Last Edit: November 05, 2017, 04:06:42 pm by Yakibomb »

Bahamut ZERO

  • Hero Member
  • *****
  • Posts: 908
    • View Profile
Re: Yaki's Super Mario RPG Project
« Reply #4 on: November 06, 2017, 01:34:42 pm »
Quote
Which brings up another discussion I should probably talk about... This mod is very "hacky", with lotsa spaghetti code and whatnot and additional artsy things that I would have to do without to make it more streamlined. Which begs the question: What should I do about the spaghetti code? What if someone wanted to add a new feature? Should I split up the different features into different patches ("Stat Base", "UI Update Base", "P-Gauge Base", "New Ailments Base" etc) with an included .txt document? I heard of ASAR but I haven't a clue how to use it.

In addition I was thinking of overhauling the entire battle system, since I have like... 80% documented so far, but it's all in a notepad!

Uhhh. :o


I'd say:

*split the different features into seperate patches alongside your standalone with everything together. That way people can mix and match certain things together if they'd like.

*If you want to overhaul the battle system - DOO EET. Don't let your dreams be dreams.  :thumbsup:


What you're doing looks fucking amazing. Keep up the good work.  :beer:
Like Super Mario Land? Then you'll love my first completed Rom Hack: Maniac on the Run!

DavidtheIdeaMan

  • Sr. Member
  • ****
  • Posts: 491
    • View Profile
Re: Yaki's Super Mario RPG Project
« Reply #5 on: November 06, 2017, 03:02:01 pm »
Finally I get to see this project and I have to say this really caught my interest and Im liking the different thing you are putting into the game as of right now and giving it's own unique gameplay to it,I hope to see more updates on this. :)

thzfunnymzn

  • Jr. Member
  • **
  • Posts: 7
    • View Profile
Re: Yaki's Super Mario RPG Project
« Reply #6 on: November 07, 2017, 01:30:46 pm »
The new stats, P-meter, statuses, and status UI are very interesting hacks that I'd like to see released to the community. OK, truthfully, I'd like to see a re-balance/difficulty mod using those new stats. I'm especially glad that you destroyed the redundancy of having two Attack and two Defense stats. I presume you changed the "Level Up Bonus" on level up to reflect the new stats? iow, what does the old "Mg.Atk+ and Mg.Def+" bonus now give?

Can't really comment on the new formulas, as I didn't know the old formulas, despite how much I love the game. : ( Then again, the game was always too easy & imbalanced to really care about formulas.

Only thing I dislike is replacing the Weapon, Armor, Accessory system. Though I don't dislike what's replacing it: different passives, secondaries, & skills are nice. I'd just rather see it merged with Weapon, Armor, & Accessory.

So, yes, I'd love to see this hack released, and for someone to make a mod with it. Like Bahamut Zero said, would prefer it if they were all separate hacks though. SMRPG really needs the re-work, and this looks like a solid re-work.

Yakibomb

  • Jr. Member
  • **
  • Posts: 13
  • SMRPG Hacker
    • View Profile
Re: Yaki's Super Mario RPG Project
« Reply #7 on: November 08, 2017, 01:29:15 pm »
Thank you so much for the support posts!

Alright, since I think the general agreement is "Make patches with the new features and ability to mix and match said features" is popular, I'll do that. I'm also interested in re-doing the whole game as well, with the new features included.

However, in order to keep this streamlined with LS, I will be removing some features to these patches... like the addition of more buffs, different ailments, and the Power-Up/equip replacement system.

Here is a preview of what's to come:

New Stats (Replaces base stats with radical new stats and formulas)
    *INCOMPATIBLE PATCHES: "FORMULA_PATCH_A.ips"
 Patch1: STATS_CORE.ips.
 - New stats:
   Power (New stat that replaces Attack. There is no line between physical damage/magic damage, so all damage draws from this stat.)
   Defense (Updated. Defense formula changed--All damage reductions are flat and are calculated for all damage rather than physical/magic.)
   Speed (Updated. Now calculates turn order and accuracy of the monster. Attacker's Speed is compared to Opponent's Speed; If Attacker's is less than Opponent's, difference is calculated as MISS chance.)
   Recovery (New stat. Recovery changes the health recovered from items and spells.)
   Style (New stat. Increases chance of Flower Bonus and *Freebie chance.) (*NOTE: Freebie chance is only calculated in an item's animation script. This can be changed in LS without Hex.)

Battle UI Update (Updates the battle UI with more information)
 Patch1: UI_UPDATE_A.ips (Displays current buff(s) (Attack UP!; Defense UP!) on status bar)
 Patch2: UI_UPDATE_B.ips (Current HP and Max HP change colors depending on current health. Red if >25% of max, green if <100% of max, or yellow if neither.)
 Patch3: UI_UPDATE_C.ips (Turn timer now displays when the character has a status debuff or invincible.)
 Patch4: UI_CORE.ips (Includes all above UI UPDATE patches.)
 Technical Info on all Patches:
 - Expands the tile limit to display up to 112 different tiles (up from 48). (You MUST edit them using YY-CHR or another tile editor)
 - Moves location of debug menu alphabet and characters to new location (01:C000) to make room for new tiles (01:F000).

P-Gauge (Replaces FP with new P-Gauge system)
 Patch1: P-GAUGE_CORE.ips.
 - Adds P-Gauge to battle UI. Spells use P-Gauge instead of FP. Passively regenerates by +1 per turn. If Defend command used, gain +1 P-Gauge.
 - Updates P-Gauge to display under character's HP on battle UI. In battle, the spell menu is updated to display new P-Gauge cost with arrows and numbers.
 - Opponents do not draw from P-Gauge, thus can infinitely use spells.
 - Reprograms item attribute "+1 FP" to increase the character's P-Gauge by 1 (caps at 7).
 - Removes FP from the overworld menu.

Formulas and Bug Fixes (Includes JUST the damage formula updates)
 Patch1: FORMULAS_PATCH_A.ips (Changes damage calculation for character/opponent)
 - Damage = (Power * EnemyPhysAtkPowerLevel) - Defense. Previously, was (Power - Defense) * EnemyPhysAtkPowerLevel.
 - Updates damage increasing or reducing equation to run per check, rather than just check once.
 Patch2: FORMULAS_PATCH_B.ips (Changes enemy Physical Attack damage multiplier to x1/1.5/2/3/4/5/6/7. Previously, was x1/1.5/2/4/8/16/32/64.)
 Patch3: FORMULAS_PATCH_C.ips (Bug Fix: Fixes Status UP! buffs not applying when character has Red Essence effect)
 Patch4: FORMULAS_PATCH_D.ips (Fixes the unused ailment* by allowing it to be applied via items/spells, and sets it to only target foes and not allies) (*More info here: https://tcrf.net/Super_Mario_RPG:_Legend_of_the_Seven_Stars#Unused_Status_Ailment)
 Patch5: FORMULAS_PATCH_E.ips (If character is already using the defend command, player cannot manually defend to reduce damage further.)
 Patch6: FORMULAS_CORE.ips (Includes all above FORMULA patches)

CORES PATCH (Includes all above patches)
 Patch1: SMRPG_CORES.ips


Additionally, I will include a .txt file with all the changes in case anyone wants to add them by hand.
« Last Edit: November 08, 2017, 01:39:55 pm by Yakibomb »

KingMike

  • Forum Moderator
  • Hero Member
  • *****
  • Posts: 6177
  • *sigh* A changed avatar. Big deal.
    • View Profile
Re: Yaki's Super Mario RPG Project
« Reply #8 on: November 08, 2017, 05:54:50 pm »
   Speed (Updated. Now calculates turn order and accuracy of the monster. Attacker's Speed is compared to Opponent's Speed; If Attacker's is less than Opponent's, difference is calculated as MISS chance.)
That sounds okay at least on paper, but I've played a few RPGs now where it seems like you easily miss three out of four hits against faster enemies, which doesn't make for a very fun game.
Is there a limit to the reduction so it doesn't make battles tediously long?
Quote
Sir Howard Stringer, chief executive of Sony, on Christmas sales of the PS3:
"It's a little fortuitous that the Wii is running out of hardware."

Da_GPer

  • Full Member
  • ***
  • Posts: 148
    • View Profile
Re: Yaki's Super Mario RPG Project
« Reply #9 on: November 10, 2017, 05:25:35 am »
If Lazy Shell will cause your changes to be incompatible, then I say to not try to work it in Lazy Shell. Instead, just make it your own thing and not use anything else. I hope that made sense.

Mari42

  • Jr. Member
  • **
  • Posts: 49
    • View Profile
Re: Yaki's Super Mario RPG Project
« Reply #10 on: November 10, 2017, 06:30:58 am »
If Lazy Shell will cause your changes to be incompatible, then I say to not try to work it in Lazy Shell. Instead, just make it your own thing and not use anything else. I hope that made sense.

Like doing hex editing could work.

thzfunnymzn

  • Jr. Member
  • **
  • Posts: 7
    • View Profile
Re: Yaki's Super Mario RPG Project
« Reply #11 on: November 11, 2017, 11:29:31 am »
The different buffs and debuffs are an interesting thing I'd still like to see released to the general public. IIRC, the (de)buffs in SMRPG, like in many SNES jRPGs, are pretty stupid. Having a better selection of them would be a nice tool for any would-be modder.