Would it be possible to let the player choose the overall number values used by the game?

ZombieKidzRule

Aren't these two Zombie Kidz cute?
Veteran
Joined
Jan 9, 2022
Messages
399
Reaction score
370
First Language
English
Primarily Uses
RMMZ
Ok, so most people will probably think this is a strange question and wonder why I would ever want to do this. Let's just stipulate that I have my own "idiosyncrasies" that can drive my choice of actions. :LZSbleh: Don't judge me! :LZSlol:

I have posted in other threads that I really dislike overinflated number values in games. I am pretty much immediately turned off when I see a game with hundreds/thousands of HP, damage, etc. So, it would be extremely difficult for me to create and especially enjoy play testing a game using those types of values.

However, when I "complained" to one of my sons that so many games do that "nowadays," he said that is because the fresher, less crusty generations prefer that and games evolved to match consumer preference. Not his exact words, but my interpretation.

So, I am a huge fan of games that let the player choose as many options as possible with how they experience the game and that got me thinking.

Would it be possible in RMMZ, either by maybe a massive Common Event or a plugin, to allow the player to set the overall number value system for the game? Where everything is lower, like in ancient-school D&D or super high, like in most JRPG games.

I was thinking like setting a low base system and making sure it could be consistently multiplied across the board or starting high and making sure it could be consistently divided across the board. So the eventual number displayed to the player would be similar to their preference.

Now I am incredibly new to all this so maybe this would be either impossible, it would take a massive effort, or it would have some other impact on game performance.

So I am just asking to see what other people think. Not about the idea...remember my idiosyncrasies...MINE! Just about if this would even be possible.

Thanks!
 

Arthran

Veteran
Veteran
Joined
Jun 25, 2021
Messages
212
Reaction score
180
First Language
English
Primarily Uses
RMMZ
Just about if this would even be possible.

Sure. Just about anything is possible. With some JavaScript knowledge, you can edit any part of the engine, however you want. Some things are more difficult than others, but just about anything is possible. Fortunately, what you're asking about wouldn't be overly difficult.

You basically just need to save a multiplier into a variable, and multiply both your actor's max HP and all damage done by that multiplier. You'd obviously want the multiplier to be lower for the the more classic numbers that you're talking about, and higher for the higher numbers.

You probably could hack something together by putting said multiplier into all your damage formulas, and then making an event that monitors for when players have leveled and then manually adjusts their HP, or something along those lines. But I think it'd be easier and cleaner to do this with JavaScript.

Unfortunately, I'm about to go to bed, so I don't have time to peruse the engine code and determine the path of least resistance, but what you're asking is certainly doable.

------
*edit*

This next part isn't an answer to your question, so feel free to ignore it, but I do wanna mention that a large part of the reason why games used to have smaller damage numbers isn't actually a matter of aesthetic preference, but rather it has to do with the technological limitations that existed back then.

For example, the NES had an 8-bit CPU. What this means, among other things, is that it was difficult for the NES' processor to work with numbers that are above 255, so they had no choice but to keep the numbers small. In addition to that, the system only had 2 KB of RAM, and storing larger values takes up more RAM, so that was another reason to work with small numbers.

As consoles got better hardware, these types of limitations became less of a concern, so developers started working with larger numbers. Not so much for aesthetic reasons, but for the sake of higher precision.

For example, suppose that my base damage is 5, and I equip an accessory that gives me +10% damage. In the end, that would yield 5.5 damage, right? Unfortunately not, because older systems could only process integers... so the '.5' would get truncated and the resulting damage would still be 5. Your +10% damage accessory would do absolutely nothing. So how do you fix this type of issue, when you can't use rational numbers? Just use bigger integers. If my base damage is 50, then when I put on the +10% damage accessory, I'll be doing 55 damage. So then I'm no longer having my +10% damage vanish into nothingness.

So basically, number values started getting larger and larger, in order to accommodate more advanced game mechanics without losing precision. AFAIK, consoles didn't start coming with the ability to process floating point numbers until the N64. At that point, they *could* have gone back to smaller values if they wanted to, but then they'd have to show us rational numbers, which would look strange, and still wouldn't actually reduce the number of digits.
 
Last edited:

ZombieKidzRule

Aren't these two Zombie Kidz cute?
Veteran
Joined
Jan 9, 2022
Messages
399
Reaction score
370
First Language
English
Primarily Uses
RMMZ
That is awesome to hear, thanks! I have no background in JavaScript, but I am slowly learning as I learn this engine and watch/read tutorials so I will keep forging ahead. Thanks again!
 

Arthran

Veteran
Veteran
Joined
Jun 25, 2021
Messages
212
Reaction score
180
First Language
English
Primarily Uses
RMMZ
That is awesome to hear, thanks! I have no background in JavaScript, but I am slowly learning as I learn this engine and watch/read tutorials so I will keep forging ahead. Thanks again!
No problem. I'm going to be swamped with other work for the next few days, but if you remind me about this some time after Monday, I can a look at a JavaScript solution for you if you still need one.
 

ZombieKidzRule

Aren't these two Zombie Kidz cute?
Veteran
Joined
Jan 9, 2022
Messages
399
Reaction score
370
First Language
English
Primarily Uses
RMMZ
No problem. I'm going to be swamped with other work for the next few days, but if you remind me about this some time after Monday, I can a look at a JavaScript solution for you if you still need one.
That would be incredible! I am collecting JavaScripts one at a time and learning how they work. It is quite confusing for me.
 

Trihan

Speedy Scripter
Veteran
Joined
Apr 12, 2012
Messages
4,969
Reaction score
4,556
First Language
English
Primarily Uses
RMMZ
As Arthran touched on, the potential issue you're going to run in with this is that using higher base values makes percentage bonuses and variance exponentially more effective.

When you really get down to it, 10 damage to a 100 HP enemy is functionally the same as 100 damage to an 1000 HP enemy or 1000 damage to a 10000 HP enemy, but consider variance. Let's say your normal attacks have 20% damage variance.

10 damage will end up being 8-12, or a 5-value spread. 100 damage will be 80-120, a spread of 50. 1000 damage will be 800 to 1200, a spread of 500. Factor in equipment that offers percentage bonuses and that spread gets bigger.

The impact there is that the wider the potential spread is, the less predictable your damage is going to be. This is a nightmare for balance, because what makes for a decent number of turns in a lower-number system is potentially going to end up taking significantly longer in a higher-number one when you're unlucky with the rolls and your damage is consistently on the lower end of the scale several attacks in a row.
 

TheoAllen

Self-proclaimed jack of all trades
Veteran
Joined
Mar 16, 2012
Messages
6,812
Reaction score
9,117
First Language
Indonesian
Primarily Uses
RMVXA
Is it possible? yes.
We can use a higher value, then, for display purposes, we multiply everything down or up. So you can have 1000 HP in the back end, but it is displayed as 500 in the HUD. The original value is still 1000, unchanged.

Of course, this would require javascript editing as mentioned.

on an unrelated note.
So, I am a huge fan of games that let the player choose as many options as possible with how they experience the game
Yes, it is called modding. Would be awesome if we could do this in RPG Maker games, not only limited to digits in numbers but also in everything including changing the character graphics using custom graphics :p
 

ZombieKidzRule

Aren't these two Zombie Kidz cute?
Veteran
Joined
Jan 9, 2022
Messages
399
Reaction score
370
First Language
English
Primarily Uses
RMMZ
As Arthran touched on, the potential issue you're going to run in with this is that using higher base values makes percentage bonuses and variance exponentially more effective.

When you really get down to it, 10 damage to a 100 HP enemy is functionally the same as 100 damage to an 1000 HP enemy or 1000 damage to a 10000 HP enemy, but consider variance. Let's say your normal attacks have 20% damage variance.

10 damage will end up being 8-12, or a 5-value spread. 100 damage will be 80-120, a spread of 50. 1000 damage will be 800 to 1200, a spread of 500. Factor in equipment that offers percentage bonuses and that spread gets bigger.

The impact there is that the wider the potential spread is, the less predictable your damage is going to be. This is a nightmare for balance, because what makes for a decent number of turns in a lower-number system is potentially going to end up taking significantly longer in a higher-number one when you're unlucky with the rolls and your damage is consistently on the lower end of the scale several attacks in a row.
I could be missing something here, but in your examples above, aren't those all the same percent of damage when compared to the enemy HP?

12 / 100 = .12; 120 / 1,000 = .12; 1,200 / 10,000 = .12

The same is true for the lower damage of the variance range. It is .08 for all three.

So your character would be doing the exact same percentage of damage to the enemy in all examples, no matter where your results fell in the variance spectrum, right?

Unlucky rolls have the same impact no matter which example you use, right?

Math isn't always my BFF when it comes to all these formulas so I could be missing the point entirely.

I am still getting used to the whole variance thing in RPG Maker and understanding it compared to the D&D 6D6 type of thing (6-36).

Thanks for your response!
 

Trihan

Speedy Scripter
Veteran
Joined
Apr 12, 2012
Messages
4,969
Reaction score
4,556
First Language
English
Primarily Uses
RMMZ
I could be missing something here, but in your examples above, aren't those all the same percent of damage when compared to the enemy HP?

12 / 100 = .12; 120 / 1,000 = .12; 1,200 / 10,000 = .12

The same is true for the lower damage of the variance range. It is .08 for all three.

So your character would be doing the exact same percentage of damage to the enemy in all examples, no matter where your results fell in the variance spectrum, right?

Unlucky rolls have the same impact no matter which example you use, right?

Math isn't always my BFF when it comes to all these formulas so I could be missing the point entirely.

I am still getting used to the whole variance thing in RPG Maker and understanding it compared to the D&D 6D6 type of thing (6-36).

Thanks for your response!
They are the same percentage, yes. But when your potential spread is higher, there are more values on either side of the roll table to hit, which means there are more potential lower values to roll, and if you hit that end consistently you'll statistically deal a lower percentage of damage than you would in a system that uses lower numbers.
 

ZombieKidzRule

Aren't these two Zombie Kidz cute?
Veteran
Joined
Jan 9, 2022
Messages
399
Reaction score
370
First Language
English
Primarily Uses
RMMZ
They are the same percentage, yes. But when your potential spread is higher, there are more values on either side of the roll table to hit, which means there are more potential lower values to roll, and if you hit that end consistently you'll statistically deal a lower percentage of damage than you would in a system that uses lower numbers.
I am going to have to trust you on this because this surpasses my old man logic! :LZScheeze:

EDIT: Actually, I don't think this is statistically significant. I kept pondering over this so I decided to run a quick test. I created 3 events in game to test how many times you would have to hit an enemy in each scenario. 100HP with 8-12 damage/hit. 1,000HP with 80-120 damage/hit. 10,000HP with 800-1,200 damage/hit.

I tested the events 10 times each and the average results ended up being 10.5 hits, 10.2 hits, and 10.7 hits, respectively. All of the results were either 10 or 11 hits each time. Never <10 or >11.

To me, this seems like the variance isn't that significant, but I could still be looking at this wrong and maybe it would change with many more tests.
Here is a screen shot sample of one event. I am pretty sure I did the test right.

Simple Combat Test.jpg

on an unrelated note.

Yes, it is called modding. Would be awesome if we could do this in RPG Maker games, not only limited to digits in numbers but also in everything including changing the character graphics using custom graphics :p
Instead of modding, I was thinking more of games that change certain aspects either in a group or individually. Like a game that says if you play on easy, you are going to get more gold, more EXP, do more damage, and take less damage while the opposite is true for hard. Versus a game that lets the player individually select those options.

Similarly, an option where you can show stat bars or stat numbers or none in game. Stuff like that.

But I do like me my mods.
 
Last edited:

ZombieKidzRule

Aren't these two Zombie Kidz cute?
Veteran
Joined
Jan 9, 2022
Messages
399
Reaction score
370
First Language
English
Primarily Uses
RMMZ
I apologize if this is breaking a rule by responding below my own last post, but I really wanted to edit my original question, but I also think I read somewhere NOT to edit the original post after responses to preserve something or other. Or maybe my mind in just making that up. I don't recall.

Anyway, I wanted to edit/augment my original question to point out that every number based aspect would have to be changed and not just base HP and damage.

Potion effect ranges, HP/MP increases at level up, weapon base damage, healing effect ranges, buffs, debuffs, defense values, and there are probably a bunch of things I am not even thinking of.

So hopefully it would be possible to do this with the same script or just a few scripts that run(s) as needed (constantly?) in the background.

And if anyone is able to offer such a script, like what @Arthran was suggesting, it would also be EXTREMELY helpful if you could just give me a quick, down and dirty explanation of what each part of the script is doing or relates to. I am just learning scripts one at a time so trying to read them is like trying to learn a foreign language. I know, I have learned a number of languages over the years (and English, my native language, is particularly hard to learn...English can just be outright evil at times).

And I just saw that @Arthran edited a previous response that I didn't see. (And I don't think I am doing the whole @ thing correctly). I really appreciate the additional perspective on game development and the technical evolution of systems! I would say that the way paper based systems got around the % increase or decrease thing with lower number values (and how I think very early games modeled, probably because they didn't have a choice) was to just use the + or - 1, 2, 3, etc. system. Giving players a +1 sword just added +1 to the "to hit" and damage rolls. So at lower values, a +5 weapon or armor was awesome! Seeing systems go to a % value instead of a standard value was surprising and confusing to me. Although I can see how it would probably be much easier to use.

Thanks again to everyone who so kindly offers help and perspectives on my posts and questions!
 

Latest Threads

Latest Profile Posts

grief... finding a font that works with the engine has been a bigger process than I thought it'd be. doesn't help MV loves to scrunch letters next to each other like a football huddle.
The new Phoenix plugin. I drew icons and an interface into it
R3-M1 can now leave footprints :kaojoy: Thanks Dsiver144 for another amazing plugin!!

1653686110642.png

Hey guys, do you wanna see who dominated the competition in our last game jam?! Stop by while we play Pinky by @Wumbohek Starting at 4:20pm EST.

Forum statistics

Threads
122,178
Messages
1,147,041
Members
160,438
Latest member
zodismegalame
Top