-
Schwertmeister
Wie versprochen habe ich mich mal daran versucht. Das Ergebnis ist jedoch eher mager ausgefallen. Du kannst nicht mehr als 18 Gegner auf einmal auf der Map haben (Fehlermeldung "Events Call Limit Exeeded") und wenn der Kampf zu lange dauert kommt auch die Meldung "Events Call Limit Exeeded" und du fliegst raus. Warum genau weiß ich nicht, wie man es verhinden kann dementsprechend auch nicht. Auf der letzen Map (Map 4) habe ich mal die Gegner mit dem kompletten Code ausgestattet (also das Callen der Call-Events vermieden) half aber auch nichts. Liegt also daran das sich die Gegner untereinander callen...
Aufgebaut ist der Skript so:
Jedem Gegner (hab ja nur Nahkämpfer) wird am Anfang seine Variablen Nummer zugeordnet. Darein schreibe ich seinen aktuellen Zustand. 1 steht einfach dafür, dass er der Gruppe 1 angehört, 2 dafür, dass er der Gruppe 2 angehört (die beiden Gruppen kämpfen natürlich gegeneinander). Wird ein Gegner getroffen stellt sich seine ID auf 99. Ist er dann an der Reihe erkennt er selber das er nun tot sein sollte. Er führt also eine Battle-Animation auf sich selber aus, setzt seine Graphik auf durchsichtig und verschiebt sich zu den Koordinaten (0|0).
Der Kampf an sich verläuft recht einfach. Am Anfang wird (neben der Zuweisung, wer zu wem gehört) auch noch ein Hilfziel für jede Seite festgelegt. Dies muss geschehen damit sich die Gegner orientieren können falls kein Feind in ihrer Nähe ist (sie suchen in einem Radius von 7 Feldern um sich herum). Ist also niemand in der Nähe bewegen sie sich automatisch zum Hilfsziel. Stirbt das Hilfziel wird ein neues Festgelegt. Das geht so lange bis kein Gegner mehr da ist, ab dann rennen die Einheiten einfach Randomiert rum.
Um den Bereich um die Gegner zu durchkämmen lasse ich mir der Reihe nach die Event-ID der Felder um die aktuelle Einheit herum anzeigen. Entspricht diese der ID der Gegnereinheiten werden die Zielkoordinaten der momentan angewählten Einheit auf dieses Feld gesetzt.
Das wäre eigentlich das wichtigste. Ich schätze man hat das grobe Prinzip so heraushören können. Damit das ganze funktioniert callen sich die Gegner der Reihe nach (sonst würde es ungaublich Ruckeln und ich bräucht sehr viel mehr Variablen und Common-Events). Trotzdem Ruckelt es auch so am Anfang (3GHz CPU, 1GB RAM)
So, lange Rede kurzer Sinn:
HIER der Downloadlink.
Inbegriffene Features (nö, keine Bugs
):
- Der Skript stürtzt nach kurzer Zeit von alleine ab (Autobeenden)
- Die Gegner rennen oft recht sinnlos rum
- Erstreckt sich ein Hindernis zu weit kommt es kaum vor, dass die Einheiten herum kommen
- Jeweils nach Mapstart ruckelt es in etwa bis alle Einheiten 3 mal "durchlaufen" wurden
- Recht unübersichtlicher Code (wegen den vielen Editierungen)
Mehr fallen mir gerade net ein ^^°
mfg
Phönix Tear
P.S.:
Ich würde dir also von sowas mit zu vielen Gegnern abraten da es einfach zu viel Rechenleistung braucht. Am besten wendest du dich mal an Venoran, vielleicht kann der dir ein paar wichtige Tipps geben wie man das ganze besser hinbekommt...
Ich schaffs jedenfalls nicht so, als dass es ordentlich laufen würde. Vielleicht hätte ich (so wie Venoran) eine von Anfang an begrenzte Zahl an Gegner nehmen sollen. Dadurch das ich jeden Gegner nur durch kopieren vervielfältigen kann wird das ganze wohl noch komplizierter (was nicht heißen sollte das ich es ander hinbekommen hätte ^^°).
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln