Week 76: New music and displaying queued commands

An animated GIF of a recording from Meteor Power showing station-build and power-line-run commands being queued up and inspected through a list of HUD buttons.
Queued commands are shown in the HUD,
and you can inspect them to see phantom indicators.

tl;dr: Last week I made new music and a system for displaying, inspecting, and cancelling queued bot commands.

What happened last week?


  • I continued with job interviews.
  • I created more music.
  • I added a system for displaying queued bot commands, inspecting them, and cancelling them.

Laundry list

  • Add more music!
  • Display queued bot commands in the HUD:
    • Add HUD items for the command queue.
    • Update HUD command-queue styling.
    • Sync HUD command-queue to game state.
    • Add support for canceling queued commands.
    • Update the HUD command-queue list to preserve command selection when the command transitions from being queued to being in-progress.
  • Add phantom annotators for inspecting queued commands:
    • Add a new subclass for game-specific annotators.
    • Create phantom versions of all bot and station art.
    • Create scenes for the phantom indicators for bots and stations.
    • Hook-up the current-navigation annotator for the currently-selected command in the command queue.
    • Update NavigatorAnnotators and NavigationPulseAnnotator to support being used in an always-on mode that doesn't toggle visibility based on slow-motion enablement.
    • Fix phantom sprite positions.
    • Draw phantom bots and phantom stations when selecting a queued command.
  • Rope simulation refactors:
    • Create a new StaticRope class.
    • Enable better configuration of the DynamicRope class.
    • Create a PowerLinePhantom annotation for queued commands.
  • Miscellaneous:
    • Fix various edge-cases for invalidating logic when a station or power-line has already been destroyed.
    • Fix an issue with the sequencing when destroying objects when a level ends.
    • Fix an issue with some upcoming commands being dropped when finishing an earlier command.
    • Fix an issue when trying to run a power-line when one of the stations has already been destroyed.
    • Disable slow-motion when the level ends.
    • Disable touch-event-handling after the level ends.
    • Refactor the annotators system to use String-based types.
    • Simplify the cancel_command API.
    • Fix some small edge-case bugs.
    • Render remaining cost after executing command for each queued command item.
    • Start refactoring how bot command / is-active state is updated.

What's next?

  • Wrap-up interviews.
  • Finish refactoring bot command / is-active state updates.
  • Hook-up custom flying movement logic for the barrier bot.

🎉 Cheers!

This is a simple icon representing my sabbatical.