Ancient Star

Development log


Project maintained by iktools Hosted on GitHub Pages — Theme by mattgraham
25 February 2024

Work in progress

by Ivan Kravarščan

TL;DR work is still in progress, ETA unknown, but please be hyped!

Apology

I apologize for the slowdown of the updates. My certain real life megaproject finally got rolling, kids found new ways to be kids, and I had to deal with a certain rabbithole for the greater good, and I made a judgment about Ancient Star that doesn’t mesh well with the previously listed facts.

Espionage

That jugement call was about implementing espionage. All the prep work has been done, the idea has been elaborated and “all” that was left was to materialize the idea. Unfortunately this is not something that can be released little by little so there will be no content updates until it’s 80% done.

Espionage in the Ancient Star will deviate significantly from the Master of Orion lineage. It will focus on giving you knowledge about the party you spy on, and as the rest of the game’s philosophy, I’ll try to make as much of it on the map as possible. This means infiltration will happen by moving a spy unit around like a star fleet and having it enter a colony like a troop ship. Spawning and movement of an infiltrator will be automated according to your desired espionage settings for the colony, as per “less micromanagement” philosophy. After establishing a spy network on a colony you’ll at first get basic vision information, as if you have a fleet in orbit, and options to do more advanced operations. One will give you the vision of nearby colonies of the same player, giving you an opportunity to infiltrate there too and keep tabs on that player’s assets. Other operations need a bit more time on the whiteboard but the general idea is to give you buffs for combat actions at infiltrated star systems.

Infiltrator on it's way

What will make espionage different from other game mechanics are random outcomes, in both chance and magnitude. For example, getting info about surrounding systems would roll for success, and how many systems gets revealed depends on how high the roll was. And similarly, the opponent’s counterintelligence will roll for how suspicious they get, helping them track down your spy networks. In a way this will be a testbed for potential future rework of space and ground combat where I’d like to see randomness work more like a story teller than an accumulation of hit and miss rolls.

Rewrite

In parallel to all that I’ve been working on recreating the game in the LibGDX framework. It’s a game development framework that handles hardware accelerated graphics, sound effects, music, input, UI, and the like in a game app kind of way. Currently published version of the Ancient Star uses no game framework. It’s built on top of the most basic Android app framework, believe it or not. There are limits to how far it can be stretched, and while this game is not hitting those limits too hard, it’s becoming increasingly more difficult. While it does use hardware acceleration under the hood it’s pretending it does not and it’s making wrong judgment calls that result in the severe loss of performance for what should be simple drawing operations.

Start new game and mode selection dialog

Another benefit of LibGDX is its multiplatform. While it would be beneficial for me to publish a desktop build, or even better, a web build, Android players would benefit here too. Iterating on a desktop build is significantly faster and more ergonomic than working with Android builds (either on device or emulator). Sure there are Android specific parts that need to be addressed on the platform but most of the work so far was platform independent.

It’s hard to judge how much of the rewrite is done / left to do. I aimed for a depth first approach, trying out if and how various things can be done in LibGDX. So most segments of the app have been touched lightly with a few done completely. Start menu, mode selection and help screen are complete, and the tutorial can be started with a basic star map showing star images and star names, and with panning and zooming. I’d like to postpone working on the rewrite until espionage is complete and until I make a system that would enable me to tweak the UI on the fly.

Galaxy map work in progress

tags: