• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

OTClient How its works?

SalvaART

TriasOT.online
Joined
May 1, 2017
Messages
208
Solutions
1
Reaction score
123
Location
USA
Hello, I wanted to ask more experienced users how exactly the following process works:

How to exactly replace sprits from 8.6 to 7.4 in otclient and how does it interact with the map later? Converting the map from 7.4 to 8.6 gives me red boxes because the IDs are changed, how to recreate the real 7.4 map on the 8.6 server with the 8.6 protocol?

When i trying replace spr and dat 7.4 with 8.6 when i login on server i got black screen ingame.

Thanks for any help.
 
Hello, I wanted to ask more experienced users how exactly the following process works:

How to exactly replace sprits from 8.6 to 7.4 in otclient and how does it interact with the map later? Converting the map from 7.4 to 8.6 gives me red boxes because the IDs are changed, how to recreate the real 7.4 map on the 8.6 server with the 8.6 protocol?

When i trying replace spr and dat 7.4 with 8.6 when i login on server i got black screen ingame.

Thanks for any help.

It depends on the base you are using and the 7.4 map of course, it is best to use the downgrade map from the following post:


so you can use the map, items.otb (need made some changes in sources to work properly), and then u can use 7.7 .dat and .spr converted to 8.60 on any server 8.60 like GitHub - nekiro/TFS-1.5-Downgrades at 8.60 (https://github.com/nekiro/TFS-1.5-Downgrades/tree/8.60)


Also keep in mind that you will have to review the quest mechanics, movements, etc. So that your map is completely compatible and functional in all its aspects in the new base, since it will not just be replacing files.
 
It depends on the base you are using and the 7.4 map of course, it is best to use the downgrade map from the following post:


so you can use the map, items.otb (need made some changes in sources to work properly), and then u can use 7.7 .dat and .spr converted to 8.60 on any server 8.60 like GitHub - nekiro/TFS-1.5-Downgrades at 8.60 (https://github.com/nekiro/TFS-1.5-Downgrades/tree/8.60)


Also keep in mind that you will have to review the quest mechanics, movements, etc. So that your map is completely compatible and functional in all its aspects in the new base, since it will not just be replacing files.
Thanks for your help, i can use this map ofc but what i need to do next? i need open this map in RME and convert from 7.72 to 8.60 and save it? 1694896283322.png
 
Thanks for your help, i can use this map ofc but what i need to do next? i need open this map in RME and convert from 7.72 to 8.60 and save it? View attachment 78468

The most important thing is, what Base are you using?

After converting the .dat and .spr to 8.60, you need to make the items compatible as well. Just like the map. But you don't necessarily need to convert the map you can continue using the 7.7 map and the itgems as it comes. You only have to replace the load of the items as well as the map in the sources.


You can change this lines check: TFS-1.5-Downgrades/src/iomap.cpp at fc9157b919405ecde6f30e471255be4e2746884e · nekiro/TFS-1.5-Downgrades (https://github.com/nekiro/TFS-1.5-Downgrades/blob/fc9157b919405ecde6f30e471255be4e2746884e/src/iomap.cpp#L91C3-L91C28)

to:
C++:
    uint32_t headerVersion = root_header.version;
    if (headerVersion <= 0) {
        //In otbm version 1 the count variable after splashes/fluidcontainers and stackables
        //are saved as attributes instead, this solves alot of problems with items
        //that is changed (stackable/charges/fluidcontainer/splash) during an update.
        setLastErrorString("This map need to be upgraded by using the latest map editor version to be able to load correctly.");
        return false;
    }

    if (headerVersion > 2) {
        setLastErrorString("Unknown OTBM version detected.");
        return false;
    }



then change the items check version of this lines: TFS-1.5-Downgrades/src/items.cpp at fc9157b919405ecde6f30e471255be4e2746884e · nekiro/TFS-1.5-Downgrades (https://github.com/nekiro/TFS-1.5-Downgrades/blob/fc9157b919405ecde6f30e471255be4e2746884e/src/items.cpp#L295)

for:

C++:
    if (majorVersion == 0xFFFFFFFF) {
        std::cout << "[Warning - Items::loadFromOtb] items.otb using generic client version." << std::endl;
    /*} else if (majorVersion != 3) {
        std::cout << "Old version detected, a newer version of items.otb is required." << std::endl;
        return false;*/
    //} else if (minorVersion < CLIENT_VERSION_860_OLD) {
    } else if (minorVersion < CLIENT_VERSION_760) {
        std::cout << "A newer version of items.otb is required." << std::endl;
        return false;
    }
 
The most important thing is, what Base are you using?

After converting the .dat and .spr to 8.60, you need to make the items compatible as well. Just like the map. But you don't necessarily need to convert the map you can continue using the 7.7 map and the itgems as it comes. You only have to replace the load of the items as well as the map in the sources.


You can change this lines check: TFS-1.5-Downgrades/src/iomap.cpp at fc9157b919405ecde6f30e471255be4e2746884e · nekiro/TFS-1.5-Downgrades (https://github.com/nekiro/TFS-1.5-Downgrades/blob/fc9157b919405ecde6f30e471255be4e2746884e/src/iomap.cpp#L91C3-L91C28)

to:
C++:
    uint32_t headerVersion = root_header.version;
    if (headerVersion <= 0) {
        //In otbm version 1 the count variable after splashes/fluidcontainers and stackables
        //are saved as attributes instead, this solves alot of problems with items
        //that is changed (stackable/charges/fluidcontainer/splash) during an update.
        setLastErrorString("This map need to be upgraded by using the latest map editor version to be able to load correctly.");
        return false;
    }

    if (headerVersion > 2) {
        setLastErrorString("Unknown OTBM version detected.");
        return false;
    }



then change the items check version of this lines: TFS-1.5-Downgrades/src/items.cpp at fc9157b919405ecde6f30e471255be4e2746884e · nekiro/TFS-1.5-Downgrades (https://github.com/nekiro/TFS-1.5-Downgrades/blob/fc9157b919405ecde6f30e471255be4e2746884e/src/items.cpp#L295)

for:

C++:
    if (majorVersion == 0xFFFFFFFF) {
        std::cout << "[Warning - Items::loadFromOtb] items.otb using generic client version." << std::endl;
    /*} else if (majorVersion != 3) {
        std::cout << "Old version detected, a newer version of items.otb is required." << std::endl;
        return false;*/
    //} else if (minorVersion < CLIENT_VERSION_860_OLD) {
    } else if (minorVersion < CLIENT_VERSION_760) {
        std::cout << "A newer version of items.otb is required." << std::endl;
        return false;
    }
Hello, thank you for your reply!

When i change the source code like you, compile it again, run server is okay, when i upload map from this OTX 7.72 RL MAP my server on windows didn't work and window with TFS is auto closed
 
Back
Top