Py thon Ga me Se rver
Paket untuk Python 3.6+ yang berisi arsitektur server klien siap permainan dan protokol jaringan berbasis UDP.
Ini menangani masalah seperti kehilangan paket atau kemacetan jaringan sehingga Anda tidak perlu melakukannya. Sebaliknya, ini memberi Anda API tingkat tinggi untuk dengan mudah menghubungkan klien dan backend yang berbagi status permainan tersinkronisasi dan peristiwa pertukaran. Kerangka kerja async untuk yang satu ini adalah curio, yang sangat saya rekomendasikan.
PyGaSe dibuat agar mudah digunakan, ringan, cepat, terukur, dan andal. Anda dapat membuat game online real-time yang bergerak cepat dengan ini. Anda juga dapat membangun MMO berskala besar dengan ribuan klien jika Anda mau.
Saya aktif mengembangkan PyGaSe dalam konteks beberapa proyek game Indie dan saya dengan senang hati membagikannya.
PERUBAHAN YANG TERPECAHKAN : Versi 0.2.0 pada dasarnya adalah API baru dan memperbarui dari 0.1.9 atau lebih rendah akan merusak kode Anda. Ini juga jauh lebih stabil, fleksibel dan bertenaga, jadi pastikan untuk menggunakan 0.2.0 atau lebih tinggi.
pip install pygase
atau lebih baik lagi poetry add pygase
. Serius, gunakan puisi, ini adalah wahyu.
Untuk dokumentasi API dan bagian Memulai, buka di sini.
Contoh permainan ini mengimplementasikan permainan kejar-kejaran secara online, dimana pemainnya dapat bergerak dan salah satunya adalah pengejar yang harus menangkap pemain lain. Seorang pemain yang tertangkap menjadi pemburu berikutnya dan dapat menangkap pemain lain setelah hitungan mundur perlindungan 5 detik.
Jalankan server.py
terlebih dahulu, lalu jalankan client.py
di sesi terminal tambahan untuk menambahkan pemain. Hanya gunakan nama pemain yang sama satu kali.
Anda dapat menggunakan modul logging
standar. Pada level INFO
Anda akan mendapatkan output logging untuk peristiwa seperti startup, shutdown, koneksi baru atau pemutusan koneksi. Pada tingkat DEBUG
Anda mendapatkan keluaran terperinci hingga tingkat pengiriman, penerimaan, dan penanganan paket jaringan tunggal.
Log debug juga merupakan cara yang baik untuk memahami cara kerja PyGaSe.
logging
standarBackend
ditambahkan untuk mengurangi boilerplate sisi server