Apa artinya (Lua) scripting game?

9

Saya pernah membaca bahwa Lua sering digunakan untuk skrip tertanam dan khususnya gim untuk skrip. Saya merasa sulit membayangkan bagaimana tepatnya digunakan. Bisakah Anda menjelaskan mengapa dan untuk fitur apa dan untuk audiens mana ia digunakan?

Pertanyaan ini tidak secara khusus membahas Lua, melainkan skrip tertanam yang melayani tujuan yang mirip dengan skrip Lua .

Apakah ini digunakan untuk pengguna akhir untuk membuat penyesuaian khusus? Apakah ini digunakan untuk pengembang game untuk mempercepat pembuatan logika game (level, AI, ...)? Apakah ini digunakan untuk skrip kode kerangka permainan karena skrip bisa lebih cepat?

Pada dasarnya saya bertanya-tanya seberapa dalam antara konfigurasi polos dan kerangka logika penggunaan skrip seperti itu. Dan berapa banyak scripting yang dilakukan. Beberapa garis konfigurasi atau jumlah yang cukup?

Gerenuk
sumber

Jawaban:

11

Bahasa scripting di mesin permainan ada untuk mengekspos mesin permainan Anda dengan cara yang lebih tinggi, ditafsirkan.

Ambil game seperti Skyrim, misalnya. Anda akan melihat bahwa ada banyak pencarian dan interaksi yang terjadi, dan beberapa di antaranya memiliki logika yang cukup mengesankan, seperti penjaga yang bereaksi ketika Anda mendekati item selama beberapa adegan. Ini adalah hal-hal yang sulit diungkapkan dalam format data murni, dan untuk alasan ini, pencarian dan perilaku khusus biasanya dinyatakan sebagai skrip.

Ada juga banyak hal praktis yang perlu dipertimbangkan - para perancang game yang membuat skrip ini sering bekerja pada tingkat abstraksi yang lebih tinggi daripada coders mesin gim; mereka tidak ingin khawatir tentang alokasi memori, dll. Bahasa scripting sangat cocok untuk mereka, dan dengan LUA, mereka biasanya memanggil fasad mesin tingkat tinggi yang bagus. Anda juga tidak ingin mengkompilasi ulang game Anda setiap kali Anda ingin menyesuaikan beberapa atribut menit dalam sebuah skrip.

Di atas semua ini, mereka memungkinkan untuk debugging mudah, modding, dan semua hal baik lainnya yang Anda sebutkan.

Daniel B
sumber
3

Apakah ini digunakan untuk pengguna akhir untuk membuat penyesuaian khusus?

Ini dapat digunakan untuk berbagai tujuan dari hanya konfigurasi hingga mengimplementasikan sebagian besar logika high-end gim, misalnya Itu tergantung pada gim, tetapi Lua hanyalah skrip tertanam. Orang dapat menggunakannya sebanyak atau sesedikit yang mereka inginkan.


sumber
1
Beberapa game memungkinkan pengguna akhir untuk mengimplementasikan skrip mereka sendiri. Bersamaan dengan API publik, pengguna dapat menerapkan add-on, widget, dll, yang bereaksi terhadap peristiwa game.
Laiv
1
Saya sedang berpikir dalam MMO rpgs :-)
Laiv
1
@Laiv IMO MMORPG adalah salah satu dari hal-hal yang tampak sangat menyenangkan untuk diimplementasikan, tetapi mirip dengan memainkannya untuk waktu yang lama, itu berubah menjadi sesuatu yang sulit. Dunia gim harus sangat statis atau harus ada keterlibatan aktif dari moderator gim. Saya pikir permainan offline sangat, sangat menyenangkan untuk dikembangkan karena Anda dapat menciptakan dunia yang sangat dinamis dengan cerita yang benar-benar berakhir.
1
Tidak tidak. Bertahun-tahun lalu saya dulu bermain Allods Online. Gim ini memiliki API kecil bagi para gamer untuk mengimplementasikan add-on dan widget. Hanya ingin memperluas jawaban Anda dengan beberapa contoh :-)
Laiv
1
@Laiv Oh, begitu! Saya sedang dalam proses menghapus akun saya tetapi saya mengedit jawaban saya untuk membuatnya lebih pendek dan lebih manis. Dalam prosesnya saya kehilangan sedikit informasi tetapi edit saya sebelumnya berbicara tentang bagaimana saya menggunakan skrip secara pribadi. Saat ini saya sedang mencoba mengedit semua informasi pribadi dari jawaban saya.
2

Ini dapat digunakan oleh orang-orang selain programmer game asli untuk memodifikasi atau memperluas logika game. Orang-orang semacam itu bisa relatif non-teknis, misalnya desainer game atau pengguna akhir (gamer).

Skrip biasanya bahasa tingkat tinggi dan karena itu Lua lebih mudah daripada C ++. Kode yang ditulis dalam skrip biasanya dapat dimodifikasi tanpa mengkompilasi ulang aplikasi utama (mesin game) yang berguna bagi perancang game untuk mengubah adegan permainan dengan cepat.

PS: lebih baik ajukan pertanyaan ini di gamedev.stackexchange.com

Sarang
sumber