Hello all. I am new. I am not sure how to search for a solution, so I figured the best way to start is to describe my problem.
I am trying to build a minor IF as a scavenger hunt clue. It’s not the most complex thing in the world, but I have something I want to include to punish the meta-gamers which has me stumped.
Essentially, I want to put an object in the game that is not referenced anywhere, which will set a deadflag if referred to in any way. I could set a before statement with every verb in the library, but that seems cumbersome and inefficient.
I would think there would be an easier way to accomplish this, but at the moment, I cannot think of one and I am sure it is not a common problem.
Generally speaking, here’s what I would do. I’d create an object that had an AddToScope routine attached to it. Then, in the Initialise routine, change the player to that object. In that object’s AddToScope routine, have a PlaceInScope(your object). That way the player can refer to it wherever he is and yet the object is nowhere around.
This helps in the creating the object phase that I haven’t gotten to yet, thanks. My problem is I want to end the game if they refer to it.
If they examine it, smell it, or refer to it in any way, I want to take control of the interpreters response. Making a before statement for every verb is the only way I can come up with.
Can I throw a variable on the object that starts the first time its referred to? That could work.
Untested, but I think you can put a single line in the before block, rather than a bunch of verbs. Another option – possibly better – would be a react_before in that object that tests whether the object itself is the noun or second. This way, you get the desired result even when it’s the second (as in, ‘hit the monkey with the kryptonite’).
Yeah, someday I should switch, since the majority of people are on 7, but all my half finished projects are on 6, and i really don’t understand programming in 7 right now. I can’t wrap my head around the natural language thing, but of course I have never really tried to either.
Stick with what you know, I say. Both languages have a bit of a learning curve. The main drawback of I6 is that fewer people here will be able to give you advice. But you’ll probably need less.
It worked! I used your return_before option, and just omitted any verb references, and it applies to all of them. Thanks all, you saved me a ton of time.
Nope, same issue. react_before with no verb may just be too broad sweeping. It looks like when it determines which objects can be interacted with in the room, it triggers.
Oh well, unless someone chimes in with a different solution, I am satisfied with just having before work. This is supposed to be a simple little project after all.