## 📌
> [!NOTE]
> This repository is a fork of the [project](https://github.com/jakubbartosik/dRandomSkills) created by [Jakub Bartosik (D3X)](https://github.com/jakubbartosik).
## 💡 About
jRandomSkills is a plugin for CounterStrike 2 that brings chaos and fun to gameplay! In each round, you randomly receive one of the unique skills - from invisibility and explosive shots to camera manipulation. Surprise your opponents, take control of the match, and discover dozens of creative abilities that transform the game's dynamics!
#### Choose language:
## 💬 Available languages
- **English**
- **Polish**
- **French** [by: [@felyjyn](https://github.com/felyjyn)]
- **Portuguese (Brazilian)** [by: [@vinicius-trev](https://github.com/vinicius-trev)]
- **German** [by: [@Enrory](https://github.com/Enrory)]
- **Turkish** [by: [@brkvlr](https://github.com/brkvlr), [@ByDexterTR](https://github.com/ByDexterTR)]
- **Russian** [by: [@213sdfsdgf](https://github.com/213sdfsdgf)]
- **Simplified Chinese** [by: [@Ericzzrbb](https://github.com/Ericzzrbb)]
## 🖼️ Preview


## 🌐 Test Server
Join the 3v3 test server and try out the jRandomSkills plugin:
- **Address**: `jRandomSkills@pukawka.pl`
- **Password**: `public`
- **Opening Hours**: `22:00-17:00 UTC`
- **Connect URL**: `steam://connect/51.38.122.215:27215/public`
- **Connect**: `connect 51.38.122.215:27215; password public`
Buying a server on pukawka? Use my [referral code](https://pukawka.pl/pp,juzlus.html).
## ✨ Current Skills (141)
The table below lists all available skills in the game, along with their descriptions.
| Name | Description | Cooldown / Range |
| ----------------- | -------------------------------------------------------------------------------------------------- | ---------------- |
| Aimbot | Every bullet you hit counts as a headshot | - |
| Aim Lock | Click [css_useSkill] to lock your aim on the nearest enemy | 20 s |
| Anomaly | Click [css_useSkill] to rewind a few seconds back in time | 15 s |
| Anti-Flash | You are immune to flashbangs, and your flashbangs last 7 seconds | - |
| Iron Head | You take no damage from headshots | - |
| Zone Reaper | You can choose a bomb site to deactivate | - |
| Armored | You have a random damage taken multiplier | (0.65 - 0.85)x |
| Assassin | You deal increased damage to enemies from behind | - |
| Astronaut | You receive a random gravity value at the start of the round | (0.1 - 0.7)x |
| Bankrupt | Choose the player who will lose all their money | - |
| Baseball Player | Your decoy bounces off walls and instantly kills an enemy on impact | - |
| Berserker | You deal more damage and move faster as your health gets lower | - |
| Blademaster | While holding a knife, you have a high chance to deflect a shot | - |
| Blast Shot | Press Attack2 with the MP5 to fire an HE grenade | 10 s |
| Bunny | You get auto "BunnyHop" | - |
| C4 Camouflage | You are invisible while holding the bomb | - |
| Careful Bullets | Select a player who takes damage for every missed shot | - |
| Catapult | You have a random chance to launch an enemy upwards | (20 - 40)% |
| Chicken | You get a chicken model + 10% faster movement - 50 HP | - |
| Chillout | Planting the bomb takes significantly longer | - |
| Cutter | Instant kill with a knife | - |
| Cypher | Click [css_useSkill] to create/switch to a camera | 30 s |
| Darkness | Applies a darkness effect to a chosen enemy | - |
| Deactivator | Choose a player whose skill you want to disable | - |
| Deaf | Choose a player to mute all sounds for | - |
| Death Bomb | You explode upon death, killing nearby players | - |
| Demon Eye | You deal damage to every enemy you are looking at | 2 s |
| Disarmament | You have a random chance to make an enemy drop their weapon on hit | (20 - 35)% |
| Rangefinder | You can see the distance to the nearest enemy | - |
| Dash | Perform a second jump to dash | - |
| Dracula | Hitting an enemy restores health equal to a percentage of the damage dealt | - |
| Duplicator | Choose a player to copy their skill | - |
| Dwarf | Random character size at the start of the round | (60 - 95)% |
| Enemy Spin | You have a random chance to turn an enemy 180° when hitting them | (20 - 40)% |
| Enemy Spawn | Click [css_useSkill] to teleport to the enemy spawn | 15 s |
| Expensive Ammo | A chosen enemy has to pay for every shot | - |
| Exploding Barrel | Click [css_useSkill] to place a barrel that explodes when shot | 20 s |
| Explosive Shot | Random chance to fire an explosive bullet while shooting | (15 - 30)% |
| Falcon Eye | Click [css_useSkill] to activate a bird's-eye view camera | - |
| Fastreload | Click [css_useSkill] to reload the weapon you are currently holding | - |
| Fire Rain | Throw a decoy to call down a rain of Molotovs | - |
| Flash | Random player speed at the beginning of the round | (1.2 - 3.0)x |
| Flashlight | Click [css_useSkill] to turn the flashlight on or off. Its light can blind enemies | 2 s |
| Fortnite | Click [css_useSkill] to create a destructible barricade | 2 s |
| Fragile Bomb | Shooting the bomb damages it | - |
| Friendly Fire | Shooting teammates heals them | - |
| Freezing Decoy | Your decoy freezes all nearby players | - |
| Gambler | Select a skill from the list provided | - |
| Ghost | You are completely invisible | - |
| Giant | Enlarge an enemy of your choice | (110 - 140)% |
| Glaz | You can see through smoke grenades | - |
| Glitch | Disables the radar for a chosen enemy | - |
| Glue | Your grenades stick to walls | - |
| God Mode | Click [css_useSkill] to become immortal for a short time | 30 s |
| Grenadier | You have infinite HE grenades | - |
| Healing Chicken | Your chickens heal you while you are nearby | 1 s = 5 HP |
| Healing Smoke | Your smoke grenades heal | - |
| Hermit | Killing restores ammo and a portion of health | - |
| Holy Hand Grenade | Your HE grenades deal double damage and have double range | - |
| Homing Grenades | Your grenades (except smokes) are attracted to enemies | - |
| Hot Bomb | As long as you are alive, the bomb deals damage to its carrier | - |
| Hologram | Click [css_useSkill] to control your hologram for a few seconds | 30 s |
| Illiterate | As long as you are alive, your enemies cannot read | - |
| Illusionist | Click [css_useSkill] to deploy a replica that walks straight ahead | 30 s |
| Impostor | You start the round with an enemy player model | - |
| Infinite Ammo | You receive infinite ammo for all your weapons | - |
| Tracker | Choose a player who will leave a trail behind them | - |
| Jammer | Choose a player to disable their crosshair | - |
| Jester | In jester mode, you cannot get or take any damage. This mode changes every few seconds | (10 - 25) s |
| Jetkick | Select a player to jetkick | - |
| Legless | Choose a player who cannot jump | - |
| Jump Curse | A chosen enemy jumps whenever one of their teammates jumps | - |
| Jumping Jack | Jumping restores health | - |
| Killer Flash | Anyone fully blinded by your flashbang dies (including you) | - |
| Knockback | Firing while airborne pushes you backwards | - |
| Last Gasp | After you die, you deal damage to the enemy who killed you | 30 HP |
| Life Swap | Choose a player to swap health with | - |
| Long Knife | A primary knife attack deals damage regardless of distance | - |
| Long Zeus | Zeus deals damage regardless of distance | - |
| Magnetic Decoy | Your decoy attracts nearby players towards itself | - |
| Magneto | All enemy grenades are repelled away from you | - |
| Magnifier | Forces the enemy's screen to zoom in, reducing their field of view | - |
| Medic | Click [css_useSkill] to use a healing charge that restores 50 health | 1 s |
| Bomb Miner | Your HE grenade only explodes when there is an enemy nearby | - |
| Taxman | Choose a player to swap money with | - |
| Nightmare | Force a chosen enemy to experience a terrifying vision | - |
| Ninja | Standing still increases your invisibility by 33%, crouching by 33%, and holding a knife by 33% | - |
| No-Nades | Grenades deal no damage to you | - |
| Focus | No recoil while shooting | - |
| NoClip | Click [css_useSkill] to enable noclip for a short time | 30 s |
| One-Shot | Hitting an enemy instantly kills them | - |
| Head Only | You only take damage to the head | - |
| Pawel Jumper | You get an extra jump | - |
| Phoenix | You have a random chance to respawn after death | (20 - 40)% |
| Psychic Defusing | When you are near the bomb, you start defusing it | 10 s |
| Pilot | Fly for a limited time. Hold [USE - E] to fly | - |
| Free Planter | You can plant the bomb anywhere, with a detonation time of 60 seconds | - |
| Poison | Choose a player who will take damage every few seconds | - |
| No Rifles | Choose a player who cannot use rifles | - |
| Prosthesis | Arms and legs are bulletproof | - |
| Pusher | You have a random chance to push an enemy back when hitting them | 100% |
| Pyro | Molotov restores health | - |
| Rapid Fire | All bullets are fired very quickly | - |
| Radar Hack | Enemies are visible on the radar | - |
| Rambo | You receive a random amount of health at the start of the round | +(50 - 501) HP |
| Random Weapon | Click [css_useSkill] to receive a random weapon | 15 s |
| Re-Zombie | After death, you respawn as a zombie with increased health and no weapons | - |
| Reactive Armor | Armor absorbs the first damage taken | 15 s |
| Regeneration | You restore health every few seconds | - |
| Replicator | Click [css_useSkill] to create a replica that deals damage on hit | 15 s |
| Retreat | Click [css_useSkill] to return to spawn | 15 s |
| Return to Sender | The first hit on an enemy sends them back to their spawn | - |
| Rich Boy | You receive a random amount of money at the start of the round | (5000 - 15000)$ |
| Robin Hood | Dealing damage to an enemy steals their money | - |
| Rubber Bullets | Your bullets significantly slow down players | - |
| Sapper | You can plant and defuse bombs faster | - |
| Second Chance | After death, you respawn with the same amount of health | - |
| Shade | You teleport behind the back of a hit enemy | - |
| Short Fuse | The bomb explodes much faster | - |
| Silent | Your footsteps and jumps are silent to other players | - |
| Smoker | Your smoke grenades never run out | - |
| Sniper Elite | Click [css_useSkill] to swap your current weapon for an AWP | 0 s |
| Soldier | You have a random damage multiplier | (1.15 - 1.35)x |
| Soundmaker | Every now and then, you hear player screams | 2 s |
| Spectator | Click [css_useSkill] to spectate a random enemy | 0 s |
| Position Swap | Click [css_useSkill] to swap places with a random enemy | 30 s |
| Take Ammo | Click [css_useSkill] to take the active weapon's magazine from a random enemy | - |
| Team Teleport | Press [css_useSkill] to teleport to the teammate you're looking at. | 15 s |
| Teleporter | You swap places with the hit enemy | - |
| Thief | You can steal a skill from a chosen player | - |
| Third Eye | Click [css_useSkill] to activate third-person view | 0 s |
| Thorns | Your opponent will receive a portion of the damage that they inflicted on you | - |
| Throwing Knife | Click [css_useSkill] to throw a knife. But watch out for others | - |
| Toxic Smoke | Your smoke grenades deal damage | - |
| Tripwire | Click [css_useSkill] to string a wire between two walls. Enemies who touch it appear on your radar | 20 s |
| Wallhack | You can see enemies through walls | - |
| Watchmaker | Every grenade throw alters the round time | - |
| Weapon Swap | Click [css_useSkill] to swap weapons with a random enemy | 30 s |
| Weightlessness | Your grenades are not affected by gravity and fly faster | - |
| Wild Throws | Choose a player who will have trouble throwing grenades | - |
| Zeus | Zeus x27 instantly recharges | - |
## 💻 Installation
1. install / buy a **CS2 server**.
- Good tutorial on how to create your own CS2 server [[Video]](https://www.youtube.com/watch?v=1ZrEn0CiMi4&ab_channel=TroubleChute), [[Website]](https://hub.tcno.co/games/cs2/dedicated_server/).
2. Install **Metamod**.
- Download [Metamod:Source 2.x](https://www.sourcemm.net/downloads.php/?branch=master)
- Extract it to the `C2Server/game/csgo/` folder.
- Edit the `gameinfo.gi` file by adding a new line
```json
Game_LowViolence csgo_lv // Perfect World content override
Game csgo/addons/metamod // <-- Line to add
Game csgo
```
3. Install **CounterStrikeSharp**.
- Download [CounterStrikeSharp-With-Runtime](https://github.com/roflmuffin/CounterStrikeSharp/releases).
- Extract it to the `C2Server/game/csgo/` folder.
4. Install **Ray-Trace**
- Download [RayTrace-CSS-API](https://github.com/FUNPLAY-pro-CS2/Ray-Trace/releases)
- Extract folder `conterstrikesharp` to the `CS2Server/game/csgo/addons/` folder.
- Download [RayTrace-MM](https://github.com/FUNPLAY-pro-CS2/Ray-Trace/releases)
- Extract it to the `CS2Server/game/csgo/addons/` folder.
5. Install **jRandomSkills**
- Download [jRandomSkills](https://github.com/Juzlus/jRandomSkills/releases)
## > Server Commands
> [!TIP]
> **Bind to use skills:** `bind x css_useSkill`
The table below lists all available commands in the game, along with their descriptions.
| Command | Example | Description | Permissions |
| - | - | - | - |
| `!setskill ` | `!setskill Juzlus Aimbot` | Giving skill to a player | `@jRandomSkills/admin` |
| `!lang ` | `!lang en` | Change the language | - |
| `!skills` | `!skills` | List of skills | - |
| `!map ` | `!map de_nuke` | Change map | `@jRandomSkills/admin` |
| `!map ` | `!map 3332005394` | Change map from workshop | `@jRandomSkills/admin` |
| `!start` | `!start` | Start game with conditions: `mp_forcecamera 0, mp_freezetime 15, mp_overtime_enable 1, sv_cheats 0` | `@jRandomSkills/admin` |
| `!start sv` | `!start sv` | Start the game with conditions: `mp_forcecamera 0, mp_freezetime 0, mp_overtime_enable 1, sv_cheats 1` | `@jRandomSkills/admin` |
| `!console ` | `!console sv_cheats 1` | Run a command on the server | `@jRandomSkills/owner` |
| `!swap` | `!swap` | Switch sides | `@jRandomSkills/admin` |
| `!shuffle` | `!shuffle` | Randomly assign players to teams | `@jRandomSkills/admin` |
| `!pause` | `!pause` | Pause the game | `@jRandomSkills/admin` |
| `!heal` | `!heal` | Restore 100 health points | `@jRandomSkills/admin` |
| `!hud` | `!hud` | Enable/Disable hud | - |
| `!entity ` | `!entity 429` | Checking whether a given entity exists | `@jRandomSkills/owner` |
| `!setscore ` | `!setscore 10 7` | Set the game score | `@jRandomSkills/owner` |
| `!setstaticskill ` | `!setstaticskill Juzlus Aimbot` | Giving a player a permanent skill | `@jRandomSkills/admin` |
| `!setstaticskill None` | `!setstaticskill Juzlus None` | Back to normal | `@jRandomSkills/admin` |
| `!botplace [slot] [godmode]` | `!botplace 2 1` | Teleport a bot to your location | `@jRandomSkills/admin` |
| `!next_skill [idx]` | `!next_skill Juzlus` | Switch skill for a player (next, previous -1, or specific idx) | `@jRandomSkills/admin` |
| `!plantedbomb [time]` | `!plantedbomb 35` | Spawn a planted C4 bomb at your position with custom or default (40s) detonation time | `@jRandomSkills/admin` |
| `!sethealth ` | `!sethealth 150` | Set a specific health amount for yourself | `@jRandomSkills/admin` |
| `!reload` | `!reload` | Reload translations | - |
_Most commands require permissions, which must be set in the file: `game/csgo/addons/counterstrikesharp/configs/admins.json`_
## 🔑 Permissions
To grant administrative permissions in CounterStrikeSharp:
1. In the **`game/csgo/addons/counterstrikesharp/configs/`** folder, create a file named **`admins.json`**.
2. Add the following content to it:
```json
{
"Juzlus": {
"identity": "STEAM_0:0:94913632",
"flags": ["@jRandomSkills/admin", "@jRandomSkills/owner"]
}
}
```
You can find your `steamID` using the [steamidfinder](www.steamidfinder.com) website.
3. Save the file and restart the server to apply the changes.
## ⚙️ Configuration
All skills can be customized in the **`config.cfg`** / **`skillsInfo.json`** file located in the **`game/csgo/addons/counterstrikesharp/plugins/jRandomSkills/configs/`** folder.
- ##### config.json
```json
{
"Settings": {
"GameMode": 3, // Game mode:
// 0 - Random skills for each player (It can't be the same twice in a row)
// 1 - Same skills for the whole team
// 2 - Same skills for all players
// 3 - Random skills for each player (It can't be the same until the map changes)
// 4 - Random skills for each player (Full random)
// 5 - Debug: Skills are assigned in turn
"YourSkillChatInfo": true, // Show your skill in chat
"KillerSkillChatInfo": true, // Show killer's skill in chat
"TeamMateSkillChatInfo": true, // Show allies' skills in chat
"SummaryAfterTheRound": true, // Show summary of the last round
"EnableBotSkills": true, // Enable skills for bots
"EnableBotKickDebug": false, // Kick a random bot every 45s (for debug/testing)
"DebugMode": false, // Save debug logs (player events and plugin activity) to the Debug folder
"PerfMode": false, // Save performance measurements to the logs folder
"AlternativeSkillButton": null, // Possible buttons:
// null, "Attack", "Jump", "Duck", "Forward", "Back",
// "Use", "Cancel", "Left", "Right", "Moveleft",
// "Moveright", "Attack2", "Run", "Reload", "Alt1",
// "Alt2", "Speed", "Walk", "Zoom", "Weapon1",
// "Weapon2", "Bullrush", "Grenade1", "Grenade2",
// "Attack3", "Scoreboard", "Inspect"
"SkillTimeBeforeStart": 7.0, // How many seconds before freeze time ends should skills
// drawing be completed? (freezetime - SkillTimeBeforeStart)
"SkillHudDuration": -1.0, // How long should the HUD be visible for?
"SkillDescriptionDuration": 7.0, // How long should the skill description be visible for?
"DisplayAlwaysDescription":false,// Always display skill description (SkillDescriptionDuration = 9999)
"DisableSpectateHUD": false, // Disable HTML HUD when spectating
"HideHudForOtherPlugins": true, // Automatically hides HUD when another plugin uses it
"EnableFlashingHtmlHudFix": false,// Enable FlashingHtmlHudFix
"TraceRayBeam": false, // Enable trail visibility for 'Long Knife', 'Long Zeus'
"DisableHUDOnDeathPermission": "@jRandomSkills/death", // Disable the HUD after death for players with this permission
"DisableSkillsOnRoundEnd": false,// Disable all skills at the end of the round (when the summary is visible)
"CurseSkillPerPlayer": null, // Maximum number of effects per player
"LanguageSystem": {
"DefaultLangCode": "en", // Default language: en, pl, fr, pt-br, zh
"DisableGeoLite": false, // Disable player language search by geolocation GeoLite2 (MaxMind)
"LanguageInfos": [...] // Setting to change ISO languages to translations
},
"HtmlHudCustomisation": { // Settings for changing colours and font sizes
... // xxxl: 64px, xxl: 40px, xl: 32px
} // l: 24px, ml: 20px, m: 18px
... // sm: 16px, s: 12px, xs: 8px
},
```
- ##### skillsInfo.json
```json
[
{
"NeedsTeammates": false, // Requires other players on the team
"DisableOnFreezeTime": false, // Disable the skill during freeze time
"OnlyTeam": 0, // Skill availability:
// 0 - Everyone
// 2 - Terrorist
// 3 - CounterTerrorist
"Color": "#ff0000", // Skill color
"Active": true, // Enabled on startup
"Name": "Aimbot", // Skill name
"HudDuration": null, // Overrides the global SkillHudDuration for this skill.
// null = use SkillHudDuration from config.json,
// -1 = never hide the HUD,
// >= 0 = display duration in seconds.
"DescriptionHudDuration":null,// Overrides the global DescriptionHudDuration for this skill.
// null = use DescriptionHudDuration from config.json,
// -1 = never hide the description,
// >= 0 = display duration in seconds.
"RequiredPermission": "", // Required permission
"MaxPerServer": -1, // Maximum number of players allowed to have
// this skill on the server (-1 for unlimited)
"Rarity": "Common" // Rarity tier of the skill:
// Common (70x), Uncommon (14x),
// Rare (10x), Epic (5x), Legendary (1x)
},
...
]
```
- ##### playersLanguage.json
```json
{
"76561198150092992": "en", // "SteamID": "name of the translation file"
...
}
```
## 🔗 Credits
This plugin uses content from the following projects:
- [dRandomSkills](https://github.com/jakubbartosik/dRandomSkills) by [Jakub Bartosik (D3X)](https://github.com/jakubbartosik) - Random skills system
- [CS2TraceRay](https://github.com/schwarper/CS2TraceRay) by [schwarper](https://github.com/schwarper) - Old Trace Ray system
- [Ray-Trace](https://github.com/FUNPLAY-pro-CS2/Ray-Trace) by [SlynxCZ](https://github.com/SlynxCZ) - New Trace Ray system
- [CS2FlashingHtmlHudFix](https://github.com/girlglock/CS2FlashingHtmlHudFix) by [girlglock](https://github.com/girlglock) - A fix for window flickering
- [ChaseMod](https://github.com/ipsvn/ChaseMod/blob/master/Utils/Memory/CCSMatch.cs) by [ipsvn](https://github.com/ipsvn) - Round score management
- [WASDMenuAPI](https://github.com/Interesting-exe/WASDMenuAPI) by [Interesting-exe](https://github.com/Interesting-exe) - API to easily create WASD menus
- [GeoLocationLanguageManagerPlugin](https://github.com/aprox2/GeoLocationLanguageManagerPlugin) by [aprox2](https://github.com/aprox2) - Geolocation language manager
- [GeoLite2](https://dev.maxmind.com/geoip/geolite2-free-geolocation-data) by [MaxMind](https://www.maxmind.com/) - Geolocation data
- [cs2-css-flashlight](https://github.com/creazy231/cs2-css-flashlight) by [creazy231](https://github.com/creazy231) - Lighting creation system
- [CServerSideClient](https://discord.com/channels/1160907911501991946/1508172390863994910/1508180670659166348) by [SLAYER](https://github.com/zakriamansoor47)
## ❤️ Special thanks
[CONTRIBUTORS]
ㅤ
[THANKS]
## 📋 Changelog
v1.2.3.b3
- #### General
- ###### Added automatic HUD hiding to prevent conflicts with other plugins using the center HUD system (`HideHudForOtherPlugins` in `config.json`).
v1.2.3.b2
- #### General
- ###### Added a `css_entity` admin command to check whether an entity with a given index/handle exists (prints the designer name to chat or console). [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Added a `TakeDamage` post-hook (`OnTakeDamagePost`) alongside the existing pre-hook, so skills can now react after damage has actually been applied, not just before. [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Added `CreateMolotovProjectile` (new `CMolotovProjectile_CreateFunc` signature) and `CreateTrackedChicken` entity helpers. [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Added a `weapon_mp7` → `weapon_mp5sd` fallback mapping. [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Skill-caused deaths are now credited to the skill's owner (instead of counting as suicides) and appear in the killfeed with the ability used; covers DeathBomb, Exploding Barrel, Baseball, HotBomb, Poison, Illusionist, Replicator, Careful Bullets, Toxic Smoke and Iana. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Added a `CurseSkillPerPlayer` config option to cap how many curse skills can be stacked on one player per round (unlimited by default), enforced centrally in `SkillAction`. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Tripwire now uses a cooldown instead of a fixed placement limit, with the remaining time shown on the HUD. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Tripwire wires are now colored per team: red for T, blue for CT. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### `PlayerEvents.cs` split into three partial files (`PlayerEvents`, `RoundEvents`, `EntityEvents`); behavior unchanged. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Replaced 28 duplicated enemy-gathering LINQ chains with one shared helper across 18 skills. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Added a use-cooldown for Spectator's camera (default 0.5s) and a disconnect handler. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Added `ClearCursesFor` and `AnyCurseCapacity` curse-bookkeeping helpers; Thief added to the curse skill set. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### `CurseSkillPerPlayer` is now ignored in TeamSkills, SameSkills and Debug game modes, and curse target menus no longer come up empty when every enemy is at the limit. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### C4Camouflage's `MaxPerServer` lowered from -1 to 1. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- #### Performance:
- ###### `SkillUtils.HasMenu` reordered so the costly menu check only runs for affected players, across 17 skills and HUD updates. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Skill names/descriptions are now cached per skill/language/roll instead of being regenerated every 2 ticks (Illiterate still gets fresh garbled text). [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Death HUD admin permission checks are now cached per round, and `DateTime.Now` is read once per tick instead of once per player. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### End-of-round skill pre-calculation now builds turn constants in a single pass using set operations instead of repeated linear scans. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Removed Dead code: `Earthquake.cs` and `HealingChicken.cs` (unregistered skills), `EntityManager.CreateTrackedEnvShake`, `EntityManager.CreateTrackedChicken`, `PlayerManager.UpdatePlayerSkill`. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- #### Skill improvements:
- ###### Aimbot:
- ###### Only forces a headshot hitgroup once (skips if it's already a head or an invalid hitgroup), and now restores the original hitgroup value in the new post-damage hook instead of leaving it overwritten. [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Tripwire:
- ###### Reduced the default wire width from 1.5 to 0.7. [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Wires are now removed when the owner dies or loses the skill, instead of staying until round end. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Iana:
- ###### Fixed the ability hook firing with no clone present when purchases happened during freeze time. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Throwing Knife:
- ###### Fixed the next-round spawn knife being withheld incorrectly; now only blocked when the player's own knife is on the ground. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Jammer:
- ###### Fixed the confirmation message showing the user's own name instead of the target's. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Careful Bullets:
- ###### Misses are now matched to the exact hit tick instead of using a 10-tick tolerance window. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Replicator / Illusionist / Iana:
- ###### Fixed a single shotgun shot dealing the clone's damage multiple times due to delayed entity destruction. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Cutter / Assassin:
- ###### Damage is now modified in the damage hook instead of via the post-damage `player_hurt` event. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Dracula:
- ###### Removed the fixed healing cap. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Focus:
- ###### `weapon_accuracy_nospread` is now restored from the server's own value instead of a hardcoded reset. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- #### New Skills:
- ###### Berserker: You deal more damage and move faster as your health gets lower. [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Blast Shot: Press Attack2 with the MP5 to fire an HE grenade. [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Demon Eye: You deal damage to every enemy you are looking at. [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Fire Rain: Throw a decoy to call down a rain of Molotovs. [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Flashlight: Click [css_useSkill] to turn the flashlight on or off; its light can blind enemies. [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Healing Chicken: Your chickens heal you while you are nearby. [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Jetkick: Select a player to jetkick - every shot they fire knocks them backwards until disabled. [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Last Gasp: After you die, you deal damage to the enemy who killed you. [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Take Ammo: Click [css_useSkill] to take the active weapon's magazine from a random enemy. [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Team Teleport: Press [css_useSkill] to teleport to the teammate you're looking at. [by: [@Juzlus](https://github.com/Juzlus)]
- ###### Tripwire: String a wire between two walls; enemies who touch it appear on the owner's radar until round end. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Exploding Barrel: Place a barrel that detonates when shot. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Expensive Ammo: Select an enemy who loses money on every shot. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Jump Curse: Select an enemy who jumps whenever a living teammate jumps. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Knockback: Firing while airborne pushes you backwards. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Giant: Enlarges a selected enemy. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Nightmare: Gives a selected enemy a nightmarish vision. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
v1.2.3.b1
- #### General (Performance and Stability)
- ###### `CServerSideClient.ForceFullUpdate` now bails on a null client handle.
- ###### Added a per-tick player/bomb cache.
- ###### Migrated 82 skills from per-skill `Utilities.GetPlayers()` to the one shared per-tick scan, and the HUD loop reuses it. Much lower per-tick cost at high player counts (verified 10v10).
- ###### Print a single notice when the RayTrace is not installed.
- #### Skill improvements:
- ###### Second Chance / Phoenix / Re-Zombie:
- ###### Intercept the lethal hit before it is applied. Previously they reacted after the death was already committed, so one-shots, fall damage and skill-based kills were missed.
- ###### Killer Flash:
- ###### Kills through real damage instead of forcing a suicide, so revive skills can intercept.
- ###### Baseball:
- ###### Fixed a rare server crash from decoy grenades (decoy's entity index could be reused by another entity).
- ###### Aimbot:
- ###### Guard the hit-group native pointer before writing (avoids writing to freed/null memory).
- ###### Wallhack:
- ###### Detach the glow when the target dies or disconnects.
- ###### Spectator / Cypher / FalconEye / ThirdEye:
- ###### null-guard the camera SceneNode walk and re-validate the target before teleport/parent.
**Full update contributed by [@ByDexterTR](https://github.com/ByDexterTR) in pull request [#44](https://github.com/Juzlus/jRandomSkills/pull/44). Thanks to ByDexterTR!**
v1.2.2.b9
- #### General
- ###### Fixed Jester's no-damage effect affecting players without the skill.
- ###### Fixed Jester state not clearing if the holder died before round end.
- ###### All skill data now resets every round, even for unused skills.
- ###### Skills tracking players now clear targets when they disconnect (Poison, Deaf, Darkness, Glitch, Magnifier, Legless, No Rifles, Jammer, Jester).
- ###### Fixed Aimbot keeping invalid native pointers, preventing possible crashes.
- ###### An error in one skill's `OnTick` no longer stops other skills from updating.
- ###### Fixed zero cooldown values causing errors (Poison, Regeneration, Hot Bomb, Healing Smoke, Toxic Smoke).
- ###### Improved round change performance by removing unnecessary cleanup.
- #### Skill improvements
- ###### Second Chance:
- ###### Now handles multiple lethal hits in the same tick and restores health instantly after damage. It also works correctly with damage-modifying skills.
- ###### Spectator:
- ###### Fixed rapid-fire caused by returning to your own view.
- ###### Radar Hack:
- ###### Players disguised as Chickens are visible on radar again.
- ###### Focus:
- ###### No-spread now stays active while at least one player has the skill.
- ###### Friendly Fire:
- ###### Restores `mp_autokick` at round end and no longer updates it on every team hit.
- ###### Reactive Armor / Iana:
- ###### No longer restore health after the skill is lost.
- ###### Free Planter / Short Fuse:
- ###### Restore `mp_c4timer` only if they changed it.
- ###### Illusionist:
- ###### Replica movement timer now stops on map change.
- ###### Ghost / Ninja / C4 Camouflage:
- ###### Improved hidden-player processing for better performance.
**Full update contributed by [@ByDexterTR](https://github.com/ByDexterTR) in pull request [#41](https://github.com/Juzlus/jRandomSkills/pull/41). Thanks to ByDexterTR!**
v1.2.2.b8
- #### General:
- ###### Added per-skill HUD duration override. Skills can now define their own `HudDuration` / `DescriptionHudDuration` in `skillsInfo.json`, allowing specific skills to keep their HUD visible permanently (`-1`) or use a custom duration instead of the global `SkillHudDuration` setting.
v1.2.2.b7
- #### General:
- ###### Updated the gamedata signatures for the latest CS2 update (build 24134959) and bumped CounterStrikeSharp to 1.0.371. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Fixed a NullReferenceException thrown on weapon pickup when the weapon data pointed at freed schema memory. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### FullFoceUpdate has been changed to an optional setting in the configuration. Enabling it reduces the risk of PVS errors, but places a significant load on the server (disabled by default). [by: [@Juzlus](https://github.com/Juzlus)]
- #### Skill improvements:
- ###### Ghost:
- ###### Can now plant the C4. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Free Planter / Short Bomb:
- ###### The on-screen bomb countdown now matches the configured detonation time (`mp_c4timer` is set at round start instead of only the blow time being overridden after the plant). [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Rich Boy:
- ###### The money bonus now respects `mp_maxmoney` instead of being capped at a hardcoded 16000. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Second Chance:
- ###### Now reliably respawns at base on a lethal hit, including fall damage (the revive moved to a pre-damage hook so the death is cancelled before it is committed). [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Shadow:
- ###### Fixed a false "no suitable area" when teleporting behind a target at close range. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Radar Hack:
- ###### Now reveals enemies only to the skill holder instead of the holder's whole team, and no longer reveals invisible or camouflaged enemies. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### C4 Camouflage:
- ###### The disguised bomb carrier no longer appears on the enemy radar. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Hot Bomb:
- ###### The "hot bomb" hint no longer shows in a round where nobody has the skill. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Jester:
- ###### Fixes crashes that occur when a skill is being disabled. [by: [@Juzlus](https://github.com/Juzlus)]
v1.2.2.b6
- #### General:
- ###### Performance: much faster round changes - only skills that were actually active in the previous round are reset, instead of every loaded skill (`DisableAll` dropped from ~89ms to ~5ms on a full server). [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Performance & memory: removed per-tick LINQ and skill-name allocations in the tick loop, made HUD skill lookups O(1), and moved translation color/button substitutions to load time. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### `ForceFullUpdate` now creates the network service once per broadcast, and the round-start view-angle guard only skips a genuine (0, 0, 0) spawn placeholder instead of over-skipping valid angles. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Debug logging is only installed when `DebugMode` is enabled and writes through a single reused writer instead of reopening the file for every line. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Player skill state unified to a single collection (removed a duplicate list), closing a rare desync/race on player disconnect. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Gamedata signatures are now resolved lazily and in isolation, so one broken signature after a CS2 update no longer takes down the whole utility layer. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Hardened many tick/transmit code paths against invalid player handles to prevent rare crashes. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### The skill description HUD honours "always show" / `-1` duration consistently across every assignment path. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- #### Skill improvements:
- ###### Jester (Joker):
- ###### Fixed the no-damage effect leaking onto a player after their skill was changed mid-round (e.g. stolen by Thief or removed by Deactivator) - the internal state is now cleared when the skill is disabled. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Jackal:
- ###### Fixed trail entities piling up over a round - the previous trail is now removed before a new one is spawned. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Falcon Eye / Third Eye / Spectator:
- ###### Camera state is now fully cleared when the skill is disabled. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
v1.2.2.b5
- #### General:
- ###### Fixed players' view angle snapping to look at (0, 0, 0) at round start (ForceFullUpdate was re-applying a zeroed view angle). [by: [@ByDexterTR](https://github.com/ByDexterTR)] and Juzlus].
- ###### Stability: skills are now correctly disabled and cleaned up on attacker-less deaths (fall damage, drowning, world). [by: [@ByDexterTR](https://github.com/ByDexterTR)]].
- ###### Performance: the end-of-round skill summary now runs in a single timer instead of one per player, and skips players who disconnect during the delay. [by: [@ByDexterTR](https://github.com/ByDexterTR)]].
- #### Skill improvements:
- ###### Re-Zombie:
- ###### Fixed the player dying instead of respawning with full zombie health. [by: [@ByDexterTR](https://github.com/ByDexterTR)]].
- ###### Jester:
- ###### Armor no longer drains while the skill is active. [by: [@ByDexterTR](https://github.com/ByDexterTR)]].
- ###### Soundmaker / Anomaly:
- ###### Updated the description. [by: [@ByDexterTR](https://github.com/ByDexterTR)]].
v1.2.2.b4
- #### General:
- ###### Updated the GitHub source code to implement the changes introduced in merge request (https://github.com/Juzlus/jRandomSkills/pull/32).
- #### Skill improvements:
- ###### Ninja:
- ###### Removed debug chat messages that were used for testing.
v1.2.2.b3
- #### General:
- ###### Updated Chinese language translation by [by: [@Ericzzrbb](https://github.com/Ericzzrbb)].
- ###### Fixed a bug where a player could be given multiple skills at once while the HUD displayed only one (the player list was never cleared on map change and had no duplicate protection on join). [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Fixed skill names and descriptions showing the raw translation key on Turkish servers (culture-sensitive lowercasing) - affected skills starting with "I" (e.g. Illiterate, Impostor, InfiniteAmmo, Iana). [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### RayTrace-based skills and the skill-use button no longer throw when the RayTrace module is not installed - they now degrade gracefully instead of crashing. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Fixed the skill-use button (when bound to Use/E) blocking option selection inside WSAD target menus. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Performance: cached reflection lookups in `SkillAction` and `SkillsInfo.GetValue`, and de-duplicated the repeated event-dispatch logic on hot paths (OnTick, OnTakeDamage, etc.). [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Stability: removed dead methods that threw `NotImplementedException`, hardened team-score handling, and reset all skill state on round start / map change. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Build: post-build copy paths now follow the active `$(Configuration)` and `$(TargetFramework)`. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Added new Turkish translation strings for the skill notifications listed below. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Fixed bot-related messages so they now display correctly in the chat of the controlling player.
- ###### When a player takes control of a bot, all active skill effects affecting that bot are now correctly transferred to the controlling player.
- ###### Prevented bots from automatically using skills while being controlled by a player.
- #### Skill improvements:
- ###### Wallhack:
- ###### Fixed enemy outlines briefly flashing for everyone when the skill holder dies. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Area Reaper:
- ###### Teammates (CT) are now notified which bombsite (A/B) was sealed. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Wild Throw:
- ###### Now notifies the targeted player, consistent with other targeted skills. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Careful Bullets / Darkness / Deaf / Glitch / Jammer / Jump Ban / Magnifier / Poison / Primary Ban / Wild Throw:
- ###### The targeted player is now notified when the effect ends after the skill holder dies. [by: [@ByDexterTR](https://github.com/ByDexterTR)]
- ###### Careful Bullets:
- ###### Added damage-taken sound effects when missing a shot
- ###### C4 Camouflage / Ninja:
- ###### Fixed a bug where dying with invisibility active and taking control of a bot would grant invisibility to the bot as well.
- ###### Poison:
- ###### Added damage-taken sound effects.
- ###### Primary Ban:
- ###### Changed mechanic to directly block shooting weapons instead of forcing a weapon switch to the knife.
- ###### Hot Bomb:
- ###### Replaced the bomb-burning sound effects.
- ###### Added a notification when the burning effect ends and the bomb returns to its normal color.
v1.2.2.b2
- #### General:
- ###### Updated CSS dependency to version 1.0.369.
- ###### Upgraded the project from .NET 8.0 to .NET 10.0.
- ###### Updated Turkish language translation by [@ByDexterTR](https://github.com/ByDexterTR)].
- ###### Added Russian language translation by [@213sdfsdgf](https://github.com/213sdfsdgf)].
- ###### Fixed an issue with incorrect display of Arabic nicknames.
- ###### Used ForceFullUpdate to resolve the "FATAL ERROR: CopyExistingEntity" crash.
- ###### Disabled stale HandleCommandDrop hook to avoid crashes when a player joins a team (thanks to [@vladimir214sd](https://github.com/vladimir214sd)).
- ###### Added new signatures to gamedata.
- ###### Added the ability to configure the number of grenades for every skill that uses grenades as part of its ability (e.g., Miner, AntyFlash, MagneticDecoy, etc.).
- #### Skill improvements:
- ###### Re-Zombie:
- ###### Fixed weapon switching issues when a player is holding a Zeus and a knife.
- ###### Weapons are now removed for bots in zombie mode.
- ###### Fixed an issue where players would occasionally fail to respawn if they took too much damage too quickly.
- ###### Ghost:
- ###### Blocked the ability to use the Zeus.
- ###### Blocked the ability to use the SG556 (`weapon_sg556`).
- ###### Thorns:
- ###### Added a configurable maximum health limit (37 HP) for the damage that can be reflected.
- ###### Second Life:
- ###### Fixed an issue where players would occasionally fail to respawn if they took too much damage too quickly.
- ###### Phoenix:
- ###### Fixed an issue where players would occasionally fail to respawn if they took too much damage too quickly.
- ###### Chicken:
- ###### Blocked the ability to use the SG556 (`weapon_sg556`).
- ###### Wallhack:
- ###### Fixed a bug that caused temporary enemy highlighting right after death.
- ###### Cypher:
- ###### Added camera position persistence.
- ###### God Mode:
- ###### Fixed an issue with permanent immortality triggering after reaching exactly 0 HP.
- ###### Weapons Swap:
- ###### The ammo count is now also transferred when weapons are swapped.
- ###### Muhammed:
- ###### Renamed the skill to "DeathBomb".
- ###### Spectator:
- ###### Fixed a bug where a player with the Chicken skill would still display as a ragdoll after death when spectated.
- ###### Friendly Fire:
- ###### The skill now works even when the server's mp_friendlyfire setting is set to 0.
- ###### Baseball:
- ###### Disabled teammate killing.
v1.2.2.b1
- #### General:
- ###### Updated project dependencies.
- ###### Implemented `EntityManager` for automated entity cleanup and memory management.
- ###### Added configuration to enable or disable skills for bots.
- ###### Stability and performance improvements.
- #### Skill improvements:
- ###### Invisibility-based skills: Now visible to teammates and spectators.
- ###### Fortnite:
- ###### Fixed an issue with indestructible barricades after player death.
- ###### Wallhack:
- ###### Improved detection logic for invisible players.
- ###### Soundmaker / Jackal / Spectator:
- ###### Updated to correctly work with invisible players.
- ###### And more...
v1.2.1.b9
- #### General:
- ###### Added Crash Handler to improve server stability (Thanks to cj for help).
- ###### Added Skill Rarity (added rarity levels to skills).
- ###### Added 'MaxPerServer' limit (limits how many people can use the same skill).
- ###### Replaced model "ghost_speaker.vmd" with "spray_plane.vmdl".
- #### Skill improvements:
- ###### Focus:
- ###### Fixed and improved recoil control.
- ###### ReZombie / Phoenix:
- ###### Blocked respawn exploit when changing teams.
v1.2.1.b8
- #### General:
- ###### Replaced [CS2TraceRay](https://github.com/schwarper/CS2TraceRay) with [RayTraceApi](https://github.com/FUNPLAY-pro-CS2/Ray-Trace).
- ###### Updated CounterStrikeSharp to the latest version.
- ###### New command for skill testing: `css_next_skill <(null)/index>`.
- ###### Updated gamedata signatures.
- ###### Replaced CS2TraceRay with `RayTraceApi`.
- ###### Replaced direct object references with entity indices to improve memory safety.
- ###### Fixed agent model paths.
- ###### Skills are now automatically disabled when a player leaves the server.
- ###### Added null-pointer checks for improved stability.
- #### Skill improvements:
- ###### AimLock:
- ###### Aiming at the opponent's head has been improved.
- ###### Anomaly / Behind / Cypher / Push / SwapPosition / Teleporter:
- ###### Improved camera positioning during teleportation.
- ###### CarefulBullets / ExplosiveShot / FragileBomb:
- ###### Redesigned logic due to changes in the `OnTakeDamage` event.
- ###### FriendlyFire:
- ###### Fixed skill functionality when friendly fire is disabled on the server (Casual mode).
- ###### Hologram:
- ###### Blocked weapon dropping and picking up while in hologram form.
- ###### Illiterate:
- ###### Fixed a bug with correct text display.
- ###### Tracker:
- ###### Fixed issues related to timers.
- ###### Ninja:
- ###### Fixed a bug where the initial invisibility state never update.
- ###### NoRecoil / QuickShot:
- ###### Updated to match the new `AimPunchServices` structure.
- ###### Noclip / Shade / Iana:
- ###### Migrated to `TraceHullShape` for more accurate collision detection.
- ###### ReZombie:
- ###### Disabled weapon usage in zombie mode and increased HP to 500.
- #### Known Issues:
- ###### LongKnife:
- ###### Right-click detection is currently broken on Linux (despite valid signatures).
- ###### Illusionist:
- ###### T-Pose bug: After adding animgraph_2, the character models don't have any animations built in. So, for now, there isn't really any way to do this without adding your own from the Workshop.
v1.2.1.b7
- #### General:
- ###### Bumped module version to **1.2.1.b7**.
- ###### Implemented **HTMLEncoder** for improved message security and protection.
- ###### Updated `SkillAction` to return the invoked method result (`object?`) or `null` if not found.
- ###### Reworked player event dispatching to call `SkillAction` **once per distinct active skill**, reducing redundant invocations.
- ###### Switched timing logic to use `Server.CurrentTime` instead of `EngineTime`.
- ###### Added startup console information and an automated **version check** on plugin load.
- ###### Implemented **automatic copying** of gamedata, DLLs, and language files during the build process (by @vinicius-trev).
- ###### Updated core dependencies: `CounterStrikeSharp.API` to **1.0.364** and `MaxMind.Db` to **5.0.0** (by @vinicius-trev).
- ###### Added **geolocation support** for Turkey (`tr`) and Czechia (`cz`).
- ###### Added **Turkish (`tr`)** language support (by @brkvlr) and improved **Portuguese-Brazil (`pt-br`)** translations (by @vinicius-trev).
- ###### If a translation is missing, the system now **falls back to English text** instead of displaying the raw translation key.
- ###### **SkillUtils:** Fixed spawn point selection bugs, memory referencing issues, and added `maxHealth` parameter support for `AddHealth`.
- ###### Fixed an issue where the **E key** (interact/defuse) was interrupted by skill usage; players can now defuse and interact with objects without interference.
- ###### Vote system timer now correctly resets after each vote.
- #### Skill improvements:
- ##### Pilot (Rework):
- ###### Completely rewritten jump and fuel logic. Flight now requires a **double-click** of the jump key to activate.
- ##### Jester (Rework):
- ###### Refactored to a **per-player system** with improved timer stability. The Jester timer now **resets** when the player attempts to plant or defuse the bomb.
- ##### Noclip (Rework):
- ###### Total rework of the movement logic; improved collision detection to **prevent getting stuck** in objects and ensured smoother flight.
- ##### Ghost / C4 Camouflage / Ninja:
- ###### **Observers can now see invisible players.**
- ###### Improved bomb hiding function and fixed console spam issues.
- ##### Retreat / Enemy Spawn:
- ###### Fixed an error with incorrect spawn point interpretation.
- ##### Teleporter:
- ###### The mechanic has been changed to a **percentage chance** of swapping places with an enemy, rather than a guaranteed 100%.
- ##### Gambler:
- ###### Fixed a bug that allowed the skill to be refreshed without having the required money.
- ##### Shade:
- ###### Fixed issues related to teleportation logic.
- ##### Muhammed:
- ###### Blocked skill usage during team switching to prevent exploits.
- ##### Baseball:
- ###### Decoy grenades now have the same collision as players (**PlayerClip**).
- ##### Sniper Elite:
- ###### Major refactoring and **fix for server crashes** related to weapon swapping.
- ##### Replicator:
- ###### Added **crouching animations** for replicas to match player movement.
- ##### Blade Master / Cutter / Disarmament / Long Knife / Long Zeus / Killer Flash:
- ###### Improved handling for **Bayonet** weapon types.
- ###### Added **friendlyFire** configuration options for `LongKnife`, `LongZeus`, and `KillerFlash`.
- ##### Planter / Short Bomb / Chill Out:
- ###### Notifications now reach all valid players regardless of life status; added `BombAbortPlant` support.
- ##### Area Reaper:
- ###### Added a message while being on a disabled bombsite.
- ##### Wallhack:
- ###### Glow is now correctly disabled for dead players.
- ##### Sound Maker (Rework):
- ###### Reworked to automatically play a sound every 2 seconds (audible only for the player with skill).
- #### New skills:
- ##### Aim Lock:
- ###### Lock your aim on the nearest enemy for a limited duration.
- ##### Homing Nades:
- ###### Your grenades (except smokes) are attracted to nearby enemies.
- ##### Magneto:
- ###### Pushes incoming enemy grenades away from the player.
- ##### Miner:
- ###### Deploys HE grenades that only detonate when an enemy is within range.
- ##### Illiterate:
- ###### While the user is alive, enemies are unable to read chat or HUD information.
- ##### Hot Bomb:
- ###### The C4 deals constant damage to the carrier as long as the skill owner is alive.
- ##### Illusionist:
- ###### Deploys a replica that walks straight ahead to distract enemies.
- ##### Magnetic Decoy:
- ###### Decoy grenades attract nearby players towards the center of the decoy.
- ##### Throwing Knife:
- ###### Adds the ability to throw a lethal knife at enemies.
- ##### Weightless:
- ###### Grenades fly faster and are no longer affected by gravity.
- ##### Wild Throw:
- ###### Causes a selected player to "forget their lineups," resulting in randomized grenade trajectories.
- ##### Smoker:
- ###### Your smoke grenades never run out.
- #### New commands:
- ###### `css_bot_place ` - Teleports a bot to the player's position with optional godmode.
- ###### `!sethealth ` - Admin command for health management and testing.
- ###### `!plantedbomb ` - Command for testing bomb-related states and logic.
v1.2.0
- #### General:
- ###### Renamed the plugin from `!jRandomSkills` to `jRandomSkills`.
- ###### Fixed a typo in permissions from `@jRandmosSkills` to `@jRandomSkills`.
- ###### Disabled `DebugMode` by default in the config. (by: [@vinicius-trev](https://github.com/vinicius-trev))
- ###### Updated GeoLite dependencies. (by: [@vinicius-trev](https://github.com/vinicius-trev))
- ###### Improved `pt-br` language translations. (by: [@vinicius-trev](https://github.com/vinicius-trev))
- ###### Added German language support. (by: [@Enrory](https://github.com/Enrory))
- ###### Fixed language detection based on ISO codes.
- ###### Fixed incorrect references to language files.
- #### Skill improvements:
- ##### Enemy Spawn:
- ###### Fixed an error with incorrect spawn point interpretation.
- ##### Cypher:
- ###### Improved camera positioning.
- ###### Restricted camera placement to walls only.
- ###### Key stability fixes.
- ##### Darkness / Hologram:
- ###### Added additional validation.
- ###### Fixed an issue with an infinite timer.
- ##### Jackal:
- ###### Minor optimization and fixed a bug where tracks were visible to everyone.
- ##### C4 Camouflage / Ghost / Ninja:
- ###### Improved bomb hiding function.
- ###### Fixed console spam issues.
- ##### AntyHead / BladeMaster / Jester / NoNades / OnlyHead / Posthesis / Pyro / Reactive Armor:
- ###### Fixed the health restoration function.
- ##### NoNades:
- ###### Added immunity to Decoy grenades.
- ##### RichBoy:
- ###### Fixed a bug where all money was removed after a round.
- ###### Money is deducted based on spending, where the final amount cannot be less than $3,000.
- ##### Dash:
- ###### Added `anyDirection` options to the configuration, which define whether a dash can be performed in any direction or only forwards.
- ##### BunnyHop / Dash / Pawel Jumper:
- ###### Improved jump logic.
- ###### Skills can now be triggered using the mouse scroll wheel.
- ##### Jumping Jack / Legless:
- ###### The ConVar `sv_legacy_jump` has been set to `1` to enable jump detection.
- ##### Long Zeus / Long Knife:
- ###### Shots are now calculated based on hitboxes instead of collisions.
- ###### Fixed RayTrace functionality.
- ##### Shade:
- ###### Fixed RayTrace functionality.
- ##### Planter / Short Bomb:
- ###### Added a notification message when the bomb is planted.
- ##### Sniper Elite:
- ###### General refactoring.
- ###### Fixed an issue where weapons were not swapped correctly.
- ###### Fixed a weapon duplication bug.
- ##### Toxic Smoke:
- ###### Skill is now enabled only for Linux systems.
- ##### Watchmaker:
- ###### Removed the round timer from the center HUD.
- ###### Round timer now updates for everyone after throwing utilities.
- #### New skills:
- ##### Careful Bullets:
- ###### Select a player who loses HP for every missed shot at another player.
v1.1.9f
- #### General:
- ###### Updated dependencies to the latest version (CSS v1.0.361).
- ###### Updated WSADMenu compatibility to the latest CSS version.
- #### Skill improvements:
- ###### Earthquake:
- ###### Temporarily disabled.
- ###### Cypher:
- ###### Temporarily disabled.
- ###### Improved camera positioning.
- ###### Hologram:
- ###### Temporarily disabled.
- ###### Replica can now receive headshot damage.
- ###### Toxic Smoke:
- ###### Changed distance calculation for triggers.
v1.1.9e
- #### General:
- ###### Improved display of text frame / content.
- ###### Added customisation options for chat message appearance.
v1.1.9d
- #### General:
- ###### Updated the appearance of chat messages.
- #### Skill improvements:
- ###### C4Camouflage:
- ###### Ghost:
- ###### Ninja:
- ###### Now the entire model is hidden instead of just the weapon and setting the model's transparency.
- ###### ReZombie:
- ###### Increased zombie health from 200 HP to 250 HP.
- ###### Replicator:
- ###### ncreased damage dealt by replicas: Your team: 10 HP; Enemy team: 20 HP
- ###### Added the option to customize replica damage in `skillsInfo.json`.
- ###### ToxicSmoke:
- ###### Skill temporarily disabled to test trigger logic.
- ###### Watchmaker:
- ###### Reduced time change from 10 seconds to 7 seconds.
- #### New skills:
- ###### Cypher:
- ###### Click [css_useSkill] to create/switch to a camera.
- ###### Hologram:
- ###### Click [css_useSkill] to control your hologram for a few seconds (the hologram cannot shoot).
v1.1.9c
- #### General:
- ###### Updated dependency to the latest version.
- ###### Added a new game mode, ‘FullRandom,’ which randomly assigns skills each round (skills may be repeated).
- ###### Added the `requiredPermission` option to every skill config, defining the permission required for a player to receive that skill.
- #### Skill improvements:
- ###### Gambler:
- ###### Added text notification when the player has no money.
- ###### Darkness:
- ###### Removed the old post-processing logic (did not work on every map).
- ###### Added UTIL_ScreenFade for a more reliable and consistent darkness effect.
- ###### Distancer:
- ###### Limited the maximum display distance to 3000 units.
- ###### Fortnite:
- ###### mproved the placement angle of barricades.
- ###### Jackal:
- ###### Reworked the bean trail logic to a particle system for better performance.
- ###### Poison:
- ###### Slightly increased the poison tick speed.
- ###### Added a minimum health threshold (30 HP) below which poison no longer works (configurable).
- ###### Spectator:
- ###### Fixed an issue with the camera after death.
v1.1.9b
- #### General:
- ###### Updated dependency to the latest version.
- ###### Fixed an issue with empty permissions for commands.
- ###### Added `SkillHudExpired` option to the config file that controls how long (in seconds) the central HUD is visible.
- ###### Added logic for trigger enter / exit handling.
- ###### Automatic case adjustment for the `AlternativeSkillButton` option in the config.
- ###### Fixed an issue with automatic language detection.
- ###### Attempt to fix model resizing issue.
- #### Skill improvements:
- ###### Bankrupt:
- ###### Darkness:
- ###### Deactivator:
- ###### Deaf:
- ###### Glitch:
- ###### Jammer:
- ###### JumpBan:
- ###### LifeSwap:
- ###### Magnifier:
- ###### MoneySwap:
- ###### Poison:
- ###### PrimaryBan:
- ###### Thief:
- ###### Fixed message being shown in the other player's language.
- ###### C4Camouflage:
- ###### Ghost:
- ###### Glaz:
- ###### Jackal:
- ###### Ninja:
- ###### Wallhack:
- ###### Possible fix for missing entity when showing the entity again.
- ###### AreaReaper:
- ###### Fixed incorrect bomb placement order.
- ###### Gambler:
- ###### Fixed issue where players could reroll their skill even without money.
- ###### SoundMaker:
- ###### Added separate sounds for both teams (configurable).
- ###### ToxicSmoke:
- ###### Updated logic to use triggers (offset not found for Windows system).
- ###### Watchmaker:
- ###### Added a sound when the time updates (configurable).
v1.1.9a
- #### General:
- ###### Update the dependency to the latest version.
- ###### Signature update (jRandomSkills.gamedata.json).
- ###### FlashingHtmlHudFix is disabled during warm-up.
- ###### Fixed incorrect debug text display when using the command.
- ###### Improved the functionality of the !map command.
- ###### Added the `YourSkillChatInfo` option to the configuration to disable the description of your skill in chat.
- ###### Disabling player skill when changing maps.
- #### Skill improvements:
- ##### Third Eye:
- ###### Model added to camera.
- ##### Spectator:
- ###### Model added to camera.
- ##### Falcon Eye:
- ###### Model added to camera.
- ##### Jackal:
- ###### Temporarily disabled for rewrite.
v1.1.8
- #### General:
- ###### Added `DisableHUDOnDeathPermission` options to the config, to disable the HUD after death for players with this specific permission.
- ###### Added `DisableSkillsOnRoundEnd` option to the config, to disable all skills at the end of the round (when the summary is visible).
- ###### The permission `@jRandomSkills/root` has been changed to `@jRandomSkills/owner` to prevent domain issues.
- ###### Added `!hud` command to toggle the HUD on/off (When the HUD is off, the WSAD Menu will not appear).
- ###### Disabling first skill if two skills are drawn during the first round.
- ###### The `!reload` command also refreshes the skill activity status.
- #### Skill improvements:
- ##### Replicator:
- ###### Fixed a bug causing server crashes after a bomb explosion.
- ###### Replica collisions are now more accurate.
v1.1.7
- #### General:
- ###### Update the dependency to the latest version.
- ###### Information about skills is available in `skillsInfo.json` instead of `config.json`.
- ###### Added the `jRandomSkills.gamedata.json` file.
- ###### Added the option to disable a specific power during freeze time (Disabled by default: Position Swap, Retreat, Replicator, Poison, Planter, Pilot, Noclip, Medic, God Mode, Fortnite, Enemy Spawn, Anomaly).
- ###### Added `LanguageSystem` options to the config for detailed language assignment management.
- ###### The `StartGameCommand` command now includes a changeable start parameter in config.
- ###### Added `DisplayAlwaysDescription` option to the config to show the description all the time.
- ###### Added `HtmlHudCustomisation` options to config for setting colours and font size.
- ###### Can be set to empty text: your_skill/drawing_skill/observer_skill/XXX_select_info.
- ###### Option to set the obtained value in the name/description of the skill (`{0}`).
- ###### Fixed skill cooldown time display (Rounding up).
- ###### The `!reload` command now refreshes all parameters from the all configs.
- ###### Most of the collection has been replaced with safe-threading to avoid server crashes (idea by: @ebat_kopat777).
- #### Skill improvements:
- ##### Long Knife:
- ###### A secondary knife attack also deals damage.
- ###### Fixed a mistake where the player's skill was shown as `None` after death.
- ##### Wallhack:
- ###### Glows are created just once, instead of being created again for each player.
- ###### Fixed a mistake where the player's skill was shown as `None` after death.
- ##### Jackal:
- ###### Fixed a mistake where the player's skill was shown as `None` after death.
- ##### Position Swap:
- ###### Added a configurable cooldown at the start of the round.
- ##### Spectator:
- ###### The method used to attach the camera has changed.
- ##### NoClip:
- ###### Return to the last place where you used skill if you fall below 3,000 units.
- ###### Added an option to disable the noclip when it is active.
- ##### Ninja:
- ###### Fixed an issue with weapons not being visible after death.
- ##### Muhammed:
- ###### The message at the explosion is configurable (in languages/).
- ###### Fixed a bug with the grenade not detonating.
- ##### Ghost:
- ###### Fixed an issue with weapons not being visible after death.
- ##### Explosive Shot:
- ###### Fixed a bug with the grenade not detonating.
- ##### Enemy Spawn:
- ###### Added a configurable cooldown at the start of the round.
- ##### Disarmament:
- ###### Back to dropping weapons instead of changing to slot3.
- ###### The chance of dropping weapons has been reduced: (20-50)% → (20-35)%
- ##### Chicken:
- ###### The method used to attach the chicken has changed.
- ###### Player with skill can see a model of your chicken.
- ###### Fixed hitboxes after returning to normal model.
- ###### Fixed a bug that added extra health after deactivating skill.
- ##### C4 Camouflage:
- ###### Fixed an issue with weapons not being visible after death.
- ##### Blade Master:
- ###### Movement speed with a knife has been reduced by 10% (configurable).
- ##### AntyFlash:
- ###### Added the option in config to change the flash duration of your flashes.
- ##### Jester:
- ###### Fixed an issue where you could take damage from other skills or bombs.
- ###### Fixed a bug where the player was always purple.
- ##### Shade:
- ###### Added an option to set the chance of teleportation after hitting an enemy in the config.
- ##### Impostor:
- ###### Setting the player model after deactivating the skill.
- ###### The default model for terrorists has been changed.
v1.1.6
- #### General:
- ###### Added French language (by [@felyjyn](https://github.com/felyjyn)).
- #### Skill improvements:
- ##### Dash:
- ###### Added the ability to dash in any direction.
v1.1.5
- #### General:
- ###### Update the dependency to the latest version.
- ###### Added language recognition based on geolocation (MaxMind GeoLite2).
- ###### Each player can choose a different language.
- ###### Directory names have been changed.
- ###### Automatic config refresh has been removed.
- ###### Added the `FlashingHtmlHudFix` option to the config.
- ###### Added the `CS2TraceRayDebug` option to the config, showing the "bullet" path for the LongKnife and LongZeus skills.
- ###### Added the `DisableSpectateHUD` option to the config, allowing the HTML HUD to be disabled for spectators.
- ###### The name of the project has been changed from `jRandomSkills` to `!jRandomSkills` to allow other plugins to load into memory later.
- ###### Added the command `!lang en` to change the language
- ###### Added the `!reload` command to reload translations.
- ###### Restrictions on welcome messages removed.
- #### Skill improvements:
- ##### Weapon Swap:
- ###### Fixed a bug with bomb duplication on the HUD.
- ##### Thief:
- ###### The ability to steal skill that is unavailable to your team has been blocked.
- ###### The HTML Menu is disabled when no players are found.
- ##### Sniper Elite:
- ###### Fixed all bugs and enabled the skill.
- ##### Second Chance:
- ###### Return to original health when skill are deactivated.
- ##### Planter:
- ###### Planting a bomb during freezing has been blocked.
- ##### Jackal:
- ###### Added 'null' check.
- ##### Astronaut:
- ###### Fixed gravity scale not showing on HTML.
- ##### Duplicator:
- ###### The HTML Menu is disabled when no players are found.
- ##### Deactivator:
- ###### The HTML Menu is disabled when no players are found.
- #### New skills:
- ##### Grenadier:
- ###### You have infinite hegranade.
- ##### Dash:
- ###### Perform a second jump to dash.
v1.1.4
- #### General:
- ###### The `SkillTimeBeforeStart` option has been added to the config file, which specifies how many seconds before the end of freeze time the skills drawing should stop.
- ###### The `SkillDescriptionDuration` option has been added to the config file, which specifies how many seconds the skill description HTML message should be visible.
- ###### Skills are no longer disabled at the end of the round.
- ###### The logic for granting skills has been changed.
- ###### Nicknames that are too long are shortened when spectating players.
- ###### The player selection has been changed via the Chat Menu to the WSAD Menu.
- ###### Skill descriptions added at the start of the round using PrintToCenterHtml.
- ###### Skill descriptions with player selection have been shortened.
- ###### Fixed a problem where the css_setskill and css_setstaticskill commands could not be executed from the server.
- ###### The parameters of the `!start` command have been changed.
- #### Skill improvements:
- ##### Legless:
- ###### Legless's skill completely disables Bunny's skill.
- ##### Rich Boy:
- ###### The cap has been set at $16,000.
- ##### Pilot:
- ###### The jetpack has been redesigned.
- ###### The amount of fuel has been increased.
- ###### From now on, the amount of fuel is always visible.
- ###### It is no longer possible to use a jetpack while defusing a bomb.
- ##### Explosive Shot:
- ###### The damage and range of attack have increased a little.
- ##### Flash:
- ###### Fixed a bug causing players to be launched upwards on stairs/ramps.
- ##### Magnifier:
- ###### Unnecessary Server.PrintToChatAll have been removed.
- ##### Weapon Swap:
- ###### Fixed a bug with the option to change weapons with a dead player.
- ##### Dwarf:
- ###### Fixed a bug with unchanged hitboxes.
- ##### Chicken:
- ###### Fixed a bug with unchanged hitboxes.
- #### New skills:
- ##### Jester:
- ###### In jester mode, you cannot get or take any damage. This mode changes every few seconds.
- ##### Gambler:
- ###### Select a skill from the list provided.
- ##### Bankrupt:
- ###### Choose the player who will lose all their money.
v1.1.3
- #### General:
- ###### Added `AlternativeSkillButton` options to the config file so that the player button can be used to activate skills.
- ###### Spectators are no longer selected when choosing a specific player when using a skill.
- #### Skill improvements:
- ##### Jackal:
- ###### Now, all opponents are leaving a trail, not just the selected ones.
- ##### Darkness:
- ###### All postprocessing volumes are replaced instead of just the first one.
v1.1.2
- #### General:
- ###### Skills disabled during warm-up.
- ###### Added general validation for undefined values.
- ###### Added command usage and map changes to debug log.
- ###### The `!setstaticskill` command has been added, which permanently assigns a specific skill to a player.
- ###### Commands can have custom permissions set in the config file.
- ###### New game mode: Skills can't be repeated until the map changes (Set as default).
- ###### Added a voting system for commands such as: `!start`, `!map`, `!swap`, `!shuffle`, `!pause`, `!setscore` (configurable)
- ###### Added the ability to search for players by steamID for the !setskill command.
- #### Skill improvements:
- ##### Pawel Jumper:
- ###### Gives a random number of extra jumps instead of just one.
- ###### Added to config: minimum and maximum number of extra jumps.
- ##### Chicken:
- ###### The chicken is invisible to the player with skill.
- ##### Fortnite:
- ###### The barricade now has 115 HP instead of disappearing after one shot.
- ###### Added to config: hp barricade and barricade model.
- ##### Glaz:
- ###### Players observing you also cannot see smoke grenades.
- ##### Wallhack:
- ###### Players observing you can also see through walls.
- ##### Rubber Bullets:
- ###### Fixed an error with adding an existing key.
- ##### Ninja:
- ###### Weapon transmit has been disabled, so charms and name tags are not visible.
- ##### Ghost:
- ###### Weapon transmit has been disabled, so charms and name tags are not visible.
- ##### C4 Camouflage:
- ###### Weapon transmit has been disabled, so charms and name tags are not visible.
- #### New skills:
- ##### Magnifier:
- ###### Forces the enemy's screen to zoom in, reducing their field of view.
- ##### Thorns:
- ###### Your opponent will receive a portion of the damage that they inflicted on you.
v1.1.1
- #### General:
- ###### Added validation for undefined values for the skills: Silent and Flash.
v1.1.0
- #### General:
- ###### Added Brazilian Portuguese language (Grok AI).
- ###### Added Chinese language (Grok AI).
- ###### Added game modes.
- ###### Added configuration for each skill.
- ###### Added Debug Mode.
- ###### Added weapon receiving for skills associated with them (suggested by [ToRRent1812](https://github.com/Juzlus/jRandomSkills/issues/1)).
- ###### Introduced general fixes and resolved bugs.
- #### New skills:
- ##### Anomaly:
- ###### You rewind a few seconds back in time. Cooldown: 15 s.
- ##### Zone Reaper:
- ###### You can choose a bomb site to deactivate.
- ##### Assassin:
- ###### You deal increased damage to enemies from behind.
- ##### Baseball Player:
- ###### Your decoy bounces off walls and instantly kills an enemy on impact.
- ##### Blademaster:
- ###### While holding a knife, you have a high chance to deflect a shot.
- ##### C4 Camouflage:
- ###### You are invisible while holding the bomb.
- ##### Chillout:
- ###### Planting the bomb takes significantly longer.
- ##### Cutter:
- ###### Instant kill with a knife.
- ##### Darkness:
- ###### Applies a darkness effect to a chosen enemy.
- ##### Deactivator:
- ###### Choose a player whose skill you want to disable.
- ##### Deaf:
- ###### Choose a player to mute all sounds for.
- ##### Rangefinder:
- ###### You can see the distance to the nearest enemy.
- ##### Duplicator:
- ###### Choose a player to copy their skill.
- ##### Explosive Shot:
- ###### Random chance to fire an explosive bullet while shooting. Chance: (15 - 30)%.
- ##### Falcon Eye:
- ###### Click [css_useSkill] to activate a bird's-eye view camera.
- ##### Fastreload:
- ###### Click [css_useSkill] to reload the weapon you are currently holding.
- ##### Fortnite:
- ###### Click [css_useSkill] to create a destructible barricade. Cooldown: 2 s.
- ##### Fragile Bomb:
- ###### Shooting the bomb damages it.
- ##### Friendly Fire:
- ###### Shooting teammates heals them.
- ##### Glaz:
- ###### You can see through smoke grenades.
- ##### Glitch (suggested by [ToRRent1812](https://github.com/Juzlus/jRandomSkills/issues/1)):
- ###### Disables the radar for a chosen enemy.
- ##### Glue (suggested by [ToRRent1812](https://github.com/Juzlus/jRandomSkills/issues/1)):
- ###### Your grenades stick to walls.
- ##### Healing Smoke:
- ###### Your smoke grenades heal.
- ##### Hermit (suggested by [ToRRent1812](https://github.com/Juzlus/jRandomSkills/issues/1)):
- ###### Killing restores ammo and a portion of health.
- ##### Holy Hand Grenade:
- ###### Your HE grenades deal double damage and have double range.
- ##### Tracker:
- ###### Choose a player who will leave a trail behind them.
- ##### Jammer (suggested by [ToRRent1812](https://github.com/Juzlus/jRandomSkills/issues/1)):
- ###### Choose a player to disable their crosshair.
- ##### Legless:
- ###### Choose a player who cannot jump.
- ##### Jumping Jack:
- ###### Jumping restores health.
- ##### Life Swap:
- ###### Choose a player to swap health with.
- ##### Long Knife:
- ###### A primary knife attack deals damage regardless of distance.
- ##### Long Zeus:
- ###### Zeus deals damage regardless of distance.
- ##### Taxman:
- ###### Choose a player to swap money with.
- ##### Ninja:
- ###### Standing still increases your invisibility by 33%, crouching by 33%, and holding a knife by 33%.
- ##### No-Nades:
- ###### Grenades deal no damage to you.
- ##### Focus (suggested by [ToRRent1812](https://github.com/Juzlus/jRandomSkills/issues/1)):
- ###### No recoil while shooting.
- ##### NoClip:
- ###### Click [css_useSkill] to enable noclip for a short time. Cooldown: 30 s.
- ##### Head Only:
- ###### You only take damage to the head.
- ##### Poison:
- ###### Choose a player who will take damage every few seconds.
- ##### No Rifles:
- ###### Choose a player who cannot use rifles.
- ##### Prosthesis:
- ###### Arms and legs are bulletproof.
- ##### Psychic Defusing:
- ###### When you are near the bomb, you start defusing it. Cooldown: 10 s.
- ##### Pusher:
- ###### You have a random chance to push an enemy back when hitting them. Chance: 100%.
- ##### Pyro:
- ###### Molotov restores health.
- ##### Reactive Armor:
- ###### Armor absorbs the first damage taken. Cooldown: 15 s.
- ##### Regeneration:
- ###### You restore health every few seconds.
- ##### Replicator:
- ###### Click [css_useSkill] to create a replica that deals damage on hit. Cooldown: 15 s.
- ##### Return to Sender:
- ###### The first hit on an enemy sends them back to their spawn.
- ##### Re-Zombie:
- ###### After death, you respawn as a zombie with increased health and no weapons.
- ##### Robin Hood (suggested by [ToRRent1812](https://github.com/Juzlus/jRandomSkills/issues/1)):
- ###### Dealing damage to an enemy steals their money.
- ##### Rubber Bullets (suggested by [ToRRent1812](https://github.com/Juzlus/jRandomSkills/issues/1)):
- ###### Your bullets significantly slow down players.
- ##### Second Chance:
- ###### After death, you respawn with the same amount of health.
- ##### Short Fuse (suggested by [ToRRent1812](https://github.com/Juzlus/jRandomSkills/issues/1)):
- ###### The bomb explodes much faster.
- ##### Sniper Elite:
- ###### Click [css_useSkill] to swap your current weapon for an AWP.
- ##### Soundmaker:
- ###### Click [css_useSkill] to trigger a sound for every enemy. Cooldown: 5 s.
- ##### Spectator:
- ###### Click [css_useSkill] to spectate a random enemy.
- ##### Thief:
- ###### You can steal a skill from a chosen player.
- ##### Third Eye:
- ###### Click [css_useSkill] to activate third-person view.
- ##### Toxic Smoke:
- ###### Your smoke grenades deal damage.
- ##### Wallhack:
- ###### You can see enemies through walls.
- ##### Watchmaker:
- ###### Every grenade throw alters the round time.
- #### Skill improvements:
- ###### Improved skill descriptions.
- ###### Fixed all noticeable bugs.
v1.0.3
- #### General:
- ###### English language added.
- ###### Added welcome message.
- ###### Added summary of last round.
- ###### Added preview of spectated player's skills.
- ###### Blocked the possibility of having the same skill twice in a row.
- ###### Added simple configuration for each skill.
- ###### Reworked all skills so they can be manipulated at any time (Fixed setskill command)
- ###### Changed activation of skills to bind css_useSkill
- #### New skills:
- ##### Freezing Decoy
- ###### Your decoy freezes all nearby players.
- ##### Soldier:
- ###### You have a random damage multiplier (1.15 - 1.35)x.
- ##### Tank:
- ###### You have a random received damage multiplier (0.65 - 0.85)x.
- ##### Aimbot:
- ###### Each bullet you hit is counted as a head.
- ##### Retreat:
- ###### Return to spawn. Click [css_useSkill], cooldown 15s.
- ##### Enemy Respawn:
- ###### Teleport to enemy spawn. Click [css_useSkill], cooldown 15s.
- ##### Zeus:
- ###### Zeus x27 instant reload.
- ##### Radar Hack:
- ###### You see enemies on radar.
- ##### Quick-Shot:
- ###### No cooldown when shooting.
- ##### Planter:
- ###### You can plant a bomb anywhere, bomb detonation time is 60s.
- ##### Silent:
- ###### Your steps and jumps are unheard by OTHER players.
- ##### Deadly Flash:
- ###### Anyone completely blinded by your grenade dies (including you).
- ##### Time Slow:
- ###### Time slowdown for everyone for 6 seconds. Click [css_useSkill], cooldown 30s.
- ##### God Mode:
- ###### You are immortal for 2 seconds. Click [css_useSkill], cooldown 30s.
- ##### Random Weapon:
- ###### You are given a random weapon. Click [css_useSkill], cooldown 15s.
- ##### Weapon Swap:
- ###### You swap weapons with a random enemy. Click [css_useSkill], cooldown 30s.
- #### Skill improvements:
- ##### Sapper:
- ###### Fixed bug with instantly planting a bomb as anyone on the server had the skill ‘Sapper’.
- ##### Ghost:
- ###### Fixed being invisible after death.
- ###### Minor fixes for the rest of the powers.
v1.0.2
- #### New skills:
- ##### Dwarf:
- ###### Random character size range (60% - 95%).
- ##### Swapper:
- ###### Swap places with a random enemy when clicking the [css_useSkill] button. Cooldown is 30s.
- #### Skill improvements:
- ##### Anti-Flash:
- ###### Added: Your flash takes longer (7s).
- ##### Astronaut:
- ###### Changed: Gravity multiplier from (0.2 - 0.7) to (0.1 - 0.7).
- ###### Added: Player can now see their gravity multiplier in chat.
- ##### Dracula:
- ###### Changed: Dracula can now have excess health from now on.
- ##### Ghost:
- ###### Added: Blocking the use of weapons other than a knife.
- ###### Added: Any weapon picked up by a ghost becomes invisible.
- ##### Flash:
- ###### Fixed not getting speed.
- ###### Changed: Speed multiplier from (1.2 - 2.5) to (1.2 - 3.0).
- ###### Added: Player can now see their speed multiplier in chat.
- ##### Catapult:
- ###### Added: Random toss chances (20% - 40%).
- ###### Added: The player now sees their chances in chat.
- ##### Chicken:
- ###### Fixed not getting the chicken model.
- ###### Added: Blocking the use of weapons other than a knife or gun.
- ###### Added: Chicken can only have 50 hp.
- ##### Medic:
- ###### Fixed not getting first aid kits.
- ###### Changed: From now on everyone loses first aid kits at the end of the round.
- ##### Infinite Ammo:
- ###### Added: From now on, grenades are also infinite.
- ##### Enemy Rotation:
- ###### Added: Random chance of enemy rotation (20% - 40%).
- ###### Added: Player can now see their chances in chat.
- ##### Phoenix:
- ###### Fixed not being reborn after death.
- ###### Added: Random revival chances (20% - 40%).
- ###### Added: Player can now see their chances in chat.
- ##### Pilot:
- ###### Changed: The description of this skill has been improved.
- ##### Rambo:
- ###### Fixed not getting extra health.
- ##### Disarmament:
- ###### Added: Random chances to throw away enemy weapons after hit (20% - 40%).
- ###### Added: Player can now see their chances in chat.
- ###### Changed: Now only active enemy weapon is thrown (Knife throwing bug fixed).
- ##### Eliminator -> Sapper:
- ###### Changed: Renamed the power from ‘Eliminator’ to ‘Sapper’.
- ##### Teleporter:
- ###### Fixed a bug where only the player with the skill was being teleported.
## 💝 Donate
⠀
## 📝 Contact
If you have a question, please write to juzlus.biznes@gmail.com or [jRandomSkills Discord](https://discord.gg/9H8EZYBpPF).