Commit graph

105 commits

Author SHA1 Message Date
ByDexter
25cd8eb989 v1.2.2.b6
Performance & stability pass (issue #34 + audit)

General:
- DisableAll resets only skills active in the previous round instead of all loaded skills (~89ms -> ~5ms)
- Removed per-tick LINQ/allocations, O(1) HUD skill lookups, translation substitutions moved to load time
- ForceFullUpdate creates the network service once per broadcast; view-angle guard only skips a genuine (0,0,0) placeholder
- Debug hooks/logging only active when DebugMode is enabled (single reused writer)
- Player skill state unified to a single collection (fixes a rare disconnect race)
- Gamedata signatures resolved lazily/isolated; hardened tick/transmit paths against invalid handles
- Description HUD honours always-show / -1 duration consistently across all assignment paths

Skills:
- Jester: fixed the no-damage effect leaking after a mid-round skill change (Thief/Deactivator)
- Jackal: fixed trail entities accumulating over a round
- Falcon Eye / Third Eye / Spectator: camera state cleared on disable

Also: added missing translation keys as untranslated markers across language files.

Fixes #34
2026-07-05 21:48:29 +03:00
Juzlus
47985cdfef v1.2.2.b5
Fixed conflicts with the merge https://github.com/Juzlus/jRandomSkills/pull/33

- #### 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 and @Juzlus].
    - ###### Stability: skills are now correctly disabled and cleaned up on attacker-less deaths (fall damage, drowning, world). [by: @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].

- #### Skill improvements:
    - ###### Re-Zombie:
        - ###### Fixed the player dying instead of respawning with full zombie health. [by: @ByDexterTR].
    - ###### Jester:
        - ###### Armor no longer drains while the skill is active. [by: @ByDexterTR].
    - ###### Soundmaker / Anomaly:
        - ###### Updated the description. [by: @ByDexterTR].
2026-06-30 07:06:10 +02:00
Juzlus
42e5453fd4 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.
2026-06-29 16:10:59 +02:00
Juzlus
2ae293d1aa v1.2.2.b3
## 📋 Changelog

- #### General:
    - ###### Updated Chinese language translation by [by: [@Ericzzrbb](hhttps://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.
2026-06-29 06:12:53 +02:00
Juzlus
2b77b04008 update update_thanks 2026-06-10 14:20:22 +02:00
Juzlus
91761f7376 v1.2.2.b2
## GENERAL
- Updated CSS to version 1.0.369.
- Upgraded the project from .NET 8.0 to .NET 10.0.
- Updated Turkish language translation by @ByDexterTR.
- Added Russian language translation by @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).
- 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.
- Ghost:
  -- Blocked the ability to use the Zeus.
- Thorns:
  -- Added a configurable maximum health limit (37 HP) for the damage that can be reflected.
- Second Life / Phoenix / Re-Zombie:
  -- Fixed an issue where players would occasionally fail to respawn if they took too much damage too quickly.
- Ghost / 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.
2026-06-10 13:47:34 +02:00
vladimir214sd
a903897e79 Disable stale HandleCommandDrop hook on plugin load 2026-06-05 03:17:00 +05:00
Juzlus
46195c2663 v1.2.2.b1 2026-05-24 23:13:56 +02:00
Juzlus
0fb3d63cd8 fighting crashes #1 2026-04-28 18:58:21 +02:00
Juzlus
10dbf6629e v1.21.1.b8 2026-04-26 10:36:05 +02:00
Juzlus
abd3aed8fd Bump version, return SkillAction result & i18n
Bump module version to 1.2.1.b7 and change SkillAction to return the invoked method result (object?) or null when not found. Add and normalize many localization entries across multiple language files (aimlock, homingnades, hotbomb, illiterate, illusionist, magneticdecoy, magneto, miner, planter_planting, teleporter chance string, throwingknife, weightless, wildthrow, smoker, etc.) and clean up duplicate/obsolete entries. Update server plugin binaries and configs (WASDMenuAPI.dll, jRandomSkills.dll, config.json, skillsInfo.json) and remove playersLanguage.json.
2026-04-07 20:57:34 +02:00
Juzlus
3954fc3af4 Rework pilot, fix spawnspoints location
# Updates & Fixes (v1.2.1.b4)
- Pilot (Rework): Completely rewritten jump and fuel logic. You must now double-click space to activate flying. Re-activating in mid-air is now smoother and fuel consumption is properly clamped.
- Hermit: Increased default `HealthToAdd` to 100 and adjusted reserve ammo values.
- Planter / ShortBomb: Notifications now reach all valid players regardless of life status.
- ChillOut: Removed redundant empty center-print messages.
- System & Optimization:
    - Skill Detection: Faster lookups for enabled skills using the core skill list.
    - Round Logic: More stable round termination using direct game rules calls.
    - SkillUtils: Fixed spawn point selection bugs and memory referencing issues.
2026-04-06 20:59:03 +02:00
Juzlus
17f26a1458 Add startup console info & version check, 2026-04-06 06:27:17 +02:00
Juzlus
a8890bde6a Updates & Fixes
# Updates & Fixes
- New Commands: Added `css_bot_place` which teleports a bot to the player's position with optional godmode and translation support.
- Miner (New Skill): Added a new skill that allows for detonating HE grenades near enemies.
- Bomb Abort Support: Introduced `BombAbortplant` support across `ISkill` and event registration; added handlers for aborting plants in Planter, ChillOut, and other skills.
- System (Rework & Optimization):
    - Reworked player event dispatching to call `SkillAction` once per distinct active skill, reducing redundant invocations.
    - Switched timing logic to use `Server.CurrentTime` (replacing `EngineTime`).
    - Added extensive null and validity guards for player and pawn objects.
- Skill-specific Changes:
    - AimLock: Fixed vector/validation issues and updated config defaults (cooldown, duration, and offset).
    - AreaReaper: Now uses `BombPlantedHere` state and includes `OnTick` alerts.
    - ChillOut & Planter: Improved tracking for planting players with center-print and HUD updates.
    - HomingNades: Simplified callbacks and fixed detonation timing.
    - Muhammed: Tweaked explosion delay handling and reduced friendly fire damage.
- Core & Utils:
    - TraceRay: Implemented `CS2TraceRay` for skills to prevent activation through doors or on dropped weapons.
    - Dependencies: Bumped `CounterStrikeSharp.API` to 1.0.364 and `MaxMind.Db` to 5.0.0.
    - Bug Fixes: Resolved multiple HUD/print update issues and fixed various translation keys.
2026-04-05 03:08:43 +02:00
Juzlus
8634665983 Updates & Fixes
# Updates & Fixes
- New Commands: Added `!health` and `!plantedbomb` for testing and server management.
- Config: Client commands are now fully registerable via configuration files.
- Jester (Rework):
    - Refactored from a global mode to a per-player system.
    - Improved timer logic to prevent crashes during round resets.
    - Added special handling for bomb planting and defusing.
- SkillUtils: `AddHealth` now supports an optional `maxHealth` parameter.
- KillerFlash, LongKnife & LongZeus: Added `friendlyFire` options to skill configs.
2026-04-03 04:09:30 +02:00
Juzlus
97887118bf (CURRENTYLY BROKEN) Add new skills, signatures and fixes
Introduce multiple new skill implementations and related updates: add AimLock, HealingChicken, HomingNades, HotBomb, Illusionist, MagneticDecoy, ThrowingKnife, Weightless and WildThrow; register skills and HUD/cooldown handling. Update ISkill enum to include new skills. Add SnapViewAngles signature to gamedata. Improve existing skills to handle bayonet (BladeMaster, Cutter, Disarmament, LongKnife) and fix iteration/null-check issues in FrozenDecoy. Make HealingSmoke tick interval configurable and extend its config. Update English and Polish language files with new skill strings and tweaks. Also sync server-side gamedata and language files.
2026-03-17 05:53:41 +01:00
Vinicius Trevisan
9fa7ee790d Release 1.2.1 2026-03-13 11:42:24 -03:00
Juzlus
09803748bc Updates & Fixes
# Updates & Fixes
- Vote system: Timer now resets after each vote
- Automatic copying of gamedata files from source to server (Thanks to vinicius-trev for the help)
- Improved power assignment at round start
- Observers can now see invisible players.
- Added geolocation support for Turkey and Czechia
- New power: Illiterate
- In development: Smoker skill
- Baseball: Decoy now have the same collision as players (PlayerClip)
- Noclip: Reworked
- Pilot: Currently broken
- Replicator: Added crouching animations for replicas
- SoundMaker: Reworked (automatically play a sound every 2s (only for you))
- Wallhack: Glow disabled for dead players

# TODO
- Add/update descriptions for new/reworked skills
- Fix Pilot, SniperElite
2026-02-14 05:33:17 +01:00
Vinicius Trevisan
6e7386c546 Changes at csproj to copy lang and dlls after compilation 2026-02-12 22:46:50 -03:00
Vinicius Trevisan
7de5fe2dc7 Merge branch 'main' into improvements 2026-02-12 22:22:31 -03:00
Vinicius Trevisan
4980aa408c pt-br Fixes 2026-02-12 22:14:20 -03:00
Vinicius Trevisan
bb8f2b1d46 Relative path for WASDMenuAPI 2026-02-12 22:14:12 -03:00
Burak
8eac9b49ee
Add Turkish localization for skills
Added Turkish localization for skills in tr.json.
2026-02-04 01:02:35 +03:00
Juzlus
53917a8b4b v1.10.0 2026-02-03 07:02:40 +01:00
Vinicius Trevisan
b407740445 relative path build reference WASDMenuAPI 2026-01-29 00:02:35 -03:00
Juzlus
9c4a0b687b v1.1.9f 2026-01-27 12:09:47 +01:00
Juzlus
711350f50c chat message config 2025-11-19 02:52:44 +01:00
Juzlus
72e2910a68 main 2025-11-11 01:43:10 +01:00
Juzlus
868372e6b7 v1.1.9 2025-11-08 00:03:32 +01:00
Juzlus
4b2bff91b1 Refactor skill spawn logic and HUD expiration, Gambler fix, Auto Lang System fix 2025-10-22 01:57:47 +02:00
Juzlus
4c333f5d15 v1.1.9 BETA 2025-10-16 19:12:57 +02:00
Juzlus
d68896f181 v1.1.8 2025-09-25 04:06:00 +02:00
Juzlus
e5ead42dfa v1.1.7 2025-09-24 05:31:41 +02:00
Juzlus
ac53655184 v1.1.7 2025-09-24 03:18:32 +02:00
Juzlus
04a4fdce0d v.1.1.7 2025-09-23 04:53:25 +02:00
Juzlus
729acfa4bf v1.0.6 2025-09-16 04:26:29 +02:00
Juzlus
2102f0581f v1.1.5 2025-09-15 23:58:34 +02:00
Juzlus
714624d96a v1.0.4 2025-09-13 01:00:31 +02:00
Juzlus
6422436252 Add color support and improve menu option formatting 2025-09-12 04:54:02 +02:00
Juzlus
5ee1764318 Fix skill actions on player death and cap RichBoy money 2025-09-12 04:09:49 +02:00
Juzlus
f2b9cec14c Updated ModuleVersion to 1.1.4 2025-09-12 02:39:05 +02:00
Juzlus
898f86f888 v1.0.4 2025-09-12 02:24:04 +02:00
Juzlus
a7009be3e0 Change version to 1.1.3 2025-09-06 04:33:11 +02:00
Juzlus
ca73bf50ac Refactor Jackal skill to affect all opponents and add alternative skill button 2025-09-06 04:30:57 +02:00
Juzlus
c73473f0ed Refactor command system and add static skill support 2025-09-05 04:40:53 +02:00
Juzlus
e33975fe8b Refactor skill lookup logic and vote system, update language files
Refactored command handling to improve player and skill lookup logic, replaced some list operations with direct queries, and updated method signatures for clarity and null safety. The vote system was reworked to support more robust vote tracking, cooldowns, and localized chat messages. Language files were updated to add new vote-related translations. Various code style and nullability improvements were made throughout the plugin.
2025-09-04 04:53:23 +02:00
Juzlus
54b265d43d pre v1.1.2 2025-09-03 04:20:40 +02:00
Juzlus
37840e0516 Add validation for non-empty values for the skills: Silent and Flash. 2025-09-01 21:18:01 +02:00
Juzlus
92e48b2adc Update skill configs and sound, add plugin config 2025-08-31 02:03:03 +02:00
Juzlus
1d9e70aeda Improve skill cooldowns and weapon handling logic 2025-08-30 03:24:02 +02:00