Alright, let’s talk about what this milestone means for the game itself!
Seasons & Map Generation
This was actually a bit of a detour from the original plan, but I had long known serious work was needed here, and the map is so crucial to everything else that I decided to bite the bullet.
The old system for creating and managing the seasons was extremely primitive – and it showed. Climate zones were assigned in thick bands based on latitude, with small modifications made near mountains. Randomness was leaned on heavily in an attempt to add some fuzziness. In the end, rather than getting large cold fronts advancing from the north you were instead treated to obvious and unrealistic stripes, with the occasional snow tile peppered here and there.
Climate and terrain is closely linked, so when I decided to redo the former I felt it best to step back and add map generation to the task. What we want are believable maps that contain regions with strong character, but the old logic could do little more than produce an even mix of terrain across the entire map. I decided to basically burn everything to the ground and start over.
…
I spent a week researching climate, precipitation, ocean currents, temperature patterns, drainage basins and much, much more. I then came up with a design that centered around the two elements I felt most important: each tile’s moisture and winter warmth. The game already calculated elevation based on proximity to the ocean, mountains and hills, but I rewrote most of this system as well to produce the results I was aiming for.
After a couple weeks the game was producing maps with lush forests, bone-dry deserts and everything in between. I’ll let the results speak for themselves:
Ensuring these interesting worlds are playable and balanced will require spending more time on the placement of resources and starting locations, but we now have a solid foundation to work from.
A couple months ago I made another change to seasons, but this one was a little more abstract.
Part of what makes seasons important in the real world is that they stick around for a while. After a month or two you get used to it being winter or summer. Years had always been 12 turns from the very first day AtG was playable, but in the back of my mind a small voice was continually whispering that the seasons were rushed. Most invasions launched in the spring would be bogged down by snow before even reaching their target. After receiving similar feedback from others I doubled their length.
There are times when features are clearly imbalanced or broken, but this was a good example of the kind where there’s nothing to guide you but your own gut. Brainstorming and playtesting are the only tools you have, and with several games under my belt since the change I’m confident it was the right move.
Sages & Roman Technology
But the length of seasons wasn’t the only major game feature that felt weird. The concept behind Romanization Perks was to allow players to add and swap bonuses around as the game situation changed. But “forgetting” how to build boats just didn’t sit right. Plus, what the hell is a Romanization “perk” anyways? Perk? Really? That’s the best term you could come up with? Every game abstracts a few things along the way, but sometimes you can go overboard and completely lose sight of the theme.
The original AtG design doc actually called for a Romanization system and a Tech Tree. I merged the two because they were quite similar in form, but in the end I decided to turn back the clock and split them back in two. But conceptually, what bonuses could make sense to switch around? The default in Civ games is your government, but knowledge of any real sophistication barbarian tribes might have exhibited here are now lost to the sands of time. And even if it wasn’t, it’s probably fair to say that radical changes weren’t made every year or two.
But what could make sense are the individuals who served in the government. One feature from King of Dragon Pass that I’m particularly fond of is the advisers. You select men and women who offer unique traits from a pool, and can hire or fire them as you see fit. From this seed, AtG’s “Leadership Council” was born.
“Sages” appear every couple years and offer their services. I wanted the choice of who to hire and dismiss to be a tough one, so there are only two “Minister” jobs available. After a minister has served for a while you can ‘demote’ them and they’ll stick around until re-appointed, but firing them too early is an insult, and results in their permanent departure. I liked the balance this offered between keeping folks on that you like and encouraging you to cycle through and ‘collect’ new Sages, growing your pool over time.
I feel it’s important that players not stick with the same Ministers forever, as this is the exact opposite of the strategy genre’s goal of providing “interesting decisions”. You should feel like you can switch at any time, and this meant purposefully omitting ‘ongoing’ bonuses like lower food requirements. At first this is cool, but eventually you grow accustomed to it, and what was once a bonus becomes a permanent crutch. “Man… Food is so tight already, I can’t possibly justify firing him!”
Instead, I’ve opted for bonuses that are either very in-the-moment or stick around forever. An example of the former might be extra rewards for taking out bandit camps, the latter a permanent reduction in food cost for units trained while the minister was in office. This approach comes with problems of its own (why not just keep a sage on for one turn, train a ton of units, then fire him?), but these are much easier to solve than the ones which have plagued 4X for decades that I tackled first.
Another aspect of sages I really like is that they provide a way to nudge players strategically in the early going. In many games there’s so much you could do that very little stands out as a good, clear option. However, if a sage shows up that increases your chances of finding horses you suddenly have an interesting opportunity that might be worth switching gears for.
I actually like what the sage add to the game so much that they’ve prompted me to consider a much bigger change to the overall economy of AtG. But we’ll get into that soon…
With the introduction of sages I decided to change the name of the “Romanization Perks” to “Roman Technology”. People are already very familiar with the concept of researching/learning/acquiring technologies, and the term now makes a lot more sense for bonuses that are permanent.
Mac & Linux Versions
Getting AtG running on non-Windows platforms has been the project’s biggest technical hurdle, and the primary dividing line between Alpha I and II. The game is built in XNA/C#, which means by default it only runs on Windows and XBox 360. Jonathan and I have spoken about switching to another tech base at some point, but this isn’t really the kind of change you want to make mid-project.
Fortunately, a “wrapper” named MonoGame exists to port XNA to other platforms, including Mac and Linux. Way back during the Kickstarter campaign we were able to get AtG running on both, but it was basically just a tech demo to see if it was even possible. We put the porting effort on the back burner while focusing on getting the game playable, but we knew the day would come when we’d have to take the plunge.
There were two main challenges associated with this task.
The first was purely logistical, and involves the creation and maintenance of a “project” file containing MonoGame “links” to the thousands of C#/XNA-specific files that make up AtG. Jonathan and I were initially considering doing this by hand, but it became clear that this would ultimately add up to dozens, if not hundreds of hours. Not only would we have had to manually modify the links any time a file was added, moved or renamed, but this process would inevitably resulted in countless errors which would also require time to track down, fix and test.
We opted to instead write a small utility program to take the existing project file and automatically make any necessary changes. With a single press of a button we can prepare AtG for deployment on all three platforms. To simplify our lives further we have them all bundled up into a single deployment package, though this adds an extra ~80 MB, so we’ll probably split them up before release once we’re posting updates less frequently.
However, even with the utility the project file links still gave us some trouble. Windows doesn’t care how you capitalize file and folder names. OSX and Linux do. I think you know where I’m going here…
But all of these tasks were just a matter of grinding through and doing it. The second, more daunting problem was finding the right combinations of settings, libraries and add-ins to get AtG to actually run at all. And this was by no means a sure bet.
MonoGame is neither professional middleware nor a free solution from a big vendor like Microsoft, but an Internet hobby project. A very good one, but a hobby project nonetheless. No one is officially in charge of it, different individuals had different versions of the code, documentation was very limited and some features were just plain abandoned.
After countless dead ends, problems with getting audio files to play and running into errors with zero useful information or leads to work from we finally stumbled around in the dark long enough to concoct a strange brew that reliably worked on both platforms (many thanks to Port Master for his help!).
After having a near heart attack when the strange collection of files we’d gotten working was thought lost, we packaged everything together, made a half-dozen backups and finally established a pipeline for deploying the game on all PC platforms!
What’s Next?
Now that all of AtG’s major features are at least roughed out our focus for the next half-year or so is improving the game’s feel and pacing. The following three tasks are what we’ve identified as being most crucial to that. I’ll go into more detail on each as they’re checked off the list in the coming months.
Combat & Supply
Despite being a huge chunk of the game, the current design for this is basically still a ‘rough draft’. It was one of the first features implemented, but is now one the last to receive real love. It’s functional, but not terribly interesting or clear.
Our goal is for combat in AtG to focus on maneuver, positioning, the terrain, and the seasons. Many games claim this as an objective, but unless you really go out of your way brute strength is usually all that matters.
To avoid this, there needs to be a legitimate way for a weaker army to defeat a stronger one without engaging it directly. With seasonal change being one of AtG’s keystone features, it was obvious from day one that simulating supply made sense for both gameplay and immersion reasons.
The plan is for supply to be fairly simple, as we want winning to require good strategy and not just obsessive bean-counting. The supply available on tiles will range from 0 to 3, with most unit types requiring only 1 and more expensive cavalry units requiring 2. You can chain together fixed supply depot structures to improve the supply of tiles near them and allow for winter campaigns far from home. But if this chain is broken units will quickly lose morale and health, making them extremely vulnerable to attack.
One last ingredient for spicing up combat that I’m particularly excited about is a new unit: the skirmisher. In most games light infantry is virtually useless, as they often fall into the brute strength is always better trap. But supply offers a way for us to avoid this.
Light infantry is characterized by high mobility and survivability. AtG’s zone of control system prevents units from ‘sliding’ past one another, and while skirmishers don’t inflict much damage they also don’t suffer much. Like a fly, they’re far more annoying than dangerous. Constantly harassing and delaying larger armies might slow them down just enough for winter to arrive, or at the very least provide enough time to muster your own army.
Well, that’s the idea anyways – we’ll find out soon if it adds up to something fun!
Economics
Every six months or so I like to step back and really put a microscope on AtG’s design, and the introduction of a new group of testers is a perfect opportunity to do so again. Reviews of this sort often re-affirm what you’ve already believed, but there are also times when they lead to sweeping changes. AtG’s economy may be the latest ‘victim’.
This is a game where nothing lasts forever. Resources deplete and eventually you have to move on. Unlike other 4X games there’s very little to commemorate your achievements, aside from still being alive. There’s a certain charm to that, but I do think there’s a void there that could be filled with something. We don’t want players to feel like they’re just treading water.
Inspired by the sages and tester suggestions, I’m considering shifting the design of the economy from being structure-centric to people-centric. A farmer wouldn’t just build a farm and disappear, but have a name and a history. He’d have unique traits, and his skills would improve over time. If his farm floods he might get pneumonia. Over the course of a game you’d get to know him, and if he’s captured or killed it’ll hurt a whole lot more than if yet another generic farm was pillaged. At the end of a game your trophy wouldn’t be a mighty empire of shiny buildings, but an interesting cast of characters, each with their own story.
Of course, all of this could end up going nowhere, but I want to at least fill you in on what I’m thinking, just in case radical changes are made. Either way, I’ll be sure to describe the process and its conclusion in detail for you here in a few months!
Economic & Tactical AI
Nearly all of our testers have noted that the roadblock to AtG “taking the next step” is an improved AI. AI leaders are capable of the absolute basics right now, but this is where the large majority of the remaining work on AtG remains.
The first order of business is teaching the AI how to perform more advanced economic tasks, such as building new Settlements, developing plans to address resource shortages, and migrating.
Of course, it’s of little use for the AI to build up a mighty economic engine if it’s just going to be captured by the human player. The AI is already capable of “missions” like taking out nearby bandit camps and the like, but it’s still woefully inadequate at defending itself. Once the combat system is in better shape it will finally make sense to invest more time here.
Finally, once the AI can protect itself we’ll want to give it some fangs. For the player to take the AI seriously, it at least need to be capable of plowing through a weaker foe with a big pile of units. Full awareness of supply lines, amphibious invasions, the capacity to plan ahead and compensate for winter will come, but not until the basics are taken care of.
Diplomacy & Personality
The final ingredient necessary for AtG to make the jump from promising-prototype to actually-fun-strategy-game is instilling its leaders with character. Excellent diplomacy is one of AtG’s priorities, and we have a long, long way to go on this front. Good ideas, design and code are all helpful, but by far the most important element is time.
To begin with, there’s just a ton of dialogue and AI behaviors to write. If we want AI leaders to warn you to stay away from their borders, remember whether you do or not, comment on that fact and account for it in their future diplomatic planning we have to actually add each of those pieces by hand. After that you need to test it at least five or ten times to make sure it’s even working the way you expect it to. It likely won’t be, which demands yet more time for tweaking and evaluation.
Once the guts of the system actually work, it’ll be time for me to put my writing cap on, because there’s a looooot of dialogue that needs penning. There are twelve factions, each of which needs an interesting, unique voice.
On top of that, I’ll probably want to write two to three times as much dialogue as absolutely necessary to minimize immersion-killing repetition. Seeing the same line just twice immediately breaks the illusion of the AI leaders being thinking, feeling characters. Ultimately, this is inevitable, but with enough time we can at least push it back to the third or fourth playthrough.
Anyone who’s written professionally or just for fun knows how hard it is to come up with even one well-crafted sentence, let alone a whole book’s worth!
***
So that’s what’s on the agenda. We’re now past the halfway mark, but not by much. Possible changes to the economy aside, the updates will probably start getting a little less sexy, so be prepared for the regular refrain of “Hi guys, been playtesting and tweaking, it’s coming along great!” But hey, that’s strategy games development for you. Thanks again for your patience and support!
– Jon