Gameplay Tag Editing Restriction
The Gameplay Tag Editor supports the ability to restrict editing of gameplay Tags at any level in the hierarchy, based on a list of authoritative users. To use Gameplay Tag Editing Restriction, open Project Settings and, under the GameplayTags section, expand the Advanced Gameplay Tags hierarchy. To restrict editing on a set of Gameplay Tags, you must first specify an .ini file in which to store the Tags other than "DefaultGameplayTags.ini". The owners of the restricted Tags should also be specified, so that users will know who to contact if they wish to make edits. Finally, the Gameplay Tags themselves can be added to the Restricted Tag List, where they will be marked with a checkbox indicating whether or not unlisted users are permitted to add children to them. If a user (other than the listed owners) attempts to edit the Restricted Tag List, a warning will pop up, asking the user to confirm that they have permission from the owners. If the user does not choose "Yes", the edit will not be made.
The interface for adding restricted Gameplay Tags. The checkboxes indicate the places where users may add child Tags.
Users (other than those listed as owners) will receive a warning when attempting to modify the Restricted Tag List.
The warning/confirmation window that appears when a user who doesn't own a Restricted Tag List tries to make edits to it.
Once your Restricted Tag List is set up, the normal Gameplay Tag List will contain your restricted Gameplay Tags. However, restricted Tags will not feature the "rename" or "delete" options in the caret dropdown, and the "+" button will only appear next to Tags where you checked the box in the Restricted Tag List.
The standard Gameplay Tag List drops the "+" button for restricted Tags that the current user doesn't own.
Any Tags created in the Restricted Tag List will feature only the search option in their caret menus; "Rename" and "Delete" options are not available.
Currently, restricted Tags cannot be deleted in the Editor once they are created, even in the Restricted Tag List. They can, however, be deleted from .ini files. The following is the "RestrictedTags.ini" file that corresponds to the restricted Tags used in this example. Deleting a Tag from this file is as simple as removing the line with the appropriate "Tag" entry.
RestrictedGameplayTagList=(bAllowNonRestrictedChildren=False,Tag="RestrictedDesignTags",DevComment="These tags are controlled by the design lead")
RestrictedGameplayTagList=(bAllowNonRestrictedChildren=False,Tag="RestrictedDesignTags.MajorTags",DevComment="These are restricted.")
RestrictedGameplayTagList=(bAllowNonRestrictedChildren=True,Tag="RestrictedDesignTags.MajorTags.EditableTags",DevComment="This is not restricted, unlike its parent.")
RestrictedGameplayTagList=(bAllowNonRestrictedChildren=True,Tag="RestrictedDesignTags.MinorTags",DevComment="These are not restricted.")
RestrictedGameplayTagList=(bAllowNonRestrictedChildren=False,Tag="RestrictedDesignTags.MinorTags.Special",DevComment="This is restricted, unlike its parent.")