Position above 20000 not synced
#1

Me and other players experience this strange bug, when going over 20000 in X or Y coordinate, that although the player sees themselves still moving, the servers freezes their position on some value below 20000 they had, like 19999.32. When using GetPlayerPos, this position is returned, but the player has a different position. This happens on the latest version, without any plugins or scripts.
Reply
#2

Why'd you go far as 20000 :O
Reply
#3

Because there are quite nice bugs there.
Reply
#4

There is literally no point in exceeding that boundary anyways. But by the way, the default world bounds in GTA is 20000, so I'm guessing that's relative.
Reply
#5

As I said, there is a nice graphical bug beyond the boundary, so this is the point. Moreover, this worked some time ago, maybe in first 0.3.7 or in 0.3z, but it stopped working.
Reply
#6

GTA San Andreas limitation, to reflect like "you're going farther" but you actually you don't.
try SetPlayerPosition to beyond 20,000 - lets say 21,000
Reply
#7

As I said, it worked in the previous SA-MP version, where I got to almost infinite position and everything was being streamed well. Setting position to 21,000 also doesn't get streamed to other players. This is an enforced limitation of the server, because I've found out you can change the limit in the server executable, and it will stream all positions:
Code:
Windows 0.3.7-R2
at 0x000B8E00 replace 00 40 9C C6 with 00 00 80 FF (-20000.0 with -inf)
at 0x000B8E04 replace 00 40 9C 46 with 00 00 80 7F (20000.0 with +inf)
at 0x000B8DBC replace 00 00 7A C4 with 00 00 80 FF (-1000.0 with -inf)
at 0x000B905C replace 00 50 43 48 with 00 00 80 7F (200000.0 with +inf)

Linux 0.3.7-R2
at 0x0010870C replace 00 40 9C 46 with 00 00 80 7F (20000.0 with +inf)
at 0x00108710 replace 00 40 9C C6 with 00 00 80 FF (-20000.0 with -inf)
at 0x00108714 replace 00 50 43 48 with 00 00 80 7F (200000.0 with +inf)
at 0x00108718 replace 00 00 7A C4 with 00 00 80 FF (-1000.0 with -inf)
Reply
#8

These limitations were put into effect to prevent client crash exploits.

Your patching will just allow malicious users to crash other players again if you do not handle it correctly in your script (which most people don't do).
Reply
#9

why do u need to go beyond 20,000......
Reply
#10

An example of why you would go that far is for example my server. It's an aviation server and I'm planning to add islands far away from the mainland so that there are pretty long flights.
Reply
#11

Quote:
Originally Posted by Matite
Посмотреть сообщение
These limitations were put into effect to prevent client crash exploits.

Your patching will just allow malicious users to crash other players again if you do not handle it correctly in your script (which most people don't do).
Thanks for your response; how did the crash exploit work and how can I prevent it in the script?

Quote:
Originally Posted by FSAOskar
Посмотреть сообщение
An example of why you would go that far is for example my server. It's an aviation server and I'm planning to add islands far away from the mainland so that there are pretty long flights.
Remember that beyond these positions, lots of bugs may happen.
Reply
#12

Quote:
Originally Posted by sprtik
Посмотреть сообщение
Thanks for your response; how did the crash exploit work and how can I prevent it in the script?
I am not comfortable posting specifics on how an exploit worked but I can point you to another post I made with information about how to prevent it:
http://forum.sa-mp.com/showpost.php?...6&postcount=10
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)