What the hell you guys? Play Catherine, I know all of you have been avoiding it! :P
So I play Spiral Knights from time to time and every time there's an update to the game, there's a bug fix hours later. EVERY time. Sometimes a secondary bug fix a day later. Seriously, they break half their game with every update. (That's only a slight exaggeration.) So the other day, I came across an interesting bug. Suddenly my shield stopped working. It just... stopped working. Not just mine, but the entire party's shields stopped working. I've heard that this is in response to players setting up anchor points for the arena levels and repeating them for easy money, however, this was a normal run that wasn't anchored... so wtf? The shields remained broken for the remainder of the dungeon run. I tried their pvp, but often times I'm fighting with the latency more than I am other players, so that's a no go. I think I've found a group of devs that are just as bad, if not worse, programmers than I am. I think that's an achievement there. If you ever want to play with me, my in game name is 'Zephyrcrash'. My time that I play is typically between 6pm - 9pm. I don't play it very often though. If you do send me a friend request, be sure to put a message with the request, just something so I know you're from here. For some reason people like to send random friend requests in that game. I delete these, so if there's no context to the request, it'll just be ignored.
A problem that came up with DT1 and again with DT3 is using tilesets and level ideas from games where the world is scaled down to fit to the character sprite size. To explain, Mario and Link's sprite size in their NES games are 16x32 pixels. The enemies and levels in those games were designed with that in mind. Jerry is 24x52. This becomes a design issue very fast. Now his actual collision (remember, world collision and hit detection for damage are different) is a bit smaller than that, but still much bigger by comparison to the worlds that I'm mimicking. The other MAJOR difference here is the jump height in relation to their sprite height. During this explanation, we're going to always assume Mario is big. From a standing position, Mario jumps at about 64 pixels (4 tiles), which is twice his sprite height. Jerry jumps about 72 pixels high (4 1/2), which isn't even close to twice his sprite height. (38% of his sprite height) Now later on in DT3, you'll be getting a jump boost that will let Jerry jump to about 88 pixels (5 1/2). Roughly the height that Claire jumped in DT2. And yes, I did just give away that you'll be getting a more powerful jump later on. This is closer to Mario's jump height to sprite height ratio. (69% of the sprite height)
This presented a few challenges and is one of the major reasons why I don't have the AI mimic their original source perfectly. And why Bullet Bill Blasters are often a bit taller than normal, so Jerry can duck under them more often, rather than being forced to jump over them every time.
Nearly every choice is deliberate. (I admit, I'm a bit haphazard with a few things, but I'm trying to cut that way down with DT3.) As I was telling Slaix earlier, the HP values in DT3 are set for very specific reasons. Such as an enemy that has 105 HP as opposed to 110. The player's damage output is much easier for me to predict this time around, especially during the first half when they don't have access to many damage boosters. The base damage for Link's Master Sword in Gate 2 is 100. The Master Sword gains a base of 5 power per level up. After that first level, those with 105 will only take 1 hit instead of 2. This means the player will only have to (theoretically) stay around that enemy for half the time. The longer the player is fighting an enemy, the longer it is a threat, or more specifically, the bigger the threat that the level design presents.
This is also why I went with fixed damage modifiers for weaknesses and resistances. Not only is it easier to understand on the player side, but it's easier to design around and for me, just flows better.
Wall of text!!
Here, we need an image to offset this... at the end of it!