Project Update: A State of the Game Address

May 10

Treeees

Hey guys and gals!

This post has been a long time coming, but we’re hoping it’ll give a clearer idea to our fans about the state of Survivor Zero. To start, I’ll outline a tiny bit of our history, where we’ve been and what we’ve learned, then continue on to where we stand right now and the state of the project in our current iteration, and doing so I’ll give a little bit of information as to how we’re approaching the next phases of development without revealing too much — we do have a few surprises up our sleeves and we’re gonna keep ‘em there. For now.

We started this project a little under a year ago, and since then, we’ve gone through a lot of changes and a lot of volunteers. To those who have worked with us, we’re hoping everything’s good in your lives after your Survivor Zero experience. For many who are still a part of the SZ experience, however, this has been one of the most interesting, oddly demanding volunteer-based work opportunities we’ve ever had. To give you an example of our development education, though we’ve all learned much as a part of this project, I’ve gone from part-time writer who was just throwing in a few narrative ideas at a time to someone who’s taken the helm of a lot of sub-projects and settled into work as a sort-of-project-manager as well as Creative Director. The willingness we’ve had to centralize our organization in this way has saved us from a lot of beauraucratic trouble, though we still approach the game from a very, very team-oriented focus, so there’s nothing the leadership cannot be questioned on and, very often, a brilliant mechanic-design idea comes from the ranks of audio or art. We are what we are — dedicated members of a solid team that have nothing but the deepest passion for what we do, and we just happen to get along in such a way that we’re seeing plenty of progress on something that to this day is expected by many to vaporize in the coming months. But then, it’s only us that’s seen much of that progress and while we’ve become more open about talking about it, it’s been realized that we haven’t shared much of that progress as we’ve gone. So let’s change that.

In a comment on reddit, I posted a shortlist that showed a bit of what currently was in a state worth saying it “works”. Now, to explain, the concept of “works” is always different between departments and “acceptable” is a concept that’s subjective per project and person, but for the most part, all of the following is in a functioning state:

First off, we have an engine — Unity. This should come as no surprise to anyone, but I think we have left some so in the dark that they imagine we haven’t done much with it. But as you’ll see below, I’ll provide some information showing how we put that engine to work.

We have spawning of non-player characters and our favorite mindless flesheaters working just fine. Not only do our zombies spawn, but they dynamically navigate their environment, pay attention to the player, follow each other if they “think” they’ll be led to food, monitor the last known location of the player, remember, and forget. It’s pretty fascinating to watch them work, but we’re still working out their varied walk cycles, and with them, we’re shooting for behavior that gets truly unsettling. Our animations are growing cleaner and more numerous weekly and we’ll be showing them off in a special kind of way here in the near future, so keep your eyes peeled as always and you’ll start to see some good stuff coming in soon.

Our programmer, Julio Sousa, has been one of the stars of the team lately, having put a ton of his time into procedural terrain generation — the game’s ability to randomly create sweeping plains, rolling hills, deep valleys, and tall mountains to create a personal world for each individual player — that all flows smoothly and naturally. We have trees, grass, and rocks, accounting both for clearings and space for more urban areas. At the moment, we are set up to generate 13.9 million square miles (36,000,000 square kilometers) of virtual untouched-by-man-but-infested-by-zombies woodland like this — a space about the size of the moon. For that terrain, we are currently putting work into city generation, with close attention being paid not only to the placement of streets, but what is left in between them. For that, buildings that are currently being built by our generator that will construct a building beyond 50 floors. To add a little clarification, we still haven’t modeled enough floors to even fill that space yet (check see the info below about application if you’re a modeler), but we’re taking it one step at a time. We find the technology to be more important than the practice right now, focusing on the foundations to create a sort of fill-in-the-blank programming perspective that will accept input of any sort when we do get those buildings built. (I can’t make any promises here, but we are looking into the option of community modding later in the life of the project — it’s important to all of us that if we make modding available, we make modding simple, but we’ll update on this once we’ve worked out more of the basic game.) To populate the buildings, however, we have a growing collection of varied assets like lamps, couches, fans, counters, sinks, toilets; you name it, we’ve probably got an iteration somewhere in a hard drive. We also have road cones, fences, signs, billboards, and various other random bits and bobs that will come to flesh out the believable world that we’re looking to roam.

Finally, to nail down the atmosphere within that world, John J. Harvey’s audio team has remained one of the busiest. They’ve kept active with bounce after bounce of incredible audio (one of which we posted recently) and continue to keep other members of the team motivated with even the roughest of their mixes thrown into the developer chat. Alongside them in the creative department, our designers and writers are hard at work as well, coming up with new ideas all the time about basic items and craftables that will engage the community and encourage experimentation. We want our players to love to play, and we’re focusing on making sure that none of the mechanics or required actions in the game will feel like work. We’re looking for simplicity and balance, but all that means is that when we come up with an idea, we give all our effort to make sure we bring it to the barest of bones before even discussing how it might apply to SZ. This makes design discussions run a bit long (one of the reasons I’m just getting to finish this post), but through that process the idea becomes solid, backed by our foundations, and succinctly implementable.

Overall, and probably most importantly is this: we are making a game. We may not always have the art assets we need, we may run into an absolutely stupid zombie or two, we may have errors or bugs every once in a while, but we have our builds and they are getting better all the time. We are, in all, on the right track to getting this game finished, and unless something drastic and horrible happens, it’s looking far less likely than ever that the project will vaporize for any reason. The only trouble that remains about it all is that we’re still in a state of picking through self-motivated individuals who are dedicated enough to keep their own project intentions together, though the core team is enough to get the work done right. In order to approach serious completion-quality work anytime soon, however, we do need to make a few additions to the team, especially a character modeler, but we’re actively looking for others to join in on art and modeling, so please, feel free to check the links that follow.

If you’re as interested in working with the team as we are in having you, go ahead to our application forum, register, and post a new thread with a link to your portfolio (or even just a link to a screenshot of your latest work thrown up on imgur) and we’ll do everything we can to get back to you pretty quickly. Skype is the way we run the show, providing us the opportunity to have offline logs, so if you do drop us a line, be prepared to pm the team member who gets a hold of you with your screen name so that we can keep it all as simple as possible.

As always, we appreciate all the support we’ve received from you guys, and we keep an eye on the subreddit and @Survivor_Zero, so let us know if you have any ideas or thoughts about the game and, generally, someone from the team will do what they can to join the conversation! If you wanna talk about this post, head over to the comments for this post on Reddit and we’ll be in touch.

Until next time, keep your head low and your ammo count high. Never know when you’ll need it.

s0urc3

Project Update: Let’s Level with s0urc3!

April 5

In recent news, a very similar game to ours has grabbed themselves a Kickstarter and a bit of mainstream attention. And the general response is that we at Survivor Zero might now just be at a bit of a disadvantage. But let me say, from the source, that in terms of getting this game finished it really doesn’t change a thing. But in terms of a market presence and capital, well, maybe, but nothing more. What they do doesn’t really affect us, doesn’t slow us, it’s not money we deserved and they didn’t or anything like that, ’cause realistically, we’re each in a very similar position. We each have test builds, we each have only released small renders and concept art and some sketches and some models, but as far as I’ve seen, neither of our teams have shown any gameplay footage at all and in general, we stand to accomplish a very similar goal in ways that neither of us are willing to say enough about to determine just how different our games are. And we’re completely cool with all of this.

Our teams are wholly independent and Survivor Zero especially intends to stay that way (we won’t be the first to make contact but aren’t afraid of hearing from Sandswept — but we all have to keep in mind that nobody’s a fan of IP issues and it looks like that’d be more than a little bit of a consideration if contact were to be made, so great care will be taken either way). But I will go on record here and say that S0′s designs are our own, our work is our own, and our game is very much our own, and any similarities between the games as info is released on both are wholly coincidental because we’ve worked our asses off to make our game something everyone on S0′s devteam would love to play. And as I’ve heard the worry from one or two people in the meantime, if Sandswept happened to have borrowed a few of our concepts to build their own game, they can have ‘em. We’ve got more where those ideas came from and we’re not running dry anytime soon. IP worries are only as big as you make ‘em, and we’d prefer to think it would be a case of great minds thinking alike than assume the worst about where the similarities in description come from.

That being said, it’s time to level with you guys. This team has been through a lot in the last year. We’ve changed our perspectives on this game multiple times, we’ve opened our minds to options beyond our original considerations, we’ve rewritten countless design sketches and had multiple concepts of what our final product will be, and we’re settling into the most solid vision for Survivor Zero that we’ve ever had. I know that I’ve never been more motivated to do anything in my life as much as I’ve been motivated to lead this game, and though that’s kinda sad from a human perspective, in the last couple months, I’ve become a redditor that got the hell off reddit and started getting things done. Problem is that it distanced me and the other guys from where we started this project and that’s been a serious consideration for me personally for the last couple weeks, especially in my multiple responses to “lololololvapoerware” threads. It’s time for me to stop giving a damn about how the game seems to the world and just start talking about it ceaselessly. I’m excited as hell about the game and I want you to be too. So let’s start that.

I realized a ton of the reason I haven’t updated many people on the status of the project when it comes to design is that I don’t wanna give anything away. I personally hate spoilers, so I guess that’s kind of a difficult situation to be in when people want to hear what’s going on. But tonight we had a design meeting, and that’s a perfect place to start. So I’ll use it to give an update and tell you what we talked about and not say much anything on what we decided. As many of you know from my other less-than-helpful-because-I’m-kinda-anal-retentive posts, I’ll neither confirm nor deny much anything about the game, but you guys deserve to hear things from me as they’re available to be heard. So here’s a few things we talked about tonight:

  • Player engagement – Achievements and a drive for sustainability and the continued crafting of items beyond the norm would keep players busy for a while once they’ve carved out a safezone
  • Achievements – With meta-gaming being a large part of a crafting-oriented game, especially when skill and tactics comprise a huge subset of player capability, achievements will help keep recognition up and might just even hint at deeper parts of the S0 storyline
  • Character generation – At first, especially in single player, character personalization will be limited to what’s available to the character, but we’re looking into ways to keep character customization high and complexity low when it comes to multiplayer environments. We’ll keep an eye out for options, but at the moment, there are no plans for complex character customization. We might just open up custom textures, though, if you guys don’t feel it’s the cheap way out.
  • Location relations – maps, GPS, scanners, etc. I’ll say no more here except that we talked about ‘em.
  • Game modes – permadeath, respawning, and the odd unseen other survivor in your city… HUD reflections and “Random Environments and You!”-style tutorial sections. No, tutorials won’t be forced, and no, they won’t suck.
  • Character concepts and zombie art – we’re still sticking to a complete lack of special zombies, but we want to have as many zombies be special as possible. We’ve got ourselves a great new character artist and we’re starting a new direction for the art in our game. We want you to be able to relate and identify with the humans that they used to be. We want the world to tell you the story. And, on that note, finally…
  • Environmental considerations – while other RPGs make you bargain with the game engine for stats and prolonged life, we want you to have to bargain with your reduction in inventory space. We want you to petition the zombies around your house to let you live a little longer, not a health upgrade system. We want you to relate to the world of Survivor Zero, and for the moment, that’s looking like a pretty damn persistent concept in our design docs and we’re kinda proud of that.

Our focus has always been simplicity, always pushing toward serious intricacies in very simple systems. Like a faberge egg, you only realize how incredible it is when you’re really close to it, but otherwise, it doesn’t make you think too hard, so you just dig the beauty and enjoy the fact that it kinda makes you want some IHOP.

Keeping all this in mind, talk to us. If you have questions, ask. If you want to have info on specific mechanics, let us know. Petition me, PM me, send us a mention @Survivor_Zero. I’ll tell you what I can and what I can tell you right now with this being the topic of my update is what I’ve told others personally plenty of times: I spend too much time being excited to work on this game to write much about working on it in the time I normally use to work on it (ever notice that these updates are usually posted about 4am in my timezone? There’s a reason for that). But if asked in more words than “SURVIVORZERO, y u no update?”, I’ll probably respond with more words than “‘Cause we’re too busy working.” Give it a shot, you might just be surprised.

For now, I hope that kinda satisfies a few of you that are worried about us. I hope that gets you back into the idea that Survivor Zero might just actually happen. I hope that you guys are still excited about this idea and I hope that Dead Linger isn’t enough of the same kind of awesome we are that we don’t find our niches (I think we will anyway, though — different people, different personalities, it’ll work out in time), but even still, we wish them nothing but the best of luck. All indie games deserve a chance to thrive, and we’re glad to see it working out for them and hope their Kickstarter leads ‘em to victory in their objectives — we still have our own to contend with and we’re not stopping anytime soon.

Join the discussion on this post here!

s0urc3

Project Update: Networking and General Code Destruction

January 24

I’ve spent the past few days/weeks going through our codebase trying to get all of our previous work to be much more network transparent and to be much less like a ball of yarn.  This is the first time I’ve ever done game networking work, but Unity has been abstracting most of the ‘real’ work away, which has made things tremendously easier.  I’ll be keeping this post fairly non-technical so that:

A)  Non-coders can hopefully understand what’s going on

B)  There are much more qualified people to write tech documents on networking than I

My cleanup has revolved around our Player object, with the ultimate goal of making it entirely self-contained.  The Player object (as it is defined now) stores things like health, inventory, stats, and other things of that nature.  The real issue was that many early parts of the code were written ‘assuming’ that there would only be one player in any given game.  This was done mostly to get proof of concept code roughed out before polishing and improving on it.

The fix was to remove all of the areas where the player was strictly defined and change it so anything could be assigned to different player objects.  Essentially this came down to assigning an owner to things that needed accessed by a player.  This essentially came down to changing…

Magazines = GetMagazines(TheWorld.GameState.ThePlayer.PlayerInv);

to

Magazines = GetMagazines(owner.PlayerInv);

(taken from one of our weapons classes)

After changing issues similar to this, the Player object was at a point where it could be arbitrarily spawned any number of times without breaking things.  After completing this, I was led to try my hand at…

Networking!  While the networking portion specifically is currently not ready for prime time, it is at least in a functional state.  An authoritative server was implemented, which means that a client player sends their inputs (button presses) to the server, the server executes those inputs, and finally sends the results to all of the other clients.  Using this method (as opposed to letting the players tell the server what should be happening) helps ensure that a bugged/rogue client can’t send wrong data to all of the other players.

Unity has made networking way easier than it should be.  Their API lets developers spend more time on game code, and less time implementing networking logic.  A few of us tested the system by playing run and jump around a digital field with someone on another continent.  The experience was…rather choppy to say the least…  The current implementation gives the clients almost no trust in the communication chain, meaning every client needs to wait for the server to send the results of their input.  This issue will hopefully be solvable by using something called client side prediction.

Client side prediction is giving some trust back to the player who is pressing inputs.  How it should end up working is that when the client does something (say, press W) the client won’t wait for the sever before moving the player forward.  The server will then send the result of where the player should have moved to.  If the client correctly predicted where it should move to, then play smoothly goes on.  If the client was incorrect, the server adjusts the player until the needed correction is accounted for.

And this is where our developer’s IRC turned into a discussion about lag compensation for firing shots.  Some concepts were the Source Engine method, where the server keeps a history of where each player has been over the past second/expanding hitboxes based on distance, movement speed, and lag/trusting the clients to correctly state whether or not they hit something/implementing all of these and having each method adjustable.

But we’ll be getting to THAT hurdle soon enough, first I need to fix everything I have broken while making these changes.  Look forward to our next blog post, in which Darkfrost will be describing how to maintain a healthy sleep schedule.

blaxbb

Project Update: Designing the Apocalypse

December 30

Hey survivors!

Since in our last update I mentioned we were adopting a new sort of development transparency when it comes to how things work around here, I figured the basics would be a good place to start. So, to give you guys a quick overview of what our process looks like, I’ve put together a couple thoughts and decided to throw ‘em into an update for you guys to see how we do what we do!

First, I’d like to say that I’ve noticed a lot of worry and reports on our lack of availability as being a sign of vaporware, and this is nothing new. No matter how much we update when we can, and no matter how many assets we provide, there are no and never will be any guarantees that anything in the world of game development is certain. We work day to day, however, and each day we log in, there’s always more of something to be done and more to keep in mind, and so far, we’ve been doing this plenty of days. Enough days to know that we’re doing just fine for ourselves in terms of getting Survivor Zero out there to the hungry masses. We don’t yet have an idea of when it will be done, but we do have a concept of the distance of scope that we’re trying to reach and the reality is that it’s well within our abilities. The way we’ve been organizing and tracking our project has worked well for us, and it’s the compensations for our distance and non-traditional association with one another that has come to be some of our greatest strengths.

To design Survivor Zero, we’ve been using a pretty classic method based on the establishment of a Game Design Doc that updates and is updated with tasks and assignments for the team. It started when we did as a couple notes in Google Docs and has evolved far beyond that into a full-fledged technical outline of all of the gameplay elements of S0. We’re not held back by the traditional problems with this sort of design, however, because as we work, we stay logged into our IRC channel and are able to receive pretty much immediate feedback on anything we’re working on. Because of this, not only are we able to get more perspective on something that others may not have professional experience in but still have a fresh eye for, but we are also able to avoid the pitfalls of developing something only for it to turn into a complete waste when someone else on the team has a problem with a detail. It’s a combination of both agile and classic design standpoints that lends a great flexibility to the development of the project.

We are a group of people with families, jobs, and psychological health to monitor, but that doesn’t stop us from doing what we can to keep this project alive. We’ve offered the community a chance to weigh in on our crafting processes, thought long and hard about what’s fun vs what’s simple vs what’s possible, and are putting forth a lot of effort into creating a compelling and realistic tension in our gameworld. But we don’t want to feel that we’re leaving our own lives behind to do so, so do keep in mind the volunteer nature of this project when you consider how long it’s taking us. We know you’re all excited to play it, and I know I speak for the whole team when I say there is no way in this world that you could possibly as excited as we are to get a chance to see what our work has wrought, so just know we’re pressured internally just as much as we are by our fans!

We’d like to thank you all for your support and consideration when it comes to our project, and we’ll be sure to keep you updated in the future. Due to a little complication, this post is going to a self-post on the subreddit as well as a post here at SurvivorZero.com, but discussion and questions are taking place here regardless!

Again, a safe and Happy Holidays to you all! See you in 2012!

s0urc3

Web Update: New Site Design

December 10

Hey all! My name’s NuclearDog. I’ve been working on various projects related to this website and to support the development team in their on-going efforts to build an amazing game.

Today, my project was a new design for the SurvivorZero.com website. The theme we were using before was nice, but it just didn’t seem to convey the feel this project should convey… It was too clean and polished.

Now we’re running on a new fully custom theme. I hope you all enjoy it, and please let me know in the forums if you run into any issues (and remember to include your browser and operating system)!

Cheers,

NuclearDog