Major version bump
Due to a significant internal architectural change, I decided to bump the major version number to 5. However, DPVP should continue working as expected with your current config and data files.
Deep Sea event changes
Deep Sea events will now be created/deleted in a coroutine, both at startup and whenever the Deep Sea opens/closes. This should reduce the chance of lag/stuttering cause by DPVP.
This also means that Deep Sea events will only be created for relevant entities within the Deep Sea, by the game's Deep Sea Manager. This can be revisited if other plugins start doing fancy stuff.
Overall performance refactor
Carbon's profiler has identified the
GetBaseEvent() method as a significant performance bottleneck in DPVP, so I have refactored the codebase to eliminate it.Knock-on affects of this include refactoring internal API and inheritance of the event classes, and removal of the
OnGetBaseEvent hook.None of this should affect server owners, except that it may break compatibility with any plugins that were tightly-coupled to the old code.
If you are a developer whose plugin is affected, I'm willing to collaborate on fixes.