VStacks

v1.0.1·Updated 2026-09-13

Managed-only V Rising stack multiplier mod. Defaults to x1000, configurable through VStack.cfg, with extended inventory counts beyond 4095.

About this mod Author’s original text

VStacks

VStacks is an open-source, managed-only BepInEx 6 IL2CPP plugin for V Rising that increases InventoryStacksModifier beyond the normal x3 limitation and fixes the vanilla 4095 inventory replication/display ceiling for extended stacks.

The stack multiplier is configurable. The default is x1000.

Package naming: the package is VStacks. The proven internal runtime identifiers remain VStack for compatibility, including VStack.dll, VStack.cfg, the namespace, and plugin GUID.

Configuration

On first launch, the internal VStack plugin creates:

BepInEx/config/VStack.cfg

Edit it with any text editor:

[Stacks]

Multiplier = 1000

Examples:

Multiplier = 10

Multiplier = 100

Multiplier = 500

Multiplier = 1000

Multiplier = 5000

VStacks accepts positive multiplier values from 0.01 to 65504. 65504 is the largest finite half-precision value supported by the game setting path used by the stack-setting hook. Invalid, zero, negative, NaN, or infinite values fall back to the default x1000; values above 65504 are safely reduced to 65504.

Restart V Rising / the server after editing the config file.

What VStack changes

VStacks changes only:

InventoryStacksModifier

It does not uncap or modify unrelated server settings such as drop rates, refinement rates, resource yield, durability, castle settings, or crafting rates.

V Rising's active inventory replication path encodes InventoryBuffer.Amount and MaxAmountOverride as 12-bit values, which limits the replicated count to 4095. VStacks widens only the validated inventory-specific Burst AOT fields to 31 bits, allowing the real stack amount to reach the client inventory UI.

Important: install on server and clients

The extended-count fix changes the InventoryBuffer network bit width. The same VStacks release (which contains VStack.dll) must be installed on the server/host and every connecting client.

Do not mix a VStacks-enabled server with vanilla clients, or a VStacks-enabled client with a vanilla server, while the extended-count patch is active.

For Host & Play, install VStacks in the BepInEx environment used by the host game. For a dedicated server, install the same VStacks release on the dedicated server and on all connecting players.

Managed-only implementation

VStacks ships only one runtime mod assembly:

BepInEx/plugins/VStack/VStack.dll

There is no custom VStack.Native.dll, no MinHook binary, and no version.dll proxy.

The stack-setting hook uses BepInEx's own BepInEx.Unity.IL2CPP.Hook.INativeDetour.CreateAndApply API from managed C#.

The extended-count fix is implemented inside the internal runtime assembly VStack.dll. Production signature matching locates the required code in the already-loaded lib_burst_generated.dll, validates the expected vanilla bytes and match counts, changes only those verified inventory fields in process memory, and restores them on plugin unload.

No game DLL is modified on disk.

Requirements

  • V Rising (Windows x64)
  • BepInExPack V Rising / BepInEx 6 IL2CPP
  • VStack installed on the server/host and every connecting client
  • For Host & Play, the usual ServerLaunchFix setup if required by the server-side BepInEx environment

Installation

Install through r2modman, or copy:

VStack.dll

to:

BepInEx/plugins/VStack/

Install the same build on the server/host and every client.

Start the game/server once to generate BepInEx/config/VStack.cfg.

Build

dotnet restore src/VStack/VStack.csproj --configfile nuget.config

dotnet build src/VStack/VStack.csproj -c Release --no-restore

GitHub Actions builds both the managed DLL and a -ready ZIP.

Safety / compatibility

The SettingsClamp::Half target is accepted only when its production signature is found exactly once.

The Burst inventory patch is also fail-closed. On the current supported dedicated-server Burst layout it requires exactly 6 matches of each validated server clamp shape, representing 12 inventory fields. On the client layout it requires exactly 6 paired decoder

Install & use Install: BepInEx plugin

  1. The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
  2. Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
  3. Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
  4. Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.

Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file.

Dependencies

Install these first, or the mod will not work:

BepInEx-BepInExPack_V_Rising

File & checksum

Filename
VStacks-1.0.1.zip
File size
88.9 KiB