ID:2035710
 
Resolved
The blend mode did not reset properly after drawing icons with KEEP_TOGETHER, in some cases.
BYOND Version:510.1325
Operating System:Windows 7 Home Basic 64-bit
Web Browser:Firefox 44.0
Applies to:Dream Seeker
Status: Resolved (510.1326)

This issue has been resolved.
Descriptive Problem Summary:

An /image without an icon is given maptext and a loc in the world.
When this image is added to client.images, anything above this image (higher plane, or equal plane AND higher layer) will be drawn in a very strange manner.

plane_masters are not relevant to reproducing the bug.
blend_modes are not relevant to reproducing the bug.
This affects both objects on the map and in client.screen.

Numbered Steps to Reproduce Problem:
1. Make a /image object. Give it a maptext and a loc in the world.
2. Make a bunch of other objects that are above this image object. Either use a higher plane, or use the same plane but with a higher layer. These other objects must have semi-transparent pixels in their icons.
3. Add the /image object to client.images
4. Observe your game turn into something looking weird.

Code Snippet (if applicable) to Reproduce Problem:
[demo]
First use the "createDust" verb and then use the "toggleMapText" verb.

Expected Results:


from version 510.1323

Actual Results:


from version 510.1325

Does the problem occur:
Every time? Or how often?
Every time
In other games?
Yes
In other user accounts?
Untested
On other computers?
Untested

When does the problem NOT occur?
When an earlier version is being used, or when the maptext is the forward-most object being drawn.

Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.)

Did not occur in 510.1323 and earlier

Workarounds:

Make the maptext the forward-most object (by plane or by layer). This is not ideal for many projects.
Lummox JR resolved issue with message:
The blend mode did not reset properly after drawing icons with KEEP_TOGETHER, in some cases.
That is super bizarre, since there is no use of KEEP_TOGETHER in the demo I linked.
KEEP_TOGETHER is implied in various instances.
As of 510.1324, maptext forces a virtual KEEP_TOGETHER.