Skip to content

sorudev/UniversalItemSystem

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Important


System in under develimponent is missing some key fetures

  1. Multy Item Data Contener
  2. Visual Multy Item Data Contener
  3. NetCode for picking up items and droping it
  4. needs a pr FlaxEngine/FlaxEngine#2591 with was not yet meged to engine

Universal Item System for Flax Engine

Allows to make anny kind of item for any kind of game

Note

System has some custom net code.

Design Inspiraction

Pulled a idea from Minecraft item system.
Minecraft has very interesting item system just by looking at attributes from user view
So this system fallows this idea

Item Structure

Type Role
Item Single Item Data Contener
Item::Data Runtime item representacion
Item::Attribute Runtime item attribute representacion
Item::Asset Static item representacion

Important

Attributes can be any type
The internal data is stored as byte array max size is 127 bytes
Going past the 127 bytes limit wil couse the bytes to chopp by the item system

Attribute types

  • null - no data
  • Bool - uses 1 byte
  • Decimal - it can be a float or double depending on value uses 4 to 8 byte
  • Text - a string with max size of 63 w_chars
  • UnsindedInteger - any unsinded integer uses 1 to 8 byte
  • Integer - any integer uses 1 to 8 byte
  • Custom - a wild card data can be anything

Caution

Custom is unsafe because it is a wild card when using it make sure the name is unique and data size is known and don't trust the network replicated values
try to not push large blocks of data to attributes

About

Universal Item System for flax

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 57.4%
  • C# 42.6%