Skip to content
Arthur S. Muszynski edited this page Jul 17, 2022 · 1 revision

Overview

Configuration is saved in

  • Windows: %AppData%\Godot\app_userdata\Unknown Horizons
  • MacOS: ~/Library/Application Support/Godot/Unknown Horizons
  • Linux: ~/.local/share/godot/Unknown Horizons

More info: https://docs.godotengine.org/de/stable/tutorials/io/data_paths.html

Project structure

Assets/Audio contains all audio assets only. They are all invoked via the Audio singleton.

Assets/Player contains scenes/scripts dedicated specifically to the player (camera/HUD setup, input controls).

Assets/UI contains all UI assets and belonging scenes/scripts (theme, controls, menus).

Assets/World contains everything taking place on the actual map - units, buildings, GridMap assets (+ map scenes and global (singleton) classes).

External contains content not originally made for UH. Currently this only applies to fonts.

Most of the original assets have been imported to the Godot version.

Each entity in the world is supposed to inherit from WorldThing. Units inherit from Unit > WorldThing. Buildings inherit from Building > WorldThing.

Buildings can be rotated by 4 angles, units by 8.

Most (if not all) existing entities from the original UH have got equivalent classes in Godot already with basic behavior or animations (to be able to place them on the map and look nice), but are not interactable as of now.

GUI

Most of the graphical interaction with objects on the map happens through tab widgets which are basically context based action menus for whatever object is currently selected, and also for common purposes like a build menu.

Each widget consists of various buttons or more complex designed views usually providing a combination of status info and possible actions for a particular context.

It also can have multiple pages which are toggled/cycled through "switches" - the side buttons - next to the widget. This allows for a more modular approach as one page from a widget can be reused in another one that has to provide a similar function.

TabWidgets (Assets/UI/Scenes/TabWidgets)
|
--Buttons -> All buttons resuable for any widget
|
--Switches -> The side buttons to switch from one widget view to another
|
--ViewComponents -> Pre-made components to be used for compositing widgets with similar tasks
|
--Views -> Complete views to be reused across several widgets (like the city overview for warehouse, storage and townsquare)

Current buildings

https://unknown-horizons.readthedocs.io/en/latest/buildings.html

Clone this wiki locally