# CS Chat Logger na Discordzie
Wtyczka AMX Mod X do gry Counter-Strike 1.6, która rejestruje wszystkie wiadomości z czatu w grze, czatu drużynowego oraz zdarzenia związane z dołączaniem i rozłączaniem się graczy na kanale Discord w czasie rzeczywistym za pomocą webhooków.
## Funkcje
- 💬 **Rejestrowanie wszystkich rozmów** – rejestruje wszystkie wiadomości z czatów publicznych
- 👥 **Rejestrowanie czatu drużynowego** – rejestruje wiadomości przeznaczone dla poszczególnych drużyn (terroryści, antyterroryści, widzowie)
- 📥 **Wiadomości o dołączeniu** – logi dotyczące połączeń graczy z serwerem
- 📤 **Komunikaty o rozłączeniu** – rejestrują momenty, w których gracze opuszczają serwer
- ⚙️ **Konfigurowalny** — zmienne CVars służące do włączania/wyłączania określonych funkcji
- 🎨 **Sformatowane wiadomości** – wykorzystuje formatowanie Markdown serwisu Discord (pogrubienie, bloki kodu) oraz emotikony w celu zapewnienia większej czytelności
- 🚫 **Filtrowanie botów** – automatycznie ignoruje wiadomości od botów
## Format wiadomości
### Cały czat
```
💬 **PlayerName**: message content
```
### Czat zespołowy
```
🔴 **PlayerName** `[T]`: message content (Terrorists)
🔵 **PlayerName** `[CT]`: message content (Counter-Terrorists)
👁️ **PlayerName** `[SPEC]`: message content (Spectators)
```
### Połącz/Odłącz
```
📥 **PlayerName** joined the server
📤 **PlayerName** left the server
```
## Instalacja
1. **Pobierz zależności**
- Upewnij się, że w`easy_http.inc` folderze „include” modułu AMX Mod X znajduje się plik
- Wymagane elementy: `amxmodx`, `amxmisc`, `cstrike`, `easy_http`
2. **Skonfiguruj webhook**
- Utwórz webhook Discorda na wybranym kanale
- Otwórz plik i`ChatLogger.sma` zmień adres URL webhooka w wierszu 15:
```pawn
new const g_szWebhookURL[] = "YOUR_DISCORD_WEBHOOK_URL_HERE"
```
3. **Kompiluj**
- Skompiluj wtyczkę za pomocą kompilatora AMX Mod X
- Umieść skompilowany plik w`ChatLogger.amxx` `addons/amxmodx/plugins/`
4. **Włącz wtyczkę**
- Dodaj do`ChatLogger.amxx` `addons/amxmodx/configs/plugins.ini`
5. **Uruchom ponownie serwer**
- Aby załadować wtyczkę, uruchom ponownie serwer lub zmień mapę
## Konfiguracja (CVars)
Dodaj te zmienne CVar do swojego pliku `amxx.cfg`lub ustaw je za pomocą konsoli/RCON:
### chatlog_pokaż_czat_zespołowy
- **Opis**: Określa, czy wiadomości z czatu drużynowego są rejestrowane w serwisie Discord
- **Wartości**:
- `1` = Pokaż czat drużynowy (ustawienie domyślne)
- `0` = Ukryj czat drużynowy
- **Przykład**: `chatlog_show_teamchat 1`
### chatlog_show_joinleave
- **Opis**: Określa, czy komunikaty o dołączeniu lub rozłączeniu się graczy są rejestrowane w Discordzie
- **Wartości**:
- `1` = Wyświetlaj komunikaty o dołączeniu/opuszczeniu (ustawienie domyślne)
- `0` = Ukryj komunikaty o dołączeniu/opuszczeniu
- **Przykład**: `chatlog_show_joinleave 0`
## Przykłady użycia
### Pokaż wszystko (ustawienie domyślne)
```
chatlog_show_teamchat 1
chatlog_show_joinleave 1
```
### Pokaż tylko czat publiczny
```
chatlog_show_teamchat 0
chatlog_show_joinleave 0
```
### Pokaż czat, ale ukryj powtarzające się komunikaty o dołączeniu/opuszczeniu
```
chatlog_show_teamchat 1
chatlog_show_joinleave 0
```
## Konfiguracja webhooka w Discordzie
1. Otwórz swój serwer na Discordzie
2. Przejdź do sekcji „Ustawienia serwera” → „Integracje” → „Webhooki”
3. Kliknij „Nowy webhook”
4. Wybierz kanał, na którym chcesz przechowywać logi czatu
5. Skopiuj adres URL webhooka
6. Wklej to do kodu źródłowego wtyczki (wiersz 15)
7. Przekompiluj wtyczkę
## Szczegóły techniczne
- **Wersja wtyczki**: 1.0
- **Autor**: illusion
- **Wymagania**: AMX Mod X 1.8.2 lub nowszy, moduł easy_http
- **Metoda HTTP**: żądania POST kierowane do interfejsu API webhooków serwisu Discord
- **Limit czasu**: 5 sekund na żądanie
- **Typ zawartości**: application/json
## Rozwiązywanie problemów
### Wiadomości, które nie pojawiają się w Discordzie
- Sprawdź, czy adres URL webhooka jest poprawny
- Sprawdź, czy w logach AMX Mod X nie ma błędów: `addons/amxmodx/logs/`
- Upewnij się, że moduł`easy_http` został załadowany
- Sprawdź adres URL webhooka ręcznie za pomocą narzędzia curl lub Postman
### Błędy kompilacji
- Upewnij się, że wszystkie pliki dołączane znajdują się w katalogu `addons/amxmodx/scripting/include/`
- Upewnij się, że korzystasz z AMX Mod X w wersji 1.8.2 lub nowszej
- Sprawdź, czy jest`easy_http.inc` prawidłowo zainstalowany
### Pojawiające się wiadomości od botów
- Wtyczka automatycznie filtruje boty za pomocą `is_user_bot()`
- Jeśli boty nadal się pojawiają, może to oznaczać, że gra nie wykrywa ich prawidłowo
## Oświadczenie o ochronie prywatności
Ta wtyczka rejestruje wszystkie wiadomości na czacie oraz informacje o graczach na zewnętrznym kanale serwisu Discord. Pamiętaj, aby:
- Poinformuj graczy, że rozmowy na czacie są rejestrowane
- Należy przestrzegać lokalnych przepisów i regulacji dotyczących ochrony prywatności
- Zapisz adres URL webhooka serwisu Discord (nie udostępniaj go publicznie)
## Licencja
Można z tego korzystać i wprowadzać zmiany bezpłatnie. Podanie źródła byłoby mile widziane, ale nie jest wymagane.
## Pomoc techniczna
W razie problemów, sugestii lub chęci wniesienia wkładu prosimy o kontakt z autorem wtyczki.
---
**Uwaga**: Ta wtyczka wysyła dane do serwerów Discorda. Upewnij się, że Twój serwer ma dostęp do Internetu i może połączyć się z punktami końcowymi API Discorda.