Jul 26

GearHead: Caramel Combat System

Today I tried to figure out how attacks and other such effects are going to be modeled in GearHead: Caramel. If you’ve ever checked the GH1/GH2 source code, you’ll know that the old GearHead attack routine is a confusing mess of spaghetti that handles everything from beamswords to smoke bombs all in the same place. On the other hand, Dungeon Monkey Eternal has an elegant modular effects system where complex actions can be built up from simple components. Unfortunately, I don’t think the DME system is going to work in GHC without some major modification.

The two big problems that DME doesn’t have to deal with are moving areas of effect and chain reactions. In GearHead, an area of effect attack will sometimes deviate from its intended position. Also, effects often lead to additional effects: a body slam can result in the charging mecha taking damage, a mecha’s engine can explode causing damage to units around it, etc.

Here’s an example of the sort of complexity the GearHead system should be able to deal with: A Harpy launches three blast-radius missiles, each at a different spot, to take out a cluster of enemies. One of the missiles misses and deviates by a few tiles. Another of the missiles is shot down by an enemy’s anti-missile system, exploding several tiles short of its intended destination. One enemy is trapped in the blast radius of two missiles, taking damage from each. It suffers an engine explosion, further damaging its nearby allies.

3 comments

    • DudeGuyMan on July 27, 2017 at 11:49 pm
    • Reply

    Hey since it sounds like you’re getting down to nitty gritty, I just want to toss in a couple longstanding thoughts I’ve had, even though they don’t relate directly to combat.

    A) Can we be rid of hard-coded distinctions between battroids, gerwalkers, and such? I remember never being able to get the Harpy above like -3 MV or something in GH1 because the torso had an inexplicable “I’m a gerwalker!” curse on it even when stripped completely bare. You were better off just removing whatever parts you liked and slapping them on a Savin torso.

    B) Separate MV ratings for ground movement and flight would make a lot of sense. Wings and maybe other parts could improve aerial MV while reducing ground MV, for example. An agile ground mecha with a ton of arc thrusters randomly jammed into it and no control surfaces probably shouldn’t outmaneuver purpose-built aircraft.

    Anyway, looking forward to whatever you do next. 🙂

    1. Mecha stats will be different in GearHead Caramel. Targeting (TR) is gone entirely; some mecha may get targeting computers that provide a bonus to-hit, but most mecha won’t. Maneuverability will be changed to a positive score and will be determined not just by a mecha’s weight but also by its engine rating. The BuruBuru has a maneuverability rating of 22; the Zerosaiko is expected to have a maneuverability rating around 50.

      Combat will work as follows: The attacker makes an attack roll, the defender makes a defense roll. In order to damage the target, the attack roll + weapon accuracy must be greater than defense roll + maneuverability and the attack roll + weapon penetration must be greater than the defense roll + armor rating. If the attack hits but does not penetrate the armor, the armor still gets damaged.

      There are several effects of this new system. First, different weapons will be more effective against different sorts of mecha. You’ll want to use high accuracy weapons against maneuverable mecha, and high penetration weapons against heavily armored mecha. Second, it will allow armored behemoths to be a valid design choice, since you really only need one of either Maneuverability or Armor to evade attacks.

      The mecha forms will have to be adjusted, certainly. At least there will be no more MV+0 limit anymore,

        • DudeGuyMan on July 31, 2017 at 8:05 pm
        • Reply

        Interesting. I like the idea of big armored heavy-hitters being viable, though if the player is heavily outnumbered as often as in GH1 then I could see that viability being limited at the top end. I used to run Robot Warriors up to the absolute maximum the game would throw at you and whew, the only way to survive was to be able to evade basically 100% of all direct fire and hope the enemy didn’t nukespam you to death before you got a turn to launch your own nukes.

        Oh, random, but can we have an in-game way of changing the names, model numbers, and sprites of mecha? I would get really into mecha engineering to the point where things wouldn’t even remotely resemble whatever designation was attached to the torso, so I would edit the save file to change things, but a menu option would be super nice.

        Anyway I’ve been glad to see you at work on GH again. It’s really a hidden gem. There are plenty of indie games with teams and hype and money involved that don’t have nearly as much going for them.

Leave a Reply

Your email address will not be published.