Điều gì làm cho một đối thủ máy tính cảm thấy sống?


107

Có bất kỳ blog hoặc whitepapers được đề xuất nào nói về việc làm cho AI trong một game RPG cảm thấy chân thực hơn không? (Cụ thể là chiến đấu theo lượt.)

Tôi biết một cái gì đó phải ở ngoài đó, nhưng tôi chỉ tìm thấy những bài báo nói về các thuật toán đằng sau AI. Tôi đang tìm kiếm nhiều hơn về "đây là điều làm cho đối thủ máy tính cảm thấy sống động". Chấp nhận rủi ro, đi dễ dàng, rút ​​lui, vv ....


Rất nhiều câu trả lời tuyệt vời, và tôi ước tôi có thể chấp nhận một vài trong số chúng. Cảm ơn mọi người!


Nếu máy tính đưa ra một chiến lược, điều đó làm cho nó cảm thấy sống động hơn. AI của FEAR đã được khen ngợi vì nó sẽ đánh bại người chơi (trong số những thứ khác) (mặc dù tôi tin rằng phần lớn trong số đó thực sự đã được viết kịch bản)
thedaian

10
Cái chết của nó hoạt hình. Bang. Không nhưng nghiêm túc, sử dụng môi trường chống lại bạn. Và phạm sai lầm - nhưng sai lầm thông minh . Đúng? Giống như một người có tầm nhìn xa, chỉ có anh ta đưa ra giả định sai lầm tại một số điểm trong chuỗi lý luận của mình.
Kỹ sư

Không rõ liệu bạn có muốn các nhân vật máy tính cảm thấy sống động hay bạn có thể có ấn tượng để chiến đấu chống lại một người chơi khác giống như bạn điều khiển tất cả các nhân vật máy tính?
Nikko

4
Cách làm cho máy tính cảm thấy sống động: xem lại Bladerunner ...
Kheldar

Bạn có thể muốn đọc . Nó sử dụng logic mờ trên cây quyết định.
Jonathan Dickinson

Câu trả lời:


109

Sai lầm. Không có gì tệ hơn là một đối thủ AI có thể headshot bạn từ mười lăm dặm, hoặc luôn luôn chọn chiến lược chiến thắng hoàn hảo. Nó phá vỡ sự chìm đắm và làm cho rõ ràng rằng bạn đang chơi một thói quen. Những sai lầm có thể khiến AI có vẻ giống con người hơn.

Nhiều game FPS buộc AI phải bỏ lỡ với vài phát bắn đầu tiên, cảnh báo người chơi rằng AI đang ở đó, trước khi đi tiêu diệt.

Các trò chơi chiến lược đôi khi có thể chọn một chiến lược tối ưu, hoặc khi đánh giá các mối đe dọa có thể cố tình bỏ qua một số phần của chúng.

Một trò chơi đua xe tôi đã tính toán khi người chơi ở gần đó, và sau đó tung xúc xắc để tạo ra những chiếc xe AI trước mặt anh ta chui qua góc hoặc thổi lốp xe. Nó được ca ngợi vì AI thực tế.

Tuy nhiên, việc tạo ra AI không hoàn hảo vẫn là một thách thức. Bạn phải phạm sai lầm thuyết phục, với tốc độ thuyết phục, thay vì thực hiện hành động hoàn hảo sau hành động hoàn hảo cho đến khi thực hiện một sai lầm lố bịch. Điều đó có thể còn tồi tệ hơn là chỉ chơi một AI hoàn hảo. Chẳng hạn, lập trình viên làm việc về AI đua xe ở trên đã dành rất nhiều thời gian để mô hình hóa cách thức một chiếc xe ô tô, và những gì đầu vào AI cần phải thực hiện để gây ra một sự thiếu thuyết phục. Như mọi khi, playtesting là rất quan trọng.

Đây là một bài viết hay về những gì tạo ra những loại sai lầm này: http://www.gamasutra.com/view/feature/3947/intellect_mistakes_how_to_.php


38
"Nhiều game FPS buộc AI phải bỏ lỡ với vài phát bắn đầu tiên, cảnh báo người chơi rằng AI đang ở đó, trước khi đi tiêu diệt": Trong GURPS, chúng tôi đã gọi đây là khóa đào tạo của Học viện Marksmanship Imperial Stormtrooper.
hỗn loạn

4
Quá nhiều lỗi và đó là một máy tính ngu ngốc.
LarsTech

30
Năng lượng vô hạn được tạo ra bằng cách đặt một nhóm những kẻ mặc áo đỏ vào phòng giam bên cạnh một đội quân bão. Những người lính bão không thể tấn công mục tiêu của họ, và những kẻ áo đỏ phải chết .
zzzzBov

Tôi nhận được điểm của câu trả lời và tôi nghĩ về ranh giới giữa sự hoàn hảo cho máy tính và sự hoàn hảo cho con người. Điều gì thay đổi? Một người chơi quake3 tuyệt vời như tử vong ở điểm khác biệt so với cpu ở cấp độ ác mộng?
Pitto

Tôi tính toán tất cả các chuyển động có thể mà AI có thể thực hiện, gán trọng lượng cho các di chuyển dựa trên hoàn cảnh và các đặc điểm tính cách được chỉ định của AI (chẳng hạn như máu, sợ hãi, giận dữ, v.v.). Điều này hoạt động rất tốt cho các tình huống như: bạn và AI sắp chết, một AI thẳng thắn sẽ bắn bạn sau đó lấy gói sức khỏe, nhưng một AI cao sợ hãi sẽ cố gắng đánh bại bạn. Trừ khi họ có sự tức giận hoặc khát máu cao, sau đó họ chỉ bắn cho đến khi một trong hai bạn chết.
Bán hết Nhà hoạt động

44

Những người khác đã nói về AI, logic, lập kế hoạch và tầm quan trọng của việc phạm sai lầm. Và tất cả những thứ này đều tốt và hữu ích trong sự phát triển của AI.

Nhưng câu hỏi là về điều gì làm cho đối thủ máy tính cảm thấy sống động và điều đó không thể đạt được thông qua AI. Nó không phải là. Người chơi không phán xét một nhân vật trong trò chơi dựa trên các lựa chọn cấp chiến lược của họ; họ đánh giá nó dựa trên những điều nhỏ hơn nhiều.

Để làm cho đối thủ máy tính cảm thấy sống động, điều bạn cần là một tập hợp toàn diện các hình ảnh động và âm thanh chất lượng cao (đặc biệt là giọng hát) cho đối thủ. Người chơi không thể nhìn thấy AI. Anh ta không thể nghe thấy, anh ta không thể trải nghiệm nó, anh ta không thể biết đối thủ đang nghĩ gì. Sự xuất hiện của "nhân vật này là một thực thể sống" được thể hiện cho người chơi hoàn toàn thông qua các hình ảnh động chơi trên nhân vật và âm thanh được tạo ra bởi nhân vật (một lần nữa, chủ yếu sẽ là giọng hát).

Điều quan trọng là nhân vật phải phản ứng với những kích thích xung quanh anh ta; nhìn vào những thứ gần đó, chạm vào những đồ vật gần đó (khi thích hợp để làm như vậy), có vẻ giật mình khi ngạc nhiên và thể hiện những cảm xúc khác khi thích hợp.

Khi nói về những điều này, điều quan trọng là giảm thiểu lặp lại. Nếu nhân vật sử dụng hoạt hình "tấn công" tương tự mỗi lần anh ta tấn công, anh ta sẽ không bao giờ cảm thấy còn sống. Nếu anh ấy đóng một hoạt hình "nhàn rỗi" lặp đi lặp lại khi anh ấy không làm gì khác, anh ấy sẽ không cảm thấy sống. Nếu anh ta nói cùng một giọng nói châm biếm hai lần (đặc biệt là liên tiếp), điều đó sẽ phá vỡ ảo tưởng rằng nhân vật còn sống.

Và đó là khá nhiều đó. Nếu đối thủ mà bạn đang cố làm cho có vẻ như sống động có mặt trong trò chơi của bạn, thì thành công của bạn trong việc khiến họ dường như sống động sẽ chủ yếu được quyết định bởi đồ họa và âm thanh hiển thị cho người chơi.

Nếu đối thủ mà bạn đang cố tỏ ra "sống" không thực sự có mặt trong trò chơi, như trường hợp trong Cờ vua và StarCraft, thì hãy bỏ qua câu trả lời này; Đặt cược tốt nhất của bạn là theo dõi các câu trả lời tập trung vào AI.


4
Nhắc nhở tôi về tất cả những kẻ thù trong Mass Effect hét lên "ENEMIES MỌI NƠI!" cứ sau 2 giây
Dashto

Tôi ước tôi có thể bỏ phiếu này RẤT NHIỀU. Tôi đã làm việc trên hai FPS ba người và không thể nhấn mạnh tầm quan trọng của hình ảnh động (nhìn trộm, cử chỉ, di chuyển) và âm thanh (nói ý định, đặt câu hỏi, trò chuyện) để tạo ra một môi trường tuyệt vời. AI không phải là về việc đánh bại người chơi, mà là truyền tải chủ nghĩa hiện thực, một phần lớn của chủ nghĩa hiện thực là cách chúng ta di chuyển và âm thanh.
Aps Grapsas

1
+1, điểm tốt. Làm tôi nghĩ đến những trò chơi Oblivioneque khi nỗ lực tương tác với NPC của bạn đôi khi bị cản trở khi họ ngồi trên giường, xoay người, đứng dậy và cuối cùng đối mặt với bạn, trước khi cuối cùng cũng nhận ra sự hiện diện của bạn ... luôn khiến tôi bối rối.
zenzelezz

Đồng ý rằng điều này làm cho một trò chơi nhập vai hơn, không đồng ý rằng nó làm cho nó giống con người hơn. Bạn đã bao giờ xem có bao nhiêu người chơi CON NGƯỜI cư xử trong hầu hết các trò chơi nhiều người chơi chưa? Trong một số trò chơi, một nửa số người chơi nhảy xung quanh không có mục đích và nửa còn lại đang spam cuộc trò chuyện bằng giọng nói với cùng một clip bằng giọng nói hai mươi lần một giây. Các bot thường cư xử tốt hơn con người.
Nói dối Ryan

Một trong những cách bạn có thể khiến AI trông giống con người có lẽ là khiến chúng nổi cơn thịnh nộ nếu chúng tiếp tục bị giết. Hoặc cố gắng lừa một người chơi mới để giao dịch các mặt hàng đắt tiền cho bling vô dụng. Đó sẽ không phải là một trò chơi thú vị để chơi, nhưng ít nhất AI sẽ cảm thấy "sống".
Nói dối Ryan

30

Dưới đây là danh sách một số khái niệm đơn giản có thể làm cho đối thủ của bạn sinh động hơn:

  1. Ý định
    Cung cấp cho người chơi một số cách phân chia 'ý định' của AI. Điều này có thể đơn giản như việc họ hét lên "Số lượng hơn chất lượng" trước khi thực hiện một cuộc tấn công headshot chính xác, "Flank anh ta" trong khi cố gắng để theo sau bạn, hoặc "Đưa thủ lĩnh, không có gì khác" trước khi tấn công nhân vật chính. Bạn cũng có thể trở nên phức tạp hơn, ví dụ, yêu cầu họ đưa ra một số ngôn ngữ ký hiệu cho đồng đội của họ, sau đó thay đổi hành vi của những người đồng đội đó.

  2. Tuyệt vọng
    Khi đối thủ đến gần hơn với cái chết, bạn có thể cho họ cảm giác tuyệt vọng. Thay đổi chiến thuật của họ tại các cột mốc sức khỏe nhất định. Làm cho các giai đoạn sau của họ trở nên hoảng loạn hơn, với rủi ro lớn hơn về phần của họ (đi đến mưa đá, thay vì sứt mẻ chậm). Trực quan cũng giao tiếp điều này (hình ảnh động cường điệu hơn, tĩnh mạch, vv).

  3. Đi ra ngoài với một Bang.
    Cho họ một cái chết khiến cuộc chiến với họ có gì đó đáng để lặp lại. Grunt keel hơn hoạt hình. Các ông chủ soliloquize. Nếu đó là một nhân vật đáng tự hào, hãy khiến họ từ chối cho bạn giết, và gây sát thương cuối cùng cho chính họ. Bạn có được sự trôi dạt.


4
Chào. Bạn thực sự không phải viết trình độ của bạn vào câu trả lời của bạn. Điền vào hồ sơ của bạn và nếu ai đó quan tâm nếu bạn biết những gì bạn đang nói về, xin chào nhấp vào tên của bạn. Đó là nó ;).
Notabene

1
Điểm ý định là một trong những tốt. Một chiến lược tốt là để các đồng đội AI của bạn (nếu họ tồn tại) gọi ra những gì đối thủ đang làm - "họ đang ở bên cạnh!", "Họ đang tải lại!" v.v ... Trên thực tế chiến lược này khá hiệu quả ngay cả khi AI của kẻ thù không làm điều đó. :)
tenpn

1
@Notabene, không đồng ý với nhận xét của bạn, nhưng như một lưu ý - bạn có đại diện để tự chỉnh sửa thông tin không liên quan. :) Tôi mới thực hiện chỉnh sửa, nhưng đó là "chủ đề để xem xét" cho tôi. :)
Cyclops

2
@ Cyclops. Vâng, tôi đã cân nhắc điều đó. Nhưng nó có thể cảm thấy khá thô lỗ nếu không có bình luận thích hợp và tôi muốn để Jordaan tự quyết định về nó. Tôi có nghĩa là thân thiện tất nhiên. Nhưng hãy dừng việc phá hủy câu trả lời tốt với các bình luận chủ đề:]
Notabene

3
Chào. Chỉ để cho tất cả các bạn biết, tôi đã bao gồm dòng Cử nhân như một hình thức tự ti. Ở Úc, bằng Cử nhân Trò chơi không xứng đáng với tờ giấy được in trên đó. Không có ý định khoe khoang. "Đây là một số lời khuyên rõ ràng là đỉnh điểm của sự lãng phí 30.000 đô la và 3 năm học tập của tôi". Xin lỗi nếu tôi không truyền đạt chính xác.
Jordaan Mylonas

22

Tôi khuyên bạn nên dùng Google IO này nói về google doodle pacman. Tại cca 18:00 họ bắt đầu nói về tính cách của những con ma trong pacman. Nó thực sự gây choáng khi bạn có thể đặt cá tính vào con đường đơn giản.

Google I / O 2011: Bí mật của Google Pac-Man: Game Show

Toàn bộ video là đáng xem. Tôi thực sự khuyên bạn nên nó.


Không thực sự trả lời câu hỏi, nhưng có thể truyền cảm hứng ... (tôi đoán)
Notabene

11
Tôi muốn nói đó là một câu trả lời hợp lệ. Câu hỏi là về cách làm cho đối thủ máy tính cảm thấy "sống" và thiết kế tính cách của những con ma thực hiện chính xác điều đó.
Cyclops

14

Tôi không biết về bất kỳ blog nào như vậy, nhưng vì một game nhập vai chiến thuật theo lượt chiến thuật là thể loại yêu thích thứ hai của tôi ngay sau roguelike, tôi sẽ viết cho bạn một bài đăng trên blog. Theo kinh nghiệm của tôi, đó không phải là khó khăn của AI chiến thuật trong một game nhập vai hay RTS thường làm tôi thất vọng, mà ngược lại: AI hoàn toàn thiển cận và không có quyết định của đội. Con người sẽ không bao giờ chơi như thế này.

Trước đó, khi tôi vẫn xem các game nhập vai là một đỉnh cao của thiết kế trò chơi, tôi đã từng thử tạo ra một "TRPG Nhật Bản điển hình" với trọng tâm nặng nề về chiến đấu theo lượt chiến thuật như Final Fantasy Tactics. Như mọi khi, nó trở thành một bản demo công nghệ cho tìm đường và AI, vì vậy tôi sẽ chia sẻ suy nghĩ của mình về chủ đề này.

Hầu hết các TRPG này không bận tâm nhiều đến AI. Vui vẻ ngoài kia không đến từ một thách thức chiến thuật hoặc chiến lược phức tạp, mà từ nông nghiệp nói chung và lạm dụng AI một cách hài hước. Vì vậy, vấn đề không phải là AI của họ làm những việc mà con người sẽ không bao giờ làm. Thông thường, đủ để có một AI ngu ngốc và cân bằng nó với thiết kế trò chơi theo cách mà nó không bao giờ cần phải nhìn thấy nhiều hơn một động tác trước và chỉ sử dụng các bước đi ngắn hạn tốt nhất. Tất nhiên nó không bao giờ cảm thấy có thật, nhưng ai quan tâm? Điều này chỉ cảm thấy sai, tôi muốn tin rằng có thể tạo ra niềm vui dựa trên một trận chiến AI phức tạp thay vì canh tác và điều khiển hơi nước. Có thể không cần thiết, và cũng tốn thời gian, nhưng có thể.

Ghi nhớ Final Fantasy Tactics và bản mod khó tính FFT 1.3 của nó, tôi đặt các mục tiêu sau đây để chơi AI giống như con người và vui nhộn:

  • AI phải tạo ra một thử thách, nhưng là một thử thách thú vị chứ không phải thử thách "tìm kiếm toàn bộ con người". Thử thách thú vị này thường được người chơi mong đợi thông qua bối cảnh chung của một nhiệm vụ hiện tại. Thông thường đó là nơi các kịch bản ra đời tạo ra một AI lừa ngựa.
  • AI nên khéo léo, nhưng không sâu Minimax thông minh. Các loại AI khác nhau nên có những sai sót khác nhau, giống như các tính cách khác nhau của con người. Chẳng hạn, đó là một điều hiếm thấy trong các trò chơi, Advance Wars có kịch bản cá nhân cho các tướng, chẳng hạn, nhưng các đơn vị cũng có thể có chúng.
  • AI phải tránh nhìn ngớ ngẩn khi nó không có ý định. Sự ngu ngốc tục tĩu hoàn toàn phá hỏng mọi ảo tưởng về trí thông minh, luôn luôn chiến thắng chiến lược cũng làm như vậy. Và sơ hở được tạo ra bởi kịch bản bất cẩn, đó là những điều tồi tệ nhất.

Tôi nghĩ rằng tôi sẽ giải quyết # 1 bằng các hành vi mới nổi, # 2 với các tính cách khác nhau và lựa chọn chiến lược "bán ngẫu nhiên" giống con người, # 3 với việc giữ mã hóa cứng ở mức tối thiểu và kiểm tra cẩn thận.

Vì vậy, những hành vi này tôi đang nói về điều gì, đó có phải là một chuỗi các khả năng được sử dụng theo kịch bản không? Một khả năng hàng đầu từ một danh sách có trọng số? Không, những gì tôi có trong đầu là sự kết hợp giữa trí thông minh , loại tính cách mong muốnvai trò xuất phát từ khả năng và vũ khí hiện có. Bạn có thể mô tả sự kết hợp này như là một "kẻ gây sát thương điên khùng ngu ngốc" hoặc "người chữa lành phòng thủ thông minh". Vì vậy, các chuyên ngành AI, như các lớp học hoặc ngành nghề, ví dụ như một Archer AI sử dụng cung tên để bắn mũi tên với một số bộ combo khả năng cung thủ chung được xác định trước như Take Aim hoặc Arrow vòi hoa sen, trở nên xuất hiện một cách logic thay vì mã hóa cứng.

Về cơ bản, điều quan trọng là phải phát hiện và vận hành trên các vai trò này: người gây sát thương, người gây sát thương, người phá hủy, người đánh bóng, người chữa lành, bộ đệm / trình gỡ lỗi, khu vực của hiệu ứng; thông thường, một nhân vật sẽ thực hiện ít nhất hai trong số các vai trò này.

Để tạo ra một niềm vui chiến thuật từ điều này, chúng tôi muốn các hành vi xử lý một số trường hợp một cách vững chắc:

Trường hợp đơn giản nhất. Rất nhiều yêu tinh yếu phục kích các anh hùng của chúng ta. Mối đe dọa nhận thức là hiển nhiên, yêu tinh sẽ cố gắng áp đảo người chơi với mỗi yêu tinh có tính cách điên cuồng ngu ngốc với một số khả năng cận chiến nguyên thủy, nhận thấy điểm yếu cũng là rõ ràng, như goblins vào một nhân vật bọc thép và chống lửa, sau đó bắn một loạt lửa phép thuật AoE dựa trên hướng chung đó. Tìm một người gây sát thương, tìm một AoE'er, chuyên về người gây sát thương cho loại sát thương của AoE'er, gửi người gây sát thương cho khối yêu tinh, tạo ra một câu thần chú AoE gây sát thương khi nhóm yêu tinh xung quanh.

Trường hợp thông thường để kiểm tra các tương tác nhóm đơn giản. Người chơi gặp một hiệp sĩ, một cung thủ, một pháp sư và một giáo sĩ. Mối đe dọa nhận thức bây giờ phức tạp hơn, các tương tác khác nhau trở nên có sẵn. YOu đã có thể thấy vai trò có thể và sự kết hợp của nó. Cleric sẽ buff và chữa lành, pháp sư sẽ chế ra những thứ ma thuật phức tạp nhưng có sức sát thương cao, hiệp sĩ sẽ buộc tội ai đó hoặc bảo vệ một pháp sư, cung thủ sẽ giúp hiệp sĩ bằng cách bắn tỉa những kẻ cố gắng chạy trốn khỏi anh ta hoặc khiến chiến lược phòng thủ của anh ta trở nên phức tạp hơn, điều này sẽ phụ thuộc vào sự lựa chọn của hiệp sĩ. Tính cách cho kẻ thù có thể được quyết định ngẫu nhiên biến cuộc chạm trán tương tự thành trải nghiệm độc đáo. Người chơi sẽ phải quyết định đâu là chiến lược tốt nhất với các đơn vị anh ta hiện có, và nếu AI cố gắng làm điều tương tự ở phía bên kia màn hình, điều đó sẽ rất thú vị.

Trường hợp phức tạp để kiểm tra tương tác nhóm và lập kế hoạch chiến lược. Có một trận chiến mà bạn phải đối đầu với một nhóm gồm bốn sát thủ (người gây sát thương thông minh cẩn thận + người xác nhận). Rất ít về số lượng, với ngoại hình đáng sợ, mối đe dọa nhận thức của chúng nằm ở đòn tấn công khéo léo và chết người, và điểm yếu nhận thấy là dễ dàng giảm sức mạnh tổng thể chỉ bằng một đòn tấn công duy nhất. Vì vậy, tự nhiên họ thông minh, họ sử dụng các khả năng phối hợp tốt với nhau và có thể tập trung các nhân vật nguy hiểm nhất của người chơi; những người bị thương nặng rút lui, chữa lành và tự buff để tham gia trận chiến. Rõ ràng, người chơi sẽ cố gắng nuke một trong số họ trước, và các assasins sẽ phải chống lại chiến lược dễ dàng này, vì vậy nó sẽ ít chiếm ưu thế hơn.

Trường hợp khó khăn cho rất nhiều chiến lược. Có một số đội quân kẻ thù với mỗi đội trưởng quyết định các bước đi chiến thuật tốt nhất của địa phương, và sau đó một quyết định chiến lược toàn cầu tốt nhất được chọn để mang lại lợi ích cho tất cả các đội.

Trường hợp không thể Thêm một vị tướng để quyết định chiến lược và để các đội trưởng thực hiện nó theo khả năng tốt nhất của đội hình.

Đã có rất nhiều thư, nên câu chuyện dài quá ngắn, việc thực hiện là một mớ hỗn độn và tôi chưa bao giờ vượt qua một "trường hợp khó khăn", nhưng ngay cả khi đó cách tiếp cận một chiến thuật thú vị này vẫn cảm thấy có thể thực hiện được. Tôi bắt đầu với các FSM nhưng phải từ bỏ cách tiếp cận đó một cách nhanh chóng, nó trở thành một mớ hỗn độn của các trạng thái và sự chuyển đổi không thể gỡ lỗi. Sau một thời gian, tôi đã giải quyết với các nhân vật dựa trên nhận thức về khả năng bán tự trị như mô hình "hành động có ý thức" với các cây hành vi cho các hành động cá nhân có thể, một chiến lược toàn cầu ảnh hưởng đến các hành động có thể của nhóm dựa trên các hành động cá nhân có thể, cũng là một phiên bản của một thứ gì đó như dự đoán thống kê N-Gram đã được đưa vào.

Làm thế nào điều này đã làm việc ra? Đáng ngạc nhiên là, AI thậm chí đã đọc được suy nghĩ của tôi nhiều lần, nhưng tôi đã mệt mỏi và từ bỏ nó vì có quá nhiều sai sót thuyết phục:

  • Lỗ hổng lớn nhất là đôi khi toàn bộ hoạt động của AI chỉ kỳ lạ và hỗn loạn, mặc dù tôi đã trừng phạt thay đổi chiến lược nhanh chóng. Có lẽ logic chiến lược hoặc tính cách sai là thủ phạm, nhưng tôi không bao giờ phát hiện ra. Đúng, kiến ​​trúc mã thật kinh khủng.
  • Tinh chỉnh kịch bản mong muốn bằng cách lựa chọn cẩn thận các khả năng và tính cách có sẵn là tẻ nhạt.
  • Khả năng gắn thẻ cho các vai trò phải được thực hiện rất cẩn thận, hoặc một số combo lập dị sẽ xuất hiện.
  • Tương tự cho việc gắn thẻ cá tính, nhưng thay vì các combo lập dị, bạn sẽ thấy các bộ đệm cẩn thận được đệm cho cuộc tấn công trực diện.
  • Thật khó để quyết định mức độ "thông minh" cho một khả năng nhất định.
  • Một số quyết định có vẻ ngu ngốc được yêu cầu cho một thiết kế cấp độ như "giữ bức tường lâu đài này bất kể điều gì" phải được thực hiện theo cách thức hackish.
  • Lập kế hoạch cho các đơn vị thực hiện một cuộc tấn công dựa trên thời gian cũng là một hack.

Tôi đoán cách tiếp cận của tôi là tầm thường, nếu không nói là hoàn toàn xấu, và AI đã bị lỗi và đau ở mông để phát triển hơn nữa, nhưng ngay cả sau đó tôi đã có một thời gian thực sự vui vẻ khi chơi với nó, gần như là chơi với một đứa trẻ bị phân tâm, mà vẫn tốt hơn Tactics Ogre :)


Tôi thấy một số ý tưởng của bạn khá kích thích và với một số điều chỉnh, có thể cải thiện AI trên một chiếc sim tôi đang làm việc.
jumpnett

@jumpnett Rất tốt để biết, tôi đã hy vọng rằng ít nhất một ý tưởng chung có thể được hiểu :) Như một phần thưởng bạn có thể nghe nhiều hơn những suy nghĩ điên rồ của tôi, bây giờ trên sim của bạn. Tưởng tượng một chiếc sim thời gian thực, tôi nghĩ một trong những lựa chọn quan trọng nhất sẽ là logic lập lịch tác vụ gọn gàng. Tôi đoán tôi đã cố gắng tổ chức các nhiệm vụ theo cách đó: Sẽ có các nhiệm vụ chính với các ưu tiên, một "chiến lược" như "xây nhà" với các điều kiện tiên quyết như "4 công nhân; 4 nút vuông miễn phí tại điểm 10,10; 10 ván gỗ; 20 phiến đá ". Chiến lược sẽ được xem xét thực hiện khi tất cả các điều kiện tiên quyết được đáp ứng.
EnoughTea

Mỗi điều kiện tiên quyết sẽ sinh ra một nhiệm vụ phụ để đạt được điều kiện tiên quyết tương ứng; nhiệm vụ phụ có thể song song, tuần tự hoặc thậm chí loại trừ lẫn nhau. Khi tác vụ kết thúc thành công, hãy đặt điều kiện tiên quyết là hoàn thành. Ví dụ: nhiệm vụ "10 viên đá" là tuần tự cho các nhiệm vụ "4 công nhân" và "4 vị trí", vì bạn không thể thu thập đá mà không có công nhân và bạn không thể đặt đá mà không có một vị trí, nhưng nó sẽ song song với một Nhiệm vụ "20 viên đá", vì bạn không muốn có tình huống bạn có nhiều đá nhưng không có gỗ và công nhân của bạn chỉ đứng xung quanh chờ gỗ thay vì sử dụng đá trước.
EnoughTea

Suy nghĩ về các nhiệm vụ theo các điều kiện tiên quyết thường rất hữu ích, như khi một nhiệm vụ chiến lược mới được đặt trong một lịch trình, bạn có thể muốn biết liệu nó có thể được bắt đầu ngay lập tức hay không. Với hệ thống này, bạn có thể dễ dàng thu thập tất cả các điều kiện tiên quyết chưa hoàn thành của các nhiệm vụ với mức độ ưu tiên cao hơn và kiểm tra xem các điều kiện tiên quyết của nhiệm vụ mới có mâu thuẫn với chúng không.
EnoughTea

Nút thắt chính ở đây là độ phân giải của các tác vụ phụ không thể hoàn thành. Chúng có hai loại: 1) không thể hoàn thành ngay bây giờ và 2) không bao giờ có thể hoàn thành. nói chung đối với số 1, bạn sẽ muốn tạo một chiến lược mới với mức độ ưu tiên cao hơn sẽ giúp chiến lược trước đó và cho số 2 bạn sẽ muốn từ bỏ chiến lược mãi mãi. Điều đó là, thật khó để phân biệt giữa hai loại này, thực sự không thể nói nhiều ở đây. Chà, có thể cách tiếp cận của bạn đã như thế này, nhưng có lẽ bạn sẽ tìm kiếm thêm một số ý tưởng :)
EnoughTea

4

Đừng luôn làm cho nó phản ứng với hành động X của bạn bằng hành động Y. Khi bạn đánh giá mỗi hành động tiềm năng thêm một yếu tố mờ nhạt ngẫu nhiên để AI không luôn chọn cùng một tùy chọn nhưng nó chọn điều gì đó hợp lý.

Đánh giá nếu một cuộc tấn công có cơ hội thành công hợp lý hoặc ít nhất là gây sát thương có ý nghĩa. Quá nhiều trò chơi chỉ đơn giản là có các tuyến tấn công theo kịch bản mà con người có thể học và sử dụng để phục kích AI nhiều lần.


3

Một điều tôi thấy gợi ý rất nhiều là để AI truyền đạt "suy nghĩ" của mình cho người chơi theo một cách nào đó. Điều này thường được thực hiện trong các game bắn súng góc nhìn thứ nhất bằng cách khiến kẻ thù (phi thực tế) hét lên kế hoạch của họ với người chơi (tức là "flank anh ta!", "Anh ta ở đằng kia!", V.v.).

Vào cuối ngày, người chơi biết rằng họ đang chơi với AI, vì vậy bất cứ điều gì thông minh mà AI làm mà không thông báo trước cho người chơi chỉ có thể bị coi là gian lận.


Trong tín ngưỡng, khi bạn bị truy đuổi, những kẻ truy đuổi sẽ hét lên "Anh ta ở đây!" hoặc "Anh ấy đi đâu?" hoặc một số như vậy cho những người theo đuổi khác. Vì vậy, IMHO: nó có thể thực tế.
James Khoury

1
Đúng, nó có ý nghĩa trong nhiều trường hợp, và nó có thể phụ thuộc vào bối cảnh của trò chơi. Những người bảo vệ trong Assassin Creed sẽ có nhiều cách giao tiếp khác nhau, ví dụ như một đội SWAT hiện đại. Và thường thì giải pháp thực tế không nhất thiết là thú vị nhất; nó có thể gây nản lòng khi liên tục bị AI làm cho không có cảnh báo.
mrohlf

1

Thông thường, chúng ta nghĩ về "làm thế nào để chúng ta tạo ra AI?"

Đó là bỏ qua câu hỏi lớn, "AI là gì?"

Bài nói chuyện này từ TED.com mà tôi đã xem vài năm trước, đã chia sẻ một cách tiếp cận rất truyền cảm về định nghĩa của Trí tuệ nhân tạo.

Nếu bạn muốn người chơi của mình cảm thấy rằng kẻ thù là "thông minh" thì điều này sẽ cung cấp một câu trả lời cấp cao và về cơ bản là một cách suy nghĩ hoàn toàn mới về AI, đó là "khả năng dự đoán"

http://www.ted.com/talks/jeff_hawkins_on_how_brain_science_will_change_computing.html


0

Đối với tôi, "cảm giác sống" có nghĩa là nhân vật hành động như bạn nghĩ trong đời thực.

Con người trong cuộc sống thực có nhu cầu, động lực, nỗi sợ hãi, sai sót. Họ nói chuyện, họ phản ứng với nhau nếu đó là một nhóm, họ chạy trốn vì họ chăm sóc cuộc sống của chính họ.

Nếu họ là quân đội hoặc được đào tạo, họ có chiến thuật.

Vì vậy, có lẽ bạn nên kiểm tra trong lĩnh vực hành vi của con người, vì vậy trong khoa học của con người, không phải trong khoa học máy tính.


1
Hmm không chắc chắn về điều này. Trên tất cả mọi thứ AI phải vui vẻ. Có phải là niềm vui cho kẻ thù chạy trốn? Chắc chắn sẽ vui hơn khi chiến đấu với chúng, vì toàn bộ quan điểm của trò chơi là chiến đấu?
tenpn

Nó phụ thuộc vào những gì bạn muốn vui vẻ. Mọi người tìm thấy niềm vui trong các mô phỏng, những người khác trong các trò chơi arcade ... những gì cảm thấy ngang bằng với cuộc sống thực?
Nikko
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.