TIGSource - November 2013 (22 posts)

This post was originally hosted on TIGSource
Nov 06, 2013

#620 November 06, 2013 12:55 AM

Gonna start posting some postmortem stuff here now.

After The Beta

The last beta (0.5.13) was released in April (?) and had 8 days of gameplay. It feels like a solid demo but nothing beyond that had been implemented. In the time between April and July, I worked to fill out the mechanics and story.


Of all the things that went into the game, the hardest part for me to do, by far, was arranging the overall progression and narrative. During the entire development I collected and implemented small encounters or mechanics. Coming up with these was really fun; spy document handoff, nosy reporter, time bomb defusing, corrupt guard, etc. The task of tying all that together with a logical progression and interesting story was not as fun. I wanted the gameplay to evolve at a good pace but also to motivate each new mechanic with a story element. And with lots of these things to lay out, it’s also important to avoid having too many things happen at once that can misdirect or confuse the player.

As an example, there’s a secret document hand-off encounter early in the game. You get handed two identical documents and need to keep them straight:

Implementing this was easy but there was no clear place to put it in the game. The event involves a bulletin callout, 2 travelers (the spy and his follower), and 2 documents. It’s a pretty heavy event actually because once you read the bulletin, you’re on the lookout for the first spy and his follower; it somewhat consumes the player’s headspace. This meant that I didn’t want it to overlap with any other days where you have an important bulletin message, when you’re expecting someone specific, or when you have another document handoff. It finally wound up on the same day you meet Calensk. Now the problem is that as soon as you read the bulletin about a spy coming, this military-looking guy walks up. Naturally you’d think he was the spy. If I had any other choice I would’ve moved this encounter or Calensk’s intro but out of the 31 days there was no other place. I ended up just letting these events overlap but made one small dialog addition to clear up any confusion. When Calensk walks in for the first time, the inspector asks “Are you the spy?”, to which he responds “What? No”. Ship it.

This is one example but there were lots of cases like this where I had to be very careful with the arrangement. Each event, encounter, mechanic, introduction, etc required coordination with everything else. I started by layings things out on paper but that didn’t last long. Eventually I do what I normally do and wrote a tool to help:


This is the basic story layout tool. Each column is a day and the boxes represent mechanics, rules, news stories, travelers, bulletins, etc. I define the dependencies in a simple text format then load it up here and slide the boxes around to visualize how everything will play out. Some events have multiple boxes spanning several rows and several days. Once everything was set up I could quickly see empty or crowded spaces and tweak things accordingly.


For the beta release, the game had a very simple economy. I didn’t put much thought into it at the time and there were lame ways to exploit your income. For the final game I knew I’d need better planning to put the average player under constant money pressure. Again, this is something I tackled with a custom tool.

Full-size animated gif

The days are listed from top to bottom this time. Each row represents one day and has the news stories, processing (T=traveler, P=penalty, D=detain), special encounters (bribes, story events), nighttime messages, and expenses. Each element is a button and allows quickly testing different scenarios by toggling each effect on and off. For example, clicking the [P2] on the first line will simulate getting 2 penalties on day one. That effect will propagate through the entire game to show nighttime earnings, adjusted events, and even when the family would start dying.

This economy simulator was one of my more useful tools made for the game. The stuff I learned with it fed back into the story layout to let me know when it would be good to add a bribery or other money-affecting event. The niece event was laid out this way. I saw a dip below zero on one day and came up with the story for her to appear with her mom’s savings as relief.

Stuff That Was Cut

Coming soon…


#621 xenochria (November 06, 2013 11:47 AM)
Man that is FASCINATING. I have been checking this topic every day for weeks now hoping for this. Excellent.

#622 gamepopper (November 10, 2013 10:04 AM)
I love your game, I hope you get more involved with the technical side as well, or is that early on in this Dev log here?

#623 pbrand (November 10, 2013 06:40 PM)
Thanks for sharing the post-mortem, dukope. It’s been very informative.

#624 November 11, 2013 04:42 AM

Thanks guys. I’m reaching the limits of my memory and figured I should write it down sooner rather than later.

Quote from: gamepopper on November 10, 2013, 10:04:21 AM I love your game, I hope you get more involved with the technical side as well, or is that early on in this Dev log here?

Yeah any postmortem stuff will just cover the last few months when I stopped posting here. Check back through the thread for lots of technical details up until the beta.


#625 gambrinous (November 11, 2013 06:14 AM)
That’s a very interesting peek behind the curtain dukope!

#626 November 11, 2013 06:24 AM

Stuff That Was Cut

One of the most valuable lessons I learned working in AAA is that nothing is above being cut. Developing (and finishing) a game is just as much about removing things as it is adding them. Cutting stuff out that doesn’t add to the experience or when the payoff doesn’t match up with the cost of implementation is actually something I enjoy. It keeps me constantly thinking about the core of what makes a game fun or interesting.


From the very beginning I envisioned a simple baggage-inspecting mechanic. Basically just like the body scanner but with randomized contents and a gun or two every once in a while. I kept putting off the implementation until eventually it wasn’t needed. The game was already fun without it and adding it would’ve been a sizable task. Instead, I made it a point that baggage is not allowed so it sorta fit well with the narrative.

Booth Shenanigans

The booth screen was supposed to have more going on. The shutter switch is some evidence of that; there were plans to have immigrants pull a gun or otherwise threaten the inspector. When this happened you’d have to close the shutter quickly or pull your own gun or something. Like the baggage though, I held off implementing it long enough to decide that it wasn’t necessary. Normally I’d remove any vestiges of a cut feature but in this case I left the shutter switch in. It’s a fun little thing to role play and it comes in handy for triggering a hint early in the game. I still get comments about the pointlessness of this switch though. Maybe I should’ve removed it.

UV Seals

I think these are mentioned briefly in the devlog somewhere. The document seals were supposed to grow more involved. As part of the general progression of complexity, I wanted to add a special UV light in the late game that would be needed to verify a new type of document seal. The idea was to have only a small area of the desk lit by UV light. You’d have to move the document into this area to reveal a second “hidden” image in the seal that needed to match the rulebook. It seemed like a cool way to increase the difficulty and would’ve been a nice technical effect. Unfortunately and once again, this feature got pushed back far enough that it fell off the edge. Unlike some of the other cut stuff, I held out on this one for a bit longer though. I was ready to add it in until the last few weeks, when I’d laid out enough of the story and progression to find there was no room left for it.

Search Photo Confiscation

This is the latest major cut I can remember. An early assumption was that the game would have both the search mechanic (which left naked photos on your desk) and a way to sell those photos for money. There’s even a devlog post where I’m wink wink hinting at this, as if it’s not an obvious extension of the search mechanic. This is basic low hanging fruit when dealing with the concepts of security and privacy wrapped up in body scanning. Surely those security personnel are keeping and/or profitting from naked pictures of people. Now you can too! The mechanic worked like this:

I didn’t want (too many) documents crowding your desk so I created the confiscation drawer. Search photos would automatically move to your confiscation drawer and stay there until the end of the day. Unsavory characters would come in and offer you 5 credits per photo, which you could drag out of the drawer and give to them. Easy.

The confiscation drawer was a nice solution to the technical problem of having a full day’s worth of unique documents loaded in memory. As soon as the person walks out of the booth, the custom photo is unloaded and the confiscation envelope changes to become a generic “closed envelope” with some descriptive text.

Everything here was completely implemented before I started laying out the final days of the game. That’s when I noticed a few problems.

  • Why are only passports and search photos confiscatable?
  • Passport confiscation is a critical end-game revelation.
  • Search photo confiscation is a setup for a few obvious (and superfluous) encounters.
  • All the rules about confiscation have to mention both photos and passports.
  • Search photos appear very early in the game but passport confiscation only makes sense near the end.

The big problem for me was a softening of the focus on passport confiscation. Taking someone’s passport is a clear escalation on the things-are-getting-serious scale. This sets up the scenario of having your own family’s passports taken and leads directly into the end game. Selling someone’s bodyscan photo is just another notch on the creeper-security-agent-is-selling-my-naked-pics scale. Under the original scenario, the drawer appeared along with the ability to search, near the start of the game. This meant you could confiscate photos for a long time when suddenly you’d have to start taking passports too. There’d be no obvious UI hint for this change (the drawer was almost always there, just now you should put passports in too). From a mechanics and progression perspective, I found there was a lot more impact if the confiscation drawer was introduced for the purpose of taking passports.

Giving up for-sure features like this can be hard, especially after they’re implemented. Whenever you have a bunch of issues pile up related to a specific feature though, it’s worth taking a step back and asking yourself what you gain or lose by cutting it.

Ultimately, even though I’d already implemented photo confiscation, it was an easy choice to remove it. Taking it out gave me a better game in every way, leaving the concept of confiscation limited to passports. Probably my favorite cut.

The Overwatcher

If you go back through the devlog, you can find some discussion of how weird it is to get detailed citations for mistakes. As if someone is watching over your shoulder. Why not have that guy check the passports? This bothered me for most of the project and I considered a few different ways to handle it. My original plan was to incorporate this “overwatch” theme deeply into the core gameplay and story.

In the beta, you can see the not-yet-functional overwatch light on the stamp bar. It wasn’t going to be explained until much later, but the overwatcher worked in shifts. When this light was on, he was watching; if it turned off, he wasn’t. If you wanted to approve someone with a mistake on their passport, you could avoid a citation by waiting until the light went out to quickly stamp/return the documents. With the overwatcher part of the core mechanics like this, he was also going to show up in the story. Sergiu was originally supposed to have some kind of connection with the overwatcher. I hadn’t worked out any details but figured there was potential for favors to be exchanged. I also wanted one of the EZIC agents work his way into the overwatch position with your help. If you approved a certain agent, a few days later you’d receive a printout letting you know that EZIC is now in control of the overwatch post and all the rules have changed. That would’ve created an interesting situation where the printed bulletin and rulebook meant nothing and the player had to work against a different set of secret EZIC commands.

So that was all well and good; lots of potential. I really like this kind of subversion of expectations, where the rules change suddenly or the player is faced with something unexpected and has to change their thinking.

After working through a few scenarios though, I was left overall with a worse game than before. The moment the script flips is all well and cool but it’s at the cost of everything before and after. If the overwatcher works in obvious shifts then all the sob story immigrants just become a case of waiting a few seconds for the light to go out. It changes the focus from the interesting stuff to watching for a light to turn off.

After that realization, I considered ditching the light mechanic but keeping the tangible overwatcher. There’d be no way to “cheat” the citations but I could keep the EZIC overwatch-takeover concept and have all the rules change in the late game. Maybe that could’ve worked with a lot of careful thought but in the end I was left feeling that it weakened a central premise of the game that you’re a powerless cog in an uncaring machine. If the overwatcher is a guy that can be so easily reached then maybe the system isn’t so overbearing. Unaddressed and untouchable though, it becomes an implicit force outside of any influence. I feel this works better for both the gameplay and the story. In the final game there’s only a touch of mystery behind the citations but it’s (I hope) quickly accepted as an implicit construct.

Even beyond these two (good) reasons, messing with the citation system subverts the right-or-wrong judgement tied to the core mechanic of finding discrepancies. Once that judgement is abandoned, the discrepancy hunt falls apart completely. That was especially decisive for me since I strongly believe in the importance of gameplay systems in effective interactive media. This cut goes all the way to the top.

Also I removed the overwatch light. People were clicking it like a button.

Stuff That Was Added at the Last Second

Coming soon…


#627 Taber (November 11, 2013 09:12 AM)
Loved watching this evolve through beta and I’m very happy with the final game release. A very impressive and shockingly fun to play game, well done! :hand any key: APPROVED :hand any key: Glory to Arstotzka!

#628 Panurge (November 11, 2013 01:41 PM)
Comrade Dukope, as punishment for having an unhealthy, almost capitalist level of personal success, you are required to write a full self-criticism…

Fascinating to read it! :)

#629 eigenbom (November 11, 2013 01:48 PM)
Great post, very interesting! Glad that Papers, Please got the attention it rightly deserved, and I’m surprised at how far you actually took the mechanic and the meta-game. :)

#630 November 11, 2013 07:57 PM

There’s more coming but I’m gonna put this here to make previous entries easier to find.

After The Beta

The last beta (0.5.13) was released in April (?) and had 8 days of gameplay…
Read full post

Stuff That Was Cut

One of the most valuable lessons I learned working in AAA is that nothing is above being cut…
Read full post


#631 Mr Speaker (November 12, 2013 07:44 AM)
Fantastic read! It must have been damn tough pulling the trigger on some really cool-sounding features.

#632 November 18, 2013 05:19 AM

Quote from: Mr Speaker on November 12, 2013, 07:44:37 AM Fantastic read! It must have been damn tough pulling the trigger on some really cool-sounding features.

I’m at the point now where I actually really like to cut stuff. Like I mentioned, it gets me to concentrate on the core of the game and why it’s enjoyable. I feel like the more I chip away, the more refined it becomes.

#633 November 18, 2013 05:24 AM


1 - After The Beta
2 - Stuff That Was Cut

One More Thing That Was Cut

Forgot something…

Obristan Escape Sequence

Long before relase, as a way to announce the final price for Papers Please, I created a simple HTML5 game:

Note: this is a random face sprite, not the player character from the final game

You give this guy your documents and a small bribe equaling the price of the game. Bribe him too little and he denies you; too much and he arrests you; just right and you’ll get your entry granted => you figured out how much Papers Please will cost on release.

This was more work than you could really justify for announcing the price of something. That’s because this interaction was also intended to be included in the final game. When you and your family escape to Obristan after day 31, you were supposed to play this minigame again while passing through the Obristan checkpoint as an immigrant. You’d go through an interactive sequence of waiting in line, approaching the counter from the other side, giving the inspector your docs, and sweating it. This was a nice “tables have turned” payoff for the entire game.

The downfall here was that it was too much work for just one ending. This price game was done, but the waiting in line, entering the booth, the result screens were all to-do. And it wasn’t really interactive anyways. Did I want people to fail at this point, by offering the wrong docs/bribe? How would that be handled? Would they have to play the final day through to try again?

Eeventually, I decided that the best approach for the game endings was a generic system that could be used for everything. The picture-with-text system used in the intro worked great for that and was much easier to implement. I restructured the Obristan immigration sequence using this much simpler system and kinda liked it. It also lined up better with my neutral treatment of the endings. Adding a special minigame just for the Obristan escape ending would’ve given it extra weight, implying that it was more correct than any of the other day-31 endings; which wasn’t the case.

The facial hair is for warmth. This guy is on fire.

Stuff That Was Added at the Last Second

Still coming soon…


#634 koïnsky (November 19, 2013 02:05 AM)
Interesting stuff, thanks !

The balancing sheets, especially, did catch my interest. Balancing is one of the things that need a lot of work and attention when making a game, I guess. It’s kinda “scary”, somehow, when I think about it for my own game.

Good postmortem, don’t hesitate to go on.   :hand fork left: :hand knife right:

#635 CaspianRoach (November 19, 2013 06:19 AM)
I thought Obristan being so easy to immigrate to was a way of showing how ridiculously complicated your own job was. No checks, no questions, it felt like the game was exposing the overly bureaucratic Arstotzka border control checkpoints.

#636 November 19, 2013 06:41 AM

Quote from: CaspianRoach on November 19, 2013, 06:19:29 AM I thought Obristan being so easy to immigrate to was a way of showing how ridiculously complicated your own job was. No checks, no questions, it felt like the game was exposing the overly bureaucratic Arstotzka border control checkpoints.

Yeah this was a happy result of changing to the simple ending style. The full interactive segment would’ve been much closer to Arstotzkan-level bureaucracy in order to force the tension. Switching to just image+text gave me the freedom to treat it differently.

I especially like how Obristan doesn’t give a shit about reason for entry. It’s almost like a complete retrospective commentary on the entire game in just two lines of dialog.

#637 November 19, 2013 07:10 AM


1 - After The Beta
2 - Stuff That Was Cut
3 - One More Thing That Was Cut

Stuff That Was Added at the Last Second

Sometimes when you cut something, a big hole is left behind. Or, after bringing a bunch of different elements together near the end of development you run into stubborn problems you couldn’t foresee and that you can’t cut your way out of. I hit a few of these. I tried my best to avoid adding things near the end but it still happened. (A lot apparently, this is a long postmortem entry.)

Reason for Denial Stamp

I consider this one of the better late additions. During the beta, a common question would come up: “Do I even need to interrogate a discrepancy?” The answer for the beta is “No.” For a long time, the answer for the full game was also “No.” There was a similar issue with detention, where it was never required and had no concrete benefit in the beta. I changed that by adding Calensk and giving you an incentive to detain. The interrogations were harder to solve. Very late in the development, I decided that I needed a way to outright require the player to interrogate. That’s nice but how?

Let me take you back to an early alpha:

Early alpha denial gating

That’s a really old version (Check the bell and computer screen, also dithering), but it had a cool feature. You couldn’t deny people until you found something wrong. It was a great way to gate your progress but ultimately felt too gamey so I took it out. Now I needed it back, only gooder.

Something that people (including me) said about the game was that “stamping is fun”. I had a general desire to add another stamp somewhere and this ended up being the perfect place. I came up with the REASON FOR DENIAL stamp that appears only after you find and interrogate a discrepancy. If you want to deny somebody, you need a reason. Some nice things:

  • It can be introduced midway through the game.
  • It changes how certain players play (those that never interrogate before denying).
  • It fits in with a nice story element (journalist complaints).
  • It lets players stamp more.
  • It adds more procedural rigamarole.
  • It looks bitchin.

It even has a circuity-look to justify how it can be enabled only after interrogation. Because of circuits.

Additional Rulebook Pages

One of my mantras for the design in Papers Please was “keep it vague”. That goes for both the story elements and the gameplay mechanics. I wanted the player to be overwhelmed at first and to have to feel their way through the interface and ruleset. Unfortunately, a common complaint from the beta was that things were too hard to figure out and weren’t explained well. I really liked the idea of “winning” a labor lottery and being thrown into a job with no training though, so I was hesitant to fix this. Eventually, in the last few weeks before shipping, I decided to add a ton of pages to the rulebook to centralize what was previously a slew of scattered information.

Detailed info on the Access Permit and its seals added to the rulebook

Previously, new mechanics were introduced in special bulletin pages. To help the player out, I was keeping these instructional pages in the bulletin for a few days after they first appeared. Things started piling up though and the bulletin got pretty bloated as a result. The proper long-term place for this stuff is in the rule book.

Bulletin and rulebook version of the confiscation instructions

Important information is still introduced in the bulletin but it also gets a place in the rulebook and disappears from the bulletin on the next day. Doing it this way unified enough instructional material that I could actually be more vague in other areas. A lot of work near the end of the project but worth it.

31st Day

Me, right after the beta: “The game will be 30 days.” Later, I put in a supervisor encounter (Dimitri) every ten days and it was settled: the game would end on the 30th day after the last talk with your supervisor. Perfect.

When it came to actually lay out the story though, it was obvious that not everything would fit in 30 days. The biggest problem was too many events near the end game that required exclusivity.

In particular, the final story pressure deals with illegally confiscating Obristan passports for your own family. Due to other events, the earliest I could introduce this pressure was on day 29. If the game is 30 days, that only gives you 2 days to get 5 passports; not enough.

One option was to cut more stuff to make it fit. But then I’d be removing completely finished encounters or events just to get a nice round number of days. Dumb reason so I extended everything by one day and the endgame events got just enough space to spread out well.

Not Completely Incompetent Guards

This is one of those things that took a rare moment of clarity to even notice. The guards in Arstotzka can’t aim for shit. They missed every single time throughout the entire game, 8 attacks in all. This actually worked well with my desire to make the player responsible for stopping these attacks on their own with the sniper rifle. But really it makes no sense. These guys can’t be that bad.

Honestly I didn’t even consider this until coming back to tweak a terrorist attack after working on something else for a while. One of the benefits of doing code, design, art, music, and sound for a game is you often get a fresh look at old work. After noticing it, I quickly modified a few of the attacks to actually end with a guard stopping the terrorist(s). This was a case where I had to put game mechanics in the back seat just to keep the overall logic reasonable.

All that training, all those bullets

Lots of Endings

Once the image+text style from the intro was recycled for the endings I had a good system for adding endings easily. This had a bigger effect than I expected. Now it made more sense production-wise to allow the player to do more things with more consequences. Instead of carrying player decisions through the entire game I could terminate things early with an ending. Or decisions that did carry through could have their own unique variation of a later ending. It sounds like a cheap trick but honestly the alternative was to not have these decision points at all.

I also felt like the endings didn’t need a huge payoff. At least, not one that I could produce. Like most other things in the game, they’re succinct and a little vague.

One thing that I think made these simplistic ending sequences more satisfying was the added music. Most of the gameplay takes place in near silence. There’s only one song that plays during the title and night screens. By having two more songs just for the ending sequences the tone changes enough that it feels like more of a big deal than it objectively is.

Should be out soon.


Coming soon…


#638 mike_w (November 20, 2013 05:26 PM)
I just wanted to say thanks for writing all this stuff up. It’s been super interesting to read. Your game was easily one of my favorites of the year!

#639 nss_aries (November 24, 2013 12:03 PM)
I loved the concept and the mood, but I’ve to admit the hurry annoyed me, decisions have to be made too quickly, I know it’s considered but it still made me enjoyed less the game.

#640 phi6 (December 02, 2013 09:17 AM)
It was on Channel 4 on Friday, even better!
2 hour feature on the history of games, congrats Dukope :)

#641 CowMainia (December 10, 2013 09:22 PM)

look at the number one slot (this guy pretty popular on youtube) just thought you would like too see that people really enjoy your game