Procedural generation refers to content that is created algorithmically, as opposed to manually. It was originally implemented in video games as a workaround to the memory limitations of early hardware; for example, the 1984 computer game Elite used procedural generation to create a universe with eight galaxies, each containing 256 planets, that wouldn’t soak up valuable memory. Today, procedural generation persists, but instead serves as a method for developers to make each play session of their game dynamic. ROBLOX’s Build and Battle, for instance, uses it to create a random swath of jagged terrain for each match.
Cunning ROBLOX users have found ways to implement procedurally generated content in their games. Zombie City!, an abstract – at least, for now – game by user um3k, known outside ROBLOX as Justin Phillips, is one such case. Each time a player starts an instance of the game, it procedurally generates an expanse of terrain and a complete city — littered with zombies.
The game itself is simple. You spawn at the top of a building, descend the many staircases and take to the land with nothing but a sword. In its current state, it’s all about the procedural generation.
“I enjoy exploration, and few things satisfy it more than a well-generated procedural terrain,” Justin said. “I also liked the idea of having a large city without having to build the whole thing.”
Generating terrain, the city grid and buildings
Zombie City! is generated using a two-pass process. The first pass generates the terrain, including roads and the wall surrounding the city. The second pass creates the buildings. Both passes use randomized parameters and Boolean conditions to determine the correct material for a given block, and make judicious use of the modulo operation for roads and windows.
The presence and type of building at a given location is determined probabilistically. According to the Lua script that generates the city, there is a roughly 75% chance of a regular office building spawning, and a 5% chance for both clock towers and churches to spawn at each grid location on the terrain.
| Want to take advantage of Justin’s work? You can download a ROBLOX Studio plugin that lets you quickly and easily place a randomly generated building, as seen in Zombie City!. Download the plugin here, and see it in action: |
Generating the city quickly
The original version of Zombie City! used what Justin called an “overly complex” terrain-generation algorithm, which delivered pretty results, but was excruciatingly slow, freezing the server for 45 seconds or more. Justin experimented with adding a wait() function every few cycles, which, in theory, would let the players watch the terrain generate. But the terrain replication could not keep up with the terrain generation, causing the first player in the server to see half-loaded buildings and holes in the terrain.
“If something processor-intensive (e.g. terrain generation) absolutely must be ready when the game starts, it should be done with no waits, as long as the execution time can be kept below 15-20 seconds. If it takes much longer than that, most people will feel like the loading has failed and give up on the game.”
Justin later realized that a simpler terrain algorithm could produce visually acceptable results. It cut the terrain generation time to below 20 seconds, which is quick enough that players don’t ever feel like the game has timed out.
What’s next for Zombie City?
Zombie City! has always been something of a testing ground for procedural generation and, not as obviously, pre-recorded ragdoll effects. Future updates could bring a deeper story that includes solving the mystery of the zombie apocalypse (while thwacking zombies with a sword) and experiencing emergent gameplay (while thwacking zombies with a sword).
“Anything I do will likely continue the theme of procedural generation, and I’ve toyed with the idea of procedural plotlines that may work like mad-libs,” according to Justin.
Keep an eye on Zombie City! here.




There should be a download for the plugin!
Their is
I WANT TO PLAY PLUGIN!!!!!!!!!:D
WAY TOO FUNNY! :D
Cool I might try this, also I have an idea for the catalog. My idea is that you can sell the stuff you bought from the catalog and get all or at least half of your robux or tix if it isn’t a limited item.
OMG I HOPE YOU ADMINS ARE READING THIS!
Okay, I’m in edit mode. I make a skyscraper by stacking a bunch of buildings on top of each other (which results to a big mess…). Then I test it in solo mode. I climb all the way to the top. Why not flood my miniature city? (I put buildings around the skyscraper.) WATER! Amazing! So now I go back down to the bottom of the skyscraper. Surprisingly, it took a lot longer climbing than falling. Yay! I go outside and… what the heck? Walking underwater? So there’s a ramp connecting to the terrain and the top of the skyscraper. Why don’t we climb to see what’s up? Climbing… AMAZING VIEW! Now’s not the time. Oh boy, I touch the water and I swim. But wait, I see there’s ANOTHER layer of water above! Then I realize the water is only at the top of the skyscraper. Oh wait. I notice more. When I used the flood plugin and clicked on the top of the skyscraper, (not really the top like right on top more like the wall of the top floor), the water would suppose to go ALL THE WAY to the bottom right? Wrong. The skyscraper is still a bunch of buildings stacked on top of each other. All the water plugin did was go from where I left clicked to the bottom of the TOP building of the giant stack. Confusing I know. Ah, this is not good, admins. But hey, you just released the building plugin not too long ago. I’m cutting some slack for ya. I hope you reply back or something. My username is ekogame1720. Same YouTube name.
Interesting…
Hands to Justin for creating the game and hands to you guys for making the plug-in, but what would really help is if you could add a plug-in that would allow you to create cities or different maps between servers.
Cool!!!
Please do not advertise random players how good their places are. There are many others as good as this one.
Just makes things unfair.
Got it.
@White, its just a city plugin not just only for zombies….
All places that use terrain or stamper tool automatically stink. ‘Nough said.
whats wrong with terrain and stamper tool they both are quite usefull for making great games
Exactly. The Stamper tool is basically a catalog of free model parts. The 2012 generation of users are being brought up in a free-model Roblox.
That is totally not true. The stamper tool provides a challenge to us who use it, and those who have mastered it create fantastic places with terrain.
i agree! ;)
No way. It’s not even building. You’re basically inserting a bunch of models that Roblox made for you.
No roblox,dont do this,remember when you said roblox is for *kids*teens and adults? well it is no longer a kid ste if you do this,please dont do this.
Literally what you said made no sense to me,I really don’t see in anyway how this could negatively effect roblox. Please explain how this bothers you because It looks like an option tool that will make games a lot more interesting.
Wait it is a instant city plugin ,never mind
Nice Map. All tho you guys JUST made Build & Battle. That game will get Build & Battle Visitors Wiped out.
Oh, I just realized they can just make a building with one simple click
Awsome game, the best zombie city shooter ive ever seen! This can really boost ROBLOX up and hopefully bring it out of the small pitfall its in, from Minecraft getting more popular and people makin stupid fights over which is better
Not much impressed with the buildings, but the random building-placement generator looks good(reminds me of village generating in MC…) Overall, still not impressed. Terrain bricks are kinda boring to the eye, he should try to generate (pre-made) brick buildings that have a good amount of detail. By the way, this blog inspired me to make a city game now…
Yeah, the building generator plugin looks amazing! Very simple to. But I would also love for the buildings to have more detail too. With the buildings having lots of detail though, it may cause lag to the game.
Why can’t they put the plugin to SCIRPT.So it generatrate diffent terrains every map.Like in Build and battle.Also fix the plugin to ONLY the computers regular file because I CAN’T LOAD INTO EOBLOX STUDIO!
Thank you admins!now because of terrain i cant play some places!they make a lot of lagg to me and why you removed the roblox studio in build mode????
yes….yes
Or you could do it yourself. >_>
this makes roblox users lazy to build their own buildings, like the water makes them lazy to script their own water.
This makes you too lazy to add an extra ‘O’ to your too’s
Exactly
ya realyy!!!!!!!!!!!!!!!!
He should add some guns to it :3 This makes me want to make a zombie game where you explore, find weapons, etc.
Btw, good games give players inspiration in my view :3
ya we should add some more guns and other things lol !3
GG, Justin. This is very innovative for ROBLOx and possibly inspirational to other users.
I think it’s a fabulous idea.
First comment, by the way.
-Zyurem
When roblox was testing the scripts in this game I was there :D I got vid but my computer had too much memory, and can’t read it :(
Finally, a blog that may actually convince me to begin scripting again.
SWEET!
Woah. I prefer building on bricks not terraan as brick can be detailed.
Woah i never have thought of ROBLOX generating a zombie city! Awesome idea! But how do you put random buildings just by clicking??
Awsome! Just Awsome!
want to play it :D
The plugin file thing doesn’t really work out for me, what’s wrong with it? I ain’t getting the file I need.
The problem I saw right away is that there wasn’t a plugin folder inside the zipped folder. Extract all of the contents to the plugin folder, then insert a new folder, and put the plugin contents into that folder. Name the folder ‘AutoBuilder’ for recognition.
i don’t get it, do u have to download the file or wut, and is this only for builders club for
making games?
Cool…. Make a warzone like terrain…
Epic.
It’s much easier than making an original zombie town,everything is done for you accept you need to be creative.
I would rate this 100% for players
Seems legit :o
Of course one person had to say this. When is this never written on a blog?
It’s Epic
Sounds great!
I’m downloading it now!
Can you give us the exact script for the building generation?
cool
That is cool but i think i would rather just make buildings on my own with bricks i like my models to have detail the thing i’ve noticed with your new updates is that your making things easier i am not saying thats a bad thing but its just getting to easy next thing you know the next big game will be made from someone who just joins roblox with no scripting experience
Ya. Sad isnt it.
But that’s good. Because I hate scripting, it’s really boring. This makes me want to BUILD in my place.
Wow. I’m suprised I’m first comment. Anyway. This is really cool!
Epic
Wow, Thank you Justin Phillips! This Really helped and It’s AMAZING!
Seems awesome. i will be downloading the plugin later :)
Well, that’s very interesting, and a nice plugin it seems, I’d have to play that game when I have some free time.
Cool bro!
I like it.
i never knew i could script in roblox studio wow
Pretty cool, this will come in handy for my hunger games game witch is already famous!
This is Amazing! Keep up the good work. :D
How do get the plugin to work
Awsome zombie city good idea
I have played zombie city before, and its a pretty good game. Lacks story though
Looks great for personal servers!
Sweet I’m going to download that plugin soon.
AWSOME!
how do you use the plugin? @.@
Awesome.
1st comment! :D Great idea, trying out the game. Good idea!
Terrain + Zombie City = Fail
Normal Bricks + Zombie City = Not Fail
How do I get it to work?…
You need to save it to your computer somewhere then open it up, take the script, copy whats in it and then do the full making plug in deal with the script u copied. But when u open it you might want to make it in plug in manager the empty space put “Building” I JUST HELPED IPLAYFOOTBALL!!! awesome
:/ It always keeps coming with a error when I click it… Does it have to do with that it keeps saving as a iTunes download?… Thanks
No you didn’t, I just helped IHasCupcake.
Nice
PLUGIN LOKS AWESOME!!!
im on vacation right now. D:
I CAN’T WAIT TO TRY IT OUT!!!!!
How do you put it in the Studio?
The plugin will really help with my city build.
Awesome idea for a plugin, it can also be used for FPS!
I think I might make a zombei game except its still a bit confusing knowing how you did what you did in the vid
first + i wanna learn how
this is so cool. i could put this to good use ;)
Epic
wow this video was quick :P
Its nice and something worth trying