skytech6-CrimsonShards icon

CrimsonShards

Customize Soul Shard drops, durability, resets, and transport on your V Rising server.

Last updated 4 hours ago
Total downloads 2
Total rating 0 
Categories Mods Oakveil Update Server
Dependency string skytech6-CrimsonShards-0.1.4
Dependants 0 other packages depend on this package

This mod requires the following mods to function

BepInEx-BepInExPack_V_Rising-1.733.2 icon
BepInEx-BepInExPack_V_Rising

BepInEx pack for V Rising. Preconfigured and includes Unity Base DLLs.

Preferred version: 1.733.2
deca-VampireCommandFramework-0.11.0 icon
deca-VampireCommandFramework

Command framework for developers to easily create universal commands for their plugins.

Preferred version: 0.11.0
skytech6-VAMP-2.0.0 icon
skytech6-VAMP

V Rising API Modding Platform

Preferred version: 2.0.0

README

CrimsonMods

CrimsonShards

Server side only for V Rising 1.1 (Invaders of Oakveil).

CrimsonShards gives server owners control over Soul Shard durability, boss drops, storage, and resets. Optional Football Mode makes players bring newly acquired shards back to a castle before they can teleport with them.

Installation

  1. Install BepInExPack V Rising 1.733.2, VAMP 2.0.0, and VampireCommandFramework 0.11.0 on the dedicated server.
  2. Extract CrimsonShards.dll into the server's BepInEx/plugins directory.
  3. Start the server once to generate BepInEx/config/CrimsonShards.cfg and the default message and teleport location files. Stop the server before editing those files, then restart to apply your changes.

Config

Durability, storage, and transport

[Config]
ToggleMod = true
DurabilityTime = 129600
BlockStorage = false
TeleportDropped = 0
DroppedPlotsOnly = false
FootballMode = false
ClanCastleFootball = false
TimesInUTC = false
BatShardOverride = true
TeamCombatLocksBat = true

[Replenish]
ReplenishOnKill = false
RequireDrain = false
ReplenishPercentage = 5
ReplenishEquippedOnly = false
  • DurabilityTime sets shard durability in seconds (36 hours by default). BlockStorage blocks container storage and pedestal construction.
  • ReplenishOnKill restores a percentage of shard durability on PvP kills. RequireDrain limits this to drain kills, and ReplenishEquippedOnly limits restoration to equipped shards.
  • FootballMode locks teleportation for a newly acquired shard until its carrier reaches their own castle. Enable ClanCastleFootball to count clanmates' castles as well. Shard tracking can cause server lag with many simultaneous shards. Reset existing shards when enabling Football Mode and keep active counts low, for example with a drop limit of one per type on a Unique server.
  • BatShardOverride allows eligible shard carriers to take flight outside combat. TeamCombatLocksBat also checks whether any clanmate is in combat. While enabled, the mod sets the game's BatBoundShards setting to false at startup.
  • TeleportDropped sets how many seconds after detection a dropped shard or a bag containing a shard moves to a random configured location. Set it to 0 to disable relocation. This feature requires FootballMode. With DroppedPlotsOnly = true, the original drop position must be on a castle territory with a castle heart. A drop just outside that territory stays where it landed.

Drop limits

[DropLimit]
Dracula_DropLimit = 1
Monster_DropLimit = 1
WingedHorror_DropLimit = 1
Solarus_DropLimit = 1
Megara_DropLimit = 1

On servers with RelicSpawnType = Unique, each limit controls how many boss-dropped copies of that shard can coexist before further boss drops are blocked. Shards spawned by script are excluded from the count. With RelicSpawnType = Plentiful, the game handles drops and these limits have no effect.

Scheduled resets

Enable FootballMode and set the relevant key in [Reset_Shards] to true to schedule a reset. A reset destroys existing copies of the selected shard type.

[Reset_Shards]
Reset_Dracula = false
Reset_Monster = false
Reset_WingedHorror = false
Reset_Solarus = false
Reset_Megara = false

[Reset_Dracula]
Dracula_Mode = 0
Dracula_Time = 12:00:00
Dracula_Interval_Count = 3
Dracula_Fixed_Day = 1
Dracula_Fixed_SkipWeeks = 0

Each shard has the same schedule defaults. The other sections are [Reset_Monster], [Reset_WingedHorror], [Reset_Solarus], and [Reset_Megara]. Their keys use the matching shard prefix.

  • Mode 0 resets every _Interval_Count days at _Time.
  • Mode 1 resets on _Fixed_Day (0 for Sunday through 6 for Saturday), skipping _Fixed_SkipWeeks weeks between resets. If the timer is set on the selected weekday, the next reset falls the following week with _Fixed_SkipWeeks = 0.
  • Use 24-hour HH:mm:ss for _Time. Times use the server's local timezone unless TimesInUTC = true.

Messages and teleport locations

BepInEx/config/CrimsonShards/Messages.json controls chat messages. Edit the Value fields and keep the entries in this order.

[
  {"Key": "TeleportBlocked", "Value": "Cannot teleport with a Soul Shard before returning to your castle."},
  {"Key": "DraculaReset", "Value": "Dracula Soul Shard has been reset!"},
  {"Key": "MonsterReset", "Value": "Adam Soul Shard has been reset!"},
  {"Key": "SolarusReset", "Value": "Solarus Soul Shard has been reset!"},
  {"Key": "HorrorReset", "Value": "Winged Horror Soul Shard has been reset!"},
  {"Key": "MegaraReset", "Value": "Megara Soul Shard has been reset!"},
  {"Key": "ShardTeleported", "Value": "A shard has been teleported to a random location."}
]

BepInEx/config/CrimsonShards/TeleportLocations.json contains the destination list. This example uses one of the default locations. The teleport commands can also edit the list while the server is running.

[
  {"X": -1892.1616, "Y": 20, "Z": 334.44138}
]

The mod manages reset timestamps in BepInEx/config/_WipeData/cshards_lastresets.json and Football Mode tracking in BepInEx/config/_WipeData/cshards_footballs.json.

Optional CrimsonLog integration

When CrimsonLog is installed, the mod adds these settings. Enable CrimsonLog_Teleports to record drop and destination coordinates. The current implementation writes shard reset messages to the BepInEx log.

[Integrations]
CrimsonLog_Resets = true
CrimsonLog_Teleports = false

Commands

Use these in chat with VampireCommandFramework's default . prefix. Use Dracula, Adam, Talzur, Solarus, or Megara for <shard>. Adam corresponds to Monster and Talzur to WingedHorror in the config.

Command Alias Access Effect
.shards resetshardsall [fullReset] Admin Reset all five shard types on Unique servers. Pass true to use the full reset behavior for each type with a configured schedule. Defaults to false.
.shards resetshard <shard> .shards rs Admin Destroy existing copies of one shard type.
.shards resettime <shard> .shards rt Admin Start the enabled schedule for one shard type from the current time.
.shards resetfull <shard> .shards rf Admin Reset the shard and restart its enabled timer in interval mode or on its configured weekday in fixed-day mode.
.shards checktimer [shard] .shards timer Everyone Show the next scheduled reset for a shard or list all enabled timers when the shard is omitted.
.shards tpadd .shards tpa Admin Save your current position as a drop destination.
.shards tpclear .shards tpc Admin Remove all drop destinations.
.shards tpremove <index> .shards tpr Admin Remove a destination by its position in the list, starting at 1.
.shards tpcheck <index> .shards tpch Admin Teleport yourself to a saved destination by its position in the list, starting at 1.
.pedestals who .pedestals w Admin List players who own Soul Shard pedestals.

Tech Support

Get help in the Modding Discord.

Support the Developer

Buy / Play My Games!

gitgud gitgud TrainYourMinibot Wizards DexSweeper DexSweeper

Free to Plays

Coin & Pike BoringMovies

Support my modding work on Ko-fi.

Want to Experience the Best of Crimson?

Join The Cursed Collective V Rising servers.