Wednesday, June 7, 2017

Enemy stat modeling for v0.80

The basics are in for v0.80's major enemy stat overhaul.  Preliminary testing shows customizable stats seem to "work" (not crash horribly).  Need to try a few more things before I really call it working.

Here's what's been added:

- Stat growth is no longer a simple calculation in SoM code based off the floor number.  The tool generates two tables of values for each stat that enemies and bosses pull from separately.  This is based on a simple parameterized formula for each stat: Stat value = b + (f^e) * m, where
   - b = a base value
   - f = the floor number
   - e = an exponent
   - m = a multiplier
b, e, and m are configurable for each stat.  This allows you to make, for example, HP grow in an exponential fashion while defense stays constant or grows linearly.

- The tool runs through some basic damage formulas and with some optional user parameters, figures out about what your stats will be at each floor based on how many enemies you tend to kill, whether or not you buy armor, etc.  It can then graph the progression of things like damage you'll tend to deal to enemies with physical/magical hits, number of hits to kill your characters, etc:

- All other parameters of a specific difficulty level are now customizable.  This includes things like your starting gold, cost of a continue, number of element NPCs per floor, etc.
- If you don't feel like screwing with any of this stuff, the old difficulties (Casual, Hard, Really hard) still exist as preset configurations of all of these things.
- If you do like messing with this stuff, you can save, share, and reload custom difficulty settings.  You can also export and tweak the built-in ones if you feel they aren't quite correct.

- The damage calculations I'm using are a simplified version of those found here: (credit to StingerPA for these calculations).  These are still largely untested.  If you find issues with the accuracy of the graphs, let me know, and we can find what's not being calculated right.

- Player stats are still 100% vanilla.  I have no current plans to change them.  I sort of like having something from the original game still be present.

Monday, May 8, 2017

Difficulty system refactor for v0.80

I'm in the middle of refactoring how I handle enemy stats and difficulty levels.  In the future the UI will give a lot more free control over how stats grow with floor advancement, and the old difficulty levels will still show up as "presets" to those values.

I'd also like to be able to show some graphs of how player and enemy damage will advance from one floor to the next, to give an idea of how difficult the ROM will be from beginning to end.  This will run the generated stats through the game's actual damage formula, and likely also involve an estimation of player level at each floor.  I'd probably throw some other factors in like how much armor you plan to buy / will be able to afford.

This will most likely be what v0.80 ends up having.  It won't be for a while here, but it should give a lot more configuration freedom and information once it's done.

Saturday, April 8, 2017



- Fix issue where all items did the magic rope thing, not just the magic rope.



Friday, April 7, 2017


A couple new things.

- Add continues.  When you die, you'll be given the option to buy a full restore & start at the beginning of the same floor.  Costs 1k/2k/4k GP depending on difficulty level.  These are currently unlimited.
- Dying on Mana Beast now switches your map so the Mode7 turns off and the death event actually shows up.  Note that continuing from Mana Beast will take you back to the last full floor.
- Add Magic Rope.  This has the same effect as continuing but without the restore.  It's intended to be used if you get stuck.
- Check for writability of output ROM and throw up an error if it can't be written.


Monday, April 3, 2017


Something silly this time.

- Add flammie drum as a music randomizer. 


Sunday, April 2, 2017


Some new fixes and experiments based on observations of recent streams.

- Fix the issue Falex had in his run on the RandoMassacre Marathon where cave maps as the final floor will lock up when entering the interior map.
- Increase magic defense of enemies.
- Increase durations of all timed status conditions.  This includes most spell buffs and debuffs (player and enemy), and to a lesser extent includes weapon-induced statuses (like Eye Spy's moogle status, or a player weapon's engulf status).  This does not include certain buffs like Lucid Barrier, which is damage-based rather than time-based.
- Allow better armor pieces to drop/be sold in hard and really hard.

Let me know if anything feels improperly balanced.


Friday, March 31, 2017

Ideas for next map types

I'm playing with some ideas for which tileset/map type I want to add next.  Here are some, in no particular order, with notes.  Ideas/suggestions are welcome.

There isn't much to this one, but it looks sort of cool, what with the transparent tree overlay and all.  The indoor areas would be the hut tileset like islands/the original matango interiors.

These aren't the prettiest maps, and they were pretty annoying to navigate in the original (mostly due to characters getting stuck), but they could make for an interesting maze or something.

Witch's Forest
Definitely one of the better looking tilesets in the game.  Shouldn't be too much effort to generate - everything is on layer 1 since layer 2 is full of clouds.

Upper Land
The SoM Editor doesn't really view these correctly for some reason.  Might be annoying to generate with the large trees and making them flow smoothly together.

Sunken Continent
The gray hallways and stuff from under the purple continent. I guess that "subway" map could be the interiors with the NPCs.

The area around Shade's palace with the slow-scrolling layer 2 background.  Looks pretty neat I think.

Seems like something that should exist just based on it being a notable place with a lot of unique enemies, but I think I'd have to do a lot of tileset fuckery to make this work with the way I currently generate maps.  The desert itself and Kakkara are separate tilesets, and without the little Kakkara houses I have no idea how I'd make actually "indoor" areas work.

Ice Palace
I like the exterior of this place a lot, but the interior is really just my ruins interior with a blue palette.  There might be a way to make it unique enough from the Ruins stuff to use.  I would really like an excuse to use its song.

Ice Country
It's a nice looking tileset with the rainbow trees and all, but there aren't really any interior structures available on the tileset except caves.  There might be a way I could combine the Santa's Workshop/Toto houses into it and have that work somehow.

Desert Ship Thingy
I sort of like this as an indoor/outdoor maze of sorts like the Ruins are now.

This could maybe be made to work, with a mazelike structure to the exterior.

Mana Palace
This one is sort of a staple of SoM.  Would probably be nice to see it worked in somehow.

Witch's Castle
Not sure exactly how I'd make this one work, but I do like how it looks.

Like Upperland, this would probably be kind of a dick to generate procedurally and still have everything fit together and look good.

Manafort Exterior
There isn't really much to this, but it could probably be made to work somehow.

Undersea Thingy
The first part of the sunken continent that looks like it's supposed to be under the sea or something.  Pretty nice looking tileset.

Luna Palace
And then I guess there's this.