Các mô hình cho hành vi đua AI


9

Vì vậy, giả sử bạn đã có một AI đua xe dựa trên spline. Giả sử nó đã có thể xử lý các vấn đề cơ bản của phanh và lái xung quanh đường đua.

Làm thế nào bạn sẽ cấu trúc và thực hiện tránh va chạm, vượt, phác thảo, chặn và các hành vi khác để chiếc xe của bạn vẫn cạnh tranh nhưng tạo ra các cuộc đua thú vị?

Liên kết đến giấy tờ / triển khai sẽ là tuyệt vời.


bạn đang sử dụng loại động cơ nào,
Harshal Benake 18/8/2016

Câu trả lời:


7

Bạn đã thấy các hành vi chỉ đạo cho các nhân vật tự trị ? Tôi sẽ xem xét thuật toán "CrowdPathFollowing" để theo dõi và tránh va chạm. Bạn có thể kết hợp trong hành vi "Theo dõi dòng chảy" để phác thảo, vượt qua và chặn - làm cho trường dòng chảy đi theo con đường quá khứ và dự kiến ​​của người chơi, nhưng phân chia xung quanh vị trí hiện tại của anh ta.

      /-------------\
 ----<  [playerCar]  >-----
      \-------------/

Điều đó sẽ khiến AI có xu hướng theo sát ngay phía sau anh ta và di chuyển trực tiếp ra phía trước để chặn, nhưng vẫn khuyến khích những đường chuyền sạch sẽ.


1
Tôi biết về boids, nhưng nó là tài liệu tham khảo tốt. Tôi hơi sợ nhiều hành vi (ở trên đường đua, tránh xe, chặn, nháp, v.v.) tương tác theo những cách quá phức tạp để điều chỉnh và kết thúc bằng vụ va chạm trường hợp cạnh thường xuyên. Điều này tốt cho người đi bộ, nhưng thảm khốc cho những chiếc xe đua cần tiếp tục di chuyển.
tenpn

Tôi đã làm việc với API OpenSteer thực hiện rất nhiều thứ này. Tôi đã tìm thấy nó khá dễ dàng để điều chỉnh. Trong trường hợp của bạn, tôi sẽ làm cho trọng lượng "SteerToAvoidCollision" rất cao. Tôi không biết bạn đang đua xe nào, nhưng tôi nghĩ rằng nếu bạn hiểu đúng về phần lớn các trường hợp, thì cú va chạm hoặc va chạm thường xuyên còn lại do trường hợp cạnh có lẽ khá thực tế ....
HỎI

Đó là phương tiện chỉ đạo hay cái gì khác? Tôi sợ những tình huống gây ra vấn đề như hai chiếc xe phía trước bên trái của bạn và một chiếc phía trước bên phải của bạn. Vectơ trung bình sẽ dẫn đến một chuyển động bên phải, mặc dù điều đó có thể khiến bạn tiếp xúc với phương tiện bên phải.
tenpn

Tôi đã làm việc chủ yếu với người đi bộ, vì vậy tôi không thể thề rằng nó sẽ hoạt động. Một điều cần nhớ là nó không phải là một sự pha trộn của các hành vi - nó có thể là một người thừa kế. Vì vậy, bạn có thể tránh va chạm, ưu tiên cao hơn bất cứ điều gì khác. Trong trường hợp bạn mô tả chiếc xe sẽ chỉ đi đúng cho đến khi đường dự đoán giao với đường của xe bên tay phải, tại thời điểm đó, tránh sự va chạm đó trở thành lực lượng vượt trội. Bạn cũng có thể thêm các điều kiện đặc biệt: ví dụ: nếu không tìm thấy đường dẫn an toàn trong khung N, hãy thêm phanh cứng.
HỎI

2

Có một phần về điều đó tại hội nghị AI Game Dev năm nay tại Paris. Bạn có thể tìm thấy các slide và một bản tóm tắt ở đây:

http://aigamedev.com/open/coverage/paris10-report/#session9


1
Liên kết đến ppt là 404.> _ <
tenpn


ta - cách tiếp cận của anh ta rất thú vị nhưng mã tôi hiện đang làm việc thực sự tiên tiến hơn!
tenpn

1

Chống mẫu: Đối thủ thích nghi với tốc độ của họ

Thật không may, tôi không thể cung cấp cho bạn các mẫu, nhưng tôi muốn đặt tên cho một mẫu chống. Xin đừng cố gắng điều chỉnh tốc độ của trình điều khiển AI với một trong những người chơi. Ý tưởng đằng sau điều này là tạo ra các điều kiện đua xe công bằng cho những người nghiệp dư cũng như chuyên nghiệp và từ bỏ nhu cầu của nhiều cấp độ khó (và việc thực hiện chúng).

Tuy nhiên, những gì nghe có vẻ hay trên giấy hóa ra lại rất tệ trong thực tế và loạt MotoGP đã thất bại thảm hại khi thực hiện hành vi này. Nó đã kết thúc với việc các đối thủ lái xe với tốc độ 5mp / h khi bạn đứng yên trong vài giây và không thể biết được bạn đã tiến bộ trong trò chơi hay chưa (phản hồi rất tệ)


Cảm ơn. Tôi đang nói cụ thể về các hành vi chủng tộc thú vị ở đây hơn là cân bằng hoặc mức độ khó, nhưng tôi sẽ ghi nhớ điều đó.
tenpn

5
Gần như tất cả các trò chơi đua xe bao gồm một số hình thức băng cao su để giữ cho người chơi hành động, hoặc giữ AI gần với người chơi tốt. Bí quyết là hãy tinh tế với nó và biết khi nào nên tắt nó đi. Một khi người chơi nhận thấy họ cảm thấy bị lừa.
wkerslake

Tình huống MotoGP nghe có vẻ như là một vấn đề của việc đưa nó đi quá xa, hơn là một vấn đề với dây cao su nói chung. Không phải vô lý khi những người lái xe ở phía trước lái xe thận trọng hơn và những chiếc xe ở phía sau cố gắng tuyệt vọng hơn để thu hẹp khoảng cách, và tôi nghĩ rằng có giá trị trong việc mô hình hóa nó theo cách đó và trình bày một cách minh bạch cho người chơi.
Jibb thông minh

Đây là một bài viết thú vị về chủ đề: gamasutra.com/view/feature/3920/ nam Về cơ bản họ đưa bạn vào 3 nhóm tay đua AI và cho phép bạn tiến từ nhóm này sang nhóm khác trong suốt cuộc đua.
Felsir
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.