|
-
Die richtigen Animationen sind drin. Intern ist das etwas durcheinander. Das optimiere ich jetzt, danach kommt das Anzeigen der Healthbars von Gegnern.
An dieser Stelle schon mal einen grossen Dank an Lehona, der mir dabei viel weiter geholfen hat.
[Video]
-
Das ist ziemlich cool nun müsste man sich nur angewöhnen Gothic mit Maus und Tastatur zu spielen.
Vielen Dank, dass ihr eure Freizeit ins Gothic Modding investiert. Vorallem nachdem du, mud-freak, dich eigentlich zurückziehen wolltest.
-
Sehr schön! Genau auf so etwas habe ich gewartet!
Wird das dann als Mod veröffentlicht?
Und wird Magie dann noch frei beweglich sein?
Wenn man das als Mod machen will, könnte man beispielsweise auch das Rennen mit einpflegen (abhängig von der Ausdauer..Aber dann bräuchte man Lehrer dafür).
-
Zitat von Tyrus
Sehr schön! Genau auf so etwas habe ich gewartet!
Wird das dann als Mod veröffentlicht?
Und wird Magie dann noch frei beweglich sein?
Wenn man das als Mod machen will, könnte man beispielsweise auch das Rennen mit einpflegen (abhängig von der Ausdauer..Aber dann bräuchte man Lehrer dafür).
Jeder Modder kann das in seine Mod einbauen. Ob es als einzelne Mod (nicht kompatibel mit anderen Mods, Patches) sinnvoll ist, weiß ich nicht.
-
Naja zumindest wäre es eine Bereicherung für alle, da nicht jeder eigenständige Mods mag
-
Zitat von mud-freak
- Maus smoothing: Gothic ist nicht für Zielen gemacht, präzise Mausbewegungen (Zielen in der Ferne) sind bisher schwierig Wie: Schon halb getan (siehe Blink), allerdings registriert Gothic wirklich minimale Mausbewegungen nicht
Wenn ich ingame die Kamera mit der Maus drehe habe ich zumindest das Gefühl eine fürs Zielen ausreichend feine Steuerung zu haben. Bei einem deiner Videos hat man aber die einzelnen "Sprünge" der Maus deutlich gesehen.
Ich glaube daher, dass Gothic durchaus feine Mausbewegungen registriert.
Wie sieht denn bis jetzt deine Maussteuerung aus?
-
Zitat von Neconspictor
Wenn ich ingame die Kamera mit der Maus drehe habe ich zumindest das Gefühl eine fürs Zielen ausreichend feine Steuerung zu haben. Bei einem deiner Videos hat man aber die einzelnen "Sprünge" der Maus deutlich gesehen.
Ich glaube daher, dass Gothic durchaus feine Mausbewegungen registriert.
Wie sieht denn bis jetzt deine Maussteuerung aus?
Er hat sich jetzt am LeGo-Cursor orientiert (technisch), da funktioniert das alles wunderbar weich
Vorher war es (erstaunlicherweise) echt merkwürdig.
-
Super! Dann hat sich das Problem ja erledigt
-
Zitat von BlackBat
Das ist ziemlich cool nun müsste man sich nur angewöhnen Gothic mit Maus und Tastatur zu spielen.
Danke, da hast du mich auf etwas wichtiges hingewiesen! Es muss unbedingt abgefragt werden, ob die Maussteuerung im Menu eingeschaltet ist, sonst sind Tastatur-only Spieler aufgeschmissen. Für Tastatur-Spieler wird dann das traditionelle Zielen aktiviert.
Zitat von Neconspictor
Wenn ich ingame die Kamera mit der Maus drehe habe ich zumindest das Gefühl eine fürs Zielen ausreichend feine Steuerung zu haben. Bei einem deiner Videos hat man aber die einzelnen "Sprünge" der Maus deutlich gesehen.
Ich glaube daher, dass Gothic durchaus feine Mausbewegungen registriert.
Wie sieht denn bis jetzt deine Maussteuerung aus?
Zitat von Lehona
Er hat sich jetzt am LeGo-Cursor orientiert (technisch), da funktioniert das alles wunderbar weich
Vorher war es (erstaunlicherweise) echt merkwürdig.
Ich habe es mittlerweile mal kurz mit den LeGo-Cursor skripten versucht. Teilweise klappt es, aber so ganz gefixt habe ich es noch nicht (ich musste die übernommenen Teile aus den Cursor-Skripten, etwas anpassen). So viel habe ich aber noch nicht rumprobiert. Ich muss noch einmal feststellen, ob es dies mal wirklich an der Mausabfrage liegt oder ob das Anpassen der Rotation des Heros in jedem Frame evtl. kleine Bewegungen blockiert (dürfte aber nicht der Fall sein).
Edit: Tatsächlich hat es an der Drehung gelegen. Jetzt funktioniert die Maussteuerung sehr gut. Habe mal einen aus 200m Entfernung weggesniped.
Ausserdem habe ich mal die Kamera über die Schulter des Helden verschoben, damit sein Kopf nicht immer im Weg (unter dem Fadenkreuz) liegt und man vernünftig zielen kann. Mittleweile fühlt sich das freie Zielen vernünftig an.
Edit:
Zitat von Tyrus
Sehr schön! Genau auf so etwas habe ich gewartet!
Wird das dann als Mod veröffentlicht?
Und wird Magie dann noch frei beweglich sein?
Wenn man das als Mod machen will, könnte man beispielsweise auch das Rennen mit einpflegen (abhängig von der Ausdauer..Aber dann bräuchte man Lehrer dafür).
Für Magie habe ich das Ganze auch vor, ja. Das funktioniert zwar ähnlich ist aber um einiges komplizierter und war bisher noch ohne Erfolg.
Das als alleinstehende Mod zu veröffentlichen wäre eine Möglichkeit, aber wie schon erwähnt wäre es wohl sinnvoller, das freie Zielen in bestehende Mods einbauen zu lassen. Wenn es in einem spielbaren Zustand ist, werde ich erst einmal die Skripte dafür hier bereit stellen. Vielleicht kann mir dann jemand, der über aktuelle und erfolgreiche Erweiterungsmods besser informiert ist als ich, helfen die Macher dieser auf das freie Zielen aufmerksam zu machen, damit sie es ggf. in ihre Mods einbauen können.
Was du mit Rennen meinst, habe ich nicht gleich verstanden. Worauf du mich aber aufmerksam gemacht hast, ist, dass es schön wäre wenn man während dem Zielen auch noch seitliche Schritte machen könnte. Denn wenn der Spieler beim freien Zielen auf einem Punkt festklebt, sehe ich ehrlich gesagt keinen wirklichen Sinn/Vorteil im freien Zielen.
Jemand der sich mit Animationen auskennt: Ich weiss, dass es da wohl mehrere "Layers" von Animationen gibt, die man gleichzeitig/übereinander abspielen kann. Kann mir da jemand sagen, ob es theoretisch möglich wäre die Strafe-Animation (alles unterhalb der Hüfte) in einem anderen Layer als die Aim-Animation (alles oberhalb der Hüfte) gleichzeitig abspielen zu lassen?
Geändert von mud-freak (17.08.2016 um 15:21 Uhr)
Grund: Maussteuerung fertig
-
Eine Frage. Wird beim Schießen auch die Zugkraft simuliert? Wenn ich zum Beispiel nur kurz die Maustaste zum schießen drücke, dürfte ich ja nicht die volle Zugkraft erreichen.
-
Bisher noch nicht, aber das einzubauen wäre nicht unbedingt weiter schwierig.
-
Zitat von BlackBat
Eine Frage. Wird beim Schießen auch die Zugkraft simuliert? Wenn ich zum Beispiel nur kurz die Maustaste zum schießen drücke, dürfte ich ja nicht die volle Zugkraft erreichen.
Ich habe das mal (wie auch Strafen beim Zielen) als "Bonus" in die ToDo Liste aufgenommen (d.h. darum kümmere ich mich nachdem die wichtigeren Sachen alle funktionieren). Meine Gegenfrage ist, was du dir genau unter simulierter Zugkraft vorstellst. Mir fallen da fünf verschiedene Effekte ein. Nachfolgend steht die Liste. An was davon hattest du gedacht?
Zitat von mud-freak
ToDo-Checkliste:
...
9. Bonus: Während des Zielens seitlich strafen können. Wie: Weiss nicht ob das mit den Animationen klappt.
10. Bonus: Zugkraft simulieren. Was genau:
- Einfach nur die Pfeilanlegen-Animation langsamer machen?
- Bei weniger Zug die Pfeilgeschwindingkeit verringern?
- Bei weniger Zug die Pfeilflugbahn anpassen (früherer Drop-off)?
- Bei weniger Zug den Schaden verringern?
- Oder das Schiessen gar nicht erlauben bis der Bogen ganz gespannt ist?
-
Ich denke realistisch wären diese 4 Punkte zusammen. Allerdings hört sich das jetzt für einen Laien wie mich ziemlich aufwändig an.
Einfach nur die Pfeilanlegen-Animation langsamer machen?
Bei weniger Zug die Pfeilgeschwindingkeit verringern?
Bei weniger Zug die Pfeilflugbahn anpassen (früherer Drop-off)?
Bei weniger Zug den Schaden verringern?
-
Hallo,
ich wollte schnell fragen, wie es voran geht.
mfg königsgardist
-
Zitat von königsgardist
Hallo,
ich wollte schnell fragen, wie es voran geht.
mfg königsgardist
Hi, ich war ein paar Tage unterwegs und bin jetzt zurück. Der letzte Stand (Upload-Datum beachten) ist dieser: https://youtu.be/eFDMM3R3Yvw
Die Grundlagen sind gelegt und freies Zielen (für Fernkampf) ist spielbereit. Seit dem Video (21.8.) hat sich nach aussen hin nicht viel geändert. Im Video kann man sehen wie die NPCs vernünftig erfasst und das Fadenkreuz sich der Zielentfernung anpasst (ähnlich wie in Gothic 3). Man sieht allerdings auch, dass das in Ausnahmefällen (0:18 - 0:20 im Video) nicht immer klappt.
Auf der Liste steht jetzt (1.) diesen Bug im Video zu beheben und (2.) seitliches Bewegen beim Zielen zu implementieren. Was Zugkraft angeht, bin ich etwas skeptisch, ob sich das lohnt, denn meiner Erfahrung nach ist das nach zwei, drei mal Schiessen uninteressant und trägt nicht gross zur Spielmechanik bei. Was trotzdem interessant ist und worum ich mich noch bemühen werde ist, dass (3.) Projektile mit der Zeit abfallen (also eine gebogene Flugbahn haben), denn im Normalfall fliegt ein Pfeil schnurgerade.
Edit: Ich will an dieser Stelle aber nicht vorenthalten, dass ich den Fortschritt mit der Fokuserfassung aus dem Video aufgrund des Bugs komplett neu implementieren muss.
Geändert von mud-freak (31.08.2016 um 18:43 Uhr)
-
Zitat von mud-freak
Hi, ich war ein paar Tage unterwegs und bin jetzt zurück. Der letzte Stand (Upload-Datum beachten) ist dieser: https://youtu.be/eFDMM3R3Yvw
Die Grundlagen sind gelegt und freies Zielen (für Fernkampf) ist spielbereit. Seit dem Video (21.8.) hat sich nach aussen hin nicht viel geändert. Im Video kann man sehen wie die NPCs vernünftig erfasst und das Fadenkreuz sich der Zielentfernung anpasst (ähnlich wie in Gothic 3). Man sieht allerdings auch, dass das in Ausnahmefällen (0:18 - 0:20 im Video) nicht immer klappt.
Auf der Liste steht jetzt (1.) diesen Bug im Video zu beheben und (2.) seitliches Bewegen beim Zielen zu implementieren. Was Zugkraft angeht, bin ich etwas skeptisch, ob sich das lohnt, denn meiner Erfahrung nach ist das nach zwei, drei mal Schiessen uninteressant und trägt nicht gross zur Spielmechanik bei. Was trotzdem interessant ist und worum ich mich noch bemühen werde ist, dass (3.) Projektile mit der Zeit abfallen (also eine gebogene Flugbahn haben), denn im Normalfall fliegt ein Pfeil schnurgerade.
Edit: Ich will an dieser Stelle aber nicht vorenthalten, dass ich den Fortschritt mit der Fokuserfassung aus dem Video aufgrund des Bugs komplett neu implementieren muss.
Danke vielmals! Das sieht schon mal nicht schlecht aus. Alles Gute weiterhin.
mfg königsgardist
-
Ich wollte mich mal wieder melden. Heute ist kurzfristig eine neue Pflicht aufgekommen, der ich in nächster Zeit nachkommen muss, so dass ich erst einmal weniger/bis gar nicht am freien Zielen arbeiten werde. Macht so vielleicht keinen merklichen Unterschied hier nach aussen hin - doch habe ich in den vergangen Wochen viel Zeit darin investiert. Ich wollte das hier nur schreiben für die Leute, die evtl. darauf warten.
Vielleicht schaffe ich es doch noch irgendwie am Wochenende ein weiteres kleines Video zu drehen, um den bisherigen Stand zu demonstrieren, um das Warten bis ich weiterarbeiten kann zu erleichtern (oder erschweren?). Hier erst einmal ein Liste von fertigen Featuren und Fortschritten. [Edit: Liste verschoben in den Einleitungspost]
[...]
Das ist immer ein grosses Problem in der Implementierung von Shootern, da das Projektil nicht vom Zentrum des Bildschirm (wo das Fadenkreuz ist) los fliegt, sondern von der Waffe (daran ändert auch Firstpersonview nichts). Vollständig implementiert habe ich schon, dass das Projektil dort auftrifft, wo man hinzielt (egal wie weit entfernt das nächste Hindernis ist). Das wird also dynamisch errechnet. Damit ist das Problem vollständig gelöst.
Allerdings macht jetzt die gebogene Flugbahn (s.o.) Probleme, denn damit kann ich vorher nicht feststellen wo das Projektil auftreffen wird. Vertikal kein Problem, allerdings horizontal, denn so "treffen" Projektil und Fadenkreuz nicht immer aufeinander. Da wie gesagt die Waffe nicht im Zentrum des Bildschirms ist, kreuzt das Projektil das Fadenkreuz und fliegt nach links/rechts weiter (schwer zu erklären). Die Lösung dazu habe ich schon, die allerdings ein neues Problem hervor ruft: Ich habe die Kamera jetzt so ausgerichtet, dass sie horizontal genau auf der Position ist, wo das Projektil los fliegt. Das Projektil fliegt also nun genau entlang des Fadenkreuzes (Problem gelöst). Neues Problem: Dieser "Trailstrip" also der Effekt den ein Pfeil zurücklässt, an dem man erkennt wo der Pfeil entlang fliegt, ist von diesem Winkel nicht zu sehen (ist ja genau dahinter). Dazu muss ich mir jetzt noch etwas einfallen lassen, denn man sieht so nun überhaupt nicht wo man hinschiesst. Gelöst durch zusätzlichen Trailstrip FX
Wie man sieht ist das Grundgerüst mehr als fertig. Rum-zu-schiessen macht schon extrem Spass und fühlt sich wirklich gesund und abgerundet an. Man kann NPCs über lange Distanz genüsslich "weg snipen". Was übrigbleibt sind die oben genannten Optimierungen und Extrafeatures (wie Headshot, usw.). Worauf ich bisher sehr wert gelegt habe und das kann ich an dieser Stelle hier schon ein mal sagen, ist, dass über Konstanten oben im Skript alles eingestellt werden kann was man will. Das macht das Einbinden in eine Mod sehr angenehm, wenn man nicht die Funktionen ändern muss, sondern alle Einstellungsmöglichkeiten als Konstanten auf einen Blick vor Augen hat. Ca. so hat man sich das vorzustellen (wird sich sicher noch ändern):
Wie gesagt, ein Video folgt vielleicht noch am Wochenende. Das war jetzt erstmal so der Stand bevor es in ca. drei Wochen weitergeht. Ich hoffe ich konnte so etwas Transparenz darein bringen.
Geändert von mud-freak (13.09.2016 um 20:17 Uhr)
-
Das ist dir sehr gut gelungen! Vielen Dank- ich freu mich schon wie irre auf dein Feature! Geht es, dass deine Mod als eine Art "Patch" erscheint oder nicht?
mfg königsgardist
-
Wie funktioniert denn momentan die Trefferwahrscheinlichkeit / Bogenskill? Geht der Pfeil dann neben das Fadenkreuz oder auch weiterhin genau auf das Fadenkreuz und verursacht nur ggf. keinen Schaden?
-
Apprentice
- Headshot 5% Bisher nur eine Idee. Finde ich aber wichtig beim freien Zielen.
If this struct of class zCModelNodeInst is correct, all what you need is comparing projectile bounding box with head bounding box. These functions should help:
Code:
func int Npc_GetModel (var c_npc slf)
{
CALL__thiscall (MEM_InstToPtr (slf), 7571232);
return CALL_RetValAsPtr ();
};
func int zCModel_SearchNode (var c_npc slf, var string node)
{
var int ptr; ptr = Npc_GetModel (slf);
CALL_zStringPtrParam (node);
CALL__thiscall (ptr, 5758960);
return CALL_RetValAsPtr ();
};
func void SomeFunction ()
{
var zCModelNodeInst node; node = _^ (zCModel_SearchNode (target, "Bip01 Head"));
[...]
};
Geändert von Rayzer (08.09.2016 um 12:04 Uhr)
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
|
|