ZUI
An overhaul UI framework for VRising mods.
模組介紹 作者原文
ZUI - Modern UI Framework for V Rising
ZUI is a powerful, modular UI framework for V Rising that allows developers to create professional, interactive interfaces with minimal effort. Originally built upon the foundation of BloodCraftUI - OnlyFams, ZUI has evolved into a complete Client-Server Hybrid UI engine capable of spawning independent windows, rendering custom textures, streaming images from web URLs, and providing deep integration with both client-side and server-side systems.
ZUI features built-in support for BloodCraft, KinPonds, ScarletSigns, and KindredCommands, while providing a robust API for third-party modders to build their own standalone tools. Server mods can now create UIs dynamically via chat packets without requiring players to install additional client mods.
🖼️ UI Preview
Note: ZUIExampleMod & ScarletSigns are not included with this package. Please download them individually.
✨ Key Features
- Client-Server Hybrid Architecture: Use ZUI from client mods OR server mods via JSON chat packets
- Server-Side Mod Support: Server mods can create UIs without requiring client-side mod installation
- Dynamic Image Loading: Stream images from web URLs (HTTP/HTTPS) with automatic caching
- Custom Window Engine: Create independent windows using pixel-perfect custom dimensions OR use the visual designer at to create your own UI visually
- Dynamic Content Registration: Add categories, text blocks, and interactive buttons to any window on the fly
- Custom Image Support: Load and render PNG/JPG textures from your mod's Sprites folder OR from web URLs
- Persistent Layouts: All windows support dragging and resizing with automatic data saving; your UI stays exactly where you left it
- Theming & 9-Slicing: Professional visual style using 9-sliced sprites for seamless button and panel scaling
- Reflection-based Integration: Third-party mods can integrate without compile-time dependencies
- Packet Protocol: Hidden chat-based packet system allows server mods to control client UIs
🛠️ Installation
- Download the latest release
- Place ZUI.dll and the Sprites folder into your BepInEx/plugins/ directory
- Note: The Sprites folder is required for the default framework visuals
- Configuration: By default, server-side integrations (like BloodCraft) are disabled. Enable them in the ZUI.cfg file if your server supports them
📚 Developer API & Examples
ZUI supports two integration methods: Client-Side (via reflection) and Server-Side (via chat packets).
🔷 Method 1: Client-Side Integration (Reflection-Based)
For client-side mods, use ZUI's "Context" based API via reflection. You set the plugin and window you want to work on, then add your content.
🔘 Basic Registration (Main Menu Integration)
By default, adding buttons without setting a custom UI context will place them in the global Main menu.
💡 Advanced Client-Side Example
using ZUI.API;
// Best practice: Set your plugin name first
ZUI.SetPlugin("MyAwesomeMod");
// Target the main menu
ZUI.SetTargetWindow("Main");
// Add buttons to the default Main menu
ZUI.AddCategory("General Tools");
ZUI.AddButton("Heal Me", ".heal", "Restores your health");
ZUI.AddButton("Speed Boost", ".buff speed", "Temporary speed increase");
🎨 Custom Window Creation
Create completely custom UI windows with precise control over layout and positioning:
// Initialize your plugin context
ZUI.SetPlugin("MyCustomMod");
// Target a custom window (creates it if it doesn't exist)
ZUI.SetTargetWindow("MyControlPanel");
// Set custom dimensions (width x height in pixels)
ZUI.SetUI(600, 400);
// Set the window title with color support
ZUI.SetTitle("My Control Panel");
// Add positioned text
ZUI.AddText("Welcome to my mod!", 20f, 50f);
ZUI.AddText("Version 2.0", 20f, 80f);
// Add positioned categories
ZUI.AddCategory("Settings:", 20f, 120f);
ZUI.AddCategory("Actions:", 320f, 120f);
// Add positioned buttons
ZUI.AddButton("Execute", ".mycommand", 20f, 160f);
ZUI.AddButton("Cus
安裝與使用 安裝:BepInEx 外掛
- 本站下載的壓縮包就是模組本體,通常是 BepInEx 外掛(解壓後得到 .dll 或外掛資料夾)。
- 建議流程:用社群模組管理器(如 r2modman)選中本遊戲後匯入該模組,管理器會自動裝好 BepInEx 前置並處理依賴。
- 手動流程:先在遊戲目錄裝好 BepInEx 載入器,再把解壓出的 .dll 或外掛資料夾放進 BepInEx/plugins/。
- 啟動遊戲,BepInEx 控制台會列印載入日誌;確認這個模組出現在日誌裡即為安裝成功。
帶「前置依賴」的模組需要一併安裝,否則不會載入。功能開關通常在遊戲內或外掛自帶的設定檔裡調整。
下面這些內容需要先安裝,否則該模組不會生效: