Wow... this is awesome =D
I waited for this =)
Druckbare Version
@dragonheartman:
Hey, cool :D
Its very good and this is a of the "Tools" or "Plugin" that i need :)
Thx :)
Hallo Kirsche,
eine Sache müsste echt nochmal gefixt werden: Die Eventpageverarbeitung im Kampfsystem geht so ganz und gar nicht, weil einfach nicht mehr sicher ist, dass Code ausgeführt wird wenn man es erwartet. Das ist irgendwie bitter, denn mit DynRPG könnte man echt tolles Gameplay basteln. Ohne ist das 2k3 System ätzendst langsam, mit dem Eventpageproblem allerdings ist man zurück in der Ära des blinden Enterdrücken weil einfach keine eigenen Systeme mehr verlässlich funktionieren.
Am nachvollziehbarsten passiert das Verschlucken immer wenn gerade auch Monster am Zug sind und angreifen ausserdem kommen Monsterangriffe sehr verzögert wenn parallel ein Spielercharakter dran ist.
Normal:
- Monster turn elapsed (+aufblinken)
- Monsterangriff
- Spieler Does X Command
- Spielerangriff
- Spielernachbearbeitung (wichtiger Code)
DynRPG:
- Monster turn elapsed (+aufblinken)
- Spieler Does X Command
- Spielerangriff
- Monsterangriff
Je nach genauen ATB Werten ab und an etwas zufällig anders, diese Reihenfolge entspricht dem was ich gerade eben nochmal getestet hab.
Hast du den IPS-Patch draufgetan der das längere Skillwindow entfernt? Damit sollte das nämlich für den Moment eigentlich behoben sein...
(Übrigens, so als Tipp: In RPG::updateBattleEvents steckt immense Power ;) )
Wo tue ich diese .ips-Datei eigentlich rein? Ich habe zwar noch keine Probleme gehabt, aber man kann ja nie sicher genug gehen.
Sauber! Das tuts!
@Auge des Sterns:
Benutz den mal, machts nur besser.
Leider hilft das nicht. Der Moment des Aufrufens muss nach der Handlung des Akteurs passieren. Diese beiden...
bool onDoBattlerAction (RPG::Battler *battler)
bool onBattlerActionDone (RPG::Battler *battler, bool success)
...werden beide vor der eigentlichen Action ausgeführt. Um den Kniff des gezielten "Switch on" um im nächsten Zyklus Code aufzurufen kommt man also nicht herum.
Hey! Netter Patch. Habe gerade auf die Schnelle für einen Freund ein Plug-In zusammengeschrieben.
Aber mal eine Frage (wurde vielleicht schon gefragt, aber keine Lust, mir alle Seiten durchzulesen):
Gibt es einen besonderen Grund, wieso RPG::Key kein KEY_SHIFT enthält? Fom RM2K3 wird die Taste ja immerhin unterstützt. Kam mir ein bisschen komisch vor. Ist zwar kein Ding, die Taste mit C++ nachträglich auszulesen, aber wäre natürilch schön, wenn ich mein Plug-In komplett über RM-Funktionen bedienen könnte.
In der Doku steht:
"The Shift key is handled differently by the RPG Maker, thus it can't be used the way other keys can be used by DynRPG."
( Quelle )
Der 2k3 ist, wenn man den Disassemblern unserer Community glauben schenkt, zuweilen etwas schräg zusammengehackt. Da die Shi8fttaste ein neues Features des 2k3 ist kanns gut sein, dass es in diese Kategorie fällt.
Mann, wie konnte ich das nur übersehen? Genau die Beschreibung habe ich mir doch durchgelesen und mich gewundert, wieso kein KEY_SHIFT dabei ist. Ich stehe echt neben der Spur! 0_o
Naja, hier mal mein erstes Plug-In:
http://rpg-hacker.de/RPGMaker/Downlo...ningScript.rar
Es ist nichts weltbewegendes. Nur ein Lauf-Skript (Laufen, durch Drücken der Shift-Taste). Als ich mal versucht habe, sowas im Maker direkt einzubauen, hat es seltsamerweise zu unerklärlichen Bugs geführt.
Nutzung (per Comment in einem Parallel Process Common Event):
WobeiCode:@DynRun X, Y, Z
X: Laufgeschwindigkeit (1 bis 6)
Y: Gehgeschwindigkeit (1 bis 6)
Z: Aktivierungs-Switch
Der für Z verwendete Switch muss im Maker auf ON gestellt werden, damit der Held per Shift laufen kann. Entsprechend kann er nicht mehr laufen, wenn man den Switch wieder auf OFF stellt.
Und hier noch der Source Code:
http://pastebin.com/pgsxzPnQ
Ich garantiere nicht für Fehlerlosigkeit.
Wie kann ich mir das mit den Neben-Modulen eigentlich vorstellen? Wenn ich
in einem Modul definiere, kann ich dann mein Plug-In in mehrere DLLs aufsplitten? Und kann ich einem Neben-Modul dann immer noch alle Callbacks verwenden? Und wann werden die aufgerufen? Günstig wäre es, wenn sie erst nach dem Haupt-Module aufgerufen werden.Code:#define NOT_MAIN_MODULE
Ich plane nämlich, ein paar Plug-Ins auf Basis der Spiele-Library Allegro 5 zu schreiben. Logischerweise benötigen alle Plug-Ins dann auch Allegro 5 (was somit mein Haupt-Modul wäre), aber ansonsten soll man - wenn man bestimmte Funktionen haben will - auch nur Teil-Module verwenden können, solange nur das Haupt-Modul vorhanden ist und die Library initialisiert hat. Geplant sind unter anderem eine Library für Musik (und somit alle Musik-Dateien, die von Allegro unterstützt werden) und eine Library für Tastenabfrage (Tastatur und Gamepad).
Das würde dann so aussehen:
-DynA5Main (Mindesvoraussetzung)
--DynA5Keys (Optional)
--DynA5Music (Optional)
--Weitere optionale, auf Allegro 5 aufbauende Plug-Ins
EDIT:
Nope, scheint wohl nicht so zu funktionieren. Schade!
Hi,
Ich habe versucht das Plugin zu testen und wurde sofort von folgenden Fehlermeldungen begrüßt:
Anhang 13748
Ach Mist... Das ist der GNU GCC Compiler. Scheinbar habe ich es wiedermal nicht hinbekommen, das Ding ordentlich statisch zu verlinken. :/
Ich gucke mir das ganze nochmal an.
EDIT:
So, neue Version ist oben (selber Link). Kannst du es nochmal ausprobieren? Hoffe das statische Verlinken hat diesmal funktioniert.
Ich hab zwar keine Ahnung von C++, aber das ganze scheint interessant zu sein :P
Bin am Überlegen ob ich vllt ein Mode7 Plugin schreibe? Kp xD
Das würde sicherlich schwer und performancelastig werden, denn letztendlich müsste das ja trotzdem alles über die Grafik-Engine des Makers laufen.
Wenn du Ahnung hast, wie M7 aufgebaut ist, nur zu.Zitat:
Bin am Überlegen ob ich vllt ein Mode7 Plugin schreibe? Kp xD
Mein Versuch, allein nur die perspektivische Anzeige ohne irgendwelche Rotationen zu machen (ohne Dyn),
laggt leider extrem und braucht etwa 180MB extra im RAM.
http://garden.magicmaker.cherrytree....-alpha009B.png
Okay, dann lass ichs lieber xD
Es würd mich aber wirklich interessieren, wie sowas mit Dyn läuft.Zitat:
Okay, dann lass ichs lieber xD
Naja, da man in Dyn ja Threads verwenden kann, sollte es zumindest theoretisch sein. Wobei ich jetzt nicht weiß, inwiefern man da mit der Grafik-Engine des Makers arbeiten muss. Die dürfte ja die größte Begrenzung bei dem ganzen sein, da man weiterhin alle Bilder darüber anzeigen muss.
Mit Referenzbildern die aussehen wie die Map und der Kopierfunktion von Destiny.
Wenn die jetzt noch selbst 2 Streckungsparameter hätte, könnte ich eine ganze Menge Rechenarbeit und RAM-Verbrauch sparen.