Since my general discontent with Fief and the direction it was going, I had put the project on hiatus and took a break from programming. This break was exactly what I needed to get some fresh perspective on the game and what I wanted to do with it. So I have taken the code-base of Fief and refactored it into a new project named: Endless Worlds.
Since I started this new project, I have been working on updating the many of the UI components of the old system into the FWT (Flexible Windowing Toolkit) system I developed as a UI overlay for the libGDX game engine. I still enjoy using libGDX as a bottom layer since their code is quite optimized for rending 2D games. The primary advantage of adding my FWT layer on top is that it separates the Java behavior from the XML design code. The design of FWT was based on my experience with the Android operating system and Java Swing. The widgets I create with FWT are quite flexible and provide a good MVC (model-view-controller) design strategy while utilizing the OpenGL rendering system that underlies libGDX. Now I’ve updated many of the game screens to use the updated FWT protocol.
The biggest new addition is to world generation with the expansion of civilizations. Players will be able to choose the civilizations that seed the large island continent of the game. Each culture has a unique color palette, skin/hair/eye tone range, preferred biome for settlement, and other features to make them each feel unique. The world generation process simulates many years of expansion, so that when a character starts a new game, they get to experience the rich life and culture of each civilization. In the future we’ll expand on this to add for war and intrigue events that really make the world feel vibrant and alive.
Another major addition to the game engine is a realistic body model. I’ve updated the base model for all creatures (including humans) to track body parts, bones, and organs to a realistic degree. In addition, I’ve run these new models in combat simulators to help balance the new combat model (more on that in a future post). The new model tracks where each wound struck the target’s body, if it penetrated to a bone or organ, and how much damage it did to each layer. This new model will really help us flesh out more realistic combat in the future.
Currently, we are working on updating some appearance graphics for the character avatars and portraits. You can get a sneak peak of this in the screenshots below.
That’s all for now. I’m excited to see how this project progresses and hope you’ll join me for the ride. To stay informed about more updates, follow us on Twitter: @ArboreanTears.