Rules Engine Replacement #31
DavidRieman
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
The rules engine we used was based on old, retired code from codeplex (http://rulesengine.codeplex.com) that doesn't appear to have migrated anywhere AFAICT.
The old Rules engine ended up having to be ripped out for the latest major WheelMUD upgrades. In addition, the way it was built was pretty dangerous. For example, they were making permanent modifications to core player stats and such, trusting that removal of said objects would always correctly deprecate them, and that a player would never find a way to get these modifications to occur additionally. Actually it may already have been stacking extra changes every time you logged in too!
We may want to consider if it will be worthwhile to seek a suitable replacement to serve similar needs. If so, some desirable traits may be:
However, perhaps handling stats/attributes/etc should occur with a specific set of classes and API that doesn't actually need such a deep rules engine? IMO we can cover the needs with actual, directly-debuggable C# classes.
One design for a replacement system that comes to mind is a system where we have loaded/attached class instances register into collections of "active" stat-modifying class instances.
Some specific details and implementation ideas:
Beta Was this translation helpful? Give feedback.
All reactions