Home

Updated 3 days ago

Welcome to the ZUI Wiki

ZUI is a powerful, modular Client-Server Hybrid UI framework for V Rising that allows developers to create professional, interactive interfaces with minimal effort. This wiki provides comprehensive documentation for integrating and using ZUI in your mods.

ZUI supports both client-side mods (via reflection) and server-side mods (via chat packets), enabling server administrators to create dynamic UIs without requiring players to install additional client mods.


🚀 Quick Start

New to ZUI? Start here:

  1. Getting Started - Installation and your first UI
  2. API Reference - Complete method documentation
  3. Examples & Tutorials - Step-by-step guides

📚 Documentation

For Developers

Tools & Resources


🎯 What Can You Build?

ZUI enables you to create:

  • Main Menu Buttons - Simple buttons integrated into ZUI's main interface
  • Custom Windows - Standalone UI windows with pixel-perfect layouts
  • Server-Side UIs - Create UIs from server mods via chat packets (no client mod needed)
  • Interactive Dashboards - Real-time information displays
  • Admin Panels - Control panels with organized categories
  • Configuration UIs - User-friendly settings interfaces
  • Status Displays - Player stats, server info, and more
  • Dynamic Image Loading - Stream images from web URLs
  • Image Galleries - Display custom textures and logos

🎨 Visual Designer

Don't want to code coordinates manually? Use the ZUI Canvas Designer!

The visual designer lets you:

  • Drag and drop UI elements
  • Preview layouts in real-time
  • Export code ready for your mod
  • Test different designs instantly

🔧 API Overview

ZUI supports two integration methods:

Client-Side (Reflection)

// Set your plugin context
ZUI.SetPlugin("MyMod");

// Main menu integration
ZUI.SetTargetWindow("Main");
ZUI.AddCategory("Features");
ZUI.AddButton("Heal", ".heal");

// Custom window
ZUI.SetTargetWindow("ControlPanel");
ZUI.SetUI(600, 400);
ZUI.SetTitle("My Control Panel");
ZUI.AddText("Welcome!", 20f, 50f);
ZUI.AddButton("Execute", ".command", 20f, 100f);

Server-Side (Chat Packets)

// Server mod sends formatted chat message
var packet = new {
    Type = "AddButton",
    Plugin = "ServerMod",
    Window = "AdminPanel",
    Data = new Dictionary<string, string> {
        { "Text", "Server Button" },
        { "Cmd", ".command" },
        { "X", "20" }, { "Y", "100" }
    }
};
string message = "[[ZUI]]" + JsonSerializer.Serialize(packet);
ServerChatUtils.SendSystemMessageToUser(userEntity, message);

See API Reference for complete documentation.


📦 Features at a Glance

Feature Description
Custom Windows Create independent windows with custom dimensions
Dynamic Content Add/remove UI elements on the fly
Image Support Load PNG/JPG textures from local files OR web URLs
Persistent Layouts Draggable/resizable windows with automatic saving
Rich Text Full Unity Rich Text support with colors and formatting
Soft Dependencies Integrate without compile-time requirements
Server-Side Support Create UIs from server mods via chat packets
Image Streaming Download and cache images from HTTP/HTTPS URLs
Built-in Themes Professional 9-sliced sprites included

💡 Example Mods

Check out these mods using ZUI:

  • ZUIExampleMod - Demonstrates basic and advanced UI creation with ZUI.
  • KindredCommands - By far the most comprehensive admin/user toolset for VRising. Heavily recommended.
  • ScarletSigns - Custom sign/floating text system that supports colors.
  • BloodCraft - Massive RPG Mod that truly enhances VRising.
  • KinPonds - Creates ponds out of wells!

🆘 Need Help?


🤝 Contributing

Found an issue or want to improve the documentation? Contributions are welcome!


📄 License

ZUI is dual-licensed under MIT (base components from BloodCraftUI - OnlyFams) and LGPLv3 (ZUI enhancements and additions).


Ready to get started? Head to Getting Started!