2 poin oleh GN⁺ 2025-05-23 | 1 komentar | Bagikan ke WhatsApp
  • Proyek ini merupakan upaya merekonstruksi secara mendetail peta planet fiksi Chiron dari Sid Meier’s Alpha Centauri
  • Dengan memanfaatkan data game asli (ketinggian, curah hujan, topografi, dan lain-lain), peta lama beresolusi rendah dibangun ulang menjadi versi baru beresolusi tinggi dengan bentuk yang lebih organik
  • Berbagai metode proyeksi peta (equal area, orthoapsidal, dan lain-lain) serta alat seperti QGIS, Photoshop, dan Python digunakan untuk menciptakan visual yang unik dan estetis
  • Proyek ini melalui proses pembangunan DEM (digital elevation model) yang kompleks, termasuk sampling data, penyesuaian manual, penambahan noise, dan lainnya
  • Ini adalah contoh tantangan teknis dan estetis yang bermakna bagi gamer maupun pembuat peta

Pendahuluan: gambaran proyek dan motivasi

  • Proyek ini adalah rekonstruksi peta planet Chiron, latar dunia dalam game Sid Meier’s Alpha Centauri yang dirilis pada 1999
  • Chiron adalah panggung utama dari game strategi fiksi ilmiah yang telah lama memiliki basis penggemar, dan sama pentingnya dengan karakter-karakter di dalam game
  • Penulis, sebagai kartografer profesional, membagikan pengalamannya tentang bagaimana pembuatan peta dunia fiksi berbeda dari pemetaan dunia nyata
  • Banyak pembuat peta bekerja dari data yang sudah tersedia, sedangkan peta fiksi harus dimulai dari penciptaan data itu sendiri, sehingga menuntut kreativitas dan keahlian tambahan
  • Proyek ini dimungkinkan berkat pemanfaatan dataset dari game asli, dan hasil akhirnya dapat diunduh gratis oleh siapa saja

Pengumpulan data

  • Game Alpha Centauri memiliki peta resmi buatan Chris Pine (128 × 64 piksel berlian)
    • Setiap piksel memuat berbagai atribut seperti ketinggian, curah hujan, indeks batuan, dan lain-lain
  • Untuk ketinggian, semua nilai tile disampling satu per satu langsung di dalam game (8192 input manual)
  • Curah hujan diekstrak per levelnya (hujan, lembap, kering) melalui pemisahan warna menggunakan peta tematik detail yang diperluas lewat mod, lalu dipetakan di QGIS
  • Data indeks batuan juga diproses, tetapi tidak digunakan dalam peta akhir
  • Distribusi Xenofungus (makhluk hidup asing) dibangun menjadi dataset biner melalui sampling warna piksel dan koreksi

Pengaturan proyeksi

  • Peta game berbentuk proyeksi silinder, berulang tanpa batas ke kiri dan kanan, dengan batas di atas dan bawah
  • Dengan berangkat dari fakta bahwa tiap piksel merepresentasikan luas yang sama di ruang sebenarnya, digunakan cylindrical equal area projection (menggunakan rumus Trystan Edwards)
  • Proyeksi dan rasio resolusi disesuaikan agar cocok dengan plot bola yang realistis, dan pengaturan proyeksi dibangun sebelum sampling data dilakukan

Pemurnian dan peningkatan resolusi data elevasi DEM (digital elevation model)

  • Berbagai metode interpolasi titik diuji dengan tujuan menghasilkan representasi topografi yang lebih rinci daripada peta asli (128 × 64)
    • Sebaran titik acak – menempatkan 1–3 titik pada tile tertentu untuk memberi tumpang tindih dan unsur acak
    • Menerapkan nilai elevasi sekitarnya pada tiap titik, lalu membuat model elevasi pertama dengan interpolasi TIN (triangulated irregular network)
    • Evaluasi dan interpolasi tambahan diulang terus (triangulasi Delaunay, ekstraksi titik tengah, rata-rata tiga titik sekitar, penambahan noise)
    • Proses diulang berkali-kali sambil secara halus menambah jumlah titik dan noise
  • Proses pengolahan dan koreksi: membandingkan dengan peta asli untuk memperbaiki distorsi medan seperti penyambungan pulau dan penutupan selat (dengan penambahan titik manual)
  • Untuk memperbaiki distorsi bentuk fitur representatif (kawah Garland) dari persegi menjadi bulat, diterapkan teknik koreksi rubbersheeting
  • DEM akhir dihaluskan, sementara wilayah kutub ditangani dengan proyeksi terpisah dan penambahan noise
  • Jika cacat ditemukan selama tahap pembuatan peta, perbaikan tambahan dilakukan (danau buatan, pulau kecil, dan sebagainya, dikerjakan manual secara terpisah)

Penerapan berbagai proyeksi

  • Peta utama menggunakan proyeksi orthoapsidal (Armadillo), jenis yang menekankan kelengkungan permukaan medan secara visual
    • Penulis mengembangkan skrip proyeksi kustom langsung dengan Python (bantuan Python resmi + ChatGPT)
    • Nilai kelengkungan dan kemiringan disesuaikan agar cocok dengan karakteristik peta
    • Proyeksinya sendiri hanya mendukung vektor, sehingga data raster seperti DEM diproses lewat cara poligonisasi lalu rasterisasi ulang

Pembuatan peta sesungguhnya: penjelasan layer Photoshop

  • Laut dalam (bayangan): bagian di bawah 0 m dari DEM dijadikan raster hitam-putih, lalu diberi gradien warna biru
  • Daratan (bayangan relief): menggunakan simulator gaya gambar tangan ala Swiss (Eduard), dengan inner glow pada garis pantai untuk menegaskan perbedaan darat dan air
  • Warna dan tekstur: relief cokelat/hijau, noise warna, efek pencahayaan, dan kombinasi berbagai adjustment layer serta mask
  • Vegetasi: interpolasi thin plate spline berbasis data curah hujan, lalu dipolakan dengan dissolve + noise mask di Photoshop
  • Xenofungus: berbasis data distribusi dalam game, diproses sebagai relief merah dengan teknik pola yang mirip dengan area hijau
  • Sungai: digambar lengkung secara manual di QGIS lalu diberi taper dan efek di Illustrator/Photoshop (pembuatan otomatis berbasis DEM tidak memberikan hasil yang memadai)
  • Lautan dan glow luar garis pantai, distribusi xenofungus di laut, serta berbagai layer lain dipisahkan lalu digabungkan di tahap akhir
  • Peningkatan saturasi warna dan penambahan grid (garis lintang/bujur, dan lain-lain) meningkatkan kesan tiga dimensi dan kejelasan visual
  • Pada akhirnya, nuansa semi-painterly ditampilkan dengan filter dry brush (dicampur 50% dengan versi asli)

Pelabelan (penulisan nama tempat)

  • Draf dibuat di Adobe Illustrator, lalu ditempel dan dibaurkan di Photoshop
  • Efek blur pada latar bawah nama tempat, glow, dan smart hollow diterapkan untuk meningkatkan keterbacaan serta kontras terhadap warna latar
  • Font BellTopo Sans dipilih (cocok dengan warna lembut dan latar masa depan nonmanusia)
  • Nama tempat mengikuti acuan dari game, sedangkan interpretasi wilayah yang ambigu diputuskan menurut penilaian pembuat
  • Tata letak poster memanfaatkan submap (elevasi, kutub, dll.), scanline, serta latar biru/frame/noise yang terinspirasi dari UI game

Penutup dan kesan

  • Secara keseluruhan, ini adalah proyek yang memadatkan kerja manual dan teknik tingkat tinggi seperti sampling data game, konversi model elevasi, kustomisasi proyeksi, dan perakitan layer
  • Prosesnya merupakan perjalanan panjang berisi trial and error berulang, penyempurnaan visual, dan penyesuaian detail
  • Ke depan, ada kemungkinan menggunakan dataset ini untuk pembesaran sebagian wilayah atau pengerjaan topografi dengan gaya lain (termasuk eksperimen tambahan dengan data rockiness)
  • Kekurangan DEM (danau yang hilang, pulau-pulau kecil) sedang dikoreksi, dan nantinya akan diganti dengan DEM yang lebih presisi
  • Karya ini merupakan tantangan teknis pemetaan ruang fiksi yang menarik bagi praktisi GIS/kartografer, sekaligus memberi kepuasan estetis bagi fandom
  • Keseluruhan proses adalah hasil perpaduan kemampuan dan antusiasme penulis, dengan fokus pada transformasi data yang sudah ada

1 komentar

 
GN⁺ 2025-05-23
Pendapat Hacker News
  • Kisah penulis Daniel Huffman benar-benar memikat dan menginspirasi.
    Versi cerita yang lebih panjang memberikan pengalaman yang bahkan lebih menyentuh.
    (Referensi: detail lebih lanjut bisa dilihat di https://somethingaboutmaps.wordpress.com/about/ dan https://somethingaboutmaps.wordpress.com/2011/03/02/on-salvation/)

    • Bagian ketika Daniel Huffman menggambarkan depresi terkait pekerjaan sangat membekas di hati saya.
      Saya juga ingin menemukan percikan yang ia temukan, tetapi rasanya gairah saya sudah lama padam.
  • Game ini adalah pengalaman pertama yang punya makna besar bagi saya.
    Saya ingat mulai menyadari berbagai ideologi dan keyakinan religius yang diabstraksikan tanpa terkait pada tokoh tertentu.
    Saya punya kenangan tenggelam dalam tiap faksi yang berbeda dan gagasan mereka.
    Saya sering membayangkan keyakinan seperti apa yang akan dimiliki alien jika mereka ada.

    • Benar-benar pengalaman bermain yang luar biasa.
      Sistem politiknya juga mengesankan, dan saya suka karena empat opsi di empat bidangnya tidak otomatis saling terkait.
      Campuran seperti ekonomi pasar dengan negara polisi juga dimungkinkan.
      Saya rasa memainkan game ini saat kecil menjadi pemicu untuk berpikir lebih dalam tentang kecenderungan politik masing-masing dan maknanya.
      (Tentu saja ini juga bisa dipelajari dari buku, tetapi secara realistis tidak mudah.)
      Suasananya terasa pas bagi para penulis untuk menciptakan kombinasi politik aneh dalam game fiksi ilmiah.

    • Ada kekecewaan karena Civilization: Beyond Earth sangat jauh dari harapan.
      Alih-alih pemimpin, faksi, dan ideologi yang menarik, yang muncul justru konsep seperti "Space Africa" atau "Space Australia".
      Saya jadi penasaran apakah Firaxis punya masalah hukum untuk membuat remake Centauri yang sesungguhnya.

  • Saya sering penasaran mengapa istilah "planetfall" begitu sering muncul di Sid Meyer's Alpha Centauri.
    Di dalam game, istilah itu berarti "titik awal sejarah".
    Prompt di awalnya adalah seperti berikut.

    $NAME3, waktunya telah tiba bagi era baru perjuangan dan peluang menantimu.
    Kapal antariksa PBB Unity telah mencapai sistem Alpha Centauri setelah pelayaran selama 40 tahun.
    Semua kontak dengan Bumi telah terputus, dan setelah Kapten Garland dibunuh oleh penyerang tak dikenal, kru memberontak dan terpecah menjadi beberapa faksi.
    Sejak itu sebagian dari mereka menguasai pod koloni Unity, dan kini faksi $M1:$FACTIONADJ0 yang kamu pimpin baru saja melakukan PLANETFALL.

  • "Jadi, saya menyisir peta dan mencatat nilai elevasi setiap tile. Totalnya 8.192."
    Rasanya pasti ada cara untuk mengotomatisasi ini tanpa harus melakukannya manual 8 ribu kali.

    • Saya yakin banyak orang yang membaca komentar di sini mungkin bisa dengan cepat menulis skrip untuk mengekstrak data peta dan mengubahnya menjadi .CSV.
      Tetapi kadang-kadang, tenggelam dalam pekerjaan berulang selama berjam-jam tanpa terlalu banyak berpikir justru menjadi proyek yang memuaskan.
      Cocok sekali saat ingin fokus pada sesuatu yang tidak terlalu penting.

    • Saya juga berpikir serupa.
      Ada kebanggaan tersendiri bahwa begitu banyak penggemar berat game ini pada masanya (termasuk saya) pasti akan dengan senang hati mencoba mengekstrak data seperti ini lewat pemrograman.

  • Desain suara game ini benar-benar luar biasa.
    Saya selalu kagum pada kualitas permainannya.

    • Saya sangat suka suara "event" yang aneh, bunyi bip atau nada unik di antarmukanya, suara "pop pop" dari senjata, dan pengisi suara yang keren.
      Sejak membelinya versi retail pada 99, saya selalu bangga memasang game ini di lebih dari satu komputer.
      Saya percaya ini adalah karya seni.
      Sejak itu tidak ada seri Civ lain yang mampu memberi kesan sedalam ini (tidak peduli seberapa maju grafiknya).

    • Satu-satunya hal yang agak saya sesalkan adalah cara musik latarnya bekerja.
      Sepertinya dirancang agar musik hanya diputar saat tidak ada aktivitas, tetapi dalam permainan nyata hampir tidak pernah ada kesempatan untuk mendengarnya.
      Saya rasa ada soundtrack terpisah untuk tiap faksi.

  • Hasil akhirnya, petanya, dan tulisan yang dibuat tentangnya semuanya adalah karya yang sangat bagus.
    Satu hal yang agak saya sayangkan adalah pada tekstur daratannya, garis batas yang kontras tidak terlalu menonjol, dan semua area terasa menyatu dengan halus.
    Pegunungannya memang terlihat, tetapi tepi yang tegas seperti yang tampak pada tekstur Bumi hampir tidak tergambar di peta ini.

    • Saya agak setuju soal ini.
      Salah satu ciri yang terlihat sangat asing di peta asli adalah garis-garis merah yang membelah ke mana-mana.
      Saya menduga itu mungkin xenofungus, tetapi tampilannya seperti magma yang membelah benua.
      Unsur seperti ini hilang di versi baru.
      Meski begitu, saya sangat menghargai usaha yang dicurahkan, dan secara keseluruhan tampilannya tetap keren.
  • Melihat kalimat "ada peta planet resmi yang sudah dipoles dengan baik" membuat saya penasaran.
    Saya jadi bertanya-tanya apakah ada kerangka matematis untuk mengoptimalkan peta demi memaksimalkan kesenangan bermain.

    • Saya menghabiskan banyak token untuk renungan panjang Claude Opus 4, dan jawabannya sangat menarik!
      Jika pertanyaan ini didekati dengan serius, kita sampai pada persimpangan berbagai bidang yang mengubah desain game secara revolusioner.
      Alasan peta Alpha Centauri bekerja dengan sangat baik adalah karena strukturnya menyeimbangkan beberapa ketegangan matematis.
      • <i>Distribusi sumber daya</i>: mengikuti hukum pangkat, menciptakan choke point yang alami dan wilayah bernilai tinggi (mengurangi ketertebakan).
      • <i>Metrik jarak</i>: dirancang agar interaksi antarfaksi terjamin, tetapi bentrokan langsung yang instan tetap bisa dihindari.
      • <i>Konektivitas medan</i>: memberi masalah pencarian rute yang menarik dan kedalaman strategis.
        <i>Matematika teori flow</i>: konsep flow dari Csikszentmihalyi dimodelkan secara matematis.
        Kesulitannya membentuk kurva berupa tingkat keterampilan ditambah sedikit margin tantangan, dan di peta ini selalu ada struktur yang menyediakan pilihan bermakna yang sesuai dengan keterampilan pemain.
        <i>Entropi informasi</i>: peta yang baik tidak boleh punya entropi yang terlalu tinggi atau terlalu rendah.
        Ada penelitian yang menyebut skala entropi 0,3~0,5 untuk keragaman medan adalah yang optimal untuk permainan.
        <i>Penerapan teori graf</i>: struktur peta diperlakukan sebagai graph, dan
      • centrality konektivitas (mengidentifikasi choke point utama)
      • koefisien klaster (tingkat "penggumpalan" distribusi sumber daya)
      • distribusi jalur terpendek (keragaman waktu tempuh)
        terhubung langsung dengan tingkat keterlibatan pemain.
        <i>Inti wawasannya</i>: ketika sesuatu yang samar seperti 'kesenangan' dijadikan sasaran optimasi secara serius, kita akhirnya berhadapan langsung dengan kepuasan pengambilan keputusan manusia.
        Kerangka terbaik tidak mendefinisikan kesenangan, melainkan memaksimalkan <i>kelimpahan pilihan yang bermakna</i>.
        Karena itu, pembuatan peta prosedural di game modern juga tidak sekadar acak, melainkan memakai algoritme yang secara matematis menyetel tingkat keterlibatan.
  • Saya sampai memberikan CD game itu ke orang lain agar bisa berhenti memainkannya.
    Game itu begitu adiktif sampai sangat mengganggu pekerjaan dan tidur saya.

  • Ada blog bernuansa mirip bernama "Here Dragons Abound".
    Blog itu membahas generasi prosedural peta fantasi, tetapi belakangan pembaruannya agak jarang.

  • Saya sendiri tidak pernah memainkan Alpha Centauri, malah dulu lebih suka Master of Magic atau Syndicate.
    Namun setelah membaca tulisan tentang proyek ini, saya agak menyesal pernah mengabaikan Alpha Centauri pada masa itu.
    Kalau dipikir-pikir, makin bertambah usia, hanya ada satu hal yang benar-benar menarik saya pada seseorang.
    Yaitu saat mereka menggali minat yang sangat mendalam dan nerdy dengan penuh gairah, entah ada yang memperhatikan atau tidak (bahkan justru semakin tenggelam tanpa peduli pandangan orang lain).
    Bahkan jika itu bukan bidang yang saya minati, melihat seseorang benar-benar geek out pada dunianya sendiri adalah salah satu kegembiraan terbesar.
    Justru karena saya tidak tenggelam di bidang itu, saya bisa lebih menikmati gairah orang tersebut.
    Orang yang ingin saya miliki di sekitar saya bukanlah orang dengan minat yang sama persis dengan saya, melainkan orang yang punya gairah pada <i>apa pun</i>.
    (Di sini saya sedang secara halus mengatakan bahwa saya tidak terlalu menyukai eksistensialis atau nihilisme.)

    • Saya punya gairah besar pada fakta bahwa Cracks Call di Master of Magic adalah bencana bagi build karakter artisan.
      Itu adalah sihir instant-kill yang jarang muncul tetapi tidak bisa dilawan, dan karena ada Web di ranah yang sama, terbang pun tidak berguna.