Skip to content

Automapping: Ignore empty outputs per-rule #3523

@eishiya

Description

@eishiya

Current behaviour

Currently, when an automap rules map has multiple output indices, all rules from that map will choose a random index from all of the available indices and then output whatever is at that index, even if it's completely empty. This is different from how inputs work, where empty input layers within a rule are effectively ignored.

Impact

This behaviour means that if one wants to have multiple rules in a map with differing numbers of random outputs, one has to duplicate the outputs across the different indices, which has the unfortunate side effect of skewing output probabilities. The consequence is that rules that could be simple and grouped together have to either have way more output indices than they should need (to keep the probabilities appropriate), or have to be split into several rule maps.

Suggested behaviour

I think it would be more intuitive for indices that are completely empty for a given rule to be ignored. In the case that a user wants to output nothing at all at random from a particular rule, they can still do so, by placing an Ignore tile on any of that output index's layers within the rule's region. Since this is fairly unusual and the intended way to randomize outputting anything at all is to use rule_options, it's not likely that changing this behaviour will affect many people's rules. And where it does, it's a simple (though potentially tedious) fix.

Metadata

Metadata

Assignees

No one assigned

    Labels

    featureIt's a feature, not a bug.priority requestHas been requested by a major supporter.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions