Unable to change tags

I’m trying to have my objects change the tag of a node when they reach their destination. I’m using a hex grid graph if that’s helpful information.

I’ve got 3 tags: 0 is Basic Ground, 1 is Player Occupied, and 2 is Enemy Occupied. Players can pass through players, enemies can pass through enemies, and everyone can pass through basic ground. So on Start() I’ve update the object’s traversable tags based on player/enemy:

seeker.traversableTags = core.allegiance == Allegiance.Player ? 1 << 0 | 1 << 1 : 1 << 0 | 1 << 2;

This seems to be working correctly!
Next up, I’ve got them running OccupyNode() when they reach their destination and VacateNode() when they start moving again.

    public void OccupyNode()
    {
        Bounds bounds = GetComponent<Collider>().bounds;
        var guo = new GraphUpdateObject(bounds)
        {
            modifyTag = true,
            setTag = core.allegiance == Allegiance.Player ? 1 : 2
        };
        AstarPath.active.UpdateGraphs(guo);
    }

    public void VacateNode()
    {
        Bounds bounds = GetComponent<Collider>().bounds;
        var guo = new GraphUpdateObject(bounds)
        {
            modifyTag = true,
            setTag = 0
        };
        AstarPath.active.UpdateGraphs(guo);
    }

The problem I’m running into is that no matter what I change the tag to, the node looks weird in the editor and isn’t traversable by either player or enemy. Additionally, when I Debug.Log the tag information on the node, no matter what it always says that it’s 0. Even after using VacateNode() the node stays raised in the editor and none of my objects can traverse it.

Thanks in advance, and I hope you feel better soon!

Edit: here’s a screenshot of what I mean when I say the node “looks weird in the editor” when I use OccupyNode()

Hi

By default the GraphUpdateObject will recalculate an area of the graph from scratch. In this case you only want to modify the tag, so you probably want to disable that. Set guo.updatePhysics = false.
Make sure that your bounding box contains the node center, even on the Y axis, otherwise the node will not have its tag updated.

Btw, you may be interested in this page: Utilities for turn-based games - A* Pathfinding Project