1 poin oleh GN⁺ 2024-10-27 | 1 komentar | Bagikan ke WhatsApp
  • Teka-teki logika berbentuk Battleship Solitaire yang cocok dimainkan santai sambil mendengarkan podcast atau musik, dengan cara menalar posisi kapal tersembunyi dan kotak air di papan lalu mengisinya
  • Angka di setiap baris dan kolom menunjukkan jumlah kotak kapal pada garis tersebut, dan daftar kapal di bagian atas puzzle menunjukkan ukuran kapal yang harus ditemukan
  • Kapal tidak boleh saling menempel dan kontak diagonal juga dilarang, sehingga kita bisa menalar dengan menetapkan area di sekitar kapal yang sudah terkonfirmasi sebagai air
  • Saat buntu, bisa memakai aturan seperti sisa tempat, sisanya air, penanganan air di sudut, mengelilingi kapal yang sudah lengkap, dan mencari satu-satunya posisi untuk kapal terbesar
  • Bisa dimainkan di perangkat mobile, dan ada fitur untuk mengklik angka agar air terisi otomatis sehingga mengurangi beban input berulang

Cara kerja puzzle

  • Battleship Solitaire adalah salah satu versi dari Battleship Logic Puzzle) dan juga dikenal sebagai Battleship Solitaire, Bimaru, atau Yubotu
  • Di papan tersembunyi beberapa kapal dengan berbagai ukuran, dan di bagian atas puzzle ditampilkan daftar ukuran kapal yang harus ditemukan
  • Pengguna mengklik setiap kotak untuk menandai tempat kapal berada dan tempat yang merupakan air
  • Angka pada baris dan kolom menunjukkan jumlah kotak kapal yang termasuk dalam baris atau kolom tersebut
  • Puzzle selesai jika semua kotak terisi dengan benar
  • Kapal tidak boleh saling bersentuhan, termasuk secara diagonal

Aturan penyelesaian dan fitur kemudahan

  • Aturan sisa tempat: Jika suatu baris membutuhkan 3 kotak kapal dan hanya tersisa tepat 3 kotak yang belum ditandai sebagai air, maka ketiga kotak itu semuanya adalah kapal
  • Aturan sisanya air: Jika suatu baris sudah memenuhi jumlah kotak kapal yang dibutuhkan, maka semua kotak lain di baris itu adalah air
    • Baris dengan kebutuhan jumlah kotak kapal 0 juga bisa langsung diperlakukan seluruhnya sebagai air
    • Mengklik angka dapat mengisi air secara otomatis
  • Aturan air di sudut: Karena kapal tidak boleh bersentuhan secara diagonal, kotak di sudut diagonal dari kotak kapal selalu bisa ditetapkan sebagai air
  • Aturan mengelilingi kapal yang sudah lengkap: Jika posisi seluruh kapal sudah diketahui, area di sekeliling kapal itu bisa sepenuhnya diisi air
  • Aturan satu-satunya tempat yang mungkin: Kadang hanya tersisa satu posisi tempat kapal terbesar bisa diletakkan di papan
  • Bisa dimainkan juga di perangkat mobile

1 komentar

 
GN⁺ 2024-10-27
Komentar Hacker News
  • Jika suka teka-teki seperti ini, Puzzles buatan Simon Tatham, pembuat PuTTY, juga sangat layak dilihat: https://www.chiark.greenend.org.uk/~sgtatham/puzzles/
    Port untuk Android dan iPhone juga bagus, gratis tanpa iklan atau elemen macam-macam

  • Menariknya, teka-teki Battleships bersifat NP-complete: http://www.mountainvistasoft.com/docs/BattleshipsAsDecidabil...
    Saat ukuran teka-teki atau papan membesar, tidak ada algoritma penyelesaian yang diketahui bisa menyelesaikannya dalam waktu polinomial

  • Senang karena dibuat ramah seluler. Situs yang biasa saya pakai nyaris tidak bisa digunakan, dan yang saya temukan di Play Store kebanyakan aplikasi yang mencoba menjual paket 50 teka-teki seharga $1.99, padahal tampaknya tidak banyak usaha dalam pembuatannya, sampai-sampai saya hampir membuat versi Android sendiri
    Bahkan mereka bersikap seolah satu teka-teki gratis per minggu adalah kemurahan hati yang luar biasa. Namun akan bagus jika ada pengaturan untuk menukar aksi default klik kiri/kanan. Untuk teka-teki seperti ini, saya lebih suka cara “klik tempat yang ada, tandai tempat yang tidak ada dengan klik kanan”

    • Bisa langsung. Saya cepat-cepat menambahkan parameter URL untuk menukar tombol: https://lukerissacher.com/battleships?swapmouse=1
      Kalau banyak yang meminta, sebaiknya dibuat jadi pengaturan yang tersimpan
    • Tergantung teka-tekinya, ada yang memang memerlukan usaha pembuatan, dan cukup banyak teka-teki seperti ini tidak dibuat secara otomatis
      Jika sudah banyak pengalaman memecahkan, biasanya teka-teki hasil generasi dan buatan manusia juga bisa dibedakan. Saya juga penasaran apakah yang dicari adalah teka-teki Battleship, atau varian Sudoku secara umum
  • Ini terasa seperti varian Nonogram yang menarik. Kalau suka teka-teki ini, kemungkinan juga akan suka Nonogram: https://en.wikipedia.org/wiki/Nonogram

  • Anehnya, secara umum teka-teki 15x15 terasa lebih mudah daripada 6x6. Mungkin karena 15x15 kurang padat sehingga tidak perlu banyak logika tingkat kedua
    Sebagai satu usulan, akan bagus jika klik tengah bisa menandai kotak itu sebagai kemungkinan lokasi

  • Butuh beberapa waktu untuk melupakan aturan Nonogram yang menganggap angka di sisi berarti kapal yang berurutan. Setelah itu, permainannya sangat menyenangkan

  • Gim teka-teki serupa adalah Dungeons & Diagrams di Last Call BBS dari Zachtronics. Di kisi 8x8, kita menentukan kotak mana yang menjadi dinding untuk membuat dungeon, dan harus memenuhi batasan seperti “jalan buntu harus selalu memiliki monster, begitu pula sebaliknya”
    Gim ini juga memberi tahu jumlah total yang harus dipenuhi di setiap baris dan kolom. Ada juga klon gratis: https://netchips.dev/

  • Bimaru adalah teka-teki yang menyenangkan. Dulu saya pernah mengunggah aplikasi Android yang memuat frasa Battleships ke store, lalu Hasbro mengajukan klaim hak cipta, dan Google langsung menurunkan aplikasi itu dari Store
    Jadi saya membuatnya ulang sebagai versi web, dan seharusnya masih bisa dilihat di sini: https://www.kleemans.ch/static/bimaru-web/

  • Di Firefox Mobile pada Android, tidak berfungsi untuk 10x10 ke atas. Target sentuh tampaknya menjadi terlalu kecil sehingga tidak bisa dipilih
    Angkanya bisa ditekan hingga menjadi merah, tetapi kotak mana pun tampaknya tidak bisa dipilih. Ukuran yang lebih kecil, atau Chrome di perangkat yang sama, berfungsi baik

    • Itu bug yang aneh, tetapi baru saja saya perbaiki, jadi cukup muat ulang. Itu adalah masalah CSS yang membuat tinggi elemen kotak menjadi 0 hanya di Firefox pada layar sempit, meskipun elemen tersebut dan elemen induknya punya tinggi eksplisit
      Saya memperbaikinya dengan menambahkan trik posisi absolut
  • Dibandingkan mesin serupa, implementasi drag-nya cukup mengganggu. Cara yang familiar adalah setelah klik, drag hanya bekerja dalam satu garis horizontal atau vertikal, dan hanya melakukan operasi yang sama dengan mempertimbangkan status awal dan status baru
    Terutama ketika sudah mengisi air selang-seling per satu kotak, jika melakukan drag dalam mode “kapal”, seharusnya hanya mengisi kotak kosong, bukan menimpa tanda air. Seharusnya juga ada undo lewat Ctrl-Z, U, dan tombol. Untuk sedikit mengembalikan nuansa memecahkan di kertas, kotak teks untuk catatan di dekatnya yang terhapus saat memulai teka-teki baru juga akan berguna

    • Drag setelah klik yang tidak dibatasi satu garis sebenarnya berguna saat menandai sekeliling kapal yang sudah selesai. Mengetuk petunjuk angka di luar bisa mengisi tanda air yang kurang, sehingga mengurangi kebutuhan menggambar garis lurus panjang
      Namun akan lebih baik jika dibuat hanya melakukan aksi yang sama
    • Undo benar-benar akan bagus jika ada. Di seluler, terutama pada kisi besar, mudah menekan kotak yang salah secara tidak sengaja dan sulit mengetahui status sebelumnya
    • Drag setelah klik yang tidak menimpa kotak yang tidak kosong adalah fitur bagus yang ada di seri Picross Nintendo