Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Idea for Experience Calculator

Newbie Spellweaver
Joined
Jun 3, 2013
Messages
33
Reaction score
6
Hey guys, I was playing recently, getting some levels and such, but one day after I got 75% xp
I just felt like the last 25% were much much harder and slower to get, maybe I was exhausted after so many hours and was not killing mobs efficiently.

But then I thought about having a timer and experience calculator that could show me how much experience I was receiving, how much left until level up, etc...


Can someone point me on the direction of how would be possible to implement such thing?
No need to inject it in the client, to be part of it, maybe a little program on a separate windows, but how could I receive the experience information from the game? Maybe reading that stored number after it changed by killing a mob, if someone tell me this is possible, I will elaborate more the idea and show you guys how it's supposed to be.

Thanks.
 
RZA-PT | KilroyPT
Joined
Aug 27, 2007
Messages
936
Reaction score
85
The %TNL is a direct % calculation of the difference between the levels. If you are receiving the EXP then it will be going up.

(current EXP - EXP for current level ) / (Next level EXP - EXP for current level) X 100

I.E. If I have 2250XP and I'm level 1:
Level 2 is 2500, Level 1 is 1000XP.
2250 - 1000 = 1250,
2500 - 1000 = 1500,
then that to a %, so (1250/1500)X100 = 83.33%

the only time it may be slower is if you're char got bugged/flagged due to exp gain or damage limits and its not registering exp gained.
 
Last edited:
Newbie Spellweaver
Joined
Jun 3, 2013
Messages
33
Reaction score
6
Thanks for the reply, but I don't think you understood my proposal, so I made an image using my Da Vinci skills on paint:

SubNinja - Idea for Experience Calculator - RaGEZONE Forums

The image shows a possible position for the information that consists on the current Exp being made per hour, and how much time will take to level up with the current exp efficiency

So if I'm efficient and I cal kill many monsters, the exp per hour goes up, and the time to next level goes down, otherwise, exp per hour goes down and the time goes up, if I'm no more efficient.
This way I know if it´s time to take a break, or change spawn or anything else.


My question is: is it possible to retrieve the experience information so the program will make the needed calculations, every mob killed updates the current exp and the timer starts to count and update from every second or so
 
RZA-PT | KilroyPT
Joined
Aug 27, 2007
Messages
936
Reaction score
85
I would say it would be entirely possible if you can write it into a dll and call it from the game, maybe where it does the exp / tnl calculation, redirect it to a new dll and have the TNL and your function written into it. thats well beyond my scope of abilities however.
bobasol (or SheenBR, i cant remember who) wrote a nice TUTU about adding and referencing a dll in the client.
 
Joined
Jul 24, 2006
Messages
883
Reaction score
581
Entirely possible.
My mate sunbeam was working on something similar to this.

I'll ask him if he wants to share his source.

wT11bqa - Idea for Experience Calculator - RaGEZONE Forums


jdJ0I0a - Idea for Experience Calculator - RaGEZONE Forums


MdF07L4 - Idea for Experience Calculator - RaGEZONE Forums
 

Attachments

You must be registered for see attachments list
Newbie Spellweaver
Joined
Jun 3, 2013
Messages
33
Reaction score
6
Nice, very close to what I thought, the kill count is something I would add too.
If he don't want to share the source, maybe any information on how to get the data would be cool.
 
Moderator
Staff member
Moderator
Joined
Feb 22, 2008
Messages
2,404
Reaction score
723
All the data can be obtained if you hook the game. You need to inject something into the game so you can read its memory. You can use Cheat Engine I suppose to get simpler things but the exp ammount for example, its in an encrypted packet sent from the server.

You can either hook the internal recv function or create somekind of packet sniffer but then you will still need to decrypt it. You can also hook the function in game/server where it processes the packets in the already decrypted form.

All I can suggest to you is download the PT source code and find out about the packets. Then take a look into smPacket.h
You'll find all the structs you need there (almost) =)
 
Back
Top