Details

Last Updated
2 days ago
First Uploaded
2 days ago
Downloads
94
Likes
2
Size
124KB
Dependency string
skytech6-CrimsonKiller-1.1.1
Dependants

CrimsonMods

CrimsonKiller

This mod has been designed to provide an incredibly in-depth and detailed customization of the kill feed messages that can easily be tailored to any server's needs. You want to make sure the kill feed messages are as detailed as possible, so you can easily track who killed who and when with any amount of thematic flair as to your liking.

You can toggle each message type on or off in the config file. You can configure how each parameter appears. You can change the display names of V Bloods and Regions. You can use this for PvE and/or PvP. You could even go so far as to only broadcast when someone took the cowardly route of killing their enemy in their slumber.

CrimsonMods is happy to present the configurable CrimsonKiller.

Config

Note: All JSON config files will automatically reload on server when changed without requiring server restart or any commands in-game.

CrimsonKiller.cfg

Your cfg file is the basic configuration of how CrimsonKiller will behave on the server and what messages will trigger kill feed to appear under what scenarios. Make sure to double check that default settings are what you want or change them to better suit your server's needs.

General Config - Provides toggles for each of the kill feed messages
## If true the mod will be usable; otherwise it will be disabled.
# Setting type: Boolean
# Default value: true
Toggle = true

## If true, the downed message will be sent.
# Setting type: Boolean
# Default value: true
ToggleDowned = true

## If true, the killed message will be sent.
# Setting type: Boolean
# Default value: true
ToggleKilled = true

## If true, the kill stolen message will be sent.
# Setting type: Boolean
# Default value: true
ToggleKillStolen = true

## If true, the grief downed message will be sent. Replaces the normal downed message if both messages are enabled and a player is downed by grief.
# Setting type: Boolean
# Default value: true
ReplaceGriefDowned = true

## If true, the grief killed message will be sent. Replaces the normal killed message if both messages are enabled and a player is killed by grief.
# Setting type: Boolean
# Default value: true
ReplaceGriefKill = true

## If true, the grief kill stolen message will be sent. Replaces the normal kill stolen message if both messages are enabled and a kill of an offline player is stolen by grief.
# Setting type: Boolean
# Default value: true
ReplaceGriefKillSteal = true

## If true, the offline downed message will be sent. Replaces the normal downed message if both messages are enabled and an offline player is downed.
# Setting type: Boolean
# Default value: true
ToggleOfflineDowned = true

## If true, the offline killed message will be sent. Replaces the normal killed message if both messages are enabled and an offline player is killed.
# Setting type: Boolean
# Default value: true
ToggleOfflineKill = true

## If true, the offline kill stolen message will be sent. Replaces the normal kill stolen message if both messages are enabled and a kill of an offline player is stolen
# Setting type: Boolean
# Default value: true
ToggleOfflineKillSteal = true

## If true, the first V Blood kill message will be sent.
# Setting type: Boolean
# Default value: true
ToggleFirstVBloodKill = true

## If true, the V Blood kill message will be sent.
# Setting type: Boolean
# Default value: true
ToggleVBloodKill = true
Options - Optional behaviour changes for specific messages & parameters
## If true, the region will be hidden from messages during Raid Time.
# Setting type: Boolean
# Default value: true
RaidsHideRegion = true

## The amount of seconds to delay PvP messages by. Set to 0 to disable.
# Setting type: Int32
# Default value: 0
DelayPvPMessages = 0

## The amount of seconds to delay V Blood kill messages by. Set to 0 to disable.
# Setting type: Int32
# Default value: 0
DelayVBloodMessages = 0

## The level difference required between the griefer’s record level and the victim’s level to trigger a grief message.
# Setting type: Int32
# Default value: 10
GriefDifference = 10

## The level difference required between the griefer’s record level of 91 (max level) and the victim’s level to trigger a grief message.
# Setting type: Int32
# Default value: 5
GriefDifferenceFromMax = 5
Parameters - Embed formatting in individual parameters for consistent text styling
## Formatting for {player.name}, {killer.name}, {steal.name}. Note: prefix will be replaced by the target player type.
# Setting type: String
# Default value: <color=#def>{prefix.name}</color>
PlayerNames = <color=#def>{prefix.name}</color>

## Formatting for {player.currentLv}, {killer.currentLv}, {steal.currentLv}. Note: prefix will be replaced by the target player type.
# Setting type: String
# Default value: <color=#fcffdd>({prefix.currentLv})</color>
PlayerCurrentLevel = <color=#fcffdd>({prefix.currentLv})</color>

## Formatting for {player.recordLv}, {killer.recordLv}, {steal.recordLv}. Note: prefix will be replaced by the target player type.
# Setting type: String
# Default value: <color=#e84343>({prefix.recordLv})</color>
PlayerRecordLevel = <color=#e84343>({prefix.recordLv})</color>

## Formatting for {player.clanName}, {killer.clanName}, {steal.clanName}. Note: prefix will be replaced by the target player type.
# Setting type: String
# Default value: <color=#f5ddff>{prefix.clanName}</color>
ClanNames = <color=#f5ddff>{prefix.clanName}</color>

## Formatting for {player.clanTag}, {killer.clanTag}, {steal.clanTag}. Note: Clan tags include brackets by default.
# Setting type: String
# Default value: <color=#f5ddff>{prefix.clanTag}</color>
ClanTags = <color=#f5ddff>{prefix.clanTag}</color>

## Formatting for {vblood.short}. Note: V Blood names can be changed in BepInEx/configs/VAMP/Names_VBloods.json.
# Setting type: String
# Default value: <b>{vblood.short}</b>
VBloodsShort = <b>{vblood.short}</b>

## Formatting for {vblood.long}, {vblood}. Note: V Blood names can be changed in BepInEx/configs/VAMP/Names_VBloods.json.
# Setting type: String
# Default value: <b>{vblood.long}</b>
VBloodsLong = <b>{vblood.long}</b>

## Formatting for {region.long}, {region}. Note: Region names can be changed in BepInEx/configs/VAMP/Names_Regions.json.
# Setting type: String
# Default value:  in <i>{region.long}</i>
RegionLong = in <i>{region.long}</i>

## Formatting for {region.short}. Note: Region names can be changed in BepInEx/configs/VAMP/Names_Regions.json.
# Setting type: String
# Default value: [<i>{region.short}</i>]
RegionShort = [<i>{region.short}</i>]
StreaksAndMulti - Settings for Multi-Kill and Kill Streaks
## If true, the kill streak messages will be sent.
# Setting type: Boolean
# Default value: true
ToggleKillStreaks = true

## If true, the multi kill messages will be sent.
# Setting type: Boolean
# Default value: false
ToggleMultiKills = false

## The time in seconds for the kill streak to reset. Set to -1 to disable.
# Setting type: Int32
# Default value: -1
TimeForKillStreakReset = -1

## The time in seconds for the multi kill streak to reset. Set to -1 to disable.
# Setting type: Int32
# Default value: 180
TimeForMultiKillReset = 180

## If true, the kill streak ended messages will be sent.
# Setting type: Boolean
# Default value: true
ToggleKillStreakEndedMessage = true
CrimsonKiller/messages.json

This is the file that formats the messages. Here you can change the text responses to your needs and level of flavor or simplicity. Check the list of valid parameters at the bottom of this section and remember to customize them to your likings in the Parameters section of the cfg file. As well note that text json files will support any valid Unity Rich Text tags.

{
  "Downed": "{killer.clanTag} {killer.name} ({killer.currentLv}) has downed {died.clanTag} {died.name} ({died.currentLv})",
  "Killed": "{killer.clanTag} {killer.name} ({killer.currentLv}) has killed {died.clanTag} {died.name} ({died.currentLv})",
  "KillStolen": "{steal.clanTag} {steal.name} ({steal.currentLv}) stole the kill on {died.clanTag} {died.name} ({died.currentLv}) from {killer.clanTag} {killer.name}",
  "GriefDowned": "{killer.clanTag} {killer.name} ({killer.currentLv}/{killer.recordLv}) has downed {died.clanTag} {died.name} ({died.currentLv}/{died.recordLv})",
  "GriefKilled": "{killer.clanTag} {killer.name} ({killer.currentLv}/{killer.recordLv}) has killed {died.clanTag} {died.name} ({died.currentLv}/{died.recordLv})",
  "GriefKillStolen": "{steal.clanTag} {steal.name} ({steal.currentLv}/{steal.recordLv}) stole the kill on {died.clanTag} {died.name} ({died.currentLv}/{died.recordLv}) from {killer.clanTag} {killer.name} ({killer.currentLv}/{killer.recordLv})",
  "OfflineDowned": "{killer.clanTag} {killer.name} ({killer.currentLv}) downed {died.clanTag} {died.name} ({died.currentLv}) while they slumbered",
  "OfflineKilled": "{killer.clanTag} {killer.name} ({killer.currentLv}) killed {died.clanTag} {died.name} ({died.currentLv}) while they slumbered",
  "OfflineKillStolen": "{steal.clanTag} {steal.name} ({steal.currentLv}) stole the kill on {died.clanTag} {died.name} ({died.currentLv}) from {killer.clanTag} {killer.name}",
  "FirstVBloodKill": "{killer.name} ({killer.currentLv}) was the first to slay {vblood.long}!",
  "VBloodKill": "{killer.name} ({killer.currentLv}) has slain {vblood.short}!",
  "KillStreakEnded": "{died.name}'s kill streak ended!"
}
CrimsonKiller/toggle_vbloods.json

If you're using the ToggleVBloodKill and/or the ToggleFirstVBloodKill messages this list provides you with individual toggles for each V Blood to configure which ones will trigger the messages.

{
  "1124739990": true, /* Keely the Frost Archer */
  "2122229952": true, /* Rufus the Foreman */
  "-2025101517": true, /* Errol the Stonebreaker */
  "763273073": true, /* Lidia the Chaos Archer */
  "577478542": true, /* Goreswine the Ravager */
  "1106149033": true, /* Grayson the Armourer */
  "-2039908510": true, /* Nibbles the Putrid Rat */
  "1896428751": true, /* Clive the Firestarter */
     [...]
}
CrimsonKiller/kill_streaks.json

Kill Streaks will be sent when a player reaches the Key for the corresponding Value.

It will reset their streaks according to the TimeForKillStreakReset setting unless set to -1.

[
  {
    "Key": 3,
    "Value": "{killer.name} is on a Killing Spree!"
  },
  {
    "Key": 4,
    "Value": "{killer.name} is Dominating!"
  },
  {
    "Key": 5,
    "Value": "{killer.name} is on a Rampage!"
  },
  [...]
]
CrimsonKiller/multi_kills.json

Multi-Kills are similair to Kill Streaks however are intended to be for successive kills in a row within a short time frame set with the TimeForMultiKillReset setting unless set to -1.

[
  {
    "Key": 2,
    "Value": "{killer.name} got a Double Kill!"
  },
  {
    "Key": 3,
    "Value": "{killer.name} got a Multi Kill!"
  },
  {
    "Key": 4,
    "Value": "{killer.name} got a Mega Kill!"
  },
  [...]
]
VAMP/Names_VBloods.json

VAMP provides a list of every V Blood with both Long and Short display names. You can customize them in this one file and every VAMP dependent mod will consistently use these configured names.

{
  "1124739990": {
    "Long": "Keely the Frost Archer",
    "Short": "Keely"
  },
  "2122229952": {
    "Long": "Rufus the Foreman",
    "Short": "Rufus"
  },
  [...]
}
VAMP/Names_VBloods.json

VAMP also provides a configurable display name list for all the World Regions.

{
  "CursedForest": {
    "Long": "Cursed Forest",
    "Short": "Forest"
  },
  "SilverlightHills": {
    "Long": "Silverlight Hills",
    "Short": "Silverlight"
  },
  "DunleyFarmlands": {
    "Long": "Dunley Farmlands",
    "Short": "Dunley"
  },
  [...]
}

Parameter List

Killer/Steal/Died Prefix

{killer.name} - SkyTech6

{killer.clanTag} - GG

{steal.clanName} - GoodGamers

{died.currentLv} - 47

{killer.recordLv} - 91

Note: Steal is only present in KillStolen message types.

V Blood Prefix

{vblood.long} - Keely the Frost Archer

{vblood.short} - Keely

Region Prefix

{region.long} - Silverlight Hills

{region.short} - Silverlight

Parameter Embedding

You can embed many things into parameters using the Parameters options in CrimsonKiller.cfg for example you can set it to have Rich Text values or even additional words.

A common use case for this is to conditionally hide formatting words in the Region parameters.

For example, RegionLong = in <i>{region.long}</i> would format into in Silverlight Hills for kills in that region. But if RaidsHideRegion = true, kill feed messages sent during the raid window will exclude the word "in" since it is embedded into the region parameter.

Installation

  • Install BepInEx
  • Install VAMP
  • Extract CrimsonKiller.dll into (VRising server folder)/BepInEx/plugins

Tech Support

Join my Modding Discord for help with issues or anything modding related!

Support CrimsonMods

Want to support my V Rising Mod development?

Buy/play my games!

Train Your Minibot

Boring Movies FREE TO PLAY

git gud WISHLIST COMING SOON

Donations Accepted

ko-fi

This mod was a paid creation. If you are looking to hire someone to make a mod for any Unity game reach out to me on Discord! (skytech6)


Want to Experience the Best of Crimson?

Join The Cursed Collective V Rising servers to play their exclusive CrimsonMods such as Raid Guard, Shard Wars, and more!

Thunderstore development is made possible with ads. Please consider making an exception to your adblock.
Thunderstore development is made possible with ads. Please consider making an exception to your adblock.
Thunderstore development is made possible with ads. Please consider making an exception to your adblock.