Hast du alle drei Zeilen so eingefügt? Bei mir klappte das genau so und Dark Sword benutzt das auch und es funktioniert.
Hast du alle drei Zeilen so eingefügt? Bei mir klappte das genau so und Dark Sword benutzt das auch und es funktioniert.
--CortiWins GitHub DynRPG < Charguide < [2k3] Zahlen und Werte < [2k3] Kurven als Wertetemplates < [2k3] DynRPG Werkstatt
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Hello from the otter side
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Also ich hab in der .ini ganz oben
eingefügt. Als Testwerte hatte ich 50 ATK und 30 DEF, sowohl bei mir als auch beim Gegner. Hat im Endeffekt um die 20 Schaden gemacht. Ohne Quickpatch ebenfalls. Und Testweise hab ich dann einfach mal die #5, #10, #10, #20 vom SkillDmgRevamp auch noch bei Player und Enemy einegfügt, also
Hat aber auch nichts gebracht. Ich hab bisher keine Quickpatches, vielleicht steht das Ding auch an einer falschen Stelle in der .ini (aber die Position dürfte doch eigentlich egal sein, oder?)
Hast du DynRPG in der Version, die QuickPatches unterstützt?
--CortiWins GitHub DynRPG < Charguide < [2k3] Zahlen und Werte < [2k3] Kurven als Wertetemplates < [2k3] DynRPG Werkstatt
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Hello from the otter side
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Hast du im Ordner DynPatches zufällig RPS[+].ips oder PDFix.ips rumflattern? (ansonsten gilt das PlayerDmgRevamp= und EnemyDmgRevamp= von der oberen CODE-Box)
In den readmes steht, dass die Adressen dafür anders sind:
(für Gegner und Helden; normaler [Attack]-Befehl)Zitat von DynRPG.ini
Ähm... nein. Eine einzige zweistellige Zahl wird sich nicht auf magische Weise von selbst ausmisten und sich auch nicht zu mehreren Prozessoranweisungen kompilieren.Zitat
Falls der DynRPG Loader beim Start nicht "Error in quick patch [...]" ausgibt, dann solltest du sicherstellen, dass du die 0.20 Version von DynRPG hast. Bitte eine neue RPG_RT.exe nehmen, auf der bisher noch kein DynRPG draufgepatcht wurde.
Edit:
Ansonsten kann ich das mit den Stats oberhalb von 999 nochmal zusammensuchen.
Erwarte aber keine Wunder mit Schadenszahlen, solange kein Callback onDamageCalculation existiert.
Man sollte mittels Plugin nachverfolgen können, welche Items im Shop gekauft / verkauft werden:
unsigned char ShopSubScene = ( *reinterpret_cast<char ***> (0x4CDE4C) )[0][12];
Beim Array mit den verkauften Items bin ich mir nicht ganz sicher.
Ich kann den Zugriff auf den Pointer auf das Array momentan nur in (mehr oder weniger) numerischer Form angeben:
int ShopListArraySize = ( *reinterpret_cast<int ****> (0x4CDE4C) )[0][7][2];
int ShopListArrayPtr = ( *reinterpret_cast<int ****> (0x4CDE4C) )[0][7][1]; // Inhalte vom Array sind jeweils 4 Byte / long int groß
Wobei im Array dann [0] = Item#1 Item_ID, [1] = Item#2 Item_ID, etc.
Entweder per C++ das Array ausweiten (wäre empfehlenswert) oder versuchen die RPG_RT-interne Funktion dafür aufzurufen:
Könnte sein, dass es dort irgendwo knallt, weil der Pointer normalerweise mittels load effective address in das Register geladen wird...
Geändert von bugmenot (21.02.2015 um 18:48 Uhr)
Okay, der Quickpatch geht jetzt, hatte noch ne alte Version drin.
Haben die Gegner im 2k3 eigentlich sowas wie Aggro Verhalten? Falls ja, könnte man das durch Statusveränderungen auf den Charaktere beeinflussen? Also das ein Charakter Status X hat, wodurch er nun zu 40% angegriffen wird. Oder Status Y, dass er zu 70% angegriffen wird. Oder gibts dazu schon ein Dyn Plugin?
Standard: Reiner Zufall. Ich meine im amerikanischen Raum mal ein Plugin gesehen zu haben, dass laut Beschreibung wohl einen mit einer bestimmten Condition belegten Helden zum bevorzugten Angriffsziel macht.
Das umfangreichste mir bekannte System dieser Art ist mein eigenes aus meinem Kampfsystemspielplatzprojekt, eine Art "World of Warcraft-Aggro Light" für Rundenkampfsysteme.
Ich habe für Dark Sword ein Plugin in der Planungsphase, dass so etwas ähnliches bietet und als Teil meiner PluginSammlung veröffentlich werden soll, aber das ist Zukunftsmusik. Das überschneidet sich mit dem Thema KI und dort sehe ich noch Raum für eine Menge Spielereien, denn mit DynRPG kann man dort gut wirken.
--CortiWins GitHub DynRPG < Charguide < [2k3] Zahlen und Werte < [2k3] Kurven als Wertetemplates < [2k3] DynRPG Werkstatt
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Hello from the otter side
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Ich habe ein Problem mit dem ItemEquipSkillmenüfix von elvissteinjr
http://www.multimediaxis.de/threads/...=1#post3075375
https://dl.dropboxusercontent.com/u/...pSkillMenu.ips
Der Patch benutzt die Variablen 3386 und 3387. Der Bereich ist bei mir belegt mit einer umfangreichen Datenstruktur.
Normalerweise kann man einfach ändern durch verhexen der ips Datei.
3386 = 0x0D3A, in der IP findet man einmal 3A0D, übliche Schreibweise in IPS-Daten.
Wenn ich das jetzt ändere:
-> in Dez.65 , also 0x001A ( in IPS: 1A00) -> gibts einen Crash bei Verwendung
-> in Dez.3366 , also 0x0D26 ( in IPS 260D ) -> wird es ignoriert und weiterhin die Defaultadresse benutzt.
Ich würde das gerne verstehen.
--CortiWins GitHub DynRPG < Charguide < [2k3] Zahlen und Werte < [2k3] Kurven als Wertetemplates < [2k3] DynRPG Werkstatt
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Hello from the otter side
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Die Variable ID steht zweimal im Code. Einmal direkt, wie bereits richtig erkannt, und einmal als Adressenoffset zum Variablen Array.
Sprich: Ändere Offset 0xd4 in der ips Datei zu (VarID - 1) * 4, also beispielsweise dez. 256 bzw. hex 0001.
Ungetestet, sollte aber so hinhauen.
Geändert von elvissteinjr (05.03.2015 um 17:49 Uhr)
Ich versuchs mal. Danke dir :-)
Edit: hat Funktioniert mit 3366 als neue Variable. Wenn ich versuche die 65 zu benutzen gibt es weiterhin Probleme. Kurios.
--CortiWins GitHub DynRPG < Charguide < [2k3] Zahlen und Werte < [2k3] Kurven als Wertetemplates < [2k3] DynRPG Werkstatt
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Hello from the otter side
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Geändert von Corti (06.03.2015 um 07:27 Uhr)
Ich möchte in meiner Textbox (RM2k3) im Text sehen wie weit ich schreiben kann bevor es "weggeschnitten" wird. Ich weiss nur, dass es da mal ein Programm zum Bearbeiten gab... worin ich dann Änderungen vornehmen kann... Forensuche ist ohne Ergebnis geblieben... wer kann mir helfen?
Hab das erst letztes Mal irgendwo gepostet, da bin ich mal so frei, es ist immer noch bei meinen Anhängen dabei: msgbox.zip
Wenn du eine individuelle TB hast, kannste dir halt einfach merken, wie viel Zeichen in die Zeile passen, die wird in dem Programm nämlich angezeigt
Ich weiß garnicht wem du für dieses tolle Programm danken musst ^^; müsste fast mal nach dem Author sehen...
-----------------------------------------------------------
muh...
In diesem Thread gibt es eine Anleitung, wie das Problem mit einem Resource Editor behoben werden kann. Meinst du das?
--"Banjo, you're a BEAR... and I will teach you... THESE MOVES!"
Gibts theoretisch eine Möglichkeit die EXP Kurven zu beeinflussen? Die vom 2k3 ist nämlich ziemlich kacke.
Mal etwas genauer: Im 2k3 kann man nur einstellen, dass jedes Level X EXP mehr braucht. Z.B. 1000 -> 1500 -> 2000 -> 2500 -> ... also immer 500 mehr pro level. Oder 800 mehr. Oder 1000 mehr. Aber ich hätte gerne etwas, dass es kein fester sondern ein steigender Wert wäre. Also z.B. 1000 -> 1500 -> 2100 -> 2800 -> 3600 -> ... also 500, 600, 700, 800, etc. Oder eben nochmal anders, z.B. ne art exponentielle Kurve oder etwas ähnliches. Ginge sowas mit Dyn?
Primary ist ein Fixwert für den Ext-Wert Pro Level, der immer da ist, als Konstante.
Secondary wird mit dem Level multipliziert.
Wenn du also einen Anstieg a la 500, 600, 700 pro Level willst, dann P=400,S=100,T=0.
--CortiWins GitHub DynRPG < Charguide < [2k3] Zahlen und Werte < [2k3] Kurven als Wertetemplates < [2k3] DynRPG Werkstatt
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Hello from the otter side
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Hab mich vielleicht etwas schlecht ausgedrückt. Ich hab zur Zeit P = 250, S = 500, T = 250. Da brauch ich dann 1000, 1500, 2500, 4000, 6000... also immer 500 mehr als für das vorherige Level benötigt wurden. Es steigt halt so immer fest um diese 500 Punkte an. Aber es soll eben nicht um einen festen Wert ansteigen sondern mit jedem Level um mehr ansteigen. 500, 600, 700, 800... statt 500, 500, 500, 500. Und das geht mit dem 2k3 nicht.
Statt dem was auf dem Bild steht sollten die Werte für die Level eher sein:
1: 1000
2: 1500 (+500)
3: 2100 (+600)
4: 2800 (+700)
5: 3600 (+800)
6: 4500 (+900)
7: 5500 (+1000)
etc.
Edit:
Hier nochmal das gleiche aus dem 2k. Zwar sind die Werte da maximiert, aber da sieht man, dass es eben nicht mit jedem Level um einen fixen Wert ansteigt, sondern mit jedem level immer mehr wird:
Wäre es wie beim 2k3 würde es nach Level 2 so aussehen:
1: 50
2: 100 (+50)
3: 150 (+50)
4: 200 (+50)
5: 250 (+50)
6: 300 (+50)
7: 350 (+50)
Geändert von Sölf (12.03.2015 um 15:39 Uhr)
Achso~
--CortiWins GitHub DynRPG < Charguide < [2k3] Zahlen und Werte < [2k3] Kurven als Wertetemplates < [2k3] DynRPG Werkstatt
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Hello from the otter side
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Es gibt nur zwei/vier Stellen in der 2k3DirectItemEquipSkillMenu.ips die entsprechend geändert werden sollten:
Var_3386 (Item 0; Equip):
0xC9 = Var_ID; safety check, ob VarArray nicht bis zu dieser Var_ID initialisiert ist
0xD4 = (Var_ID -1)*4
Var_3387 (Skill):
0x1B = Var_ID; safety check
0x26 = (Var_ID -1)*4
Dass es mit 1000 anfängt irritiert irgendwie.
Ansonsten wäre die simpelste Lösung einfach nur den Editor anzupassen:
download DBX.ini
P = 0
S = 500
T = 0
Und wenn es nicht simpel sein soll, dann gibt es immernoch den Overkill:
Wenn richtig viel Einfluss da sein soll ("mehr exponentieller", eigene EXP-Listen, Ändern der EXP-Kurven während des Spielens, etc.), dann wird das (nur) über ein entsprechendes Callback gehen können. Du kannst gerne irgendwo beantragen, dass dies auf irgendeine Liste gesetzt wird, um dann in einer späteren Version aufzutauchen.
Du kannst auch einen Blick da rein werfen:
download ExpBug-in
Frag jemanden, der mit C++ versiert ist, falls die EXP-Kurven über ein paar Textzeilen in der DynRPG.ini konfiguriert werden sollen oder ganze EXP-Sheets für jeden Helden eingelesen / bearbeitet werden sollen. Jede x-beliebige Person sollte mit z.B. Code :: Blocks und etwas Mathematik daran rumschrauben können (oder Werte aus Variablen, zB. für's Skalieren von Schwierigkeitsgraden, in die Rechnung hineinnehmen können.)
Sorry, ich kann gerade nicht mit dem Auslesen von Text / Zahlen aus irgendwelchen Textdateien oder verschlüsselten Dateien (damit nicht jeder Spieler daran rumpfuschen kann) dienen. Dafür reicht bei mir weder das Verständnis für C++ noch allgemein das Verständnis für's Programmieren.
Für ein Pseudo-Callback reicht es aber aus irgendeinem Grund.
Geändert von bugmenot (18.03.2015 um 16:18 Uhr)
Ich habe ein Problem. Die Wettereffekte sind unter den Pictures. Über den Pictures will ich sie aber auch nicht haben.
Ich schätze mal an der Stelle nach Events/Chipset und vor den Pictures wird eine Funktion aufgerufen um die Wettereffekte zu zeichnen, sofern diese aktiviert sind. Ich würde diese Funktion gerne im Plugin zu einem von mir gewünschten Zeitpunkt aufrufen.
Makeraufrufe werden in DynRPG so gemacht.
asm [volatile] ( AssemblerTemplate
: OutputOperands
[ : InputOperands
[ : Clobbers ] ])
Der Call kriegt "esi" mit und bezieht sich damit auf Register "S", welches in den Inputs mit einer Adresse beschrieben wird.
Als ersten Schritt müsste man also wissen, welche Adresse die Funktion zum Zeichnen der Wettereffekte hat und welche Parameter dafür notwendig sind.
--CortiWins GitHub DynRPG < Charguide < [2k3] Zahlen und Werte < [2k3] Kurven als Wertetemplates < [2k3] DynRPG Werkstatt
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Hello from the otter side
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬