Bean Network Tester

Simulasikan lag dan kehilangan paket pada game

Netcode ditulis di koneksi lokal dengan ping 1 ms dan diuji oleh pemain di Wi-Fi hotel. Ini menutup kesenjangan itu di mesin Anda sendiri, hanya pada proses game, sementara sisa komputer tetap bisa dipakai.

Mulai dari sini

Bidik klien game, beri koneksi buruk yang realistis, dan biarkan berhenti sendiri setelah lima menit:

BeanNetworkTester.exe --latency 120 --jitter 60 --loss 3 --target mygame.exe --duration 300

Ada juga lini waktu siap pakai untuk ini: overloaded-game-server.json di folder scenarios membawa koneksi ke kemacetan lalu kembali lagi, sehingga Anda dapat melihat bagaimana klien menangani kedua arah perubahan. Lihat skenario berbasis waktu.

Mengapa game memperlihatkan kehilangan sedangkan peramban tidak

Kebanyakan lalu lintas game adalah UDP, dan UDP tidak punya apa pun untuk menyembunyikan kehilangan. Halaman web di atas TCP diam-diam mengirim ulang dan hanya butuh waktu lebih lama, itulah sebabnya peramban bisa terasa baik pada kehilangan 5% sementara sebuah pertandingan dengan 5% yang sama tersendat, tertarik mundur, dan tidak sinkron.

Itu menjadikan game tempat yang jujur untuk menguji kehilangan: apa yang Anda atur adalah yang benar-benar dialami klien.

Apa yang diatur, dan apa yang dicari

PengaturanCobaYang diungkapkannya
Latensi80 sampai 250 msPrediksi dan interpolasi. Apakah karakter Anda tergelincir mundur setelah menembak?
Jitter40 sampai 100 msBuffering. 200 ms yang stabil lebih mudah disembunyikan daripada ping yang terus bergerak.
Kehilangan2 sampai 10%Pembaruan status yang hilang, dan apakah klien pulih atau menyimpang.
Lonjakan1 detik, jarangHambatan yang ditimbulkan perpindahan antar menara. Biasanya yang paling jelek.
Tautan hidup dan matisiklus 10 s, 30% matiSambung ulang dan bergabung kembali.

Ukur jitter sebagai selisih antara persentil ke-95 dan median, bukan sebagai rata-rata: jitter hampir tidak menggeser rata-rata, itulah sebabnya satu eksekusi bisa tampak identik di atas kertas tetapi terasa berbeda saat dimainkan.

Membandingkan dua build butuh seed

Kehilangan acak membuat dua eksekusi berbeda, sehingga “build baru terasa lebih buruk” bukan bukti. Seed yang sama memutar ulang kehilangan dan jitter yang sama, yang mengubah perasaan menjadi perbandingan:

BeanNetworkTester.exe --latency 120 --jitter 60 --loss 5 --seed 42 --target mygame.exe --duration 180

Yang tidak bisa dilakukannya

Alat ini membentuk lalu lintas mesin Anda. Ia tidak memperlambat server, tidak mengubah tick rate-nya, dan tidak menempatkan pemain lain di koneksi buruk, sehingga ia menguji klien Anda terhadap tautan buruk, bukan server Anda di bawah beban. Untuk sisi server, Anda butuh uji beban, dan untuk lobi yang penuh koneksi buruk, Anda butuh lebih dari satu mesin.

Selanjutnya

Siap merusak jaringan Anda sendiri dengan sengaja?

Unduh untuk Windows