285 lines
4.4 KiB
Markdown
285 lines
4.4 KiB
Markdown
# 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:
|
|
|
|
```csharp
|
|
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. |