Descriptive Problem Summary:
When atoms with very large icons or images leave the client's view they disappear, even though they should not with the new map system.
Moving the client's mob around or doing anything that might update the client's screen causes the objects to update and reappear properly.
Numbered Steps to Reproduce Problem:
Have an atom with (I assume) large images exit the client's view, with a portion of it still being on-screen.
Expected Results:
As with other large objects, it remains visible
Actual Results:
It disappears but reappears after the client mob moves or updates in some way (not sure exactly how).
Does the problem occur:
Every time? Or how often?
Every time
In other games?
Unsure
In other user accounts?
Yes
On other computers?
Yes
When does the problem NOT occur?
Unsure, very few atoms in my project actually use such large images/icons
Workarounds:
None so far.
ID:2058455
Mar 24 2016, 10:18 am
|
|||||||||||||
Resolved
| |||||||||||||
Sure, in the Florahk.dm file, at the bottom there is a bump() call. If you comment out all the lines that reference the player...
EX: player.camera_shake()/set_camera()/set_camera_bounds() ...then the camera shouldn't move around at all when this happens. At the same time. I noticed that even moving the mouse can cause it to reappear, but it's never consistent. The only thing that is consistent is the fact that it vanishes. I'm wondering if it's because the vines that "connect" it to the ceiling are an image attached to the boss mob. Not sure if the map chunk takes them into account or not. |
The map chunking should take that into account, yes. It's not clear to me yet whether the problem exists because of the server or the client end, but I'll find out.
|
I've figured out so far that the bug appears to be server-side. For some reason the client doesn't think that the interesting turf the mob is on has any mobs on it, although it knows the mob's location and it knows the turf. (Weird!) I'm still looking into it and suspect it's an issue of sequence with the network messages.
|
BTW, you have an infinite recursion in obj/decal/floodlight/cycle(). The proc should not call itself the way it is; instead you should do spawn(40) cycle() instead of sleep(40) followed by a direct call to itself.
|
Lummox JR resolved issue with message:
Turfs with big "out of bounds" objects could sometimes be marked as interesting only after the object was sent, causing the client to think nothing was there and therefore not show the object. |
In response to Lummox JR
|
|
Awesome, I'm glad it wasn't something I was doing wrong, as I'd hate to waste your time chasing a non-bug.
Lummox JR wrote: BTW, you have an infinite recursion in obj/decal/floodlight/cycle(). The proc should not call itself the way it is; instead you should do spawn(40) cycle() instead of sleep(40) followed by a direct call to itself. Yeah, a remnant I still need to fix. I've been keeping everything lighting related at arm's length for a while but now that I've pretty much got 2/3 bosses done I think I can work on it. Again, thanks very much for the work you're doing =) |
Is there any way you can force this to happen in a way where it doesn't do the shake at the end, or maybe doesn't reach quite as far down? Even if you can simply tell me what parts of the code to change to recreate those conditions, that will help. It's critical that I be able to test this with the icon not appearing for a steady amount of time, while in the debugger.