Deprecated: The behavior of unparenthesized expressions containing both '.' and '+'/'-' will change in PHP 8: '+'/'-' will take a higher precedence in /home/iano/public_html/tpforums-vb5/forum/includes/class_core.php on line 5842

PHP Warning: Use of undefined constant MYSQL_NUM - assumed 'MYSQL_NUM' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: Use of undefined constant MYSQL_ASSOC - assumed 'MYSQL_ASSOC' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: Use of undefined constant MYSQL_BOTH - assumed 'MYSQL_BOTH' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in ..../includes/functions_navigation.php on line 588

PHP Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in ..../includes/functions_navigation.php on line 612

PHP Warning: Use of undefined constant misc - assumed 'misc' (this will throw an Error in a future version of PHP) in ..../global.php(29) : eval()'d code(6) : eval()'d code on line 1

PHP Warning: Use of undefined constant index - assumed 'index' (this will throw an Error in a future version of PHP) in ..../global.php(29) : eval()'d code(6) : eval()'d code on line 1

PHP Warning: Use of undefined constant misc - assumed 'misc' (this will throw an Error in a future version of PHP) in ..../includes/class_bootstrap.php(1422) : eval()'d code(4) : eval()'d code on line 1

PHP Warning: Use of undefined constant index - assumed 'index' (this will throw an Error in a future version of PHP) in ..../includes/class_bootstrap.php(1422) : eval()'d code(4) : eval()'d code on line 1

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6
Just a little help, is all I need. - Page 2
Page 2 of 2 FirstFirst 12
Results 11 to 16 of 16

Thread: Just a little help, is all I need.

  1. #11
    Junior Member
    Join Date
    Aug 2012
    Posts
    25
    Quote Originally Posted by Wesker View Post
    Remember you have to get hit, then changed the value, then hit again and changed value, then don't get hit and set the unchanged value, and click it like a crazy mad man, then walk a bit and still unchanged value, then get hit again and search changed value it should pop-up very fast

    However remember that you have to do it without the astral, so restart ur pc



    edit : also theres 2 methods on that post, the ollydbg and the cheat engine method, both do the same, and will get you those addreses
    It worked ( I think ), but
    that's just one address out of many.
    Which one is the one that actually injects the bot?,
    like, when I start my bot, it says [9.8.4.0] Not logged in.
    which means I'm not injected ;S

  2. #12
    Senior Member
    Join Date
    Nov 2010
    Posts
    397
    i got no idea i didnt got to that part yet........
    im on assembly atm

  3. #13
    Senior Member
    Join Date
    Dec 2011
    Posts
    249
    I think that one is just the IsConnected address which is easily found with Cheat Engine. Simply log in and search for 10, then log out and search for 0 and repeat until you only have one address left, that is your IsConnected address.

  4. #14
    Senior Member
    Join Date
    Jan 2008
    Location
    Cambridge, England
    Posts
    725
    Quote Originally Posted by Umbled View Post
    I can't believe I missed that big text where I could disable it, lol ;P.

    One question, I checked ur thread, and I'm trying to get my HP address,
    Step one is to start Cheat Engine, make the scan type as "Unknown initial value",
    make the first scan, go down and let a monster hit you once, and take some of your hp.
    Now I'm going to set the scan type as "Changed Value", and I'm supposed to do it like that until I'm getting one address?

    Please correct me if im wrong, cus it ain't workin'.
    It worked getting the exp address as Jash described.
    The problem with HP is that it is XOr'd, so it will be more difficult (but not impossible) to find. The best way to find it is using OllyDBG, and by entering Tibia.exe, and looking for your HP followed closely by an XOr command. That gets a bit complex though, as does everything at this stage of development.

    A brief explanation of XOr is this:

    XOr means Exclusive Or. It is a comparative operator, meaning it takes two values and returns a value based on the two values entered. With any two of the values of an XOr calculation, you can find the third. It is also a bitwise comparison, so the operation itself isn't done on a number which you will be able to use, but the bits which represent that number in your computers memory.

    An example (You might want to crack out calculator and notepad and follow along to understand it well):

    Let's say your health is 123.
    Let's also say your XOr key is 321.
    123 in binary is 001111011 (I added the extra 0's to make sure that the length of the two values was the same, just to make it easier to look at)
    321 in binary is 101000001

    So how does it work? Well, like this:
    001111011 This is the binary representation of 123
    101000001 This is the binary representation of 321
    011000101

    Look at this column by column, the first number in the first row is 0, the first number in the second row is 1, because these are different, the XOr value is 0. The second number in the first row is 0, as is the second number in the second row. Because these numbers are the same, the XOr value of this bit is 1. The process proceeds through the numbers as such.

    This is implemented into Tibia by having an XOr key stored in memory, and each time you receive a packet that updates your health, the XOr calculation is processed. The number stored in your memory as your health will be stored as the third line of binary above, 011000101, and whenever your HP needs to be updated on screen you'll notice that this value is XOr'd with the key (which we selected as 321). We don't know the XOr key for Tibia, as it changes on startup, but the address at which it is saved is always in the same place (except for using ASLR).

    I'll also point out that disabling ASLR isn't that important a thing to do. All that ASLR does is changes the base address of Tibia from 0x400000 (or something around there) to something random, and the base address can be obtained by taking Tibias process from your memory (using System.Diagnostics; Process p = Process.GetProcessesByName("Tibia")[0]; IntPtr baseAddress = p.MainModule.BaseAddress; ) This will get the first Tibia client in the list of open clients, assign the process of that client to variable p, and then store the base address of the main module (basically the main thread) to the variable baseAddress. It kinda bypasses ASLR very effectively.

  5. #15
    Super Moderator
    Join Date
    May 2007
    Posts
    1,191
    Quote Originally Posted by XtrmJash View Post
    So how does it work? Well, like this:
    001111011 This is the binary representation of 123
    101000001 This is the binary representation of 321
    011000101

    Look at this column by column, the first number in the first row is 0, the first number in the second row is 1, because these are different, the XOr value is 0. The second number in the first row is 0, as is the second number in the second row. Because these numbers are the same, the XOr value of this bit is 1. The process proceeds through the numbers as such.
    What you are describing is the AND operator. XOR bits will only be 1 if the values are different.

  6. #16
    Senior Member
    Join Date
    Dec 2011
    Posts
    249
    001111011
    101000001

    100111010 <-- xor

    Can I have a cookie?

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •