Files

4.4 KiB

CS2 Super Powers

Moderní plugin pro Counter-Strike 2 (CounterStrikeSharp), který přidává unikátní schopnosti hráčům. Plugin je navržen s důrazem na modularitu, výkon a snadné rozšiřování.


✨ Funkce

  • 🦸 Modulární systém schopností
  • ⚡ Jednoduché přidávání nových Powers
  • 🔄 Automatická registrace schopností
  • 🎯 Event-based architektura
  • 🚀 Optimalizované callbacky
  • 🛡️ Opravené GC (Garbage Collector) problémy
  • 📦 Přehledná struktura projektu
  • ⚙️ Jednoduchá konfigurace
  • 🧩 Podpora CounterStrikeSharp API
  • 🔥 Optimalizováno pro vysoký počet hráčů

Dostupné schopnosti

Double Jump

  • druhý skok ve vzduchu

Jetpack

  • létání pomocí jetpacku
  • řízení směru letu
  • omezení rychlosti

Wallhack

  • zvýraznění hráčů skrz zdi
  • bezpečná implementace CheckTransmit

Shield

  • dočasný ochranný štít

Explosive Bullets

  • výbušné střely
  • poškození v okolí zásahu

Random Teleport

  • náhodný teleport

Time Slowdown

  • zpomalení času
  • ovlivnění okolních hráčů

Architektura

Projekt byl kompletně přepracován.

Plugin
│
├── BasePower
│
├── Powers
│   ├── DoubleJump
│   ├── Jetpack
│   ├── Shield
│   ├── Wallhack
│   ├── ExplosiveBullets
│   ├── RandomTeleport
│   └── TimeSlowdown
│
├── Managers
│
├── Helpers
│
└── Utilities

Každá schopnost dědí ze společné třídy BasePower, která poskytuje:

  • inicializaci
  • registraci eventů
  • správu timerů
  • NextFrame callbacky
  • cleanup
  • správu hráčů

Refaktoring

Projekt prošel rozsáhlým refaktoringem.

Změny

  • nová architektura BasePower
  • sjednocení všech Powers
  • odstranění duplicitního kódu
  • centralizovaná registrace eventů
  • lepší organizace projektu
  • jednodušší údržba
  • vyšší rozšiřitelnost

Optimalizace

Bylo provedeno mnoho optimalizací.

  • méně alokací
  • efektivnější callbacky
  • rychlejší registrace eventů
  • opětovné využití handlerů
  • nižší využití paměti
  • lepší výkon serveru

Opravy

Garbage Collector

Opraven kritický problém, kdy .NET Garbage Collector uvolňoval delegáty registrované do CounterStrikeSharp.

Vyřešeno:

  • CheckTransmit
  • NextWorldUpdate
  • PlayerSpawn
  • PlayerDeath
  • PlayerDisconnect
  • PlayerTeamChange

Používají se persistentní delegate instance.


FunctionReference

Opraveny pády způsobené:

  • FunctionReference
  • Callback disposed
  • Invalid delegate
  • GC Collection

Wallhack

Kompletně přepsaná implementace.

Novinky:

  • bezpečné callbacky
  • persistentní CheckTransmit
  • lepší výkon
  • vyšší stabilita

Event systém

Kompletně přepracovaný event systém.

Podporuje:

  • automatickou registraci
  • automatické odregistrování
  • bezpečné callbacky
  • správu životního cyklu
  • jednodušší implementaci nových Powers

Build

Opraveny problémy s kompilací.

Vyřešeno:

  • .NET 8
  • CounterStrikeSharp API
  • Callback registrace
  • Build Errors
  • Compiler Warnings

Projekt se nyní sestavuje bez chyb.


Výkon

Po refaktoringu bylo dosaženo:

  • vyšší stability
  • menší spotřeby paměti
  • rychlejší registrace
  • menší počet alokací
  • lepší práce s callbacky
  • bezpečnější práce s delegáty

Přidání nové schopnosti

Stačí vytvořit novou třídu:

public class MyPower : BasePower
{
}

a zaregistrovat ji do pluginu.


Použité technologie

  • C#
  • .NET 8
  • CounterStrikeSharp
  • CounterStrikeSharp.API

Stav projektu

✅ Kompletně refaktorováno

✅ Opraveny kritické pády

✅ Optimalizován výkon

✅ Nová architektura

✅ Modulární systém schopností

✅ Stabilní callback systém

✅ Připraveno pro další rozšiřování


Changelog

Přidáno

  • BasePower
  • nové Powers
  • systém registrace
  • helper utility
  • timer management
  • NextFrame helpery

Změněno

  • architektura pluginu
  • registrace eventů
  • správa callbacků
  • životní cyklus Powers
  • inicializace pluginu

Opraveno

  • Garbage Collector crash
  • FunctionReference crash
  • CheckTransmit
  • NextWorldUpdate
  • Build chyby
  • Wallhack
  • callbacky
  • delegate reference

Licence

Tento projekt je určen pro Counter-Strike 2 servery využívající CounterStrikeSharp.