Hab ich? Cool. Gute Tat für heute vollbracht :hehe:
Ne. Sag an.
Druckbare Version
Erstmal muss ich sehen, wie es sich entwickelt. :o
Optimierer für Event Code? xD
Dazu reicht mein Assembler leider nicht aus. :O
Lasst euch überraschen! (Falls daraus jemals etwas werden sollte.)
Wird es mir was bringen... oder geht das Plugin eher in ne andere Richtung?:D
Kommt ganz auf dich an. ^^
Ich bin mir nicht ganz sicher, ob ich nicht im Programmwunsch und -erstellungsthread besser aufgehoben wäre, aber ok. oo
Wäre es möglich ein Plugin zu schreiben, was ein bestimmtes Zeichen aus einer Zeichenfolge ausgibt? Ich beschreibe mal, wie ich als Laie mir das vorgestellt habe:
Man gibt etwa in einer Variable oder dem Comment-Befehl zunächst die Zeichenfolge an, dann die Position des Zeichens, das man auslesen will, und zuletzt die Variable (oder ein Heldenname, wodurch man das evtl. mit anderen Plugins oder mit der Namens-Abfrage kombinieren könnte), wo das Ergebnis gespeichert werden soll.
In einer externen txt-Datei könnte man dann für Variablen festlegen, welches Zeichen welcher Zahl enstpricht (a=1, b=2, ... A=27, B=28, etc.). Dabei wäre es extrem geil, wenn man für die Position des Zeichens auch eine Variable angeben könnte und für die Zeichenfolgen auch \n[x] nutzen könnte.
Sähe dann etwa (ganz amateurhaft gedacht) so aus:
Bei Name Held 1 = "Hallo" und
Variable 0001 = 3 und
l = 12
@"\n[1]", V1, V2
=> V0002 = 12
bzw.
@"\n[1]", V1, name V2
=> Name Held 2 = l
Wäre das umsetzbar? Und falls es nicht zuviel Aufwand ist, wäre jemand so lieb? Das Ganze müsste bloß sehr flüssig laufen, da meine Idee ist, dahinter ein Message-System aufzubauen. Und bei einem längeren Text müsste ich den Befehl dann entsprechend oft in sehr kurzer Zeit nutzen.
Ich leite mal meine Anfrage aus dem Entwickler-Forum weiter - vielleicht ist sie hier besser aufgehoben.
http://s14.directupload.net/images/121030/77pvizf9.png
Der rot eingekreiste Kram soll weg. Stört nur und brauch ich nicht.
Beim rm2k geht das via Hyperpatcher, aber wie funktioniert das mit dem rm2k3?
Via Hyperpatcher geht da schonmal nix.
Gibt's da noch nen anderen Patch, mit dem man das bewerkstelligen kann?
Und (was optimal wäre) vielleicht auch die Möglichkeit einräumt, dass man
die letzte Zeile des Speicherslots, dort wo jetz die HP- und LVL-Zahlen stehen
in irgendeiner Weise selbst beschriften kann? Das wäre genial.
Mal kurz eine Frage xD
Wie genau erstelle ich Plugins mithilfe von DynRPG? Was muss ich öffnen um am Code etwas zu bearbeiten? ._.
Wie sieht es aus mit einem Plugin, welches das KS des 2k3 rundenbasiert macht und die ATB-Funktion entfernt? So, dass alle Helden nacheinander eine Aktion durchführen, dann die Gegner, dann wieder die Helden usw.
Wäre soetwas möglich?
Danke, werde ich mal ausprobieren :)
Würde mich wundern wenn man absolut nebenwirkungsfreie Atb-Entfernung allein durch ein Plugin hinbekommen würde.
Die Zeitpunkte wann Züge komplett vollzogen worden, also nach der Animation und Schadensberechnung lassen sich im DynRPG nicht und im Eventcode nur über einen Umweg feststellen.
Bei ein paar kurzen Tests mit einfachen Standard-Kämpfen hat es einwandfrei funktioniert. Ob allerdings Probleme auftreten, wenn man die Kämpfe mit Events komplexer strickt, kann ich noch nicht beurteilen.
Dafür habe ich sofort wieder etwas neues bemerkt, was mir nicht am 2k3-KS gefällt, nämlich die Formel zur Schadensberechnung. Könnte man soetwas auch über Plugins ändern?
Das mit den Events würde ich mal testen. Das gibt sonst ein böses Erwachen.
Bezüglich Formel ist mir nichts bekannt. Was stört dich denn daran? Bzw. was möchtest du? Gelegentlich muss man etwas um die Ecke denken um zu kriegen was man will, vielleicht ist dir ja zu helfen ;-)
Schade, dass es dafür (noch?) kein Plugin gibt. Ich werde dann einfach selbst nocheinmal probieren, ob ich es nach meinen Wünschen hinkriege, aber danke jedenfalls für die angebotene Hilfe. Wenn ich nicht mehr weiterweiß, komme ich gerne darauf zurück, werde dann dafür aber besser einen eigenen Thread aufmachen.
Ich würd gern erfahren, was dir daran genauergesagt nicht passt, nicht nur um dir helfen zu können, sondern weil ichs gewissermaßen bewusstseinserweiternd finde zu erfahren wie andere die Zahlenfucherei so angehen und was sie sich davon wünschen und erwarten.
Okay, eigentlich hat es sich schon erledigt. Beim erneuten Lesen der Hilfedatei ist mir nämlich aufgefallen, dass ich die Formel zur Schadensberechnung von Skills missverstanden hatte. Als Neuling war ich daher im ersten Moment etwas mit dem Balancing der Werte überfordert, aber nun hat sich das per richtiger Formel und Tabellenkalkulation erledigt und ich bin doch recht zufrieden.
Jetzt würde mich aber auch kurz interessieren was deine Erfahrungen mit der Schadensberechnung sind, denn dein Post lässt ja darauf schließen, dass du dich selbst ausführlicher damit beschäftigst.
Meine Gedanken gibts hier (Bischen älter aber noch nicht veraltet) http://www.multimediaxis.de/threads/...-Werteprogress.
Hi, sorry hab mir nicht alles durchgelesen, aber ich glaube nicht dass es schon genannt wurde. Bzw. ob das überhaupt der richtige Thread dafür ist.
Gibt es eine Möglichkeit (egal ob als Plugin oder ob man es sonstirgendwie raus"hackt") den Schatten vom Airship (Vehicle) verschwinden zu lassen? Blöderweise ist der Schatten der "Hero", wenn man das so sagen kann, sprich er ist auch die Kollisionsfläche für Events (Touched by Hero, Collision with Hero). Könnte man im gleichen Zuge diese "Kollisionsfläche" auf die Vehicle-Grafik selbst verschieben?
Oder aber, falls davon nichts ohne Weiteres machbar wäre, könnte man dann wenigstens dafür sorgen, dass der Schatten des Vehicles nicht über allem schwebt? Dass er z.B. hinter im Chipset auf Sternchen gesetzte Felder verschwindet?
Naja du kannst die entsprechende Stelle im Systemset, wo der Schatten zu sehen ist, einfach leer machen (rechts in der Mitte).
Okay, danke für den Hinweis. Dass das Ding im Systemset zu finden ist, daran habe ich nicht gedacht. Aber es bleibt ja das Problem der "Kollisionsfläche", kA das klingt ziemlich beknackt aber es stellt für mich noch ein Problem dar. Wenn man z.B. ein Event (Collision with Hero) berühren will, muss man normalerweise mit dem Schatten des Vehicles dieses Event berühren und nicht mit der Fahrzeuggrafik selbst (da sie ja ein Tile über dem Schatten ist). Vor allem für Spieler, die den Maker nicht kennen, wäre das sehr verwirrend (vor allem, wenn ich den Schatten nun einfach entferne). Dann müsste man theoritisch mit der unsichtbaren Stelle (wo eben vorher der Schatten war) das Event anfahren. Gibt es eine Möglichkeit, dass die Fahrzeuggrafik selbst sozusagen "Schatten wird" ?
Leider nein.
Wozu brauchst du das Fahrzeug aber dann genau? Kannst du nicht stattdessen die Fahrzeugsfunktion selber nachbauen?
Schade, aber hätte ja sein können ^^
Naja ich nutze die Funktion oft in meinem Spiel. Ich hatte zu Beginn überlegt, ob ich es tatsächlich mit Vehicles machen sollte oder ob ich einfach die Grafik des Helden ändere und Change Tileset oder sowas nutze (man soll Gebäude usw. überfliegen können, aber nur bis zu einer bestimmten Grenze). Für mich schien das mit den Vehicles erstmal die einfachere Lösung zu sein und es jetzt zu ändern, wäre sehr arbeitsaufwendig. Ich werde es erstmal dabei belassen, mal schauen wie es ankommt. Trotzdem danke!
Da brauchst du nicht Change Tileset, sondern einfach nur dem Helden den Phasing Mode anmachen, dann kann er überall durch (oder drüber in diesem Fall) - Move Event: Hero > Phasing Mode ON. Das Problem was mir aber grade auffällt ist dass der Held dann immer noch unter den "Above Hero" Dingen angezeigt wird... Um das zu umgehen müsstest du den Helden unsichtbar machen und stattdessen ein Picture an dessen Position anzeigen (und animieren)...
Ja, es stimmt, das ist wesentlich komplizierter als Vehicles.
Das Thema ist ja immernoch relevant, deshalb denke ich mal, dass der Push nicht so schlimm ist.
Ich weiß, dass es ein Plugin für Sin/Cos/Tan/Wurzeln gibt, aber gibt es eine Möglichkeit, ein Plugin zu schreiben, das die function Math.atan2(x,y) ermöglicht? Die bräuchte ich nämlich grade echt. :V
Bau ich dir, warte mal eben. ;-)
Edit:
Okey, so schnell gehts doch nicht. Hast du eine übliche Art und Weise wie solche Plugins bei dir aufgerufen werden? Per Switch, per Comment?
Benutzt du das von Cherrys Website namens "elsemieni_math" ?
Okey, kriegst morgen eine Version die atan2 auch kann.
Hey, hier dein atan2. Basiert auf dem Code von E.NI und tut noch immer dasselbe, kannst das Ding also als Ersatz mit Zusatzfunktion betrachten.
Download: Kompilierte Version,Projektdateien und Sourcecode
http://share.cherrytree.at/showfile-12566/cortimath.zip
Und ja, der Code hat etwas mehr Zeilen und Redundanz, aber lieber zur Laufzeit ignorierte Redundanz als mehrere Stringvergleiche ;-)
Die Funktion gibt, wenn sie einen Befehl ausgeführt hat, nicht false zurück. Das ist zwar an sich kein Problem, wollt nur mal anmerken dass sie das eigentlich sollte, damit, auch wenn aus irgendeinem Grund 2 Plugins denselben Befehl behandeln, nicht beide anspringen sondern nur eines (welches in der Reihenfolge zuerst kommt) - letzteres ist nämlich immer noch besser als wenn ein Befehl zwei Wirkungen gleichzeitig haben kann.
Naja, da ich selber nicht gut genug bin um das auch nur ansatzweise zu bewerkstelligen, werfe ich das einfach mal in den Raum...
Die Möglichkeit während der Laufzeit eines Spiels Charsets zu verändern und zu benutzen um so zb. Rüstungsteile an einen Charakter anzuzeigen...
Wozu verändern? Drüberzeichnen. onDrawEvent( RPG::Character * character, bool isHero )
Der RPG::Character hat eine Facing-Direction und mit step einen Wert, der den aktuellen Animationsschritt angibt. Das reicht um präzise zu wissen was man drüber Zeichnen muss um mögliche Rüstungen darzustellen.
Gibts dann nur ein winziges Problem, nämlich dass es nicht im Shop dargestellt wird.
Verändern wird übrigens (sofern man die Datei verändern will) auch nicht gehen weil der Maker Charsets cacht.
Gut das mit dem Shop ist dann zwar ein Makel, aber schön das es doch geht^^...
An diesen Callback habe ich gar nicht gedacht, ich denke einfach zu kompliziert...
Irgendwas ist immer ^.^
Das mit dem Shop könnte man storytechnisch erklären - vor dem Rüstungsshopbesuch entledigt sich der Held einfach der Rüstung, um neue anzuprobieren oder so. :]
Genau, man kann den Helden in der Database mit Unterwäsche einstellen und im Laufe des Spiels die Rüstung drüberzeichnen.
So hat er dann auch im Shop-Menü ein neutrales Aussehen.
Hmph, ich habe in letzter Zeit wohl einige Fragen ._.
Naja, ich will eine halbwegs funktionierende KI mit DynRPG schreiben, problem dabei ich habe keine Ahnung wie man ein Pathfinding skript bastelt, dachte ich mir benutze ich halt das Plugin das schon existiert, leider will ich kein Event bewegen sondern erstmal abfragen ob man es bewegen kann und wie viele Schritte das ganze benötigt. Und das mehrmals hintereinander somit kann ich auch nicht mit einem unsichtbaren TestEvent arbeiten...
Und wenn ich schon dabei bin, ist es sinnvoll bestimmte Plugins innerhalb meines eigenen Plugins anzuschreiben? Zb. um das Message Box Plugin von Kazesui selber anzusprechen ohne das man dafür einen Comment benutzen muss? Ich könnte ja theoretisch einfach selber die Funktion OnComment aufrufen und meine Parameter angeben, nur keine Ahnung ob das nicht zu Problemen führt ._.
Theoretisch könnte man GetModuleHandle und GetProcAddress verwenden, um einen Pointer auf ein Callback eines anderen Plugins zu bekommen. Das ist so aber eigentlich nicht vorgesehen; es sei denn ein Plugin stellt bewusst eine zusätzliche Funktion auf diesem Wege zu Verfügung. Es kann aber natürlich funktionieren.
Naja, wollte ich auch nur wissen dann werde ich mein Plugin halt so gestalten das ich meine KI im Maker schreiben kann XD
Der Code hier müsste theoretisch gehen, für deinen Fall. Aber nur unter der Annahme, dass das Plugin, was du aufrufst, wirklich nur parsedData verwendet und nicht versucht, irgendwas mit text, nextScriptLine oder so zu machen:
Code:typedef bool __cdecl (*ONCOMMENT_CALLBACK)(const char *, const RPG::ParsedCommentData *, RPG::EventScriptLine *, RPG::EventScriptData *, int, int, int, int *);
HINSTANCE hInstOtherPlugin = GetModuleHandle("name_of_other_plugin");
if(hInstOtherPlugin) {
ONCOMMENT_CALLBACK alienOnComment = GetProcAddress(hInstOtherPlugin, "onComment");
if(alienOnComment) {
RPG::ParsedCommentData fakeCommentData = {0};
strcpy(fakeCommentData.command, "command_to_be_called");
fakeCommentData.parametersCount = 2;
fakeCommentData.parameters[0].type = RPG::PARAM_NUMBER;
fakeCommentData.parameters[0].number = 1234;
fakeCommentData.parameters[1].type = RPG::PARAM_STRING;
strcpy(fakeCommentData.parameters[2].text, "Hello World!");
try {
if(!alienOnComment(NULL, &fakeCommentData, NULL, NULL, 0, 0, 0, NULL)) {
// Yesss! The other plugin seems to have handled our fake request!
} else {
// The other plugin returned true, i.e. it probably didn't handle the request
}
} catch(...) {
// Oops, something crashed - maybe the other plugin tried to access something we didn't provide, such as the event script data
}
} else {
// The other plugin seems not to have an onComment handler...
}
} else {
// The other plugin seems not to be loaded...
}
Ist es möglich, die Menü-Dinger von Row und Aktiv/Passiv in einen Switch umzuwandeln, der irgendwas aktiviert? Mit Save_Switch_1005 hattest du das ja bereits wunderbar für die Menü-Speicherfunktion umgemodelt =)
So, wie ich das verstanden habe, gibt es so etwas schon:
http://rpgmaker.net/forums/topics/13468/
Unter CMS Tools: Menu Transition Tweaks.
Aber mein Englisch ist mies, also noch einmal besser selbst durchlesen :)
- Das Inno -
Nein, das bezieht sich darauf, den Übergang vom Menü auf ein eigenes Untermenü (mit dem Save oder Order Switch Plugin) besser zu machen.
Yo, gibt es die Möglichkeit, irgendwie die Positon der Textbox anzupassen? Es muss nicht die Box sein, die Position der 4 Zeilen text alleine reicht theoretisch.
Ich sehe, dass man dort Order und Quit für Switches gebrauchen kann, nicht aber Row und Aktiv/Passiv.
@Cherry: Ist es überhaupt möglich, diese beiden Menüpunkte für Switches zu benutzen?
Alles ist möglich, es müsste nur wer anpassen. (Nein, ich jetzt nicht.) Du kannst PepsiOtaku ja fragen...
Wäre es möglich ein Plugin zu schreiben welches den Text aus einer Spritefont zieht und damit die Schriftart des Makers ersetzt?
Verzweifle nämlich langsam an der Schriftart des Makers und würde diese gerne ersetzen....nur passende Fonts habe ich bis jetzt nur
auf Spritefonts auf Spriters-Resource gefunden......
Wenn ich denn mal ein onDrawCharacter-Callback mache (was ich vorhabe), hoffentlich. Im Moment wirds wohl schwierig.
Nun zu etwas eher Exzentrischen: Ich überlege seit längerem, ob es nicht eine Möglichkeit gibt, Monster in ihrem Level skalieren zu lassen. Das Feature würde ich gerne als Plugin lösen, ich bräuchte also ( mal wieder ) Speicheradressen-Knowhow.
Ich bräuchte:
- lesenden und schreibenden Zugriff auf die in der aktuellen Monsterguppe befindlichen Status-Werte ( Atk, Def, Int, Agi , Exp, Gold )
- lesenden und schreibenden Zugriff auf die Monsterdatenbank und deren Werte. Ich gehe mal davon aus, dass die getMaxHp-Funktionen etc. der Monster auf die Einträge der Datenbank verweisen.
Was ich tun würde:
- Werte des Monsters aus der DB auslesen und in eigener Datenstruktur sichern
- MonsterEintrag in DB und in Monstergruppe mit aktuellen Werten überschreiben
- Nach Kampfende die Originalwerte zurückschreiben
Was ich beisteuern kann: (weniger für Cherry als für bugmenot )
static RPG::CatalogPtr<RPG::Monster *> &monsters = (**reinterpret_cast<RPG::CatalogPtr<RPG::Monster *> **>(0x4CDE64));
Dort sind die aktuellen Monster.
Monster (TLcfgMonsterItem) erbt von ( TLcfgUnitItem ), die Aufrufe von getMaxHp werden in DynRPG über die vTable gemacht. Was sind das, Funktionszeiger?
Keine Ahnung, wie man den Zugriff von RT -(read)-> DB auf RT -(write)-> DB umdrehen kann.
Da steht mehr als nur die PartySize drin? Hm...
vTable? Nevermind...
Unter TLcfgMonsterItem und TLcfgUnitItem befinden sich Funktionen zur Vergabe und Berechnung von Werten/Schaden/Logik:
Hey, danke für deine Mühen. So hardwarenahes entspricht nicht unbedingt meinem Metier, als verzeih, wenn ich blöde Sachen frage ;-)
In deiner Tabelle gibt es
481748(2k)|4BFB28(2k3) <>GetStr
Die Adresse entspricht dabei der hier aus Cherrys Battler-Klasse.
D.h. eigentlich müsste ich mir analog dazu mit dem hier 4BD7AC(2k3) <>SetEnemy_Atk, eine setAttack-Funktion basteln können, wenn ich anstatt des this den Zeiger auf das Monsterobjekt übergebe, oder inwiefern irre ich mich da?Zitat:
int Battler::getAttack() {
int ret;
asm volatile("call *%%esi" : "=a" (ret) : "S" (0x4BFB28), "a" (this) : "edx", "ecx", "cc", "memory"); // GetATK
return ret;
}
Also das this als Input ist eigentlich ein Verweis auf die Adresse, an der alle notwendigen Daten für die Kampfteilnehmer geschrieben stehen. Das Problem ist, dass die SetEnemy[XYZ]-Funktionen sich daraus nur die Enemy_ID rauspicken und anhand dieser den Eintrag aus der .ldb laden.
Also:
Basteln: ja (Den output hinter jedem call sub_482A80 <>GetEnemyParam mit einem zugewiesenen Wert multiplizieren)
Aber eher: nein (Ich habe 86 byte Spielraum bei den ganzen SetEnemy[XYZ]-Funktionen. Ich schaue mal, was sich machen lässt. Gib mir einen oder besser zwei Momente.)
+Post #137 nochmal in Ruhe durchles+
Du brauchst also eine Funktion, die die gesamte RPG_RT.ldb ausliest und in eine RPG_RT.cdb schreibt, auf die du vollen Zugriff hast, und die Funktionen, die normalerweise aus der .ldb lesen, müssen auf die .cdb umgeleitet werden?
An offset 0047DDB8 kann man auf den Dateinamen der Datenbank verweisen, aus der gelesen wird. Würde jetzt heißen, man müsste onStartUp "copy RPG_RT.ldb -> create RPG_RT.cdb" machen und dann halt Werte in der .cdb umschreiben. In der RM Interna stand irgendwas über die Struktur der LcfDataBase. Mehr kann ich nicht sagen, weil ich habe keine Ahnung von EDV und so...
Das klingt jetzt plötzlich sehr umfangreich.
download MonSca(fixed)
Edit: (15.06.14)
...da ist wohl was schiefgelaufen. Sorry.
Edit:
Wer aus irgendeinem Grund FastFadeIn benutzt... well, don't use it.
Ansonsten könnte ich mal schauen, wo ich den Code hinschieben kann.
Ohhhhh das wird morgen gleich mal geprüft. Geil ^_^
Die Berechnungsformel Wert + (Wert * Var) halte ich aber für ungünstig.
Wäre ( Wert *V ) /1000 auch drin?
Sicher geht das. Siehe Post #142.
Geil, danke :-D morgen wird getestet, muhahahaha
Edit:
ID-Gold=4BD7C,#1008, der Addresswert ist ein Zeichen zu kurz.
Wie wird die Item-ID Berechnet? Auch mit der Formel?
Edit: Ich kriege Division by zero mit der (fixed)-Variante, auch wenn ich die Werte alle auf 1000 setze.
Ausserdem ist es schwierig Variablen im Kampftestmodus auf Defaultwerte > 0 zu setzen. DynCallbacks kommen entweder beim Start ( danach werden die Arrays auf 0 resettet ) oder zu spät ( beim Zeichnen, und vorher knallts schon )
Es wäre gut wenn für den Fall, dass Variable = 0, einfach der eingestellte Wert genommen würde. Geht das?
So, ich hab mir jetzt ein schönes KS-Setup mit Cortis Patches gebastelt, allerdings habe ich noch ein Problem:
Folgende Boxen:
http://i.imgur.com/KeWOKMm.png
Diese Box wäre unten links in der Ecke viel besser aufgehoben (oder unten rechts, halt.. unten).
http://i.imgur.com/O56Kgom.png
Diese Boxen wären ebenfalls unten orientiert besser.
Kann man da was machen? (:
EDIT: Ich hab jetzt nochmal etwas rumprobiert und mich doch für das horizontale Layout entschieden.
http://i.imgur.com/WeJnyZA.png
Allerdings sehe ich zumindest keine Option, den X-Wert der HUD-Elemente zu verschieben (Können auch alle auf einmal sein, die Feingliedrigkeit mit den einzelnen Leisten und so ist da unnötig). Ich würde die halt gerne rechtsbündig haben. :0
Boah, ich verlang hier schon wieder voll viel. D;
Das ist schonmal super, allerdings bereit mir das ebenfalls etwas Probleme. Ich habe folgende Quickpatches geschrieben:
SelectionPos=497F1D,#160
SelectionPos2=497E81,#160
und die funktionieren auch soweit.. für das ausgewählte Fenster. Während im Fenster kein Cursor ist, ist es immernoch an oberer Position. Ich nehm jetzt mal ein paar Patches raus und schau, ob das vielleicht von irgendwas beeinflusst wird.
MonSca sollte nun eigentlich laufen. Siehe Post #142.
Schau einfach mal nach:Zitat:
Zitat von DynRPG.ini
495CBC <>DrawItemMenu
495F90 <>DrawSkillMenu
in meinem Trippelpost im Programmwunschthread (Krimskrams 3/3)
Die Item/Skill-Fenster kannst du so locker runtersetzen.
Wegen dem Info-Fenster: Nein, jetzt nicht. Dafür muss man den ganzen Code in beiden Funktionen rumschieben.
Im Moment habe ich keine Lust meinen Patch umzuschreiben.
Edit:
Das alte "Face(dx)=..." ersetzen.Zitat:
Zitat von DynRPG.ini
(Kann das bitte noch in den "Wie ich die ATB-Leiste wegbekomme" Post hineineditiert werden?)
Ansonsten sind die restlichen HUD-Elemente doch über die QuickPatches mit dem (x) verstellbar?
Ui, vielen Dank! Das hilft mir schon ungemein und bestimmt auch anderen. (:
Eine Sache noch:
Hier komme ich nicht über %127 bzw 7F hinaus. Jeder Wert darüber lässt die Faces verschwinden. Ist das irgendeine Grenze oder wieder sowas wie >das mit dem #256<? ;0Zitat:
Face(x)=496AC5,83C1,496AC7,%0
Jein.
Edit:Zitat:
Zitat von DynRPG.ini
Oooooh. Kann man die ganzen (dx) auf Minuswerte stellen und dann bei jedem zusätzlichen Gruppenmitglied das HUD nach links hin adden lassen?
Edit²
Hier noch der Rest:
Ging nur von -127 bis +127, da ich nie auf die Idee gekommen wäre, dass das jemand rechtsbündig + nach links addierend haben möchte.Zitat:
Zitat von DynRPG.ini
Edit³
Wenn man die neuen " ***(x)=... " QuickPatches in die DynRPG.ini kopiert, dann kann man die alten " ***(x)=... " Zeilen wieder löschen.
Hm, ich hab testweise jetzt nochmal die ganzen Einstellungen zurückgesetzt und die (Far-x) Teile hinzugefügt, und bekomme beim Starten des KS einen "Range Checking Error".
Hmmm...
Hast du schon den neuen DynLoader im Spielverzeichnis?
Ich gehe gerade den Code nochmal durch... ...
Edit:
Habe bei mir einen Copy&Paste-Fehler gefunden:
HPD(dx)=496B33,%80,496B66,%80,496B96,%80,496BC1,%80
Hm, ich hab sie grade mal ausgetauscht und bekomme dann eine
http://i.imgur.com/usc1sfP.png
Hmm... :\
Lade dir mal den Dyn0.20 pre-Release herunter.
Bei Dyn0.17 tritt bei mir auch dauernd ein RangeCheckingError auf... Wurde dort zufällig % mit # vertauscht?
Ah, das war offenbar das Problem. Ausgezeichnet! Das letzte Problem auf der Liste (tut mir echt Leid! q_q) wäre dann noch etwas zum Skill/Itemfenster:
Ich hab aus dem Krimskrams 3/3 die entsprechende 2k3 Adresse für die y-Position rausgesucht (jedenfalls denke ich, das es die ist) und versucht sie zu verändern, folgendermaßen:
ItemY=4C88CE,1E
Allerdings spuckt mir dass dann ne Access Violation (address 004C88CF and offset 00182B91 of type Write) beim öffnen des Itemmenüs aus? Mach ich irgendwas falsch? p_p
Ein paar Zeilen dadrüber. (Deswegen bietet es sich immer an, die RT vorher mit einem Disassembler zu öffnen und zu schauen, wo ein mov ecx,<Nummer> steht und welche Adresse man genau verändern kann)
Okay, jetzt funktioniert alles. Vielen Dank nochmal! (:
Mehr... Zeug!
download InfoDisloc
...die D0 00 sind jeweils y-Pos = 208 (ja, hol deinen Taschenrechner raus)Zitat:
Zitat von DynRPG.ini
Ist für die QuickPatch-Funktion von DynRPG neben dem % und # auch eine Funktion für 2 Bytes geplant?