Triết lý của Web3 dường như hoàn toàn phù hợp với ngành công nghiệp trò chơi và xu hướng gamification trong những năm gần đây. Trong một thời gian khá lâu, chúng ta đã được hứa hẹn về sự đột phá mới dưới dạng trải nghiệm độc đáo: chơi game trên chuỗi. Các tính năng như phân quyền chuyển cán cân quyền lực khỏi các công ty đương nhiệm trong ngành trò chơi sang các thực thể sáng tạo, khả năng kết hợp phá vỡ các bức tường của những khu vườn khép kín từ lâu và quyền sở hữu thực sự của người chơi. Nhưng những lý tưởng mạnh mẽ này vẫn còn bị bỏ quên vì chúng ta vẫn chưa nhìn thấy chúng trong thực tế. MUD là nỗ lực dũng cảm đầu tiên nhằm tạo ra một khuôn khổ hoàn chỉnh cho trò chơi trực tuyến có thể khơi dậy thế hệ trò chơi tiếp theo.
Bài học từ ngành công nghiệp trò chơi truyền thống
Về sự đổi mới và bắt đầu lại từ đầu Có rất nhiều điều để nói khi bắt đầu xây dựng mọi thứ và tạo ra những sinh vật hoàn toàn mới, nhưng đối với trò chơi, có hàng thập kỷ bài học rút ra từ các mẫu thiết kế và việc tạo ra các ngóc ngách kỹ thuật mới đáng được xem xét nghiêm túc, và việc bỏ qua chúng tương đương với việc cố gắng tạo ra các trò chơi AAA bằng công nghệ Atari.
Khi nhìn lại những giai đoạn đầu phát triển trò chơi, chúng ta có thể thấy những điểm tương đồng rõ ràng với trò chơi trên chuỗi:Rất nhiều tài năng và nguồn cảm hứng cao dự án nhưng thiếu sự phối hợp và khuôn khổ rõ ràng.
Trong những ngày đầu của trò chơi điện tử, trước khi công cụ trò chơi ra đời, niềm tin và mẫu thiết kế đã được hình thành. Các trò chơi điện tử khác nhau có rất ít điểm chung,đến mức các trò chơi tương tự có thể có cơ sở mã hoàn toàn khác nhau. Nhưng mọi thứ đã thay đổivới sự ra đời của công cụ trò chơi.
Rất khó để phân biệt rõ ràng giữa công cụ phát triển trò chơi và bản thân trò chơi. Nói chung,công cụ trò chơi là một khungvới một bộ quy tắc và mẫu thiết kế có thể được sửa đổi và mở rộng một chút để tạo ra các cách triển khai trò chơi khác nhau. Đến những năm 90, sau nhiều năm phát triển trò chơi rời rạc, mọi thứ đã thay đổi, vớicông cụ trò chơi "dựa trên thể loại" và một số nỗ lực phát triển công cụ cho mục đích chung đang trở nên thống trị. Các thành phần cốt lõi của trò chơi như "Doom" và "Unreal" có thể được tái sử dụng để tạo ra nhiều trò chơi khác nhau.Các trò chơi thuộc loại tương tự đang bắt đầu chia sẻ nhiều logic cốt lõi cấy ghép< mạnh >. Chi phí và độ phức tạp của việc phát triển các trò chơi đua xe, chiến đấu và bắn súng góc nhìn thứ nhất đã giảm đáng kể. Điều không thể đã trở thành có thể, và mã sau thế hệ trò chơi và bản nâng cấp tiếp tục được tích lũy. Từ góc độ phần mềm, đây là một trong những lý do chính khiến phát triển trò chơi trở thành một ngành công nghiệp khổng lồ.
Có một số vấn đề cốt lõi trong trò chơi trên chuỗi:
Thiếu khuôn khổ: Mọi nhóm đều cố gắng xây dựng mọi thứ từ đầu, dẫn đến sự thiếu hiệu quả vàthiếu người xây dựng để giải quyết các vấn đề tương tự và tối ưu hóa giải pháp tốt nhất Tóm tắt kinh nghiệm và kiến thức hệ thống.
Thiếu khả năng sử dụng lại mã: Lấy nhiều trò chơi trên chuỗi hiện đang được phát triển làm ví dụ. Có bao nhiêu trong số này có thể được sao chép thành công và tạo ra một trò chơi hơi khác một chút? Có bao nhiêu điểm khác biệt rõ ràng giữa các lớp và thành phần khác nhau của trò chơi, cho phép xây dựng các thế hệ trò chơi mới hơn bằng cách sử dụng các cơ sở mã tương tự? Lời hứa tạo ra dự án nguồn mở có tính kết nối và quan trọng nhất dành cho trò chơi dường như vẫn còn xa vời.
Thiếu khả năng kết hợp dữ liệu: Nó không kết thúc ở khả năng sử dụng lại mã, nó > Cũng liên quan đến khả năng các trò chơi trên chuỗi tận dụng trạng thái blockchain được chia sẻ để xây dựng lẫn nhau bằng cách sử dụng dữ liệu từ Trò chơi A và Trò chơi B. Trên thực tế, phải mất rất nhiều công sức và nguồn lực để tích hợp dữ liệu và logic của Trò chơi A, và trò chơi này sẽ trở thành trò chơi khác.
Giải pháp của MUD:
MUD là nỗ lực dũng cảm đầu tiên nhằm phục vụ như một công cụ và khung tạo trò chơi trên chuỗi bằng cách cung cấp một cấu trúc có thể duy trì, nâng cấp và tạo khuôn. Mô hình Hệ thống thành phần thực thể (ECS) do MUD ủng hộ có ý nghĩa đối với việc phát triển trò chơi nói chung và thậm chí còn có ý nghĩa hơn đối với việc phát triển trò chơi trên chuỗi.
ECS trong hợp đồng thông minh:
Tốt nhất trong MUD Các khối xây dựng cơ bản là Thành phần (Thành phần), tồn tại ở dạng hợp đồng thông minh và hoạt động giống như cơ sở dữ liệu lưu trữ dữ liệu thực thể. Ví dụ: chúng tôi có một thực thể (địa chỉ Ethereum) chẳng hạn như địa chỉ ví của người chơi. Thực thể được đại diện bởi địa chỉ này có thể có các thuộc tính khác nhau, chẳng hạn như: vị trí (x, y) trong thành phần vị trí, cấp 10 trong thành phần cấp và giá trị 50 trong thành phần mã thông báo. Các thành phần chỉ chứa ánh xạ và cấu hình cơ bản.
Hệ thống (Hệ thống) phức tạp hơn và triển khai logic thay đổi giá trị của các thành phần (Thành phần). Bạn có thể coi nó như một API yêu cầu POST trên cơ sở dữ liệu (thành phần) được chỉ định của Systems. Chỉ bằng cách giành được quyền ghi vào các Thành phần cụ thể, họ mới có thể ghi dữ liệu vào thành phần đó. Đây là lúc mọi thứ trở nên thú vị. Hệ thống có thể tương tác với các thành phần khác nhau để tạo ra logic chi tiết. Bạn có thể có hệ thống chuyển động chỉ định các bước di chuyển hợp lệ mà người chơi có thể thực hiện (ví dụ: hai bước cho mỗi lần di chuyển) hoặc bạn có thể có hệ thống phần thưởng mang lại vàng cho người chơi mỗi khi họ lên cấp.
Tất cả những điều này được đăng ký với world contact để mọi thay đổi đối với dữ liệu của thành phần đều phát ra một sự kiện. Hợp đồng Thế giới không được phép và bất kỳ ai cũng có thể thêm các hệ thống và thành phần mới. Về lý thuyết, các hợp đồng thế giới khác nhau có thể tương tác với nhau.
Đưa ECS vào trò chơi trên chuỗi sẽ tạo ra một cấu trúc rất trang nhã, khiến OPcraft chỉ bao gồm 10 thành phần và khoảng 15 hệ thống.
Khả năng kết hợp thực sự
Hệ thống ECS không chỉ có ý nghĩa hoàn hảo trong phát triển trò chơi truyền thống mà còn hơn thế nữa trong các trò chơi trên chuỗi vì nó cung cấp Hai tính năng quan trọng được cung cấp:
Khả năng nâng cấp của các trò chơi đã triển khai
Mức độ kết hợp cao nhất
ol>Hãy tưởng tượng hai con đường: một là giữ nguyên thiết kế cơ bản và hai là thay đổi logic cốt lõi của trò chơi.
Hãy tưởng tượng một trò chơi chiến lược PVP tiêu chuẩn trong đó người chơi xây dựng quân đội để chiến đấu với nhau. Phiên bản cơ bản là 2D, nhưngbây giờ nhóm đã quyết định tạo bản kết xuất 3D cho trò chơi. Tất cả những gì họ cần làm là lấy tất cả các Hệ thống liên quan đến vị trí và tạo phiên bản nâng cấp bằng cách sử dụng tọa độ (x,y,z) thay vì (x,y). Tất cả các hệ thống và thành phần khác (chẳng hạn như: hệ thống tấn công, công trình y tế và quân đội) có thể không thay đổi. Nó thậm chí còn vượt xa phạm vi của nhóm phát triển ban đầu, cộng đồng có thể tạo ra các mod khác nhau của trò chơi bằng cách triển khai lại các hệ thống và thành phần, thậm chí cạnh tranh với các thành phần tương tự bằng cách cấp quyền truy cập ghi vào Hệ thống mới để tương tác (trong trường hợp một trò chơi do cộng đồng sở hữu, các mô hình quản trị khác nhau có thể được sử dụng để bỏ phiếu cho các quyết định đó).
Một cách tiếp cận khác giữ nguyên các thành phần và hệ thống mà không cấp cho hệ thống mới quyền ghi, nhưng bằng cách thêm các thành phần và hệ thống để mở rộng chức năng trong trò chơi, nó sẽ trông như thế nào giống? Hãy xem xét một trò chơi cờ vua trên dây chuyền cơ bản, trong đó một hệ thống các nước đi và quy tắc đã được triển khai. Mọi người có thể chơi trò chơi giống như cờ vua ngoài đời thực, nhưng có thể nhóm của bạn quyết định tạo thêm một lớp: lớp xã hội với hệ thống xếp hạng để so khớp hoặc bất kỳ trường hợp sử dụng nào khác. Tất cả những gì bạn cần làm là thêm thành phần xếp hạng và hệ thống có quy tắc xếp hạng. Điều này không chỉ cho phép người dùng chuyển sang phiên bản trò chơi mới một cách liền mạch (trải nghiệm người dùng tốt hơn) mà còn tạo ra phương tiện kỹ thuật để các phiên bản khác nhau cùng tồn tại hoặc chồng chéo với nhau ở cấp hợp đồng thông minh. Người chơi có thể chơi trên các phiên bản trò chơi khác nhau trong khi tương tác với dữ liệu từ cùng các thành phần cốt lõi, điều này rất sáng tạo bên cạnh các ứng dụng có khả năng kết hợp. Nó tạo ra khả năng chọn tham gia vào tính bất biến, tạo ra một khía cạnh sở hữu khác mà trò chơi trên chuỗi mang lại. Quyền sở hữu thực sự đối với các nội dung trò chơi khác nhau (ví dụ: điểm số, NFT, thành tích) được bảo vệ bằng logic bất biến có thể được mở rộng bằng các nâng cấp bổ sung nhưng không thay đổi về cốt lõi. Nó giải quyết một trong những vấn đề chính với trò chơi Web3, đó là khả năng người sáng tạo làm tê liệt nội dung mà không có sự đồng ý.
Quan điểm tổng thể của khách hàng:
Xin lưu ý rằng MUD là một dự án đang diễn ra. Phần tiếp theo có thể không cập nhật và có thể có một số mô tả không chính xác nhưng kiến trúc tổng thể sẽ không thay đổi đáng kể.
Cho đến nay, chúng tôi đã nghiên cứu MUD ở cấp độ hợp đồng thông minh. Nhưng hơn thế nữa, MUD cung cấp một bộ hoàn chỉnh các thư viện và lớp ứng dụng khách, đồng thời MUD được thiết kế với một số tính năng độc đáo.
Khả năng kết hợp ứng dụng khách
li>< li>Máy khách được đồng bộ hóa hoàn toàn với các thay đổi trạng thái blockchain (dữ liệu trò chơi)
-
PhaserX là lớp kết xuất
Hãy cùng chúng tôi tìm hiểu sâu hơn về chi tiết kỹ thuật để làm cho nó cụ thể hơn.
Lớp mạng:
Lớp mạng là lớp cơ sở của máy khách. Nó chứa cấu hình cơ bản (Hợp đồng thế giới, cấu hình trò chơi và mạng) và API để tương tác trong trò chơi. Khi bạn tạo một lớp mạng, nó có các thông số kỹ thuật cho tất cả các thành phần và hệ thống khác nhau mà máy khách của bạn có thể tương tác và bạn có thể chọn chỉ tương tác với các thành phần/hệ thống cụ thể.
Ví dụ: nếu bạn muốn tạo chuyển động trong trò chơi của mình và thể hiện nó ở giao diện người dùng, bạn sẽ cần tạo một hợp đồng thông minh được triển khai với vị trí đó thành phần và lớp Mạng chuyển động để đồng bộ hóa hệ thống. Giờ đây, bạn có thể tạo API Move hoạt động trên một vị trí và một số đối tượng (thực thể) trong trò chơi và đặt vị trí của nó hoặc di chuyển nó từ nơi này sang nơi khác. Bất cứ khi nào người chơi có thể sử dụng API Move, họ sẽ gửi giao dịch tới blockchain. Đối với hệ thống chuyển động, chúng sẽ thực thi các chức năng trong hợp đồng thông minh của hệ thống chuyển động.
Cấu trúc này cho phép trò chơi dựa trên nhiều khách hàng. Mọi người đều có thể tạo một ứng dụng khách duy nhất và tất cả các ứng dụng khách đều có giá trị như nhau miễn là chúng đồng bộ hóa với chuỗi khối và tuân theo cơ sở hạ tầng lớp mạng. Chúng tôi đã thấy những trường hợp sử dụng thực sự thú vị cho trò chơi nhiều khách hàng, chẳng hạn như trong Dark Forest nơi người chơi cạnh tranh với nhau nhưng sử dụng các ứng dụng khách và plugin khác nhau. Cấu trúc của máy khách cho phép chúng tôi nhúng nó vào lớp mạng và sửa đổi API để nhanh chóng có được các phiên bản máy khách khác nhau, đạt được mức độ linh hoạt và khả năng kết hợp máy khách cao.
Bạn có thể hỏi cách các thành phần máy khách đồng bộ hóa với các thành phần chuỗi. Đây là một trong những thách thức lớn mà các nhà phát triển phải đối mặt khi làm việc với các khách hàng trò chơi trực tuyến và MUD có một số giải pháp.
Trước hết, MUD giới thiệu chức năng chụp nhanh, cho phép máy khách đồng bộ hóa với trạng thái Thế giới (tức là giá trị thực thể của thành phần) mà không cần phải xử lý tất cả các sự kiện trong quá khứ để xây dựng lại trạng thái, từ đó giảm độ trễ và giảm độ phức tạp.
Ngoài ra, hệ thống ID của MUD, trong đó mỗi hệ thống (System) và thành phần (Component) sẽ lấy id dựa trên tên của nó và khi được triển khai, chúng sẽ Sẽ được đăng ký trong hợp đồng Thế giới, giúp bạn dễ dàng theo dõi các thay đổi và tương tác với trò chơi hơn.
Lớp hiển thị: thời điểm và cách thức các sự kiện được hiển thị
MUD đi kèm với PhaserX, "một công cụ có khả năng mở rộng cao được xây dựng trên Phaser", không cần phải có PhaserX. Trong OPcraft, công cụ voxel Noa được sử dụng thay cho PhaserX. Về lý thuyết, bạn có thể sử dụng bất kỳ động cơ nào miễn là nó tuân theo cấu trúc.
Như đã đề cập trước đó, mỗi thành phần và hệ thống đều được đăng ký trên hợp đồng Thế giới và khi có thay đổi xảy ra, một sự kiện sẽ được phát ra (với ID thành phần và thực thể ID và dữ liệu nhận dạng khác). Tại đây, dịch vụ phát trực tuyến ECS có thể cung cấp cho khách hàng tùy chọn để chọn sự kiện nào cần đăng ký.
Biểu diễn đồ họa của một thực thể có thể là bất cứ thứ gì bạn muốn. Trò chơi chiến đấu có thể có các nhân vật anime, hiệp sĩ hoặc thậm chí là KOL tiền điện tử yêu thích của bạn. Chúng đều là những phiên bản hợp lệ miễn là chúng đại diện và phản ứng với các sự kiện trên chuỗi.
Liên kết gốc: https://mirror.xyz/matchboxdao.eth/d3lVAOa9Bi0kY-caoUT3lDC6E61mWJqtP1q6tME4xGY