I have a character in my game called Rusty. Here is how I define him:
Rusty the Guard is a man. Rusty the Guard is in Vestibule. "Sitting here on the bench is a rather scruffy-looking man in uniform. He is holding a magazine and beside him is what looks like a lunchbox. He seems rather restless."
Understand "guard" as Rusty the Guard.
The description of Rusty the Guard is "He is a hard-boiled redneck. He wears a khaki uniform bearing a logo--MACE Security--on one chest pocket, and his nametag--RUSTY, with a picture ID of himself--on the other. On top of his thick mop of dark scraggly hair is a khaki ball cap. His face bears a thick black beard and a surly expression. Dark deep-set eyes, and a rather red nose."
As you can see above, I gave him both an initial appearance and a full description. I have had him in my game for quite a long time, without any problems, and I have moved on to programming other areas of the game, referring to him a few other times.
Now, my question is, under what circumstances does Rusty all of a sudden become scenery?? I just finished typing out another complete puzzle situation, put the finishing touches on it(namely a table of conversation responses with another character, where Rusty is touched upon). Then I get a problem message(only one) saying that Rusty is scenery, and therefore cannot have an initial appearance AND a description. I am tearing my code apart to find out exactly where I defined Rusty as scenery. I cannot find anything about it in the index–there, he is a man like the two others I created. Now, there IS a rusty latch in the game, which is part of a scenery item, but I changed it to a ‘corroded latch’(tracking down every mention of it). Still I get that problem message.
PS. I have changed his name to Walter, to avoid any possible confusion with any scenery item, and am still getting this problem message.
Okay, false alarm, I solved the problem.
Walter is here. "Sitting here on the bench is a rather scruffy-looking man in uniform. He is holding a magazine and beside him is what looks like a lunchbox. He seems rather restless."
Understand "guard" as Walter.
Walter is a man. The description of Walter is "He is a hard-boiled redneck. He wears a khaki uniform bearing a logo--MACE Security--on one chest pocket, and his nametag--WALTER, with a picture ID of himself--on the other. On top of his thick mop of dark scraggly hair is a khaki ball cap. His face bears a thick black beard and a surly expression. Dark deep-set eyes, and a rather red nose."
I typed the initial appearance right after placing Walter, and THEN I typed the definition. This solved the problem. I think at some point I had changed the code slightly for Rusty(his then name) without testing it, and then moved on.
I still wonder how what I did made Rusty into a scenery item…??
Does anything else use “rusty” as an adjective?
Well, yes there was a rusty latch(see initial posting above), but I had changed it to a corroded latch, and still had the problem. Even after I changed ‘Rusty the Guard’ to ‘Walter’(careful, of course, to hunt down every mention of the name and change it), I had the problem. I am beginning to think that what caused the problem was that in the definition, I had mentioned the name of the room, instead of just saying ‘Rusty the Guard is here.’…?? Or maybe because I placed Rusty specifically in the Vestibule(as opposed to just saying that he was ‘here’) right after I asserted that he was a ‘man’, and the program concluded that he was to be scenery…??
Is there anything else that uses “Guard” as part of its name?
Actually, no. Even after I changed Rusty’s name to Walter(and not ‘Walter the Guard’), I had the problem. The problem message kept saying ‘The Walter(or the Rusty the Guard, previously) is scenery and therefore cannot sensibly have an initial appearance description. So the initial description you typed must automatically be its regular description. But then you typed another description for the Walter, which is a contradiction.’ or something to that effect. I had typed initial appearances and full descriptions for both of the other characters, without difficulty and both(for both of the other characters) initial appearances registered with the room descriptions, as they should.
Anyway, the code I typed in the second post above seems to work very well.
Hmm. Well, this is the sort of thing that seems like it’d be hard to diagnose without seeing the whole source code, but if you’ve solved the problem it’s probably fine. (And I would definitely understand that you might not want to show anyone your whole source code right now.)
…oh, about this:
One thing to keep in mind is that the Index shows the results of the last successful compile, so if you made a change to the code that turns Rusty into scenery somehow, and that produces a compilation error, that change won’t be reflected in the Index.
True, come to think of it, I vaguely recall making a slight change somewhere where Rusty(and not necessarily where he was initially defined) was referred to, and the rusty latch(created after I finished Rusty’s area) was a part of something that is scenery–now it’s a ‘corroded latch’.
I’m sure that once I am ‘finished’ with the game, I will go over it with a fine-toothed comb, edit edit edit, and I will probably find out where the error was made. I will be using the index a lot more when I name things. I can see that when I am working and testing a new area, it can create problems with a previously created area, which I might not find out about until some time later.
It seems like creating a game is quite more of a challenge than playing one. But I’d have to say that it’s also more fun–especially when I see it working.