Description
Killstreaks Plugin for Hytale
A powerful killstreak reward system for Hytale servers. Players earn awesome rewards as they get consecutive kills without dying!
What Does This Plugin Do?
When players kill other players, they build up a "killstreak". As they reach certain kill counts, they unlock rewards like:
- Weapons and armor
- Speed boosts
- Health regeneration
- Stamina restoration
- And more!
When a player dies, their streak resets to zero and they lose their active buffs.
Features
- Tiered Rewards - Create as many tiers as you want with custom kill requirements
- Multiple Reward Types - Give items, speed boosts, healing, stamina regen, and more
- Repeating Buffs - Set up rewards that tick every few seconds (like health regen every 3 seconds)
- Until Death Rewards - Some rewards can last until the player dies (even if they log out and back in!)
- Chat Prefixes - Show the player's current tier in chat:
[Berserkr] PlayerName: hello - Chat Suffixes - Show the player's all-time best killstreak:
PlayerName[30]: hello - Custom Icons - Each tier can have its own icon in the rewards menu
- Leaderboards - See who has the best killstreaks with
/ks top - Easy Configuration - Change everything in a simple text file
Quick Start
- Put
Killstreaks-1.1.0.jarin your server'smods/folder - Start the server - it creates a default config automatically
- Play! Get 3 kills to unlock your first tier
- Type
/ks rewardsto see all available tiers
Commands
| Command | What It Does |
|---|---|
/ks | Shows your current killstreak |
/ks help | Shows all commands |
/ks stats | Shows your killstreak statistics |
/ks stats <player> | Shows another player's stats |
/ks top | Shows the all-time best killstreaks |
/ks rewards | Opens a menu showing all reward tiers |
/ks reload | Reloads the config file (admin only) |
/ks reset <player> | Resets a player's streak (admin only) |
/ks addkill <player> | Adds a kill to a player (admin only) |
/ks testreward <tier> <player> | Tests a reward on a player (admin only) |
Files and Folders
Everything is stored in plugins/killstreaks/:
plugins/killstreaks/
├── config.properties <- All your settings go here!
├── data.properties <- Stores all-time best killstreaks
└── active_rewards.properties <- Tracks active "until death" rewards
config.properties
This is where you set up everything - tiers, rewards, colors, and more.
data.properties
This file automatically saves each player's best killstreak ever. You don't need to edit this.
active_rewards.properties
This tracks rewards that last "until death" so they survive even if the player logs out.
Configuration Guide
Open plugins/killstreaks/config.properties in any text editor.
General Settings
These control the whole plugin:
| Setting | What It Does | Options |
|---|---|---|
enabled | Turn the plugin on or off | true or false |
broadcast.chat | Announce killstreaks in chat | true or false |
broadcast.title | Show big title when reaching a tier | true or false |
theme.name | Name of your theme (just for display) | Any text |
debug.logging | Show debug messages in console | true or false |
Example:
enabled=true
broadcast.chat=true
broadcast.title=true
theme.name=Nordic
debug.logging=false
Tip: Set debug.logging=false on live servers to reduce console spam!
Chat Prefix Settings
The prefix shows the player's CURRENT tier name in chat. It disappears when they die.
| Setting | What It Does | Default |
|---|---|---|
prefix.chat.enabled | Show tier name before player name | true |
prefix.bracket.color | Color of the [ ] brackets | #FFD700 (gold) |
prefix.name.bold | Make the tier name bold | true |
What it looks like: [Berserkr] PlayerName: hello everyone
Chat Suffix Settings
The suffix shows the player's ALL-TIME BEST killstreak. It NEVER resets!
| Setting | What It Does | Default |
|---|---|---|
suffix.chat.enabled | Show best killstreak after player name | true |
suffix.bracket.color | Color of the [ ] brackets | #AAAAAA (gray) |
suffix.number.color | Color of the number | #FFAA00 (orange) |
suffix.number.bold | Make the number bold | true |
What it looks like: PlayerName[30]: hello everyone
Both together: [Berserkr] PlayerName[30]: hello everyone
Creating Tiers
Each tier uses the format tier.X.property where X is the tier number (1, 2, 3, etc).
Basic Tier Settings
Every tier needs these:
| Setting | What It Does | Example |
|---|---|---|
tier.X.kills | Kills needed to reach this tier | 3 |
tier.X.name | Name of the tier | Berserkr |
tier.X.meaning | Description/subtitle | Berserker |
tier.X.color | Color (hex code with #) | #FF6B35 |
tier.X.description | What the reward does | +20% Speed |
Example - A basic tier:
tier.1.kills=3
tier.1.name=Kringla
tier.1.meaning=Circle/Beginning
tier.1.color=#C0C0C0
tier.1.description=Random Copper Weapon
Giving Items
Give players weapons, armor, or other items!
| Setting | What It Does |
|---|---|
tier.X.items | List of items (comma-separated) - picks one randomly |
tier.X.itemQuantity | How many items to give |
Example - Give a random copper weapon:
tier.1.items=Weapon_Sword_Copper,Weapon_Axe_Copper,Weapon_Mace_Copper
tier.1.itemQuantity=1
Example - Give 2 pieces of adamantite armor:
tier.6.items=Armor_Adamantite_Chest,Armor_Adamantite_Head,Armor_Adamantite_Legs
tier.6.itemQuantity=2
Giving Buffs (Commands)
Buff players with speed, healing, or stat restoration!
| Setting | What It Does |
|---|---|
tier.X.commands | Commands to run (use ; to separate multiple) |
tier.X.commandInterval | Milliseconds between repeats (0 = run once) |
tier.X.commandDuration | Total duration in SECONDS |
tier.X.untilDeath | If true, lasts until the player dies |
Available commands:
speed {player} 1.2- Make player 20% faster (1.0 = normal)heal {player} 5- Heal 5 healthrestore {player} <stat> <amount>- Restore a specific stat
Available stats for restore command:
| Stat | Aliases | Example |
|---|---|---|
| Health | health, hp | restore {player} health 10 |
| Stamina | stamina, stam | restore {player} stamina 15 |
| Mana | mana, mp | restore {player} mana 20 |
| Oxygen | oxygen, air, breath | restore {player} oxygen 50 |
| Signature Energy | signatureenergy, energy, sig | restore {player} energy 25 |
| Ammo | ammo | restore {player} ammo 10 |
The {player} part gets replaced with the player's name automatically!
Example: One-Time Speed Boost
Speed boost that lasts 3 minutes:
tier.2.commands=speed {player} 1.1
tier.2.commandInterval=0
tier.2.commandDuration=180
commandInterval=0means "run once" (not repeating)commandDuration=180means it lasts 180 seconds (3 minutes)
Example: Repeating Health Regen
Heal 3 HP every 5 seconds for 5 minutes:
tier.4.commands=heal {player} 3
tier.4.commandInterval=5000
tier.4.commandDuration=300
commandInterval=5000means "every 5000 milliseconds" (5 seconds)commandDuration=300means "for 300 seconds total" (5 minutes)
Example: Until Death Buffs
Speed, healing, AND stamina that lasts until the player dies:
tier.5.commands=speed {player} 1.3;heal {player} 5;restore {player} stamina 10
tier.5.commandInterval=5000
tier.5.commandDuration=0
tier.5.untilDeath=true
- Multiple commands are separated by
; untilDeath=truemeans it lasts until they die (even if they log out!)commandDuration=0when using untilDeath (duration doesn't matter)
Custom Icons
Set a custom icon for each tier in the /ks rewards menu:
| Setting | What It Does |
|---|---|
tier.X.iconItemId | Item to use as the icon |
Example:
tier.6.iconItemId=Armor_Adamantite_Head
Tip: If you don't set an icon, the first item from tier.X.items is used automatically!
Complete Tier Example
Here's a fully configured tier with everything:
# Tier 6: Ragnarok - The ultimate tier!
tier.6.kills=30
tier.6.name=Ragnarok
tier.6.meaning=Twilight of Gods
tier.6.color=#FFD700
tier.6.description=Full God Mode until death
# Give 2 pieces of Adamantite gear
tier.6.items=Armor_Adamantite_Chest,Armor_Adamantite_Head,Armor_Adamantite_Legs,Armor_Adamantite_Hands
tier.6.itemQuantity=2
# Buffs that repeat every 3 seconds until death
tier.6.commands=speed {player} 1.5;heal {player} 10;restore {player} stamina 15
tier.6.commandInterval=3000
tier.6.commandDuration=0
tier.6.untilDeath=true
# Custom icon in the menu
tier.6.iconItemId=Armor_Adamantite_Head
Color Codes
Use hex color codes for all colors. Here are some popular ones:
| Color | Code |
|---|---|
| Gold | #FFD700 |
| Silver | #C0C0C0 |
| Bronze | #B8860B |
| Red | #FF0000 |
| Dark Red | #8B0000 |
| Orange | #FF6B35 |
| Blue | #4A90D9 |
| Green | #00FF00 |
| White | #FFFFFF |
| Gray | #AAAAAA |
Important: Always put # before the color code in the config file!
Default Tiers (Nordic Theme)
The plugin comes with these tiers pre-configured:
| Tier | Kills | Name | Meaning | Reward |
|---|---|---|---|---|
| 1 | 3 | Kringla | Circle/Beginning | Random Copper Weapon |
| 2 | 5 | Einherjar | Single Fighter | +10% Speed + Bronze Weapon |
| 3 | 10 | Berserkr | Berserker | +20% Speed + Stamina Regen |
| 4 | 15 | Drengr | Warrior | Health Regen + Iron Weapon |
| 5 | 20 | Ulfhednar | Wolf-Warrior | All Buffs + Steel Sword (until death) |
| 6 | 30 | Ragnarok | Twilight of Gods | Full God Mode (until death) |
Feel free to change these or add your own!
Tips and Tricks
- Test Before Going Live - Use
/ks testreward <tier> <playername>to test rewards - Turn Off Debug Logs - Set
debug.logging=falseon production servers - Balance Your Tiers - Start with small rewards, make high tiers really powerful
- Use Until Death Sparingly - Save it for high kill counts (15+) to keep it special
- Reload Without Restart - Use
/ks reloadafter editing the config
Troubleshooting
Chat prefix not showing?
- You need at least 3 kills to reach the first tier
Rewards not working?
- Check that
enabled=truein the config - Use
/ks testrewardto test manually - Set
debug.logging=trueand check console for errors
Wrong icon showing?
- Make sure
iconItemIduses the exact item ID from the game - The property name is lowercase:
iconItemId(notIconItemId)
Config not loading?
- Check for typos in property names
- Make sure every line has an
=sign - Use
/ks reloadafter making changes
Need Help?
- Type
/ks helpin-game for command help - Check the console for error messages (set
debug.logging=true) - Make sure your config file has no typos
Version: 1.1.0
Requires: Hytale Server


