Home Risen Risen2 Risen3 Forum English Russian

Registrieren Hilfe Kalender Heutige Beiträge
Seite 3 von 3 « Erste 123
Ergebnis 41 bis 46 von 46
  1. #41 Zitieren
    General Avatar von tombom81
    Registriert seit
    Jun 2015
    Beiträge
    3.159
    Zitat Zitat von Stormwind93 Beitrag anzeigen
    Hast du einen Tutorial Link? Ich hab keine Ahnung von jumbs ^^
    Würde es auch gehen am Ende Bytes hinzuzufügen?
    Und die soll ich dann verknüpfen = Jumb ? xD
    Weiß nicht, ob Kusch da nochmal reintaucht; ich hab's mal ausprobiert mit einer Sprunginsel (führt den ursprünglichen code aus, der noch ersetzt werden muss):

    [Bild: Sprunginsel.jpg]

    (Gab überraschenderweise keinen Absturz und kein Problem mit dem Tagesclient; der "wirkt" wohl nur beim
    Starten des games.)

    Es wäre schon gut, wenn du grundsätzlich über x86 Assembler Bescheid wüsstest. Allerdings lernt man das nicht "mal schnell".

    Ich glaube auch nicht, dass es damit getan ist, den push 64 durch push int16 zu ersetzen, denn dann muss man die 2 bytes auch wieder vom Stack holen, also weiteren code anpassen. Aber wo passiert das?

    Man kann da lustig durchsteppen (und immer den Wert 0x64 auf dem stack im Auge behalten). Anstrengend, ziemlich komplex.

    btw, was spricht dagegen, nur das Heal_MediumEnhanced zu modifizieren?
    "in der Erkundung dieser weiten und wunderbaren Welt" (post #70, höre link unten)
    TAS for Elex 2 at ELEX II Nexus - Mods and Community (nexusmods.com)
    Tuvok, scannen Sie den Planeten nach Mikroplastik!
    "Hört mir bloß auf mit "Stormson".
    "In Toussaint wird schon für kleinere Schmähungen als diese Satisfaktion verlangt."
    Genug der "Blumensträuße". Ich WILL MadBob! Beugt die Realität!
    tombom81 ist offline Geändert von tombom81 (23.01.2023 um 15:33 Uhr) Grund: Der Glauben war falsch.

  2. #42 Zitieren
    Abenteurer
    Registriert seit
    Mar 2019
    Beiträge
    56
    Zitat Zitat von tombom81 Beitrag anzeigen
    Weiß nicht, ob Kusch da nochmal reintaucht; ich hab's mal ausprobiert mit einer Sprunginsel (führt den ursprünglichen code aus, der noch ersetzt werden muss)

    Ich glaube auch nicht, dass es damit getan ist, den push 64 durch push int16 zu ersetzen, denn dann muss man die 2 bytes auch wieder vom Stack holen, also weiteren code anpassen. Aber wo passiert das?
    .. ich bin mir aber nicht sicher was du meinst mit vom Stack holen ..hmm
    Also theoretisch müsste das doch so funktionieren? Hast du´s mal getestet? Wenn man da jetzt FF 00 00 reinschreibt, dass die Heilung vom MediumHeal dann zu 255 wird?
    Solangs keinen Crash gibt ist doch theoretisch nix gut?

    Beziehungsweise was ich nicht verstehe ist warum das überhaupt nur bis 127 geht... das versteh ich nicht ganz
    FF ist doch eigentlich auch nur 1 Byte oder? Oder sind das 2? xD

    Ja ich werd mal die Tage ein paar Assembler Tutorials schaun ... ^^
    Wie immer tue ich mir leider echt schwer dir folgen zu können.. sorry ..

    Zitat Zitat von tombom81 Beitrag anzeigen
    btw, was spricht dagegen, nur das Heal_MediumEnhanced zu modifizieren?
    Eigentlich will ich ja nur noch das Medium_Heal auf 250 setzen oder 300 und dann wars das ^^
    Außerdem machts doch auch Spaß ...

    Soll ich den 32dbg oder den 64dbg nehmen? oder ist das egal? ^^ als Debugger...

    PS: Ich melde mich, sobald ich mehr Ahnung habe wieder und weiß was ein Stack ist ..
    Stormwind93 ist offline

  3. #43 Zitieren
    General Avatar von tombom81
    Registriert seit
    Jun 2015
    Beiträge
    3.159
    Zitat Zitat von Stormwind93 Beitrag anzeigen
    .. ich bin mir aber nicht sicher was du meinst mit vom Stack holen ..hmm
    naja, pop halt. (Und ein ret z.B. holt die Rücksprungadresse vom stack, das sind so grundlegende Dinge; aber du willst dich ja übern stack informieren, das ist gut)

    Also theoretisch müsste das doch so funktionieren? Hast du´s mal getestet? Wenn man da jetzt FF 00 00 reinschreibt, dass die Heilung vom MediumHeal dann zu 255 wird?
    Dieses ein-Byte-pushen ist mir suspeskt, danach steht aber 64000000 im stack. Aber gut, mehr als crashen kann's ja nicht.

    Beziehungsweise was ich nicht verstehe ist warum das überhaupt nur bis 127 geht... das versteh ich nicht ganz
    FF ist doch eigentlich auch nur 1 Byte oder? Oder sind das 2? xD
    FF ist ein byte, bzw. 2 Nibbles, haha.
    edit: jetzt versteh ich, push 0x80 codiert er tatsächlich als 68 80000000. Wieder was dazu gelernt.

    (Das scheint mit der internen CPU-Struktur zu tun zu haben. Es gibt ja auch diesen relativen jump mit +/- 127 bytes, iirc.)

    Wie immer tue ich mir leider echt schwer dir folgen zu können.. sorry ..
    Naja, da ist schon jede Menge Background-Wissen gefragt. (Ich bemühe mich eigentlich, mich kurz und prägnant zu fassen.)

    Eigentlich will ich ja nur noch das Medium_Heal auf 250 setzen oder 300 und dann wars das ^^
    Außerdem machts doch auch Spaß ...
    Na, wenn das Spaß macht, probier ich's mal...

    edit: ge-ni-al, es hat funktioniert! (Hätte jede Wette dagegen gehalten.)

    [Bild: medium_heal_patch.png]

    (FF bzw. FA statt 80 geht auch, logischerweise.)
    Da sollte man jetzt ein savegame anlegen und dann wieder laden; um sicherzustellen, dass auch wirklich alles clean war...

    Soll ich den 32dbg oder den 64dbg nehmen? oder ist das egal? ^^ als Debugger...
    Je, nachdem. Da Risen bei mir als 32 bit App läuft (siehste im Taskmanager, an dem *32), nehm ich die 32 bit Version.

    last not least: denk' jetzt nicht, dass das einfach war. Leute wie Kusch oder George schütteln das vielleicht aussem Ärmel; ich gerate aber ganz schön in Schwitzen, obwohl ich es nicht zum ersten Mal mache (bei Risen schon).

    Also: dranbleiben, Grundlagen legen.

    Allein die Tatsache, dass du es geschafft hast, mich mit deinen Infos zu motivieren, ist bemerkenswert.

    Dank nochmal auch an Kusch und George.
    "in der Erkundung dieser weiten und wunderbaren Welt" (post #70, höre link unten)
    TAS for Elex 2 at ELEX II Nexus - Mods and Community (nexusmods.com)
    Tuvok, scannen Sie den Planeten nach Mikroplastik!
    "Hört mir bloß auf mit "Stormson".
    "In Toussaint wird schon für kleinere Schmähungen als diese Satisfaktion verlangt."
    Genug der "Blumensträuße". Ich WILL MadBob! Beugt die Realität!
    tombom81 ist offline Geändert von tombom81 (23.01.2023 um 15:27 Uhr)

  4. #44 Zitieren
    Abenteurer
    Registriert seit
    Mar 2019
    Beiträge
    56
    Zitat Zitat von tombom81 Beitrag anzeigen
    naja, pop halt. (Und ein ret z.B. holt die Rücksprungadresse vom stack, das sind so grundlegende Dinge; aber du willst dich ja übern stack informieren, das ist gut)

    Dieses ein-Byte-pushen ist mir suspeskt, danach steht aber 64000000 im stack. Aber gut, mehr als crashen kann's ja nicht.
    ich hoff ich find ein 32dbg Tutorial wo´s mal nicht ums cracken geht ...
    Für Assembler allgemein hab ich ein gutes gefunden ^^
    https://www.youtube.com/watch?v=UiqA...6Rxnpg&index=1

    Zitat Zitat von tombom81 Beitrag anzeigen
    Na, wenn das Spaß macht, probier ich's mal...
    Genau, das ist der Geist, den wir jetzt brauchen (Zitat Ende) ^^

    Zitat Zitat von tombom81 Beitrag anzeigen
    edit: ge-ni-al, es hat funktioniert! (Hätte jede Wette dagegen gehalten.)

    (FF bzw. FA statt 80 geht auch, logischerweise.)
    Da sollte man jetzt ein savegame anlegen und dann wieder laden; um sicherzustellen, dass auch wirklich alles clean war...
    Jippiyay super gemacht aber den jumb braucht man dafür gel? Ich hatte es mal mit 68 probiert und da isses mir abgeschmirt.. teste ich gleich nomal..
    Edit: Der jumb ist wohl notwendig...komme leider mit dem 32dbg nicht so zurecht haha xD
    Eingewöhnung hmmm ich find einfach nicht wie ich die Stellen finde, die ich in Ghidra oder du dort gefunden hast XD

    Zitat Zitat von tombom81 Beitrag anzeigen
    Je, nachdem. Da Risen bei mir als 32 bit App läuft (siehste im Taskmanager, an dem *32), nehm ich die 32 bit Version.
    Guter Tipp

    Zitat Zitat von tombom81 Beitrag anzeigen
    last not least: denk' jetzt nicht, dass das einfach war. Leute wie Kusch oder George schütteln das vielleicht aussem Ärmel; ich gerate aber ganz schön in Schwitzen, obwohl ich es nicht zum ersten Mal mache (bei Risen schon).

    Also: dranbleiben, Grundlagen legen.

    Allein die Tatsache, dass du es geschafft hast, mich mit deinen Infos zu motivieren, ist bemerkenswert.

    Dank nochmal auch an Kusch und George.
    Danke für die lieben Worte & hab ich gern gemacht & ohne dich wäre ich noch Jahre dran gesessen ^^
    Das ist das Wichtigste: Dranbleiben & Motivation finden ^^ (oder anders herum?) xD
    Stormwind93 ist offline Geändert von Stormwind93 (23.01.2023 um 23:59 Uhr)

  5. #45 Zitieren
    General Avatar von tombom81
    Registriert seit
    Jun 2015
    Beiträge
    3.159
    Zitat Zitat von Stormwind93 Beitrag anzeigen
    il..Edit: Der jumb ist wohl notwendig...komme leider mit dem 32dbg nicht so zurecht haha xD
    Eingewöhnung hmmm ich find einfach nicht wie ich die Stellen finde, die ich in Ghidra oder du dort gefunden hast XD
    Öhm, "jump" schreibt sich das, btw.

    Das mit dem x32dbg ist nur Gewöhnungssache; nachdem du in der Symbolsliste (rechts) auf InventoryUse_Player_MediumHeal geklickt hast, siehstu im CPU-Fenster eine jump table, auf den ganz oben klicken und danach einen breakpoint (BP) im code setzen (der instruction pointer ist ja noch ganz woanders).

    Dann muss du natürlich den ganzen Heal-Kram im game durchgehen (haste doch gemacht, oder? Sonst ist es natürlich unmöglich, das nachzuvollziehen).

    Also im marvin mode It_Scr_MediumHeal spawnen (gegebenenfalls noch teach MP 50, wenn aufgebraucht), dann im Inventar auf die Spruchrolle klicken.

    Achja, Megawichtig, Risen muss im Fenstermode laufen, sonst kackt die ganze Chose ab, sobald der BP im code erreicht wird. (Hab mich so an den windowed mode gewöhnt, dass ich vergaß, das zu erwähnen, sorry.)

    Ab dem BP geht's weiter im single step, F8 oder F7, das war der Punkt, wo ich anfing zu schwitzen.

    Da gehört etwas Intuition dazu, wann man mit F7 in einen Funktionsaufruf (call) reingeht, um zu den 0x64 zu gelangen.
    Hab den call auch schon wieder vergessen; hier ist die 0x64 schon vom stack runter (s. stack Fenser rechts unten), also muss man mit F7 in den call über dem grauen Balken im CPU-Fenster:
    Spoiler:(zum lesen bitte Text markieren)

    (Hoffe, der war es; gerade keine Zeit, es nochmal zu checken.)

    CU

    btw, zur Erinnerung, die ersten 4 Stellen der Adresse (segment) werden bei dir anders sein

    edit: dll mit HxD gepatched (8+22 bytes). Funktioniert soweit, bis auf den blöden Wolf, der mir erstmal 250 HP klauen musste, und dann wurdes eng; auf schnellen PCs ist schlecht zu kämpfen, weil die Maus zu schnell dreht. Eh ich das eingestellt hatte, war ich runter auf 100. Gerade nochmal gutgegangen...

    (Weiter mit Elex...)
    "in der Erkundung dieser weiten und wunderbaren Welt" (post #70, höre link unten)
    TAS for Elex 2 at ELEX II Nexus - Mods and Community (nexusmods.com)
    Tuvok, scannen Sie den Planeten nach Mikroplastik!
    "Hört mir bloß auf mit "Stormson".
    "In Toussaint wird schon für kleinere Schmähungen als diese Satisfaktion verlangt."
    Genug der "Blumensträuße". Ich WILL MadBob! Beugt die Realität!
    tombom81 ist offline Geändert von tombom81 (28.01.2023 um 22:20 Uhr)

  6. #46 Zitieren
    Abenteurer
    Registriert seit
    Mar 2019
    Beiträge
    56
    Also nach langer Fuselei ..anders kann man es nicht nennen, hat mir TomBom liebenswerterweise die gepatchte Script.dll zukommen lassen

    Ich habe die Werte noch angepasst:
    Kleine Heilung: 100 Leben
    Mittlere Heilung: 300 Leben
    Große Heilung: 600 Leben

    Die Beschreibung müsste man natürlich selbst anpassen ^^

    https://upload.worldofplayers.de/fil...cript_Game.zip

    In diesem Januar (2023) wurde ein Risen Update für Steam herausgebracht..
    Diese Script_Game.dll ist nicht dazu kompatibel...

    Edit: Ihr könnt in Steam unter Betas auf die Orginalversion von 2009 wechseln, damit dürften auch alle sonstigen mods funktionieren ^^

    LG & Danke an alle, die hier mitgewirkt haben <3
    Stormwind93 ist offline Geändert von Stormwind93 (03.02.2023 um 04:31 Uhr)

Seite 3 von 3 « Erste 123

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •