Share this project

Done

Share this project

Done
Now is your chance to help GMT bring Twilight Struggle out for PC, Mac, Linux, iOS, and Android!
Now is your chance to help GMT bring Twilight Struggle out for PC, Mac, Linux, iOS, and Android!
6,566 backers pledged $391,047 to help bring this project to life.

Recent updates

Photos

Digital Update 4/11/16

18 likes

Greetings Backers,

Today we have switched over to using our retail servers for online play in preparation for a Wednesday release on Steam.  

Your online account from the beta will no longer work. You will need to use an existing Playdek account (from one of our previous titles) or else go through the account creation process again. This will be last time you will be asked to do this.  

If you have save files from previous builds, these will no longer load after you update. They won't appear in your game list, either. This was necessary in order to correct a number of issues for release.  

If you already received a Steam key for the beta, this will automatically update to the retail version. You don't need to do anything further other than launch Steam. If you were entitled to receive a PC or Mac version of the game as part of your Kickstarter rewards, but you haven't received it yet because you didn't sign up for the beta, we are sending those out now.  

It should take about 24 hours to send out all of the remaining codes. If you haven't received your Steam key by the end of Tuesday, contact support@playdekgames.com and we'll take care of it.  

Cheers,    

Twilight Struggle Digital Team

Digital Update 4/9/16

28 likes

Greetings Backers,

Some exciting changes are headed your way! Starting Monday, April 11th, we will be switching the client over to our retail servers. When this happens, you will need to log into Twilight Struggle with a Playdek account. You will be able to create one at this time, or if you have an existing account from one of our other games you will be able to use that account to log in. During this changeover, online games in progress and online profile stats will be lost. Saved games from the beta will also no longer load after the update from Monday is installed.

Our focus for the game after this release will be our continued effort to implement AI. By releasing the game to a larger player-base soon, we will be able to generate more game data to use for AI training. There are also additional features that were mentioned in the Kickstarter that we have yet to implement, however we plan to implement these features in updates as they are completed.

Along with further developing the AI, our next major milestone will be the iOS and Android releases, with other platforms to follow after. Prior to releasing on mobile, we hope to be able to get some play testing done with some of you so more details on that will be coming soon. We will be starting with a beta build on these platforms, so the build may not be as stable as the retail release. But having additional play testing on this build will help us polish the game for these platforms much quicker than without. We will share details on this with everyone later.

We look forward to the update on Monday, and we can't wait to be able to open the game soon to more players on all of our platforms!

Cheers,  

Twilight Struggle Digital Team

Digital Update 3/12/16

37 likes

Greetings Backers,

Today we would like to share with you a look into how the AI for Twilight Struggle was developed. Creating an automated opponent is always the most challenging component of converting a board game into the digital version. The techniques that work well for evaluating available decisions are very different from programming any other portion of a video game.

The process of creating an AI for Twilight Struggle has been among the most difficult of any of the games we’ve published. For the majority of our titles, it wasn’t too much effort to create a basic player that could make it to the end of the game and then iterate from there. These games don’t have early win conditions, so the user still got a reasonably satisfying experience of playing through an entire game and if the AI made a few poor decisions this wasn’t always apparent until the final score was displayed. Summoner Wars and Agricola were not like that. Summoner Wars is a head-to-head game where the only victory condition is defeating the opponent’s main unit. If the AI did a poor job of defending its summoner, the game was over very quickly. In Agricola, each player has to feed their family during Harvest phases that occur through the game. If you don’t have enough food during harvest, you are given a points penalty that is very difficult to overcome in the final scoring. When the AI doesn’t have enough food in the first harvest phase, the player knows that the game has already been won. Twilight Struggle is very similar. If the AI doesn’t realize that the current action round is the last chance to remove a certain card from its hand or it will be guaranteed to lose the game this turn, then we end up with a premature victory and the player doesn’t gain anything from the experience.

So this has been a point of emphasis in our work on the AI player. We’ve created a process where the AI player can play against itself and use the results from that to improve its game. As part of that process we are tracking how the game ends and keeping an eye out for DEFCON victories, held scoring cards, and Cuban Missile Crisis conclusions. It isn’t always easy to see why the AI player is making a particular decision without details on everything it is considering, so we’ve built an extensive tracking tool to allow us look back at the last several decision points to see what the AI was considering. In some cases, DEFCON victory is acceptable. Sometimes you play Grain Sales or Five Year Plan and draw a card that reduces DEFCON. Sometimes you play a headline card that reduces DEFCON and your opponent does that same but with a higher ops value. Sometimes the AI gets into a situation where it has too many scoring cards, and since it realizes that it has no way to avoid losing the game at the end of the turn, it prefers a battleground coup to reach DEFCON 1 over losing because of a held scoring card.

Optimization has also been a heavy focus in our AI development. We put effort into adjusting how we were storing the game state and the data used by the AI player to make it as “cache friendly” as possible, which has lead to a great increase in performance. The AI is typically given 12 seconds to make a decision, and we are currently seeing almost 10 million possible outcomes considered in that time on a midrange PC. So we should have the horsepower to get the job done. We just need to focus on how we use that performance.

Our approach to AI is a move space search that attempts to consider the best possible choices and each decision point, playing the game out until the next decision point and then repeating until an end state is reached. In a perfect world, that end state would be the end of the game, but that isn’t even remotely reasonable. Our goal is that the end state would be the end of the current turn, but that is also a stretch if the game is currently in the headline phase or the first several action rounds of a turn. The explosion of possible paths grows exponentially at each decision point. Our focus on improving the AI player comes primarily in 2 places. Improving the functionality that evaluates each end state to determine which one is the better outcome and improving which possible choices the AI should explore at each decision point. We handle the first part through a genetic algorithm. This is where the AI learns by playing against itself, and the results are fed back into the evaluation function for game state. We’ve used this on each of our previous games all the way back to Nightfall we good results, and the improvement in the AI game can be seen based on the more time it has to play. As this development is going on, we can also observe how it is playing and which values it seems to think are important to decision making, and we will add and remove different factors to help it improve.

Adjusting which choices are considered at each decision point is a much more game specific task. Outcomes in Twilight Struggle are heavily based on randomness. Summoner Wars is our only previous game that used dice as heavily as TS does, and we handled prediction of random outcomes in a much simpler manner on SW. For TS, the AI player needs to be able to accurately predict the possible outcomes from any die roll. For a coup, this usually between 2 and 6 unique outcomes need to be considered. For a realignment, there are between 2 and 11 unique outcomes that should be looked at. And in the case of realignment, there are usually 3 or 4 attempt made during a single action round. We treat each dice roll as a separate decision node and then blend the possible outcome values based on the probability of each outcome occurring.

We’ve seen the AI player makes some impressive choices. And often it will follow that up with a poor decision. One of the most memorable instances was when it started exploiting a bug in the rules to win games. As we were looking for instances where the AI was losing the game, we started seeing cases where Cuban Missile Crisis was causing the game to end. Cuban Missile Crisis is always an avoidable end game condition. The affected player can always choose not to make a coup attempt until the CMC effect ends. But we had AI players that were losing in this manner. Looking at the results in one case, we noticed that the US player was headlining “Ask Not What You Can Do For Your Country…” and discarding every card from its hand except for Cuban Missile Crisis. The draw deck was small enough that it knew which cards it would draw, and Che was coming up as one of those cards. It played CMC during the first action round and then played Che in the next action round, allowing the USSR player to resolve the event first. The USSR player would then choose a country to coup and lose the game. This is when we realized that the rules did not allow the player to decline the coup attempt from Che!

As we’ve written about previously, the learning process is still ongoing. In previous games where we’ve felt the AI turned out pretty well, the genetic algorithm was allowed to run for over 1000 generations. We haven’t hit that point yet with TS, and we’re still tweaking the weights that are included in the GA. We are seeing similar intermediate results to previous game, though. Often when the GA starts running, it will quickly reduce a large number of the available weights to all be zero. It seems to identify which values are most important and tunes those first, and only after it has reached a stable level for those numbers then it will start to bring in some of the other factors to fine tune its decisions. In the base game for Nightfall, there were only 24 cards, so we had a separate weight assigned to adjust the value of each card in the AI players deck. It immediately reduced all of the action cards to have no value and focused on just a few of the important minions first. Then after many generations, it started to gradually raise some of the stronger action cards. In TS, we’re just starting to see that now, where some of the influence factors that have been ignored for quite awhile are starting to creep back in to the decision making process.

So we feel the AI player is ready to release for the beta now. If you are an experienced player who is already enjoying online play in the beta, then you probably won’t be challenged by what is there. But newcomers to the game will likely find a reasonable challenge to learn the rules against. AI will continue to be our main focus now and for the foreseeable future. Several of the methods we’re looking at to help guide the AI evaluation is feeding in results from games between two human players, but we need a large volumes of completed games to do that. We don’t have enough data for this from play during the beta, but we believe that a release to a wider audience will provide the results we’re looking for. We are interested in your feedback on the AI, but there are still work we want to get to before we’re ready for criticism, so please temper your expectations.

There is also a rough pass at a Basic Gameplay Overview Tutorial. The original script for this came from Ananda Gupta. It still needs some artwork, window positioning, and highlight indicator to help direct the user. In addition, only gameplay is currently covered. We’ll be addressing specifics of the game interface in the next pass.

You should see an update for Twilight Struggle in the Steam store soon if you haven't already. Also if you have not received a beta key and your pledge level includes it please contact our support email at support@playdekgames.com. Please include your Kickstarter email and the email linked to BackerKit if you used a different one, and they will be able to assist you. Thank you, and we hope you all have a great weekend.

Cheers,

Twilight Struggle Digital Team

One Step Closer to Release

16 likes

Greetings Backers,

The time is drawing near for Twilight Struggle to be released to into the world. Are you getting exciting? 

While we are still finalizing the release schedule based off of the work we still need to complete, we should have a more detailed update for everyone soon. In the meantime, you can check out Pocket Tactics' new post on the game here: http://www.pockettactics.com/news/ios-news/playdek-preparing-twilight-struggle-for-nuclear-launch/ 

This is a very exciting time, and we are so happy to have everyone here with us from start to almost-completion; these next few weeks are sure to go quickly for everyone involved. We will update with more development news and with a better idea on the release schedule soon, so stay tuned! 

Also, if you still have not received a beta key and your tier allows you to have one, please contact support at support@playdekgames.com as all requests are being handled through that email. 

Thank you, and happy gaming! 

Cheers, 

Twilight Struggle Digital Team

Digital Update 2/13/16

18 likes

Greetings Backers,

As some of you may have noticed, we pushed an update to the beta build yesterday. This build was released to address some of the issues that occurred immediately after the last Kickstarter update. The new presentation system that we built exposed a number of problems in how we were handling the cards and the counties on the map. We'd been fighting with the implementation for awhile, settling for workarounds, but it came time to bite the bullet and fix the root of the problem. So these last several weeks have seen some major changes in the underlying interface code. That work is mostly done now, and hopefully with this new build you'll start to see a bit more life in the gameplay.  

We've still got a lot we'd like to include, but we should see those additions come much faster now that we've done this work. On the positive side, we now have a Mac version ready for release to Steam. That will go live today along with a new PC build. You will need to download the update from Steam in order to continue playing. If you don't already have a Beta key and would like a chance to test the Mac version, contact us either through Kickstarter or directly at support@playdekgames.com and we'll get a Steam key for you. 

Also if you are new to the beta, feel free to make an account on our forums and then post on our Backer Thread so we can have you flagged for the tester forums: http://playdek.invisionzone.com/index.php?/topic/547-twilight-struggle-kickstarter-backer-access/ 

Thank you all for reading, and we plan to update again soon in order to remain in contact with you all. Again, if you have any questions, comments, or concerns, feel free to post them in the comment section below. 

Cheers, 

Twilight Struggle Digital Team