ID:1822015
 
Resolved
The map editor will no longer assign tag values to generated dir or icon_state instances. Nobody liked them.
BYOND Version:507
Operating System:Windows 7 Ultimate
Web Browser:Chrome 41.0.2272.101
Applies to:Dream Maker
Status: Resolved (512.1386)

This issue has been resolved.
Descriptive Problem Summary:

Generate from dirs and Generate from icon_states in the DMM editor currently sets the tag variable of all instances generated from an instance prototype. I believe that this is a bug, seeing as the purpose of a tag is to be a unique global identifier for an object.

Looking back at BYOND's documentation, you will find in the reference quite a lot of interesting information on using the instance editor. At some point, however, it became customary to hardcode each individual variation as polymorphic subtypes. The DMM format was clearly designed by Dan to function using modified types considering several factors:

mob
var
something in 1 to 10
something_else in list("herp","derp")


The above, ill-used syntax clearly indicates that the instance editor was intended to be an important part of mapping, and the method I showcased in Snippet Sunday #2 is in fact, how DM projects were intended to be structured, rather than the way that most modern projects are structured by force of habit/pervasive public ignorance regarding the early chapters of the DM guide.

http://www.byond.com/docs/guide/chap03.html

As you can see from the guide, the original intention was that the instance editor would allow you to create reusable objects without necessarily having them be unique.

By setting the tag, you are effectively declaring something to be unique. Since the user may not always want the tag set when generating from dir/icon_states, it is nonsensical that this is currently the default behavior. It actually makes fast-and-loose map creation much more difficult because we either have to generate the types by hand, or go through and edit them each individually after they've been generated.

Disabling this would probably not effect any existing projects in a meaningful way, seeing as it's highly unlikely that many existing BYOND games actually use the tag variable, and less likely that they depend on the auto-generated tag names generated by the generate from dirs/states function.
It's not truly a bug, as it's always done this via tag--this is a design choice from way back (before me). I agree it's really at odds with the way tag is supposed to be used, but it is in fact intentional.

I'd have to look at the map code to see if it's reasonable to stop tagging items in this way, or if there's some hidden reason for it that's not readily apparent.
I suspect it's just a front-end thing to give the instance a unique name in the editor, but obviously that is easy to fix. This is from so long ago that I don't even remember our intent, but i don't think it would be an issue to change.
Holy crap, Bump.
Hrm. Maybe what I should do here is setup an internal var that isn't actually saved in the .dmm or .dmb, and can be used in place of the tag for the map editor's purposes.
Just gonna point out that tags should always be unique, and this "feature" sucks. It wastes hours of my time every day.

Plus, tags being set prevent garbage collection of objects. Meaning many BYOND games that have used the generate features without being aware could potentially wind up with memory leaks.

It's just a bad "feature".
Please fix.
Lummox JR resolved issue with message:
The map editor will no longer assign tag values to generated dir or icon_state instances. Nobody liked them.