qVIP
qVIP to plugin dla CounterStrikeSharp do Counter-Strike 2, który pozwala zbudować własny system VIP oparty o role, permisje i konfigurację JSON.
Plugin obsługuje klasyczne role VIP, losowego darmowego VIP-a, nocnego VIP-a, bonusy za rundy i zabójstwa, dodatkowe wyposażenie oraz funkcje specjalne takie jak doublejump czy kolorowe smoke.
Funkcje
- Dowolna liczba ról VIP w jednej konfiguracji
- Role przydzielane na podstawie permisji CounterStrikeSharp
- Losowy VIP raz na mapę
- Nocny VIP aktywny w wybranych godzinach i dniach
- Doublejump z możliwością włączenia lub wyłączenia przez gracza
- Bonusy do HP, armora, pieniędzy, prędkości i grawitacji
- Dodatkowe granaty, healthshoty, taser i defuse kit
- Wiadomości powitalne i tagi w tabeli wyników
- Pliki językowe
pl,en,cs,ua
Instalacja
- Wrzuć paczkę z plikami do csgo.
- Skonfiguruj plugin.
- Zrestartuj serwer bądź przeładuj plugin.
Komendy gracza
!djlub!doublejump- przełącza własny doublejump, jeśli funkcja jest włączona w configu!nightviplub!nocnyvip- aktywuje nocnego VIP-a, jeśliNightVip.Command = true
Konfiguracja
Główny plik konfiguracyjny:
addons/counterstrikesharp/configs/Qesik/Vip.json
Struktura pliku:
{
"RandomVip": { },
"NightVip": { },
"Doublejump": { },
"Role": [ ]
}
RandomVip
Sekcja odpowiada za darmowego VIP-a losowanego raz na mapę.
"RandomVip": {
"RoleId": 2,
"NameTag": "Qesik",
"Round": 3,
"AddPermissions": [ "@qShowDamage/permission" ]
}
Pola:
RoleId- numer roli z sekcjiRole, która zostanie nadana wylosowanemu graczowiNameTag- opcjonalny fragment nicku wymagany do udziału w losowaniuRound- od której rundy plugin może rozpocząć losowanieAddPermissions- dodatkowe permisje nadawane razem z rolą losowego VIP-a
NightVip
Sekcja odpowiada za VIP-a aktywnego w określonych godzinach i dniach.
"NightVip": {
"RoleId": 2,
"Hours": [22, 8],
"DayNum": [0, 6],
"Command": true,
"NameTag": "Qesik",
"InfoToAll": true,
"AddPermissions": [ "@qShowDamage/permission" ]
}
Pola:
RoleId- numer roli z sekcjiRole, używanej przez nocnego VIP-aHours- zakres godzin w formacie 24h; jeśli koniec jest mniejszy lub równy początkowi, zakres przechodzi przez północDayNum- lista dozwolonych dni tygodnia;0 = niedzielaCommand-trueoznacza aktywację przez komendę gracza,falseoznacza nadawanie automatyczneNameTag- opcjonalny fragment nicku wymagany do aktywacjiInfoToAll- czy po aktywacji ogłaszać to wszystkim graczomAddPermissions- dodatkowe permisje nadawane razem z nocnym VIP-em
Doublejump
Sekcja steruje komendą gracza do przełączania doublejump.
"Doublejump": {
"Commands": true
}
Pola:
Commands- włącza lub wyłącza komendy!dji!doublejump
Role
Sekcja Role zawiera listę wszystkich ról VIP. Kolejność ma znaczenie, bo RoleId odwołuje się właśnie do pozycji w tej tablicy.
Przykład:
{
"Name": "SVIP",
"Permission": "@qVip/svip",
"ScoreTag": "[SVIP]",
"Doublejump": 2,
"Defuse": true,
"Gravity": 1.0,
"Speed": 0.05,
"MaxMoney": 20000,
"FallDamage": 0.5,
"ColorSmoke": false,
"HealthShotBoostEffect": 3.0,
"StartHealthRound": 2,
"StartHealth": 130,
"MaxHealth": 130,
"StartArmorRound": 2,
"StartArmor": 100,
"HelmetRound": 2,
"Helmet": true,
"ExcludePermission": "@css/ban",
"WelcomeMsg": "qvip.chat.welcomeSVip",
"GrenadesRound": 2,
"AddHegrenade": true,
"AddDecoy": true,
"AddSmokegrenade": true,
"AddMolotov": true,
"AddFlashbang": 1,
"HealthshotRound": 2,
"AddHealthshot": 1,
"TaserRound": 2,
"AddTaser": true,
"Money": {
"RoundStart": 500,
"RoundEnd": 300,
"Assist": 150,
"Death": 150,
"Kill": 200,
"KillHs": 150
},
"Health": {
"Assist": 1,
"Kill": 3,
"KillHs": 2
}
}
Opis pól:
Name- nazwa roli używana organizacyjnie w configuPermission- permisja CounterStrikeSharp wymagana do otrzymania roliScoreTag- tag wyświetlany w scoreboardzieDoublejump- liczba dodatkowych skokówDefuse- czy dawać CT zestaw do rozbrajaniaGravity- mnożnik grawitacjiSpeed- dodatkowy mnożnik prędkości ruchu;0.05to około+5%MaxMoney- maksymalna ilość pieniędzy dla tej roliFallDamage- mnożnik obrażeń od upadkuColorSmoke- czy smoke rzucane przez gracza mają być koloroweHealthShotBoostEffect- czas trwania efektu healthshot po zabójstwieStartHealthRound- od której rundy przyznawać startowe HPStartHealth- ilość HP na startMaxHealth- maksymalny limit HPStartArmorRound- od której rundy przyznawać startowy armorStartArmor- ilość pancerza na startHelmetRound- od której rundy przyznawać hełmHelmet- czy przyznawać hełmExcludePermission- gracze z tą permisją nie zobaczą wiadomości powitalnejWelcomeMsg- klucz tłumaczenia wiadomości powitalnej; ustawnull, aby ją wyłączyćGrenadesRound- od której rundy rozdawane są granaty z tej sekcjiAddHegrenade- dodaje HEAddDecoy- dodaje decoyAddSmokegrenade- dodaje smokeAddMolotov- dodaje molotovAddFlashbang- docelowa liczba flashbangów po spawnieHealthshotRound- od której rundy rozdawane są healthshotyAddHealthshot- docelowa liczba healthshotówTaserRound- od której rundy rozdawany jest taserAddTaser- czy dodawać taserMoney.RoundStart- bonus pieniędzy na start rundyMoney.RoundEnd- bonus pieniędzy na koniec rundyMoney.Assist- bonus za asystęMoney.Death- bonus za śmierćMoney.Kill- bonus za zabójstwoMoney.KillHs- dodatkowy bonus za headshotaHealth.Assist- ile HP odzyskać za asystęHealth.Kill- ile HP odzyskać za zabójstwoHealth.KillHs- dodatkowe HP za headshota
Przykład pełnego configu
{
"RandomVip": {
"RoleId": 2,
"NameTag": "Qesik",
"Round": 3,
"AddPermissions": [ "@qShowDamage/permission", "@css/custom_customa" ]
},
"NightVip": {
"RoleId": 2,
"Hours": [ 22, 8 ],
"DayNum": [ 0, 6 ],
"Command": true,
"NameTag": "Qesik",
"InfoToAll": true,
"AddPermissions": [ "@qShowDamage/permission", "@css/custom_customa" ]
},
"Doublejump": {
"Commands": true
}
}
Permisje
Role są przydzielane na podstawie permisji ustawionych w polu Permission.
Przykłady:
@qVip/vip@qVip/svip
Jeśli gracz spełnia warunki kilku ról, plugin korzysta z kolejności wpisów w Role.
Języki
Folder lang/ zawiera gotowe tłumaczenia:
pl.jsonen.jsoncs.jsonua.json
Możesz edytować istniejące pliki albo dodać własne tłumaczenie.
Wskazówki
RoleIdzawsze odnosi się do pozycji w tablicyRole, zaczynając od1- jeśli
WelcomeMsgma być wyłączone, użyjnull - jeśli
NameTagma nie być wymagany, ustaw pusty tekst - jeśli
NightVip.Command = false, nocny VIP może być nadawany automatycznie - bonusy rundowe zaczną działać dopiero od rund ustawionych w odpowiednich polach