• 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!
  • 2026 staff recruitment is open! Check it out and consider applying!

TFS 1.X+ Is it possible to activate Leech, Mana, Critic in TFS 1.5 7.72 Nekiro? Otv8

Joined
Feb 11, 2023
Messages
38
Solutions
1
Reaction score
14
Location
Brazil, SP
How are you, my friends?

I've been working on the server a lot lately, and it naturally has this feature, but I'd like to share my progress with you and try to successfully implement it.

I added the Leo attribute system to my TFS and it works beautifully, but I'd never seen this Leech before. I'm not a hardcore Tibia player, but I enjoy messing around on the server, and I've been looking for ways to make these additional attributes work.

Leo's system: [TFS 1.X] Rarity Rolls & Custom Attributes Library (https://otland.net/threads/tfs-1-x-rarity-rolls-custom-attributes-library.268888/)

So, I enabled the feature in OTV8 to display the Skills.


LUA:
g_game.enableFeature(GameAdditionalSkills)

1753553901204.webp

However, my client terminal started to jump some Opcode errors, yes the extended Opcode is active directly in the code.

ERROR: ProtocolGame parse message exception (2593 bytes, 126 unread, last opcode is 0x00 (0), prev opcode is 0x00 (0)): InputMessage eof reachedPacket has been saved to packet.log, you can use it to find what was wrong. (Protocol: 772)

So I thought, are there some lines missing or is the leech system incomplete? Then I found this commit on FTS.

Adding "boosts" introduced in protocol 10.94 (#2395) · otland/forgottenserver@0d2c287 (https://github.com/otland/forgottenserver/commit/0d2c287f08b43ec2a3f295d6f07545e22a70c29a#)

I strictly followed the changes, I know it's version 10, but TFS 1.5 7.72 has 90.95% of the code from this commit, so I made some changes to make it exactly the same, and the result was the same.

ERROR: ProtocolGame parse message exception (2593 bytes, 126 unread, last opcode is 0x00 (0), prev opcode is 0x00 (0)): InputMessage eof reachedPacket has been saved to packet.log, you can use it to find what was wrong. (Protocol: 772)

And I noticed that if I keep moving the item, equipping and unequipping it, I get errors like

ERROR: ProtocolGame parse message exception (3086 bytes, 450 unread, last opcode is 0x00 (0), prev opcode is 0x0a (10)): InputMessage eof reachedPacket has been saved to packet.log, you can use it to find what was wrong. (Protocol: 772)

I didn't find much information on the subject or if it's even possible, so I came here to ask university students for help to find out if it's possible and what's missing, or if it's not possible and I'll stop my search here.

These are all the features of my OTCv8 for 7.72

g_game.enableFeature(GamePlayerAddons)
g_game.enableFeature(GamePlayerMounts)
g_game.enableFeature(GameNewOutfitProtocol)
g_game.enableFeature(GameItemTooltip)
g_game.enableFeature(GameLooktypeU16)
g_game.enableFeature(GameMessageStatements)
g_game.enableFeature(GameLoginPacketEncryption)

g_game.enableFeature(GameAdditionalSkills)

Then I thought, can I ignore these errors and move on with my life? No! Because if I equip and unequip items too quickly, the client crashes or duplicates items. It seems like the packets are getting lost between the client and server with g_game.enableFeature(GameAdditionalSkills)

HEEELLPPPPP!!
Post automatically merged:

I enabled this guy too.

luaItemDesc = true
 
Solution
How are you, my friends?

I've been working on the server a lot lately, and it naturally has this feature, but I'd like to share my progress with you and try to successfully implement it.

I added the Leo attribute system to my TFS and it works beautifully, but I'd never seen this Leech before. I'm not a hardcore Tibia player, but I enjoy messing around on the server, and I've been looking for ways to make these additional attributes work.

Leo's system: [TFS 1.X] Rarity Rolls & Custom Attributes Library (https://otland.net/threads/tfs-1-x-rarity-rolls-custom-attributes-library.268888/)

So, I enabled the feature in OTV8 to display the Skills.


LUA:
g_game.enableFeature(GameAdditionalSkills)

View attachment 93940

However, my client...
How are you, my friends?

I've been working on the server a lot lately, and it naturally has this feature, but I'd like to share my progress with you and try to successfully implement it.

I added the Leo attribute system to my TFS and it works beautifully, but I'd never seen this Leech before. I'm not a hardcore Tibia player, but I enjoy messing around on the server, and I've been looking for ways to make these additional attributes work.

Leo's system: [TFS 1.X] Rarity Rolls & Custom Attributes Library (https://otland.net/threads/tfs-1-x-rarity-rolls-custom-attributes-library.268888/)

So, I enabled the feature in OTV8 to display the Skills.


LUA:
g_game.enableFeature(GameAdditionalSkills)

View attachment 93940

However, my client terminal started to jump some Opcode errors, yes the extended Opcode is active directly in the code.



So I thought, are there some lines missing or is the leech system incomplete? Then I found this commit on FTS.

Adding "boosts" introduced in protocol 10.94 (#2395) · otland/forgottenserver@0d2c287 (https://github.com/otland/forgottenserver/commit/0d2c287f08b43ec2a3f295d6f07545e22a70c29a#)

I strictly followed the changes, I know it's version 10, but TFS 1.5 7.72 has 90.95% of the code from this commit, so I made some changes to make it exactly the same, and the result was the same.



And I noticed that if I keep moving the item, equipping and unequipping it, I get errors like



I didn't find much information on the subject or if it's even possible, so I came here to ask university students for help to find out if it's possible and what's missing, or if it's not possible and I'll stop my search here.

These are all the features of my OTCv8 for 7.72



Then I thought, can I ignore these errors and move on with my life? No! Because if I equip and unequip items too quickly, the client crashes or duplicates items. It seems like the packets are getting lost between the client and server with g_game.enableFeature(GameAdditionalSkills)

HEEELLPPPPP!!
Post automatically merged:

I enabled this guy too.

luaItemDesc = true
Change

C++:
    /*for (uint8_t i = SPECIALSKILL_FIRST; i <= SPECIALSKILL_LAST; ++i) {
        msg.add<uint16_t>(std::min<int32_t>(100, player->varSpecialSkills[i]));
        msg.add<uint16_t>(0);
    }*/
to

C++:
    for (uint8_t i = SPECIALSKILL_FIRST; i <= SPECIALSKILL_LAST; ++i) {
        uint8_t skillVal = static_cast<uint8_t>(std::clamp(player->varSpecialSkills[i], 0, 100));
        msg.addByte(skillVal);
    }
 
Solution
Change

C++:
    /*for (uint8_t i = SPECIALSKILL_FIRST; i <= SPECIALSKILL_LAST; ++i) {
        msg.add<uint16_t>(std::min<int32_t>(100, player->varSpecialSkills[i]));
        msg.add<uint16_t>(0);
    }*/
to

C++:
    for (uint8_t i = SPECIALSKILL_FIRST; i <= SPECIALSKILL_LAST; ++i) {
        uint8_t skillVal = static_cast<uint8_t>(std::clamp(player->varSpecialSkills[i], 0, 100));
        msg.addByte(skillVal);
    }
Are you kidding me kkkkkkkkkkkkkkkkkkk I tried this over and over again in the last few days, and now it worked! Very good bro, thanks, it worked!
 
Back
Top