Pertama, ada beberapa petunjuk bagi generasi sejarah tentang Dwarf Fortress. Seseorang bertanya di forum Bay12 beberapa waktu lalu, dan transkrip dibagikan dan Anda dapat menemukan di mana diskusi dimulai dengan mencari: "topik kita hari ini adalah generasi dunia dan generasi sejarah".
Saya tidak tahu persis bagaimana Dwarf Fortress melakukannya, tetapi saya akan menjelaskan bagaimana saya berencana menerapkan konsep pertama yang sangat mendasar dalam permainan saya. Saya akan menggunakan automata seluler sederhana . Jika Anda melihat melalui prototipe Spore ini , seperti kultur sel dan bioma.
Ini adalah contoh otomatisasi seluler dan apa yang dapat mereka hasilkan. Pada dasarnya saya akan membuat aturan untuk berbagai ras. Beberapa contoh aturan adalah:
- Permusuhan mereka terhadap ras lain
- Preferensi iklim mereka
- Persyaratan sumber daya mereka
- Tingkat kelahiran dan masa hidup mereka
- Keinginan mereka (penelitian teknologi, perdagangan, keberadaan yang damai, dominasi dunia)
- Kemampuan mereka (pembangunan struktur, pengumpulan sumber daya, pembuatan perang, dll.)
- Dan seterusnya...
Jadi, input yang paling penting untuk semua ini untuk bekerja adalah dunia untuk menjatuhkan ras ini. Medan akan menentukan preferensi dan perluasannya. Jadi, begitu Anda telah menghasilkan dunia, pilih lokasi acak di dunia tempat ras ini akan hidup dan biarkan longgar. Sekarang hal-hal menarik mulai terjadi. Sekarang Anda memiliki tanah dan ras dengan keinginan dan kemampuan, Anda dapat mulai membangun sejarah. Ras-ras ini mengumpulkan sumber daya, lalu struktur dibangun:
- Kota-kota di daerah dengan sumber daya tinggi, dan layak huni
- Jalan menghubungkan kota-kota besar.
- Jembatan melintasi sungai.
- Terowongan melalui gunung.
- Benteng di dekat garis depan ekspansi dalam menanggapi pertempuran.
Setiap struktur dapat diserbu / ditaklukkan oleh ras lain. Semakin lama sebuah struktur (seperti kota atau benteng) ada dalam sejarah, semakin dapat dipertahankan, semakin sulit untuk mengambil alih. Dan yang lebih diinginkan adalah untuk ras yang menginginkan kontrol. Pertempuran dilancarkan di mana ras bertemu (setidaknya satu bermusuhan). Pertempuran dinamai berdasarkan landmark atau struktur di dekatnya, atau jika pertempuran itu signifikan atau landmark tidak bernama, landmark tersebut dinamai setelah pertempuran.
Jalan, jembatan dan terowongan diperluas melalui perdagangan dan transportasi sumber daya. Masing-masing memiliki throughput maksimum yang dapat meningkat dengan pengeluaran sumber daya. Membangun benteng batu di tengah padang rumput? Jalan-jalan itu akan digunakan untuk mengangkut batu yang dibutuhkan. Mereka akan menjadi lebih besar dan mendapatkan nama.
Bencana alam terjadi, mempengaruhi populasi dan perjalanan sejarah. Gempa bumi mungkin mengurangi kota menjadi reruntuhan atau runtuh terowongan. Banjir mungkin menghanyutkan jalan atau jembatan.
Ini tidak sedalam Dwarf Fortress, tapi ini awal. Sekarang seperti yang dapat Anda bayangkan, (dan seperti yang dikatakan Johnathan Hobbs), semakin banyak ras ini berkembang, semakin banyak sel yang disimulasikan. Tidak hanya lebih banyak sel yang disimulasikan, tetapi simulasi lebih kompleks karena sekarang ada struktur untuk membangun / mempertahankan, pertempuran untuk mendapatkan upah, perdagangan untuk ... perdagangan, dan sebagainya. Ini menjadi berat untuk bahasa apa pun. Javascript mungkin melambat lebih cepat. Namun, Anda selalu dapat mengorbankan kompleksitas untuk meningkatkan kecepatan.
Ini semua simulasi (walaupun rumit), Anda hanya merekam peristiwa penting di sepanjang jalan dan menyebutnya sejarah.
Saya juga baru saja menemukan posting forum Bay12 untuk orang-orang yang melakukan brainstorming bagaimana membuat generasi dunia Benteng Dwarf lebih cepat. Saya belum membacanya, tetapi mungkin memberikan beberapa petunjuk jika Anda pernah mengalami masalah dengan implementasi Anda terlalu lambat.