![]() |
move() on serverside, npc stops x.x
Okay, so I have an irritating problem. I put together a script to control movement for npc characters from an array of coordinates and options etc. and basically when its on a gmap and it crosses to another level the movement of the npc stops at the level border. When the next movement begins a few seconds later the npc appears instantly where its supposed to have been and continues from there into its next movement.
GMap is installed correctly and everything, movement is being done on serverside while the character appearance and everything are clientside. I have no idea why its happening. Can anyone help? I doubt posting the script will help but I will do it if nobody can relate. canwarp() and canwarp2() had no effect, and the script is in a level npc on a gmap. |
I suggest making it's on movement system, move() is bugged on serverside. Try maybe using npc.setLevel(); Although I believe setLevel is only for player objects?
|
Well if its bugged on serverside it needs to be un-bugged.
-____________- Until then movement paths will have to be limited to in-level :( |
Maybe stupid but have you tried that whole Modulu thing or whatever it is called. (%64)
|
It should normally work fine
|
I get the same behavior with my ship NPC on Val Dev, when crossing levels the ship and the lamp npcs that move with the ship all stop at the border and reappear where they're supposed to be when the next move() is started.
|
I've had this probably with serverside move() several times too.
|
I've had the same problem, though maybe this can help (since it did for me);
PHP Code:
(source; my Santa script for Zone) |
Quote:
|
Quote:
|
Quote:
|
Well if it's tiny distances, like say .2 tiles Invers problem wouldn't be noticeable, but that's a lot more CPU usage.
|
I'd rather not have to go to the trouble of detecting level boarders and such to repeat the move() so it looks correct. I'd love if Stefan could take a look into this problem.
And I want a bugfix, not a workaround :( |
Well just testing it I've had the same problem. canwarp/2() have no effect... except canwarp2() I believe makes the NPC 'jump' in an odd way. Either way, definitely bugged.
|
Fixed, will upload new npcservers tomorrow.
On level border it's sending an update of x/y which is effectively stopping the npc the same way "x=x;" is doing. I've added sending a correct new move after crossing the level border, seems to work fine (tested with platforms on Zone Jump'n'run map). |
Hurray for Stefan :D
|
Quote:
|
Ok uploaded the new gserver and npcserver.
|
awsome!!! (and PS check my PM i sent you.. its urgent.. if you can come to my server (final resort) so we can talk further)
|
Quote:
|
Quote:
Nice update @ Stefan btw. |
Quote:
|
Quote:
|
Quote:
|
Quote:
|
| All times are GMT +2. The time now is 11:22 AM. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
Copyright (C) 1998-2019 Toonslab All Rights Reserved.