Legends of Eisenwald is an original mix of RPG and strategy, with tactical turn based battles and a simple economic model. Rich possibilities of gameplay mechanics allow a player to feel being a hero of different stories ranging from treasure hunt to fighting for the throne.
This post is also available in: Russian
Nikolay Armonik is a founder and technical director of Aterdux Entertainment. He wrote his first engine in assembler for VESA in DOS. His first game using his own engine is Japan Riddles Japan Riddles, 1998, shareware, Win95/DirectX. Works in games industry since 2000. Engine for Legends of Eisenwald is the engine #9 that is written from scratch.
Volumes of processed content in games grew significantly unlike the principles of games architecture.
Small team, very little (or not at all) money
Creative development (many changes along the way)
Why did we need our own engine:
To do everything with a minimal amount of man hours
Minimal requirements to hardware
To get highly manageable visualization
To reach specific technical requirements
Not to depend from alien closed paid code
To have flexibility for constant development and upgrade
The most popular reason not to develop your own engine.
The correct answer. No need to ivnent. It’s more efficient to user other people solutions but not the whole architecture.
The engine was written by one person
Approximately one year of development
The volume of code ~20k lines (in game total ~100k lines)
Own tools (textures, models conversion, arena editor, UI scripts editor)
Utilized functionality (3D-rendering in all variations, connecting any own shaders, simplified level for 2D, multimeshes, skeletal animations with blending through double quoternions, automatic optimization of render-conveyors in scenes, GUI on own interpreted scripts, and much much more)
It is worth doing.
Own engine efficiency depends on the limitations it imposes.
Create framework, not the engine
Don’t build in inflexble infrastructure
Use standalone solutions from open source.