Modding is one of the main features of Venice Unleashed, and one of the main things that makes the player experience unique.
We have taken care to provide you with an accessible way to create custom mods, as well as the needed documentation, without having to worry about low-level technicalities of the engine/game.
VU mods will consist of two parts:
- VeniceEXT (Venice Extension) Mods
- Rime Mods
VeniceEXT is a custom modding interface, directly exposed from the game in order to allow you to control various features through your mod.
Servers running custom mods can be ranked, but can only run one unique mod at a time. Modders are given the ability to make their mod present itself as a separate - custom - gamemode on the server list, making it easier for joining players to identify.
VeniceEXT mods (extensions) are basically .NET assemblies loaded by the server on startup, and can be created in any a variety of CLI compliant languages, including C#, Visual Basic .NET, and C++/CLI (more details on how to implement extensions, along with examples will be posted on the VU wiki).
Each extension has access to a variety of game functions, and has the ability to manipulate certain objects like players, weapons, tickets, control points, etc. Through an extension, you can also manipulate game settings, like the blue-tint filter, suppression, sky/weather effects, map combat bounds, and more.
Additionally, each extension can implement and filter a set of events (like damage events, capture events, etc.). This allows you to modify their outcome at runtime, significantly changing the core experience.
Even though VeniceEXT extensions are server-side, we have taken care to also expose several client-side events, like input actions, and other kind of feedback, so you can create your own custom events based on player actions.
Moreover, extensions have the ability to modify certain gamemode specific features. For instance, you are able to change the amount of people needed to raise a flag on Conquest, or modify the amount of time required for a full capture.
Finally, VeniceEXT extensions can communicate with the custom UI (introduced in the previous blog post), in order to allow the client to have partial knowledge of server-side events, and accordingly visually notify the client (when needed).
Those are only some of the main features of VeniceEXT, and we plan on constantly developing and expanding its feature set. In the future, we want to be able to provide you with ways to spawn and modify game objects at runtime, give you more control over other game features, and more!
With the release of Venice Unleashed, we will be providing documentation and sample mods, in order to aid you in the creation of your own.
Next time, we will talk about Rime Mods, and how VeniceEXT and Rime Mods work together to achieve the creation of a truly unique experience!
We would love to hear your feedback, so feel free to discuss this on our forums by clicking on the button below!
From the Venice Unleashed Blog.