1 điểm bởi GN⁺ 2024-10-27 | 1 bình luận | Chia sẻ qua WhatsApp
  • Đây là câu đố logic dạng Battleship Solitaire phù hợp để giải nhẹ nhàng khi nghe podcast hoặc nhạc, theo cách suy luận để điền các ô tàu và ô nước ẩn trên bảng
  • Các con số ở mỗi hàng và cột biểu thị số ô tàu có trong dòng đó, còn danh sách tàu ở phía trên câu đố cho biết kích thước các con tàu cần tìm
  • Các tàu không được chạm nhau và tiếp xúc theo đường chéo cũng bị cấm, nên có thể suy luận bằng cách xác định các ô quanh tàu đã biết là nước
  • Khi bị bí, có thể áp dụng các quy tắc như chỗ còn lại, phần còn lại là nước, xử lý nước ở góc, bao quanh tàu đã hoàn thành, hoặc tìm vị trí duy nhất cho con tàu lớn nhất
  • Có thể chơi trên thiết bị di động, và có tính năng bấm vào con số để tự động điền nước, giúp giảm thao tác lặp lại

Cách chơi câu đố

  • Battleship Solitaire là một phiên bản của Battleship Logic Puzzle), còn được gọi là Battleship Solitaire, Bimaru, Yubotu
  • Trên bảng có ẩn nhiều con tàu với kích thước khác nhau, và phía trên câu đố hiển thị danh sách kích thước tàu cần tìm
  • Người chơi nhấp vào từng ô để chỉ định nơi có tàu và nơi là nước
  • Các con số ở hàng và cột cho biết số ô tàu có trong hàng hoặc cột đó
  • Điền đúng tất cả các ô thì câu đố được giải xong
  • Các tàu không được chạm nhau, kể cả theo đường chéo

Quy tắc giải và tính năng tiện lợi

  • Quy tắc chỗ còn lại: nếu một hàng cần 3 ô tàu và chỉ còn đúng 3 ô chưa phải nước, thì cả 3 ô đó đều là tàu
  • Quy tắc phần còn lại là nước: nếu một hàng đã đủ số ô tàu cần thiết, thì toàn bộ các ô còn lại trong hàng đó đều là nước
    • Hàng có số ô tàu cần thiết là 0 cũng có thể xử lý toàn bộ là nước theo cách tương tự
    • Có thể nhấp vào con số để tự động điền nước
  • Quy tắc nước ở góc: vì tàu không thể chạm nhau theo đường chéo, nên các ô chéo góc quanh một ô tàu luôn có thể xác định là nước
  • Quy tắc bao quanh tàu đã hoàn thành: khi đã biết toàn bộ vị trí của một con tàu, có thể bao quanh hoàn toàn con tàu đó bằng nước
  • Quy tắc vị trí duy nhất có thể đặt: đôi khi chỉ còn lại đúng một vị trí để đặt con tàu lớn nhất trên bảng
  • Có thể chơi trên thiết bị di động

1 bình luận

 
GN⁺ 2024-10-27
Ý kiến trên Hacker News
  • Nếu thích những câu đố kiểu này, Puzzles của Simon Tatham, tác giả PuTTY, cũng rất đáng xem: https://www.chiark.greenend.org.uk/~sgtatham/puzzles/
    Các bản port Android và iPhone cũng rất tốt, miễn phí và không có quảng cáo hay những thứ lặt vặt

    • Cũng có ở đây: https://puzz.link/db/
      Tuy nhiên bạn phải tự tìm quy tắc của từng câu đố
  • Một điểm thú vị là câu đố Battleships là NP-complete: http://www.mountainvistasoft.com/docs/BattleshipsAsDecidabil...
    Không có thuật toán giải đã biết nào có thể giải trong thời gian đa thức khi câu đố hoặc kích thước bàn chơi tăng lên

  • Thích việc nó được làm thân thiện với di động. Trang tôi thường chơi gần như không dùng được, còn những thứ tìm thấy trên Play Store phần lớn là các app cố bán gói 50 câu đố với giá $1.99, dù có vẻ chẳng tốn mấy công tạo ra; tôi đã suýt tự làm một bản Android
    Thậm chí họ còn làm như mỗi tuần cho miễn phí 1 câu đố là hào phóng lắm. Tuy vậy, sẽ tốt nếu có tùy chọn đổi hành vi mặc định của nhấp trái/phải. Với kiểu câu đố này, tôi thích cách “nhấp vào ô có tàu, và đánh dấu ô không có bằng nhấp phải”

    • Làm được ngay. Tôi đã nhanh chóng thêm tham số URL để đổi nút: https://lukerissacher.com/battleships?swapmouse=1
      Nếu có nhiều yêu cầu, có lẽ nên biến nó thành một thiết lập được lưu lại
    • Tùy câu đố, thực ra có những cái có công sức thiết kế hẳn hoi, và khá nhiều câu đố loại này không được tạo tự động
      Nếu có nhiều kinh nghiệm giải, thường có thể phân biệt câu đố được sinh tự động với câu đố do người làm. Tôi cũng tò mò là bạn đang tìm Battleship puzzle, hay nói chung các biến thể Sudoku
  • Cái này giống một biến thể Nonogram thú vị. Nếu thích câu đố này thì có lẽ bạn cũng sẽ thích Nonogram: https://en.wikipedia.org/wiki/Nonogram

  • Lạ là nhìn chung các câu đố 15x15 lại cảm thấy dễ hơn 6x6. Có thể vì 15x15 thưa hơn nên ít cần dùng logic bậc hai hơn
    Nếu đề xuất một điều, tôi muốn nhấp giữa có thể đánh dấu ô đó là vị trí khả dĩ

  • Tôi mất một lúc mới quên được quy tắc Nonogram rằng các con số bên cạnh biểu thị các tàu liên tiếp. Sau đó thì chơi rất vui

  • Một game giải đố tương tự là Dungeons & Diagrams trong Last Call BBS của Zachtronics. Trên lưới 8x8, bạn xác định ô nào là tường để tạo thành dungeon, đồng thời phải thỏa các ràng buộc như “ngõ cụt nhất định phải có quái vật, và ngược lại”
    Game này cũng cho biết tổng mà mỗi hàng và cột cần khớp. Cũng có một bản clone miễn phí: https://netchips.dev/

  • Bimaru là một câu đố thú vị. Tôi nhớ trước đây từng đưa một app Android có cụm Battleships lên store, rồi Hasbro gửi khiếu nại bản quyền và Google lập tức gỡ app khỏi Store
    Vì vậy tôi đã làm lại bản web, và chắc vẫn xem được ở đây: https://www.kleemans.ch/static/bimaru-web/

  • Trên Firefox Mobile của Android, nó không hoạt động với 10x10 trở lên. Có vẻ các vùng chạm trở nên quá nhỏ nên không chọn được
    Có thể bấm các con số để làm chúng chuyển đỏ, nhưng dường như không chọn được ô nào. Kích thước nhỏ hơn hoặc Chrome trên cùng thiết bị thì hoạt động tốt

    • Đó là một lỗi lạ, nhưng tôi vừa sửa xong nên chỉ cần tải lại. Đây là vấn đề CSS chỉ xảy ra trên Firefox ở màn hình hẹp, trong đó phần tử ô có chiều cao bằng 0 dù cả phần tử đó lẫn phần tử cha đều đã có chiều cao rõ ràng
      Tôi đã thêm một mẹo dùng định vị tuyệt đối để sửa
  • So với các engine tương tự, cách triển khai kéo chuột khá khó chịu. Cách quen thuộc là sau khi nhấp rồi kéo, thao tác chỉ hoạt động trên một hàng ngang hoặc dọc, và chỉ thực hiện cùng một hành động dựa trên trạng thái ban đầu và trạng thái mới
    Đặc biệt, khi đã đánh dấu nước cách một ô một rồi kéo ở chế độ “tàu”, nó chỉ nên lấp các ô trống, chứ không nên ghi đè lên dấu nước. Cũng nên có hoàn tác bằng Ctrl-Z, U và nút bấm. Nếu muốn phần nào tái hiện cảm giác giải trên giấy, một ô văn bản ghi chú gần đó và được xóa khi bắt đầu câu đố mới cũng hữu ích

    • Việc nhấp rồi kéo không bị giới hạn trong một hàng thực ra hữu ích khi đánh dấu xung quanh một con tàu đã hoàn thành. Bạn có thể chạm vào các manh mối số bên ngoài để điền các dấu nước còn thiếu, nên ít cần vẽ những đường thẳng dài hơn
      Tuy vậy, nếu làm cho nó chỉ thực hiện cùng một hành động thì có lẽ sẽ tốt hơn
    • Rất nên có hoàn tác. Trên di động, đặc biệt với lưới lớn, rất dễ bấm nhầm ô và khó biết trạng thái trước đó là gì
    • Nhấp rồi kéo mà không ghi đè lên các ô không trống là một tính năng hay trong loạt Picross của Nintendo