Engine Chiến Đấu Pokemon Đối Mặt Với Cuộc Tranh Luận Giữa Độ Chính Xác và Tính Xác Thực Trong Giai Đoạn Phát Triển Đầu

BigGo Editorial Team
Engine Chiến Đấu Pokemon Đối Mặt Với Cuộc Tranh Luận Giữa Độ Chính Xác và Tính Xác Thực Trong Giai Đoạn Phát Triển Đầu

Dự án pkmn/engine , một trình mô phỏng chiến đấu Pokemon mã nguồn mở đầy tham vọng được viết bằng Zig , đã khơi dậy những cuộc thảo luận sôi nổi về việc các triển khai hiện đại nên tái tạo các lỗi và đặc điểm kỳ quặc của các trò chơi Pokemon gốc một cách trung thực đến mức nào. Hiện tại chỉ hỗ trợ cơ chế Generation 1 , engine này nhằm mục đích cung cấp một giải pháp thay thế hiệu suất cao cho các trình mô phỏng hiện có trong khi vật lộn với những câu hỏi cơ bản về tính xác thực của trò chơi.

Yêu cầu kỹ thuật:

  • Ngôn ngữ: Được viết bằng Zig với các binding TypeScript
  • APIs: Hỗ trợ C API và JavaScript/TypeScript
  • Tương thích: Yêu cầu các phiên bản trình biên dịch Zig cụ thể (khuyến nghị sử dụng phiên bản trước 0.12.0-dev.876+aaf46187a)
  • Giấy phép: Giấy phép MIT

Tình Thế Khó Xử Về Tính Xác Thực

Cuộc tranh luận cốt lõi tập trung vào việc những lỗi nào của trò chơi gốc nên được bảo tồn và những lỗi nào nên được sửa để có lối chơi tốt hơn. Các nhà phát triển của engine đã có một cách tiếp cận tinh tế, lựa chọn tái tạo những lỗi xuất phát từ các triển khai hiệu ứng cụ thể trong khi tránh những lỗi gây ra bởi sự hiểu lầm cơ bản về cơ chế hoặc hạn chế kiến trúc.

Các thành viên cộng đồng đặc biệt chia rẽ về một số lỗi khét tiếng của Generation 1 . Những vấn đề như mất đồng bộ nhiều người chơi, lỗi khai thác bất tử trong các chiêu thức Fly và Dig khi bị tê liệt, và cơ chế Focus Energy bị hỏng đưa ra những lựa chọn khó khăn. Một số người cho rằng những lỗi này là thiết yếu cho lối chơi xác thực, trong khi những người khác khẳng định chúng làm hại trải nghiệm người chơi mà không thêm giá trị có ý nghĩa.

Những lỗi như normal body slam para invuln, amnesia reapplying speed drops, và toxic counter bugs, 1/256 miss chance, focus energy bugs, tôi mong đợi sẽ được giữ lại. Nếu những lỗi đó được sửa, dự án sẽ chuyển hướng vào lãnh thổ của natdex, Create A Pokemon, hoặc Custom Metas, như trong những trò chơi fan tự tạo mà chưa bao giờ tồn tại trong cartridge

Kiến Trúc Kỹ Thuật và Mục Tiêu Hiệu Suất

Cách tiếp cận đa ngôn ngữ của dự án kết hợp Zig cho hiệu suất cốt lõi với các ràng buộc TypeScript cho khả năng truy cập web. Lựa chọn thiết kế này nhằm mục đích mang lại tốc độ tính toán cần thiết cho việc huấn luyện AI và mô phỏng giải đấu trong khi duy trì khả năng tương thích rộng rãi trên các nền tảng. Engine này cung cấp cả API C cho tích hợp native và giao diện JavaScript cho các ứng dụng dựa trên trình duyệt.

Tuy nhiên, dự án hiện tại yêu cầu các phiên bản trình biên dịch Zig cụ thể do các vấn đề tương thích đang diễn ra, làm nổi bật những thách thức của việc xây dựng trên các toolchain phát triển nhanh chóng. Các nhà phát triển đã bao gồm các bản vá trình biên dịch trực tiếp trong cây nguồn của họ, cho thấy họ đang giải quyết các lỗi đang hoạt động trong hệ sinh thái Zig .

Lộ Trình Phát Triển và Hạn Chế Hiện Tại

Engine này tuân theo cách tiếp cận phát triển theo giai đoạn, với công việc nền tảng phần lớn đã hoàn thành và các triển khai Generation 1 và 2 hiện đang trong quá trình thực hiện. Nhóm đã loại trừ rõ ràng một số tính năng bao gồm thực thi quy tắc tùy chỉnh, các biến thể chiến đấu ngoài các định dạng tiêu chuẩn, và hỗ trợ hạng nhất cho các sửa đổi trò chơi.

Phạm vi tập trung này phản ánh một cách tiếp cận thực dụng đối với một không gian vấn đề phức tạp, nhưng nó cũng có nghĩa là engine sẽ không phục vụ người dùng tìm kiếm các tùy chọn tùy chỉnh mở rộng hoặc các chế độ chơi không tiêu chuẩn.

Các Giai Đoạn Phát Triển:

  • Giai đoạn 0: Tài liệu, tích hợp, đánh giá hiệu năng, giao thức (gần như hoàn thành)
  • Giai đoạn 1: Triển khai RBY & GSC (đang tiến hành)
  • Giai đoạn 2: ADV & DPP
  • Giai đoạn 3: Các thế hệ hiện đại

Phản Ứng Cộng Đồng và Triển Vọng Tương Lai

Dự án đã thu hút sự chú ý từ cả người chơi Pokemon thi đấu và các nhà phát triển làm việc trên các tác nhân AI cho các trận chiến Pokemon . Việc cấp phép MIT và khả năng sẵn có của API C đã được các nhà phát triển đón nhận đặc biệt tốt, những người muốn tích hợp engine vào các dự án thương mại mà không có hạn chế copyleft.

Khi engine tiến triển qua các giai đoạn phát triển của nó, cuộc tranh luận về tính xác thực đang diễn ra có thể sẽ tăng cường. Các quyết định của nhóm về việc bảo tồn những lỗi lịch sử nào sẽ tác động đáng kể đến việc áp dụng engine trong các cộng đồng khác nhau, từ những người chạy tốc độ tìm kiếm độ chính xác hoàn hảo đến những người chơi thi đấu ưu tiên lối chơi cân bằng.

pkmn/engine đại diện cho một nghiên cứu trường hợp thú vị về cách các nhà phát triển hiện đại tiếp cận các hệ thống trò chơi cũ, cân bằng giữa tính trung thực lịch sử với kỳ vọng về khả năng sử dụng đương đại.

Tham khảo: pkmn/engine