Saya benar-benar ingin tahu berapa banyak perancang permainan yang lebih suka bekerja dengan meja besar untuk semua item, meja lain untuk semua keterampilan, dan bahkan meja lain untuk semua massa dalam MMORPG. Dan tabel ini dapat tumbuh hingga beberapa ratus MB dengan ribuan catatan, tetapi sebagian besar catatan hanya menggunakan beberapa bidang dalam tabel.
Saya tahu beberapa perancang permainan bekerja dengan cara ini. Apakah ada metode yang lebih baik?
game-design
tools
mmo
data
Huang F. Lei
sumber
sumber
Jawaban:
Saya tidak ingin menjawab di sini, tetapi ketika saya melihat jawaban / komentar lain saya berubah pikiran. SQL bukanlah solusi yang sangat baik untuk ini. SQL mendefinisikan tabel dan menyisipkan banyak data ke dalam tabel itu. Ini bukan itu masalahnya. Saat membuat / menguji desain game Anda sebagian besar ingin memeriksa apakah sistem besar seimbang. Itu berarti banyak tabel yang saling mempengaruhi. Tidak ada yang baik untuk SQL sebenarnya - atau itu, tetapi tidak mudah untuk ditangani, karena Anda harus melakukan pemrograman yang tidak perlu. Dan desainer game tidak harus mengetahuinya.
Sebagai pemrogram / pengembang game, kami dapat meremehkan excel dan penggunaannya untuk apa pun, tetapi alat ini cukup bagus untuk kasus ini, terutama ketika desainer game dapat menggunakannya dengan baik dan dokumen dibuat dengan baik.
Saya tidak bisa merekomendasikan alat lain, tetapi saya bisa mengatakan bahwa saya tahu desainer game profesional yang menggunakan excel juga. Jadi saya menganggap itu adalah alat umum.
sumber
Saya setuju dengan sebagian besar penjawab yang terkadang spreadsheet dapat membuat alat pengembang yang layak, terutama untuk desainer.
Jika Anda tertarik untuk mengambil pendekatan ini lebih jauh, program spreadsheet Resolver One menggunakan python untuk scripting, membuatnya mudah untuk mengatur spreadsheet untuk desainer yang melakukan pemodelan kompleks dan mengekspor ke format data yang ramah-game. Saya merasa jauh lebih mudah untuk bekerja daripada VBScript Excel.
sumber
Excel adalah solusi terbaik.Saya bertanya-tanya bagaimana ini harus dilakukan. Tetapi memikirkannya, Exceladalahalat yang sangat populer dan cukup memadai untuk tugas ini, saya tidak akan merekomendasikan praktik ini. Selain itu, basis data aktual, seperti yang disarankan oleh @notabene, membawa banyak overhead tambahan yang benar-benar tidak Anda butuhkan. Saya melihat beberapa opsi, salah satunya mirip dengan menggunakan Excel:... bagaimanapun juga, gratis dan Anda memiliki kendali penuh.
Saya pribadi akan cenderung untuk pergi dengan data serial dan terenkripsi biner . Dua alasan:
Apakah ada kebutuhan akan pustaka data yang didedikasikan dan berorientasi permainan yang sejati ? Mungkin ... kecuali seseorang mengetahui perpustakaan semacam itu sudah ada.
Untuk pertanyaan OP, lihat setiap file csv
halamansebagai tabel data tunggal - mirip dengan tabel dalam database. Setiap filehalamanharus berisi data terkait:Ini membantu Anda mempertahankan tingkat organisasi yang tinggi yang akan sangat penting ketika konten data tumbuh, konten game bertambah, dll.
Sunting
Setelah benar-benar mencoba menggunakan .ODS (file OpenOffice Calc) dan menghubungkan dari suatu aplikasi, sebenarnya tidak mungkin karena tulisan awal pada situs OO tersirat. Saya tidak dapat menemukan sesuatu yang secara khusus menunjukkan kodez pada implementasi.
Juga, menggunakan file Excel mungkin baik - baik saja saat mengembangkan game sehingga data dapat di-tweak tanpa overhead dari database. Namun, dan ini penting, jika Anda berencana melakukan ini, Anda harus menginstal MS Office agar Anda dapat merujuk Microsoft Excel Interop COM. Ini mungkin menguntungkan pada awalnya, tetapi saya tidak ingin menghapus atau mengubah banyak kode untuk mendapatkan aplikasi yang siap untuk Alpha, Beta, atau RC. Perpustakaan yang sangat sederhana akan membutuhkan lebih banyak upaya daripada yang saya lihat bermanfaat.
Saya akan menggunakan file .CSV untuk penyimpanan data tahap awal. Ada beberapa kekurangan, tetapi secara keseluruhan saya merasa ini adalah pilihan yang jauh lebih baik. Semuanya terkandung dalam perpustakaan saya. .Net memiliki kelas yang sangat berguna untuk membaca file teks ini. Juga, sebagai file .CSV, data mudah dimanipulasi; dan, untuk tahap pengembangan selanjutnya, yang perlu saya lakukan adalah memiliki file data saya serial ke XML, kemudian ke biner terenkripsi serial.
sumber
Selama sifat data Anda memungkinkannya disimpan dalam spreadsheet tanpa melompati terlalu banyak rintangan, itu membuat format yang sangat baik, terutama untuk pekerjaan pengembangan. Pada akhirnya Anda mungkin ingin menyimpannya dalam format lain untuk digunakan tetapi spreadsheet memberi Anda editor yang sangat kuat yang bisa SANGAT bagus jika Anda memutuskan untuk mengubah cara Anda menangani sesuatu!
Jika Anda menggunakan Excel, dapatkan salinan utilitas ASAP - itu membuat spreadsheet menjadi editor yang lebih baik.
sumber
Bagi saya, saya kira program-program speartesheet tidak dapat menangani hal-hal seperti itu dengan benar dan efektif. RDB sebenarnya dirancang untuk menangani data dan tabel besar. RDB modern dirancang untuk menangani hal-hal 'Besar' dan mereka melakukannya dengan sangat baik.
Intinya adalah, untuk mendapatkan hasil terbaik dari RDB Anda perlu mendesain database Anda dengan cara yang benar. Jika skema data Anda buruk, atau tidak mencakup semua data proyek Anda, Anda akan berakhir dengan hasil, kinerja, dan keluaran yang sangat buruk.
Gagasan RDB adalah memecah tabel besar menjadi yang lebih kecil sehingga Anda dapat meningkatkan kinerja dan keterbacaan. Jika Anda memiliki tabel yang sangat besar (atribut bijaksana atau bahkan catatan bijaksana) atau banyak partisi ulang, dan Anda tidak menggunakan sebagian besar dari mereka, itu berarti desain DB Anda memiliki beberapa kesalahan.
Dalam pertanyaan Anda, Huang F. Lei, jika saya diminta mendesain basis data MMORPG, saya tidak akan menambahkan semua keterampilan dalam satu tabel dan semua massa dalam satu tabel. Saya akan membagi keterampilan sesuai dengan kelas dan penggunaannya ke dalam beberapa tabel. Setiap jenis keterampilan akan memiliki tabel sendiri atau bahkan tabel. Untuk massa, saya akan membaginya sesuai dengan tipenya, atau menurut lokasi mereka di dunia yang berbeda. Dan seterusnya.
Dengan cara ini saya dapat mengecilkan ukuran tabel, membuatnya lebih mudah bagi saya untuk melacak data, dan meningkatkan kinerja DB.
Di Excel, di sisi lain, semua data akan 'hancur' di satu tempat. dan untuk menemukan sepotong data hampir tidak bisa dilewati, secara episial ketika Anda memiliki data yang berulang. Selain itu, seiring bertambahnya ukuran data, waktu pembukaan file akan meningkat.
Pada akhirnya, Excel - menurut saya - adalah cara yang sangat buruk untuk menangani data terkait yang sangat besar.
sumber