Kluge Gegner (Künstliche Intelligenz)

  • GM 8

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

  • Kluge Gegner (Künstliche Intelligenz)

    Hallo Zusammen,

    Und ein weiteres Problem :D

    Bisher habe ich nur zwei arten von Gegnern einmal Goblin und Goblin Magier beides sind (noch) Nahkämpfer und ziehen dem Charakter bei Berührung Leben - sprich sind also nicht solid. Zerstören kann man diese Goblins durch zweimalige draufspringen. Bei dem Magier durch viermaliges draufspringen. Nun gibt es noch eine Besonderheit wenn ein Goblin einen Goblinmagier in der nähe hat, hat dieser eine sehr hohe Lebensregeneration. Man sollte als zunächst den Goblin Magier töten und dann die Goblins.
    Als nächstes wollte ich nun einen Gegner machen der zunächst stillsteht und bei deiner entdeckung auf dich zuläuft und dir weiter folgt. Ich möchte außerdem das der Goblin genau wie du springen kann und beispielsweise wenn du wegläufst und einen Block hochspringst das der Gegner dann auch einen Block hochspringt oder wenn du eine Leiter hochgehst ebenfalls eine Leiter hochgeht. Ich möchte im Prinzip einen Klugen Gegner erschaffen. Leider fehlen mir hierzu die Programmierkenntnisse. Man könnte z.B machen das der Goblin nach der Entdeckung deine Bewegung nachahmt. Doch wie programmiert man das ?

    Vielen Dank schonmal für eure Hilfe!

    PS: Ich hab schon durch die Suchfunktion gesucht aber nichts gefunden
  • also ich weis nicht ob das funktioniert aber villeicht hilft das:
    also so wie ich es er ahnen kann ist die sicht von der seite
    gegner:
    :event_step:

    Quellcode

    1. if place_meeting(x,y,leiter) == false
    2. x+= 10 //der speed weis nicht ob das nicht minus sein muss vergesse es immer
    3. else
    4. vspeed =-5
    5. sprunghöhe = spieler.y
    6. if sprunghöhe < 2
    7. if place_free(x,y) ==false // dafür musst du die blöcke solid machen
    8. alarm[0]= distance_to_object(spieler) //weis nicht ganz musst mal mit mal mit mal und so rechnen bis es klappt

    alarm
    :event_timer:

    Quellcode

    1. if place_free(x,y-10,) == false
    2. vspeed-=20 //eben dein jump code

    ich hoffe ich konnte helfen
    kannst ja mit weiteren objekten weiterführen ^^
    Ein Bug ist mehr als nur ein Bug, es ist ein... Käfer!
    Egal, wie gut du eine Mauer baust, sie fällt um.... der klügere gibt nach :D

    Willst du mit mir auf Discord Chatten/Quatschen?
    Meine Husi's Tutorial Reihe