Doloro GDK 22 .1.0 Beta
by Tauri Interactive
Getting started

About

In this category you will find brief information about each important part of the module.
For more details you have to navigate in detailed sections devoted for each part.


Resources

The module operates each resource discreetly instead of some handling some internal solid database.
That allows easy distribution of new resources along with Asset Bundles by using Asset Bundles Tools features.

Resource Description
Item Resource that defines in-game item and its features.
Storage Resource that defines storage type and its in-game features.

Cross-session data

Entire game world data along with all storages and their content and states stores within serializable data base provided with the StoragesDatabase.
The database provides you safe and flexible way to operate player's session data in encapsulated way via simple API.

Read more: Storages Database


Services

The module's features encapsulate via services those simplify management and lower requirement for engineering skills.

Service Purpose
Storages Service Service that handles on-scene storages using. Encapsulates ECS features using. Handles automatic session database update.
Trasaction Service Service that encapsulates cross-storages operations. Prevents internal operation from frequent bugs, like dupes, or ref forgery.

GUI elements

The module implements various GUIElement to handle internal features and services API with dui2.

Controls

The module has 2 main GUI control those using as extendable core for regular entities.

GUI Element Purpose
Item GUI control GUIElement that connects base content provided with Item instance to in-game GUI.
Storage GUI control GUIElement that connects base content provided with Storage instance to in-game GUI.

Explore API:


Controls extensions

ItemGUIElement and StorageGUIElement controls supports its features extension with custom implemented AEntityFeatureGUIExtension<CONTROL_TYPE> components those connect extension to controls messages.

That allows to avoid extra calls and deep hierarchy searches comparing to way of creation GUI controls for each small feature separately.

Following extensions listening for ItemGUIElement content change and then loads provided source content to configurated layout controls.

Item GUI Extension Purpose
Item Features List Allows to display ItemFeature instances data found over Item instance selected as source in AGUIElementsCollection GUI Control. Also, can parse AssetProperty entries to the same UI to display item characteristic.
Item Stack Weight GUI extension that allows to compute and format weigh of stack of items stored at a storage, using data provided with StorageDatabase.ItemContainer connected toward source ItemGUIElement instance.

See also:

Following extensions listening for StorageGUIElement content change and then loads provided source content to configurated layout controls.

Storage GUI Extension Purpose
Storage Content Explorer Loads items located within a new source to referenced AGUIElementsCollection control.
Storage Lock Bonds StorageLock feature over Storage selected as source and GUI. Displays is the storage locked or not.
Storage Weight Bonds StorageWeightLimiter feature over Storage selected as source and GUI. Displays current storage weight and its fill state.

See also:


Data connectors

The module has several implementations for AGUIElementsCollectionDataConnector class provided with dui2 module.
It allows encapsulate bridge between data and its GUI representation within AGUIElementsCollection.

GUI Element Purpose
Storages GUI Collections Creates a bridge between Storage instances and StorageGUIElement.
Allows automatically rent of storages by its id instead as alternative of instance referencing.
Items GUI Collections Creates a bridge between StoragesDatabase.ItemContainer and ItemGUIELement its representation.
Item Features Collection Data Connector Creates a bridge between AItemFeature and ItemFeatureGUIElement representation.

See also:

Explore API:


Virtual Hub extension

The package shares several extensions for Virtual UI Hub supplied with dui2 module.

Control Purpose
Items Virtual Hub extension Extends Item related GUI controls with Virtual UI Hub integration compatibility.
Storages Virtual Hub extension Extends Storage related GUI controls with Virtual UI Hub integration compatibility.

Sub-modules

The Doloro Inventory module has several sub-modules those extends base logic with new features.

Sub-module Description
Volumetric storage Implements concept of volume both for items and storages that allows to operate objects physically.
Shops Implements in-game shops concept and supplies with a following GUI controls to perform trade operations.

Demos

The package has a several prebuild interfaces and demo scripts that showcase you with sample complex GUI windows assembled along with a full module's features on board and demo scripts that provide examples of how to work with the services.

Demo scene Descriptions
Inventories Explorer Sample window that combines smaller GUI parts into complex UI that allows to explore Storage content and related items information.
Shops Inspector Sample window that provides interface for trading operations between storages and shops.
Volume visualizer Demo scene that implements volumetric storage and its content visualization.

Also, the package provides you with example of GUI parts that integrates module's features.

Demo scene Description
Item UI Example of ItemGUIELement instance.
Item inspector Example of complex item inspector that combines several ItemGUIElement instances sharing different data.
Item Feature UI Example of ItemFatureGUIElement instance.
Storage info UI Example of StorageGUIElement instance.
Storages Explorer Example of UI controller that ready to display Storage instances content with GridCollection filled with the StorageGUIElement instances.