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

Downgrading TFS client version

Download

New Member
Joined
Mar 30, 2008
Messages
189
Reaction score
2
Location
Cache
I'm trying to make TFS compatible with older versions, such as 7.6, 7.1 or even older.
I presume that using old CVS-sources is both easier and better?
The goal is to basically have an old OT, closest to unexploitable (bugfree) 'as possible'.
Even older than 7.1 would be the best.
 
Indeed, though I rather play Pacman, Pinball or even Minesweeper, rather than 8.1 Tibia.
If I'm lucky I'll learn something on the way (CPP-newb: cout << "I can do hello world!"; ).
I love the idea of Tibia, I mean the original Tibia (I've played for about 6 years), it has a great charm, and regardless of graphic is its content surprising and exciting, which is why I'm still considering to build up for yet another attempt of creating an OT.

Now, smart or not, what's the way to go?
 
Indeed, though I rather play Pacman, Pinball or even Minesweeper, rather than 8.1 Tibia.
If I'm lucky I'll learn something on the way (CPP-newb: cout << "I can do hello world!"; ).
I love the idea of Tibia, I mean the original Tibia (I've played for about 6 years), it has a great charm, and regardless of graphic is its content surprising and exciting, which is why I'm still considering to build up for yet another attempt of creating an OT.

Now, smart or not, what's the way to go?

Why you not just use the 8.11 client and make the systems (runes, skulls, vocations...) like the older versions?

It will be a lot easier.
 
for me max i would downgrade to 8.0(0.000000000000000000001%)
8.1(0.1%)
downgrading is useless more features are added to 8.0~8.11.
 
Why you not just use the 8.11 client and make the systems (runes, skulls, vocations...) like the older versions?

It will be a lot easier.

Graphic, client functionality (ctrl+k = aimbot is available-- even if server doesn't allow, it appear), etc.
Stop questioning me, please.
 
ppl wont help u if u behave like this ;/ so be more kind and sisten to peolpe and give thm some reawsons and u might some up with some good or even better ideas:thumbup:
 
ppl wont help u if u behave like this ;/ so be more kind and sisten to peolpe and give thm some reawsons and u might some up with some good or even better ideas:thumbup:

Then I don't need people's help.
Don't you get it?
When someone doesn't even get my question, they will not know the answer to the question, with a chance of 95%.
I'm not randomly kind, I'm humble until not found required: I carry alot of anger and I despise humanity by defining it as: average (just like you don't hate pooh, if there's one certain pooh that saves the world one day-- there's always exceptions).

Reasons doesn't matter, if I say I need something, and you're not suspicious I will use it maliciously, and it's not sensitive information, then you should be able to either reply direct to my question or shut up.

Judgmental philosophy? Perhaps, but seen in a greater perspective it's superior and filters out what's not necessary.

I don't need anyone's help, because ultimately, I don't need to live.
To need is only valid where two variables or constants is defined, and is being used in an over-exaggerated way; as if it's not required to compare~

I ask my way, I know the consequences of it, and I'm not to be taught by some random imbecile how to act, thank you very much.

All off-topic questions will from now on be ignored (unless interesting), thanks to anyone who will provide me with any constructive help.
As already noticed(?) - am I quite picky on what's constructive/relevant.
 
Last edited:
@up lol that made me laugh xd

@topic

I think you need to remove and edit very much things to make it work with a lower client version, since many new things has been added.
 
@up lol that made me laugh xd

@topic

I think you need to remove and edit very much things to make it work with a lower client version, since many new things has been added.
I don't need the 8.x features, I just need most security issues fixed (all bugs in lua and xml is easy to fix), such as memory leaks~
I haven't fully learned how to fix it yet, only basic exploiting of it.

Conclusion is: I don't need ideas, I need the direction to what I've already mentioned; not alternatives to what I "could" do, especially not something as obvious as "use 8.x", jesus, any ignorant imbecile can figure that out on his/her own.

This whole thing isn't about: please help me to make me reach my dream, but: if you care, show me a shortcut.
I'm always able to figure a way, either way, it's just about time.

Glad I made you laugh Master, though if you were laughing at me, I'm quite sure I'm in the wrong society.
I've had greater experiences & replies at physicsforum (and even Mensa.no), for example, they're both less ignorant and less close-minded, though I'm still giving this community a try, base on the fact that both Souldrainer (Krille/Badtoffel) & Talaturen seems relatively educated.
 
Wrong section, it can be moved to the "Support" section.

kthxbye.

Based on 80-90+% of the threads in here, is my thread in the correct section.
Now, instead of spamming the thread down with unnecessary information, please report me.
Bye, don't come back.

Edit: Nightmare's webserver unexpectedly shut down, as a concept of proof that random flamers are ignorant.
 
Last edited:
Basically what you would need to do.

1) Download the latest 8.11 server code you want to work with 7.x
2) Find protocolgame.cpp/.h remove everything except the function declarations.
Example:
void ProtocolGame::sendOpenPrivateChannel
{
NetworkMessage* msg = getOutputBuffer();
if(msg){
msg->AddByte(0xAD); <- remove this line
msg->AddString(receiver); <- remove this line
}
}
3) Download an old 7.x server code from opentibia sourceforge
4) Find the protocol7x.cpp/.h, now find the function sendOpenPrivateChannel and copy paste that code into protocolgame.cpp. Alot of the code is the same so check if any packet-bytes has changed from 7.6 to 8.11.

5) Encryption need to be disabled, so comment away the RSA_decrypt and enableXTEAEncryption() and the lines retrieving the xtea-key (isn't sent by the client) in protocolgame.cpp, change CLIENT_VERSION_MIN/MAX.

It's not hard if you know what your doing but expect days of debugging and client crashes.
 
3) Download an old 7.x server code from opentibia sourceforge
4) Find the protocol7x.cpp/.h, now find the function sendOpenPrivateChannel and copy paste that code into protocolgame.cpp. Alot of the code is the same so check if any packet-bytes has changed from 7.6 to 8.11.

5) Encryption need to be disabled, so comment away the RSA_decrypt and enableXTEAEncryption() and the lines retrieving the xtea-key (isn't sent by the client) in protocolgame.cpp, change CLIENT_VERSION_MIN/MAX.

The first time I tried, I did indeed search through protocol*.cpp and changed it to accept for instance 7.6 instead what was default, but the client crashed when logging in, so I suspected the encryption key to be different, then I lost the focus, and started with something else instead.

So ye, declaration remains, while I shall remove all information (if, while, else, and all it contains)?

Honestly, I weren't even able to download old revisions with TortoiseSVN, though I'm sure I can just look it up when I care :) Else, I can just download each file manually (from what you've said so far, I only need the protocol-file anyways).
Thanks for your reply.
 
Then I don't need people's help.
Don't you get it?
When someone doesn't even get my question, they will not know the answer to the question, with a chance of 95%.
I'm not randomly kind, I'm humble until not found required: I carry alot of anger and I despise humanity by defining it as: average (just like you don't hate pooh, if there's one certain pooh that saves the world one day-- there's always exceptions).

Reasons doesn't matter, if I say I need something, and you're not suspicious I will use it maliciously, and it's not sensitive information, then you should be able to either reply direct to my question or shut up.

Judgmental philosophy? Perhaps, but seen in a greater perspective it's superior and filters out what's not necessary.

I don't need anyone's help, because ultimately, I don't need to live.
To need is only valid where two variables or constants is defined, and is being used in an over-exaggerated way; as if it's not required to compare~

I ask my way, I know the consequences of it, and I'm not to be taught by some random imbecile how to act, thank you very much.

All off-topic questions will from now on be ignored (unless interesting), thanks to anyone who will provide me with any constructive help.
As already noticed(?) - am I quite picky on what's constructive/relevant.

wow!


pretty heavy stuur ur saing there , but still if u make a thread and ask for something meansd u need something u cant get ur self and by "not being kind" u dont get the things u need , but simone is so kind to help u wans i just wanne make u see tht being kind to peolple make life more fun.
 
wow!


pretty heavy stuur ur saing there , but still if u make a thread and ask for something meansd u need something u cant get ur self and by "not being kind" u dont get the things u need , but simone is so kind to help u wans i just wanne make u see tht being kind to peolple make life more fun.

As I said, I'm not randomly kind; I'm humble in start -- analyzing a person (by first impression of nothing more is necessary).
By humble I mean silent, or if required to respond: kind for a short moment, since I analyze pretty fast :)

I appreciate that you care to attempt teaching me something, though it's only a waste of time.
I'm not participating in this 'social game', because the rules are too cruel; where backstabbing is listed as allowed.
If you're humble and kind yourself at first impression, I'll be kind back, though you can't expect me to like you either way.

Now, please, if anyone else has a problem about my behavior, report me or PM me, don't waste the thread space (I rather bump myself, when required)
 
The first time I tried, I did indeed search through protocol*.cpp and changed it to accept for instance 7.6 instead what was default, but the client crashed when logging in, so I suspected the encryption key to be different, then I lost the focus, and started with something else instead.

So ye, declaration remains, while I shall remove all information (if, while, else, and all it contains)?

Honestly, I weren't even able to download old revisions with TortoiseSVN, though I'm sure I can just look it up when I care :) Else, I can just download each file manually (from what you've said so far, I only need the protocol-file anyways).
Thanks for your reply.

7.6 isn't encrypted so you need to remove all that I guess.
 
Back
Top