I’m Santiago Zapata, better known online as slashie, a Software Engineer and Independent Game Developer and from Medellín, Colombia.

You are in the devlog, a chronological collection of updates on my projects, alongside articles about software and game development. Subscribe to get these directly into your inbox.

Horns of Dominion, Day 4 – Music, and making room for the future

Published by

on

Following the tradition, fellow js13kgames comrade Ryan Malm created a track for the game. It’s good of course. I added it knowing it would bump us a little bit over the limit already, so I set myself into the early task of size optimization.

Including the music changes (library + song data) I started at a whooping 15481 bytes, that is 2169 over the 13,312 limit. After all the changes I ended at 12250 bytes, 1062 under. Most of the savings came from actually fixing the packaging process; due to an issue with the packaging scripts we weren’t really minifying thing correctly, so, once I set up roadroller we got about 1459 bytes back already, and further basic changes to make the most of it brought another 392 bytes. I additionally set up zopfli which gave us another 349 bytes.

Then it was time to start chopping things; always feels like throwing stuff off an airplanes’ door to reduce weight and survive:

  • Drifting clouds: They didn’t look that good anyways.
  • Starfield: Was there a starfield? I never saw one… a byproduct of leveraging too much into the agent.
  • A good one was the flying rock “keel” under the game world; I replaced its somewhat convoluted geometry logic with seven scaled copies of the island’s own coastline stacked downward, which terraces into layered rock, costs less and looks cooler.

As for the UI, I removed things that were already visible some other way in the main map.

  • Battle Roster Panel: The thing that showed details of battles was a bit buggy.
  • The warband info panel bar (except for the “split” slider).
  • Redundant data on the HUD including the cities-held count, progress bar and standings
  • The city panel’s Ruler/Populace/Defenses rows and hint lines
  • The event log.

Another somewhat related change had to do with the movement controls; I had landed a somewhat cumbersome UI to move the units, all trying to prevent unwanted movement when you had a unit selected and wanted to inspect a city, I decided to change it so that instead the cursor becomes a crosshair when movement would be activated.

Finally, I removed a small part from SoundBox’s library which is not used when you use createWave.

Leave a Reply

Discover more from Slashie's Gamedev Adventures

Subscribe now to keep reading and get access to the full archive.

Continue reading