Server only mod for RPG system which also include ChatCommands with bug fixes.
Read the changelog for extra details.
-- From v0.2.5 to v0.3.0 and Above.
Please make sure to thorougly test everything on a test server first, before updating your live server.
v0.3.0 brings about a large change in the permission and VIP system,
I've tried to test everything as thorough as possibly, but I am just one person.
Backup your old `config/RPGMods` folder before trying to update from v0.2.5 and below.
Disable the VRising Gear Level system and replace it with a traditional RPG experience system,
complete with exp sharing between clan members or other player designated as ally.
Mastering a weapon will now progressively give extra bonus to the character stats.
Weapon mastery will increase when the weapon is used to kill a creature, and while in combat to a maximum of 60 seconds. (0.001%/Sec)
Spell mastery can only increase and take effect when no weapon is equipped.
When the vampire goes to sleep (offline), all their mastery will continuously decay per minute passed while offline.
This decay will keep on counting even while the server is offline.
A new system where every NPC you killed contribute to a heat system,
if you kill too many NPC from that faction, eventually your heat level will raise higher and higher.
The higher your heat level is, a more difficult squad of ambushers will be sent by that faction to kill you.
Heat level will eventually cooldown the longer you went without killing NPCs from that faction,
space your kills so you don't get hunter by an extremely elite group of assassins.
Otherwise, if you are dead for any reason at all, your heat/wanted level will reset back to anonymous.
-- Note
Ambush may only occur when the player is in combat.
Configurable PvP kill serverwide announcement.
Kill/Death will also be recorded, and a ladder board for the Top 5 K/D in the server.
Additionally there's a punishment system which can be used to punish player who kill lower level player,
which is configurable in the config.
Punishment will apply a debuff that reduce player combat effeciency.
-25%
Physical & spell power-15
Physical, spell, holy, and fire resistance- Gear level down (Overriden by EXP system if active)
Commands be configured to require a minimum level of permission for the user to be able to use them.
When there's no minimum permission set in the command_permission.json
, it will default to a minimum requirement of permission lv. 100.\
VIP System when enabled, will enable the user with permission level higher or equal to the minimum requirement set in to config,
to be able to bypass server capacity.
Permission level range from 0 to 100.
With 0 as the default permission for user (lowest),
and 100 as the highest permission (admin).
You can now ban a player for the specified duration in days using the .ban/.unban command.
WARNING
if you remove RPGMods all the banned user via the chat command will no longer be banned!
Basic
Prefix
[default.
]
The prefix use for chat commands.Command Delay
[default5
]
The number of seconds user need to wait out before sending another command.
Admin will always bypass this.DisabledCommands
[defaultempty
]
Enter command names to disable them. Seperated by commas.WayPoint Limits
[default3
]
Set a waypoint limit per user.
VIP
Enable VIP System
[defaultfalse
]
Enable the VIP System.Enable VIP Whitelist
[defaultfalse
]
Enable the VIP user to ignore server capacity limit.Minimum VIP Permission
[default10
]
The minimum permission level required for the user to be considered as VIP.
VIP.InCombat Buff
Durability Loss Multiplier
[default0.5
]
Multiply durability loss when user is in combat. -1.0 to disable.
Does not affect durability loss on death.Garlic Resistance Multiplier
[default-1.0
]
Multiply garlic resistance when user is in combat. -1.0 to disable.Silver Resistance Multiplier
[default-1.0
]
Multiply silver resistance when user is in combat. -1.0 to disable.Move Speed Multiplier
[default-1.0
]
Multiply move speed when user is in combat. -1.0 to disable.Resource Yield Multiplier
[default2.0
]
Multiply resource yield (not item drop) when user is in combat. -1.0 to disable.
VIP.OutCombat Buff
Durability Loss Multiplier
[default0.5
]
Multiply durability loss when user is out of combat. -1.0 to disable.
Does not affect durability loss on death.Garlic Resistance Multiplier
[default2.0
]
Multiply garlic resistance when user is out of combat. -1.0 to disable.Silver Resistance Multiplier
[default2.0
]
Multiply silver resistance when user is out of combat. -1.0 to disable.Move Speed Multiplier
[default1.25
]
Multiply move speed when user is out of combat. -1.0 to disable.Resource Yield Multiplier
[default2.0
]
Multiply resource yield (not item drop) when user is out of combat. -1.0 to disable.
PvP
Announce PvP Kills
[defaulttrue
]
Do I really need to explain this...?Enable the PvP Ladder
[defaulttrue
]
Hmm... well it enables the ladder board in .pvp command.Enable PvP Toggle
[defaulttrue
]
Enable/disable the pvp toggle feature in the pvp command.Enable PvP Punishment
[defaulttrue
]
Enables the punishment system for killing lower level player.Punish Level Difference
[default-10
]
Only punish the killer if the victim level is this much lower.Offense Limit
[default3
]
Killer must make this many offense before the punishment debuff is applied.Offense Cooldown
[default300
]
Reset the offense counter after this many seconds has passed since last offense.Debuff Duration
[default1800
]
Apply the punishment debuff for this amount of time.
Siege
Buff Siege Golem
[defaultfalse
]
Enabling this will reduce all incoming physical and spell damage according to config.Physical Damage Reduction
[default0.5
]
Reduce incoming damage by this much. Ex.: 0.25 -> 25%Spell Damage Reduction
[default0.5
]
Reduce incoming spell damage by this much. Ex.: 0.75 -> 75%
HunterHunted
Enable
[defaulttrue
]
Enable/disable the HunterHunted system.Heat Cooldown Value
[default35
]
Set the reduction value for player heat for every cooldown interval.Bandit Heat Cooldown Value
[default35
]
Set the reduction value for player heat from the bandits faction for every cooldown interval.Cooldown Interval
[default60
]
Set every how many seconds should the cooldown interval trigger.Ambush Interval
[default300
]
Set how many seconds player can be ambushed again since last ambush.Ambush Chance
[default50
]
Set the percentage that an ambush may occur for every cooldown interval.Ambush Despawn Timer
[default300
]
Despawn the ambush squad after this many second if they are still alive. Ex.: -1 -> Never Despawn.
Experience
Enable
[defaulttrue
]
Enable/disable the Experience system.Max Level
[default80
]
Configure the experience system max level..Multiplier
[default1
]
Multiply the experience gained by the player.VBlood Multiplier
[default15
]
Multiply the experience gained from VBlood kills.EXP Lost / Death
[default0.10
]
Percentage of experience the player lost for every death by NPC, no EXP is lost for PvP.Constant
[default0.2
]
Increase or decrease the required EXP to level up.
EXP Table & FormulaGroup Modifier
[default0.75
]
Set the modifier for EXP gained for each ally(player) in vicinity.
Example if you have 2 ally nearby, EXPGained = ((EXPGained * Modifier)*Modifier)Ally Max Distance
[default50
]
Set the maximum distance an ally(player) has to be from the player for them to share EXP with the player
Mastery
Enable Weapon Mastery
[defaulttrue
]
Enable/disable the weapon mastery system.Enable Mastery Decay
[defaulttrue
]
Enable/disable the decay of weapon mastery when the user is offline.Max Mastery Value
[default100000
]
Configure the maximum mastery the user can atain. (100000 is 100%)Mastery Value/Combat Ticks
[default5
]
Configure the amount of mastery gained per combat ticks. (5 -> 0.005%)Max Combat Ticks
[default12
]
Mastery will no longer increase after this many ticks is reached in combat. (1 tick = 5 seconds)Mastery Multiplier
[default1
]
Multiply the gained mastery value by this amount.VBlood Mastery Multiplier
[default15
]
Multiply Mastery gained from VBlood kill.Decay Interval
[default60
]
Every amount of seconds the user is offline by the configured value will translate as 1 decay tick.Decay Value
[default1
]
Mastery will decay by this amount for every decay tick. (1 -> 0.001%)
Commands permission uses permission level which start from 0 to 100.
Permission level 0 means that it can be used by everyone.
User designated as SuperAdmin in your server admin list will always bypass the permission requirement.
Special commands params that require admin permission can also be adjusted here.
All abbreviation of the command are automatically included, you need only to put the primary command string.
The permissions are saved in BepInEx/config/RPGMods/command_permission.json
and look like this:
Default Permission - Don't forget to copy!
{
"help": 0,
"pvp": 0,
"ping": 0,
"heat": 0,
"waypoint": 0,
"teleport": 0,
"experience": 0,
"mastery": 0,
"heat_args": 100,
"experience_args": 100,
"mastery_args": 100,
"waypoint_args": 100,
"autorespawn_args": 100,
"pvp_args": 100
}
Removing a command from the list will automatically set it's permission requirement value to 100
.
help
help [<command>]
Shows a list of all commands.
Example: help experience
kit
kit <name>
Gives you a previously specified set of items.
Example: kit starterset
How does kit work?
You will get a new config file located in BepInEx/config/RPGMods/kits.json
[
{
"Name": "Example1",
"PrefabGUIDs": {
"820932258": 50, <-- 50 Gem Dust
"2106123809": 20 <-- 20 Ghost Yarn
}
},
{
"Name": "Example2",
"PrefabGUIDs": {
"x1": y1,
"x2": y2
}
}
]
blood
blood <bloodtype> [<quality>] [<value>]
Sets your Blood type to the specified Type, Quality and Value.
Example: blood Scholar 100 100
bloodpotion
bloodpotion <bloodtype> [<quality>]
Creates a Potion with specified Blood Type, Quality and Value.
Example: bloodpotion Scholar 100
waypoint
waypoint <name|set|remove|list> [<name>]
Teleports you to previously created waypoints.
Example: waypoint set home
<-- Creates a local waypoint just for you.
Example: waypoint home
<-- Teleport you to your local waypoint.
Example: waypoint remove home
<-- Remove your local waypoint.
Example: waypoint list
<-- Shows a list of all to you accessible waypoints.
Special Params -> <name|set|remove|list> [<name>] [global]
Creates a global waypoint usable by everyone.
Example: waypoint set arena global
<-- Creates a global waypoint for everyone (Special Params).
Example: waypoint remove arena global
<-- Remove a global waypoint for everyone (Special Params).
give
give <itemname> [<amount>]
Adds the specified Item to your Inventory.
Example: give Stone Brick 17
spawnnpc
spawnnpc <prefabname> [<amount>] [<waypoint>]
Spawns a NPC. Optional: To a previously created waypoint.
Example: spawnnpc CHAR_Cursed_MountainBeast_VBlood 1 arena
health
health <percentage> [<playername>]
Sets your health to the specified percentage (0 will kill the player).
Example: health 100
Example: health 0 LegendaryVampire
speed
speed
Toggles speed buff.
sunimmunity
sunimmunity
Toggles sun immunity.
nocooldown
nocooldown
Toggles all skills & abilities to have no cooldown.
resetcooldown
resetcooldown [<playername>]
Reset all skills & abilities cooldown for you or the specified player.
Example: resetcooldown
Example: resetcooldown LegendaryVampire
teleport
teleport <playername>
Teleport to another online player within your clan.
Example: teleport LegendaryVampire
godmode
godmode
Toggles god mode for you.
autorespawn
autorespawn
Toggles auto respawn on same position on death.
Special Params -> [<all>|<playername>]
Toggle the auto respawn for specified player or server wide.
Example: autorespawn all
Example: autorespawn LegendaryVampire
heat
heat
Checks your heat/wanted level by the factions.
Special Params -> [<debug>|<value> <value> [<PlayerName>]]
Display numeric heat or set your or the specified player heat.
Example: heat 500 500
Example: heat 500 500 LegendaryVampire
ping
ping
Show you your latency to the server.
pvp
pvp [<on>|<off>]
Toggles PvP or display your PvP statistics & the current leaders in the ladder.
Example: pvp
Example: pvp off
Special Params -> <on>|<off> <playername>
Toggles PvP for the specified player.
Example: pvp on LegendaryVampire
Example: pvp off LegendaryVampire
experience
experience [<log> <on>|<off>]
Diplays your current exp and progression to the next level, or toggle the exp gain notification.
Example: experience
Example: experience log off
Special Params -> [<set> <value> [<PlayerName>]]
Set your or the specified player experience value.
Example: experience set 1000
Example: experience set 2000 LegendaryVampire
mastery
mastery [<log> <on>|<off>]
Display your current mastery progression, or toggle the mastery gain notification.
Example: mastery
Example: mastery log off
Special Params -> [<set> <type> <value> [<PlayerName>]]
Set your or the specified player mastery value.
Example: mastery set sword 100000
Example: mastery set spear 2000 LegendaryVampire
save
save
Trigger the database saving manually.
punish
punish <playername> [<remove>]
Manually punish someone or lift their debuff.
This command may still be used even when punishment system is disabled.
Example: punish LegendaryVampire
Example: punish LegendaryVampire remove
permission
permission <list>|<save>|<reload>|<set> <0-100> <playername>|<steamid>
Manage commands and user permissions level.
Example: permission list
-> List all users with special permission.
Example: permission save
-> Save the most recent user permission list.
Example: permission reload
-> Directly reload user permission and command permission from the JSON file.
Example: permission set 100 LegendaryVampire
Example: permission set 0 LegendaryVampire
ban/unban
ban <playername> [<days> <reason>]
Check the status of specified player, or ban them. 0 days will translate to permanently banned.
unban <playername>
Remove the specified player from the ban list.
kick
kick <playername>
Kick the specified player from the server.
Changelog
0.3.1
- Added configurable permission for special params that previously only usable by admins.
- Added VIP system that can give a passive buff to VIP players.
0.3.0
- Changed command permission to use permission level instead of just checking for admin/not.
- Permission and disabled commands config now automatically include abbreviation.
- Added whitelist/vip system which should be able to bypass max connected user config.
- Added ban command.
- Added kick command.
0.2.5
- Emergency patch release to fix that losing exp on death is still active even when the exp system is disabled.
0.2.4
- Modified the save command to also force the server to save game.
- Modified the level up chat notification to be on/off according to the .xp log command.
- Fixed the waypoint bug, admin will ignore the limit properly now, and config for waypoint is properly set.
- Fixed bug with .mastery set command not being able to set other player mastery.
- Moved EXP lost on death to downed event to avoid people suiciding after pvp and losing exp.
- Attempt to fix rare broken string that is totally unknown how it can occurs.
- Commands
.help [<command>]
will no longer show details if the user doesn't have sufficient priviledge.
0.2.3
- Added level up effect & notification for the experience system.
- Added config to disable PvP toggling in the pvp command.
- Changed the default exp & mastery feed to be off instead of on.
0.2.2
- Fixed some stats being bugged in the mastery system.
- Reduced movement speed bonus from Slashers and None mastery.
- Fixed mastery set command output only saying the first char of the weapon type.
- Added Siege Golem buff options in configs.
- Added ambush unit despawn timer in configs.
0.2.1
- Renamed the list in mastery to be in accordance with the mastery in game types.
0.2.0
- Fixed typo in mastery commands for setting Schyte mastery.
- Added PvP punishment system.
- Changed PvP system to hook from downed player instead of killed player.
- Fixed bug in mastery decay not being disabled when mastery system is not enabled.
- Fixed bug in mastery command that still report mastery status even when the system is disabled.
0.1.6
- Commands & permission are no longer case sensitive. F*ck...
0.1.5
- Introduced a mechanic to randomize mastery gain from creature kills.
- Fixed issue on mastery gain on player death.
- Fleshed out the weapon mastery bonus.
0.1.4
- Added Weapon Mastery system.
- Disabled EXP/Mastery gain from summoned creatures.
- Added EXP & Mastery gain logs for players.
- Changed some 'notification' type of message into Lore chat type.
- Added capabilities to change other player heat values.
- Added mastery command.
- Added a new abreviation for experience command. (exp)
0.0.3
- Fixed bug with chat cooldown being applied twice the value of the config
- Fixed bug with waypoint limits.
- Fixed bug with PvPStats recording.
- Fixed bug with teleport command.
- PvPKD should display decimals properly now.
0.0.2
- Fixed bug on allies checking when it was called if plugin was never reloaded with Wetstone.
0.0.1
- Added command delay timer
- Integrated the data saving into the GameServer autosave & shutdown
- All saved data will now use SteamID as key for compability with character name changes
- Added Experience system
- Changed SunImmunity behavior, there's no more persistent sun immunity with this
- Added GodMode command
- Added HunterHunted (Wanted Level) system
- Added PvP stats & leaderboard system for it
- Added PvP kill serverwide announcement
- Added ping command to check for latency against the server
- Added autorespawn command
- Added nocooldown command
- Added resetcooldown command
- Fixed blood command to apply the bloodtype buff and avoid BloodHunger HUD bug
- Optimized NPC spawn system, it will not lag the server anymore
- Modified NPC spawn command to accept amount to spawn
- Fixed NPC spawn command to be able to spawn normal units
- Hide commands from user that do not have sufficient priviledge to use the command
- Disabled waypoint command for user in combat
- Modified waypoint command to "instance" the waypoint name
- Admin ignore waypoint limit
- Modified health command to be able to affect specified player or kill them by setting their HP to 0
- Some other thing that i may not be able to remember
Contributor
- Dimentox#1154
- Nopey#1337
- syllabicat#0692
- errox#7604
Known Issues
- Resetcooldown command does not refresh skills that has charges.
- Blood command cannot apply "fragile" blood type.
- Some blood buff give a gear level to the character, which would be fixed once they kill something or re-equip accessory.
- There's no known issue yet. Heat level does get reset if you reload the plugin/restart server, this is an intended behaviour.
- Punishment debuff lower the player gear level, which will be overriden by the experience system if the exp system is active.
Planned Features
- Kits Option: Limited Uses. (On hold)
- More optimization! It never hurts to optimize!
- Add ban command with duration. (On hold)
- Explore team/alliance in VRising. (On hold)
- Hook into whatever system possible to add a tag to player names. (On hold)
- More dynamic events
- Bloodline
- Dynamic mob stats adjustment