• Unfortunately, we have experienced significant hard drive damage that requires urgent maintenance and rebuilding. The forum will be a state of read only until we install our new drives and rebuild all the configurations needed. Please follow our Facebook page for updates, we will be back up shortly! (The forum could go offline at any given time due to the nature of the failed drives whilst awaiting the upgrades.) When you see an Incapsula error, you know we are in the process of migration.

Change Zoom Out Limit

U

Unregistered

Guest
Alternative method: open elementclient.exe in an hex editor and edit 00 00 00 41 -> 00 00 A0 41 around 0x56A0 (not sure of exact address as mine is quite heavily modified).

At least that worked for me :D
 
Junior Spellweaver
Joined
Sep 5, 2003
Messages
120
Reaction score
544
This guide will show how to change the default zoom limit in CN 1.3.6 elementclient.exe from 8.0 meters to 20.0 meters (like in PWI 1.4.2)

Requirements:
You should have advanced programming or similar skills and you should know OllyDBG...

  1. login to the game with any character
  2. open OllyDBG 1.10
  3. attach elementclient.exe to OllyDBG
  4. open executable modules window and double click the elementc module
  5. now you see the code in the CPU window
  6. right click in CPU window -> Search for -> Sequence of Commands

    Code:
    fadd dword ptr [esi+40]
    fst dword ptr [esi+40]

    Unregistered - Change Zoom Out Limit - RaGEZONE Forums


  7. go ~17 lines up and look for

    Code:
    MOV ECX,41000000
  8. this value is used as zoom limit, default is 4100000 (8.0f)
  9. double click and change this to 20.0f

    Code:
    MOV ECX,41A00000

    Unregistered - Change Zoom Out Limit - RaGEZONE Forums


  10. now go ~19 lines down (from the currently edited command)
  11. look for

    Code:
    FCOMP DWORD PTR DS:[85FBFC]
  12. this value is used for comparison with new zoom out (when mouse is scrolled)
  13. right click on this command -> follow in dump -> memory address

    Unregistered - Change Zoom Out Limit - RaGEZONE Forums


  14. now right click in the memory window -> float -> 32bit float

    Unregistered - Change Zoom Out Limit - RaGEZONE Forums


  15. now you see 8.0 at the memory block
  16. we can't change this value to 20.0, because the 8.0 is used by other commands too!
  17. so we search for another 20.0 value in the memory and use this address in the command
  18. right click in memory window -> search for -> float
  19. enter 20.0 and click ok

    Unregistered - Change Zoom Out Limit - RaGEZONE Forums


  20. in the memory window you (hopefully) has now a block with value 20.0
  21. right click the block -> find references

    Unregistered - Change Zoom Out Limit - RaGEZONE Forums


  22. in the reference window you see now all commands that use this memory value
  23. this block has a lot references, to prevent confusion in the future i recommend not using this block
  24. right click in memory window -> search for -> next

    Unregistered - Change Zoom Out Limit - RaGEZONE Forums


  25. another block with value 20.0 appears
  26. right click the block -> find references
  27. in the reference window you see again all references
  28. only one reference to this memory block, but another search next may give an even more better
  29. right click in memory window -> search for -> next
  30. in the reference window you see again all references
  31. this block isn't referenced currently... awesome we will use this one
  32. in the memory window look at the left margin, you see the memory address
  33. for me it's 008723C0
  34. now focus back to the CPU window and double click the command

    Code:
    FCOMP DWORD PTR DS:[85FBFC]
  35. replace the old address that points to value 8.0 with the memory address that points to value 20.0

    Code:
    FCOMP DWORD PTR DS:[8723C0]

    Unregistered - Change Zoom Out Limit - RaGEZONE Forums


  36. when you're done right click in the CPU window -> copy to executable -> all modifications
  37. a dialog will popup and ask something, select copy all

    Unregistered - Change Zoom Out Limit - RaGEZONE Forums


  38. a new window appears, close this and then you can save the new executable file

    Unregistered - Change Zoom Out Limit - RaGEZONE Forums
 
Last edited by a moderator:
Joined
Jan 6, 2010
Messages
744
Reaction score
1,051
infinite zoom is much easier, because it only disables the zoom check in a single command...

in my opinion infinite zoom is nice for GMs and test-servers but shouldn't be available to players on a live server (venomancers luring bosses from rooms far away through all doors :D:)
 
Joined
Oct 14, 2009
Messages
5,493
Reaction score
2,299
...and just in case anyone forgot how to change the zoom check, do the below to re-enable the limit:

Code:
.:: Zoom Limit Re-Enable ::.

In the CPU main thread window, right-click anywhere and "Search for > Sequence of commands"

In the "Find sequence of commands" window, enter these lines:
FADD DWORD PTR DS:[ESI+40]
FST DWORD PTR DS:[ESI+40]

Now go ~4 lines down, you will see a string like this: JMP SHORT elementc.004056FC

Double click on it and change the "JMP" to "JNZ" (JMP jumps line code...)

Right click on the "CPU main thread window" and Copy > Select all , Backup > Update Backup , Copy to executable > Selection ,  right click > Save file

Finished!
 
Nerd-IO
Loyal Member
Joined
Feb 13, 2009
Messages
3,303
Reaction score
651
Nice ronny... Seems you know well OllyDBG.

Do you know how to change the default WASD(qwerty) to ZQSD(azerty) in the elementclient.exe?

I'm tired to use macro and other thing like this...
 
Nerd-IO
Loyal Member
Joined
Feb 13, 2009
Messages
3,303
Reaction score
651
Two persons that know how to modify this but will never share so... i think i'll forget it...

Unless someone else will find it...
 
Junior Spellweaver
Joined
Feb 9, 2009
Messages
167
Reaction score
83
it went mad, that was my post originally and was after nofx -.-"
 
Joined
Jan 6, 2010
Messages
744
Reaction score
1,051
Alternative method: open elementclient.exe in an hex editor and edit 00 00 00 41 -> 00 00 A0 41 around 0x56A0 (not sure of exact address as mine is quite heavily modified).

At least that worked for me :D


this only change the limit value and not the compare value*
which leads to a "jumping out zoom" bug, when you zoom out beyond the compare value (8.0 meter) the zoom jumps instantly to the limit value (20 meter)

the tutorial change both values: limit & compare
sure you can also change the address of compare value within hex, but you need to know a working memory address for the new compare value...

* >= 1.3.6 (not sure for if this is rue for < 1.3.6)
 

Attachments

You must be registered for see attachments list
Last edited:
Back
Top