The following warnings occurred:
Warning [2] Use of undefined constant SAPI_NAME - assumed 'SAPI_NAME' (this will throw an Error in a future version of PHP) - Line: 3388 - File: inc/functions.php PHP 7.4.33-nmm6 (Linux)
File Line Function
/inc/functions.php 3388 errorHandler->error
/showthread.php 116 build_archive_link
Warning [2] Use of undefined constant IN_ARCHIVE - assumed 'IN_ARCHIVE' (this will throw an Error in a future version of PHP) - Line: 3331 - File: inc/functions.php PHP 7.4.33-nmm6 (Linux)
File Line Function
/inc/functions.php 3331 errorHandler->error
/inc/functions.php 3324 build_forum_breadcrumb
/showthread.php 195 build_forum_breadcrumb
Warning [2] Use of undefined constant IN_ARCHIVE - assumed 'IN_ARCHIVE' (this will throw an Error in a future version of PHP) - Line: 3331 - File: inc/functions.php PHP 7.4.33-nmm6 (Linux)
File Line Function
/inc/functions.php 3331 errorHandler->error
/showthread.php 195 build_forum_breadcrumb






Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Sphere 56c/d Unlimited Speed
Author Message
Coruja
Sphere Developer
*****

Posts: 987
Likes Given: 5
Likes Received: 226 in 187 posts
Joined: Jul 2012
Reputation: 7

Dimension Shard

Post: #13
RE: Sphere 56c/d Unlimited Speed
yep that's the problem: windows
windows timing use "CPU ticks" instead realtime milliseconds/nanoseconds, and this is a problem when we need high precision timing

UO walk animation take 100ms, so EF_FastWalkPrevention must only accept another walk packet after 100ms. In theory, this method is an perfect fastwalk killer. But since timing is not 100% precise on windows, it will make EF_FastWalkPrevention imprecise. That's why EF_FastWalkPrevention still an experimental feature which maybe it will work or maybe not

on linux it works fine, as you can see on this example here http://cpp.sh/9jge running on linux. Just click on the Run button and it will return values with perfect 100ms precision. But on this example on windows http://rextester.com/KFZ64696 every 100ms will turn into an random 80~120ms

so if you really need an working fastwalk prevention, maybe the only solution is use sphere linux builds. On windows, you can disable EF_FastWalkPrevention and try some tweaks on WalkBuffer/WalkRegen settings but honestly I don't trust these old checks, since for many years ppl had told that it can block fastwalk but I already tried many different values and it never really worked (at least on my server running on windows)

maybe the only way to get EF_FastWalkPrevention working on windows is find an way to make sphere run each server tick using realtime instead CPU ticks. But this is hard to do, or even impossible on windows (if you search on google you will find many articles telling "windows is not good for realtime applications" without find any solution for this problem)

I don't know about RunUO but I think it have this same problem too, since the FastWalk check on RunUO needs high precision timing and RunUO only enable high precision timing when this feature is available on OS (eg: linux)
06-21-2016 05:03 AM
Find all posts by this user Like Post Quote this message in a reply
Post Reply 


Messages In This Thread
Sphere 56c/d Unlimited Speed - Criminal - 06-15-2016, 05:52 AM
RE: Sphere 56c/d Unlimited Speed - Coruja - 06-19-2016, 04:16 AM
RE: Sphere 56c/d Unlimited Speed - Coruja - 06-20-2016, 02:27 PM
RE: Sphere 56c/d Unlimited Speed - Coruja - 06-21-2016 05:03 AM
RE: Sphere 56c/d Unlimited Speed - Coruja - 06-30-2016, 12:10 PM

Forum Jump:


User(s) browsing this thread: 3 Guest(s)