Apa yang membuat lawan komputer merasa hidup?


107

Adakah blog atau whitepaper yang direkomendasikan yang berbicara tentang membuat AI dalam game RPG terasa lebih nyata? (Khususnya pada pertempuran berbasis giliran.)

Saya tahu pasti ada sesuatu di luar sana, tetapi saya hanya menemukan makalah yang membahas tentang algoritma di belakang AI. Saya mencari lebih banyak di sepanjang baris "ini yang membuat lawan komputer merasa hidup". Mengambil risiko, mudah, mundur, dll ....


Begitu banyak jawaban yang luar biasa, dan saya berharap dapat menerima beberapa dari mereka. Terimakasih semuanya!


Jika komputer muncul dengan strategi, itu membuatnya terasa lebih hidup. AI FEAR dipuji karena akan mengapit pemain (antara lain) (meskipun saya percaya banyak dari yang sebenarnya
dituliskan

10
Animasi kematiannya. Bang Tidak, tetapi serius, menggunakan lingkungan melawan Anda. Dan membuat kesalahan - tetapi kesalahan pintar . Baik? Seperti seseorang yang memiliki pandangan jauh ke depan, hanya dia yang membuat asumsi yang salah pada suatu saat dalam rantai pemikirannya.
Insinyur

Tidak jelas apakah Anda ingin karakter komputer merasa hidup atau bahwa Anda mungkin memiliki kesan untuk bertarung melawan pemain manusia lain seperti Anda yang mengendalikan semua karakter komputer?
Nikko

4
Cara membuat komputer terasa hidup: tonton Bladerunner lagi ...
Kheldar

Anda mungkin ingin membaca ini . Ini menggunakan logika fuzzy atas pohon keputusan.
Jonathan Dickinson

Jawaban:


109

Kesalahan. Tidak ada yang lebih buruk dari lawan AI yang dapat menyerang Anda dari jarak lima belas mil, atau selalu memilih strategi kemenangan yang sempurna. Itu merusak perendaman dan membuatnya jelas bahwa Anda memainkan rutinitas. Kesalahan bisa membuat AI tampak lebih manusiawi.

Banyak game FPS memaksa AI untuk kehilangan dengan beberapa tembakan pertamanya, memperingatkan pemain bahwa AI ada di sana, sebelum pergi untuk membunuh.

Permainan strategi kadang-kadang bisa memilih strategi sub-optimasi, atau ketika mengevaluasi ancaman mungkin sengaja mengabaikan sebagian dari mereka.

Sebuah game balapan yang saya kerjakan dihitung ketika pemain berada di dekatnya, dan kemudian melempar dadu untuk membuat mobil AI di depannya mengecilkan sudut atau meniup ban. Itu dipuji karena AI realistis.

Namun menciptakan AI yang tidak sempurna masih merupakan tantangan. Anda harus membuat kesalahan yang meyakinkan, pada tingkat yang meyakinkan, daripada melakukan tindakan sempurna setelah tindakan sempurna sampai membuat kesalahan konyol. Itu bisa lebih buruk daripada memainkan AI yang sempurna. Sebagai contoh, programmer yang bekerja pada AI balap di atas menghabiskan banyak waktu untuk memodelkan bagaimana mobil memahami, dan input apa yang perlu dibuat AI untuk menyebabkan understeer yang meyakinkan. Seperti biasa, tes bermain sangat penting.

Inilah artikel bagus tentang apa yang menyebabkan kesalahan semacam ini: http://www.gamasutra.com/view/feature/3947/intelligent_mistakes_how_to_.php


38
"Banyak game FPS memaksa AI untuk kehilangan dengan beberapa tembakan pertamanya, memperingatkan pemain bahwa AI ada di sana, sebelum pergi untuk membunuh": Dalam GURPS kami menyebut pelatihan Imperial Stormtrooper Marksmanship Academy ini.
chaos

4
Terlalu banyak kesalahan dan ini adalah komputer yang bodoh.
LarsTech

30
Energi tanpa batas diciptakan dengan menempatkan sekelompok orang berbaju merah di sel penjara di samping sekelompok pasukan badai. Pasukan badai tidak bisa mengenai target mereka, dan orang-orang berbaju merah harus mati .
zzzzBov

Saya mendapatkan inti jawabannya dan saya berpikir tentang garis antara kesempurnaan untuk komputer dan kesempurnaan bagi manusia. Apa yang berubah? Seorang pemain quake3 yang hebat menyukai kematian dalam hal apa yang berbeda dari cpu di level mimpi buruk?
Pitto

Saya menghitung semua gerakan yang mungkin dilakukan oleh AI, memberikan bobot pada gerakan berdasarkan pada keadaan dan sifat-sifat kepribadian yang ditugaskan oleh AI (seperti haus darah, fearOfDeath, kemarahan, dll). Ini berfungsi baik untuk skenario seperti: Anda dan AI akan mati, AI lurus ke depan akan menembak Anda kemudian mengambil paket kesehatan, tetapi AI yang takutOfDeath akan mencoba dan mengalahkan Anda untuk itu. Kecuali mereka memiliki kemarahan atau haus darah yang tinggi, maka mereka hanya menembak sampai salah satu dari Anda mati.
Aktivis Habis Terjual

44

Yang lain berbicara tentang AI, logika, perencanaan, dan pentingnya membuat kesalahan. Dan semua ini baik dan bermanfaat dalam pengembangan AI.

Tetapi pertanyaannya adalah tentang apa yang membuat lawan komputer merasa hidup, dan itu tidak dapat dicapai melalui AI. Itu tidak benar. Pemain tidak menilai karakter dalam permainan berdasarkan pilihan tingkat strategis mereka; mereka menilai itu berdasarkan hal-hal yang jauh lebih kecil.

Untuk membuat lawan komputer merasa hidup, yang Anda butuhkan adalah serangkaian animasi dan suara berkualitas tinggi yang komprehensif (terutama vokal) untuk lawan. Pemain tidak bisa melihat AI. Dia tidak bisa mendengarnya, dia tidak bisa mengalaminya, dia tidak bisa tahu apa yang dipikirkan lawan. Penampilan "karakter ini adalah entitas yang hidup" disajikan kepada pemain sepenuhnya melalui animasi yang dimainkan pada karakter, dan suara yang dihasilkan oleh karakter (yang lagi-lagi sebagian besar akan menjadi vokal).

Penting bagi karakter untuk bereaksi terhadap rangsangan di sekitarnya; untuk melihat hal-hal di dekatnya, menyentuh benda-benda di dekatnya (saat yang tepat untuk melakukannya), untuk tampil kaget ketika terkejut, dan untuk menunjukkan emosi lain bila sesuai.

Ketika berbicara tentang hal-hal ini, penting untuk meminimalkan pengulangan. Jika karakter menggunakan animasi "serangan" yang sama setiap kali dia menyerang, dia tidak akan pernah merasa hidup. Jika dia memainkan animasi "idle" looping tunggal ketika dia tidak melakukan hal lain, dia tidak akan merasa hidup. Jika dia mengatakan suara yang sama menyindir dua kali (terutama berturut-turut), itu mematahkan ilusi bahwa karakter itu hidup.

Dan itu sudah cukup. Jika lawan yang Anda coba buat tampak hidup secara fisik hadir dalam permainan Anda, maka kesuksesan Anda dalam membuat mereka tampak hidup sebagian besar akan ditentukan oleh grafik dan suara yang ditunjukkan kepada pemain.

Jika lawan yang Anda coba buat tampak "hidup" sebenarnya tidak ada dalam permainan, seperti halnya dalam Catur dan StarCraft, maka silakan abaikan balasan ini; taruhan terbaik Anda adalah mengikuti balasan yang berfokus pada AI.


4
Mengingatkan saya pada semua musuh di Mass Effect yang berteriak "MUSUH DI MANA SAJA!" setiap 2 detik.
Dashto

Saya berharap saya dapat memilih ini BANYAK LEBIH BANYAK. Saya telah bekerja pada dua triple-A FPS dan tidak dapat menekankan betapa pentingnya kualitas animasi (mengintip, memberi isyarat, bergerak) dan audio (mengatakan maksud, mempertanyakan, bercakap-cakap) untuk menciptakan lingkungan yang hebat. AI bukan tentang mengalahkan pemain, ini tentang menyampaikan realisme, sebagian besar realisme adalah bagaimana kita bergerak dan bersuara.
AA Grapsas

1
+1, poin bagus. Membuat saya berpikir tentang permainan Oblivioneque di mana upaya Anda untuk berinteraksi dengan NPC kadang-kadang terhalang oleh mereka yang duduk di tempat tidur, berbalik ke samping, berdiri, dan akhirnya menghadap Anda, sebelum akhirnya mengakui keberadaan Anda ... yang selalu mengacaukan pencelupan saya.
zenzelezz

Setuju bahwa ini membuat gameplay yang lebih mendalam, tidak setuju bahwa itu membuatnya lebih manusiawi. Pernah menonton berapa banyak pemain MANUSIA berperilaku di sebagian besar game multi-pemain? Dalam beberapa permainan, setengah dari pemain melompat-lompat tanpa tujuan dan setengah lainnya melakukan spam pada obrolan suara dengan klip suara yang sama dua puluh kali per detik. Bot sering berperilaku lebih baik daripada manusia.
Lie Ryan

Salah satu cara Anda membuat AI terlihat manusia mungkin membuat mereka ragequit jika mereka terus terbunuh. Atau coba menipu pemain baru agar memperdagangkan barang mahal untuk bling yang tidak berguna. Itu tidak akan menjadi permainan yang menyenangkan untuk dimainkan, tetapi setidaknya AI akan terasa "hidup".
Lie Ryan

30

Berikut daftar beberapa konsep sederhana yang dapat membuat lawan Anda lebih jelas:

  1. Intent
    Berikan pemain beberapa cara meramalkan 'niat' AI. Ini bisa sesederhana meminta mereka meneriakkan "Kuantitas atas Kualitas" sebelum mencoba serangan headshot yang akurat, "Mengapitnya" ketika mencoba untuk mendukung Anda, atau "Ambil pemimpin, tidak ada yang penting" sebelum menyerang protagonis. Anda juga bisa menjadi lebih kompleks, misalnya, minta mereka memberikan bahasa isyarat kepada rekan satu tim mereka, lalu ubah perilaku rekan satu tim itu.

  2. Keputusasaan
    Saat lawan semakin mendekati kematian, Anda bisa memberi mereka rasa putus asa. Ubah taktik mereka pada tonggak kesehatan tertentu. Jadikan tahap-tahap mereka lebih panik, dengan mengambil risiko yang lebih besar di pihak mereka (pergi untuk hujan es, daripada memperlambat chipping). Komunikasikan ini secara visual juga (animasi yang berlebihan, urat nadi, dll.).

  3. Pergilah dengan Bang.
    Beri mereka kematian yang membuat perkelahian dengan mereka sesuatu yang layak diulang. Mendengus ke atas dengan bersemangat. Atasan soliloquize. Jika itu adalah karakter yang bangga, buatlah mereka menolak untuk memberi Anda pembunuhan, dan menangani kerusakan terakhir pada diri mereka sendiri. Anda mengerti maksudnya.


4
Hai. Anda benar-benar tidak perlu menuliskan kualifikasi Anda ke dalam jawaban Anda. Isi profil Anda dan jika seseorang tertarik jika Anda tahu apa yang Anda bicarakan, hi klik nama Anda. Itu dia ;).
Notabene

1
Titik niatnya bagus. Strategi yang baik adalah meminta rekan tim AI Anda (jika ada) memanggil apa yang dilakukan lawan - "mereka mengapit!", "Mereka reload!" dll. Sebenarnya strategi ini cukup efektif bahkan ketika musuh AI tidak melakukan hal seperti itu. :)
tenpn

1
@Notabene, tidak setuju dengan komentar Anda, tetapi sebagai catatan - Anda memiliki perwakilan untuk mengedit informasi asing itu sendiri. :) Saya baru saja melakukan pengeditan, tetapi "sedang ditinjau" untuk saya. :)
Cyclops

2
@ Cyclops. Ya saya mempertimbangkannya. Tapi itu bisa terasa sangat kasar tanpa komentar yang tepat dan saya ingin membiarkan Jordaan memutuskan sendiri tentang hal itu. Maksud saya ramah tentu saja. Tetapi mari kita berhenti menghancurkan jawaban yang baik dengan komentar topik:]
Notabene

3
Hei. Agar Anda semua tahu, saya memasukkan garis Gelar Sarjana sebagai bentuk penghinaan diri. Di sini, di Australia, gelar Bachelor of Games tidak sebanding dengan kertas yang dicetaknya. Tidak ada niat untuk sesumbar. "Inilah beberapa saran yang jelas itulah puncak dari $ 30.000 dan 3 tahun studi saya yang terbuang". Maaf jika saya tidak menyampaikannya dengan benar.
Jordaan Mylonas

22

Saya sangat merekomendasikan google IO talk ini tentang google doodle pacman. Pada cca 18:00 mereka mulai berbicara tentang kepribadian hantu di pacman. Ini benar-benar mengejutkan betapa sederhananya Anda dapat menempatkan kepribadian ke dalam pencarian jalan yang sederhana.

Google I / O 2011: Rahasia Google Pac-Man: Pertunjukan Game

Seluruh video layak ditonton. Saya sangat merekomendasikannya.


Tidak benar-benar menjawab pertanyaan, tetapi dapat menginspirasi ... (saya kira)
Notabene

11
Saya akan mengatakan itu adalah jawaban yang valid. Pertanyaannya adalah tentang bagaimana membuat lawan komputer merasa "hidup", dan mendesain kepribadian hantu melakukan hal itu.
Cyclops

14

Saya tidak tahu tentang blog semacam itu, tetapi karena RPG berbasis giliran taktis adalah genre favorit kedua saya setelah roguelikes, saya akan menulis posting blog untuk Anda. Dari pengalaman saya, itu bukan kesulitan AI taktis dalam RPG atau RTS yang sering membuat saya pergi, tetapi kebalikannya: AI benar-benar rabun dan tidak adanya keputusan tim. Manusia tidak akan pernah bermain seperti ini.

Saat itu, ketika saya masih memandang JRPG sebagai puncak dari desain game, saya pernah mencoba membuat "TRPG khas Jepang" dengan fokus besar pada pertempuran taktis berbasis giliran seperti Final Fantasy Tactics. Seperti biasa, itu hanya menjadi demo teknologi untuk merintis jalan dan AI, jadi saya akan membagikan pemikiran saya tentang masalah ini.

Sebagian besar TRPG ini tidak terlalu peduli dengan AI. Kesenangan pemain di luar sana bukan berasal dari tantangan taktis atau strategi yang kompleks, tetapi dari pertanian umum dan penyalahgunaan AI dengan cara yang lucu. Jadi tidak masalah bahwa AI mereka melakukan hal-hal yang tidak akan pernah dilakukan manusia. Biasanya cukup untuk memiliki AI bodoh dan menyeimbangkannya dengan desain game sehingga tidak perlu melihat lebih dari satu gerakan di muka dan hanya menggunakan gerakan jangka pendek terbaik. Tentu saja tidak pernah terasa nyata, tetapi siapa yang peduli? Ini hanya terasa salah, saya ingin percaya bahwa adalah mungkin untuk membuat kesenangan berdasarkan pada aksi AI yang kompleks dan bukannya bertani dan melakukan steamrolling. Mungkin tidak perlu, dan juga memakan waktu, tetapi mungkin.

Mengingat Final Fantasy Tactics asli dan mod hardcore FFT 1.3, saya menetapkan tujuan berikut untuk manusia-suka dan menyenangkan untuk bermain AI:

  • AI harus menciptakan tantangan, tetapi tantangan yang menyenangkan dan bukan tantangan "pencarian penuh manusia". Tantangan menyenangkan ini harus sering diharapkan oleh pemain melalui konteks keseluruhan dari misi saat ini. Biasanya di situlah skrip berperan menciptakan AI pony satu trik.
  • AI harus pandai, tetapi tidak dalam, pandai Minimax. Berbagai jenis AI harus memiliki kelemahan yang berbeda, sama seperti kepribadian manusia yang berbeda. Ini adalah hal yang langka untuk ditemui dalam permainan, Advance Wars telah menuliskan kepribadian untuk para jenderal, misalnya, tetapi unit dapat memilikinya juga.
  • AI harus menghindari terlihat bodoh ketika tidak dimaksudkan. Kebodohan yang cabul benar-benar menghancurkan ilusi kecerdasan apa pun, selalu memenangkan strategi juga. Dan celah yang dibuat oleh skrip ceroboh, itu adalah yang terburuk.

Saya berpikir bahwa saya akan menangani # 1 dengan perilaku yang muncul, # 2 dengan kepribadian yang berbeda dan pilihan strategi "semi-acak" seperti manusia, # 3 dengan menjaga pengkodean seminimal mungkin dan pengujian yang cermat.

Jadi apa perilaku yang saya bicarakan ini, apakah ini urutan kemampuan yang dapat digunakan? Kemampuan teratas dari daftar tertimbang? Tidak, yang ada dalam pikiran saya adalah kombinasi dari kecerdasan yang diinginkan , tipe kepribadian dan peran yang berasal dari kemampuan dan senjata yang tersedia saat ini. Anda dapat menggambarkan kombinasi ini sebagai "dealer kerusakan bodoh berserking" atau "penyembuh defensif pintar". Jadi spesialisasi AI, seperti kelas atau profesi, misalnya Archer AI yang menggunakan busur untuk menembakkan panah dengan beberapa set combo kemampuan pemanah generik yang telah ditentukan sebelumnya seperti Take Aim atau Arrow Shower, menjadi muncul secara logis alih-alih dengan kode keras.

Pada dasarnya, penting untuk mendeteksi dan beroperasi pada peran-peran ini: dealer kerusakan, kerusakan soaker, disabler, skirmisher, penyembuh, penyangga / debuffer, area efek; biasanya, satu karakter akan melakukan setidaknya dua peran ini.

Untuk membuat taktik ini menyenangkan, kami ingin perilaku menangani beberapa kasus dengan solid:

Kasing paling sederhana. Banyak goblin yang lemah menyergap pahlawan kita. Ancaman yang dirasakan sudah jelas, goblin akan mencoba membanjiri pemain dengan setiap goblin memiliki kepribadian mengamuk bodoh dengan beberapa kemampuan jarak dekat primitif, kelemahan yang dirasakan juga jelas, seperti memancing goblin ke karakter lapis baja dan tahan api, kemudian melemparkan serangkaian api mantra AoE berbasis di arah umum itu. Temukan soaker perusak, temukan AoE'er, khususkan perusak kerusakan untuk tipe kerusakan AoE'er, kirim perusak kerusakan ke massa goblin, gunakan mantra AoE yang merusak ketika goblin berkelompok di sekitarnya.

Kasus biasa untuk menguji interaksi tim yang sederhana. Pemain bertemu seorang ksatria, seorang pemanah, seorang penyihir dan seorang ulama. Ancaman yang dirasakan sekarang lebih kompleks, berbagai interaksi menjadi tersedia. Anda sudah dapat melihat kemungkinan peran dan kombinasinya. Cleric akan buff dan menyembuhkan, mage akan mengeluarkan hal-hal sihir yang rumit tapi sangat merusak, knight akan menagih seseorang atau membela mage, archer akan membantu knight dengan menembakkan mereka yang mencoba melarikan diri darinya atau membuat strategi pertahanannya lebih sempurna, ini akan tergantung pada pilihan knight. Kepribadian untuk musuh dapat diputuskan secara acak mengubah pertemuan yang sama menjadi pengalaman unik. Pemain harus memutuskan apa strategi terbaik dengan unit yang dia miliki saat ini, dan jika AI akan mencoba melakukan hal yang sama di sisi lain layar, itu akan menarik.

Kasus kompleks untuk menguji interaksi tim dan perencanaan strategis. Ada pertempuran di mana Anda menghadapi geng empat assasins (dealer kerusakan yang cermat + skirmisher). Sedikit jumlahnya, dengan penampilan mengancam, anggapan ancaman mereka terletak pada serangan yang terampil dan mematikan, dan kelemahan yang dirasakan adalah mudah untuk mengurangi kekuatan keseluruhan dengan hanya satu pembunuh terbunuh. Jadi secara alami mereka pintar, mereka menggunakan kemampuan yang bekerja dengan baik satu sama lain dan dapat memfokuskan karakter pemain yang paling berbahaya; orang-orang yang terluka parah mundur, sembuhkan dan gosok diri mereka sendiri untuk bergabung kembali dalam pertempuran. Tentunya, pemain akan mencoba untuk mem-nuke salah satu dari mereka terlebih dahulu, dan para assasin harus melakukan soft-counter strategi yang mudah ini, sehingga itu akan menjadi kurang dominan.

Hard case untuk banyak strategi. Ada beberapa regu musuh dengan masing-masing pemimpin regu memutuskan gerakan taktis lokal terbaik, dan kemudian keputusan strategis global terbaik dipilih untuk menguntungkan semua regu.

Kasus tidak mungkin. Tambahkan seorang jenderal untuk memutuskan strategi, dan mintalah para pemimpin pasukan menerapkannya sebaik mungkin.

Sudah banyak surat, ceritanya panjang, implementasi berantakan dan saya tidak pernah melewati "kasus sulit", tetapi bahkan kemudian pendekatan taktik yang menyenangkan ini terasa bisa dilakukan. Saya mulai dengan FSM tetapi harus meninggalkan pendekatan itu dengan cepat, itu menjadi kekacauan keadaan yang terjerat dan transisi yang tidak mungkin dilakukan debug. Setelah beberapa saat saya puas dengan karakter berbasis kemampuan semi-otonom persepsi seperti dalam paradigma "akal-berpikir-bertindak" dengan pohon perilaku untuk tindakan individu yang mungkin, strategi global yang mempengaruhi tindakan tim yang mungkin didasarkan pada tindakan individu yang mungkin, juga versi sesuatu yang terbastardisasi dari sesuatu seperti prediksi statistik N-Gram dilemparkan ke dalam.

Bagaimana cara kerjanya? Anehnya, AI bahkan membaca pikiran saya beberapa kali, tetapi saya menjadi lelah dan meninggalkannya karena ada lebih dari cukup kelemahan meyakinkan:

  • Kelemahan terbesarnya adalah bahwa kadang-kadang seluruh operasi AI hanya aneh dan kacau, meskipun saya menghukum strategi dengan cepat. Mungkin logika strategi atau kepribadian yang salah adalah pelakunya, tetapi saya tidak pernah tahu. Yap, arsitektur kode itu mengerikan.
  • Menyempurnakan skenario yang diinginkan dengan pemilihan cermat atas kemampuan dan kepribadian yang tersedia adalah membosankan.
  • Penandaan kemampuan untuk peran harus dilakukan dengan sangat hati-hati, atau beberapa kombo aneh akan muncul.
  • Sama untuk penandaan kepribadian, tetapi alih-alih kombo yang aneh, Anda akan melihat kastor yang hati-hati menggerakkan serangan frontal.
  • Sulit untuk memutuskan tingkat "kepandaian" untuk kemampuan yang diberikan.
  • Beberapa keputusan yang tampaknya bodoh yang diperlukan untuk desain tingkat seperti "pegang dinding kastil ini tidak peduli apa" harus dilaksanakan dengan cara yang kasar.
  • Perencanaan unit untuk melakukan serangan berbasis waktu juga merupakan peretasan.

Saya kira pendekatan saya biasa-biasa saja di terbaik, jika tidak langsung buruk, dan AI buggy dan sakit di pantat untuk mengembangkan lebih lanjut, tetapi bahkan kemudian saya memiliki waktu yang sangat menyenangkan bermain melawannya, hampir seolah-olah bermain dengan anak yang terganggu, yang masih lebih baik dari Tactics Ogre :)


Saya menemukan beberapa ide Anda cukup merangsang, dan dengan beberapa penyesuaian, dapat meningkatkan AI pada sim yang sedang saya kerjakan.
jumpnett

@jumpnett Bagus untuk tahu, saya berharap setidaknya ide umum dapat dipahami :) Sebagai bonus Anda bisa mendengar lebih banyak pikiran gila saya, sekarang di sim Anda. Membayangkan sim real-time, saya pikir salah satu pilihan paling penting adalah logika penjadwal tugas yang rapi. Saya kira saya akan mencoba untuk mengatur tugas seperti itu: Akan ada tugas utama dengan prioritas, "strategi" seperti "membangun rumah" dengan prasyarat seperti "4 pekerja; 4x4 kuadrat node gratis di titik 10,10; 10 papan kayu; 20 lempengan batu ". Strategi akan dipertimbangkan dilakukan ketika semua prasyarat dipenuhi.
EnoughTea

Setiap prasyarat akan menelurkan sub-tugas untuk mencapai prasyarat yang sesuai; sub-tugas bisa paralel, berurutan atau bahkan saling eksklusif. Ketika tugas berakhir dengan sukses, atur prasyaratnya sebagai selesai. Misalnya, tugas "10 batu" berurutan untuk tugas "4 pekerja" dan "tempat 4x4, karena Anda tidak dapat mengumpulkan batu tanpa pekerja, dan Anda tidak dapat menempatkan batu tanpa tempat, tetapi itu akan sejajar dengan "20 batu" tugas, karena Anda tidak ingin situasi di mana Anda memiliki banyak batu tetapi tidak ada kayu, dan pekerja Anda hanya berdiri menunggu kayu daripada menggunakan batu terlebih dahulu.
EnoughTea

Berpikir tentang tugas dalam hal prasyarat umumnya sangat berguna, seperti ketika tugas strategi baru ditempatkan dalam penjadwal, Anda mungkin ingin tahu apakah itu dapat dimulai dengan segera atau tidak. Dengan sistem ini Anda dapat dengan mudah mengumpulkan semua prasyarat tugas yang tidak lengkap dengan prioritas lebih tinggi dan memeriksa apakah prasyarat tugas baru bertentangan dengan mereka.
EnoughTea

Hambatan utama di sini adalah resolusi sub-tugas yang tidak dapat diselesaikan. Ini datang dalam dua jenis: 1) tidak bisa selesai sekarang dan 2) tidak pernah bisa selesai. umumnya untuk # 1 Anda ingin membuat strategi baru dengan prioritas lebih tinggi yang akan membantu strategi sebelumnya, dan untuk # 2 Anda ingin meninggalkan strategi selamanya. Masalahnya, sulit untuk membedakan antara 2 jenis ini, tidak bisa mengatakan banyak di sini. Yah, mungkin pendekatan Anda sudah seperti ini, tetapi mungkin Anda akan mencari beberapa ide lagi :)
EnoughTea

4

Jangan selalu membuatnya merespons tindakan X Anda dengan tindakan Y. Saat Anda mengevaluasi setiap tindakan potensial, tambahkan faktor fudge acak sehingga AI tidak selalu memilih opsi yang sama tetapi memilih sesuatu yang masuk akal.

Mengevaluasi jika serangan memiliki peluang yang masuk akal untuk berhasil atau setidaknya melakukan kerusakan yang berarti. Terlalu banyak gim yang memiliki skrip serangan yang bisa dipelajari dan digunakan manusia untuk menyergap AI berulang-ulang.


3

Satu hal yang saya lihat menyarankan banyak adalah memiliki AI menyampaikan "pikiran" kepada pemain dalam beberapa cara. Hal ini sering dilakukan pada penembak orang pertama dengan membuat musuh (tidak realistis) meneriakkan rencana mereka kepada pemain (yaitu, "panggil dia!", "Dia ada di sana!", Dll.).

Pada akhirnya, pemain tahu mereka bermain melawan AI, jadi apa pun yang cerdas yang dilakukan AI tanpa terlebih dahulu memberi tahu pemain bisa dianggap sebagai kecurangan.


Dalam kredo pembunuh Ketika kau dikejar, para pengejar akan berteriak, "Dia ada di sini!" atau "Ke mana dia pergi?" atau semacam itu untuk pengejar lain. Jadi IMHO: itu bisa realistis.
James Khoury

1
Benar, itu masuk akal dalam banyak kasus, dan itu bisa bergantung pada konteks permainan. Para penjaga di Assassin's Creed akan memiliki cara berkomunikasi yang berbeda dari, misalnya tim SWAT modern. Dan seringkali solusi realistis tidak selalu yang paling menyenangkan; Ini bisa membuat frustasi karena terus-menerus diapit oleh AI tanpa peringatan.
mrohlf

1

Seringkali, kita berpikir tentang "bagaimana kita menciptakan AI?"

Itu melewatkan pertanyaan besar, "Apa itu AI?"

Pembicaraan dari TED.com ini yang saya tonton beberapa tahun yang lalu, berbagi pendekatan yang sangat inspiratif dengan definisi Artificial Intelligent.

Jika Anda ingin pemain Anda merasa bahwa musuh "cerdas" maka ini akan memberikan jawaban tingkat tinggi, dan pada dasarnya cara berpikir baru tentang AI, yang merupakan "kemampuan untuk memprediksi"

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


0

Bagi saya, "merasa hidup" berarti bahwa karakter itu bertindak seperti yang Anda pikirkan dalam kehidupan nyata.

Orang-orang dalam kehidupan nyata memiliki kebutuhan, motivasi, ketakutan, kekurangan. Mereka berbicara, mereka bereaksi satu sama lain jika itu adalah kelompok, mereka melarikan diri karena mereka peduli dengan kehidupan mereka sendiri.

Jika mereka militer atau terlatih, mereka punya taktik.

Jadi mungkin Anda harus memeriksa di bidang perilaku manusia, jadi dalam ilmu manusia, bukan dalam ilmu komputer.


1
Hmm tidak yakin tentang ini. Di atas segalanya, AI harus menyenangkan. Apakah menyenangkan bagi musuh untuk melarikan diri? Tentunya itu lebih menyenangkan untuk melawan mereka, karena inti dari permainan ini adalah bertarung?
tenpn

Tergantung apa yang Anda inginkan. Orang-orang menemukan kesenangan dalam simulasi, yang lain dalam permainan arcade ... apa yang terasa lebih setara dengan kehidupan nyata?
Nikko
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.