Hello Nikedemos,
I’m running into an issue with the WaterBases plugin after extending it to support additional VIP levels.
Issue Summary
- VIP1 permissions work perfectly for upgrades.
- I added custom VIP levels (vip2, vip3, vip4, vip5) in both the config and the main plugin code.
- Despite this, the OnStructureUpgrade hook only recognizes: default, waterbases.vip1, and waterbases.admin.
- My custom permissions (waterbases.vip2, waterbases.vip3, etc.) are being ignored, preventing upgrades for those users.
What I’ve Modified
- Added full permission profile handling for VIP2–VIP5 in the C# plugin code.
private void ProcessConfigData(string versionFromConfig)
{
///
////
{
/////
{
///
///
///
[PERM_VIP2] = VIP2PermissionProfile(),
[PERM_VIP3] = VIP3PermissionProfile(),
[PERM_VIP4] = VIP4PermissionProfile(),
[PERM_VIP5] = VIP5PermissionProfile(),
};
///
}
///
///
///
private PermissionProfile VIP3PermissionProfile()
{
return new PermissionProfile
{
PermissionRequired = PERM_VIP3,
/////
};
}
- Extended the permission checking system to account for the new levels.
- Updated all relevant functions to recognize these extra VIP levels.
- Created JSON config profiles for each VIP level with correct permission names.
What I’ve Verified / Tried
- All code changes compile correctly (no syntax errors).
- JSON syntax is valid (checked commas/brackets).
- Reloaded the plugin.
- Confirmed permissions exist and are properly granted (oxide.grant shows them assigned).
- VIP1 and admin permissions work fine; VIP2–VIP5 remain unrecognized.
Suspected Problem
The issue may lie in the GetPermissionProfile method (or related permission iteration logic). It looks like the plugin may not properly handle dynamically added permission profiles beyond the original set, even when the code has been extended. There may be a hardcoded limitation or a specific naming/pattern requirement that prevents VIP2–VIP5 from being registered.
Environment
- WaterBases Version: 1.0.21 (with custom modifications for VIP2–VIP5)
- Rust Server Version: Protocol 2594.270.1 (Build Date: 08/28/2025 22:22:54, Unity 2022.3.41f1, Changeset 129647, Branch: release)
- Oxide Version: 2.0.6553 , Oxide.Rust Branch: master
Could you please review this and advise why the system isn’t recognizing custom-added VIP levels?
Thank you for your excellent work on this plugin!