Old software and updates

 


A guest post from our resident client expert ...


Users of WorldsAway have had two major complaints over the years. One was not being able to log on two avatars at the same time and the other was 100% CPU usage. Others have come along and wrote external programs that faked the client into allowing multiple instances and even CPU limiters, but we set out to fix the problem directly.


It took a bit of reverse engineering, but we were able to find out that other world's client variations fixed the CPU problem by inserting a simple "sleep" command for 1 millisecond in a specific place. With a copy of IDA Pro and a debugger we set out to replicate that fix in the existing client. There are tools that allow you to add on extra sections to an executable which are commonly called "code caves." Once you have a little bit of room to add your fixed assembly code instructions, all it takes is to tell the original code to take a momentary detour. Once it runs the much better code it jumps right back to where it was before. Allowing multiple avatars was a bit simpler as we just tell the client to ignore checking if it is a clone.


Using a few modern tricks and tools you can fix broken functionality in old software and we are proud to offer users the world experience they remember without the headache of a forgotten era.


Questions or comments feel free to message me in world as MrE.

Comments

Popular Posts