Implementation: Made the GUI for the CPU where you can add source code
Implementation: Started to work on LCD‘s and keyboards
Tweet: Plugging in the compiler
To make it more clear what I do I will add to every tweet: Planning, Implementation, Debugging.
Planning means that I am creating a plan how to implement something.
Implementation means that I create the actual code.
Debugging means that I test the code and try to find the errors. Usually this takes the longest.
Implementation: Connected now the compiler to the CPU modul. The next step is now to add a window in which the player can enter the code and then let it compile.
Planning: I thought of a new way to store trees and also buildings, so that they can be displayed in the background landscape.
Tweet: Your own CPU...
Wrote all the code for the new tree system. Will test it in the next days!
Today I also worked on the CPU modul. When placed in the landscape it can execute programs and so control lamps, doors, ...
Tweet: Going back to regular tweets.
Ok, I had the plan to make one big post per month, but that did not work out. Everytime I wanted to create an article I decided it is a better idea to code. So I will continue with my regular tweets.
I did a lot of stuff in the last months. The design for a new game description language is finished. I hope that I can code faster with it once it is implemented!
Here are some screenshot of the new voxel background landscape. In the last version the creation of one segment took 10s. Now it takes 0,1s!
And voila the new dungeons are finished. Only the zombie is a little bit too peaceful (he does not want to attack the player).
I changed the internal data structure of the game engine in order to be abled to create much larger landscapes. I need to debug this intensively before I can make a new release (or else it could destroy your save games).
The AI research papers are driving me crazy ...
AI
I told you that we plan to use AI algorithms from the AI research. But this is not so easy as I thought as I have the impression that every AI papers describes the same thing with different word. In some of these papers they even call normal variables „functions“. And structures („struct“ in C) are called „atoms“ and their declarations „predicates“. In other papers the same thing is called „literals“ or „assertions“. Why are they do this?
Nevertheless I implemented a new language to control the AI. And I already have an idea how the AI will be abled to plan in the world and so create cities.
3D Models
I create over 100 new 3D models. Especially for streets (signs, traffic lights, ..), stores, interiors. And of course for traps and doors!
And I even made waste containers!
High Resolution Textures
For the models are increased the texture resolution to 1024x1024.
Physic Engine
We completely replaced the physic joint system with a new one. Will allow support for better doors, cars and trains.
Caves
Mostly finished, but I still need to tune it. There are too much cave entrances on the top of the landscape!
Placement of entities will be the next step:
Mod Support
Instead of using Java for mods we are working on a visual programming language (but of course you will still be abled to use Java)!
We again resolved lots of bugs in the mod system.
Debuging tools are added.
Debug preview of entities
We already made some examples plugins (drop-down door, moveable block and traps). Videos will follow.
Railways
Railways are implemented. The train for the railways is the next step!
Dungeongenerator
The new room generator for the dungeons is successfully integrated. It is working correctly. Will be in the next release.
Bugs corrected
Instabilies: We resolved a hard to find bug in the world generation which was the cause for instabilies.
Clipping errors on flat surfaces: When placing voxel blocks, there were lot‘s of clipping errors. They are gone now.
When does the next release come?
I wanted to make a new release, but I do not find a bug in the world generation system. When this bug is found I will upload a new version.
Tweet: New Cave Rooms
So here are the new cave rooms in action! The rooms aren't hand crafted, instead they were made by a generator.
Tweet: Dynamic Rail Generator
Originally I made 3D models for the rails. But as the rails need to be abled to adapt to the ground dynamically this was not flexible enough. Today I made a dynamic rail generator.
Tweet: Merry Christmas
I wish everyone a Merry Christmas! Be nice to each other!
Tweet: First minecart
First experiment of the new minecart system. Still better than the old one, where the minecart derailed all the time!
Relocation
Perhaps you noticed that it was a little bit quite in the last months. The reason for this was that we did a relocation of the company. We are now based in Ulm instead of Ravensburg (both cities are in germany)
Research Project
The game is now my research project at the University of Ulm. The topic of my PhD thesis will be the improvement of the AI for the game.
Upcoming Stuff
A lot of things are in development which will be in the upcoming releases:
We already improved the experimental caves. Currently we are working on the growing of mushrooms and others plants in the caves.
New dungeon room generator: Till now the rooms in the dungeons were mostly made by hand or they were very simple. We created a new algorithm which creates randomly and good looking rooms. I am also very excited to play the game when this is finished, because then I do not know how the dungeons look like.
Railways and Minecart: After several non working approaches regarding railways we now found a solution. Currently we are working on the railway switch. The models for the railways are also finished
Buildings for the cities: We already made a collection of houses for the cities. They will be used by the city generation algorithm.
Roads: Part of this is also implemented
Better LOD: In the future we plan to use several new level of detail mechanisms in order to increase the realisms and the world generation speed. For example the railways and the streets will be visible several kilometers. Same will be with buildings.