A Unity ID allows you to buy and/or subscribe to Unity products and services, shop in the Asset Store and participate in the Unity community. Mono open source ECMA CLI, C# and.NET implementation. olizit/RimWorldmono.
When asked about his inspirations, RimWorld creator Tynan Sylvester is quick to point fingers: “Dwarf Fortress, with some space-western Firefly flavor layered on top,” he says. “I'm endlessly fascinated by the combinatorial depth of the stories generated by Dwarf Fortress. Despite being intimidated by the challenge, I've wanted to make a game that can generate these kinds of stories for a long time.”
Sylvester believes the intimidation he felt as a designer can be seen from the player’s perspective as well. “I think there’s a huge population of people who are interested in story-generation games like Dwarf Fortress, but have found them too intimidating to actually play,” he says. “These players want creative, story-oriented play that still has drama and struggle and loss. Those are the people who like RimWorld the most.”
Indeed, an elaborate story generator is at the heart of the RimWorld. Sylvester points to titles like Dwarf Fortress, The Sims, and even more ostensibly competitive games like Left 4 Dead or StarCraft II as being largely about story generation. “What interested me was taking that idea and focusing on it in a very deliberate way,” he says. “It's not about the victory at the end, but about the entire journey of promise and heartbreak, hope and loss. Maybe your story will be a triumph, maybe a comedy, and maybe a tragedy. As long as it makes you feel something, it works.” For Sylvester, it's a broader and richer way of thinking about how games can affect us, instead of always simply focusing on triumph as the primary emotional goal.
Perhaps unsurprisingly, building a system that responds convincingly to player choice has been no easy task. “[Developing] AI is brutal in this kind of game, because everything can change at any moment,” says Sylvester, who presents the example of a colonist finding a path through some rooms to get some food. A hundred things can happen to invalidate this: The room can fill with fire, or the food can be eaten by one of the game’s roaming muffalo [see sidebar], or the room it's in can be designated as a prison. The player can build a wall in the way, or the colonist can be wounded by a previously unseen sniper. The list just goes on and on.
Then there's decision-making to consider: What should a colonist do? Do some work, get some food, or put out a fire? What if someone else already is, or it's far away, of there's a muffalo raging near it? How do evaluate between all these priorities? “I've had to learn and develop some pretty complex AI systems to handle all of it, and I'm proud of those,” says Sylvester. “Thankfully, I had some experience with this as a designer on BioShock Infinite.”
In going out on is own, Unity has provided Sylvester with the framework to build his ambitious project. “I chose Unity early on just because it was so recommended,” he recalls. “It was my technical basis for all of the five or six other game prototypes I did before starting RimWorld, and it's been very useful.” He uses popular Unity Asset Store plugin UnityVS to integrate with Visual Studio, and calls it a lifesaver.
Sylvester takes advantage of what the software has to offer, and what it doesn’t. “I actually abuse Unity pretty hard; I mostly don't use its built-in object/component framework, instead working with a custom 2D tile-based framework I coded myself,” he says, noting that he didn’t use Unity’s 2D tools because the game predates them. “Even so, Unity does a great job of abstracting out all the irritating tasks involved in managing and importing content, producing builds for different operating systems, profiling, handling shaders and graphics drivers, keyboard and mouse input, and so on. I recommend it to anyone who asks.”
“On the purely technical level, it was easy,” he says of RimWorld’s earliest days. “It took just a few months until the game was working and breathing in a meaningful, playable way.” Coming up with the working design, however, wasn’t quite so easy. “[It] was hell. I had to iterate through five or six different games at two months each, throwing them out one after another, wondering if my dreams of indie developerhood were destined to end in failure. But once I had RimWorld going, it was obvious that it was something special.”
When he initially started working on the game, he put it on a sparse, arid planet because it suited the theme and gameplay. It fit so well, in fact, that it informed the thematic underpinning for the entire gameworld. “It immediately looked like the Old West,” he recalls. “It seemed obvious to take it in a Firefly-influenced direction.”
Despite having worked on huge titles like BioShock Infinite, Sylvester learned game design by creating Unreal Tournament mods, and for this reason says shoestring development has always been his home. Still, the life of an indie game designer takes some getting used to. “Most of all, I find it's absolutely crucial to prioritize,” he says. “I keep a 50-page prioritized list of everything I want to do in RimWorld, and I re-evaluate it constantly. Do I really need to do that thing more than everything else in these 50 pages? Really? Maybe I can ship without it. Yeah. I can ship without that.”
Unity Rimworld Mod
“It's amazing how much you can simply not do and still have a fun, functioning game,” he continues. “The first release of RimWorld is missing a lot of really basic features, but the things that really matter are all present, well-designed and well-tuned.”
The other thing he has prioritized is basic competence across the board. “For example, I did all the art and sound in the RimWorld pre-alpha,” he says. “They're not pro quality, but they're not hideous programmer art. You can do pretty well with simple, straightforward art assets. It beats having to beg others to do every menu icon and menu interface beep.”
The public version of RimWorld that’s out now was developed entirely by Sylvester. But thanks to a spectacularly successful Kickstarter campaign (see sidebar), he’s hired some collaborators to pump up the game's audio and visuals, and is also actively looking for help with programming and design.
When asked what he’s been happiest about in developing RimWorld, Sylvester’s answer is very simple: “The fact that it works!” he says. “Having failed to do that a bunch of times in a row, I'm really happy to have made a game that's compelling at the most basic level. That was the really hard part—the rest is gravy.”
Unity Rimworld Clone
Like many an indie game in recent years, RimWorld exists in large part thanks to an overwhelming response to its Kickstarter campaign. “I was surprised,” developer Tynan Sylvester says of the crowdfunding experience. “I remember discussing the goal with my girlfriend before release: Could we really make $20,000? That's a lot of money! Wouldn't it be crazy to make like $100,000?” And surprised they were: the game ultimately earned $262,132, far exceeding all expectations.
Where the Muffalo Roam
The illustrious muffallo play a prominent role in RimWorld. They're basically big, blue alien buffalo, and they wander around the gameworld eating grass. Developer Tynan Sylvester remembers a particularly funny moment involving the creatures: “Muffalo and people had found their food using separate pieces of code,” he says. “One day, I decided to unify these, and I did—I got them both running off the same behavior tree nodes.” But he didn't disable something that he should have: “One of the muffalo got hungry. He walked up to the colony, and smashed on the door until it collapsed. He then walked in, made his way to the meal room, took a nutrient paste meal from the dispenser, sat down at the table where another colonist was eating, and began enjoying his meal.” A very civilized muffalo, indeed.