HN Tayang: game mirip Counter-Strike open source
(github.com/solcloud)- Counter-Strike: Football adalah game FPS multipemain kompetitif di mana dua tim penggemar sepak bola bersaing memperebutkan jumlah kemenangan ronde
- Tim dibagi menjadi Attackers dan Defenders, dan Defenders harus melindungi fan base sanctuary dari graffiti bomb ball milik Attackers
- Syarat menang ronde ditentukan oleh eliminasi, pemasangan bom, penjinakan, atau bertahan hidup sampai waktu habis; jika bom dipasang, hitung mundur ronde diatur menjadi 40 detik
- Berkas eksekusi dapat diunduh sebagai aset per OS dari rilis terbaru, dan untuk membangun langsung dari source, klien Electron dan server PHP harus dijalankan secara terpisah
- Proyek ini menerima pull request dari kontributor untuk html/css/js/php serta pemodelan 3D, teksturing, dan animasi
Ikhtisar game
- Counter-Strike: Football adalah game FPS multipemain kompetitif di mana dua tim penggemar sepak bola bertarung dengan tujuan memenangkan lebih banyak ronde daripada lawan
- Unduhan game tersedia di Download game
- Berdasarkan badge di bagian atas README, ditampilkan status pengujian, Code coverage 100%, dan Mutation score 100%
Tim dan tujuan ronde
- Tim terdiri dari Attackers dan Defenders
- Tujuan Defenders di setiap ronde adalah mencegah Attackers merusak fan base sanctuary dengan graffiti bomb ball
Kondisi kemenangan
- Defenders memenangkan ronde dalam kondisi berikut
- Mengeliminasi semua pemain Attackers sebelum bom dipasang
- Menjinakkan bom sebelum meledak
- Saat waktu ronde habis, setidaknya 1 orang masih hidup dan bom belum dipasang
- Attackers memenangkan ronde dalam kondisi berikut
- Mengeliminasi semua pemain Defenders sebelum waktu ronde habis
- Memasang bom sebelum waktu ronde habis dan mencegah Defenders menjinakkannya
- Jika Attackers menempatkan graffiti bomb sebelum waktu ronde berakhir, hitung mundur ronde diatur menjadi 40 detik
- Defenders memerlukan 30 detik untuk menjinakkan bom
- Jika menggunakan defuse kit, waktu penjinakan adalah 35 detik
Instalasi dan menjalankan
- Berkas eksekusi per OS dapat diunduh dari latest release
- Klien dijalankan dengan perintah npm dari folder
electron/cd electron/ npm install npm run dev - Server dijalankan dengan PHP CLI setelah memasang dependensi Composer
composer install -a --no-dev php cli/server.php 2 # will start server waiting for 2 players to connect
Cara berkontribusi
- Proyek ini mencari kontributor yang memahami html/css/js/php
- Orang dengan kemampuan pemodelan 3D, teksturing, dan animasi juga dapat ikut meningkatkan game melalui pull request
1 komentar
Komentar Hacker News
Klien Electron dengan server PHP sungguh luar biasa. Sudah lama sekali saya tidak menyentuh PHP sejak masa ketika bahkan namespace yang layak pun belum ada, jadi ini benar-benar mengejutkan
Usaha yang luar biasa, dan membuat saya ingin membantu proyek ini di waktu luang. Harus ada lebih banyak proyek gila seperti ini
Saya hanya mengenal PHP lama dan PHP di beberapa CMS, jadi saya tidak pernah membayangkan proyek real-time, sungguh mengejutkan
Dengan
socket_select()kita bisa membuat server asinkron, dan fungsi ini ditambahkan di PHP 4.1https://www.php.net/manual/en/function.socket-select.php
Bahkan 15 tahun lalu sudah ada ekstensi pihak ketiga untuk menambahkan thread ke PHP, meski bug-nya banyak
Sebagai referensi, sisi klien ada di bawah
www/assets. https://github.com/solcloud/Counter-Strike/tree/master/www/a...Tidak ada dependensi selain threejs, juga tidak ada TypeScript atau build pipeline. Asyik dibaca begitu saja
start.js(https://github.com/solcloud/Counter-Strike/blob/master/www/a...)Titik masuk sisi server adalah
server.php(https://github.com/solcloud/Counter-Strike/blob/master/cli/s...)Kalau melihat statistik bahasa di GitHub, PHP 82%, JS 15% dengan sedikit HTML/CSS, saya jadi penasaran kliennya sebenarnya dibuat dengan apa
Apakah ada di repositori lain, atau semuanya diimplementasikan dengan PHP? Kalau iya, itu mengesankan
Deskripsi “game dengan kekerasan rendah” terasa lucu untuk game yang berisi menembak wajah, memasang/menjinakkan bom, dan bertahan hidup sambil ditembaki
Tambahan lagi, saya juga penasaran apakah OP pernah melihat lapangan sepak bola. Ada cukup banyak garis yang tidak cocok dengan tanda silang itu, tapi karena sepak bolanya bukan inti utama, mungkin tidak terlalu penting
Ini salah satu medium paling interaktif yang dimiliki masyarakat, tetapi setiap tahun puluhan miliar dolar kembali masuk ke “tembak-menembak pria bersenjata: edisi senjata” lainnya
Saya jadi sedikit melenceng, tetapi proyek ini tetap sangat mengesankan, dan karena saya bermain CS selama ribuan jam, melihat hal seperti ini terasa keren
www: https://github.com/solcloud/Counter-Strike/tree/master/wwwKliennya banyak menggunakan JavaScript, dan grafisnya memakai Three.js
Saya memang agak terbawa soal deskripsi penghancuran hewan itu
Saya suka komentar soal tanda silang. Mungkin selera humor saya agak aneh, atau mungkin karena saya tumbuh di Eropa sambil menonton film Amerika dengan pemain football Amerika berhelm
Kalau mau lebih ke arah bercanda, ada juga antarmuka PHP CLI (https://github.com/solcloud/Counter-Strike/blob/master/cli/c...)
Hanya saja, kalau emulator terminal Anda tidak punya font bergaya Matrix yang keren, kemungkinan besar Anda tidak akan bisa melihat wanita berbaju merah yang terbaring di lapangan
Sangat keren. Sebagai tambahan, setidaknya screenshot-nya sangat mengingatkan pada game PC 90-an Extreme Paintbrawl
Saya sangat menyukainya waktu kecil, lalu beberapa tahun kemudian baru tahu bahwa game itu dinilai sebagai “salah satu video game terburuk sepanjang masa”
https://en.wikipedia.org/wiki/Extreme_PaintBrawl
Kode open source memang bagus, tetapi yang benar-benar dibutuhkan game adalah open art. Kebanyakan game open source kesulitan dari sisi tampilan dan nuansa
Bisa tambahkan file lisensi?
Kencan dengan Gabe, gooseman, dan Jess tidak masalah. Kalau ada usulan, saya akan senang kalau dibagikan
Sudah beberapa jam sejak banyak orang menyuruh menambahkan lisensi, tapi ini masih bukan open source
Menyebut sesuatu yang bukan open source sebagai open source itu benar-benar tidak baik, dan merugikan perangkat lunak bebas dan open source
Sesuatu tetap bisa open source meski bukan perangkat lunak bebas, dan tetap bisa open source meski tidak ada lisensi. Jika pemiliknya membuka kode ke dunia untuk dibaca, itu open source
Keren juga ini dirilis sebagai open source. Ini bisa jadi titik awal yang bagus bagi orang-orang yang ingin mencoba pengembangan game 3D
Akan menyenangkan kalau ada versi Counter-Strike 1.6 dengan aset open source
Rasanya seperti OpenArena untuk Quake, tapi untuk CS 1.6
https://github.com/Velaron/cs16-client tampaknya bisa jadi dasar untuk membuatnya
Ada cukup banyak game open source yang benar-benar mengesankan. Berkat kelompok teman yang suka game, tahun lalu saya mengenal BAR (Beyond All Reason), dan itu sangat mengesankan dari sisi kedalaman, grafis, dan optimisasi
Saya suka masa depan seperti ini
Saya sangat kagum pada tingkat detail dan implementasinya yang teliti. Tingkat kontrol dan kemungkinan otomatisasinya tinggi, jadi rasanya sangat cocok untuk orang yang berorientasi teknis
Kalau ada yang ingin main bareng, nama pengguna saya di dalam game adalah
[ZWD]_jaan. Tambahkan saja sebagai teman, saya bisa memperkenalkan konsep dasarnya, dan meski saya masih pemula, kita bisa main co-op atau mencari lobi pemulaGame ini mudah dimodifikasi dengan Lua, dan untuk game bebas/open source, komunitasnya juga tampak cukup besar