You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The codebase is extremely diverse as the result of natural growth over the years from hundreds of contributors. While the code works, it's frequently hard to navigate or find desired functionality, and there are often "islands" of code that adhere to one or another programming style ☂️ Game engine: Issues with general code organisation #3200
Interface code in tightly intertwined with the world state, and within itself, which makes testing difficult. Lack of clear organization and centralization frequently requires coming up with custom solutions for mundane UI functionality ☂️ Game engine: Interface code organization issues #3144
While mapgen is relatively good code, there are a few rough edges there, including lack of determinism or user-friendly mapgen tooling ☂️ Game engine: Issues with mapgen #3154
Entity management
We have many different entity types: items, NPCs, monsters, vehicles, the avatar - and all of them use different systems for their management. Some of them can't be referred to in a unique way, some of them can't exist without a map instance, some of them are hardwired to be a single global g->u instance. A consistent system for entity management could come in helpful, see refactor!: give items identity #2250 and Spring refactor #2265 for in-the-works "Game Objects" solution.
There are multiple build systems in place, all out of sync with each other, and it would be good to reorganize them into a single cross-platform solution ☂️ Migrating to CMake #3113
Release procedure is a bit messy, since it starts immediately on push, but there may be multiple pushes in short timeframe: Less messy way to make releases? #737
Organizational issue for various problems with the game engine and support infrastructure.
It is split up by categories, and does not include "content" parts of the game or gameplay itself.
More entries may be added later.
Overview
optional_vpart_position
should be removed #3821upload
branch tomain
#3888General code organization
Data loading
Interface
Rendering
Mapgen
Entity management
map
instance, some of them are hardwired to be a single globalg->u
instance. A consistent system for entity management could come in helpful, see refactor!: give items identity #2250 and Spring refactor #2265 for in-the-works "Game Objects" solution.Reality bubble
NPCs
Savegames
Lua
Testing
I18N
Build
Documentation
Releases
The text was updated successfully, but these errors were encountered: