Author Topic: 2014 June 4 - Alpha II and Beyond  (Read 18376 times)

Jon Shafer

  • Lord of the Forest
  • *
2014 June 4 - Alpha II and Beyond
« on: June 04, 2014, 04:51:07 PM »
What's New in Alpha II?

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 Ethan Lee 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



If you have any questions, please send me a private message here on the forums or an email at [Contact@ConiferGames.com]. Thanks for your support!

Re: 2014 June 4 - Alpha II and Beyond
« Reply #1 on: June 04, 2014, 09:13:32 PM »
Quote
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!

Okay, I have to say that this sounds like a great idea on paper. If you can pull this aspect off, I'll be very happy b/c you'll make me care about these people in a way that is missing from other 4x games. Sure, EU and Shogun have some great family mechanics, but those are for royals/nobles. I can't think of a game that has this aspect for the peons... I mean the labor-class. ;)

Best Wishes,
Joseph

PS: As a writer, I don't envy all those dialogue options you're going to need to write. Good luck! ;)
Steam
Windows Home Premium 7 -64 bit + SP1 (English)
Intel i5 Quad Core 3.2 GHz
6 GB RAM
AMD R9 270 2GB
1600x900

Jon Shafer

  • Lord of the Forest
  • *
Re: 2014 June 4 - Alpha II and Beyond
« Reply #2 on: June 04, 2014, 09:47:18 PM »
Okay, I have to say that this sounds like a great idea on paper. If you can pull this aspect off, I'll be very happy b/c you'll make me care about these people in a way that is missing from other 4x games. Sure, EU and Shogun have some great family mechanics, but those are for royals/nobles. I can't think of a game that has this aspect for the peons... I mean the labor-class. ;)

That's the idea. CK2 is one of the very few games where you actually think about characters more than numbers, and that is a game I'll be thinking about a lot over the next couple months. I don't know if we'll be able to get all the way to CK2's level of engagement, as that game features full life cycles and generation changes, but we can probably get close.


Quote
PS: As a writer, I don't envy all those dialogue options you're going to need to write. Good luck! ;)

Haha! That and the AI are the two big reasons why the release date is so far out!

- Jon
If you have any questions, please send me a private message here on the forums or an email at [Contact@ConiferGames.com]. Thanks for your support!

Re: 2014 June 4 - Alpha II and Beyond
« Reply #3 on: June 05, 2014, 05:15:38 AM »
CK2 is one of the very few games where you actually think about characters more than numbers, and that is a game I'll be thinking about a lot over the next couple months. I don't know if we'll be able to get all the way to CK2's level of engagement, as that game features full life cycles and generation changes, but we can probably get close.
Surprised and happy that giving units a personality is on the cards. CK2 is certainly a great game for that, but there is so much of the game dedicated to breathing life into them it's a somewhat lofty standard to aim for. CK2 is also attempting to model actual people, not a representation of people, so the abstraction currently used for AtG will hurt building affinity. Maybe the labourer establishing a farm initiates a family dynasty of farmers (all represented by the one labourer), but gives personal information of the family leader (even possibly with succession to give a sense of time passing?)

Another game with good character affinity is Dwarf Fortress. Even though you cannot interact with them using any type of communication, the sheer amount of detail and presence they have in the world allows their character to shine though. Also getting to know each of their personality quirks gives in-game rewards when diving deep into the game.
Recently there was a somewhat similar game called "Craft the World" that had some discernible differences in the amount of affinity it generated toward the dwarves.
The takeaway for AtG would be:
1) position is important to establish a relationship between the character and their surrounds (this is probably easy for AtG).
2) specialisation increases the reward for caring about who does what (might be hard with limited resources to play with)

For a more whimsical take on personality, Majesty (& to a lesser extent Majesty II) also breathed life into independently moving characters by giving them enough of a back story and personal journey that you can't help but check up on them and root for your favourites.
  • OS: English Win 7 with Steam
  • Hardware: AMD Phenom X4, 8Gb RAM, nVidia GeForce 560 @ 1680x1050

Re: 2014 June 4 - Alpha II and Beyond
« Reply #4 on: June 05, 2014, 09:52:40 AM »
The good thing about the time scale of this game is that that established characters probably don't need to have "family" dynamics and can focus on the individuals create. After all, each year is 24 turns so it would take about 480 turns for each "generation" to reproduce. By that time, most games should be over or near the end.

One worry I have is that people will try to game the system by creating laborers looking for certain traits. I assume when a laborer is created under this system, you won't find out the traits until after they found an improvement. Yes, some people might save scum for the best people, but at least it makes the process more tedious then just making a unit and returning it until you get the traits you want.

Best Wishes,
Joseph

PS: Also, one of my favorite game series, Panzer General, did an awesome job with leaders and heroes being attached to units and making you care for them in a way you wouldn't normally care.
Steam
Windows Home Premium 7 -64 bit + SP1 (English)
Intel i5 Quad Core 3.2 GHz
6 GB RAM
AMD R9 270 2GB
1600x900

Re: 2014 June 4 - Alpha II and Beyond
« Reply #5 on: August 01, 2014, 09:36:17 PM »
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.

If it's a C# project and modders have access to some source code, does that mean making mods will involve recompiling the game's .dll files? Or will it use an extensibility system such as Microsoft's MEF (or custom)? Or will it dynamically compile cool scripts from .Net languages using awesome Roslyn? I think the latter two options would be best 'cause modders can access the hooks without overwriting the game files, making mods much more cross-compatible.

Any chance we could get a *peek* at the C# code now?
  • Steam
  • Windows 8.1
  • en-US
  • Intel Core2 Quad Q9400 2.66GHz
  • XFX ATI Radeon HD 5700
  • 1080p (1920x1080)

Jon Shafer

  • Lord of the Forest
  • *
Re: 2014 June 4 - Alpha II and Beyond
« Reply #6 on: August 02, 2014, 12:08:29 PM »
If it's a C# project and modders have access to some source code, does that mean making mods will involve recompiling the game's .dll files? Or will it use an extensibility system such as Microsoft's MEF (or custom)? Or will it dynamically compile cool scripts from .Net languages using awesome Roslyn? I think the latter two options would be best 'cause modders can access the hooks without overwriting the game files, making mods much more cross-compatible.


Everything is compiled into DLLs. The Mac and Linux versions are built with MonoGame (which is basically a wrapper on top of the Windows version), so at the very least modders will be able to compile the Windows DLLs in Visual Studio Express and the Mac/Linux "DLLs" with a program like Xamarin Studio. It's a pretty straightforward process (I do it every time I post a new build of AtG), and everything is free.

Obviously we'd like to make it a lot easier than this, but it's a matter of opportunity cost. My experience with the Civ modding community has taught me that if you only have the time and resources to make modding 1) powerful, or 2) easy you get the biggest bang for your buck with the former. Modders - especially of strategy games - are incredibly resourceful and will find ways to use what's available to make awesome stuff, putting the onus on the developer to make as much available as possible.



Quote
Any chance we could get a *peek* at the C# code now?


My plan is to make the AI, UI and Map Generation code available to those in the Test Group later this year. :)

- Jon
If you have any questions, please send me a private message here on the forums or an email at [Contact@ConiferGames.com]. Thanks for your support!

Re: 2014 June 4 - Alpha II and Beyond
« Reply #7 on: August 02, 2014, 08:53:03 PM »
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.

During my initial playtest last night, I kept wondering how much AtG's economy was inspired by the rogue-like genre. There were several pangs of feature deja vu. The seasons, resource consumption, and starvation mechanics remind me of the cyclical, time-sensitive challenges in Don't Starve. Dealing with an opponent that's way bigger and badder than you are is another rogue-like theme. I love the idea that you have to keep your clan organized and on its toes to stay alive, and eventually prosper. It also fits with the setting. Barbarians didn't become badasses by sleeping in silk sheets their whole lives.

I'm one of the folks who likes just being "alive" to be an achievement. I use the "Frostfall" and "Realistic Needs and Diseases" mods when I play Skyrim, just so I have more to worry about besides saving the world. I would be in favor of a rogue-like difficulty for AtG, where starvation (or loss of respect from your clan) is a loss condition.

After thinking about it a bit more, "treading water" for more than a short time should lead to a loss condition, to discourage boring behavior. Either you're progressing or you're retrogressing, in a world that's becoming more and more dangerous. You either thrive, or die. Like when Ghengis Khan united the tribes in central Asia. (I don't know much about the European barbarians.) "Players optimize for boredom" is one of the most interesting points brought up in the Round Table's podcast on Don't Starve. If there aren't challenges being thrown at players, most people will do the most boring thing they can to keep going. I'm guilty of this in CivV sometimes, by spending long stretches of time grinding without any wars.

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.

This one reminds me of FTL, another favorite of mine. You become close to your little people as you acquire them and level them up. The racial abilities and skill levels make each crew member unique, and potentially perform an essential role in your quest to beat the big-bad-guy. When one of them dies, you're like "Not Wilson! He's my chief engineer and he's been with me since sector two!" I would love if clans became emotionally powerful like that.

(I have a suggestion for clans, but I'm not sure if it's ok to share outside of the playtest group. I'll save it for later.)

Quote
Any chance we could get a *peek* at the C# code now?


My plan is to make the AI, UI and Map Generation code available to those in the Test Group later this year. :)

Glad to hear it!
« Last Edit: August 03, 2014, 01:18:27 AM by TheFirstDeity »
  • Steam
  • Windows 8.1
  • en-US
  • Intel Core2 Quad Q9400 2.66GHz
  • XFX ATI Radeon HD 5700
  • 1080p (1920x1080)

Jon Shafer

  • Lord of the Forest
  • *
Re: 2014 June 4 - Alpha II and Beyond
« Reply #8 on: August 04, 2014, 12:06:41 PM »
Without a doubt, I've been moving in more of a roguelike direction the past few years. I was actually experimenting with seasons long before Don't Starve came out, but that game is a perfect example of the great strategic value environmental cycles can provide.

And I'd say AtG's 'people economy' is actually more inspired by Crusader Kings 2 and King of Dragon Pass than FTL, but there are definitely similarities. Because the system is so new the current implementation is very mechanical, but my plan is to instill a lot more character and personality (ala KoDP). The big factor is always time, but as I've said time and time again I'm not afraid to push things back if I think it'll make for a much better game. :)

- Jon
If you have any questions, please send me a private message here on the forums or an email at [Contact@ConiferGames.com]. Thanks for your support!

Re: 2014 June 4 - Alpha II and Beyond
« Reply #9 on: August 06, 2014, 06:51:20 AM »
My plan is to make the AI, UI and Map Generation code available to those in the Test Group later this year. :)
This.
  • OS: English Win 7 with Steam
  • Hardware: AMD Phenom X4, 8Gb RAM, nVidia GeForce 560 @ 1680x1050