I don't think you can attach specific "ServerRules" to a given Region...
For Storm RvR Implementation I'm pretty sure there is a new "Super Class" For GameServer Rules, that rely on specific Region Check Code to call the right Rules Methods...
Something like "CustomServerRules" Inheriting Normal Rules, and in methods like IsAllowedToAttack you check region ID or Region "Type" to retrieve the according "Rules Object", and then call the "sub rules" methods instead of Normal Rules ones...
I can confirm that Storm Implement Region object Subclass that have a "Rules" Member attached...
so you can easily make some check like
- Code: Select all
public bool IsAllowedToAttack(attacker, defender)
{
if (attacker.Region is "MyCustomRegion")
return (("MyCustomRegion")attacker.Region).Rules.IsAllowedToAttack(attacker, defender);
return base.IsAllowedToAttack(attacker, defender);
}
Edit :
You can also easily subclass DataObject to implement your own table of Region that can use new columns like a specific rules set...
All this can be implemented as Game Server Scripts just like Storm does