Seite 5 von 9 « Erste 123456789 Letzte »
Ergebnis 81 bis 100 von 179
  1. #81 Zitieren
    Moderator Avatar von George
    Registriert seit
    Sep 2010
    Beiträge
    684
    Now the elex2resman should be able to convert most of the file formats.
    However, .pak, .hdr and .elexwrl are read-only as of now, so folders, .hdrdoc and .elexwrldoc cannot yet be converted back to Elex 2's native file format.
    elex2resman_v0.2.7z

    Source code: https://github.com/georgeto/rmtools/tree/elex2
    George ist offline Geändert von George (09.03.2022 um 01:58 Uhr)

  2. #82 Zitieren
    General Avatar von tombom81
    Registriert seit
    Jun 2015
    Beiträge
    3.143
    Very impressive! Lots of thanks!

    w_camera.hdrdoc: if you replace gCCameraTypeDialog by gCCameraEffectBase (as a test only) in the first line and remove that ResourceRevision = CE01; line your new exe version reaches line 4444.
    "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 (09.03.2022 um 07:07 Uhr)

  3. #83 Zitieren
    Rookie
    Registriert seit
    Mar 2022
    Beiträge
    6
    If you remove all ResourceRevision lines it converts it back to .hdr but it doesn't work like that. You just end up with a black screen with HUD elements in-game.
    Sangeki ist offline Geändert von Sangeki (09.03.2022 um 07:18 Uhr)

  4. #84 Zitieren
    Neuling
    Registriert seit
    Aug 2021
    Beiträge
    6
    Zitat Zitat von George Beitrag anzeigen
    Now the elex2resman should be able to convert most of the file formats.
    However, .pak, .hdr and .elexwrl are read-only as of now, so folders, .hdrdoc and .elexwrldoc cannot yet be converted back to Elex 2's native file format.
    elex2resman_v0.2.7z

    Source code: https://github.com/georgeto/rmtools/tree/elex2

    Thanks a lot of your work! Sadly it seems there are still minor things to be fixed.

    Sunglasses template is unpacked to *.r3tpl, which is then unrecognized when trying to translate then to *doc file with elex2resman, even after their manually changing extension to *.elextpl. Previous version of elex2resman you shared was creating correctly *.elextpl, which can be translated correctly to *.elextpldoc, and back to *.elextpl with newest elex2resman. But then we run to another problem: directory Moonglasses_0_1 (that contains Template/It_Sun_SenseLife.elextpl), when dragged onto newest elex2resman, is not asking for archive generation number and is creating *.pak file that is not loaded by Elex 2, probably because it does expect *.r3tpl. Dragging same directory onto elexresman works fine though, and creates m_x_Moonglasses_0_1.pak (where x is chosen generation number) that works with Elex 2 just fine.
    TinyHatastrophe ist offline

  5. #85 Zitieren
    General Avatar von tombom81
    Registriert seit
    Jun 2015
    Beiträge
    3.143
    Could you give the headerbytes from that Sunglasses elextpl, please?

    Don't want to extract 21 GB, did it seperately, header from "my" It_Sun_ItemSight.elextpl is
    Code:
    Offs  0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F
    
    0000 47 41 52 35 20 00 00 00 00 00 00 00 00 00 00 00  GAR5 ...........
    0010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    0020 00 00 00 00 00 00 00 00 00 00 00 00 47 41 52 35  ............GAR5
    0030 20 00 00 00 47 54 50 30 5B E6 39 1B A3 28 7C 2C   ...GTP0[æ9.£(|,
    I assume, elex2resman changed the offset (Word/DWord) at 0x0004? 0x0020 doesn't seem to fit.
    "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

  6. #86 Zitieren
    Neuling
    Registriert seit
    Aug 2021
    Beiträge
    6
    Well the problem is that elex2resman in version 0.2 is not creating *.elextpl, but *.r3tpl.

    My "It_Sun_ItemSight.r3tpl" exported with elex2resman 0.2:

    Code:
    Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
    
    00000000  52 33 52 46 0B 0B 00 00 00 00 00 00 00 00 00 00  R3RF............
    00000010  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    00000020  00 00 00 00 00 00 00 00 00 00 00 00 47 41 52 35  ............GAR5
    00000030  20 00 00 00 47 54 50 30 5B E6 39 1B A3 28 7C 2C   ...GTP0[æ9.£(|,
    My "It_Sun_ItemSight.elextpl" exported with elex2resman 0.1.1:

    Code:
    Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
    
    00000000  45 31 52 46 0B 0B 00 00 00 00 00 00 00 00 00 00  E1RF............
    00000010  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    00000020  00 00 00 00 00 00 00 00 00 00 00 00 47 41 52 35  ............GAR5
    00000030  20 00 00 00 47 54 50 30 5B E6 39 1B A3 28 7C 2C   ...GTP0[æ9.£(|,
    Both files exported from newest version of game on Steam.
    TinyHatastrophe ist offline

  7. #87 Zitieren
    Moderator Avatar von George
    Registriert seit
    Sep 2010
    Beiträge
    684
    Yes, version 0.2 was definitely broken. Should be fixed, elex2resman now creates elex2* files.
    elex2resman_v0.2.1.7z
    George ist offline

  8. #88 Zitieren
    General Avatar von tombom81
    Registriert seit
    Jun 2015
    Beiträge
    3.143
    Big thanx to both of you!

    edit: I managed to get the classData (which looked like so before: <02 00 00 00 47 45 43 32 ...
    ) from infos in w_info.hdr "translated":
    Code:
        "WEIDMANNI5_01769" {
            Timestamp = (time 132125812510000000 "Tue Sep 10 09:27:31 2019");
            class gCInfo {
                Version = 2;
                Properties {
                    class bCString Name = "WEIDMANNI5_01769";
                    int MainSortID = 1020;
                    unsigned int SortID = 20628;
                    class bCString Owner = "Lazar";
                    class eCEntityStringProxy Partner = "";
                    bool InfoGiven = False;
                    float LastExecutionTimestamp = -1;
                    class bCString Parent = "WEIDMANNI5_01767";
                    class gCQuestProxy Quest = "";
                    enum gEInfoCondType ConditionType = gEInfoCondType_General;
                    enum gEInfoType Type = gEInfoType_Info;
                    enum gEInfoGameModeType InfoGameModeType = gEInfoGameModeType_Normal;
                    int GoldCost = 0;
                    class eCScriptProxyScript GoldCostScript = "";
                    class eCTemplateEntityProxy GoldCostItem = {00000000-0000-0000-0000-000000000000};
                    class bTObjArray<class gCRequiredPerk> RequiredPerks = [
                    ];
                    bool DialogPartnerAutoPositioningEnabled = True;
                    bool ClearChildren = True;
                    bool Permanent = False;
                    int CurrentInfoCommandIndex = 0;
                    bool InSwitch = False;
                    bool InfoIsRunnig = False;
                    int StartChapter = -1;
                    int EndChapter = -1;
                    int CommentGivenCmdIndex = 0;
                    bool CommentRewind = False;
                    bool CommentUseSmalltalkRanges = False;
                    bool CommentContinueSVMWanted = False;
                    bool CommentAbortsOnFight = False;
                    class eCEntityStringProxy SmalltalkPartner = "";
                    int SmalltalkGivenCmdIndex = -1;
                    bool SmalltalkRewind = False;
                    float SmalltalkInnerRange = 600;
                    bool SmalltalkInnerRangeTestWithLOS = True;
                    float SmalltalkOuterRange = 1200;
                    bool SmalltalkExitEndActiveOverlayRoutine = True;
                    bool SmalltalkPartnerExitEndActiveOverlayRoutine = True;
                    class bCString SmalltalkExitRoutineName = "";
                    class bCString SmalltalkPartnerExitRoutineName = "";
                }
                ClassData {
                    [class gCInfo, Version 2] {
                        InfoCommands {
                            class gCInfoCommandSay {
                                Version = 1;
                                Properties {
                                    class bCString Speaker = "player";
                                    class bCString Listener = "";
                                    bool ThirdPartyListenerInDialogMode = True;
                                    class gCInfoLocString Text = "INFO_WEIDMANNI5_00006447";
                                    enum gEForcedDialogCam ForcedDialogCam = gEForcedDialogCam_None;
                                    enum gEBodyMood ForcedDialogBodyMood = gEBodyMood_None;
                                    enum gEFacialExpression ForcedDialogFacialExpression = gEFacialExpression_None;
                                }
                                ClassData {
                                }
                            }
                            class gCInfoCommandSay {
                                Version = 1;
                                Properties {
                                    class bCString Speaker = "Lazar";
                                    class bCString Listener = "";
                                    bool ThirdPartyListenerInDialogMode = True;
                                    class gCInfoLocString Text = "INFO_WEIDMANNI5_00006450";
                                    enum gEForcedDialogCam ForcedDialogCam = gEForcedDialogCam_None;
                                    enum gEBodyMood ForcedDialogBodyMood = gEBodyMood_None;
                                    enum gEFacialExpression ForcedDialogFacialExpression = gEFacialExpression_None;
                                }
                                ClassData {
                                }
                            }
                        }
                        InfoConditions {
                        }
                    }
                }
            }
        }
    Hope, I can upate my scripting mod soon.

    But I'm too slow, really.
    "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 (11.03.2022 um 16:50 Uhr)

  9. #89 Zitieren
    whispertante
    Gast
    If anyone else is struggling to open some of the *.dds files:
    It's compressed with BC5. You can still use the bat file /dds/convert_BC7_to_B8G8R8A8.bat in elexresman (see first post) to convert the image. To use it, you need to extend it at line 12ff.:

    HTML-Code:
    echo %%i | findstr /i BC7_UNORM      > nul && set fmt=B8G8R8A8_UNORM
    echo %%i | findstr /i BC7_UNORM_SRGB > nul && set fmt=B8G8R8A8_UNORM_SRGB
    echo %%i | findstr /i BC5_UNORM      > nul && set fmt=B8G8R8A8_UNORM
    echo %%i | findstr /i BC5_SNORM      > nul && set fmt=B8G8R8A8_UNORM
    echo %%i | findstr /i BC5_UNORM_SRGB > nul && set fmt=B8G8R8A8_UNORM_SRGB
    Geändert von whispertante (11.03.2022 um 00:33 Uhr)

  10. #90 Zitieren
    Apprentice
    Registriert seit
    Mar 2020
    Beiträge
    17
    Zitat Zitat von tombom81 Beitrag anzeigen
    Big thanx to both of you!

    edit: I managed to get the classData (which looked like so before: <02 00 00 00 47 45 43 32 ...
    ) from infos in w_info.hdr "translated":
    Code:
        "WEIDMANNI5_01769" {
            Timestamp = (time 132125812510000000 "Tue Sep 10 09:27:31 2019");
            class gCInfo {
                Version = 2;
                Properties {
                    class bCString Name = "WEIDMANNI5_01769";
                    int MainSortID = 1020;
                    unsigned int SortID = 20628;
                    class bCString Owner = "Lazar";
                    class eCEntityStringProxy Partner = "";
                    bool InfoGiven = False;
                    float LastExecutionTimestamp = -1;
                    class bCString Parent = "WEIDMANNI5_01767";
                    class gCQuestProxy Quest = "";
                    enum gEInfoCondType ConditionType = gEInfoCondType_General;
                    enum gEInfoType Type = gEInfoType_Info;
                    enum gEInfoGameModeType InfoGameModeType = gEInfoGameModeType_Normal;
                    int GoldCost = 0;
                    class eCScriptProxyScript GoldCostScript = "";
                    class eCTemplateEntityProxy GoldCostItem = {00000000-0000-0000-0000-000000000000};
                    class bTObjArray<class gCRequiredPerk> RequiredPerks = [
                    ];
                    bool DialogPartnerAutoPositioningEnabled = True;
                    bool ClearChildren = True;
                    bool Permanent = False;
                    int CurrentInfoCommandIndex = 0;
                    bool InSwitch = False;
                    bool InfoIsRunnig = False;
                    int StartChapter = -1;
                    int EndChapter = -1;
                    int CommentGivenCmdIndex = 0;
                    bool CommentRewind = False;
                    bool CommentUseSmalltalkRanges = False;
                    bool CommentContinueSVMWanted = False;
                    bool CommentAbortsOnFight = False;
                    class eCEntityStringProxy SmalltalkPartner = "";
                    int SmalltalkGivenCmdIndex = -1;
                    bool SmalltalkRewind = False;
                    float SmalltalkInnerRange = 600;
                    bool SmalltalkInnerRangeTestWithLOS = True;
                    float SmalltalkOuterRange = 1200;
                    bool SmalltalkExitEndActiveOverlayRoutine = True;
                    bool SmalltalkPartnerExitEndActiveOverlayRoutine = True;
                    class bCString SmalltalkExitRoutineName = "";
                    class bCString SmalltalkPartnerExitRoutineName = "";
                }
                ClassData {
                    [class gCInfo, Version 2] {
                        InfoCommands {
                            class gCInfoCommandSay {
                                Version = 1;
                                Properties {
                                    class bCString Speaker = "player";
                                    class bCString Listener = "";
                                    bool ThirdPartyListenerInDialogMode = True;
                                    class gCInfoLocString Text = "INFO_WEIDMANNI5_00006447";
                                    enum gEForcedDialogCam ForcedDialogCam = gEForcedDialogCam_None;
                                    enum gEBodyMood ForcedDialogBodyMood = gEBodyMood_None;
                                    enum gEFacialExpression ForcedDialogFacialExpression = gEFacialExpression_None;
                                }
                                ClassData {
                                }
                            }
                            class gCInfoCommandSay {
                                Version = 1;
                                Properties {
                                    class bCString Speaker = "Lazar";
                                    class bCString Listener = "";
                                    bool ThirdPartyListenerInDialogMode = True;
                                    class gCInfoLocString Text = "INFO_WEIDMANNI5_00006450";
                                    enum gEForcedDialogCam ForcedDialogCam = gEForcedDialogCam_None;
                                    enum gEBodyMood ForcedDialogBodyMood = gEBodyMood_None;
                                    enum gEFacialExpression ForcedDialogFacialExpression = gEFacialExpression_None;
                                }
                                ClassData {
                                }
                            }
                        }
                        InfoConditions {
                        }
                    }
                }
            }
        }
    Hope, I can upate my scripting mod soon.

    But I'm too slow, really.
    i should have maybe let uk right after i noticed the reply too xD
    godagarah5000 ist offline

  11. #91 Zitieren
    Fighter
    Registriert seit
    May 2007
    Beiträge
    362
    Huge thanks for getting Elex 2 Modding on the road

    So, I've tried replacing the Alb Commander Armor with the looks of the Elexetor Armor but it seems I can't do it.
    Or maybe it can't be done. There seems to be no Template whatsoever for the Elexetor armor (which makes sense if it's not a regular armor, I guess) so I don't know what to do.


    Do you guys have any idea?
    Signatur!
    Das M. ist offline

  12. #92 Zitieren
    General Avatar von tombom81
    Registriert seit
    Jun 2015
    Beiträge
    3.143
    Thanks!

    For w_info.hdr you need to insert "NFO1" like so, after having reconverted from hdrdoc to hdr.
    Spoiler:(zum lesen bitte Text markieren)

    (Didn't check if ELEX 2 accepts this so far.)
    "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

  13. #93 Zitieren
    Rookie
    Registriert seit
    Aug 2021
    Beiträge
    4
    Hi elex community, I have a simple question, how is the link made between a template item (in .elex2tpldoc file) or sector item (in .elex2secdoc file) and its translation (localisation string in .str files with id like ffd13a9c) ?
    Skeroujvapluvit ist offline

  14. #94 Zitieren
    General Avatar von tombom81
    Registriert seit
    Jun 2015
    Beiträge
    3.143
    Hi, I chose another example:

    template
    It_1h_Sword_Sky_01_Damaged.elex2tpl
    fo_it_1h_sword_sky_01_damaged -> djb2 hash = 0xDD5BFF34 (34ff5bdd in de.str)

    (fo means focus)

    German strings.csv: dd5bff34|Beschädigte Sphärenklinge|
    "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

  15. #95 Zitieren
    Rookie
    Registriert seit
    Aug 2021
    Beiträge
    4
    Zitat Zitat von tombom81 Beitrag anzeigen
    Hi, I chose another example:

    template
    It_1h_Sword_Sky_01_Damaged.elex2tpl
    fo_it_1h_sword_sky_01_damaged -> djb2 hash = 0xDD5BFF34 (34ff5bdd in de.str)

    (fo means focus)

    German strings.csv: dd5bff34|Beschädigte Sphärenklinge|
    It's really strange


    Here is my code (I am using nodejs):
    Code:
    const START_HASH_VALUE = 5381;
    
    
    console.dir(djb2('fo_it_1h_sword_sky_01_normal').toString(16));
    console.dir(djb2('fo_it_1h_sword_sky_01_damaged').toString(16));
    console.dir(djb2('fo_it_1h_axe_mor_01_damaged').toString(16));
    console.dir(djb2('fo_it_1h_axe_mor_02_damaged').toString(16));
    console.dir(djb2('fo_it_1h_axe_mor_03_damaged').toString(16));
    console.dir(djb2('fo_it_1h_axe_mor_04_damaged').toString(16));
    console.dir(djb2('fo_it_1h_axe_mor_05_damaged').toString(16));
    
    
    function reduceToHash(array) {
        return array.reduce(function (prev, curr) {
            return (prev << 5) + prev + curr;
        }, START_HASH_VALUE);
    }
    
    
    function djb2(input) {
        if (input && input.constructor && input.constructor.name === 'Array' && input.length) {
            return reduceToHash(input);
        } else if (input && typeof input === 'string' && input.length) {
            return reduceToHash(input.split('').map(function (str) {
                return str.charCodeAt(0);
            }));
        } else {
            return new Error('Empty input.');
        }
    }
    result (in the french csv file extracted) :

    '107c3425a' => not found but found in 07c3425a
    'dd5bff34' => found
    '-145c1cb26' => not found
    '2ebaa5db' => found
    '-15cc8e924' => not found
    '17b387dd' => found
    '-73d00722' => not found

    What I miss ???

    EDIT : founded, its because my function dont manage signed to unsigned

    Code:
    function reduceToHash(array) {
        return array.reduce(function (prev, curr) {
            return (prev << 5) + prev + curr;
        }, START_HASH_VALUE)>>>0;
    }
    Skeroujvapluvit ist offline Geändert von Skeroujvapluvit (16.03.2022 um 21:37 Uhr)

  16. #96 Zitieren
    whispertante
    Gast
    Hello everyone,
    does someone know where the perks are specified? I only find some references in w_ui.hdr, e.g. this one gESkill_Perk_MonsterXP. But where is the script/Class?

    Btw. I am trying to compile the elexresman.cpp and I am getting tons of errors with VS Code.... Oh Mann...

  17. #97 Zitieren
    General Avatar von tombom81
    Registriert seit
    Jun 2015
    Beiträge
    3.143
    Zitat Zitat von whispertante Beitrag anzeigen
    Hello everyone,
    does someone know where the perks are specified? I only find some references in w_ui.hdr, e.g. this one gESkill_Perk_MonsterXP. But where is the script/Class?
    For E1 one Perk was in the exe only. Dunno about E2.

    Btw. I am trying to compile the elexresman.cpp and I am getting tons of errors with VS Code.... Oh Mann...
    Works like a charme for me after I patched it back to VS2013 for technical reasons. (Had to treat zlib seperately because of my deprecated "system".)
    Tell the error message, maybe I can give some hints.

    (Generally it should compile without problems under VS2019 with working git clone and nuget "connection".)
    "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

  18. #98 Zitieren
    whispertante
    Gast
    Thanks for your answer!
    Mhmm, okay that would explain it. I think if the perks were configurable, it would be in the hdr files and it's not there.

    Here is my error log when I try to compile elexresman.cpp (elex2 branch). I cloned it from georgeto and put zlib in the root folder of my working space. At least, I am not getting errors regarding zlib.

    Code:
    [elexresman.cpp 2022-03-17 17:02:22.323],,In file included from ..\Mimicry\mi_array.h:135,
                     from ..\Mimicry\mi_include_array.h:7,
                     from ..\Mimicry.h:8,
                     from elexresman.cpp:2:
    ..\Mimicry\mi_array.inl: In function 'void g_zero(T&)':
    ..\Mimicry\mi_array.inl:22:65: error: type/value mismatch at argument 2 in template parameter list for 'template<class T, class U> struct array_internal::SZeroHelper'
       22 |     array_internal::SZeroHelper< T, mSTypeTagHelper< T >::msTag >::Zero( a_Dest );
          |                                                                 ^
    ..\Mimicry\mi_array.inl:22:65: note:   expected a type, got 'mSTypeTagHelper<T>::msTag'
    ..\Mimicry\mi_array.inl: In member function 'MIBool mTArray<T>::operator!=(const mTArray<T>&) const':
    ..\Mimicry\mi_array.inl:117:36: error: expected ';' before '}' token
      117 |     return !( *this == a_arrOther )
          |                                    ^
          |                                    ;
      118 | }
          | ~                                   
    ..\Mimicry\mi_array.inl: In member function 'T& mTArray<T>::CIterator::operator*() const':
    ..\Mimicry\mi_array.inl:629:25: error: 'm_uIndex' was not declared in this scope
      629 |     return m_pElements[ m_uIndex ];
          |                         ^~~~~~~~
    ..\Mimicry\mi_array.inl: In member function 'T& mTArray<T>::CIterator::operator[](MIUInt) const':
    ..\Mimicry\mi_array.inl:641:25: error: 'm_uIndex' was not declared in this scope; did you mean 'a_uIndex'?
      641 |     return m_pElements[ m_uIndex + a_uIndex ];
          |                         ^~~~~~~~
          |                         a_uIndex
    ..\Mimicry\mi_array.inl: In member function 'mTArray<T>::CIterator& mTArray<T>::CIterator::operator++()':
    ..\Mimicry\mi_array.inl:655:7: error: 'm_uIndex' was not declared in this scope
      655 |     ++m_uIndex;
          |       ^~~~~~~~
    ..\Mimicry\mi_array.inl: In member function 'mTArray<T>::CIterator& mTArray<T>::CIterator::operator--()':
    ..\Mimicry\mi_array.inl:670:7: error: 'm_uIndex' was not declared in this scope
      670 |     --m_uIndex;
          |       ^~~~~~~~
    ..\Mimicry\mi_array.inl: In member function 'mTArray<T>::CIterator& mTArray<T>::CIterator::operator+=(MIInt)':
    ..\Mimicry\mi_array.inl:677:5: error: 'm_uIndex' was not declared in this scope
      677 |     m_uIndex += a_iCount;
          |     ^~~~~~~~
    ..\Mimicry\mi_array.inl: In member function 'mTArray<T>::CIterator& mTArray<T>::CIterator::operator-=(MIInt)':
    ..\Mimicry\mi_array.inl:684:5: error: 'm_uIndex' was not declared in this scope
      684 |     m_uIndex -= a_iCount;
          |     ^~~~~~~~
    ..\Mimicry\mi_array.inl: In member function 'MIBool mTArray<T>::CIterator::operator==(const mTArray<T>::CIterator&) const':
    ..\Mimicry\mi_array.inl:705:14: error: 'm_uIndex' was not declared in this scope
      705 |     return ( m_uIndex == a_itOther.m_uIndex ) && ( m_pElements == a_itOther.m_pElements );
          |              ^~~~~~~~
    ..\Mimicry\mi_array.inl: In member function 'MIBool mTArray<T>::CIterator::operator<(const mTArray<T>::CIterator&) const':
    ..\Mimicry\mi_array.inl:717:28: error: 'm_uIndex' was not declared in this scope
      717 |     return ( m_pElements + m_uIndex ) < ( a_itOther.m_pElements + a_itOther.m_uIndex );
          |                            ^~~~~~~~
    ..\Mimicry\mi_array.inl: In member function 'MIBool mTArray<T>::CIterator::operator>(const mTArray<T>::CIterator&) const':
    ..\Mimicry\mi_array.inl:723:28: error: 'm_uIndex' was not declared in this scope
      723 |     return ( m_pElements + m_uIndex ) > ( a_itOther.m_pElements + a_itOther.m_uIndex );
          |                            ^~~~~~~~
    In file included from ..\Mimicry\mi_map.h:177,
                     from ..\Mimicry\mi_include_map.h:7,
                     from ..\Mimicry.h:9,
                     from elexresman.cpp:2:
    ..\Mimicry\mi_map.inl: In member function 'mTMap<K, T, C>& mTMap<K, T, C>::operator=(const mTMap<K, T, C>&)':
    ..\Mimicry\mi_map.inl:38:30: error: 'a_mapOther' was not declared in this scope
       38 |     mTMap< K, T, C > mapNew( a_mapOther );
          |                              ^~~~~~~~~~
    In file included from ..\Mimicry\mi_map.h:177,
                     from ..\Mimicry\mi_include_map.h:7,
                     from ..\Mimicry.h:9,
                     from elexresman.cpp:2:
    ..\Mimicry\mi_map.inl: In member function 'T& mTMap<K, T, C>::CIterator::operator*() const':
    ..\Mimicry\mi_map.inl:428:15: error: 'm_pBuckets' was not declared in this scope; did you mean 'm_arrBuckets'?
      428 |     return ( *m_pBuckets )[ m_uIndex ].m_Data;
          |               ^~~~~~~~~~
          |               m_arrBuckets
    ..\Mimicry\mi_map.inl:428:29: error: 'm_uIndex' was not declared in this scope
      428 |     return ( *m_pBuckets )[ m_uIndex ].m_Data;
          |                             ^~~~~~~~
    ..\Mimicry\mi_map.inl: In constructor 'mTStringMap<T>::mTStringMap(MIUInt)':
    ..\Mimicry\mi_map.inl:607:5: error: class 'mTStringMap<T>' does not have any field named 'mTMap'
      607 |     mTMap( a_uMinCapacity )
          |     ^~~~~
    ..\Mimicry\mi_map.inl: In copy constructor 'mTStringMap<T>::mTStringMap(const mTStringMap<T>&)':
    ..\Mimicry\mi_map.inl:613:5: error: class 'mTStringMap<T>' does not have any field named 'mTMap'
      613 |     mTMap( a_mapSource )
          |     ^~~~~
    ..\Mimicry\mi_map.inl: In constructor 'mTNameMap<T>::mTNameMap(MIUInt)':
    ..\Mimicry\mi_map.inl:619:5: error: class 'mTNameMap<T>' does not have any field named 'mTMap'
      619 |     mTMap( a_uMinCapacity )
          |     ^~~~~
    ..\Mimicry\mi_map.inl: In copy constructor 'mTNameMap<T>::mTNameMap(const mTNameMap<T>&)':
    ..\Mimicry\mi_map.inl:625:5: error: class 'mTNameMap<T>' does not have any field named 'mTMap'
      625 |     mTMap( a_mapSource )
          |     ^~~~~
    ..\Mimicry\mi_map.inl: In constructor 'mTIDMap<T>::mTIDMap(MIUInt)':
    ..\Mimicry\mi_map.inl:631:5: error: class 'mTIDMap<T>' does not have any field named 'mTMap'
      631 |     mTMap( a_uMinCapacity )
          |     ^~~~~
    ..\Mimicry\mi_map.inl: In copy constructor 'mTIDMap<T>::mTIDMap(const mTIDMap<T>&)':
    ..\Mimicry\mi_map.inl:637:5: error: class 'mTIDMap<T>' does not have any field named 'mTMap'
      637 |     mTMap( a_mapSource )
          |     ^~~~~
    In file included from ..\Mimicry\mi_ostream.h:49,
                     from ..\Mimicry\mi_include_streams.h:10,
                     from ..\Mimicry.h:11,
                     from elexresman.cpp:2:
    ..\Mimicry\mi_ostream.inl: At global scope:
    ..\Mimicry\mi_ostream.inl:207:77: error: specialization of 'mTOStream<M>& mTOStream<M>::operator<<(MILPCChar) [with mEStreamType M = mEStreamType_Formatted; MILPCChar = const char*]' after instantiation
      207 | mCOStreamFormatted & mCOStreamFormatted::operator << ( MILPCChar a_pcSource )
          |                                                                             ^
    elexresman.cpp: In function 'MIBool DdsToImg(mCIOStreamBinary&, const mCString&, MIBool&)':
    elexresman.cpp:1330:11: warning: unused variable 'u32SkipMips' [-Wunused-variable]
     1330 |     MIU32 u32SkipMips = ( uMipMapCount && uWidth >= 128 ) ? ( uWidth == 128 ? 257 : 258 ) : 0;
          |           ^~~~~~~~~~~
    elexresman.cpp: In function 'int main(int, char**)':
    elexresman.cpp:1636:61: warning: unused variable 'bIsWavFile' [-Wunused-variable]
     1636 |     MIBool bIsResourceFile = MIFalse, bIsDdsFile = MIFalse, bIsWavFile = MIFalse;
          |                                                             ^~~~~~~~~~
    In file included from ..\Mimicry\mi_array.h:135,
                     from ..\Mimicry\mi_include_array.h:7,
                     from ..\Mimicry.h:8,
                     from elexresman.cpp:2:
    ..\Mimicry\mi_array.inl: In instantiation of 'void mTArray<T>::RemoveAt(MIUInt) [with T = {anonymous}::SFrame; MIUInt = unsigned int]':
    elexresman.cpp:499:35:   required from here
    ..\Mimicry\mi_array.inl:270:14: warning: comparison of unsigned expression in '>= 0' is always true [-Wtype-limits]
      270 |     if ( ( 0 <= a_uIndex ) && ( a_uIndex <= uLastIndex ) )
          |          ~~~~^~~~~~~~~~~~~
    ..\Mimicry\mi_array.inl: In instantiation of 'void mTArray<T>::RemoveAt(MIUInt) [with T = mCGenomeVolume::CDir; MIUInt = unsigned int]':
    elexresman.cpp:1518:46:   required from here
    ..\Mimicry\mi_array.inl:270:14: warning: comparison of unsigned expression in '>= 0' is always true [-Wtype-limits]
    ..\Mimicry\mi_array.inl: In instantiation of 'void mTArray<T>::RemoveAt(MIUInt) [with T = unsigned int; MIUInt = unsigned int]':
    ..\Mimicry\mi_array.inl:263:5:   required from 'void mTArray<T>::Remove(const T&) [with T = unsigned int]'
    ..\Mimicry\mi_variant.inl:255:45:   required from here
    ..\Mimicry\mi_array.inl:270:14: warning: comparison of unsigned expression in '>= 0' is always true [-Wtype-limits]
    ..\Mimicry\mi_array.inl: In instantiation of 'void g_zero(T&) [with T = bool]':
    ..\Mimicry\mi_map.inl:229:15:   required from 'T& mTMap<K, T, C>::Add(MIU32, const K&) [with K = mCString; T = bool; C = mTStringKeyManager<mCString>; MIU32 = unsigned int]'
    ..\Mimicry\mi_map.inl:30:12:   required from 'T& mTMap<K, T, C>::operator[](const K&) [with K = mCString; T = bool; C = mTStringKeyManager<mCString>]'
    elexresman.cpp:920:104:   required from here
    ..\Mimicry\mi_array.inl:22:68: warning: unused variable 'Zero' [-Wunused-variable]
       22 |     array_internal::SZeroHelper< T, mSTypeTagHelper< T >::msTag >::Zero( a_Dest );
          |                                                                    ^~~~
    ..\Mimicry\mi_array.inl: In instantiation of 'void g_zero(T&) [with T = mCVariant::SId]':
    ..\Mimicry\mi_map.inl:229:15:   required from 'T& mTMap<K, T, C>::Add(MIU32, const K&) [with K = mCVariant::SId; T = mCVariant::SId; C = mTKeyManager<mCVariant::SId>; MIU32 = unsigned int]'
    ..\Mimicry\mi_map.inl:169:20:   required from 'MIBool mTMap<K, T, C>::Shrink() [with K = mCVariant::SId; T = mCVariant::SId; C = mTKeyManager<mCVariant::SId>; MIBool = bool]'
    ..\Mimicry\mi_map.inl:133:21:   required from 'void mTMap<K, T, C>::RemoveAt(const K&, T*, MIBool, MIBool*) [with K = mCVariant::SId; T = mCVariant::SId; C = mTKeyManager<mCVariant::SId>; MIBool = bool]'
    ..\Mimicry\mi_variant.inl:250:23:   required from here
    ..\Mimicry\mi_array.inl:22:68: error: cannot convert 'mCVariant::SId' to 'int' in initialization
    ..\Mimicry\mi_array.inl:22:68: warning: unused variable 'Zero' [-Wunused-variable]
    /Edit Which compiler do you use?
    Geändert von whispertante (17.03.2022 um 17:41 Uhr)

  19. #99 Zitieren
    General Avatar von tombom81
    Registriert seit
    Jun 2015
    Beiträge
    3.143
    Zitat Zitat von whispertante Beitrag anzeigen
    /Edit Which compiler do you use?
    VS2013 (had to change <PlatformToolset>v120</PlatformToolset> like so in the .vcxproj files to get it work)

    I remember having had a similar problem with .inl; got rid of it changing or switching a compiler option. Sadly I don't remember which it was.

    (Your log is from compiling the mimicry static lib, isn't it?)
    "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

  20. #100 Zitieren
    whispertante
    Gast
    Okay, I will try it with VS 2013, I think it's the compiler.

    Zitat Zitat von tombom81 Beitrag anzeigen
    (Your log is from compiling the mimicry static lib, isn't it?)
    No, just straight
    Code:
    g++ elexresman.cpp

Seite 5 von 9 « Erste 123456789 Letzte »

Berechtigungen

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