| .. | ||
| 1v1 | ||
| img | ||
| js | ||
| sounds | ||
| .gitignore | ||
| build.ps1 | ||
| index.php | ||
| README.md | ||
| SECURITY.md | ||
🎮 Neon Ping-Pong Game
Nowoczesna gra ping-pong z neonowym stylem, zaprojektowana do obsługi setek tysięcy graczy.
📁 Struktura Projektu
ping-pong/
├── index.php # Główny plik HTML + PHP
├── sounds/ # Pliki dźwiękowe
│ ├── 1.mp3 # Dźwięk zderzenia #1
│ ├── 2.mp3 # Dźwięk zderzenia #2
│ ├── 3.mp3 # Dźwięk zderzenia #3
│ ├── 4.mp3 # Dźwięk zderzenia #4
│ ├── 5.mp3 # Dźwięk zderzenia #5
│ ├── won.mp3 # Dźwięk wygranej
│ └── gameOver.mp3 # Dźwięk przegranej
└── js/ # Moduły JavaScript
├── game.js # Główna logika gry
├── bot-ai.js # AI bota (3 poziomy trudności)
├── audio-manager.js # Zarządzanie dźwiękami
└── ui-manager.js # Zarządzanie interfejsem
🎯 Funkcje
Dostępne:
- ✅ Tryb Bot - Łatwy: Graj przeciwko AI na łatwym poziomie
- ✅ Neonowy design: Ciemny motyw z efektami świetlnymi
- ✅ System punktacji: Pierwsza strona do 10 punktów wygrywa
- ✅ Efekty dźwiękowe: Losowe dźwięki przy zderzeniach
- ✅ Płynne animacje: Nowoczesny wygląd i odczucia
W przygotowaniu:
- 🚧 Tryb Online: Graj przeciwko innym graczom przez internet
- 🚧 Tryb Bot - Średni: AI na średnim poziomie trudności
- 🚧 Tryb Bot - Trudny: AI na trudnym poziomie trudności
🔧 Architektura Modułowa
game.js - Główna Logika Gry
class PingPongGame {
- Zarządza główną pętlą gry
- Obsługuje kolizje i fizykę
- Renderuje elementy gry (paletki, piłka, siatka)
- Śledzi wynik
}
bot-ai.js - Sztuczna Inteligencja
class BotAI {
- 3 poziomy trudności (easy, medium, hard)
- Predykcja ruchu piłki (dla wyższych poziomów)
- Konfigurowalna prędkość i accuracy
- Opóźnienie reakcji dla realizmu
}
audio-manager.js - Menedżer Dźwięków
class AudioManager {
- Odtwarzanie losowych dźwięków zderzeń
- Dźwięki wygranej/przegranej
- Kontrola głośności (efekty/muzyka)
- Cache audio dla lepszej wydajności
}
ui-manager.js - Menedżer Interfejsu
class UIManager {
- Zarządzanie menu (główne, wybór trudności)
- Modalne okna (wygrana, przegrana, "w przygotowaniu")
- Aktualizacja wyniku
- Przełączanie widoków
}
🎮 Sterowanie
- W lub Strzałka w górę: Ruch paletki w górę
- S lub Strzałka w dół: Ruch paletki w dół
🚀 Skalowalność
Struktura jest przygotowana na:
- Tryb online: Dodaj moduł
network-manager.jsdo obsługi WebSocket - Ranking: Dodaj moduł
leaderboard.jsdo śledzenia najlepszych wyników - Więcej poziomów trudności: Łatwa konfiguracja w
bot-ai.js - Power-upy: Dodaj moduł
powerups.jsdla dodatkowych funkcji - Tournamnety: System turniejów dla wielu graczy
📝 Dodawanie Nowych Funkcji
Dodanie nowego poziomu trudności bota:
// W bot-ai.js
botAI.setCustomDifficulty('expert', {
speed: 9,
reactionDelay: 2,
accuracy: 0.98,
predictionEnabled: true,
predictionStrength: 0.95
});
Dodanie nowego dźwięku:
// W audio-manager.js
audioManager.playSound('newSound.mp3', 0.5);
🔊 Instalacja Dźwięków
Dodaj następujące pliki do folderu sounds/:
1.mp3-5.mp3: Krótkie dźwięki zderzeń (0.1-0.3s)won.mp3: Dźwięk wygranej (~2-3s)gameOver.mp3: Dźwięk przegranej (~2-3s)
🌐 Przyszły Tryb Online
Struktura przygotowana na implementację:
// Przyszły network-manager.js
class NetworkManager {
- WebSocket połączenie z serwerem
- Synchronizacja stanu gry
- Matchmaking
- Chat między graczami
}
💡 Performance
- Modułowa architektura = łatwiejsze debugowanie
- Separacja logiki = lepsze cache przeglądarki
- Gotowe na load balancing dla trybu online
- Optymalizacja dla wielu równoczesnych sesji
📞 Kontakt
kontakt: wspolpraca@togethere.cloud