Erstellung von rundenbasierten Kämpfen

User avatar
Azadar
001 Enthusiast
 
Joined: Mon Jun 13, 2011 1:39 pm

Erstellung von rundenbasierten Kämpfen

Postby Azadar » Mon Jan 02, 2012 7:01 am

Bei RPG Maker VX hatte ich ein Sideviewbattlesystem und dazu noch ein ATB (Active Time Battle). Ich würde gerne in Engine001 ein Sideviewbattlesystem machen, weil es bei RPG Maker VX nur einen limitierten Schaden von maximal 9999 gibt. In meinem Battlesystem sollte man die Ausrüstungen sehen, die der Spieler im moment anhat. Das ATB würde ich dann weglassen, weil es glaube ich sehr kompliziert ist. Ich würde gerne im Sideviewbattle 4 Characktere haben, die dann unterschiedlich schnell (jenach Level) angreifen. So etwas wie Final Fantasy 10 als Beispiel. Ein Step Encounter darf da nicht fehlen. Die Monster sollen immer per Zufall auftauchen. Am Ende des Kampfes sollte es Erfahrungspunkte geben, die dann zum Level Up verhelfen. Im Kampf sollte es ein Battlegroundpicture geben, auf dem man kämpft. Also sowas wie eine Umgebung. Das Menü sollte so sein wie VX, wo man auf Angreifen, Magie, Abwehren und Fliehen drücken kann. Der Damage sollte bis 999999 gehen, und die HP bis 9999999. Die Magie sollte da irgendwie eingebaut werden, aber es sollten die gleichen sein wie vorgegeben, und nach der Animation der Magie sollte ein Damage kommen. Normal mit dem Schwert angreifen, sollte aussehen wie: Einmal zum Gegner laufen, angreifen und dann wieder an die Stelle zurück gehen. Der Schaden sollte dann erscheinen, wann der Spieler angreift. Beim Fliehen sollte es eine 75 % Chance geben, bei der man flieht. Bei Endgegnern darf man nicht fliehen.
Jetzt ist sind meine Fragen:
Ist es möglich, dass man das ohne textbasiertes Skripten machen kann?
Wenn ja wie?
Gibt es einen Skript dazu, wenn es nur mit textbasierendes Skripten geht?
Ich hoffe, dass ich nicht zuviel verlange, aber so ein Spiel würde ich gerne mal erstellen =)

User avatar
K-Pone
001 Forum Master
 
Joined: Mon Aug 04, 2008 10:53 am
Location: Niedersachsen, Deutschland (Lower Saxony, Germany)

Re: Erstellung von rundenbasierten Kämpfen

Postby K-Pone » Mon Jan 02, 2012 7:09 pm

Azadar wrote:Ist es möglich, dass man das ohne textbasiertes Skripten machen kann?

Ja es ist möglich. Textbasiertes Skripten ist mittlerweile überflüssig geworden, da sich wirklich alles über den grafischen Skripteditor machen lässt (zumal es damit auch wesentlich einfacher ist, das Skript zu erstellen und es zu lesen).
Azadar wrote:Wenn ja wie?

Ich selbst habe zwar noch nicht großartig an einem solchen Kampfsystem gebastelt, aber soviel kann ich dir sagen:

Du brauchst einen Timer auf deinem Interface, dass du wären des Kampfes aktiv hast (das, wo du auch die HP- und Zuganzeigen drauf setzt). Dieser Timer zählt dann für jeden Charakter einen Wert hoch, bis dieser einen bestimmten Wert erreicht hat. Wenn der Wert erreicht ist, soll dein Charakter eine Aktion ausführen können. Während einer deiner Chars eine Aktion ausführt, solltest du den Timer solange deaktivieren und nach der Aktion wieder aktivieren. Schaden, Resistenzen, Schwächen und Fluchtchancen müsstest du dann im entsprechenden Skript einbauen, dass bei der Aktion aufgerufen wird, die du ausführst. Mehr kann ich soweit auch (noch) nicht dazu sagen.
Squatrominati (Lumines Clone) Click Here Image

User avatar
Azadar
001 Enthusiast
 
Joined: Mon Jun 13, 2011 1:39 pm

Re: Erstellung von rundenbasierten Kämpfen

Postby Azadar » Tue Jan 03, 2012 7:39 am

Ich habe lange überlegt und eine Theorie zusammengestellt:
Die Monster kann man sehen. Sie laufen per Actorweg rum. Wenn man sie berührt (also mit dem Monster kollidiert), dann wird man zu einer Battlegroundmap teleportiert. Das ist dann das Kampffeld. Der Gegner wartet per Skript immer paar Sekunden und dann kommt die Zufallsattacke. Da benutzt man dann den Skript "Variablenzweig" wenn ich mich nicht irre, der dann die Attacken per Zufall auswählt. Bei dem normalen Angriff des Monsters und des Spielers macht man dann ein "Gehe zu" Skript, der zum Gegner führt und dann attackiert der jeweilige Actor. Die Magie soll abgespielt werden, wenn man sie auswählt. Die Magie sollte dann abgespielt werden, bei dem, der angegriffen wird. Fliehen beendet den Kampf, ich denke dazu gibt es den Teleportskript, der dann das Kampffeld verlässt und wieder zum Standort zurückkehrt. Der jeweilige Gegner wird nach 5 Sekunden regespawnt, wenn er besiegt wurde oder man bei ihm flieht. Das Kampfsystem wird per Interface laufen, was normal ist. Wenn der Gegner im Kampf besiegt ist, dann explodiert er und es kommen EP und Geld unten angezeigt.
Jetzt habe ich noch fragen:
Ist es so möglich?
Wie kann ich machen, dass der Gegner sich auf dem Kampffeld nicht bewegt, bis er per Skript angreift?
Wie kann ich einen Step Encounter machen, sodass die Gegner per Zufall kommen?

User avatar
K-Pone
001 Forum Master
 
Joined: Mon Aug 04, 2008 10:53 am
Location: Niedersachsen, Deutschland (Lower Saxony, Germany)

Re: Erstellung von rundenbasierten Kämpfen

Postby K-Pone » Thu Jan 05, 2012 2:33 pm

Azadar wrote:Wie kann ich machen, dass der Gegner sich auf dem Kampffeld nicht bewegt, bis er per Skript angreift?

Du kannst per Skript des Charakters Bewegung deaktivieren. Dann bewegt er sich nicht mehr, bis du es per Skript wieder einschaltest.

Azadar wrote:Wie kann ich einen Step Encounter machen, sodass die Gegner per Zufall kommen?

Du machst eine Zone, in der Gegner kommen können. Beim Betreten der Zone löst du ein Ereignis aus, das eine Variable oder einen Schalter auf 1 setzt oder aktiviert. Wenn sich dein Charakter nun in der Zone befindet, sollen Monster auftauchen können. Das machst du, indem du einen Timer auf dein Interface setzt. Dieser Timer sollte dann prüfen, ob eine der Richtungstasten gedrückt ist (gibts ein Event für). Wenn zumindest eine der Richtungstasten gedrückt ist, soll ein Zufallszweig prüfen, ob jetzt ein Monster auftaucht oder nicht. Wie das geschieht, musst du im Skript selbst entscheiden.
Squatrominati (Lumines Clone) Click Here Image

User avatar
Azadar
001 Enthusiast
 
Joined: Mon Jun 13, 2011 1:39 pm

Re: Erstellung von rundenbasierten Kämpfen

Postby Azadar » Fri Jan 06, 2012 2:41 pm

OK, habe ich soweit verstanden. Kann man das ganze so gestalten, dass die anderen Partymitglieder auftauchen, wenn ein Kampf oder eine Animation kommt? Ich hätte da eine Idee, aber die ist mir zu kompliziert.

User avatar
K-Pone
001 Forum Master
 
Joined: Mon Aug 04, 2008 10:53 am
Location: Niedersachsen, Deutschland (Lower Saxony, Germany)

Re: Erstellung von rundenbasierten Kämpfen

Postby K-Pone » Fri Jan 06, 2012 6:34 pm

Die anderen Partymitglieder kannst du zur Party hinzufügen oder entfernen mit dem entsprechenden Event. In den Charakterlisten bei den Events werden die dann mit aufgeführt. Die haben dann (P0), (P1), (P2) und so hinter ihrem Namen stehen.
Squatrominati (Lumines Clone) Click Here Image


Return to Deutsch

Who is online

Users browsing this forum: No registered users

cron