Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

AI u platform igricama

[es] :: Veštačka inteligencija :: AI u platform igricama

[ Pregleda: 3883 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

vladaboy93
Vladimir Makaric
Novi Sad

Član broj: 137777
Poruke: 376
*.133.eunet.yu.

Sajt: vladimirmakaric.110mb.com


Profil

icon AI u platform igricama12.05.2007. u 15:32 - pre 206 meseci
Zanima me nesto osnovno o vestackoj inteligenciji u video igricama?
Ja sam programer pocetnik (od jezika znam packal/delphi i planiram da ucim C++ za letnji raspust).

Pravio sam neke AI igrice u Game Makeru, kliknes ovde kliknes onde i to je to, napravio si AI igricu (mozes mislit kakvu )
Mislim da bi ozbiljne igre pravio u C++(nije Delphi zato)na pocetku bi pravio neke 2D platform igre npr: tenkici,
pacman,sokoban,na taj fazon samo nesto originalno (ako nista nebudem smislio,bolje dobra kopija nego los original )
Kasnije mozda neke jednostavne strategije ili RTS.

Da predjemo na stvar!

kako ja da napravim da me jedan objekat recimo loptica prati kroz tablu?
npr: ja bezim od loptice dok me ona vija po tabli, ko pacman!

Netreba mi resenje u kodu samo detaljna teorija i koncept svega toga, posle kod nije problem!

pozdrav!
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12848



+4784 Profil

icon Re: AI u platform igricama12.05.2007. u 16:36 - pre 206 meseci
Nemoj se mnogo opterecivati programskim jezikom. Kod AI sam jezik nije narocito bitan. Bitniji je nacin rada. Tek kad znas sta hoces da uradis onda koristis neki prog. jezik za to.

Sto se tice ovoga da te juri neka loptica... Recimo ako toj tabli oznacis polja koordinatama x i y, pri svakom potezu loptica moze da poredi tvoje i njene koordinate i na osnovu toga se pomeri. Npr. ako su Xp i Yp koordinate igraca a Xl i Yl loptice, onda imas dX = Xp - Xl i dY = Yp - Yl. Zatim porveris ako je dX vece od nule loptica povecava svoju X koordinatu ako je manje onda smanjuje a ako je jednako nuli X koordinata ostaje ista. Isti slucaj sa dY. Ako su obe jednake 0 onda te uhvatila. Naravno, treba to jos malo razraditi jer bi u ovom najprostijem slucaju isla dijagonalno.
 
Odgovor na temu

vladaboy93
Vladimir Makaric
Novi Sad

Član broj: 137777
Poruke: 376
*.63.eunet.yu.

Sajt: vladimirmakaric.110mb.com


Profil

icon Re: AI u platform igricama12.05.2007. u 17:49 - pre 206 meseci
Odlicno, jasno mi je (nije tolko komplikovano kolko sam mislio)
A kako bi napravio isto tako samo da ne ide samo dijagonalno(malo tecnije)?
i kako da recimo napravim da lopta prati pokrete igraca u pixel(da ide istom putanjom ko i igrac)!

Zahvaljujem se Shadowed

 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12848



+4784 Profil

icon Re: AI u platform igricama12.05.2007. u 19:07 - pre 206 meseci
Ako neces da ide dijagonalno, onda u jednom potezu uradis ili samo X ili samo Y. Koji od ta dva mozes odluciti na razne nacine. Mozes uvek X dok se ne poklopi jedna osa pa onda samo Y. Ili mozes slucajnim izborom. Ili onaj gde je razlika veca (a ako su jednake onda nesto od prethodna dva).

Ovo drugo.. Nisam siguran na sta mislis. Ako hoces da ide istim putem, onda samo pamti taj put pa ga dodeljuj loptici. Recimo ako ti je N brojac koraka imas niz parova (x,y) onda za svaki korak N uvecavas za jedan, a u elemnt niza k(N) upisujes poziciju. Ako loptica kasni M koraka onda joj postavljas poziciju na osnovu elementa k(N-M).
Ako hoces da se krece paralelno sa njim, onda samo posmatraj pomeraj.. ako se pokrenuo u levo, onda i lopticu pomeris u levo itd. (isto na osnovu X i Y koordinate).

Mada, ovo je prilicno trivijalno da bi se nazivalo vestackom inteligencijom :)
 
Odgovor na temu

vladaboy93
Vladimir Makaric
Novi Sad

Član broj: 137777
Poruke: 376
*.1.eunet.yu.

Sajt: vladimirmakaric.110mb.com


Profil

icon Re: AI u platform igricama13.05.2007. u 10:12 - pre 206 meseci
Hvala na pomoci!

>Mada, ovo je prilicno trivijalno da bi se nazivalo vestackom inteligencijom :)
Sta ces kad sam pocetnik :(

 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12848



+4784 Profil

icon Re: AI u platform igricama13.05.2007. u 15:41 - pre 206 meseci
Ma naravno, mora od neceg da se pocne :)
Samo ti pitaj kada te nesto interesuje.
 
Odgovor na temu

peromalosutra
Ivan Rajkovic
Software engineer
Luxoft
Berlin

Član broj: 54774
Poruke: 871
*.teol.net.



+148 Profil

icon Re: AI u platform igricama23.05.2007. u 09:59 - pre 205 meseci
Pravljenje AI-ja (za ove igrice koje si naveo) nije uopšte toliko komplikovano koliko zvuči... Jednostavno moraš da unaprijed predvidiš odgovor za svaki postupak igrača, pa ti u tim jednostavijim igrama uopšte ne trebaju nikakvi posebni algoritmi, već se možeš osloniti na čistu logiku.. E sad kada dodjes do nekih malo komplikovanijih situacija (tipa PacMan, gdje trebaš naci put kroz lavirint do igrača) tu već moraš da poznaješ neke osnovne algoritme kao što je npr. BFS (ili FloodFill, zavisi kako cuvas mapu na memoriji). Takodje, nekad ces morati da usporiš i zaglupiš svog AI-ja, da bi odgovarao brzini igrača.. U svakom slučaju, veoma zabavna zanimacija, samo naprijed!

 
Odgovor na temu

vladaboy93
Vladimir Makaric
Novi Sad

Član broj: 137777
Poruke: 376
*.225.eunet.yu.

Sajt: vladimirmakaric.110mb.com


Profil

icon Re: AI u platform igricama25.05.2007. u 09:11 - pre 205 meseci
>U svakom slučaju, veoma zabavna zanimacija, samo naprijed!
Hvala tako sam i ja mislio pocecu nesto da pravim preko letnjeg raspusta kada se skola zavrsi pa cu vam nesto postovati
Mozda neki tenkici ili tako nesto.

>moraš da poznaješ neke osnovne algoritme kao što je npr. BFS (ili FloodFill, zavisi kako cuvas mapu na >memoriji).

Sta je BFS ili FloodFill i kako to nauciti?

>zavisi kako cuvas mapu na memoriji

Kako mislis kako cuvam?

Kako bi mi ti preporucio?
 
Odgovor na temu

peromalosutra
Ivan Rajkovic
Software engineer
Luxoft
Berlin

Član broj: 54774
Poruke: 871
*.teol.net.



+148 Profil

icon Re: AI u platform igricama26.05.2007. u 17:33 - pre 205 meseci
Ma kreni samo polako. Algoritmi koje sam spomenuo se mogu iskoristiti za pronalaženje (najkraćih) puteva u mapama, pa ako mapu držiš na memoriji kao matricu u kojoj su brojevima označeni tipovi terena, onda je prirodno rješenje koristiti flood fill..

I ja sam napravio tenkice u C++ i SDL-u, pati mogu i tu pomoci (iako nikad nisam našao vremena da ispravim sve bugove(..
Tako da ne bi pravili off topic ovdje, posalji mi PM ili jos bolje otvori temu u GameDev podforumu, pa ti ja i drugi članovi foruma mogu ponešto pokazati, počevši od predstavljanja mape (table) u memoriji, preko korištenja gore navedenih algoritama, pa do dodavanja multiplayer moda u igru.
Siguran sam da bi imalo sta da se nauči, moglo bi da preraste i u neki vid tutoriala...

PS: ne očekuj da ti baš sve bude servirano, uglavnom se većina stvari uči by using google :)

 
Odgovor na temu

[es] :: Veštačka inteligencija :: AI u platform igricama

[ Pregleda: 3883 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.