Compatibility rendering mode, eight new mechs

Version 0.3.0 is live & available via itch.io! My planned contract work is unexpectedly somewhat on ice (😬), but that means I had about two weeks to sink into just doing content which has been incredibly gratifying. I was able to hit an average rate of one mech per ~two days, which bodes well for the still-waiting mountain of content to get through.

Rendering mode

First off, I could use some help: I’m experimenting with downgrading Godot’s rendering mode from Forward+ (modern graphics e.g. Vulkan) to Compatibility (OpenGL). This sort of rendering technology is extremely hardware- and system-dependent, so there’s only so much testing I can do on my end.

Downshifting to Compatibility has given an extreme increase in resting performance (can now easily get 60FPS on a huge monitor & my laptop no longer feels like it’s a jet taking off), but I’m seeing a lot more shader stutter (brief hangs when new effects are added to the map). I’ve added an up-front ā€œcompile shadersā€ step that can take up to 60s on the first game load, but should be fast after that.

So I’m looking for feedback: on your machine, how is the performance feeling?

  • Are you getting a good framerate (visible in the lower-left corner)?
  • Does the shader compilation step mostly go away after the first time you wait through it?
  • Are you seeing a noticable amount of shader stutter as you use abilities & attacks?
  • If a previous build crashed with some sort of weird Vulkan error, does this one work for you? (if you send me feedback on these, please include your OS)

You can upshift back to Forward+ via the graphics options, if you need a point of comparison or want to see if any stutter issues go away there.

New content

The full lineup of 18 PC mechs.

With that out of the way, here’s the list that I know y’all came here for :p We got 8 new mechs implemented, with placeholder graphics:

  • Metalmark
  • Duskwing (sans OASIS wall)
  • Hydra
  • Pegasus
  • Genghis
  • Blackbeard
  • Sherman
  • Monarch

I look forward to hearing the new batch of bugs that I’m sure I missed with them :)

We’ve also added Escort & Extraction sitreps. The payload’s token is also still a placeholder; until we get a final version, Perfect Form Minotaur gets to make a reappearance:

A payload with a badly drawn minotaur moving around.

Mechanics changes & fixes

  • Fix Ace I triggering when you miss an attack.
  • Fix panopticon not triggering because the lock-on usage record was cleared before the check happened
  • Losing hidden now happens after the triggering event instead of immediately when you use something. Mastermind now using this as the timing in order to correctly be hidden while executing.
  • Don’t try to overwatch guys while you’re intangible.
  • Flying/landing provokes overwatch.
  • Fix integrated weapon CB being able to fire off-turn
  • Fix turret attack being limited to 1/round no matter how many turrets you had out
  • Unstoppable can only target the originally hit unit
  • Can no longer move diagonally to a tile if there are two kitty-corner obstructions between you and it
  • Better ā€œmust move maximumā€ pathfinder calculation
  • Puppet systems now lets you yeet your target off an edge instead of letting them try to climb down safely
  • Fix archers’ moving target triggering on involuntary movement
  • Fix limit break bonus damage being applied to tech attacks.
  • Fix Jager triggering on misses
  • Fix not being able to use ordnance weapons for the heavy gunner attack
  • Goblin CP can’t start sharing turn until the next round
  • Goblin CP ends if either unit goes intangible/is exiled
  • Correctly lose/gain engaged when start flying/become intangible
  • Fix AOE options being given to prototype weapons with different configurations
  • Fix inability to attack with melee prototype weapons & not using the right attack effect for the chosen weapon type
  • Overwatching with sharanga missiles lets you pick a second alternate target after fulfilling the mandatory target on the moving unit

Graphical changes & fixes

  • Fix broken interdiction field effect
  • Laser pointer lines for suppress, snipers mark, covering fire, assassin drone, DH mark for death.
  • Line effect for grapples
  • Anime line effect for To The Death

Two mechs with a crackling line of electricity between them.

UI changes & fixes

  • Added some tweening of the targeting UI; here’s the before & after:

UI popping around

UI smoothly transitioning

  • Added some tweening of the targeting UI
  • Intangible/invisible units looks like our token holograms, just to have some kind of effect on them.
  • Pilot token 3rd color channel no longer says ā€œglowā€
  • Fix prototype weapon choices being shown for CB-added flex mounts
  • Warn if ending turn would cause you to stop flying because you didn’t move
  • Added prompt + confirm to skip dialogues.
  • Don’t say ā€œdoubledā€ in log for heat or burn damage when exposed
  • Fix broken meltdown status text
  • Make right-click the primary cancel button that shows up in prompts.
  • Confirm boost via the action bar, adjust its description.
  • Fix the camera ā€œuntwistingā€ when moving to overhead mode
  • Fix blademaster deflect ability text
  • Now have to confirm before hiding.
  • Don’t show ā€œclearā€ buttons for integrated mounts
  • Rearrange instant action screen to make it clearer where to edit the reinforcement modifiers

Combat editor

  • New fetchers to get closest/furthest/center/random tiles.
  • Fix setpieces being cleared at 0,0 while clearing elsewhere. Better ā€œis cursor activeā€ detection when off-map.
  • Can place props (non-deployable units) in the unit picker modal. Yes Mark I’m sorry I was still using the word ā€œpropā€ somewhere in the codebase. I’m not proud.
  • Improved trigger descriptions for array props (there it is again)
  • Fix warning lighting not showing up in dialogues
  • Speaking NPCs without portraits no longer show up as narrators
  • Don’t clear what we’re painting in the landscape editor on undo/redo

Campaigns

  • Optimized the module editor; it’s still not perfect, but should be MUCH faster when loading modules with many moments
  • Beat rest types are saved correctly
  • Moment autoplays
  • ā€œEndā€ moment for modules (there’s just one; it’s now automatically added on load)
  • Stubbed out Combat 2 map, still need to do dialogue and custom triggers
Keeping the fire lit, more talents