Creating an Unknown World
General | Posted 12 years agoIt's time for me to talk about the core of any constructive procedural game (Minecraft, Terraria, etc.),
the actual procedural construction! The world nobody has ever seen before that seems to emerge from nothing.
It's really not dark magic or hidden secrets of Computer Science, the key is always FRACTALS.
Fractals are any complex pattern that has the same appearance at any scale.
Take a look at a map of our planet and you can see a similar random pattern if you zoom in on a chain of islands or the coastlines.
The real world isn't actually built on fractals- fractals are a mathamatical concept-
but you can create something that looks a lot like it yet is different using them.
Being more practical, world generation in these kinds of games is often done in two steps.
The first step has always been identical, tried and true across many of these games.
A Perlin Noise topology is created using a 2D pattern (for 3D cube games) or a 1D pattern (for 2D side-scrolling games) which specifies height of the land.
Perlin Noise is just levels of noise added on top of one another with each "smaller" "higher resolution" layer being added that is a factor weaker than the last.
The result is this sort of "cloudy" pattern which looks naturally made.
Additional topologies can be created and overlayed to add additional mixtures of features (roughness, forest density, biomes, etc.).
Where these games diverge is the generation of the actual land based on this topology. One example is if you generate a 3D voxel map using Perlin Noise and pick a threshold
between land and air, you'll get nice random volumes of land. Clamp this to your heightmap and adjust for the topology to get a very Minecraft-like world.
If you actually do this you may notice lots of noise and floating cubes. One quick and dirty fix Notch once used was to not generate all levels of the Perlin Noise map,
this resulted in smoother terrain that could be rough in some places, flat in others, and wouldn't have too much noise in it.
Sometimes you could more explicitly carve out caves and add features using primitive "brush" shapes. Your program would decide to create caves directly and could
carve fat wavy lines of air into the ground. It could add hills using random phases and amplitudes of cosines or with frequency modulation synthesis.
And of course, it can dot the underground with little ore pockets for the player to find.
Eventually you may decide to generate existing built human-made like structures, especially dungeons.
This could be done in a classic mystery dungeon style by assembling patterns and choosing randomly the next piece to attach based on the previous pieces.
It is this second stage where the games begin to differ and get their unique feel from.
LandTraveller uses layers of fractal noise to create these world map samples with their biomes, oceans, etc.
If you look very very closely, you can see little purple pixel dots where landmarks, dungeons, portals, additional features, etc.
may or may not be generated. This simple idea can create parts of the world the player would have fun finding and exploring.
The world maps here are of fixed size, so it is possible to try and complete everything in a game world.
Even if you manage to do that, the next generated world could be completely different from the last adding lots of replay value.
You could challenge another world with a new character or use your existing built-up one.
To view sample world maps:
http://landtraveller.com/sampletop1.png
http://landtraveller.com/sampletop2.png
the actual procedural construction! The world nobody has ever seen before that seems to emerge from nothing.
It's really not dark magic or hidden secrets of Computer Science, the key is always FRACTALS.
Fractals are any complex pattern that has the same appearance at any scale.
Take a look at a map of our planet and you can see a similar random pattern if you zoom in on a chain of islands or the coastlines.
The real world isn't actually built on fractals- fractals are a mathamatical concept-
but you can create something that looks a lot like it yet is different using them.
Being more practical, world generation in these kinds of games is often done in two steps.
The first step has always been identical, tried and true across many of these games.
A Perlin Noise topology is created using a 2D pattern (for 3D cube games) or a 1D pattern (for 2D side-scrolling games) which specifies height of the land.
Perlin Noise is just levels of noise added on top of one another with each "smaller" "higher resolution" layer being added that is a factor weaker than the last.
The result is this sort of "cloudy" pattern which looks naturally made.
Additional topologies can be created and overlayed to add additional mixtures of features (roughness, forest density, biomes, etc.).
Where these games diverge is the generation of the actual land based on this topology. One example is if you generate a 3D voxel map using Perlin Noise and pick a threshold
between land and air, you'll get nice random volumes of land. Clamp this to your heightmap and adjust for the topology to get a very Minecraft-like world.
If you actually do this you may notice lots of noise and floating cubes. One quick and dirty fix Notch once used was to not generate all levels of the Perlin Noise map,
this resulted in smoother terrain that could be rough in some places, flat in others, and wouldn't have too much noise in it.
Sometimes you could more explicitly carve out caves and add features using primitive "brush" shapes. Your program would decide to create caves directly and could
carve fat wavy lines of air into the ground. It could add hills using random phases and amplitudes of cosines or with frequency modulation synthesis.
And of course, it can dot the underground with little ore pockets for the player to find.
Eventually you may decide to generate existing built human-made like structures, especially dungeons.
This could be done in a classic mystery dungeon style by assembling patterns and choosing randomly the next piece to attach based on the previous pieces.
It is this second stage where the games begin to differ and get their unique feel from.
LandTraveller uses layers of fractal noise to create these world map samples with their biomes, oceans, etc.
If you look very very closely, you can see little purple pixel dots where landmarks, dungeons, portals, additional features, etc.
may or may not be generated. This simple idea can create parts of the world the player would have fun finding and exploring.
The world maps here are of fixed size, so it is possible to try and complete everything in a game world.
Even if you manage to do that, the next generated world could be completely different from the last adding lots of replay value.
You could challenge another world with a new character or use your existing built-up one.
To view sample world maps:
http://landtraveller.com/sampletop1.png
http://landtraveller.com/sampletop2.png
LandTraveller - a 3rd person constructive action RPG
General | Posted 12 years agoLandTraveller Game Page
I finished re-designing LandTraveller quite some time ago. It has upgraded into a larger project of its own, complete with its own game page. This will serve as a "game box" sort of page, very static with links to the actual blog and update content. This page can also help people choose to follow the game in a variety of ways if you look at the bottom links.
(From the website)
Introduction
Create yourself as a Kemonomimi and enter the world of LandTraveller where you explore, gather, build, and conquer. Become stronger yourself as you create your equipment, defeat many enemies, and realize beast powers hidden inside. Will you become cute? Devastating? Both? Will you take on the challenge alone or with all your friends? The large unknown world that greets you is just the beginning- hordes of invaders lurk behind portals to eight more worlds. Experience classic action RPG gameplay through retro style graphics and sound on a modern engine.
Background
LandTraveller is centered around Kemonomimi who all work together to thrive and build great things. This is true even in single player- you would be creating many characters for yourself each with a role. Despite multiplayer being critical to the game's design, it can be enjoyed offline in any number of maps you generate.
The numbers in the game's battle engine will be small, and characters level 30 and over would be considered demi-gods in strength- there is no level cap. You get to pick an affinity that further customizes your specific chosen animal type in the early levels, along with a trait selected from the same set for everyone. Your character itself will be built up and customized just like all of your equipment.
I hope to have a new Alpha Demo for everyone in a couple of months.
I finished re-designing LandTraveller quite some time ago. It has upgraded into a larger project of its own, complete with its own game page. This will serve as a "game box" sort of page, very static with links to the actual blog and update content. This page can also help people choose to follow the game in a variety of ways if you look at the bottom links.
(From the website)
Introduction
Create yourself as a Kemonomimi and enter the world of LandTraveller where you explore, gather, build, and conquer. Become stronger yourself as you create your equipment, defeat many enemies, and realize beast powers hidden inside. Will you become cute? Devastating? Both? Will you take on the challenge alone or with all your friends? The large unknown world that greets you is just the beginning- hordes of invaders lurk behind portals to eight more worlds. Experience classic action RPG gameplay through retro style graphics and sound on a modern engine.
Background
LandTraveller is centered around Kemonomimi who all work together to thrive and build great things. This is true even in single player- you would be creating many characters for yourself each with a role. Despite multiplayer being critical to the game's design, it can be enjoyed offline in any number of maps you generate.
The numbers in the game's battle engine will be small, and characters level 30 and over would be considered demi-gods in strength- there is no level cap. You get to pick an affinity that further customizes your specific chosen animal type in the early levels, along with a trait selected from the same set for everyone. Your character itself will be built up and customized just like all of your equipment.
I hope to have a new Alpha Demo for everyone in a couple of months.
LandTraveller Model Redesign
General | Posted 12 years agoSource Game:
http://rpgmaker.net/games/5016/
This model isn't working out at all like I intended. The game design is solid, but let's be honest- you probably feel it would work much better if it were a 3D environment with hovering overhead camera pointing down like those classic PS1 RPGs. I made an epic effort, but the controls just don't work. These controls just won't feel right no matter how amazing a designer you are.
The gameplay should be the same, and I can even use the same character sprite parts in the new model. I'm not going to use 3D character models. This new model will be on a cube grid, but it won't be as blocky as Minecraft. I already had a method of blocksets designed. This new engine model, oddly enough, will also perform much better and have enhanced visual appearance.
There will be a long period of silence as I re-design this new engine.
http://rpgmaker.net/games/5016/
This model isn't working out at all like I intended. The game design is solid, but let's be honest- you probably feel it would work much better if it were a 3D environment with hovering overhead camera pointing down like those classic PS1 RPGs. I made an epic effort, but the controls just don't work. These controls just won't feel right no matter how amazing a designer you are.
The gameplay should be the same, and I can even use the same character sprite parts in the new model. I'm not going to use 3D character models. This new model will be on a cube grid, but it won't be as blocky as Minecraft. I already had a method of blocksets designed. This new engine model, oddly enough, will also perform much better and have enhanced visual appearance.
There will be a long period of silence as I re-design this new engine.
LandTraveller V 0.22 Alpha Released
General | Posted 12 years agoYou can read the basic description and download from here:
http://rpgmaker.net/games/5016/
Or Here:
http://steamcommunity.com/groups/landtraveller
It doesn't have the battle system in yet, but I had polished off the engine in places before I continue. I made the characters look better color-wise and a few other assorted fixes. Here is a full history of changes:
Version 0.22 ALPHA - April 23th, 2013:
- Game now remembers the last tool and bucket mode being used per player
- Tips and hints are shown to you as you wait for the world to be created
- Indicates when chunks are being loaded, and the player can leave/enter world inside the game from the in-game menu
- Spawn is now always some sort of island if spawn is over ocean, and pools/lakes of water are scattered across the map
- Can preview the map in single player mode before it is generated, and reload a different map if they want before creating map
Version 0.21 ALPHA - April 18th, 2013:
- Can eat tomatoes which will restore a little EP
- Breaking blocks now slowly tires out players, consuming EP
- Can now plant tomatoes, let them grow with wet soil, and harvest them with scythe
- Soil can now be wet with water and ready to grow crops in
- Added the bucket and the ability to carry liquids around
Version 0.20 ALPHA - April 15th, 2013:
- Water added, it flows, falls, and pools as expected
- Added the hoe and the ability to make soil blocks with it
Version 0.19 ALPHA - April 10th, 2013:
- Added the axe so the players can chop the trees for wood and more saplings.
- Trees can be planted, and if planted in the sun they will eventually become trees.
- When clicking random in character maker, random names are chosen.
- Can take screenshots when pressing F10, these get put in the save folder under C:\Users\<Name>\AppData\Roaming\landtraveller
Version 0.18 ALPHA - April 7th, 2013:
- Added stone, cobble, and the pickaxe to dig them with.
- Worlds now generate with a stone layer.
Version 0.17 ALPHA - April 6th, 2013:
- Added dragons, fairies, mice, and bears to the animals. All animals are selectable now.
- Added tooltips all around to explain various things you can mouse over.
- Added more hair to choose from.
- Can now move items around your inventory by clicking them.
- Information about your held items can be shown by mousing over.
- Added the hammer (which destroys props) and the ability to place props.
http://rpgmaker.net/games/5016/
Or Here:
http://steamcommunity.com/groups/landtraveller
It doesn't have the battle system in yet, but I had polished off the engine in places before I continue. I made the characters look better color-wise and a few other assorted fixes. Here is a full history of changes:
Version 0.22 ALPHA - April 23th, 2013:
- Game now remembers the last tool and bucket mode being used per player
- Tips and hints are shown to you as you wait for the world to be created
- Indicates when chunks are being loaded, and the player can leave/enter world inside the game from the in-game menu
- Spawn is now always some sort of island if spawn is over ocean, and pools/lakes of water are scattered across the map
- Can preview the map in single player mode before it is generated, and reload a different map if they want before creating map
Version 0.21 ALPHA - April 18th, 2013:
- Can eat tomatoes which will restore a little EP
- Breaking blocks now slowly tires out players, consuming EP
- Can now plant tomatoes, let them grow with wet soil, and harvest them with scythe
- Soil can now be wet with water and ready to grow crops in
- Added the bucket and the ability to carry liquids around
Version 0.20 ALPHA - April 15th, 2013:
- Water added, it flows, falls, and pools as expected
- Added the hoe and the ability to make soil blocks with it
Version 0.19 ALPHA - April 10th, 2013:
- Added the axe so the players can chop the trees for wood and more saplings.
- Trees can be planted, and if planted in the sun they will eventually become trees.
- When clicking random in character maker, random names are chosen.
- Can take screenshots when pressing F10, these get put in the save folder under C:\Users\<Name>\AppData\Roaming\landtraveller
Version 0.18 ALPHA - April 7th, 2013:
- Added stone, cobble, and the pickaxe to dig them with.
- Worlds now generate with a stone layer.
Version 0.17 ALPHA - April 6th, 2013:
- Added dragons, fairies, mice, and bears to the animals. All animals are selectable now.
- Added tooltips all around to explain various things you can mouse over.
- Added more hair to choose from.
- Can now move items around your inventory by clicking them.
- Information about your held items can be shown by mousing over.
- Added the hammer (which destroys props) and the ability to place props.
"LandTraveller"
General | Posted 13 years agoI've settled on the name "LandTraveller" for the game. There isn't much deep meaning behind the name, but then again there wasn't much meaning behind names like "MineCraft" or "Terraria" either. It's named after (part of) what you do!
Progress has been slow, but steady. The engine seems to work with a few bugs here with me and a few Steam friends testing it out along the way. A public alpha testing will be released soon, but realize it's just the extremely early unfinished stages of the game. There isn't even a title screen yet!
What is the game?
LandTraveller is a hobby game I've been writing for the community. By "top-down", I mean the classic perspective you see in many older RPGs. It's actually a 3D voxel game but the actual scene is projected into a classic 2D top-down. The engine will make a cutout if you head into caves or behind tall things. It's a constructive game like MineCraft or Terraria, but it will be more of an Action RPG Mystery Dungeon style game. You do build a town, fort, or whatever you want and explore through eight randomly generated maps that have the entire exterior and interior of the "dungeons". There is an actual linear progression this way, you will eventually become able to build the portal to the next dungeon.
Central to the game are the characters. Many of the players and NPCs alike will be Kemonomimi. I've actually been in the middle of drawing all the animal types and hairs to finish the character maker. Even though I wrote a character sprite set compositor engine, it's still a lot of pixel art for someone who has many other things they have to do. Here's a description of how the characters will work:
Everything in that menu is purely cosmetic except the animal types. Once I have finished drawing all the pieces, an actual mini stats window will be on screen to show you the effect each animal type has on the character. Some can sprint in one direction quickly, some can jump high, some can camouflage, some can fly, some can't be pushed around by damage, etc. The available animal types will at least be Wolf, Fox, Cat, Bird, Drake (Dragon), Fairy, Bear, Mouse each giving the character different stats and two abilities (like the ones I mentioned before). I think people enjoy trying to make a kemonomimi of their fursona despite asking me to make everyone full-anthro every other time they give it a try.
As you gain levels, you will be able to pick traits and affinities that add more gameplay features to the character. It's good not to be overwhelmed with every gameplay mechanic from the start, so you'll get this gradual increase in ability and power. Everyone gets to pick from the same traits and they will enable you to gain momentum and use "crush attacks" as well as modify your base stats even further. Affinities are specific to the animal you chose, you may have between 2 to 6 to choose from. These actually associate the character with an element, style, etc. and add more abilities to the character as well as specify your "crush attacks".
Anyone who's played those acrade scrolling shooter games knows the odd Japanese terms "crush attack" or "bomber attack" for that one thing that typically fills the screen with explosions and such. In fighting games, it's usually accompanied with a quick slide of the character's portrait in a silly, intense pose. You will have a "ki" (spirit / energy) bar that falls slowly and raises depending on your trait- so if you like fighting many enemies, you would pick a trait where you gain "ki" from fighting. Once the bar is full, you can use whatever "crush attack" comes with your affinity.
The game will be forgiving in the beginning, but will have a sharp difficulty curve and become insane. I know this will make the game less appealing to more casual gamers even though the game will be as easy to pick up as I can make it- but perhaps they might give the challenge a try. The game won't make itself harder in multiplayer as people join. The game can be made a bit easier by inviting friends.
Even though at some point it will accept donations, the game is written for the community and will be distributed open source and free. All of the technical legal license information will be contained inside the game download, but I'm basically using a non-commercial attribution share and share alike Creative Commons for the art and LGPL on the source code.
Progress has been slow, but steady. The engine seems to work with a few bugs here with me and a few Steam friends testing it out along the way. A public alpha testing will be released soon, but realize it's just the extremely early unfinished stages of the game. There isn't even a title screen yet!
What is the game?
LandTraveller is a hobby game I've been writing for the community. By "top-down", I mean the classic perspective you see in many older RPGs. It's actually a 3D voxel game but the actual scene is projected into a classic 2D top-down. The engine will make a cutout if you head into caves or behind tall things. It's a constructive game like MineCraft or Terraria, but it will be more of an Action RPG Mystery Dungeon style game. You do build a town, fort, or whatever you want and explore through eight randomly generated maps that have the entire exterior and interior of the "dungeons". There is an actual linear progression this way, you will eventually become able to build the portal to the next dungeon.
Central to the game are the characters. Many of the players and NPCs alike will be Kemonomimi. I've actually been in the middle of drawing all the animal types and hairs to finish the character maker. Even though I wrote a character sprite set compositor engine, it's still a lot of pixel art for someone who has many other things they have to do. Here's a description of how the characters will work:
Everything in that menu is purely cosmetic except the animal types. Once I have finished drawing all the pieces, an actual mini stats window will be on screen to show you the effect each animal type has on the character. Some can sprint in one direction quickly, some can jump high, some can camouflage, some can fly, some can't be pushed around by damage, etc. The available animal types will at least be Wolf, Fox, Cat, Bird, Drake (Dragon), Fairy, Bear, Mouse each giving the character different stats and two abilities (like the ones I mentioned before). I think people enjoy trying to make a kemonomimi of their fursona despite asking me to make everyone full-anthro every other time they give it a try.
As you gain levels, you will be able to pick traits and affinities that add more gameplay features to the character. It's good not to be overwhelmed with every gameplay mechanic from the start, so you'll get this gradual increase in ability and power. Everyone gets to pick from the same traits and they will enable you to gain momentum and use "crush attacks" as well as modify your base stats even further. Affinities are specific to the animal you chose, you may have between 2 to 6 to choose from. These actually associate the character with an element, style, etc. and add more abilities to the character as well as specify your "crush attacks".
Anyone who's played those acrade scrolling shooter games knows the odd Japanese terms "crush attack" or "bomber attack" for that one thing that typically fills the screen with explosions and such. In fighting games, it's usually accompanied with a quick slide of the character's portrait in a silly, intense pose. You will have a "ki" (spirit / energy) bar that falls slowly and raises depending on your trait- so if you like fighting many enemies, you would pick a trait where you gain "ki" from fighting. Once the bar is full, you can use whatever "crush attack" comes with your affinity.
The game will be forgiving in the beginning, but will have a sharp difficulty curve and become insane. I know this will make the game less appealing to more casual gamers even though the game will be as easy to pick up as I can make it- but perhaps they might give the challenge a try. The game won't make itself harder in multiplayer as people join. The game can be made a bit easier by inviting friends.
Even though at some point it will accept donations, the game is written for the community and will be distributed open source and free. All of the technical legal license information will be contained inside the game download, but I'm basically using a non-commercial attribution share and share alike Creative Commons for the art and LGPL on the source code.
Coming Soon
General | Posted 13 years agoI've got something in development and a public announcement along with possible materials are soon. It is a multiplayer (and singleplayer) top-down constructive action RPG for Windows PC (XP, Vista, 7) and possibly other platforms. This account is about to get a little more active, so I may even respond to messages and questions.
FA+
