Soccer Online: Ball 3D

Soccer Online: Ball 3D

35 ratings
Oyunun Kurucusundan Ball 3D Rehberi
By compoSedly //
Oyuncuların daha iyi olmak için bilmesi gereken her şey, Ball 3D iç dünyasında nasıl çalışıyor ?
   
Award
Favorite
Favorited
Unfavorite
Giriş
Bu rehber oyunun kurucusu Maniek tarafından yazılmıştır ve oyunun admini Compo tarafından Türkçe'ye çevrilmiştir.

Maniek tarafından yazılan orijinal ingilizce versiyonu:
https://steamproxy.net/sharedfiles/filedetails/?id=2049413701&fbclid=IwAR2EyEWmc5yvZHKv5qhhZH3MXwdUkd-htvUoa_N9EKfhq5mbQ004-hdhoBA


Bu rehberde size Ball 3D oyununun arka planda nasıl çalıştığını anlatacağım. Size bilmeniz gereken bütün numaraları göstereceğim. Ball 3D'yi uzun zamandır oynuyorsanız belki bu bilgilerin çoğunu biliyorsunuzdur, fakat iddia ediyorum en azından bu bilgilerden biri sizi şaşırtacak.

Bu rehberde açıklanan şeyler Ball 3D'nin 3.29 sürümü (8 Nisan 2020'de güncellendi) ve öncesiyle ilgilidir.

3.29 güncellemesinden sonra artık oyunda işe yarar bilgileri kullanabileceksiniz: FPS, Oyuncu Hızı, Yavaşlama, Ping (Gecikme Süresi), Latency (rehberin ileriki kısımlarında anlatılacak) ve Ağ Bilgisi. Bu 3 göstergeyi oyunda Options -> Info kısmından veya sohbeti kullanarak aktifeştirebilirsiniz (görmek için sohbete /help yazın: /info_fps, /info_speed, /info_slowdown, /info_ping, /info_latency, /info_network)

Bu değişkenler en iyi ve en doğru oda kurduğunuz zaman çalışır, başka odalarda oynadığınızda FPS normal çalışır fakat Oyuncu Hızı (Player Speed) ve Yavaşlama (Slowdown) çok çok ufak değişkenlik gösterebilir.

Bu rehberi takip etmek istiyorsanız, oyunda bu göstergeleri etkinleştirmeniz gereklidir.


// Oyun Kurucusundan Not
Not: Benim oyunda adım Maniek. Kullanıcı adımın yanında sarı bir A ikonu var, aynı şekilde diğer adminlerde de aynı ikon var.

//Çevirmenden Not
Not: Benim ise oyunda adım Compo. Oyunun Türk adminiyim. Bana oyun içinden veya Steamdan ulaşabilirsiniz.

Geçmiş
2011'de iOS oyunları yapmaya başladım ve 2012'de Unity3D oyun motorunu kullanmaya başladım. Ball 3D benim ilk çoklu oyunculu ve ikinci 3B (3 Boyutlu) oyunumdu (Birinci oyunum ANOIX'di Steam'da bedavaya oynayabilirsiniz).

Ball 3D fikrini 2012 Mayıs ayında buldum. Aşağıdaki resimde oyundan aldığım ilk ekran görüntüsü var.


Oyun Haxball'dan esinlenilmişti ve eğer EURO 2012 (Polonya ev sahipliğinde yapıldı, Polonya benim doğduğum ülke)'den önce bana beklenmedik bir şekilde futbol oynama isteği gelmeseydi muhtemelen hiç yapılmayacaktı.

Oyunu yapmaya başladığımda, oyuncuların mümkün olduğunca fazla hareket yapmasına izin vermek istedim. Blender kullanarak 3D model oluşturmaya başladım. Aklımdaki ilk fikir oyuncuların sadece bacaklardan oluşmasıydı. Oyuncu her türlü hareketi, çalımı ve numarayı yapmak için her bacağını ayrı ayrı kontrol edebilirdi.


Fakat böyle bir oyun yapmanın imkansızlığını kısa sürede farkına vardım. 2 bacağı ayrı ayrı sadece fareniz ve klavyenizle kontrol etmenin bir yolu yoktu (akıl okuma işe yarayabilir, torunum eğer bu yazıyı okuyorsan bu fikri kullanabilirsin). Ben de bunun sonucunda bu yolun tam tersine giderek tüm kontrolü oyuncuya bırakacak en basit şekli bulmaya koyuldum.


Ve ünlü disk doğdu. Üst kenarlarını bilerek kestim bu sayede sadece güzel görünmüyor size topla daha fazla kontrol sağlıyordu. Üst şeklin kullanılma amacı topu yukarıya doğru vurabilmekti. O zamanlar topa dikey vurmak için SHIFT yoktu. Yani bunu yapmanın tek yolu, topun üstüne çıkıp sonra topu geriye doğru yuvarlayıp sonra dümdüz gidip vurmaktı. Bu yöntemle topa altından vuruyordunuz ve top kalkıyordu (Bunu hala yapabilirsiniz).


Daha sonra size bir disk şekliyle verebildiğim kadar özgür hareket vermek için bir çok hareket daha tanıttım. Bazıları daha sonraki güncellemelerde eklendi.

Tüm oyunu sıfırdan yaratabilmek için 5 hafta boyunca 7/24 çalıştım. Oyundaki büyük küçük her ayrıntı oyuncuların eğlenmesi için yapıldı.


Daha önce Networking (Networking, multiplayer oyunlarda siz-sunucu ve diğer oyuncular arasında kurulan ilişki) hakkında hiç bir tecrübem yoktu. Yani her şeyi sıfırdan öğrendim. Ortalama 4 hafta sonra başladım. Oyun networking hariç hazırdı. Bunu oyuna ekleyebileceğimden emin bile değildim (gerçek zamanlı çoklu oyunculu oyun yapmak gerçekten zor). Fakat başardım ve 2 Haziran 2012'de Ball 3D'yi tarayıcı oyunu olarak yayınladım (Fakat giriş yapmak için Unity Plugini gerekiyordu.).


Oyun odaları oyuncular tarafından, internet tarayıcısında, antilag olmadan kuruluyordu. Oyunu oynamak çok zordu (Hareket gecikmesi korkunçtu). Fakat oyuncular yine de oynamaya başlamıştı. Çıkışından bir veya iki gün sonra, Ball 3D'nin linki ünlü bir Polon sitenin ana sayfasında yayınlandı. Eğer bu olmasaydı bunu okuyup okuyamayacağınızdan emin değilim. Bu oyunun popülerlik kazananıp kazanamayağından ve önümüzdeki 8 yıl boyunca üzerinde çalışacağımdan da emin değildim.

Oyunu yayınladığımdan beri sayısız güncelleme yaptım. Çoğunu bu linkten görebilirsiniz: http://www.ball3d.com/news/page/10/

Buraya güncellemeleri girmeyi 2017 de bıraktım, yani daha yeni güncellemeler için Ball 3D facebook sayfasına göz atmalısınız: https://www.facebook.com/pg/ball3dgame/photos/

Sanırım 2012'den beri 200'e yakın güncelleme yaptım. Artık saymıyorum.

Size ne tür özellikler eklediğimi görmeniz ve oyunun neredeyse 10 yılda nasıl geliştiğini görmeniz için yenilikler sayfasından 10 sayfa okumanızı ve facebook sayfasına göz atmanızı öneriyorum.

Antilagı eklemeyi oyunun başından beri düşünüyordum. 2013'de Ball 2D'yi (Diğer oyunum) antilag (Çok iyi değildi ama az veya çok çalışıyordu) özelliğiyle yayınladım. Oyuna antilagı eklemek zordu fakat istiyordum. Sorun Unity oyun motorundaydıUnity'de bunu yapmak imkansızdı. Antilagı yapmak için oyundaki fizikleri gerçek zamanlı simule edebilen bir fonksiyona ihtiyacınız vardır. Yani bu şu anlama geliyor Dünya'yı 100 milisaniye ileri almanın bir yolunu bulmalısınız. Unity'de bunu sağlayan bir fonksiyon yoktu fakat antilagı yapmak için çok azimliydim ve sonunda nasıl yapacağımı buldum.

Unity'de Time.timeScale adında bir değişken var, eğer bunu 0 yaparsanız oyun durur, 100 yaparsanız oyun 100 kat daha hızlı çalışır. Bu değişken antilag için tek şanstı. 2016'da bunu oyuna eklemek için 4 ay boyunca uğraştım. Neredeyse her gün adım adım Unity'i Antilagı yapmak için nasıl kandıracağım hakkında çalışıyordum. Time.timeScale'yi 100 yaptığınızda her şey 100 kat daha hızlı hareket eder, yani benim animasyonları, efektleri, parçacıkları ve diğer şeyleri nasıl bu durumdan muaf bırakabileceğimi bulmam lazımdı.

Eğer bu konuya ilgiliyseniz benim antilag maceram hakkında daha fazla şeyi buradan bulabilirsiniz: https://forum.unity.com/threads/physics-and-prediction.158514/

Sonunda oyunumu 2017'de Steam'a ekledim. Steam'ın algoritması oyunumu beğenmiş olacak ki ilk ayda yeni 500.000 oyuncu oyunu oynadı. Ne yazık ki çoğu bu oyunu şaka veya Rocket League çakması sandı (Ball 3D ünlü Rocket League'den daha önce yapıldı)

Ball 3D Ölçü Birimi
Daha derine inmeden önce Ball 3D de kullanacağımız ölçü birimini tanıtayım. Oyundaki ölçü birimimiz "Ball 3D Unit" kısa adıyla "u".

Gerçek dünyada uzunluğu tarif ederken bir çeşit birim kullanmalısınız. Örneğin "bu çizginin uzaklığı 1 metre" diyebilirsiniz. Fakat Ball 3D'de metre ölçü birimini kullanamayız çünkü Ball 3D dünyasında metreyi referans alabileceğimiz bir bölüm yok. Yani burada kendi ölçü birimimizi tanımlayacağız.

Ball 3D Unit ölçü birimi oyundaki diskinizin çapına eşittir. Bu bu kadar basit. Yani 1u = Oyundaki diskinizin çapı.

Bu anda sonra ne zaman "bu çizginin uzunluğu 3u'ya eşittir" dersem bu çizginin uzaklığının oyundaki diskinizden 3 tanesinin çapı olduğunu anlamalısınız.



Hareket
Ball 3D'de hareket iki gruba ayrılır: Dikey ve Yatay hareket.

Yatay hareket şunları içerir: Sağa, sola, öne ve arkaya hareket etme.

Dikey hareket ise şunları içerir: Zıplama ve düşme (Yukarı ve aşağı).

Bu iki hareket bir birinden bağımsızdır. Yani siz zıplarsanız bu sizin yatay hareketinize her hangi bir etki göstermez. Başka bir deyişle havadayken tıpkı yerde hareket ettiğiniz gibi yatay hareket edebilirsiniz. Zıplama da aynı şekilde çalışır, zıplarken hareket halinde olup olmamanızın bir önemi yoktur.

Ball 3D'de maksimum hareket hızı 3 units / saniye olarak tanımlanmıştır. Yani sizin her saniyede 3 Ball 3D Units hareket ettiğinizi gösterir (Unit kelimesi bir önceki başlıkta açıklandı). Oyunda "/info_speed" komutunu kullanarak hızınızı görebilirsiniz. Nasıl çalıştığını daha iyi anlamak için oyunda kendiniz test etmeyi deneyin.

Yatay hız (zıplama) lineer değildir. Yani siz zıplama tuşuna ne kadar basarsanız ve ne hızla basarsanız ona göre hareketi gerçekleştirir.

Hareketin Gelişimi

Ball 3D'deki hareket mekanikleri benim tarafımdan yıllar içinde değişti. Gecikmeyle savaşmak için sayısız geliştirmeler ekledim (Uzun yıllar boyunca antilagımız ve fiziksel serverlerimiz yoktu, yani bu büyük bir problemdi). Her şey gecikmeye karşı dizayn edildi, zıplama bile.

Normalde oyun 2 kat daha hızlıydı, fakat bütün hızları gecikme problemi yüzünden oyun çıkmadan önce yarıya indirdim.

Yavaşlama (Slowdown)
Yavaşlama konsepti oyuna daha önce eklendi fakat 3.29 güncellemesiyle çok ufak değiştirildi.

Diskinizin köşesi eğer topun en yakın noktasına 1.5 unitten daha yakınsa, yavaşlama sistemi çalışmaya başlar. Topa ne kadar yakınlaşırsanız üstünüzdeki yakınlaşma artar. Topa dokunduğunuzda ise hızınız 3 u/s'den 2.56 u/s'ye iner (u/s = unit/saniye).

Oyunun içinde "/info_slowdown" komutunu kullanarak yavaşlamayı görebilir ve bunu oda kurarak tecrübe edebilirsiniz.

Yavaşlamadan daha az etkilenmek için topu sürerken topa hafif hafif vurmanız gerekir. Aynı zamanda yavaşlamayı azaltmak için zıplayabilirsiniz (Çünkü dikey hız artar ve yavaşlama hızı azalır). Güncelleme 3.29'da yavaşlama kodunu biraz değiştirdim ve şimdi daha tutarlı ve gerçeğe yakın çalışıyor.

Bir oyuncuyu kovalarken en iyi strateji ona yakından veya onun üstündeyken zıplamaktır. Güncelleme 3.29'dan sonra kovalamak daha heyecan verici çünkü zıplamasanız bile bir oyuncuyu kovalayıp topu alabilirsiniz, fakat zıplamak size ek güçlendirme ve avantaj sağlar.

Bunu arkadaşınızla deneyin. Onu kovalayın ve oyunda "/info_speed" ve "/info_slowdown" değişkenlerinin değerlerine bakarak en iyi kovalamanın hangisi olduğunu bulun.

YÖN DEĞİŞTİRME


Yönünüzü değiştirmenin en doğru yolu, ileri tuşu basılıyken hızlıca farenizi istediğiniz yöne çevirmektir.

Oyunda "Player Speed" değişkeninin değerine bakın, eğer yön değiştirirken sağ veya sol yön tuşlarını da kullanırsanız hızınız biraz düşecektir ve bu size zaman kaybettirecektir.

Eğer sadece ileri yön tuşuna basıp farenizle dönerseniz, hızınız her zaman 3 u/s'de kalacaktır. "/info_speed" komutuyla hızınızı görüp oyunda bunu test edebilirsiniz.
Topa Vurma
Topa vurmak için öncelikle güç vermelisiniz.

Maksimum vuruş gücüne ulaşmak 0.5 saniye sürer.

Vuruşun çalışması için:
  • Topun merkezi ile sizin diskinizin merkezi arasında en az 1u mesafe olmalı.
  • Dikey uzaklık 0.55u'dan küçük olmalı.

Diskinizin orta noktası aşağıdaki resimde gördüğünüz gibi diskinizin altında bulunur.



Diskinizin çapı 1u, yüksekliği ise 0.23u'dur.

Topun çapı ise neredeyse 0.6u'dur.

Yani bu şu anlama gelir, eğer biri sizin üstünüzdeyse ve top o kişinin üstündeyse siz topa vuramazsınız çünkü topun merkezi size uzak olacatır (0.23u sizin yüksekliğiniz, 0.23 üstünüzdekinin yüksekliği ve topun yarı çapı da neredeyse 0.3u bu durumda topa çok uzaksınız).

Yani bu topa üstünüzle vurmak istiyorsanız topun size çok yakın olması gerektiği anlamına gelir. Eğer topa altınızla vuracaksanız top biraz daha uzak olabilir. Çünkü merkez altınızda.

Eğer vurduğunuzda top gerektiği kadar size yakın değilse, vurduğunuz güç 0.3 saniye (300 milisaniye) kadar kalır, eğer bu sürede top size gelirse topa vurursunuz. Bu özellik 2012'de oyunun ilk güncellemelerinden birinde eklendi.

Eğer sürekli vuruşunuzun aktif kalmasını istiyorsanız (örneğin kaleciyseniz), vuruş barının tam gücünün 3/5'i kadar vurursanız yeterli olacaktır.

Topa vurduğunuzda, vuruşun yönü diskinizin alt kısmının yaklaşık 0.15u'dan başlayıp topun ortasında biten bir vektördür. Bunun sayesinde topa vururken ufak bir zıplamayla yerden vurabilirsiniz. Bu Ball 3D'nin en önemli hareketidir.

Topa vurduğunuzda vuruşun normal, falsolu veya dikey (bu SHIFT vuruşu olarak da adlandırılır) olmasının bir önemi yoktur. Hız her zaman topun o anki hızına eklenir, topun hızı hiç bir zaman silinip sizin vuruşunuzun hızı eklenmez.

Maksimum vuruş hzı 15u/s'dir. Ve oyuncunun maksimum hızı ise 3 u/s'dir, yavaşlama ile bu biraz düşer bunu biliyoruz. Yani bu şu anlama gelir, topu sürerken maksimum güçle topa vurursanız topun hızı 17.5 u/s olur. Bu hız zamanla hava sürtünmesine bağlı olarak azalır.

Eğer kaleciyseniz ve benim dediğim taktiği kullanıyorsanız (vuruş barı her zaman aktif), sizin vuruşunuzun hızı potansiyel olarak 9 u/s'dir. Yani bu maksimum güçle vurulmuş bir topu durdurmaya yetmez, topu diskinizle durdurmalısınız fakat bu hız topun yönünü ufak da olsa değiştirmeye yarar.

Diğer yapabileceğiniz şey ise diskinizin üst kısmını kullanmaktır. Eğer top üst tarafınıza temas ederse dikey hızı 0 u/s olarak değişir. Bu da sizin vuruş gücünüzün topun dikey hızına etki edeceğini gösterir.

Dikey Vuruş (SHIFT)
Yeni güncellemelerle birlikte, dikey vuruş sadece yerdeyseniz veya yere yakınsanız çalışır. Havadayken dikey vuruşu kullanamazsınız.

Önerilen Ayarlar
Eğer oyunu yüksek seviyede oynamak istiyorsanız, oyununuzu benim dediğim gibi yapılandırın. Bu size bazı avantajlar sağlayacaktır.

Görüntü

  • Ekranınızda olabildiğince az detay olmasına dikkat edin. Bu detaylar dikkatinizi dağıtır ve top havadayken görmenizi zorlaştırır.
  • -Taraftarları ve tribünleri "/tribunes 2" komutuyla kapatın.
  • 3D Çim (3D Grass) ayarını ayarlardan kapatın (Fakat bu açıkken daha iyi hissedersiniz).
  • Eğer PRO hesabınız varsa, topu biraz daha görünür yapın. Kırmızı renk yeşil çim karşısında en görünür renktir, yani topu kırmızı yaparsanız sizin için daha iyi olacaktır.
  • "/fov" değerini arttırın, size önerim "/fov 100"'de oynamanızdır. Yüksek fov değeriyle daha çok şey görürsünüz ve istediğiniz yöne daha hızlı dönersiniz. Eğer bazı şeyler sizin için tuhaf görünürse, çözünürlüğünüzün 16:9 olduğundan emin olun ve ekranınızı kendinize yaklaştırmayı deneyin. Bu biraz yardımcı olabilir. (Ekranınızı çok yakına getirmeyin bu gözlerinize zarar verebilir).
  • - Tam ekran modunda ve 16:9 modunda oynarsanız görüşünüz artar.

Tepki Süresi

- Hızlı tepki süresi her zaman daha iyidir. Çabuk tepki vermek için klavyenizi ve farenizi ayarlamaya biraz zaman harcayın.

- İlk yapmanız gereken şey fareniz için en yeni driverleri indiremktir. Sonrasında ince ayar yapmaya biraz zaman harcayın. "/sensivity" ve "/fov" değerlerinizi görüşünüzü en iyi ve dönüşünüzü de olabilecek en hızl şekilde yapabilecek şekilde ayarlayın. 180 derece dönmeyi deneyin (Bir yönde dümdüz gidin ve tam bu yönün tersine farenizle hızlıca dönmeyi deneyin).
Tek seferde böyle dönüşler yapabilmeniz gerekir, eğer yapabiliyorsanız her şeyi doğru ayarladınız demektir. Şunu unutmayın ki her değişikliğe alışmanız biraz zaman alır.

- Tuş yapılandırması da gerçekten önemlidir. Aynı anda birden fazla düğmeye basmalısınız o yüzden hepsine rahatça basabildiğinizden emin olun. Ben her zaman topa falso veremk için "Q" ve "E" tuşlarını kullanıyorum, fakat eğer siz ASDW (WASD de diyebiliriz) kullanıyorsanız belki bu tuşlara aynı anda basarken sorun yaşayabilirsiniz. Eğer farenizde ekstra tuşlar varsa onları kullanabilirsiniz. Falso için fare topunuzu da kullanabilirsiniz (Fakat Ball 3D bunu yapmanıza izin vermez) yani fare tuşlarınıza atama yapmanızı sağlayacak 3. parti uygulamaya veya kendi farenizin bunun için yapılmış programını kullanmalısınız, fakat bunu öğrenmesi kolay değildir.

- Tuş ne kadar küçükse o kadar hızlı basarsınız ve parmağınız da o kadar az yorulur. Ben her zaman boşluk (space) tuşuyla zıplıyorum fakat bu benim tepki süremi biraz arttırıyor çünkü bu tuş büyük. Bunu çözmek için JKLI tuşlarıyla hareket etmeyi ve Sağ Alt tuşuyla zıplamayı düşünebilirsiniz. Bu WASD ve SPACE yönteminden daha verimlidir. Ball 3D'yi uzun zamandır oynuyorsanız tuşları değiştirmek sizin için zor olabilir. Bu durumda kendi bildiğinizle oynamak daha doğrudur. Sizin oyundaki kararlarınız ve sahada yaptıklarınız bastığınız tuşların boyutundan daa önemlidir.

- En sık kullandığınız tuşların parmağınıza yakın olduğundan emin olun. Hatta parmaklarınız o tuşlara zaten dokunuyorsa bu çok daha iyidir.
Gecikme
Oyunda antilagı açın ve "frames of latency" ayarını 0'a getirin. Eğer pinginiz 80-100ms'den yüksekse, daha yüksek rakamları tercih edebilirsiniz (1-3).

Frames of latency ayarı için en iyi değer 0'dır, çünkü 0 gecikmeyle oynarsınız ve aksiyonlarınızın diskinizi gecikmeden etkilediği görürsünüz. Fakat daha yüksek pinglerde bu değerde bazı hatalar görebilirsiniz. Eğer topu sürüyorsanız oyun bunu çok iyi tahmin eder fakat diğer oyuncuların hareketleri ve topa vuruşları ancak bir dereceye kadar tahmin edilebilir.

3.29 güncellemesinde oyuna yeni özellikler ekledim. Bundan sonra size "VSYNC" ayarını menüden veya "/vsync 0" komutuyla devre dışı (off) bırakmanızı ve maksimum FPS değerinizi ("/max_fps") 120 veya 240 yapmanızı öneriyorum. Eğer monitörünüzün yenileme hızı 60Hz ise bu değeri 2,3 veya 4 ile çarpabilirsiniz. Veya ilk fps limiti 900 yapıp bilgisayarınızın ne kadar FPS alabildiğini görüp ona göre maksimum değer ayarlayabilirsiniz. Eğer değeri 240 yaparsınız, bilgisayarınızın her zaman saniyede 240 görüntü işleyebileceğinden emin olmalısınız, başka bir deyişle fpsinizi 240 yaptığınızda fpsiniz her zaman sabit olmalıdır. Eğer bu olmazsa oyunu akıcı oynayamazsınız.

Monitörünüzün yenileme hızını öğrenmek için dikey senkronizasyonu (VSYNC) açın ve "/info_fps 1" komutuyla fpsinize bakın. Gördüğünüz fps büyük ihtimal sizin yenileme hızınızdır.

240 FPS'i tecrübe etmek için, tüm grafikleri düşürün: tribünleri "/tribunes 2" komutuyla kapatın, 3B Çimleri (3D Grass) kapatın, anti-aliasing ayarını "off" konumuna getirin.

Bilgisayarınızın desteklediği en yüksek çözünürlüğü kullanın. Diğer çözünürlükler gecikmeyi arttırabilir.

VSYNC kapalı ve yüksek fps değerinde oynarsanız, gecikmeniz düşecektir çünkü sizin oyuna gönderdiğiniz bütün komutlar server tarafından daha hızlı yorumlanacaktır. Client olarak oynadığınızda (Yani başka bir servere girdiğinizde), oyuna gönderdiğiniz girdiler saniyede 60 kere servere gönderilir çünkü fps değeriniz 60'tır. Ball 3D'de client olarak oynadığınızda servere saniyede gönderdiğiniz veri fpsinize eşittir.

Diyelim ki monitörünüzün yenileme hızı 60Hz ve VSYNC ayarınız açık. Şimdi diskinizi sola hareket ettirmek için sola hareket ettirme tuşunuza basıdn. Tuşa bastıktan sonra 0ms ile 16ms arasında diskinizin hareketini görmek için beklemeniz gerekir (hatta bazen 32ms'ye bile çıkabilir bu süre) fakat eğer VSYNC'yi kapatırsanız, bekleme süresi her zaman 0ms olacaktır.

Fakat bu VSYNC'yi kapatınca olacak güzel şeylerin bittiği anlamına gelmez! Oyunda "/info_latency" (Bunu aşağıdaki bölümde açıklıyorum) komutunu kullanarak latency değerinize bakın. VSYNC özelliği kapalı olunca ve alabileceğiniz maksimum FPS'i aldığınızda size daha az gecikme (latency) gösterecektir. Bu nasıl olabilir ?

Network client sendrateyi (Sizin servere saniyede gönderdiğiniz veri sayısı) 1000 yaptım. Bu sayede sizin saniyede gönderdiğiniz veri sayısı FPS değerinize bağlı olduğu için FPS değeriniz arttıkça servere saniyede daha fazla veri gönderebileceksiniz.

Size VSYNC özelliğini kapatarak oynamayı öneriyorum, çünkü serverden çok daha fazla yanıt ve gecikmeyi azaltacaksınız. Eğer max_fps 240 değerinde oynarsanız:
  • Sizin girdileriniz servere 12ms daha hızlı gönderilir. (Yani pinginiz 24ms daha düşükmüş gibi oynarsınız)
  • Serverden gelen bilgiyi bilgisayarınızın gücü kadar yorumlarsınız, bu da sınırları kaldırır ve gecikmeyi 16msden 0 msye düşürür.
  • Yazının başında antilagı 0 yaparak gecikmeyi 16msden 0msye çektiğinizi anlatmıştım.

Buradaki en önemli nokta, sizin girdilerinizin servere olabildiğince hızlı yollanmasıdır. Topa vurduğunuzda, server bunu VSYNC kapalıyken 12ms daha erken öğrenir.

Bu olayın tek dezavantajı bazı zamanlar yırtılma efekti hissedersiniz, fakat bu sizi çok etkilememeli. Eğer bu sizi çok etkiliyorsa yani bu olay çok görünürse, "/max_fps" değerinizi değiştirerek diğer değerleri de test edebilirsiniz. Size üstte de önerdiğim gibi monitörünüzün yenileme hızının (VSYNC özelliği açıkken aldığınız fps) katlarını kullanın. Neyse ki Ball 3D bu efekte karşı çok duyarlıdır. Yani yırtılma efektinin hissedilmesi zordur, özellikle "/tribunes 2" ayarında oynuyorsanız.

Bu dediklerimin hepsini tam ekranda test edin.


LATENCY vs PING
3.29 güncellemesinde "/info_ping" ve "/info_latency" komutlarını ekledim.

"/info_ping" komutu size diğer oyunlardan veya başka şeylerden bildiğiniz pingi gösterir. "/info_latency" komutu ise oyunda her hangi bir takıma girdiğinizde çalışmaya başlar. Bu size oyunda aldığınız gerçek gecikmeyi (latency) gösterir.

Peki bu ikisi arasındaki fark nedir? Ping size sadece paketlerin client'den (sizin oyununuz) servere paketlerin ne kadar hızlı gittiğini gösterir. Bir sunucu (server) pingi aldıktan sonra ona hemen cevap verir. Fakat Ball 3D'de (ve diğer oyunlarda) siz sunucuya bir şey gönderdiğinizde size hemen cevap vermez. Cevabı sendrate değerine göre verir (Bu değer fiziksel odalarda yani dedicated odalarda saniyede 60 kez, hosted odalarda yani sizin kurduğunuz odalarda saniyede 17 kezdir). Gecikme (latency) size pingten daha çok şey söyler.

Ping diğer oyunlardan da bildiğiniz gibi daha ünlü bir konsepttir, yani ping değerinize göre daha iyi bir karşılaştırma yapabilirsiniz. Pinginizin yüksek olduğunda sorun olduğunu bilirsiniz. Fakat gecikme (latency) size sadece pingi değil, girdiğiniz sunucunun ne kadar iyi olduğunu ve sizin bilgisayarınızın gecikme koşullarında nasıl iyi çalıştığını gösterir.

Fiziksel Sunucular (DEDICATED SERVERS) ]

Sizin kurduğunuz odalar saniyede 17 kez veri gönderirken, fiziksel sunucularda bu değer 60'tır. Yani bu kısaca eğer bir fiziksel odada (dedicated room) ve başkasının kurduğu odada 50ms pinginiz varsa, iki odada da pinginiz 50ms gözükecektir. Fakat gecikmeniz fiziksel odada 42ms daha azdır!!! Bu yüzden fiziksel odalar muhteşemdir (fakat belirli bir maliyetleri var).

Eğer fiziksel sunucular internet bakımından daha iyi olan yerde barındırılırsa, ping herkes için daha düşük olur.

Eğer normal odaların fiziksel odalara göre neden daha az veri gönderdiğini merak ediyorsanız, cevap basittir. İnsanların fiziksel odalar kadar iyi bir internet bağlantısı yoktur. Gelecekte normal odaların gönderme değerini daha da arttırabilirim, fakat şu an herkese fiziksel odalarda oynamayı öneriyorum.

Eğer sendrate'nin (saniyede gönderilen veri sayısı) normal odalarda neden 20 değilde 17 olduğunu merak ediyorsanız... Normalde 20 yapmıştım fakat eski Unity Networking sisteminde çıkan bir hata nedeniyle 20 yapsam bile 17 oluyordu. Bunu düzeltebilirim fakat oyunun başından beri değer aynı olduğu için eğer bunu arttırırsam bazı insanlar oda kuramayabilir.

Sonuç: Fiziksel odalar normal odalardan çok daha iyidir.

WiFi
İnternet bağlantınız ne kadar iyi olursa olsun, eğer modeminize bağlanmak için Wi-Fi kullanıyorsanız, pinginiz normale göre daha yüksek olacaktır (5ms ile 15ms arasında değişir). Ve oyun daha kararsız olur. Eğer modeminize ethernet kablosuyla bağlanırsanız veya USB modeminiz varsa, bu gecikmenizi düşürecektir.



Grafik Driverleri

Grafik kartlarınız için anti-lag ve düşük gecikme ayarlarını aşağıdan inceleyebilirsiniz:
https://www.amd.com/en/support/kb/faq/dh-033
https://www.howtogeek.com/437761/how-to-enable-ultra-low-latency-mode-for-nvidia-graphics/
https://www.reddit.com/r/Amd/comments/d637uc/amd_antilag_vs_nvidia_ultralow_latency/
Oyun Dışı Taktikler

  • Sohbette yazdığınız şeyi tekrar yazmak mı istiyorsunuz? Sohbet açıkken klavyenizden yukarı yön tuşunu kullanarak önceden yazdığınız mesajları görebilirsiniz.

  • Oyunda kayıt (record) alırken güzel pozisyonlarda nokta (.) tuşuna basarsanız, kayıtta bu kısmı işaretlemiş olursunuz. Yani kaydı bitirip oyunda izlediğinizde işaretlediğiniz yerler zaman çizelgesinde yeşil nokta olarak gözükür.

  • Sohbete "/help" yazarak kullanabileceğiniz komutları görebilirsiniz.

  • Oda listesinin yanında arama kutusu bulunur. Bu arama kutusunu kullanarak oda adı, oyuncu adı, oyuncu takım tagı ve hatta açık stadyum arayabilirsiniz. Takımınızın tagını (kısaltmasını) yazarak takımınızdaki oyuncuların hangi odalarda olduğunu görebilirsiniz.

  • "Sparrings" sekmesini kullanırsanız (odaların üstünde sarı yıldız ikonu) potansiyel ve başlamış takım maçlarını görebilirsiniz. Eğer oyun bir takımın hepsinin aynı tagı olduğunu görürse bu odayı "Sparrings" sekmesine koyar.
Sonuç
Umarım bu rehber sizin Ball 3D'yi daha iyi anlamanıza yardımcı olmuştur. Görüşlerinizi ve sorularınızı yorumlarda belirtebilirsiniz. İyi oyunlar!
18 Comments
Benjamin Tennyson 2 Sep, 2022 @ 10:59am 
OMG :steamthumbsup::missing:
Theodore Bagwell 20 Aug, 2022 @ 10:24am 
Önerilen Ayarların hepsini uyguladım, oyun performansım arttı teşekkür ediyorum.
Taganc 17 Apr, 2022 @ 8:38am 
eline sağlık güzel rehber:steamthumbsup:
Darames 9 Dec, 2021 @ 6:37am 
efsane :ball3d: rehberi
Shunofc 27 May, 2021 @ 6:46am 
qwe:corgan:
Olsunuk 17 Apr, 2021 @ 11:31am 
oha be
LVL99 ANGRY BOOSTED BALLCHASER 27 Feb, 2021 @ 8:02am 
aynen öyle kardesim benim
Güven 5 Dec, 2020 @ 8:41am 
mükemmel yazı :steamhappy:
Letlev 29 Nov, 2020 @ 12:00pm 
Oyunu yeni aldım expert gözüküyorum, 3 yıl önceki nick var.
Zhask 15 Nov, 2020 @ 3:01am 
sparrings sekmesi kapatılmadımı ? bide ranked gelmesi lazım oyuna oyunda bir amaç yok çünkü