TEKNOLOJİ
Ortak bir deneyimin arkasındaki sistem.
Oynanıştan kalıcı verilere: CleanOceans’ın oyun istemcisi, çok oyunculu bağlantısı ve yönetim altyapısı.
01 / SİSTEM MİMARİSİ
Birbirine bağlı, ayrı sorumluluklar.
- 01
Unity oyun istemcisi
↔ - 02
ASP.NET Core Web API
↔ - 03
MySQL veri tabanı
Oyun istemcisi ve yönetim paneli, kalıcı verilere API üzerinden erişir. Gerçek zamanlı çok oyunculu iletişim ise Unity Lobby, Relay ve Netcode for GameObjects ile yürütülür.
02 / OYUN İSTEMCİSİ
Unity ve C#
2D su altı ortamı; hareket, atık toplama, geri dönüşüm, canlı kurtarma ve takım arkadaşını canlandırma mekaniklerini bir araya getirir. Kayıt, giriş, lobi, envanter ve maç sonuç ekranları oyun akışını tamamlar.
03 / ÇOK OYUNCULU ALTYAPI
Aynı lobiden, aynı dünyaya.
1–4 oyuncu Unity Lobby üzerinden bir araya gelir. Relay bağlantıyı sağlar; Netcode for GameObjects oyuncu hareketlerini ve oyun içi olayları senkronize eder. WebGL bağlantısında WSS, masaüstünde UDP kullanılır.
04 / VERİ VE İŞ KURALLARI
Maç biter, ilerleme kalır.
ASP.NET Core Web API; hesapları, oyuncu profillerini, maç sonuçlarını, skorları ve oyun içi ekonomiyi yönetir. MySQL verileri kalıcı olarak tutar. Controller, service ve repository katmanları iletişim, iş kuralları ve veri erişimini birbirinden ayırır.
05 / YÖNETİM VE DAĞITIM
Oyunun yönetim tarafı.
React ve TypeScript ile geliştirilen panel; oyuncuları, maçları, ekonomi hareketlerini ve oyun içi olayları takip etmeyi sağlar. Linux ve Nginx tabanlı dağıtım yapısı, API ile web arayüzünü sunacak şekilde tasarlanmıştır.
04 / OYUNUN ARKASINDA
Bir oyundan uçtan uca bir projeye.
CleanOceans, bir bilgisayar mühendisliği bitirme projesi olarak geliştirildi. Oyun istemcisi, sunucu, veri tabanı ve yönetim paneli aynı sistemin parçalarını oluşturuyor.

Unity / C#
Oynanış ve çok oyunculu deneyim
ASP.NET Core / MySQL
Hesaplar, maç sonuçları ve kalıcı veriler
React / TypeScript
Yönetim paneli ve oyun verilerinin takibi
