Công cụ trò chơi với việc tạo / quản lý thực thể Lua tốt [đã đóng]


11

Tôi đang tìm kiếm một công cụ xây dựng các thực thể của nó bằng Lua hoặc ngôn ngữ kịch bản lệnh khác. Điều này là để tìm cảm hứng và làm điều đó trong động cơ của riêng tôi là tốt.

Tôi biết rằng CryEngine sử dụng Lua để tạo ra các thực thể của họ, nhưng tôi muốn biết liệu có một số lựa chọn thay thế khác mà tôi có thể tìm kiếm hay không.

Cảm ơn!

Câu trả lời:


7

Tôi khuyên bạn nên xem LÖVE "một khung tuyệt vời mà bạn có thể sử dụng để tạo các trò chơi 2D trong Lua. Nó miễn phí, mã nguồn mở và hoạt động trên Windows, Mac OS X và Linux." Đây rõ ràng không phải là một thay thế cho Cryengine, nhưng chắc chắn sẽ chứng minh làm thế nào để sử dụng hiệu quả tiềm năng của Lua cho việc tạo thực thể và logic trò chơi. Kết hợp kiến ​​thức đó với cách Cryengine / các công cụ AAA khác sử dụng phụ trợ tập lệnh và bạn nên có tất cả cảm hứng cần thiết để tạo công cụ của riêng mình với khả năng tạo kịch bản mạnh mẽ. :)


4

Theo hiểu biết tốt nhất của tôi, Relic's Essence Engine Series (như được sử dụng trong Company of Heroes and Dawn of War II ) sử dụng Lua hoặc một phương ngữ của nó cho các chỉ số đơn vị và kịch bản nhiệm vụ. Không có nguồn web thực sự cho nó, nhưng bạn luôn có thể kiểm tra một số mod tại RelicNews.com để hỏi cách của bạn nếu bạn quan tâm.

Các động cơ Spark bởi Worlds Unknown như được sử dụng trong trò chơi sắp tới của họ Natural Selection 2 cho phép hầu hết các mã trò chơi để có trong Lua như xa như tôi biết. SDK đi kèm với đơn đặt hàng trước trò chơi và hiện đang trong giai đoạn thử nghiệm.

Một trò chơi khác đã từng được quảng bá dựa nhiều vào Lua sẽ là Eufloria (trước đây là Dyson ). Có một tài liệu tham khảo mod Lua trên diễn đàn của họ là tốt.

Trò chơi hợp tác miễn phí của Valve, Alien Swarm sử dụng rất nhiều ngôn ngữ kịch bản có tên "Squirrel" chịu ảnh hưởng của Lua. SDK Alien Swarm nên có sẵn để tải xuống trên Steam. ( Dev wiki )

EDIT: Làm thế nào tôi có thể quên về Thế giới trong Xung đột ! Trò chơi làm rất nhiều thứ trong Python trở nên rõ ràng khi nhìn vào các mod như Modern Warfare Mod thực hiện cơ chế hoàn toàn mới.


Đã thêm các liên kết của bạn trong cho bạn.
Vịt Cộng sản

Cảm ơn bạn! // Đã xóa nhận xét chứa các liên kết không được định dạng ...
Koarl

Câu trả lời tuyệt vời, tôi hy vọng nhiều người có thể thêm vào câu hỏi này vì trong tương lai tôi hoàn toàn chắc chắn rằng sẽ có nhiều câu trả lời hơn. Cảm ơn bạn rất nhiều Koarl (Tôi là một người hâm mộ di tích lớn btw)
Mr.Gando

2

Dưới đây là một số ví dụ về các trò chơi (mã nguồn mở) sử dụng kịch bản để thực hiện hành vi thực thể:

Frogato thực hiện các thực thể bằng cách sử dụng một ngôn ngữ kịch bản tùy chỉnh. Trận chiến cho Wesnoth thực hiện các thực thể bằng ngôn ngữ mô tả tùy chỉnh trong đó các tập lệnh Lua có thể được nhúng. KQ thực hiện hành vi thực thể bằng cách sử dụng tập lệnh Lua.

Chỉnh sửa: Liên kết được đăng bây giờ mà tôi được phép ...


Frogato trông rất gần với những gì tôi đang tìm kiếm, tuy hơi dài dòng nhưng vẫn rất thú vị. Một ví dụ tương đương trong Lua would rock :)
Mr.Gando

2

Tôi làm điều đó trong công cụ của tôi ( nguồn có sẵn , nhưng có lẽ không đáng để giải mã).

Trong trường hợp của tôi, một "thực thể" là một khái niệm tồn tại hoàn toàn trong Lua. Không có sự hỗ trợ của C ++ cho "thực thể". Như vậy, một "thực thể" là bất cứ thứ gì mà trò chơi cụ thể cần. Đôi khi, đó chỉ là một bảng có một ít dữ liệu được đính kèm, đôi khi đó là phần tử Khung hình 2d (lưu ý rằng Khung cũng hoàn toàn là các cấu trúc Lua, tôi chỉ có một thư viện UI tiêu chuẩn), đôi khi nó phức tạp với AI và kết xuất và sau đó là vẫn chỉ là một thứ được tạo ra ở Lua.

Nhiều người sử dụng Lua để kịch bản hệ thống đối tượng có sao lưu C ++, sao cho thực thể "sống" trong C ++ và gọi Lua cho kịch bản của nó. Tôi đã từng làm điều đó, nhưng tôi thấy mình ngày càng hạnh phúc hơn khi tôi chuyển mã ra khỏi C ++ và vào Lua. Tại thời điểm này, tôi chỉ sử dụng C ++ để xử lý các lệnh gọi API hệ điều hành và tất cả logic bố cục / kết xuất / AI / trò chơi đều ở dạng Lua thuần 100%.

Đề nghị.

Hãy đặt câu hỏi, tôi khá sẵn lòng trả lời :)


Làm thế nào để glorp so với love2d?
deft_code

Theo tôi hiểu, love2d có một lộ trình dựng hình đáng kể. glorp không - nó có các ràng buộc OpenGL và bạn chỉ hiển thị bất cứ thứ gì bạn muốn (mặc dù nó có chức năng trợ giúp cho các công cụ tiêu chuẩn.) glorp có một hệ thống "menu chính / tạm dừng / quay lại menu" tích hợp, nó có từ xa báo cáo lỗi về sự cố và nó sẽ tự động tạo trình cài đặt cho bất kỳ hệ điều hành nào bạn đang xây dựng. Tuy nhiên, glorp không thực sự được thiết kế như một API - đó là một khung được sửa đổi liên tục cho bất cứ thứ gì tôi cần.
Hoàn
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.