Instances and Interacting with Them. - TADS3

I am making a sort of FPS type TADS game - and I have a generic ‘sentry’ Actor. I would like to be able to create instances of it and send those after the player.
I currently have the following (Background: if the player shoots the DataCenter racks, currently present people are moved out - flee I suppose, but it cleans up the descriptions for all the fighting to come, then 5 sentries are moved into the DataCenter from my ‘Limbo’ location):

    dobjFor(Shoot)
    {
        verify() { logical; }
        action()
        {
            if (ShootGun(self) == true)
            {
                Shoot_General(self);

                local ix = 0;

                // Move the sentry robots into the Data Center
                // Then fire the desc
                DataCenter_Woman.moveInto(Limbo);
                DataCenter_YoungMan.moveInto(Limbo);

                for (ix = 0; ix < 5; ix++)
                {
                    local sentry = new DataCenter_Sentry;
                    sentry.name = 'sentry' + ix;
                    sentry.moveInto(DataCenter);
                    KillCheck(sentry);
                }
            };
        };
    };

I tried to give the sentries unique names so the player could say: shoot sentry1 etc. But the game doesn’t recognize them, no matter what I refer to them as. The sentry definition is:

DataCenter_Sentry:
    Actor
    'sentry'
{
    location = Limbo;
    noun = 'sentry' 'robot';
    adjective = 'sentry';
    pronoun = 'it';
...
};

The game doesn’t recognize: sentry, robot, sentry1, sentry robot. Most of that is understandable since I have multiple instances.
What attribute do I need to set to allow the player to interact with instances of Actors? This is something that I will need to do quite a bit in this game.

Thanks in advance!
If you need me to provide further info let me know.

Shouldn’t DataCenter_Sentry be a class? Then add vocabWords and remove location, noun, adjective and pronoun (also there should not be semicolons). That way you should end up with identical robots you can address in game, but all with same name so there will be lots of disambiguation questions. For adding unique adjective do cmdDict.addWord(sentry, ‘adjective’, &adjective); after instantiation. Or if you want to initialize whole vocabulary for that object and not combine part which is same for all robots with unique adjective, then you can call sentry.initializeVocabWith(‘your whole vocabWords string here’).

In Mike Roberts’ game Return to Ditch Day there is a bookstore, where there are dynamically constructed receipts for your buy. You can look at the source code.

Also don’t forget you must use moveIntoForTravel with Actors.

Thanks so much for you response. - I have fixed the errant MoveInto.

cmdDict.addWord(…) does the trick!

I should have tried noun :confused: … but being a list I wasn’t sure how to manipulate it correctly. noob moment (of which I have many).

I cleared out the values in the sentry Actor definition - then defined those for my instances, giving them unique nouns I am able to interact with them.
I’ll look at Return to Ditch Day, thanks for the suggestion.