Hey Collin, I was wondering if you were still working in TADS at all! Have you checked your solution to see what happens if the player just refers to the object by one of its adjectives? Is it necessary to check and only make the change if the token is associated with the &noun property?
myrkraverk, were you thinking of using this mechanism globally throughout your game, or just in conjunction with selected objects? It seems like youād need some kind of screening process if it was used widespread, because frequently itās desirable to give objects a lot of synonyms in their vocab, and not all of the alternatives that allow a player to identify an object would sound equally well (or even congruous) being used in parser messages about that object.
I am thinking about it for a certain class of objects, so probably a lot, but not absolutely everything.
I am hoping Iāll be able to create a subclass for my objects that behave this way.
Right now Iām only in the first stages of brainstorming, so creating some concept descriptions and behaviours and thinking about the setting, characters, and story for the game itself.
So far I like TADS 3 [and thereās no IF language I like more.], but Iām not committed to any specific system yet.
I think TADS 3 is a great language! Hopefully you stick with it! Iāve been working on a pretty large game for about a year and a half now.
As far as your mechanism, do you think you will need the code to do any checks before changing the ānameā property of the object, or do you think you would just only give vocab to the objects where any of the words would be suitable to show up as a reference to that object?
John, right now I donāt know how many checks Iāll need to make, because Iām still just fleshing out the concepts. Now that I know I can do this, I can sketch up some prototypes and figure out where I want to go with this.
Adjectives alone donāt work. In fact adjectives at all donāt work with that code (see fix in the comment above).
Yeah, Iām back at my game after all those months of being busy with other things. Glad to see that youāre still around Howās your game coming along?
I wonder if a solution could be to add a property to any subclasses that use this name-change-based-on-player-input. The property could be a list of tokens that are acceptable as name changes for the object. If the playerās latest reference to the object didnāt include one of those tokens, no change is made to the name.
It seems also that the normal ānameā property could be used, instead of the additional ācurrentNameā property.
In my case I need to keep the ādefaultā name around, but otherwise yeah - you could just use the normal name property.
Your idea with the token list sounds good
This solution will work, but be careful. You donāt want to end up in a situation where you get things like āyou see a pebble and a pebble hereā because āsmall stoneā got renamed to āpebble.ā
Another issue is that renaming an object might confuse some players. Just because I referred to the pebble as āstoneā I donāt actually expect the name the game uses to change! A notification might be helpful here. Like [OK, from now on I will refer to the pebble as "stone" instead.]