Skip to content

Feature Request: [ColorRange] tag #188

@patrickheney

Description

@patrickheney

[ColorRange:{X:0 Y:0 Z:0}] // value can be any number, represents HSV
This is used when recoloring grids. It is used in conjunction with the [OldBlockColors] tag.

How it works
The values are added to the HSV component of the old colors definitions to produce an inclusive range of colors to receive the modification of the new color. All blocks with that range of color have their colors modified by an amount equal to the difference between the [OldBlockColor] and the [NewBlockColor].

For example
[OldBlockColors:{X:20 Y:80 Z: 100}
[ColorRange:{X:15 Y:-30 Z:-10}]
[NewBlockColors{X:45 Y:50 Z: 50}

This will find blocks with colors of Hue of 20-35, Saturation of 50-80, and Value of 90-100.

The delta is the difference between the defined new color and the old color, so Hue 25 (45-20), Saturation -30 (50-80), Value -50 (50-100)

The modified blocks will have the delta applied to their HSV, adding 25 to Hue, -30 to Saturation, -50 to Value.

Use cases
This makes it easier to recolor prefabs by allowing the designer to define a range of HSV values, instead of a precise color in an otherwise infinite range. To use the current system, the designer must modify existing designs to use the exact HSV colors defined in the behavior, or examine the blueprint to get the exact HSV values and add those to the behavior. If a ship uses more than a few colors, this can be time consuming. Using the range tag allows "all the green-ish colors" to receive the same adjustment. This also means that prefabs can be modified after the fact without breaking functionality of the recoloring behavior.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions