Portal-Zone Gothic-Zone Gothic II-Zone Gothic 3-Zone Gothic 4-Zone Modifikationen-Zone Download-Zone Foren-Zone RPG-Zone Almanach-Zone Spirit of Gothic

 

Seite 27 von 31 « Erste ... 1620232425262728293031 Letzte »
Ergebnis 521 bis 540 von 606
  1. Beiträge anzeigen #521 Zitieren
    Ritter Avatar von Kirides
    Registriert seit
    Jul 2009
    Ort
    Norddeutschland
    Beiträge
    1.780
     
    Kirides ist offline
    Zitat Zitat von F a w k e s Beitrag anzeigen
    Hi pawbuj,
    Seems like you can hook this function to get current character - L or R.
    (tested with G1 only)
    Code:
    //00682990  .text     Debug data           ?PickLock@oCMobLockable@@MAEHPAVoCNpc@@D@Z
    const int oCMobLockable__PickLock_G1 = 6826384;
    
    //0x00724800 protected: virtual int __thiscall oCMobLockable::PickLock(class oCNpc *,char)
    const int oCMobLockable__PickLock_G2 = 7489536;
    
    FUNC VOID _HOOK_MOBCONTAINER_PICKLOCK ()
    {
        var int c;
        c = MEM_ReadInt (ESP + 8);
        
        if (c == 76) {
            //L
        } else
        if (c == 82) {
            //R
        };
    };
    Hook it with:
    Code:
    if (MEMINT_SwitchG1G2 (1, 0))
    {
        HookEngine (oCMobLockable__PickLock_G1, 13, "_HOOK_MOBCONTAINER_PICKLOCK");
    } else
    {
        HookEngine (oCMobLockable__PickLock_G2, 6, "_HOOK_MOBCONTAINER_PICKLOCK");
    };
    Played around with this and you can add new feature helping you to 'remember' what was successful combination
    [..]
    Do you mind to publish the source code for the displayed keystrokes? I would love to create a Patch out of it for players so they can display it
    Geändert von Kirides (26.11.2019 um 12:35 Uhr)

  2. Beiträge anzeigen #522 Zitieren
    Local Hero
    Registriert seit
    Feb 2013
    Beiträge
    236
     
    pawbuj ist offline

    Talking

    Faw, Can u show the full method u had use...I meant all L or R strings continuosly in one row as u published in ur video?

    I would add bad move too but in diff. color f.e. red.

    Also I see u print the picklocks count too - nice.

  3. Beiträge anzeigen #523 Zitieren
    Local Hero
    Registriert seit
    Feb 2017
    Beiträge
    270
     
    F a w k e s ist offline
    Zitat Zitat von Kirides Beitrag anzeigen
    Do you mind to publish the source code for the displayed keystrokes? I would love to create a Patch out of it for players so they can display it
    I don't mind at all - especially with fellow Bleach fan
    Global variables:
    Code:
    var int pickLockString_Mob;        //Mob identification
    var string pickLockString_Last;        //Last successfully tested picklock string
    var string pickLockString_Current;    //Current picklock string
    Hooked functions:
    Code:
    //00682990  .text     Debug data           ?PickLock@oCMobLockable@@MAEHPAVoCNpc@@D@Z
    const int oCMobLockable__PickLock_G1 = 6826384;
    
    //0x00724800 protected: virtual int __thiscall oCMobLockable::PickLock(class oCNpc *,char)
    const int oCMobLockable__PickLock_G2 = 7489536;
    
    FUNC VOID _HOOK_MOBCONTAINER_PICKLOCK ()
    {
        var oCNPC slf;
        slf = _^ (MEM_ReadInt (ESP + 4));
        
        if (NPC_IsPlayer (slf))
        {
            var oCMobLockable mob;
            mob = _^ (ECX);
    
            var int c;
            c = MEM_ReadInt (ESP + 8);
            
            var string pickLockString;
            
            var int currCharCount;
            currCharCount = (mob.bitfield & oCMobLockable_bitfield_pickLockNr) >> 2;
            
            //Get current picklock string + 1
            currCharCount += 1;
            if (currCharCount > 0)
            {
                pickLockString = STR_Prefix (mob.pickLockStr, currCharCount);
            };
    
            //Compare players attempt with current picklock string + 1
            if (c == 76) {
                if (Hlp_StrCmp(ConcatStrings (pickLockString_Current, "L"), pickLockString))
                {
                    pickLockString_Current = pickLockString;
                };
            } else
            if (c == 82) {
                if (Hlp_StrCmp(ConcatStrings (pickLockString_Current, "R"), pickLockString))
                {
                    pickLockString_Current = pickLockString;
                };
            };
    
            //If successfull then remember it :)
            if (STR_Len (pickLockString_Current) > STR_Len (pickLockString_Last))
            {
                pickLockString_Last = pickLockString_Current;
            };
        };
    };
    
    //0067FCA0  .text     Debug data           ?StartInteraction@oCMobInter@@MAEXPAVoCNPC@@@Z
    const int oCMobInter__StartInteraction_G1 = 6814880;
    
    //0x00721580 protected: virtual void __thiscall oCMobInter::StartInteraction(class oCNpc *)
    const int oCMobInter__StartInteraction_G2 = 7476608;
    
    FUNC VOID _HOOK_MOBINTER_STARTINTERACTION ()
    {
        var oCNPC slf;
        slf = _^ (MEM_ReadInt (ESP + 4));
        
        if (NPC_IsPlayer (slf))
        {
            if (Hlp_Is_oCMobLockable (ECX))
            {
                var oCMobLockable mob;
                mob = _^ (ECX);
                
                //Reset for new mob
                if (STR_Len (pickLockString_Last) > 0)
                {
                    if (pickLockString_Mob != ECX)
                    {
                        pickLockString_Current = "";
                        pickLockString_Last = "";
                    };
                };
                
                pickLockString_Mob = ECX;
                
                //Update for lock which was already partially picklocked
                var int currCharCount;
                currCharCount = (mob.bitfield & oCMobLockable_bitfield_pickLockNr) >> 2;
    
                if (currCharCount > 0)
                {
                    pickLockString_Current = STR_Prefix (mob.pickLockStr, currCharCount);
                } else {
                    pickLockString_Current = "";
                };
    
                //Open view
                ...
            };
        };
    };
    
    //0067FFD0  .text     Debug data           ?EndInteraction@oCMobInter@@UAEXPAVoCNPC@@H@Z
    const int oCMobInter__EndInteraction_G1 = 6815696;
    
    //0x00721950 public: virtual void __thiscall oCMobInter::EndInteraction(class oCNpc *,int)
    const int oCMobInter__EndInteraction_G2 = 7477584;
    
    FUNC VOID _HOOK_MOBINTER_ENDINTERACTION ()
    {
        var oCNPC slf;
        slf = _^ (MEM_ReadInt (ESP + 4));
        
        if (NPC_IsPlayer (slf))
        {
            if (Hlp_Is_oCMobLockable (ECX))
            {
                //Close view
                ...
            };
        };    
    };
    
    //00680250  .text     Debug data           ?StopInteraction@oCMobInter@@UAEXPAVoCNPC@@@Z
    const int oCMobInter__StopInteraction_G1 = 6816336;
    
    //0x00721C20 public: virtual void __thiscall oCMobInter::StopInteraction(class oCNpc *)
    const int oCMobInter__StopInteraction_G2 = 7478304;
    
    FUNC VOID _HOOK_MOBINTER_STOPINTERACTION ()
    {
        var oCNPC slf;
        slf = _^ (MEM_ReadInt (ESP + 4));
        
        if (NPC_IsPlayer (slf))
        {
            if (Hlp_Is_oCMobLockable (ECX))
            {
                //Reset
                pickLockString_Current = "";
                
                //Close view
                ...
            };
        };
    };
    'Standard' Gothic function G_PickLock should be updated also:
    Code:
    func void G_PickLock (var int bSuccess, var int bBrokenOpen)
    {
        if (bSuccess)
        {
            if (bBrokenOpen)
            {
                Snd_Play3D     (hero, "PICKLOCK_UNLOCK");
                Print (PRINT_PICKLOCK_UNLOCK);        
                
                //Reset
                pickLockString_Current = "";
            }
            else
            {
                Snd_Play3D     (hero, "PICKLOCK_SUCCESS");
                Print (PRINT_PICKLOCK_SUCCESS);
            };
        }
        else
        {
            if (bBrokenOpen)
            {
                Snd_Play3D     (hero, "PICKLOCK_BROKEN");
                Print (PRINT_PICKLOCK_BROKEN);
                
                var int rnd; rnd = Hlp_Random(100);
                if (rnd <= 25)
                {
                    Npc_SendPassivePerc (hero, PERC_ASSESSQUIETSOUND, hero, hero);
                };
            }
            else
            {
                Snd_Play3D     (hero, "PICKLOCK_FAILURE");
                Print (PRINT_PICKLOCK_FAILURE);
            };
    
            //Reset
            pickLockString_Current = "";
        };
    };
    Hooks:
    Code:
    HookEngine (MEMINT_SwitchG1G2 (oCMobInter__StartInteraction_G1, oCMobInter__StartInteraction_G2), 6, "_HOOK_MOBINTER_STARTINTERACTION");
    HookEngine (MEMINT_SwitchG1G2 (oCMobInter__EndInteraction_G1, oCMobInter__EndInteraction_G2), 6, "_HOOK_MOBINTER_ENDINTERACTION");
    HookEngine (MEMINT_SwitchG1G2 (oCMobInter__StopInteraction_G1, oCMobInter__StopInteraction_G2), 6, "_HOOK_MOBINTER_STOPINTERACTION");
    
    
    if (MEMINT_SwitchG1G2 (1, 0)) {
        HookEngine (oCMobLockable__PickLock_G1, 13, "_HOOK_MOBCONTAINER_PICKLOCK");
    } else {
        HookEngine (oCMobLockable__PickLock_G2, 6, "_HOOK_MOBCONTAINER_PICKLOCK");
    };
    As for View piece (where text is displayed on screen) of code - I wont put it here - as it's messy. I don't know how to work properly with LeGo Views yet - will have to spend some time in future with it ...

    Basically you just have to display both strings pickLockString_Last (RGBA (255, 255, 255, 64)) overlayed with pickLockString_Current RGBA (096, 255, 096, 255) in same position on screen.

  4. Beiträge anzeigen #524 Zitieren
    Ritter Avatar von Kirides
    Registriert seit
    Jul 2009
    Ort
    Norddeutschland
    Beiträge
    1.780
     
    Kirides ist offline
    Zitat Zitat von F a w k e s Beitrag anzeigen
    [...]
    I implemented the Patch using your work, and attributed you

    https://forum.worldofplayers.de/foru...-Rechts-Rechts

  5. Beiträge anzeigen #525 Zitieren
    Apprentice Avatar von TheFallOne
    Registriert seit
    Mar 2020
    Beiträge
    11
     
    TheFallOne ist offline

    Irrwichtel Source gesucht ^^

    Hey, hat jemand von euch den Irrwichtel Sourcecode? ^^ Auf folgender Seite gibt's den leider nimmer über den Link :/ https://forum.worldofplayers.de/forum/threads/1094284-Release-Irrwichtel


  6. Beiträge anzeigen #526 Zitieren
    Legende der Amazonen Avatar von Bisasam
    Registriert seit
    Dec 2006
    Ort
    Meine Faust in Sinis Gesicht
    Beiträge
    9.639
     
    Bisasam ist offline
    Ich möchte 3 werte miteinander vergleichen und den HÖCHSTEN zurückgegeben haben. Hat Ikarus da so eine einfache Funktion?


    "Das erinnert doch sehr erfreulich an das, was man sich als Gothicfan wünscht!"
    -Korallenkette

  7. Beiträge anzeigen #527 Zitieren
    Dea
    Registriert seit
    Jul 2007
    Beiträge
    10.447
     
    Lehona ist offline
    Zitat Zitat von Bisasam Beitrag anzeigen
    Ich möchte 3 werte miteinander vergleichen und den HÖCHSTEN zurückgegeben haben. Hat Ikarus da so eine einfache Funktion?
    Ikarus nicht, aber im ScriptBin gibt es die Funktionen maxX, also z.B. max3(1, 2, 3). Ist natürlich aber auch kein Hexenwerk, die selber zu coden.

  8. Beiträge anzeigen #528 Zitieren
    Ehrengarde Avatar von mud-freak
    Registriert seit
    Dec 2005
    Beiträge
    2.199
     
    mud-freak ist offline
    Hat jemand noch zufällig die alte Ikarus Version 1.1.4? Die bräuchte ich mal um etwas abzugleichen. Der Download im Einleitungspost ist aber mittlerweile nicht mehr erreichbar.

  9. Beiträge anzeigen #529 Zitieren
    Veteran Avatar von N1kX
    Registriert seit
    Aug 2018
    Ort
    Serov
    Beiträge
    643
     
    N1kX ist offline
    Zitat Zitat von mud-freak Beitrag anzeigen
    Hat jemand noch zufällig die alte Ikarus Version 1.1.4? Die bräuchte ich mal um etwas abzugleichen. Der Download im Einleitungspost ist aber mittlerweile nicht mehr erreichbar.
    Yes, of course
    https://drive.google.com/file/d/1Imr...ew?usp=sharing

  10. Beiträge anzeigen #530 Zitieren
    Local Hero
    Registriert seit
    Feb 2017
    Beiträge
    270
     
    F a w k e s ist offline

    Ikarus 1.1.4

    Hello mud-freak,
    Ikarus_Doc.d says Version : 1.1.4 so hopefully it is the one
    Angehängte Dateien

  11. Beiträge anzeigen #531 Zitieren
    Ehrengarde Avatar von mud-freak
    Registriert seit
    Dec 2005
    Beiträge
    2.199
     
    mud-freak ist offline
    Thanks for the fast replies!

    (Fawkes, your upload was actually 1.2.1 - I guess the documentation needs to be updated. EDIT: I guess not. I think it's the version corresponding to the documentation, so it seems fine.)

  12. Beiträge anzeigen #532 Zitieren
    Schwertmeister
    Registriert seit
    May 2009
    Beiträge
    924
     
    Umfi ist offline
    Zitat Zitat von TheFallOne Beitrag anzeigen
    Hey, hat jemand von euch den Irrwichtel Sourcecode? ^^ Auf folgender Seite gibt's den leider nimmer über den Link :/ https://forum.worldofplayers.de/forum/threads/1094284-Release-Irrwichtel

    Hey, hatte ich noch auf meiner alten Festplatte.

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

  13. Beiträge anzeigen #533 Zitieren
    Ehrengarde Avatar von mud-freak
    Registriert seit
    Dec 2005
    Beiträge
    2.199
     
    mud-freak ist offline

    Ikarus 1.2.2

    Mittlerweile haben sich einige Ausbesserungen an Ikarus angesammelt und wir möchten Version 1.2.2 vorstellen. Größtenteils handelt es sich um interne Verbesserungen um seltenen Abstürzen entgegen zu wirken oder kleine Fehler auszumerzen. Für den Normalgebrauch ist ansonsten vor allem die Vervollständigung der Engineklassen unter Gothic 1 interessant. So sind Gothic 1 und Gothic 2 nun endlich gleich auf.

    Folgende Verbesserungen wurden eingebaut (click here for English):
    • Sicherere Implementierungen von MEM_ReadByte und MEM_WriteByte: Behebt seltene Abstürze und macht es etwas schneller
    • Fehlende Gothic 1 Klassen hinzugefügt (für eine vollständige Liste siehe hier)
    • Weitere Hlp_Is-Funktionen für Mobs hinzugefügt (für eine vollständige Liste siehe hier)
    • STR_Lower Funktion hinzugefügt (analog zu STR_Upper)
    • Hexadezimal-Umrechnungen korrigiert: Großbuchstaben A bis F in MEMINT_HexCharToInt und MEMINT_ByteToKeyHex hinzugefügt
    • Warnungen verborgen, wenn bei Initialisierung keine Kamera, Infomanager oder Spawnmanager existieren, z.B. wenn aus Init_Perceptions initialisiert wird
    • MEM_GetFuncIDByOffset für mit MEM_ReplaceFunc überschriebene Funktionen korrigiert, z.B. MEM_ReadInt: While-Schleifen laufen nun stabiler
    • Erkennung des Codestack-Endes bei Sprüngen (Tokenizing) eingebaut: Endlosschleifen werden nun vermieden
    • MEMINT_SwitchG1G2 ausgebessert
    • Potentielle Absturzquelle beim Cachen von Funktionen in MEM_CallByString behoben
    Fürs Arbeiten mit Ikarus ändert sich dadurch nichts. Aufgrund der vielen Fixes ist dies Aktualisierung sehr zu empfehlen.

    Heruntergeladen können die Skripte zu Ikarus 1.2.2 hier: https://github.com/Lehona/Ikarus/releases/tag/v1.2.2

    Ich würde an dieser Stelle einen Moderatoren bitten, den Einleitungspost vom Ikarus-Thread mit dem Download-Link zur Version 1.2.2 zu ergänzen. Vielen Dank!

  14. Beiträge anzeigen #534 Zitieren
    Veteran Avatar von N1kX
    Registriert seit
    Aug 2018
    Ort
    Serov
    Beiträge
    643
     
    N1kX ist offline
    I have updated in the mod to check so far everything is fine. Update the version in Ninja, there is a crash due to different versions of ikarus, so I temporarily turned it off.

  15. Beiträge anzeigen #535 Zitieren
    Ehrengarde Avatar von mud-freak
    Registriert seit
    Dec 2005
    Beiträge
    2.199
     
    mud-freak ist offline
    Zitat Zitat von N1kX Beitrag anzeigen
    I have updated in the mod to check so far everything is fine. Update the version in Ninja, there is a crash due to different versions of ikarus, so I temporarily turned it off.
    That is correct. A update for Ninja is scheduled for today. Since it's highly unlikely that a mod would release between last night and tonight, this should not be an issue.


    PS: I wouldn't exactly call that a crash by the way. It's an error message and proper termination, well intended.

    PPS: The Ninja update will be a bit delayed.
    Geändert von mud-freak (19.06.2020 um 20:32 Uhr)

  16. Homepage besuchen Beiträge anzeigen #536 Zitieren
    Team Velen
    Registriert seit
    Aug 2015
    Beiträge
    952
     
    Bloodfly91 ist offline
    Ich habe vorhin dieses Skript von Sektenspinner gefunden, Funktionen, die es mittlerweile so nicht mehr gibt angepasst und das Ganze bei mir eingebaut: https://forum.worldofplayers.de/foru...1#post14307930

    Bei mir stürzt allerdings immer dann, wenn das Spiel automatisch gespeichert werden soll, das Spiel ab und ich erhalte folgende AV:

    Code:
    02:30 Warn:  0 ==    ============================================= CALLSTACK : ============================================================== .... <zError.cpp,#474>02:30 Warn:  0 00    23:00402EBA (0x305F3575 0x00000000 0xFFFFFFFF 0x00792568) Gothic2.exe, std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign()+250 byte(s), P:\vs6\VC98\INCLUDE\xstring, line 122+22 byte(s) .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:0042A644 (0x0135F5B0 0x00000000 0x00001365 0x31888918) Gothic2.exe, oCSavegameInfo::GetName()+52 byte(s), P:\dev\g2addon\release\Gothic\_bert\osavegame.h, line 78+52 byte(s) .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:0042A31F (0x00AB4108 0x00000000 0x00AB40C0 0x000015C1) Gothic2.exe, CGameManager::Write_Savegame()+79 byte(s), P:\dev\g2addon\release\Gothic\_bert\oGameManager.cpp, line 1573+12 byte(s) .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792568 (0x00001360 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+3080 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1433 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00001574 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00001B69 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00001C71 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00001C9D 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00000AFA 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00000AFA 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x0000D5D7 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x0000D5D2 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00000AFA 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00003CA5 0x1B86B6C0 0x00AB4118 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x0000C339 0x016E6120 0x00000000 0x0135FC90) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792CBF (0x00400000 0x01643930 0x0135FEB4 0x0031D000) Gothic2.exe, zCParser::CallFunc()+719 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1551 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00425E6E (0x00000000 0x00503270 0x0000002C 0x00000005) Gothic2.exe, CGameManager::Run()+1598 byte(s), P:\dev\g2addon\release\Gothic\_bert\oGameManager.cpp, line 767+47 byte(s) .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:0082933B (0x00000000 0x00000000 0x00000000 0x00000000) Gothic2.exe, SetFileAttributesA()+284535 byte(s) .... <zError.cpp,#474>
    02:30 Warn:  0 ==    ===================================== UNHANDLED EXCEPTION OCCURED ====================================================== .... <zError.cpp,#474>
    02:58 Warn:  0 B:     GMAN: gameSession is existing. Call CGameManager::Done() before! .... <oGameManager.cpp,#375>
    02:58 Info:  3 B:     VP: zBinkPlayer deinitialized .... <zBinkPlayer.cpp,#62>
    02:58 Info:  3 D:     MDL: Loading Model-Mesh: GOBBO_SKELETON_BODY.mdm .... <zModelProto.cpp,#5333>

    Mein abgeändertes Skript:

    Code:
    // Autosave - Wird sekündlich per FrameFunction aufgerufen (Init_Global)func void PO_Autosave()
    {
        var int AS_Intervall;
        
        AS_Intervall = AS_Intervall +1;
        
        Print (IntToString(AS_Intervall));
        
        if (AS_Intervall >= 2*60)    // --> Vorerst nur alle 2 Minuten - Wird später noch angepasst!
        {
            AS_Intervall = 0;
            
            MEM_InitAll();
            
            const int CGameManager__Write_Savegame = 4367056; //0x42A2D0
            MEM_PushIntParam (5);    // Slot 5
            CALL__thiscall (MEM_ReadInt (MEMINT_gameMan_Pointer_address), CGameManager__Write_Savegame);
            
            Print ("Spiel erfolgreich gespeichert!");
        };
    };
    Die Adresse ist auf jeden Fall richtig und MEMINT_gameMan_Pointer_address existiert ebenfalls.
    Geändert von Bloodfly91 (21.06.2020 um 16:05 Uhr)

  17. Beiträge anzeigen #537 Zitieren
    Veteran Avatar von N1kX
    Registriert seit
    Aug 2018
    Ort
    Serov
    Beiträge
    643
     
    N1kX ist offline
    Hello. In one Polish mod, the old version of ikarus is very different from the base version 1.2.0. Compared with the actual, there are differences that seem reasonable. Should I upgrade to current?
    Angehängte Dateien

  18. Homepage besuchen Beiträge anzeigen #538 Zitieren
    Clockwork Origins Avatar von Bonne6
    Registriert seit
    Jun 2004
    Ort
    Erlangen
    Beiträge
    11.826
     
    Bonne6 ist offline
    Zitat Zitat von Bloodfly91 Beitrag anzeigen
    Ich habe vorhin dieses Skript von Sektenspinner gefunden, Funktionen, die es mittlerweile so nicht mehr gibt angepasst und das Ganze bei mir eingebaut: https://forum.worldofplayers.de/foru...1#post14307930

    Bei mir stürzt allerdings immer dann, wenn das Spiel automatisch gespeichert werden soll, das Spiel ab und ich erhalte folgende AV:

    Code:
    02:30 Warn:  0 ==    ============================================= CALLSTACK : ============================================================== .... <zError.cpp,#474>02:30 Warn:  0 00    23:00402EBA (0x305F3575 0x00000000 0xFFFFFFFF 0x00792568) Gothic2.exe, std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign()+250 byte(s), P:\vs6\VC98\INCLUDE\xstring, line 122+22 byte(s) .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:0042A644 (0x0135F5B0 0x00000000 0x00001365 0x31888918) Gothic2.exe, oCSavegameInfo::GetName()+52 byte(s), P:\dev\g2addon\release\Gothic\_bert\osavegame.h, line 78+52 byte(s) .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:0042A31F (0x00AB4108 0x00000000 0x00AB40C0 0x000015C1) Gothic2.exe, CGameManager::Write_Savegame()+79 byte(s), P:\dev\g2addon\release\Gothic\_bert\oGameManager.cpp, line 1573+12 byte(s) .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792568 (0x00001360 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+3080 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1433 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00001574 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00001B69 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00001C71 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00001C9D 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00000AFA 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00000AFA 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x0000D5D7 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x0000D5D2 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00000AFA 0x00AB4108 0x00000000 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x00003CA5 0x1B86B6C0 0x00AB4118 0x00AB40C0) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792504 (0x0000C339 0x016E6120 0x00000000 0x0135FC90) Gothic2.exe, zCParser::DoStack()+2980 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1415 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00792CBF (0x00400000 0x01643930 0x0135FEB4 0x0031D000) Gothic2.exe, zCParser::CallFunc()+719 byte(s), P:\dev\g2addon\release\ZenGin\_ulf\zParser.cpp, line 1551 .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:00425E6E (0x00000000 0x00503270 0x0000002C 0x00000005) Gothic2.exe, CGameManager::Run()+1598 byte(s), P:\dev\g2addon\release\Gothic\_bert\oGameManager.cpp, line 767+47 byte(s) .... <zError.cpp,#474>
    02:30 Warn:  0 00    23:0082933B (0x00000000 0x00000000 0x00000000 0x00000000) Gothic2.exe, SetFileAttributesA()+284535 byte(s) .... <zError.cpp,#474>
    02:30 Warn:  0 ==    ===================================== UNHANDLED EXCEPTION OCCURED ====================================================== .... <zError.cpp,#474>
    02:58 Warn:  0 B:     GMAN: gameSession is existing. Call CGameManager::Done() before! .... <oGameManager.cpp,#375>
    02:58 Info:  3 B:     VP: zBinkPlayer deinitialized .... <zBinkPlayer.cpp,#62>
    02:58 Info:  3 D:     MDL: Loading Model-Mesh: GOBBO_SKELETON_BODY.mdm .... <zModelProto.cpp,#5333>

    Mein abgeändertes Skript:

    Code:
    // Autosave - Wird sekündlich per FrameFunction aufgerufen (Init_Global)func void PO_Autosave()
    {
        var int AS_Intervall;
        
        AS_Intervall = AS_Intervall +1;
        
        Print (IntToString(AS_Intervall));
        
        if (AS_Intervall >= 2*60)    // --> Vorerst nur alle 2 Minuten - Wird später noch angepasst!
        {
            AS_Intervall = 0;
            
            MEM_InitAll();
            
            const int CGameManager__Write_Savegame = 4367056; //0x42A2D0
            MEM_PushIntParam (5);    // Slot 5
            CALL__thiscall (MEM_ReadInt (MEMINT_gameMan_Pointer_address), CGameManager__Write_Savegame);
            
            Print ("Spiel erfolgreich gespeichert!");
        };
    };
    Die Adresse ist auf jeden Fall richtig und MEMINT_gameMan_Pointer_address existiert ebenfalls.
    Ich schreib's hier, weil dein Postfach voll ist:

    Ich weiß da keine Details mehr, aber hier ganz einfach alles, was ich mache:
    https://github.com/BonneCW/XR/blob/m...n/B_Autosave.d

    Aufgerufen aus einer Triggerschleife, das war noch vor FrameFunctions. Weiß nicht, ob das evtl. einen Unterschied macht. Ansonsten speicher ich das halt in den Quicksave-Slot, nicht in Slot 5. Also die zwei Dinge könntest du mal testen.

  19. Homepage besuchen Beiträge anzeigen #539 Zitieren
    Team Velen
    Registriert seit
    Aug 2015
    Beiträge
    952
     
    Bloodfly91 ist offline
    Super, vielen Dank Bonne! Problem bei mir war lediglich MEM_PushIntParam, das musste ich durch CALL_IntParam ersetzen.

    Zitat Zitat von Bonne6 Beitrag anzeigen
    Ich schreib's hier, weil dein Postfach voll ist:

    Ich weiß da keine Details mehr, aber hier ganz einfach alles, was ich mache:
    https://github.com/BonneCW/XR/blob/m...n/B_Autosave.d

    Aufgerufen aus einer Triggerschleife, das war noch vor FrameFunctions. Weiß nicht, ob das evtl. einen Unterschied macht. Ansonsten speicher ich das halt in den Quicksave-Slot, nicht in Slot 5. Also die zwei Dinge könntest du mal testen.

  20. Homepage besuchen Beiträge anzeigen #540 Zitieren
    Clockwork Origins Avatar von Bonne6
    Registriert seit
    Jun 2004
    Ort
    Erlangen
    Beiträge
    11.826
     
    Bonne6 ist offline
    Zitat Zitat von Bloodfly91 Beitrag anzeigen
    Super, vielen Dank Bonne! Problem bei mir war lediglich MEM_PushIntParam, das musste ich durch CALL_IntParam ersetzen.
    Ah, siehste du, das hab ich glatt übersehen

Seite 27 von 31 « Erste ... 1620232425262728293031 Letzte »

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
Impressum | Link Us | intern
World of Gothic © by World of Gothic Team
Gothic, Gothic 2 & Gothic 3 are © by Piranha Bytes & Egmont Interactive & JoWooD Productions AG, all rights reserved worldwide