Roguelike properties which can be modified by external provides -- and that modification can be attributed to a source.
npm install @quenty/rogue-properties --save
We need a property system for a rogue-like or MMORPG style game that offers the following attributes.
- Modifiable - Can modify a base property in a variety of ways (additive, multiplicative, et cetera)
- Attributable - Can attribute the source of final computation, especially for UI.
- Extensible - Can combine properties
- Grounded in Roblox datamodel - Source of truth exists in Roblox so other people can modify it
- Performant - Needs to run fast
- Agnostic to server/client - Needs to be able to centralize in datatable.
- Scriptable - Need to be able to apply weird scripts to data.
- Levelable - Can scale with level!
- Usable for other people - The computed value is just .Value under the object!