features.lua

main 250 lines · 7.2 KB Raw
Alex Alex Commit Client Upload Part 2 19/10/2026 00:06
1function init()
2 connect(g_game, { onClientVersionChange = updateFeatures })
3end
4
5function terminate()
6 disconnect(g_game, { onClientVersionChange = updateFeatures })
7end
8
9function updateFeatures(version)
10 g_game.resetFeatures()
11 if version <= 0 then
12 return
13 end
14
15 -- you can add custom features here, list of them is in the modules\gamelib\const.lua
16 --g_game.enableFeature(GameBot)
17 --g_game.enableFeature(GameMinimapLimitedToSingleFloor) -- it will generate minimap only for current floor
18 --g_game.enableFeature(GameDrawAuraOnTop)
19 --g_game.enableFeature(GameAuraAlwaysSouth)
20 g_game.enableFeature(GameWingsAndAura)
21 --g_game.enableFeature(GameItemTooltipV8);
22 --g_game.enableFeature(GameOutfitEffect)
23 g_game.enableFeature(GameMagicEffectU16)
24 --g_game.enableFeature(GameCreatureAttachedEffect)
25 g_game.enableFeature(GameExtendedOpcode)
26 g_game.enableFeature(GameOutfitShaders)
27 --g_game.enableFeature(GameCenteredOutfits)
28 g_game.enableFeature(GameAutoOffsetOutfits)
29
30 g_game.enableFeature(GameDiagonalAnimatedText)
31 g_game.enableFeature(GameSmoothWalkElevation)
32 g_game.enableFeature(GameBigAurasCenter)
33 g_game.enableFeature(GameWingOffset)
34 g_game.enableFeature(GameWingsAurasEffectsShader)
35 g_game.enableFeature(GameCreatureShader)
36 g_game.enableFeature(GameAuraFrontAndBack)
37 g_game.enableFeature(GameNewCreatureStacking)
38 g_game.enableFeature(GameFormatCreatureName)
39 g_game.enableFeature(GameItemShader)
40 g_game.enableFeature(GameNegativeOffset)
41 g_game.enableFeature(GameAttackSeq)
42 g_game.enableFeature(GamePlayerMounts)
43 --g_game.enableFeature(GameSpritesU32)
44 g_game.enableFeature(GameSpritesAlphaChannel)
45 g_game.enableFeature(GameEnhancedAnimations)
46 g_game.enableFeature(GameIdleAnimations)
47 g_game.enableFeature(GameMapDrawGroundFirst)
48 --g_game.enableFeature(GameDistanceEffectU16)
49 g_game.enableFeature(GameDistanceShootU16)
50 g_game.enableFeature(GameMapDrawnGroundFirst)
51 g_game.enableFeature(GameChangeMapAwareRange)
52 g_game.enableFeature(GameCreatureIcons)
53 --g_game.enableFeature(GamePacketSizeU32)
54 g_game.enableFeature(GameLooktypeU16)
55 g_game.enableFeature(GamePlayerStateU16)
56 g_game.enableFeature(GameNewOutfitProtocol)
57 g_game.enableFeature(GameExtendedClientPing)
58 g_game.enableFeature(GameNewSpeedLaw)
59 g_game.enableFeature(GameOGLInformation)
60 g_game.enableFeature(GameContentRevision)
61 g_game.enableFeature(GameAuthenticator)
62 g_game.enableFeature(GameSessionKey)
63 g_game.enableFeature(GameTileAddThingWithStackpos)
64 g_game.enableFeature(GameMessageSizeCheck)
65 g_game.enableFeature(GameChallengeOnLogin)
66 g_game.enableFeature(GameTileAddThingWithStackpos)
67 g_game.enableFeature(GameOutfitAttackData)
68
69
70 if(version >= 770) then
71 g_game.enableFeature(GameLooktypeU16)
72 g_game.enableFeature(GameMessageStatements)
73 g_game.enableFeature(GameLoginPacketEncryption)
74 end
75
76 if(version >= 780) then
77 g_game.enableFeature(GamePlayerAddons)
78 g_game.enableFeature(GamePlayerStamina)
79 g_game.enableFeature(GameNewFluids)
80 g_game.enableFeature(GameMessageLevel)
81 g_game.enableFeature(GamePlayerStateU16)
82 g_game.enableFeature(GameNewOutfitProtocol)
83 end
84
85 if(version >= 790) then
86 g_game.enableFeature(GameWritableDate)
87 end
88
89 if(version >= 840) then
90 g_game.enableFeature(GameProtocolChecksum)
91 g_game.enableFeature(GameAccountNames)
92 g_game.enableFeature(GameDoubleFreeCapacity)
93 end
94
95 if(version >= 841) then
96 g_game.enableFeature(GameChallengeOnLogin)
97 g_game.enableFeature(GameMessageSizeCheck)
98 g_game.enableFeature(GameTileAddThingWithStackpos)
99 end
100
101 if(version >= 854) then
102 g_game.enableFeature(GameCreatureEmblems)
103 end
104
105 if(version >= 860) then
106 g_game.enableFeature(GameAttackSeq)
107 end
108
109 if(version >= 862) then
110 g_game.enableFeature(GamePenalityOnDeath)
111 end
112
113 if(version >= 870) then
114 g_game.enableFeature(GameDoubleExperience)
115 g_game.enableFeature(GamePlayerMounts)
116 g_game.enableFeature(GameSpellList)
117 end
118
119 if(version >= 910) then
120 g_game.enableFeature(GameNameOnNpcTrade)
121 g_game.enableFeature(GameTotalCapacity)
122 g_game.enableFeature(GameSkillsBase)
123 g_game.enableFeature(GamePlayerRegenerationTime)
124 g_game.enableFeature(GameChannelPlayerList)
125 g_game.enableFeature(GameEnvironmentEffect)
126 g_game.enableFeature(GameItemAnimationPhase)
127 end
128
129 if(version >= 940) then
130 g_game.enableFeature(GamePlayerMarket)
131 end
132
133 if(version >= 953) then
134 g_game.enableFeature(GamePurseSlot)
135 g_game.enableFeature(GameClientPing)
136 end
137
138 if(version >= 960) then
139 g_game.enableFeature(GameSpritesU32)
140 g_game.enableFeature(GameOfflineTrainingTime)
141 end
142
143 if(version >= 963) then
144 g_game.enableFeature(GameAdditionalVipInfo)
145 end
146
147 if(version >= 972) then
148 g_game.enableFeature(GameDoublePlayerGoodsMoney)
149 end
150
151 if(version >= 980) then
152 g_game.enableFeature(GamePreviewState)
153 g_game.enableFeature(GameClientVersion)
154 end
155
156 if(version >= 981) then
157 g_game.enableFeature(GameLoginPending)
158 g_game.enableFeature(GameNewSpeedLaw)
159 end
160
161 if(version >= 984) then
162 g_game.enableFeature(GameContainerPagination)
163 g_game.enableFeature(GameBrowseField)
164 end
165
166 if(version >= 1000) then
167 g_game.enableFeature(GameThingMarks)
168 g_game.enableFeature(GamePVPMode)
169 end
170
171 if(version >= 1035) then
172 g_game.enableFeature(GameDoubleSkills)
173 g_game.enableFeature(GameBaseSkillU16)
174 end
175
176 if(version >= 1036) then
177 g_game.enableFeature(GameCreatureIcons)
178 g_game.enableFeature(GameHideNpcNames)
179 end
180
181 if(version >= 1038) then
182 g_game.enableFeature(GamePremiumExpiration)
183 end
184
185 if(version >= 1050) then
186 g_game.enableFeature(GameEnhancedAnimations)
187 end
188
189 if(version >= 1053) then
190 g_game.enableFeature(GameUnjustifiedPoints)
191 end
192
193 if(version >= 1054) then
194 g_game.enableFeature(GameExperienceBonus)
195 end
196
197 if(version >= 1055) then
198 g_game.enableFeature(GameDeathType)
199 end
200
201 if(version >= 1057) then
202 g_game.enableFeature(GameIdleAnimations)
203 end
204
205 if(version >= 1061) then
206 g_game.enableFeature(GameOGLInformation)
207 end
208
209 if(version >= 1071) then
210 g_game.enableFeature(GameContentRevision)
211 end
212
213 if(version >= 1072) then
214 g_game.enableFeature(GameAuthenticator)
215 end
216
217 if(version >= 1074) then
218 g_game.enableFeature(GameSessionKey)
219 end
220
221 if(version >= 1080) then
222 g_game.enableFeature(GameIngameStore)
223 end
224
225 if(version >= 1092) then
226 g_game.enableFeature(GameIngameStoreServiceType)
227 end
228
229 if(version >= 1093) then
230 g_game.enableFeature(GameIngameStoreHighlights)
231 end
232
233 if(version >= 1094) then
234 g_game.enableFeature(GameAdditionalSkills)
235 end
236
237 if(version >= 1100) then
238 g_game.enableFeature(GamePrey)
239 end
240
241 if(version >= 1200) then
242 g_game.enableFeature(GameSequencedPackets)
243 --g_game.enableFeature(GameSendWorldName)
244 g_game.enableFeature(GamePlayerStateU32)
245 g_game.enableFeature(GameTibia12Protocol)
246 end
247
248 modules.game_things.load()
249end
250
Top