[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/feed.php on line 173: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3842)
[phpBB Debug] PHP Warning: in file [ROOT]/feed.php on line 174: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3842)
JoinUO Forums A discussion forum for the Ultima Online freeshard community. 2011-03-03T16:37:03+00:00 https://forums.uo98.org/feed.php?f=28&t=640 2011-03-03T16:37:03+00:00 2011-03-03T16:37:03+00:00 https://forums.uo98.org/viewtopic.php?t=640&p=1590#p1590 <![CDATA[Re: Force Client Map Update]]>

Statistics: Posted by Batlin — Thu Mar 03, 2011 4:37 pm


]]>
2011-02-27T03:19:26+00:00 2011-02-27T03:19:26+00:00 https://forums.uo98.org/viewtopic.php?t=640&p=1582#p1582 <![CDATA[Re: Force Client Map Update]]>
I think I'm getting closer, but it still eludes me.

Statistics: Posted by praxiiz — Sun Feb 27, 2011 3:19 am


]]>
2011-02-26T20:50:44+00:00 2011-02-26T20:50:44+00:00 https://forums.uo98.org/viewtopic.php?t=640&p=1581#p1581 <![CDATA[Re: Force Client Map Update]]> If nothing else; changing the map on the client would force a reload. Bit of a hack, but you could possibly if you can find enough room change map twice.

Statistics: Posted by Derrick — Sat Feb 26, 2011 8:50 pm


]]>
2011-02-26T18:58:25+00:00 2011-02-26T18:58:25+00:00 https://forums.uo98.org/viewtopic.php?t=640&p=1580#p1580 <![CDATA[Re: Force Client Map Update]]>
I'm using client 7.0.1.1.

I was able to find the teleport packet in the client, and now I'm tracing through it slowly. My goal is to find a way to force the client to reload map and static data that is on the screen.

I found the function in the client that calls CreateFile, CreateFileMapping, and MapViewOfFile. I altered the byte code so that it calls these functions with shared permissions and passes a predictable name for other processes to use. Then I was able to put together a prototype application that allows me to alter the map files directly while the client is running, by calling OpenFileMapping with the predicted name.

I can change the map, but I don't see changes in game until I move away and come back. The best thing would be to find a way to force the client to reload that portion of the map including statics immediately.

I managed to find some of the doubly-linked lists in memory while the client is running. I've been trying to trace through those to see how the client loads its map and static data. I've been moderately successful in figuring out what the values in the linked lists are, but I can't seem to find the corresponding functions that the client uses to traverse the lists and update them.

Statistics: Posted by praxiiz — Sat Feb 26, 2011 6:58 pm


]]>
2011-01-31T14:55:44+00:00 2011-01-31T14:55:44+00:00 https://forums.uo98.org/viewtopic.php?t=640&p=1446#p1446 <![CDATA[Re: Force Client Map Update]]>
I don't know where the packets are processed. Never really investigated. The easiest way would be to set a post-breakpoint on the recv function and then configure the breakpoint as a conditional breakpoint where the breakpoint will only break if your intended packet was received. But whatever you do, the client will just copy the received data to a buffer and then process it later on. So you'll have to set a memory breakpoint in the buffer and then continue when that one breaks.

Don't debug with Razor attached, instead, use UO_RICE to remove the encryption from the client.

If you could tell us what client you're working with we might be able to help you better.

Statistics: Posted by Batlin — Mon Jan 31, 2011 2:55 pm


]]>
2011-01-15T03:17:20+00:00 2011-01-15T03:17:20+00:00 https://forums.uo98.org/viewtopic.php?t=640&p=1405#p1405 <![CDATA[Force Client Map Update]]> I'm trying to find a way to force the client to reload map data. I've been going through the assembly a little at a time, but I'm not very fast at it (I've had some ASM experience, but not much). Does anyone have any tips?

I was trying to find where the client processes its network packets so I could trace the packet that the server sends to tell the client to update its position. What I'm really looking for is the portion of code the client uses to load data from its map files.

Statistics: Posted by praxiiz — Sat Jan 15, 2011 3:17 am


]]>