Bloodcraft
Leveling, expertise, legacies, professions, familiars, classes, quests!

от deca
Command framework for developers to easily create universal commands for their plugins.
VampireCommandFramework — мод для V Rising (Ви Райзинг) от автора deca. Command framework for developers to easily create universal commands for their plugins.
Его скачали 108,1 тыс. раз: это 4-е место среди модов V Rising в нашем каталоге, редкость — «легендарный» (топ-5% по скачиваниям). Мод обновлялся в течение года, актуальная версия — 0.11.0.
Для работы ему нужны: BepInExPack V Rising.
Автор отметил совместимость с обновлениями игры: Gloomrot, 1.0, Oakveil.
1 шт · нажмите, чтобы открыть
Текст автора на языке оригинала
A comprehensive framework for V Rising mod developers to easily build commands with advanced features like command overloading, history, smart matching, and plugin-specific execution.
For Server Operators
This plugin should be installed into the BepInEx/plugins folder and be kept up to date. It is required by other plugins for commands.
For Plugin Developers
dotnet add package VRising.VampireCommandFramework
[BepInDependency("gg.deca.VampireCommandFramework")]
CommandRegistry.RegisterAll()
[Command("foo")]
public void Foo(ICommandContext ctx, int count, string orValues = "with defaults", float someFloat = 3f)
=> ctx.Reply($"You'd do stuff here with your parsed {count} and stuff");
This command would execute for:
.foo 5.foo 5 works.foo 5 "or really fancy" 3.145But if you typed .foo 5.123 you'd see a generated usage message like:
### This simple example provides
- **Automatic help listings** - your command appears in `.help`
- **Parameter parsing** - `count`, `orValues`, and `someFloat` are automatically converted
- **Usage text generation** - help shows `(count) [orValues="with defaults"] [someFloat=3]`
- **Default parameter handling** - optional parameters work seamlessly
- **Type conversion** - strings become integers, floats, etc.
### More Examples
The framework handles these additional command patterns:
**Command with parameters:**
[Command("give")] public void GiveItem(ICommandContext ctx, string item, int count = 1) => ctx.Reply($"Gave {count} {item}");
- Executes with: `.give sword`, `.give sword 5`
**Command groups:**
[CommandGroup("admin")] public class AdminCommands { [Command("ban")] public void Ban(ICommandContext ctx, string player) => ctx.Reply($"Banned {player}"); }
- Executes with: `.admin ban PlayerName`
## Remainder Parameters
For commands that take free-form text (a message, a reason, a timezone ID), mark the final `string` parameter with `[Remainder]` to capture everything the user typed after the preceding arguments, with spacing and quotes preserved.
[Command("say")] public void Say(ICommandContext ctx, string channel, [Remainder] string message) => ctx.Reply($"[{channel}] {message}");
- `.say global hello everyone` → `channel = "global"`, `message = "hello everyone"`
- `.say global "hello, friends!"` → `message = "\"hello, friends!\""` (quotes kept as typed)
**Rules:**
- Must be the **last** parameter. Violations are rejected at registration time.
- Must be of type `string`.
- Captures the rest of the raw input verbatim, including quotes, whitespace, and special characters.
- Can be optional with a default value: `[Remainder] string reason = null`.
- Parameters before the remainder are parsed normally: type conversion, defaults, and custom converters all still apply.
- Composes with overloading: the framework picks a remainder variant when enough preceding arguments are present.
Auto-generated `.help` output renders a remainder parameter as ``, distinct from `(name)` for required and `[name=default]` for optional, so users get a visual cue for free, unless you supply a manual `usage:` string on `[Command]`.
## Command Overloading
You can now create multiple commands with the same name but different parameter types:
[Command("teleport")] public void TeleportToPlayer(ICommandContext ctx, string playerName) => ctx.Reply($"Teleporting to {playerName}");
[Command("teleport")] public void TeleportToCoords(ICommandContext ctx, float x, float y) => ctx.Reply($"Teleporting to {x}, {y}");
When there's ambiguity, players will be presented with options and can select using `.1`, `.2`, etc.
## Middleware
All commands execute through a middleware pipeline. You can add your own middleware by implementing `ICommandMiddleware` and adding it to the `CommandRegistry.Middlewares` list.
Middleware is perfect for implementing permissions and roles, cooldowns, logging, command costs, rate limiting, and other cross-cutting concerns that should apply across commands even from other VCF plugins.
[V Roles](https://github.com/Odjit/VRoles) is an example of a Middleware plugin for VCF that adds in roles that commands and users can get assigned.
Example middleware:
public class CooldownMiddleware : CommandMiddleware { public override bool CanExecute(ICommandContext ctx, CommandAttribute cmd, MethodInfo method) { // Your cooldown logic here return !IsOnCooldown(ctx.Name, cmd.Name); } }
## Response and Formatting Utilities
The framework includes rich formatting utilities for enhanced chat responses:
// Text formatting ctx.Reply($"{"Important".Bold()} message with {"emphasis".Italic()}"); ctx.Reply($"{"Warning".Underline()} - please read carefully");
// Colors (using predefined color constants) ctx.Reply($"{"Error".Color(Color.Red)} - something went wrong"); ctx.Reply($"{"Success".Color(Color.Green)} - command completed"); ctx.Reply($"{"Info".Color(Color.LightBlue)} message");
// Text sizing ctx.Reply($"{"Large Header".Large()} with {"small details".Small()}");
// Combining formatting ctx.Reply($"{"Critical".Bold().Color(Color.Red).Large()} system alert!");
// Paginated replies for long content var longText = "Very long text that might exceed chat limits..."; ctx.SysPagin
Описание длинное — здесь его начало. Читать целиком на странице автора
В r2modman ставится автоматически
106 в каталоге · показаны самые популярные
Leveling, expertise, legacies, professions, familiars, classes, quests!
Commands to expand Administration efforts and provide information
Inventory management mod. Stashing, craftpulling, finding chests, etc.
A Fork of RPGMods Now for Gloomrot!.
Mod to automatically close doors after a few seconds.
A mod that notifies when a user connects or disconnects from the server, new user connect from the server, when a player kills a VBlood boss, Message of the day system and auto announce system that runs every certain interval.
Файл скачивается с официального сервера Thunderstore, без перезаливов и сторонних установщиков
Подробная инструкция для V RisingВставьте значок в описание на Thunderstore, в README или в Discord — русскоязычные игроки сразу попадут на страницу с переводом и инструкцией.
[](https://modka.app/v-rising/deca-vampirecommandframework/)<a href="https://modka.app/v-rising/deca-vampirecommandframework/"><img src="https://modka.app/badge.png" alt="Описание на русском — Модка" height="44"></a>[url=https://modka.app/v-rising/deca-vampirecommandframework/]Описание на русском — Модка[/url]Скачайте менеджер модов r2modman (или Gale) и выберите в нём игру V Rising. Создайте профиль — так моды не смешаются с чистой версией игры. Найдите «VampireCommandFramework» во вкладке Online и нажмите Download — BepInEx и все зависимости подтянутся сами. Нажмите «Start modded» — игра запустится с модами. Чтобы сыграть без модов, запустите игру как обычно из Steam — r2modman не трогает чистую версию игры.
Файл скачивается с официального сервера Thunderstore, куда его загрузил deca. Мы не перезаливаем и не изменяем моды.
Установите вместе с ним: BepInExPack V Rising. В менеджере модов зависимости подтягиваются автоматически.
15 апреля 2026, актуальная версия — 0.11.0. Дата берётся с официальной страницы мода при каждом обновлении каталога.
A VRising mod that speeds up time while you sleep in your coffin.
A mod that notifies when a user connects or disconnects from the server, new user connect from the server, when a player kills a VBlood boss, Message of the day system and auto announce system that runs every certain interval.
A server-side only mod that allows players to refill their blood pool in different ways.
Sets PvP protection buff in designated zones.
All Client Sided Mods For Soul PvE server.
Mod that kills spiders in a range around you and your friends. So you don't have to fight those pesky things! Now with progression unlock support!