Blog Entries posted by Lethal Raptor Games
Thought I'd show off what I've been working on this weekend. I have implemented procedural grass as found here at Outerra. There is still more work to be done on it but so far it looks promising.
The Seventh World is a Medieval Fantasy Survival game, inspired by the likes of Skyrim and ARK Survival Evolved.
It's been under development for the last two years but only in the last eight months has a real commitment been made to it. Spending every night after work and every other day working on it I've achieved a base from which to build on.
The cuboid landmasses are called fragments. They are arranged as a sphere to make up a planet. Game-play will eventually include moving from one fragment to another.
Each fragment face has a gravity direction toward the center of the land mass. Each face is known as a World. The top most face is the First World. The left, The Second World. The right, The Fourth World. The North face is The Fifth World and the South face is The Sixth. The last face, opposite to the top is The Third World.
Each World is separated by an area of weak gravity known as the gravity void, making it difficult to travel between them without the right equipment. Each world will also have unique features and biome characteristics.
In total, there will be approximately 12.5 million square kilometers of explorable terrain.
There is minimal game-play at the moment. You spawn in one of the procedurally generated towns and the most you can do is;
Harvest trees. Drink from the well. Sell/buy items from the shop. Eat equitable editable items. Run around.
What I'll be working on next is fixing the obvious graphics issues. This will include;
Terrain patch seams. Billboard trees and their many issues. Bugs when nearing the gravity void. Distant fragment seams.
My overall plan is to get this to an alpha stage so it can be released on Steam. For this stage I want to have the following implemented;
VR Multiplayer Building mechanics. Basic Missions. Improved Graphics.
Physics shapes are not releasing and are causing memory usage to increase. Various other small memory leaks. Crashes in the gravity void sometimes. Feedback and suggestions are welcome. I hope to have a progress update every one to weeks.
After three weeks of work, Pre-Alpha v1.1 is ready.
The terrain has seen some behind the scenes improvements with speed as well as visual improvements to geometry and texturing. When I manage to get Texture Arrays working I will be able to finish of the new texturing shader that will include Tessellation and over 16 different texture maps as well as various masks that will paint according to erosion and forest locations.
An image of one of the mountains randomly placed in the First World, textured with two 4k textures. The way the generator works is there is a predefined list of terrain features, like mountains, rivers and valleys. Based on a low resolution base map which is unique for each fragment, these features are placed at different scales, positions and rotations. They will also merge with one another to provide enough variation that it will be hard to see any similarities.
At the moment though there are not enough maps to make this unnoticeable.
Saving and Loading
I have now implemented the ability to save and load a game. Currently the only states that are saved are the players position, stats and inventory.
Each slot shows the date and time that it was saved on as well as the save name and version number. Slots can be deleted and overwritten. The version number will change over the course of the updates, but the ability to load older versions will always be available. And to save a new game, click the empty slot then click save.
Now that this mechanic is done I can work on more game play.
The next step is to improve the blacksmith and general store. These two places will be the first to provide work opportunities for the player. These opportunities will improve skill and eventually allow you to buy and use crafting equipment outside of the towns.
I will also be implementing some other mercenary characters and animals to hunt. The mercenaries will just offer some fun conflict to begin with and the animals will offer another source of income. I hope to have a deer and wolf done by the next update in a few weeks.
The full change log is packaged with the game, here.
The Seventh World
Lately I have been hard at work implementing all the basic classes in Leadwerks 5. My aim is to get the game playable by the end of the year. Once I've achieved that I'll slowly hack away at bugs and visual quality before release. These are what are planned for the first release;
Menus Main Pause Gravity Multiple Sources Edge of the World Foliage Pine Tree Fern Berry Bush Animals Deer Wolf Rabbit Character Harvesting Hunting Crafting Basic Building
Here are some screenshots.
The World will be hidden behind a vail of clouds. In the future I hope these can be dynamic volumetric clouds.
The basic foliage system uses two noise maps. One decides if a plant should exists at the terrain vertex, the other gives the plant a random offset to that vertex (so to not have a grid like appearance), and a random scale, and a random rotation.
<- Offset, Scale & Rotation map.
In game Pause Menu.
Inventory system. Certain parts of the players body will be able to hold items such as baskets and backpacks. By default the player will only have a slot available in each hand and the shoulders. This will give the player enough space to collect the materials needed to craft a basic backpack that you can then equip onto your back, expanding those slots. Upgrades to the backpack can further increase these slots up to a maximum.
Items in the vicinity of the player that have an inventory will also appear in the left hand side. Such as wheelbarrows, or baskets left on the ground. Multiple wheelbarrows will enable the player to collect more than they can carry at one time.
The quick change can only be linked to items that are carried on the player.
On Monday I'll start work on creating the other worlds. I also hope to be able to create a Perlin Noise generator for heightmaps. I will create a system to disable the player controller if you get too close to the edge of the world. This way my own gravity system can take over and pull the player into oblivion - unless your quick to react you may be pulled into an orbit around the land mass!
I will also be working on a system to place cliff models around the terrain based on the slope of the terrain, and how close to the edge of the world it is.