Semua artikel

Satu Dunia, Lima Platform — Devlog #2: Tantangan Mengembangkan MMORPG Lintas Platform

Satu MMORPG untuk mouse, layar sentuh, dan controller: pilihan Ancient Online soal antarmuka, kontrol, 30 bahasa, dan terjemahan chat lokal.

Controller game di atas meja dalam cahaya redup, memantulkan warna merah dan toska

Kami merancang Ancient Online: Remastered sebagai satu dunia tempat pemain Windows, Linux, macOS, Android, dan iOS akan bertemu. Di atas kertas kedengarannya sederhana: satu game, lima platform. Dalam praktiknya, membawa MMORPG klasik yang dirancang untuk dimainkan dengan klik mouse ke ponsel dan controller berarti serangkaian keputusan sulit. Dalam bagian devlog ini, kami membagikan keputusan-keputusan itu beserta alasannya.

Game ini masih dalam pengembangan. Saat ini build pengembangan diuji di perangkat Windows dan Android; macOS, Linux, dan iOS adalah platform lain yang kami tuju.

Aturan 1: Satu Dunia, Satu Set Aturan

Tidak ada server terpisah dan tidak ada keseimbangan yang “disederhanakan” untuk pemain mobile. Karena semua aturan game berjalan di server, kamu bermain di dunia yang sama, dengan aturan yang sama, dari perangkat apa pun kamu terhubung. Akun, karakter, inventory, dan guild-mu tidak bergantung pada perangkat. Sisi server sudah kami bahas di bagian pertama devlog.

Bagi klien, aturan ini berarti platform yang berbeda boleh menawarkan kontrol yang berbeda, tetapi tidak boleh menawarkan kemampuan yang berbeda.

Layar Sentuh: Memikirkan Ulang, Bukan Memperkecil

Memperkecil antarmuka MMORPG klasik apa adanya lalu menaruhnya di ponsel tidak berhasil; tombolnya menjadi terlalu kecil untuk jari dan layarnya terlalu penuh. Karena itu kami merancang lapisan antarmuka tersendiri untuk mobile:

  • Joystick mengambang: Di mana pun kamu menaruh jari di separuh kiri layar, joystick mendatanginya; pemain tidak perlu mengenai titik tertentu di layar.
  • Tombol tahan-untuk-menyerang dengan busur skill di sekelilingnya.
  • Ketuk untuk menarget: Padanan sentuh dari kebiasaan “klik monsternya” di PC.

Ada pula sesuatu yang sengaja tidak kami buat: ketuk untuk bergerak. Joystick mengurus pergerakan. Dengan dua sistem pergerakan, setiap ketukan target yang meleset akan berubah menjadi lari yang tidak disengaja, dan di tengah pertarungan hal itu tidak bisa diterima.

Satu lagi keputusan kecil tetapi penting: di ponsel hanya beberapa slot yang terlihat sekaligus, sehingga berpindah halaman skill terjadi jauh lebih sering daripada di desktop. Kami membuat slot potion tidak bergantung pada halaman; saat kamu berganti halaman, potion-mu tetap di tempatnya. Mengerjakannya menuntut lebih dari sekadar memindahkan satu sel di antarmuka: kami harus memisahkan kode yang memakai slot potion dari logika halaman sepenuhnya.

Kamera dan Multi-Sentuh

Di ponsel, kamera berputar saat kamu menyeret jari di area kosong. Mengerjakannya dengan menaruh “zona kamera” selayar penuh di atas antarmuka tampak menggoda, tetapi lapisan seperti itu akan menelan sentuhan yang ditujukan untuk setiap tombol di bawahnya. Dengan menangani seretan kamera di player controller, bukan di lapisan antarmuka, kami mencegah bentrokan antara tombol dan kamera. Kami juga membedakan pemilihan target dari seretan kamera dengan ambang gerakan yang kecil: sebelum ambang itu terlampaui kamera tidak bergeming, dan begitu terlampaui kamera mulai berputar tanpa lompatan mendadak.

Controller: Menjelajahi Menu Juga

Kami merancang dukungan controller untuk seluruh antarmuka, bukan hanya untuk pertarungan. Agar inventory dan menu bisa dijelajahi dengan controller, kami menambahkan navigasi fokus dengan D-pad. Di sini pun ada jebakannya: D-pad dan tombol konfirmasi/kembali dibutuhkan baik untuk menjelajahi menu maupun untuk memakai slot cepat. Solusinya: selama sebuah jendela terbuka, tombol-tombol ini menjelajahi menu, dan saat jendela tertutup, tombol-tombol ini kembali ke slot cepat. Diam-diam tergelincir ke “mode menu” di tengah pertarungan akan menjadi bug terburuk yang bisa dimiliki sistem ini.

Game mencatat perangkat input mana yang terakhir kamu pakai: saat kamu beralih ke controller, tombol-tombol sentuh menghilang dari layar.

Pengaturan Juga Mengikuti Platform

Jendela pengaturan mengambil bentuknya dari perangkat: tab mouse dan keyboard hanya muncul di PC, dan tab sentuh hanya muncul di ponsel. Opsi grafis khusus desktop seperti Lumen, DLSS, dan FSR digantikan di mobile oleh opsi resolusi dan anti-aliasing. Di setiap perangkat kami hanya menampilkan pengaturan yang benar-benar berfungsi di sana.

30 Bahasa dan Antarmuka yang Diukur per Bahasa

Game dan situs web kami menargetkan 30 bahasa. Kesulitan tersembunyi dari antarmuka multibahasa adalah panjang teks: label tombol yang sama bisa pendek dalam satu bahasa dan dua kali lebih panjang dalam bahasa lain. Lebar tab di jendela pengaturan kami hitung dari lebar sebenarnya tiap label dalam bahasa itu, bukan dengan membaginya sama rata; saat bahasa berganti, tata letaknya dihitung ulang. Di pemilih bahasa, setiap bahasa ditulis dengan namanya sendiri.

Terjemahan Chat di Server Kami Sendiri

Agar pemain dari berbagai negara bisa saling memahami di dunia yang sama, pesan chat diterjemahkan ke bahasa pembacanya. Kami memegang dua prinsip saat membangun sistem ini:

  1. Pesan tidak meninggalkan server kami. Penerjemahan dilakukan di server kami sendiri oleh model lokal yang hanya memakai CPU; tidak ada API penerjemahan eksternal yang dipakai.
  2. Menjaga bahasa khas game. Chat MMORPG penuh dengan singkatan, istilah game, dan emoji. Kami memakai glosarium khusus game, dan kami melindungi emoji secara terpisah agar tidak hilang saat diterjemahkan.

Apa Selanjutnya

Pekerjaan pada performa mobile dan pada platform lain yang kami tuju terus berlanjut. Untuk daftar lengkap kontrol dari sisi pemain, lihat panduan lintas platform PC dan mobile di situs game. Untuk mengenal studio kami, baca Siapa Astronaut Entertainment?.

Bagikan:
Juga tersedia dalam29