Einfach kompliziert..oder kompliziert einfach?->die KI

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Einfach kompliziert..oder kompliziert einfach?->die KI

    Hallo liebe mit-Entwickler.Tüftler und Bastler.Ich bin mittlerweile sehr gut und weit vorrangekommen mit meinem Spiel.So weit,dass ich an eine KI denke,für meine Bots(Gegner)
    Also hier sind 2 Bilder von meinen Waldbots(Monster die im Wald leben)
    Einmal ein größerer und ein kleinerer Bot.
    Im Moment laufen sie einfach,wenn sie spawnen(die Spielwelt betreten)wild umher und bouncen gegen alles was nicht niet und nagelfest ist ;)
    Ich dachte nun,dass es vielleicht schlauer ist,wenn sie auf den Spieler zulaufen,falls er nahe genug ist und ihn "attackieren",da sie dem Spieler,wenn er sie berührt nur Schaden und über ihn drüber laufen..

    Wie stelle ich es also an,dass meine Bots nicht in eine Randomrichtung laufen,sondern immer Schritte gehen(5 meter nach unten,sich drehen;dann 2 meter nach links etc...)und dann,wenn sie den Spieler sehen zu ihm hingehen und ihn angreifen?

    Bin wie immer für jede Hilfe dankbar :)
    MSFG Punishor.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Punish0r ()

  • Du kannst doch Alarm-Events verwenden. Immer wenn ein Alarm ausgelöst ist, schaust du ob der Spieler in der Nähe ist, gibts deinem Bot eine neue Bewegungsrichtung und setzt den Alarm wieder hoch.

    GML-Quellcode

    1. // alarm 0
    2. if (distance_to_object(obj_player)<150) {
    3. move_towards_point(obj_player.x,obj_player.y,4);
    4. } else {
    5. direction=random(360);
    6. speed=4
    7. }
    8. alarm[0]=200;
    Einige meiner Spiele:
  • Aaaahja stimmt.Und dann ,wenn er beim Player is(collisions event),dann change Sprite into...blubb :D Cool,danke.An die einfachsten Dinge denke ich natürlich net...
    Naja falls ich noch weitere Fragen zu Ki Problemen hab schreib ich gegf. nochmal.Danke dir.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Punish0r ()

  • Original von interceptor
    Du kannst doch Alarm-Events verwenden. Immer wenn ein Alarm ausgelöst ist, schaust du ob der Spieler in der Nähe ist, gibts deinem Bot eine neue Bewegungsrichtung und setzt den Alarm wieder hoch.

    GML-Quellcode

    1. // alarm 0
    2. if (distance_to_object(obj_player)<150) {
    3. move_towards_point(obj_player.x,obj_player.y,4);
    4. } else {
    5. direction=random(360);
    6. speed=4
    7. }
    8. alarm[0]=200;


    Hallo zusammen. Genau das selbe Problem hab ich bei meinen Gegnern. :D
    Doch Irgendwie will das bei mir nicht klappen. Ich hab nun diesen Code kopiert (natürlich obj_player durch meine Figur ersetzt) und bei Alarm 0 eingefügt. Doch irgendwie bleibt der Gegner einfach nur stehen. Er bewegt sich keinen cm. Leider bin ich noch Anfänger und finde meinen Fehler nicht ;( Daher hoffe ich, das mir hemand etwas helfen kann :) Ein Bild hab ich auch gemacht. Ist Unten mit dabei.

    MFG

    Ratchet
    Bilder
    • Blob.gif

      73,16 kB, 842×425, 256 mal angesehen
    mfg

    Ratchet :P
  • Ich hoffe mal du hast daran gedacht im Create-Event den Alarm zu aktivieren.
    Wenn nicht wird das Alarm-Event nie ausgeführt, und die ganze Sache kann demnach also gar nicht funktionieren.
    Hier werden sie geholfen:
    [Regeln] [GML] [Hilfe] [Suche] [Posten] [Duden.de]
    [Wenn das alles nicht mehr hilft] [Dunning-Kruger]


    "Die Vernunft sollte Autorität definieren; nicht umgekehrt!"
    "Selber denken regt das Gehirn an."
    - Niffel f.k.a. Kilik
  • Original von Kilik
    Ich hoffe mal du hast daran gedacht im Create-Event den Alarm zu aktivieren.
    Wenn nicht wird das Alarm-Event nie ausgeführt, und die ganze Sache kann demnach also gar nicht funktionieren.


    :no: Hat sich erledigt. Hab wirklich vergessen den Alarm zu aktivieren. Jetzt klappts :D :eek2:
    Na da sieht mans mal wieder... :fresse:

    MFG

    Ratchet
    mfg

    Ratchet :P