PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Kampf der Rivalen



Satenit
01.04.2010, 14:44
Wie erstellt man sich einen Gegner, der dieselben Statuswerte hat wie der eigene Hauptcharakter?

Diese Frage wurde auch von ~Herakle~ bereits gestellt und nicht beantwortet.
Ich beschreibe mal die Situation: Der Held (nehmen wir mal Brian, weil Alex zu langweilig wird) kämpft gegen einen Schattendämon. Der Schattendämon benutzt seine Körperkopierfähigkeit und wird zu Schattenbrian. Nun muss Brian gegen sich selbst kämpfen. Achtung:
Schattenbrians Statuswerte hängen von den Statuswerten von Brian ab, das heißt, wenn Brian 200 Angriff hat, muss Schattenbrian auch 200 Angriff haben und sobald Brians Statuswerte sich ändern, muss sich Schattenbrians Statuswerte auch ändern.
Das Kampfsystem ist das normale rundenbasierte Kampfsystem und mit dem RPG Maker 2000 soll das umgesetzt werden.

(Das ist eine ernstgemeinte Frage und kein Aprilscherz von mir.)

Dhan
01.04.2010, 15:10
Tjo, mit Verteidigung geht das ohne dutzende gleich aussehende Monster nicht.
Aber Angriff funzt, musst einfach die Aktion des Monsters zum Turn Switch On machen und den eigentlichen Angriff scripten

Satenit
02.04.2010, 19:00
Kann man sämtliche Statuswerte in einzelnen Variablen speichern und die dann im Kampf auf den Gegner übertragen oder gibt es eine andere einfachere Möglichkeit?

R.F.
02.04.2010, 19:15
In Variablen speichern geht auf jeden Fall.
Da man die Werte des Gegners unter "Monsters" definieren muss und keinerlei Funktionen im Standard-KS vorhanden sind, die die Attribute des Gegners ändern (außer HP, MP und Zustand), ist es also nicht möglich.
Angriffe imitieren wird auch eher komplex, da das Monster nur die Attaken beherrschen darf, die dann auch der Held kennt. (Möglichkeit-> Lv-Abfrage des Helden-> entsprechendes Monster wählen)
Verteidigung und Geschick sind aber meineswissens nicht möglich zu kopieren.

Felski
03.04.2010, 21:06
Ich denke mal du kannst den Bosskampf auf einen bestimmten Levelbereich von Brian einschränken.
Für jedes Level im Bereich einen Brian mit den passenden Werten und Fähigkeiten.
Lediglich angelegt Items werden nicht mit einbezogen.

Satenit
03.04.2010, 21:40
Ich habe mal versucht, die HP Punkte in eine Variable (bei Common Events als paralleler Prozess) zu setzen und den Gegner selbst 1 HP Punkt gegeben, damit (bei Kampfereignissen) zu Beginn des Kampfes die HP Erhöhung um diese Variable erfolgt und kurz danach um 1 HP Punkt reduziert wird. Das Gleiche habe ich mit den MP Punkten gemacht. Das Problem ist nun, der Gegner erhält nicht die Punkte, er hat immer noch 1 HP/MP Punkt. Wie kann man das Probkem jetzt lösen?

R.F.
03.04.2010, 21:51
Wenn du ihm auf diese Weise Punkte zuschanzt ändern sich nicht die maximalen Hp/Mp, da diese im Maker unter "Monsters" vorgegeben sind.
Eventuell wäre es mit haufenweise forks möglich dem Monster soviele Punkte abzuziehen dass es stimmt.(also Standardwert=999 und davon 999-Variable Punkte abziehen)

Dhan
03.04.2010, 21:53
Ich weiß nicht genau, was du da gemacht hast, aber hört sich erstmal so an, als hättest du den Befehl Change Enemy HP benutzt.
Der erhöht die temporäre HP, nicht die maximale HP.

Was du mit der HP aber machen kannst, ist, sie auf 9999 zu stellen und mit Change Enemy HP soviel abzuziehen bisses die vorher gespeicherte HP hat - da die maximale HP dann aber höher ist als gewollt musst du mit Heilzaubern aufpassen, falls der Gegner welche beherrschen kann


edit: bäh, ich bin zu spät ^^

Satenit
06.04.2010, 16:33
Nun sieht es bei mir so aus:
Gegner: Schatten
HP: 9999
MP: 999

1. Seite: Auslöser [1 Zug lang durchführen]
Change Enemy HP : Schatten HP um 9999 HP vermindern, dann LP um Variable vom max. LP des Helden erhöhen
Change Enemy MP : Schatten MP um 999 MP vermindern, dann MP um Variable vom max. MP des Helden erhöhen

2. Seite hat keinen Auslöser
Hier sollen die max. HP und MP gesteuert werden.
Variable setzen: SchattenHP (Name der Variable)= Helden max. HP
Wenn Variable SchattenHP < Schatten HP, dann Schatten HP um 9999 vermindern
dann um Variable Helden max. HP erhöhen.
End
Dasselbe wird mit den MP gemacht.


Aber warum funktioniert das nicht?

R.F.
06.04.2010, 16:52
So wie das aussieht, müsste der Gegner besiegt werden (laut deinen Angaben).
Du speicherst erst die Hp/Mp des Charakters in jeweils einer anderen Variable rechnest du 9999/999 (Hp/Mp) minus der Variable, die den Heldenstat beinhaltet.
Die Variable musst du nurnoch von den max- Werten des Feindes abziehen.

bzw. wenn überhaupt nichts passiert (Gegner stirbt nicht), dann hast du den Auslöser falsch gewählt.

Felski
06.04.2010, 16:54
Du hast doch 9999 als HP und 999 als MP.
die senkst du dann einfach um die Differenz von 9999-HP Held und 999-MP Held.
Solange sich der Gegner nicht heilen kann sollte das passen.
btw. halt ich meine idee noch für überlegenswert XD

Satenit
06.04.2010, 17:15
@Felski.: Das mit dem Levelbereich habe ich gemacht, wie du es gesagt hast. Dabei habe ich 10er Intervalle genommen und die Durchschnitte sämtlicher Stats vom Helden (außer HP und MP, denn die will ich genau gleich haben) ausgerechnet.
Die Fähigkeiten sind auch den Levels angepasst, was auch super klappt.
Der Gegner soll sich aber heilen können und das muss auch kontrolliert werden.
Jedenfallst werde ich ein bisschen weiter rumprobieren, bis es funktioniert und bedank mich bei allen hier. Ich werde mich später melden.
Es ist wirklich schade, dass man die anderen Stats nicht so definieren kann wie die HP und MP.