• 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!

[TOOL] Convert any map between ServerID and ClientID

Glaszcz Koldre

Well-Known Member
Joined
Mar 16, 2016
Messages
99
Reaction score
87
Hi. With this tool OpenTibia - Convert any map to 7.6 (https://otland.net/threads/convert-any-map-to-7-6.259410/) (thanks to @Peonso ),
and this tool GitHub - Inconcessus/OTBM2JSON: OTBM2JSON - A generic framework for programmatic modification of OTBM files. (https://github.com/Inconcessus/OTBM2JSON) @Forby

I was able to modify the ID values to convert maps between ClientID <->ServerID. It should work for all maps below protocol 13.16 inclusive. In addition, the script works for multiple maps, not just 1.

So shoutout to those guys. I just made it to work in a loop and changed ID's

The usage is very simple

1.Put the .otbm files into the "input_folder" folder.
2.Run autorun.bat
3.Select from the menu in what ID you want to convert the maps to
4.After executing the script, the converted maps will be in the "output_folder" folder

This way you can convert maps made under TFS to OTBR/Canary/Nostalrius/Sabrehaven maps and vice versa. :)
You can convert as many maps at once as you want.

Keep in mind that this tool is not perfect, and some tiles may be incorrect (Especially maps from Nostalrius to TFS.), but in like 99% its fine and workable.

Enjoy and happy mapping!

Some screens:
1688653228962.png

1688653238332.png
 

Attachments

  • ClientID and ServerID map Converter.7z
    81.7 KB · Views: 233 · VirusTotal
Last edited:
Man i need that as crazy, but when i press 1 or 2 nbithing happends, if i press 1 and etner i got message
'node' is not recognized as an internal or external command,
operable program or batch file.
Press any key to continue . . .

##FIXED - YOU HAVE TO INSTALL NODE.JS!!!!!!!!!!!!!
 
Last edited:
with this you could convert nostalrius map to be used in tfs server, right?
 
Hi. With this tool OpenTibia - Convert any map to 7.6 (https://otland.net/threads/convert-any-map-to-7-6.259410/) (thanks to @Peonso ),
and this tool GitHub - Inconcessus/OTBM2JSON: OTBM2JSON - A generic framework for programmatic modification of OTBM files. (https://github.com/Inconcessus/OTBM2JSON) @Forby

I was able to modify the ID values to convert maps between ClientID <->ServerID. It should work for all maps below protocol 13.16 inclusive. In addition, the script works for multiple maps, not just 1.

So shoutout to those guys. I just made it to work in a loop and changed ID's

The usage is very simple

1.Put the .otbm files into the "input_folder" folder.
2.Run autorun.bat
3.Select from the menu in what ID you want to convert the maps to
4.After executing the script, the converted maps will be in the "output_folder" folder

This way you can convert maps made under TFS to OTBR/Canary/Nostalrius/Sabrehaven maps and vice versa. :)
You can convert as many maps at once as you want.

Keep in mind that this tool is not perfect, and some tiles may be incorrect (Especially maps from Nostalrius to TFS.), but in like 99% its fine and workable.

Enjoy and happy mapping!

Some screens:
View attachment 76574

View attachment 76575
Good Tool.

gitbook Otbr, has many maps, and much from here.
Take one, convert it, open it on RME using for example 13x spr/dat extracted and result:


Example for Emerald Map:

1691691241622.png

Another one, Atreyu:

1691691319148.png
 
Works fine for me.
Make sure that after conversion to open it in Latest remeres for TFS, not for Canary.

View attachment 77628
Directly convert from any map downloaded, doesnt work ( for me ) only if map is 12x and not clientID.

I fix it like this:
You need before open the map, change map from 8 - 9 - 10x, and save it as 12x.
Use your tool, then it will convert correctly the map.
But directly using your tool for a map that is not 12x, for me doesnt work on the latest RME it opens like the picture.
 
Hello friends, I'm having this problem, can someone help me?
Select an option:
1. Convert from ServerID to ClientID (example: TFS to OTBR/Nostalrius")
2. Convert from ClientID to ServerID (example: OTBR/Nostalrius to TFS)
Enter your choice (1 or 2): 1
node:internal/buffer:86
throw new ERR_BUFFER_OUT_OF_BOUNDS();
^

RangeError [ERR_BUFFER_OUT_OF_BOUNDS]: Attempt to access memory outside buffer bounds
at new NodeError (node:internal/errors:405:5)
at boundsError (node:internal/buffer:86:11)
at Buffer.readUInt16LE (node:internal/buffer:245:5)
at readASCIIString16LE (C:\Users\kkkkkkkkk\Desktop\ClientID and ServerID map Converter\OTBM2JSON\otbm2json.js:462:35)
at readAttributes (C:\Users\kkkkkkkkk\Desktop\ClientID and ServerID map Converter\OTBM2JSON\otbm2json.js:510:35)
at new Node (C:\Users\kkkkkkkkk\Desktop\ClientID and ServerID map Converter\OTBM2JSON\otbm2json.js:344:29)
at readNode (C:\Users\kkkkkkkkk\Desktop\ClientID and ServerID map Converter\OTBM2JSON\otbm2json.js:637:19)
at readNode (C:\Users\kkkkkkkkk\Desktop\ClientID and ServerID map Converter\OTBM2JSON\otbm2json.js:626:17)
at readNode (C:\Users\kkkkkkkkk\Desktop\ClientID and ServerID map Converter\OTBM2JSON\otbm2json.js:626:17)
at readNode (C:\Users\kkkkkkkkk\Desktop\ClientID and ServerID map Converter\OTBM2JSON\otbm2json.js:626:17) {
code: 'ERR_BUFFER_OUT_OF_BOUNDS'
}

Node.js v18.17.1
Pressione qualquer tecla para continuar. . .
 
same problem on windows 10 when i start it with admin privileges.

Lua:
node:internal/modules/cjs/loader:1145
  throw err;
  ^

Error: Cannot find module './OTBM2JSON/otbm2json'
Require stack:
- C:\Windows\System32\ClientID_to_ServerID.js
    at Module._resolveFilename (node:internal/modules/cjs/loader:1142:15)
    at Module._load (node:internal/modules/cjs/loader:983:27)
    at Module.require (node:internal/modules/cjs/loader:1230:19)
    at require (node:internal/modules/helpers:179:18)
    at Object.<anonymous> (C:\Windows\System32\ClientID_to_ServerID.js:10:19)
    at Module._compile (node:internal/modules/cjs/loader:1368:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1426:10)
    at Module.load (node:internal/modules/cjs/loader:1205:32)
    at Module._load (node:internal/modules/cjs/loader:1021:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:142:12) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [ 'C:\\Windows\\System32\\ClientID_to_ServerID.js' ]
}

Node.js v21.7.1

but when i start it normally i get this
Lua:
Select an option:
1. Convert from ServerID to ClientID (example: TFS to OTBR/Nostalrius")
2. Convert from ClientID to ServerID (example: OTBR/Nostalrius to TFS)
Enter your choice (1 or 2): 2
Total process took less than 1s.

but i dont get any file
 
Last edited:
Because you have to run it in tool folder, not system32 folder. You dont need admin.

See example

1715874680186.png
 
Do you have this problem with any map, or one map particularly? Either your map is custom/has custom items/is not supported.

Or maybe readAttributes(data) and readNode needs to be adjusted GitHub - Inconcessus/OTBM2JSON: OTBM2JSON - A generic framework for programmatic modification of OTBM files. (https://github.com/Inconcessus/OTBM2JSON)

I have no idea.
the problem is it doesnt convert maps from 7.72 i had to update that map to version 13.10 and convert it and downgrade it again back to 7.7 wich is a problem because most of the map is bugged / missing tiles :) so atleast it doesnt work for these low versions
 
Last edited:
@Glaszcz Koldre do you have an updated version (with latest ids) ?
Unfortunately not, sorry. I will do it gladly if someone provides me with an updated items.odb file for the latest tibia client, and ofc TFS compatible. So far, for example, OTA RME from which I took files from, only supports tibia 13.20.
 
Unfortunately not, sorry. I will do it gladly if someone provides me with an updated items.odb file for the latest tibia client, and ofc TFS compatible. So far, for example, OTA RME from which I took files from, only supports tibia 13.20.
Here it's, updated to latest version (13.36), TFS fully compatible, created by myself ;)
 

Attachments

Here it's, updated to latest version (13.36), TFS fully compatible, created by myself ;)
Here. I marked it as a beta, since I don't have tools to test it properly. There are some differences in IDs's when I tried to compare it to the previous converter, so it also has to be tested with older maps, like before 13.16.

Try for yourself and tell me if it works fine. It's 100% ID's from your file. :)
 

Attachments

  • BETA 13.36 - ClientID and ServerID Map Converter.7z
    836.1 KB · Views: 12 · VirusTotal
Here. I marked it as a beta, since I don't have tools to test it properly. There are some differences in IDs's when I tried to compare it to the previous converter, so it also has to be tested with older maps, like before 13.16.

Try for yourself and tell me if it works fine. It's 100% ID's from your file. :)
1717090000816.png

Tried to convert Canary map to TFS
 
Back
Top