Thumbnail image for jrohrer2a.png"What would you do if someone was breaking into your house with your family inside?" the thought-provoking, Inside a Star-Filled Sky and Passage developer Jason Rohrer asked while discussing his upcoming massively-multiplayer game of burglary and home defense The Castle Doctrine. In protecting yourself and your home, have you gone too far if the perpetrator meets a pixelated red death?

The answer seems like a resounding "no," though the game's permadeath conditions may cause players to question their actions and consequences at least in-game, if not in life. Rohrer struggled with his own answers, as he faced defending his personal space first in the cyber world of Minecraft and then as a homeowner.

The Castle Doctrine's Doctrine

Rohrer said the The Castle Doctrine could compare to a tower defense where the "creeps" are the other players. However, the burglary aspect does not imply a stealth game, as players only go into other people's houses when they're not home.

"So, you're not sneaking so much as trying to find your way through to the vault without being trapped or killed. This is a massively multiplayer game, but one where you never see anyone else directly, though you do see the things that they've made (their houses) when you break into them. And you do see evidence of their activities when you return to your own house to find that it's been robbed," described Rohrer.

the castle doctrine exclusive.png

The Castle Doctrine plays asychronously and is grid-based with a roguelike feel, where players design 100% of the home-dungeons instead of them spawning randomly. "So it's really two games in one: tower defense when you're building your own house, and then a roguelike when you're going out to rob other people's houses," he clarified.

Players acquire tools, abilities, and experience to defend and to burglarize with the money earned from robbing other people's houses. Players choose what house to hit from a list sorted by how much money they have. Rohrer said players can also see how many other people have attempted that house and how many other robbers have died while trying.

It's all a bit anonymous, though. The game assigns everyone a new pseudonym with each new life. This prevents targeting a specific person. Thankfully, players can can target the person who robbed them last to try to reclaim their chattel.

The anonymity extends further in that there's no way to chat or communicate. "I feel like that kind of thing disrupts the game experience too much," Rohrer explained.

Violation in Minecraft and beyond

Few things are as disrupting as violations of personal space. Rohrer shared that The Castle Doctrine was doubly inspired by the fear of cruel Minecraft players and by real life crime too close to home.

He described "a pressing feeling" he would have when playing on Minecraft servers. "I was worried that other people would discover and violate my house when I wasn't there, so I hid it carefully under a hillside, even disguising the entrance. Then when I'd come back later, I'd check carefully to make sure everything was still there."

This feeling echoed in life as a homeowner, especially while he lived in New Mexico with "lots of burglaries on my street." These fears raised tough decisions for him; at one point, he considered buying a gun.

"I actually went to the local shop and dry-fired some snub-nosed revolvers. Our initial problem was with dogs, not in our house, but out in the streets. I used to bike with a telescoping police baton and pepper spray. The spray had an amazing tendency to blow back in my face, though!"

All the blow back he experienced first-hand is actually a core game mechanic, he said.

A one-man, asynchronous MMO:

Also core to the experience, Rohrer is working hard on the MMO functionality. "The server simply doesn't let you go into a house when someone is home (or if it's being robbed by someone else already). Only one person can be inside the house at a time (either the owner, or a robber, or no one). And if you try to come home while there's a robbery in progress, you can't go back into your house until the robbery is over."

While this is his first MMO, it is not his first server-based game. Between, Primrose, and Inside a Star-filled Sky use servers: one for matchmaking players, one for tracking the move-by-move replays high scoring games, and the other for tracking player's flag placements in the infinite level tree.

He said The Castle Doctrine stretches the term of MMO so far that it's not comparable to any game that he knows of. He debunked comparisons to Ultima Online, saying, "[there] the system operators were trying to stamp out player-vs-player house robbery as an unintended glitch. Here, I built an entire game around player-vs-player house robbery."

Since robberies happen asynchronously, Rohrer went with "the most robust, low-overhead, and easy-to-implement back-end he could think of: PHP and MySQL running on a simple web hosting account. As a player, you essentially check a house out of the database when you're building it or robbing it, and then check it back in after you're done. There's no constant connection with the server---only an HTTP request for a database action."

Asynchronous gameplay was both a natural fit for the theme and was within the scope of a game that he could make and maintain without lag. "Synchronous real-time online games are plagued with lag that would drive the perfectionist in me nuts. Turn-based synchronous games don't suffer from lag, but I didn't want to make a turn-taking game in this case---what, the robber moves and then the owner moves?

"It just made more sense to have the robbery take place when the owner wasn't there, and that was an important part of the 'violated' aesthetic that I was trying to achieve."

He said that, in the end, the game design, aesthetics, and back-end mechanisms all fit perfectly, and the game will ship soon for Windows, Mac, and Linux. "[T]his game was totally in scope for something that I could make by myself, even though 'MMO' makes it sound like a huge endeavor. All that's left for me to do at this point is write the music code and get it out to my testers."