Schwertkampf anyone?

  • #1, by FantozziSaturday, 05. May 2012, 12:56 14 years ago
    Also folgende Situation, wie man sie ja tagtäglich selbst erleben kann, z.B. im Frankfurter Bankenviertel nach 20 Uhr: Mein Held geht eine dunkle Gasse entlang und am Ende steht ein Freak im beige-braunen Lodenmantel und ruft: "Halt! Es kann nur einen geben!" Und obwohl mein Held sehr sachlich und durchaus triftig argumentiert, dass Zweisamkeit doch auch ganz schön sein kann, kommt es zum Showdown.

    Nun zu meiner Anfängerfrage: wie würdet Ihr so einen Schwertkampf gestalten, dessen einzelne Aktionen mit der Maus steuerbar sein sollen?

    Würdet ihr die beiden Raufbolde als eine Datei/ein Objekt animieren, so dass die Bewegungsabläufe immer zusammenpassen oder würdet ihr zwei Objekte und zwei Animationen machen und diese synchronisieren (if...then)?

    Würdet ihr verschiedene Objektbereiche definieren, die dann, wenn man draufklickt dann die verschiedenen "Moves" auslösen oder würdet ihr eher mit verschiedenen Objekten arbeiten?

    Man merkt - ich habe noch nicht so recht einen Plan, wie ich das umsetzen soll.

    Für jede Anregung bin ich dankbar.

    Newbie

    31 Posts


  • #2, by NovelThursday, 10. May 2012, 22:20 14 years ago
    Also, verstehe ich das richtig: Wie der Schwertkampf bei Monkey Island, der ja über den Dialog abgewickelt wird, soll es nicht laufen? Also eher sowas wie ein rundenbasiertes Streetfighter? ;-) Cool.

    Zwei einzelne Personen miteinander zu synchronisieren, dürfte sich als flexibler erweisen.

    Im Prinzip wäre das eine Art "Schnick-Schnack-Schnuck"-Spiel. Ich würde zunächst nur Schlagen (oben) und treten (unten) bzw. oben und unten blocken ermöglichen und dann auf der Gegnerseite jeweils per Zufall oben oder unten zuschlagen bzw. blocken. Bei jedem erfolgreichen Schlag würde ich die Figuren ein paar Pixel in die Laufrichtung des Erfolgreichen bewegen. Powerbars kannst du über mit einem Wert verknüpfte Objekte bauen.

    Das ganze kann rundenbasiert oder in Echtzeit laufen mithilfe von Timern... Ja, da kann man sicher einiges machen, interessant!

    Newbie

    100 Posts

  • #3, by FantozziFriday, 11. May 2012, 11:32 14 years ago
    Danke für Deine Antwort

    Nein, Streetfighter & Co will ich nun keine Konkurrenz machen. So weit, spritzendes Blut und abgehackte Gliedmaßen zu animieren, bin ich (hüstel) technisch noch nicht ... Es soll nur eine "Quest" im Adventure sein. Wie das in Monkey-Island ist, habe ich jetzt nicht mehr in Erinnerung (ist schon eine Weile her).

    Ich überlege gerade, links und rechts am Bildschirmrand verschiedene Symbole zu machen und je nachdem, wie man die Symbole anklickt, ergeben sich dann die "Moves" und es soll eher wie bei einem "Memory-Spiel" sein, also man muss die richtige Kombination von Symbolen finden, um dem Gegner den entscheidenden Schlag beizubringen. So in der Art. Im Grunde suche ich da noch die richtige Idee, weshalb ich hier gepostet habe. Mir ist auch noch nicht klar, wie man das macht - mehrere Animationen zu synchronisieren - also nicht nur zwei. Die Figuren sollen ja nicht immer parallel das Gleiche machen, sondern parallel Verschiedenes.

    Oh Mann, die Logik. In der Industrie gibt es sehr teure "Workflow-Software", mit der man industrielle Prozesse "designen" kann. Wir nannten das früher "Flussdiagramme". Vielleicht sollte ich sowas erstmal zu Papier bringen, dann wird mir die Umsetzung vielleicht auch klarer.

    Aber ich habe aktuell den Sound einer zuschlagenden Tür und eine Animation der Tür - und ich kriege ja nicht einmal das hin, dass der Sound im richtigen Moment erklingt. Entweder "batscht" die Tür, wenn sie noch halb offen ist, oder sie "batscht", wenn sie schon zu ist. Da geht's um Millisekunden, die darüber entscheiden, ob so ein Game kacke ausieht oder nicht. Ich krieg's nicht hin.

    Wie funktioniert das mit den Timern? Kann ich da irgendwo was drüber lesen?

    Nochmal: Danke.

    Newbie

    31 Posts

  • #4, by FlorianFriday, 11. May 2012, 15:14 14 years ago
    Es gibt verschiedene Umsetzungen von Actionsequenzen in Adventures.

    Allen voran steht das Beleidigungsfechten, das strenggenommen keine Actioneinlage ist, sondern über geschickte Dialogabfolge einen humorvollen Schlagabtausch der beiden Kotrahenten liefert. Der Kampf ist als rundenbasiert zu bezeichnen, indem man dem Gegner eine Beleidigung an den Kopf schleudert, die ihn entweder schwächt oder die er mit einer frechen Entgegnung kontern kann, die Dich dann irritiert. Nach mehreren ertragenen Beleidigungen gibt der Schwächere auf.

    Anders sind die Kämpfe in den Indiana Jones Adventures, bei denen man in Echtzeit Faustangriffe und Abwehrtechniken über die Tastatur eintippen muss. Da man damit die bekannte Ergonomie für Adventures verlässt, stoßen solche Actioneinlagen häufig auf Kritik. Indy-Kämpfe sind auch sehr temporeich, während ein Spiel wie Karateka deutlich beschaulicher die Attacken und Paraden ausführte.

    Letzgenannt ist das Kampfmuster der Manga-RPGs, bei denen sich die Gegner gegenüberstehen und rundenbasiert einen ausgewählten Angriff ausführen. Damit es nicht nur in ein simples Schere-Stein-Papier Zufallsgeschehen mündet, gibt es Fakoren wie Mana, Heilung und Zaubervorbereitungszeit zu beachten.

    Ich habe nun noch nicht ganz herauslesen können, ob Du Dich bereits auf "rundenbasiert" festgelegt hast.

    Newbie

    26 Posts

  • #5, by FlorianFriday, 11. May 2012, 15:43 14 years ago
    Zu Deinem Soundproblem:

    Der Sound läuft ja in der Regel länger als die Animation, weshalb ich immer zuerst den Sound und darauf die Animation in meiner Aktionsleiste starte.

    Wichtig ist, gerade wenn Du Dich in einer freien Sounddatenbank bedienst, dass Du die Sounds noch einmal für Deinen Bedarf zurechtschneidest. Häufig haben die Geräusche eine Anlaufzeit, so dass ich die ersten Millisekunden immer wegschneide, damit der Sound gleich losdröhnt und deutlich besser getimed werden kann.

    Newbie

    26 Posts

  • #6, by FantozziFriday, 11. May 2012, 16:49 14 years ago
    Zum Sound: Danke Florian! Natürlich! Du hast mich auf die richtige Idee gebracht! Statt mich da in Visionaire abzukaspern, den Sound an der richtigen Stelle im "Ereignisablauf" zu platzieren, kann ich natürlich auch am Anfang der Sounddatei so viel Stille hinzufügen oder wegnehmen, bis es passt. Das nenne ich einen Denkanstoß!

    Zum Schwertkampf: Sorry, Game-Erstellung ist eine völlig neue Welt für mich. Ich kenne mich da nicht so gut aus, macht aber tierisch Spaß. Bei "rundenbasiert" dachte ich zuerst an Strategiespiele...

    Ohne jetzt die Story langatmig auszubreiten: es soll nicht so sein, dass der Gegner Runde um Runde schwächer wird. Es ist eher so ein Prüfungskampf "Meister gegen Schüler", eher was "sportliches". Das heißt ich habe eine ausgebildete Schwertkämpferin und ein kleines, etwas zurückgebliebenes Mädchen (schwere Kindheit). Und das kleine Mädchen soll jeden Schlag der Schwertkämpferin parieren können und es soll mächtig "kling, klang, klong" machen. Aber am Ende schlägt das Mädchen dann halt eine Kombination, die die Meisterin entwaffnet. Das heißt, rundenbasiert ist das eigentlich gar nicht, insofern keiner der Gegner nun allmählich geschwächt wird oder so. Die Überraschung ist, dass beide gleich stark sind.

    Andererseits wird das auch nur dann spannend, wenn auch das kleine Mädchen besiegt werden kann, sonst fehlt ja dem Zocker die Herausforderung?

    Nein, ich denke da wirklich mehr an ein Knobelspiel, bei dem es darum geht, die richtige Kombination zu finden, um weiter zu kommen.

    Ich rede so im Nebel herum, weil mir zwei Sachen noch unklar sind: a) wie ich das konzeptionell machen will und b) wie ich das dann technisch (mit meinen beschränkten Fähigkeiten) auch realisieren kann.

    Newbie

    31 Posts

  • #7, by FlorianFriday, 11. May 2012, 18:58 14 years ago
    Die technische Umsetzung wird das geringste Problem sein, wenn Du erst einmal das Konzept gefunden hast.

    Dein Kampf ist also nicht wie bei Indiana Jones auf Geschwindigkeit und Geschick ausgelegt, sondern hält klickbare Schaltflächen bereit, deren richtige Kombination zur Lösung führen.

    Wenn es nur darum ginge, in der richtigen Reihenfolge die Knöpfe zu drücken, wäre der Frustfaktor beim Spieler sicher hoch, da ja bereits 4 Knöpfe zu drölfzig Kombinationen führen würden.

    Würde man dem Spieler daher zwischendurch grafisch vermitteln können, dass er auf dem richtigen Weg ist, hätte er zumindest einen "gefühlten" Lernerfolg. Die "Grow"-Spiele gehen diesen Weg, da erfolgreiche Kombinationsfolgen mit dem Fortgang der Geschichte belohnt werden. Das Brettsteckspiel "Mastermind" weist einem ebenfallls den richtigen Weg.

    Wenn der Gegner also auf Deinen Knopfdruck-Angriff defensiv oder irritiert reagiert, dann weiss der Spieler, dass er auf dem richtigen Weg ist.

    Um dem Kampf ein bißchen Fahrt zu geben, kannst Du die Figuren im Hintergrund zufallsgesteuert Kampfbewegungen lassen und Deine eingestreuten Knopfdrücke verlagern dann den Vorteil. War ein Tastendruck falsch, springt der Counter zurück auf null, so dass der Spieler im Laufe des Endloskampfes langsam den Dreh herausbekommt und sich beständig der Lösung nähert, ohne immerwieder in den Niederlage-Bildschirm geschubst zu werden.

    Newbie

    26 Posts

  • #8, by FantozziSaturday, 12. May 2012, 10:15 14 years ago
    Also, ich mache auf der linken Bildschirmseite vier Karten:

    Prinz Basch Kentikian Skywalker Paul Breitner

    und auf der rechten Bildschirmseite vier Karten:

    - Rolle - Täuschung - Sprung - Grätsche

    dann ergibt das doch genau 16 Kombinationen, z.B. eine Skywalker-Täuschung oder eine Paul-Breitner-Grätsche usw.

    Ich habe dann eigentlich nur noch ein Problem - wie verhindere ich es, dass man die entscheidende "Kombo" gleich am Anfang schlagen kann?

    Ich denke immer noch, dass es einfacher ist eine Animation zu machen mit beiden Protagonisten, dann erspare ich mir auch die Arbeit, die beiden Animationen nachher synchronisieren zu müssen.

    Andererseits...16 Kampfanimationen, sagen wir roundabout 800 x 720 Pixel x 90 (???) Bilder - wie ist denn das dann mit der Performance? Geht sowas mit Visionaire?

    Ich habe bisher nur eine Animation dieser Größenordnung gemacht, die muss ich bei Kulissenbeginn vorladen, sonst ruckelt es. Aber 16 Animationen vorladen, geht das? Muss ich dann einen Hinweis geben - "Ihre Kulisse steht in 5 Minuten zur Verfügung"? Ich habe da keine Erfahrungswerte ...

    Da habe ich auch noch eine Frage. Im Grundeinstellungs-Menü des Spiels kann man den Cache für Grafiken einstellen. Was stellt man denn da vernünftigerweise so ein? Ich meine, mit zwei Gig Arbeitsspeicher kann man doch heute rechnen, auch bei Notebooks? Da müsste man statt der voreingestellten 40 MB doch auch locker 200 MB eintragen können? Bringt das was?

    Newbie

    31 Posts

  • #9, by FlorianTuesday, 15. May 2012, 16:13 14 years ago
    Zu Deiner ersten Frage:

    Ich würde den Spieler nicht vor allzu viele Möglichkeiten stellen, da es dann ja nur eine brute force Glückssache ist, bis er die richtige Lösung hat und im für Dich ungünstigsten Fall tippt er vielleicht sofort auf die richtige Kombination.

    Wähle daher nicht 16 Buttons auf einer Ebene, sondern vielleicht nur 4 Buttons, wobei er mit diesen aber in 4 Durchgängen hintereinander richtig liegen muss. Beim Monkey Island Schwertkampf war ja auch nicht bereits nach dem ersten Schlag Schluss. Daher meine Überlegung, sich der Lösung langsam wie bei Mastermind zu nähern.

    Aus der Reaktion des Gegners könnte sich zum Beispiel ablesen lassen, wie erfolgreich Deine Attacke war.

    Konkretes Beispiel: Die richtige Angriffscombo lautet 1-2-4-4

    Der Spieler wählt Attacke 1 und verletzt den Gegner. Die beiden fighten weiter und der Spieler drückt Knopf 2 und der Schlag kommt ebenfalls durch. Nun drückt er Attacke 3, aber der Gegner kontert und stößt den Spieler zurück. Die Comboabfolge wird damit zurückgesetzt und der Spieler muss weiterknobelt um auf die 1-2-4-4 zu kommen. Gelingt ihm dies irgendwann, hat er den Kampf gewonnen und das Puzzle gelöst.

    Variation: Bei einem der Angriffe kommt es zu heftigem Gerangel, bei dem der Spieler aber nicht eindeutig einen Vorteil ausmachen kann und vorerst im Unklaren bleibt, ob die Attacke erfolgreich war. Erst durch den weiteren Kampfverlauf kann er darauf schließen, ob diese Aktion Wirkung zeigte und sie in seiner Combo behalten oder aussondern.

    Mein Vorschlag ist wohl eine der simpleren Lösungen, da sie nur eine Animation pro Spielerattacke (hier:4) benötigt und es nur 3 Gegnerreaktionen gibt (Verletzung, Konter, unklar). Vielleicht haben die anderen Entwickler hübschere oder technisch anspruchsvollere Lösungen.

    Newbie

    26 Posts

  • #10, by FantozziSunday, 20. May 2012, 11:16 14 years ago
    Florian schrieb:

    Wähle daher nicht 16 Buttons auf einer Ebene, sondern vielleicht nur 4 Buttons, wobei er mit diesen aber in 4 Durchgängen hintereinander richtig liegen muss.

    Ja, ich denke, genauso werde ich es machen. Dann kann ich auch die Animationen auf mehre Kulissen verteilen und habe zwei Dinge, die mir Kopfzerbrechen bereiten, vom Tisch. Hab Dank für die Anregung.

    Da ist dann jetzt von meiner Seite aus nur noch eine, respektive zwei Fragen offen:

    Was hat es mit dem Grafik-Cache in den Grundeinstellungen auf sich, dessen Voreinstellung 40 MB ist? Heißt das, Animationen, die größer als 40 MB sind können nicht vorgeladen werden? Was stellt man da sinnvoll ein, zumal so langsam 2 Gig Arbeitspeicher Standard sein dürften?

    Newbie

    31 Posts

  • #11, by marvelSunday, 20. May 2012, 11:58 14 years ago
    Was hat es mit dem Grafik-Cache in den Grundeinstellungen auf sich, dessen Voreinstellung 40 MB ist? Heißt das, Animationen, die größer als 40 MB sind können nicht vorgeladen werden? Was stellt man da sinnvoll ein, zumal so langsam 2 Gig Arbeitspeicher Standard sein dürften?

    Daran würde ich nichts verändern. Ich glaube es geht dabei darum, wie die Grafikkarte die Texturen verarbeiten soll. Mit dem Arbeitsspeicher des Rechners hat es nichts zu tun.

    Key Killer

    610 Posts