Chuyển tới nội dung chính

Pokemon Player - Chơi Pokemon thông qua trình giả lập không đầu + đọc RAM

{/* Trang này được tạo tự động từ SKILL.md của kỹ năng bởi website/scripts/generate-skill-docs.py. Chỉnh sửa nguồn SKILL.md, không phải trang này. */}`#Người chơi Pokemon

Chơi Pokemon thông qua trình giả lập không đầu + đọc RAM.

Siêu dữ liệu kỹ năng

NguồnĐi kèm (được cài đặt theo mặc định)
Đường dẫn

skills/gaming/pokemon-player ` | | Nền tảng | Linux, macOS, Windows |

Tham khảo: đầy đủ SKILL.md

thông tin

Sau đây là định nghĩa kỹ năng đầy đủ mà Hermes tải khi kỹ năng này được kích hoạt. Đây là những gì tác nhân coi là hướng dẫn khi kỹ năng được kích hoạt.

#Người chơi Pokemon

Chơi trò chơi Pokemon thông qua mô phỏng không đầu bằng gói `pokemon-agent

.

Khi nào nên sử dụng

  • Người dùng nói "chơi pokemon", "bắt đầu pokemon", "trò chơi pokemon"
  • Người dùng hỏi về Pokemon Red, Blue, Yellow, FireRed, v.v.
  • Người dùng muốn xem AI chơi Pokemon
  • Người dùng tham khảo 1 file ROM (.gb, .gbc, .gba)

Quy trình khởi động

1. Thiết lập lần đầu (clone, venv, install)

Kho lưu trữ là NousResearch/pokemon-agent trên GitHub. Sau đó nhân bản nó thiết lập môi trường ảo Python 3.10+. Sử dụng uv (ưu tiên cho tốc độ) để tạo venv và cài đặt gói ở chế độ có thể chỉnh sửa với pyboy thêm. Nếu không có uv, hãy quay lại Python3 -m venv + pip.

Trên máy này, nó đã được thiết lập tại /home/teknium/pokemon-agent với venv đã sẵn sàng — chỉ cần cd ở đó và lấy nguồn .venv/bin/activate.

Bạn cũng cần một tập tin ROM. Hỏi người dùng cho họ. Trên máy này một cái tồn tại ở roms/pokemon_red.gb trong thư mục đó. KHÔNG BAO GIỜ tải xuống hoặc cung cấp tệp ROM - luôn hỏi người dùng.

2. Khởi động máy chủ trò chơi

Từ bên trong thư mục tác nhân pokemon với venv được kích hoạt, hãy chạy pokemon-agent phục vụ với --rom trỏ tới ROM và --port 9876. Chạy nó ở chế độ nền với &. Để tiếp tục từ trò chơi đã lưu, hãy thêm --load-state cùng với tên lưu. Đợi 4 giây để khởi động, sau đó xác minh bằng GET /health.

3. Thiết lập bảng điều khiển trực tiếp để người dùng xem

Sử dụng đường hầm ngược SSH qua localhost.run để người dùng có thể xem bảng điều khiển trong trình duyệt của họ. Kết nối với SSH, chuyển tiếp cục bộ cổng 9876 đến cổng 80 từ xa trên nokey@localhost.run. Chuyển hướng đầu ra vào tệp nhật ký, đợi 10 giây, sau đó grep nhật ký cho .lhr.life URL. Cung cấp cho người dùng URL có /dashboard/ được thêm vào. URL đường hầm thay đổi mỗi lần - cung cấp cho người dùng URL mới nếu được khởi động lại.

Lưu và tải

Khi nào cần lưu

  • Cứ sau 15-20 lượt chơi
  • LUÔN LUÔN trước các trận đấu trong phòng tập thể dục, các cuộc chạm trán với đối thủ hoặc các trận đánh mạo hiểm
  • Trước khi vào một thị trấn hoặc ngục tối mới
  • Trước bất kỳ hành động nào bạn không chắc chắn về

Cách lưu

POST /lưu với tên mô tả. Những ví dụ hay: before_brock, Route1_start, mt_moon_entrance, got_cut

Cách tải

POST /load với tên lưu.

Danh sách các bản lưu có sẵn

GET /saves trả về tất cả các trạng thái đã lưu.

Đang tải khi khởi động máy chủ

Sử dụng cờ --load-state khi khởi động máy chủ để tự động tải bản lưu. Việc này nhanh hơn tải qua API sau khi khởi động.

Vòng lặp trò chơi

Bước 1: QUAN SÁT — kiểm tra trạng thái VÀ chụp ảnh màn hình

NHẬN /trạng thái cho vị trí, HP, trận chiến, hộp thoại. NHẬN /ảnh chụp màn hình và lưu vào /tmp/pokemon.png, sau đó sử dụng Vision_analyze. Luôn thực hiện CẢ HAI - Trạng thái RAM cung cấp các con số, tầm nhìn mang lại nhận thức về không gian.

Bước 2: ĐỊNH HƯỚNG

  • Hộp thoại/văn bản trên màn hình → tiến lên
  • Trong trận chiến → chiến đấu hoặc bỏ chạy
  • Tổ đội bị tổn thương → đi đến Pokemon Center
  • Gần mục tiêu → điều hướng cẩn thận

Bước 3: QUYẾT ĐỊNH

Ưu tiên: hộp thoại > trận chiến > chữa lành > mục tiêu câu chuyện > huấn luyện > khám phá

Bước 4: ACT — di chuyển tối đa 2-4 bước, sau đó kiểm tra lại

POST /action với danh sách hành động NGẮN (2-4 hành động, không phải 10-15).

Bước 5: XÁC MINH — chụp ảnh màn hình sau mỗi lần di chuyển

Chụp ảnh màn hình và sử dụng Vision_analyze để xác nhận bạn đã di chuyển đến đâu dự định. Đây là bước QUAN TRỌNG NHẤT. Không có tầm nhìn bạn SẼ lạc lối.

Bước 6: GHI tiến trình vào bộ nhớ bằng PKM: prefix

Bước 7: SAVE định kỳ

Tham chiếu hành động

  • nhấn_a - xác nhận, nói chuyện, chọn
  • press_b - hủy, đóng menu
  • press_start — mở menu trò chơi
  • walk_up/down/left/right — di chuyển một ô
  • hold_b_N — giữ B cho N khung (sử dụng để tăng tốc độ văn bản)
  • wait_60 — đợi khoảng 1 giây (60 khung hình)
  • a_until_dialog_end — nhấn A liên tục cho đến khi hộp thoại xóa

Lời khuyên quan trọng từ kinh nghiệm### SỬ DỤNG TẦM NHÌN LIÊN TỤC

  • Chụp ảnh màn hình sau mỗi 2-4 bước chuyển động
  • Trạng thái RAM cho bạn biết vị trí và HP nhưng KHÔNG cho bạn biết những gì xung quanh bạn
  • Gờ, hàng rào, bảng hiệu, cửa tòa nhà, NPC - chỉ hiển thị qua ảnh chụp màn hình
  • Đặt những câu hỏi cụ thể cho mô hình tầm nhìn: "một ô phía bắc của tôi là gì?"
  • Khi bị kẹt, luôn chụp màn hình trước khi thử chỉ đường ngẫu nhiên

Chuyển tiếp Warp cần thêm thời gian chờ

Khi đi qua cửa hoặc cầu thang, màn hình chuyển sang màu đen trong khi quá trình chuyển đổi bản đồ. Bạn PHẢI đợi cho đến khi nó hoàn thành. Thêm 2-3 chờ_60 hành động sau bất kỳ sự cong vênh cửa/cầu thang nào. Không cần chờ đợi, vị trí sẽ được đọc cũ kỹ và bạn sẽ nghĩ mình vẫn đang ở bản đồ cũ.

Bẫy thoát hiểm tòa nhà

Khi bạn ra khỏi một tòa nhà, bạn sẽ xuất hiện ngay TRƯỚC cửa. Nếu bạn đi về hướng bắc, bạn sẽ quay lại ngay bên trong. LUÔN LUÔN bước sang một bên trước bằng cách đi sang trái hoặc phải 2 ô, sau đó đi theo hướng bạn đã định.

Xử lý hộp thoại

Văn bản thế hệ 1 cuộn chậm từng chữ một. Để tăng tốc độ thông qua hộp thoại, giữ B trong 120 khung hình rồi nhấn A. Lặp lại nếu cần. Giữ B làm cho hiển thị văn bản ở tốc độ tối đa. Sau đó nhấn A để chuyển sang dòng tiếp theo. Hành động a_until_dialog_end kiểm tra cờ hộp thoại RAM, nhưng cờ này không bắt được TẤT CẢ các trạng thái văn bản. Nếu hộp thoại có vẻ bị kẹt, hãy sử dụng hướng dẫn thay vào đó, hãy giữ mẫu + nhấn_a và xác minh qua ảnh chụp màn hình.

Ledge là một chiều

Gờ đá (mép vách đá nhỏ) chỉ có thể nhảy XUỐNG (phía nam), không bao giờ leo được LÊN (phía bắc). Nếu bị chặn bởi một mỏm đá đi về phía bắc, bạn phải đi sang trái hoặc phải để tìm khoảng trống xung quanh nó. Sử dụng tầm nhìn để xác định hướng đi của khoảng cách là. Hãy hỏi mô hình tầm nhìn một cách rõ ràng.

Chiến lược điều hướng

  • Di chuyển 2-4 bước một lúc rồi chụp màn hình để kiểm tra vị trí
  • Khi vào khu vực mới, chụp màn hình ngay để định hướng
  • Hỏi mô hình tầm nhìn "hướng tới [đích]?"
  • Nếu bị kẹt hơn 3 lần, hãy chụp ảnh màn hình và đánh giá lại hoàn toàn
  • Đừng spam 10-15 chuyển động - bạn sẽ vượt quá hoặc bị mắc kẹt

Chạy khỏi trận chiến hoang dã

Trên menu chiến đấu, RUN ở dưới cùng bên phải. Để đạt được nó từ mặc định vị trí con trỏ (FIGHT, trên cùng bên trái): nhấn xuống rồi nhấn phải để di chuyển con trỏ sang RUN, sau đó nhấn A. Ngắt dòng bằng hold_b để tăng tốc độ duyệt văn bản/hình động.

Đấu tranh (FIGHT)

Trên menu chiến đấu FIGHT ở trên cùng bên trái (vị trí con trỏ mặc định). Nhấn A để vào lựa chọn nước đi, nhấn A lần nữa để sử dụng nước đi đầu tiên. Sau đó giữ B để tăng tốc độ tấn công bằng hình ảnh động và văn bản.

Chiến lược chiến đấu

Cây quyết định

  1. Bạn muốn bắt? → Suy yếu rồi ném Poke Ball
  2. Bạn không cần hoang dã? → CHẠY
  3. Loại lợi thế? → Sử dụng chiêu thức siêu hiệu quả
  4. Không có lợi thế? → Sử dụng đòn STAB mạnh nhất
  5. HP thấp? → Chuyển đổi hoặc sử dụng Potion

Biểu đồ loại Gen 1 (các đối sánh chính)

  • Nước khắc Hỏa, Đất, Đá
  • Lửa đánh bại Cỏ, Bọ, Băng
  • Cỏ đập Nước, Đất, Đá
  • Điện đập nước, bay
  • Nhịp đất Lửa, Điện, Đá, Độc
  • Nhịp SOUL Đấu tranh, Ngộ độc (chiếm ưu thế ở Gen 1!)

Quirks thế hệ 1

  • Chỉ số đặc biệt = cả tấn công VÀ phòng thủ cho các chiêu thức đặc biệt
  • Loại SOUL bị áp đảo (Ghost di chuyển bị lỗi)
  • Các đòn chí mạng dựa trên chỉ số Tốc độ
  • Quấn/Ràng buộc ngăn chặn đối thủ hành động
  • Lỗi Năng lượng Tập trung: GIẢM tỷ lệ chí mạng thay vì tăng tỷ lệ chí mạng

Quy ước bộ nhớ

Tiền tốMục đíchVí dụ
PKM:MỤC TIÊUMục tiêu hiện tạiNhận bưu kiện từ Viridian Mart
PKM: BẢN ĐỒKiến thức điều hướngViridian: mart ở phía đông bắc
PKM: CHIẾN LƯỢCKế hoạch chiến đấu/độiCần loại Grass trước Misty
PKM:TIẾN ĐỘTrình theo dõi cột mốcĐánh bại đối thủ, hướng tới Viridian
PKM:BỊ KẮCTình huống mắc kẹtGờ tại y=28 rẽ phải để tránh
PKM: ĐỘIGhi chú của độiSquirtle Lv6, Giải quyết + Roi đuôi

Các mốc tiến triển

  • Chọn bộ khởi động
  • Giao bưu kiện từ Viridian Mart, nhận Pokedex
  • Huy hiệu Boulder — Brock (Đá) → sử dụng Nước/Cỏ
  • Huy hiệu Cascade — Sương mù (Nước) → sử dụng Cỏ/Điện
  • Huy hiệu Sấm sét — Lt. Surge (Điện) → sử dụng Mặt đất
  • Huy hiệu Cầu vồng — Erika (Cỏ) → sử dụng Lửa/Băng/Bay
  • Huy hiệu SOUL — Koga (Độc) → sử dụng Mặt đất/SOUL
  • Huy hiệu Marsh — Sabrina (Nhà ngoại cảm) → phòng tập khó nhất
  • Huy hiệu núi lửa — Blaine (Lửa) → sử dụng Nước/Đất
  • Huy hiệu Đất — Giovanni (Mặt đất) → sử dụng Nước/Cỏ/Băng
  • Bộ tứ ưu tú → Nhà vô địch!

Dừng chơi

  1. Lưu trò chơi với tên mô tả qua POST /save
  2. Cập nhật bộ nhớ với PKM:PROGRESS
  3. Nói với người dùng: "Trò chơi được lưu dưới tên [name]! Nói 'chơi pokemon' để tiếp tục."
  4. Tắt các tiến trình nền của máy chủ và đường hầm## cạm bẫy
  • KHÔNG BAO GIỜ tải xuống hoặc cung cấp tệp ROM
  • KHÔNG gửi quá 4-5 hành động mà không kiểm tra tầm nhìn
  • Luôn tránh đường sau khi ra khỏi tòa nhà trước khi đi về hướng bắc
  • Luôn thêm wait_60 x2-3 sau khi cửa/cầu thang bị cong vênh
  • Phát hiện hộp thoại qua RAM không đáng tin cậy - xác minh bằng ảnh chụp màn hình
  • Lưu TRƯỚC những cuộc gặp gỡ rủi ro
  • URL đường hầm thay đổi mỗi khi bạn khởi động lại nó