forked from tulio150/tibia-ttm
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTibia update protocol.txt
More file actions
70 lines (55 loc) · 1.72 KB
/
Tibia update protocol.txt
File metadata and controls
70 lines (55 loc) · 1.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
Informaton about how Tibia updates itself
by tulio150 - tpforums.org
Thanks to:
Tibia's own debug assertions
Tibia Time Machine
This could be used to:
-One could make a mirror server when Tibia is updating, because cipsoft's always get down
-A server which you can download any Tibia version using the client
(Ex: login with acc tibia861 to replace your client with Tibia 8.61)
-OTServer: login with a certain acc/pass to download a custom client
-OTServer: custom graphics for each account (rank system, premmy/free, gm)
-OTServer: real updates
-Custom clients: get Tibia dat/pic/spr on-the-fly
Bad things people can do with this knowledge:
-Sending a new patcher followed by a dummy patch to make Tibia launch a virus
-Enforcing a custom client
-Update player's graphics without his knowledge
To-do:
Where Tibia stores the downloaded data
How the patching works after everything is downloaded
Patch file format
-------------------------------
ID 0x1E = Patch
ID 0X1F = Whole file
[1 byte ] Patch type
[4 bytes] Data size
Patch types:
0 = Tibia.exe (program version)
1 = Tibia.dat (object data)
2 = Tibia.spr (object graphics)
3 = Tibia.pic (pictures)
4 = Patcher.exe (patcher) (0x1F only)
5 = linux showerror file (??)
--------------------------------
ID 0x20 = Update data
[2 bytes] Block size
[x bytes] Block
Obs: Tibia server sends blocks of 10kb (10240 bytes) at a time
--------------------------------
1E / 1F records
Update 8.71:
8.70:
1F 00 00 20 25 00 // 0x252000 = 8.71 Tibia.exe size
8.62:
1E 01 D2 AE 00 00 // Don't know how to handle these patches
1E 02 6C 66 5F 00
1E 03 D1 EB 01 00
1F 00 00 20 25 00
8.61:
1E 01 D2 AE 00 00
1E 02 6C 66 5F 00
1E 03 95 EE 01 00
1F 00 00 20 25 00
8.60: server rejects connection
~~to be continued~~