Bagaimana saya menulis IF di Twine

Halo Habr! Ini adalah posting pertama saya dan saya ingin berbagi pengalaman saya membuat game IF dengan Twine. Ceritakan tentang kelebihan dan kekurangan alat tersebut, yang Anda perhatikan selama bekerja, dan sedikit tentang gim itu sendiri.



gambar



Semuanya dimulai lima bulan lalu ketika saya diminta untuk membuat game IF.



JIKA permainan adalah permainan di mana interaksi dengan pemain berlangsung menggunakan informasi tekstual. Ada 2 opsi untuk interaksi: memasukkan teks atau memilih dari opsi yang sudah diusulkan.



Permainan Diktator dipilih sebagai contoh , karena itu mirip dengan apa yang direncanakan untuk dilaksanakan. Dictator adalah permainan komputer simulasi politik yang dikembangkan oleh Don Priestley dan dirilis untuk komputer ZX Spectrum, dan kemudian dipindahkan ke platform yang berbeda.



Tokoh utama, penguasa negara pisang, mencoba untuk mempertahankan kekuasaan dengan sekuat tenaga. Gameplaynya cukup sederhana. Diktator, yaitu pemain, harus memilih salah satu opsi tindakan yang diusulkan. Tugasnya adalah mempertahankan sebagai kepala negara selama mungkin.



Untuk pengembangan game, saya memilih Twine. Di Internet, Anda dapat menemukan alat serupa, tetapi setelah melihat-lihat beberapa opsi, saya memutuskan untuk berhenti di Twine , karena dia lebih menyukai antarmuka dan gratis.



Sedikit tentang implementasi



Permainan tersebut dinamakan Permainan politik. Di awal setiap bulan, salah satu faksi politik mengajukan pertanyaan, dan pemain harus memilih tindakan yang, mungkin, akan memperbaiki situasi. Misalnya untuk menjual tanah, atau membeli helikopter, sehingga jika terjadi kegagalan, membuang dari tempat terkutuk ini.



Membuat permainan bermuara pada menulis html dalam paragraf: setiap paragraf adalah halaman terpisah, yang dapat ditata lebih lanjut. Sebagai pengembang, saya dapat memilih paragraf mana yang memulai cerita. Saya menambahkan 2 paragraf: satu untuk variabel yang akan bertanggung jawab untuk poin dan penghitung bulan, dan yang kedua untuk daftar pertanyaan. Dan kemudian saya menggunakan tampilan dari dua paragraf ini di paragraf awal. Transisi antar paragraf dilakukan dengan menggunakan tautan. Paragraf berikutnya menerapkan markup tentang tampilan halaman.



Hasilnya, kami mendapatkan sesuatu seperti pohon ini:



gambar



Paragraf yang ditandai dengan ikon hijau adalah yang pertama. Jumlah paragraf bisa saja dikurangi, tetapi saya tidak pernah berhasil melakukannya.



Tentang Twine



Twine adalah platform terbuka untuk menulis literatur interaktif, permainan teks, dan novel visual. Memungkinkan Anda untuk mempublikasikan game dalam bentuk halaman html dan tidak membutuhkan pengetahuan yang mendalam tentang pemrograman dari pembuatnya.



Anda dapat mengerjakannya baik dalam versi online maupun mengunduh perangkat lunak ke komputer Anda.



Keuntungan besar dari versi online adalah bahwa setelah mengubah dan mengklik tombol "Putar", tab riwayat yang sudah terbuka akan dimuat ulang. Di desktop, setelah beberapa lusin perubahan dan riwayat peluncuran, 100.500 tab muncul.



Twine memiliki beberapa mesin, atau seperti yang disebut Twine, format permainan.



gambar



Setiap format game memiliki perbedaan dalam hal sintaksis, serta perbedaan dalam hal fungsionalitas. Ada dok untuk masing-masingnya, dan Anda juga dapat menemukan kode sumbernya di github. SugarCube 2 tampaknya yang paling optimal bagi saya. Ia memiliki sintaks yang nyaman dan debug yang baik.



Proyek dapat diekspor dan diimpor. Namun, jika Anda tiba-tiba ingin mengubah file di editor, lalu mengimpornya kembali, perubahan ini tidak akan disimpan, karena Twine akan membangun kembali file tersebut saat memulai permainan, dan semua yang ditambahkan akan dihapus begitu saja. Hal ini menimbulkan sedikit ketidaknyamanan jika Anda perlu menambahkan informasi meta, favicon, atau file css dan js pihak ketiga. Dalam hal ini, Anda harus menambahkannya melalui JavaScript. Tindakannya sederhana, tetapi akan lebih baik jika Anda menambahkan tag ke bagian head.



Masalah lain di Twine adalah kurangnya pelengkapan otomatis, sehingga semua markup, nama properti harus ditulis dengan tangan. Dan ini pada saat itu ada di semua editor kode!



Hasil



Twine bekerja dengan baik untuk proyek kecil atau prototipe. Anda dapat dengan cepat menyimpan mainan IF. Secara pribadi, alat ini sudah cukup bagi saya, dengan pengecualian beberapa kekurangan.



Kekurangan teknologi:



  • Ada masalah dengan versi desktop
  • Tidak ada pelengkapan otomatis
  • Tidak nyaman untuk bekerja dengan bagian kepala, Anda harus melakukannya melalui js
  • Tidak ada pemuatan ulang langsung, jadi selama pengembangan Anda harus terus-menerus memulai ulang permainan dengan mengklik tombol "Mainkan"


Kelebihan:



  • Alat gratis
  • Jelas dan sederhana
  • Ada cukup banyak kesempatan untuk melakukan sesuatu yang menarik


Jika seseorang ingin mencoba dirinya sendiri sebagai seorang diktator, untuk menarik negara keluar dari kemiskinan ke ketinggian yang belum pernah terjadi sebelumnya, atau, sebaliknya, untuk terjun ke jurang perang saudara, maka Anda dipersilakan . Saya akan senang menerima kritik yang membangun.



UPD



Snuux di komentar membuang contoh kompiler Twine dengan reload langsung.



All Articles