Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Comments on 'Santa's Trainee Elf'

A topic by Garry Francis created Dec 22, 2020 Views: 449 Replies: 46
Viewing posts 1 to 15
Submitted

Well, it was a bit of a nightmare and it's still not finished, but 'Santa's Trainee Elf' is ready for testing. I still need to add graphics for four rooms, add details to the graphics in many of the other rooms and tidy up the final images. Apart from that, I need to do some thorough testing, so all comments and feedback are gratefully accepted. You can be brutal. I won't be offended. Having just done a playthrough, I'm aware of some of its shortcomings, but I'll keep those to myself to see whether others feel the same way.

This is quite a large game, so be prepared to spend a bit of time on it. Oh, and you will need to take notes, as there is a lot of information to keep track of.

Submitted

Huzzah! I'll take a look at it now! Congrats, Garry!

There is a small problem with get all. As the transcript shows, we don’t have time to see the message “You get the box.”, because the whole page is refreshed just afterwards to show the second message “You get the tin.”

This is the kitchen's large walk-in pantry. The stock looks to be a bit low at the moment.
Exits: north.
You see: a cookie box, a jam tin.
>GET ALL

This is the kitchen's large walk-in pantry. The stock looks to be a bit low at the moment.
Exits: north.
You see: a jam tin.
You get the box.

This is the kitchen's large walk-in pantry. The stock looks to be a bit low at the moment.
Exits: north.
You get the tin.

Mrs Claus knows nothing about GINGERBREAD:

This is the kitchen. It's full of all the normal accoutrements, but nothing that will help you finish your chores for Santa.
Exits: north, south, west.
You see: Mrs Claus.

>TALK MRS CLAUS
"Have you got that gingerbread yet?"

>ASK ABOUT GINGERBREAD
"I don't know anything about that."
Submitted

Sorry about that. I'm not sure what to do about GET ALL. That's probably my fault, as I've replaced the default GET and DROP handlers with my own so that I get the description refreshed. I'll take a look at Adventuron's experimental auto refresh and see if it handles this better. Unfortunatley, this only works for GET and DROP, so I need my own anyway. As I was under pressure to get it finished enough for submission, there are probably a few minor issues like this. I'll take a look into them over the next few days, as soon as I get the missing images done.

I was also thinking about adding some more conversation topics, but they are not crucial for game play. If you find any others that you think should be added, let me know and I'll include them. Incidentally, on the subject of gingerbread, it's on the top shelf in the pantry, as Mrs Claus told you, but you can't see it. I need to do a bit of work in the pantry to make this aspect a bit more user friendly.

(1 edit)

The ball is the first entry in the book, but it has nothing to say about it:

>READ ABOUT BALL
There doesn’t appear to be a topic on that. Try READ THE BOOK to see the contents.

Submitted

Damn. It used to work. I've struck this problem with a few objects now. In this case, I suspect it's a conflict with the ball of twine. I'm not sure if it's my fault or something has changed in Adventuron between when I first wrote and tested this and now. Anyway, thanks for reporting it. I'll try to track it down and fix it.

Submitted

Yep. I just added some debugging code and when you READ ABOUT BALL, noun1_is returns 'twine', so it thinks you're asking about the ball of twine, even though that's not in scope. Go figure. Anyway, knowing that, I can put in a hack to overcome Adventuron's scope issues.

Host

I'm 100% sure that noun1_is will never return "twine", because it's a boolean function.

Submitted

Sorry, I meant noun1.

Host

You mean original "noun1"  or rationalized "noun1" ?

Happy to help if you provide me with sample code. 

Ball should not be a synonym of twine unless:

  • You set it up manually in the vocabulary {} section.
  • You used set_sentence to rewrite the sentence.
  • You set up a parser preprocessor step (in the vocabulary {} section).
  • Twine was somewhere else in the sentence, and the parser became confused (unknown preposition).
Submitted

None of the above. The code is pretty straightforward. The stripped down code (with debugging code added) looks something like this:

start_at = room
game_settings {
   add_standard_prepositions = false
   experimental_new_parser = true
}
locations {
   room : location "You are in a room.";
}
objects {
   ball_twine : object "a ball of twine" at = "room" {experimental_matching_text_sequences = ["ball of twine", "ball", "twine"]}
   text_book : object "a text book" at = "room";
}
on_command {
   : match "_ _" {
      : mask {
         : print {("^n^verb = " + original "verb")}
         : print {("^n^preposition1 = " + original "preposition1")}
         : print {("^n^noun1 = " + original "noun1")}
         : print {("^n^preposition2 = " + original "preposition2")}
         : print {("^n^noun2 = " + original "noun2" + "^m^")}
      }
   }
  : if (is_present "text_book") {
      : match "read _" {
         : if (preposition1_is "about") {
            : if (noun1_is "ball") {
               : print "It says you only need rubber to make a ball.";
               : done;
            }
            : print "There's no topic on that.";
            : done;
         }
      }
   }
}
vocabulary {
   : preposition / aliases = [about]
   : noun / aliases = [ball]
}
To test it, enter READ ABOUT BALL. You can clearly see that noun1 returns the wrong thing.

Note that there is no object for the ball. It is a topic in the book. It has an entry in the vocabulary to work around Adventuron's inability to recognise topics or concepts that do not have objects, hence can never be in scope.

Host

Hi Garry,

This is expected behaviour.

The following line does the following things.

  • It defines an adjective "ball" (via id 'ball_twine').
  • It defines a noun "twine" (via id 'ball_twine').
  • Every time it encounters the following text sequences "ball of twine",  "ball" or "twine", it replaces the text sequence with the registered noun for the object, "twine".
   ball_twine : object "a ball of twine" at = "room" {experimental_matching_text_sequences = ["ball of twine", "ball", "twine"]}

The long and the short of it is that every object needs a noun, and the last (non numeric) segment of the an object id is the noun. 

Any text substitututions you register take precedence over parsing the sentence, therefore 'noun' will return the substituted version.

Chris

Submitted

I know what it does. I worked that out for myself, but what it does is wrong. I ASK ABOUT BALL, not twine. Why does noun1 return twine, when the primary noun for twine is 'twine' and the primary noun for ball is 'ball'. It simply doesn't make sense.

When both objects are in scope, 'ball' is a better match for ball, than ball of twine. When only the ball is in scope, 'ball' is the only match for ball. When only the ball of twine is in scope, 'twine' is the only match for ball.

It strikes me that it stops processing as soon as it finds the first match for 'ball' and that happens to be the ball of twine. It does not continue processing to see that there is a better match later on. In the real game, the ball of twine is not even in scope, yet it still returns 'twine'. I've got a feeling that if I was to define an object for ball BEFORE the twine (even though there is no such object), then it would find the ball first and use that, even if it's not in scope. And then I wouldn't be able to refer to the ball of twine as 'ball'.

So how do I work around these shortcomings?

Host

You defined the "ball of twine" to have associated noun "twine". You made ball an alias for twine, therefore when you ask about ball, adventuron sees "ask about twine".

If you want things to be different, then define your "ball of twine" to have noun "ball".

If you were using s1() and disambiguate_s1()  then explicitly checking for one particular noun alias wouldn't be necessary. Adventuron is doing exactly what it should be doing. You created a mapping between ball and twine (from ball to twine). That's why Adventuron sees it as twine. If you don't want the associated, then don't make twine the primary noun for your ball.

e.g.

// Now the primary noun is "ball".
ball : object "a ball of twine" ...... ;
Submitted

I don't think you understand. I don't want twine to be recognised at all when it's not in scope. The ball you read about in the book is a completely different ball. It's a rubber ball. It's NOT the ball of twine. You cannot read about the ball of twine in the book.

You can no longer find the author of your loading screen, but an image search on google finds it easily: gettyimages

Submitted

That's the same image, but not the one I originally found. The one I found did not have the watermark and the sparkles at the bottom. It is not unusual for artists to submit their images to multiple web sites. In the short term, I'll give credit to the artist. In the long term, I should redraw it.

I really want to know what’s in the depths of the mine, but I have a feeling it won’t be easy.
I couldn’t find the gingerbread, and I only managed to make one gift.
The graphics of the places, but also of the characters, are very good (except for this fluorescent green in a corridor!), and the missing ones will probably be very good.
The presentation page of the game is exemplary.
I only hope that the game is not too difficult; there doesn’t seem to have been any feedback from @Errol, which looks very strong, and that worries me a bit.

Submitted (1 edit)

Oh! Hah! There's no feedback from me because I sent in a transcript. :D

I had problems with the gingerbread as well. Also the mine aspect. Me finding verbs is always a problem. ^_^

Submitted

If it makes you feel any better, Errol had a problem with the same two puzzles, but I I think he's finished it now. The gingerbread puzzle is probably hard, as there are a lot of sub-puzzles to solve beforehand. I'll do a bit more work in the pantry to offer some subtle hints.

You know that the gingerbread is on the top shelf, because Mrs Claus told you so. If she can't reach it, then it's unlikely that you can reach it, as elves are shorter than humans. You need to get higher. Perhaps, you could stand on something. If you still can't reach it, then perhaps one of the toys will help.

The mine is dark. You need a light source. Now where have you seen a light source? Don't forget to examine everything in the room where you saw the light source.

I've fixed the issues you raised and added graphics for the three missing outside locations in version 0.0.2. One more indoor location to go (I'll do that today), then need to add some details and clean up the stray pixels.

If anyone's having difficulty with the gingerbread, note that one of the toys can open and close.

Thanks for the hint.

(2 edits)

Maybe we need a better answer for WEAR ICE SKATES, it’s an action that doesn’t seem illogical to me. In Elves’ Bunkroom, SLEEP could be an alternative to GET ON BUNK.
Edit: There is no description for the plastic pipe.

Submitted

Both fixed.

(1 edit)

The first time I played, I got stuck in Reindeer Stalls without knowing why; when I tried to get out he said “Aren’t you forgetting something?”. I had the carrots with me, but I hadn’t spoken to Volodar before, so I had no idea what “Aren’t you forgetting something?” was referring to. I think it’s a problem to get stuck like that.

Submitted

Fixed. The reason I did it that way originally was because if you dropped the carrots in the stalls, then left, you couldn't get back again because Volodar wouldn't let you in without the carrots. That made the game unwinnable. You may have been oblivious of that if you hadn't talked to Volodar or you hadn't tried to enter the stalls without the carrots. I now allow you to drop the carrots in the stalls and something else happens.

(1 edit)

Ok - I've now done the gingerbread.  That's a puzzle that definitely needs better clueing - it's not at all obvious what needs to be done. It would make a big difference, I think, if the gingerbread was visible up there on the top shelf rather than the player having to have faith in what Mrs Claus is telling you (or maybe I should just learn to be more trusting). It might even help if it was visible in the picture. I found myself confronted with the image of empty shelves thinking 'is there really any gingerbread up there?' and then trying various ways to clamber up the shelves, to no avail. Part of the issue is also that this is the only puzzle where something that you've already made is involved - I had a bit of a blind spot that I had to take something back off the sleigh and use it; for me, once the toy was made and loaded on the sleigh, that was the end of the process and I wasn't expecting to revisit it.

As for the flipping light source - still can't fathom it. Presuming that what is involved is the fire in Santa's living room (as I can't find a way to get into the bedroom): I've examined everything and attempted to set fire to everything (including all products of the wood store) but no joy. In the end (and as an indication of my desperation) I was reduced to attempting to undress Santa as he slept in his chair (partly for kicks, but mostly because I thought there might be something in his suit), which produces a couple more bug responses: GET BELT = 'you can't see that anywhere' and UNDO BELT = 'rewind is expected as a single word' (interpreting that as the standard UNDO command). So I'm still stuck on 90/100.

Glad to see that more location graphics have appeared though - I expect that when I get back to it again (having figured out the light puzzle) even the  metal store will have a picture!

I tried to make a torch with the cardboard cylinder (but also with anything that could burn), and light it with the flame of the chimney fire!

Nothing burns - not even any of the elves!

Not even for Thanksgiving? This world nearing its end.

Submitted

I've been fixing the issues you raised elsewhere. Not all of them, but most of them. There are now more hints in the pantry. Let me know if you think it needs more hints or more actions. I'm just about to upload version 0.0.3. I haven't done the image for metalwork supplies yet. I was hoping to do that today, but it will have to wait until tomorrow.

Regarding the light source, you're going to kick yourself, but EXAMINE THE MANTELPIECE (or EXAMINE MANTEL for short).

(1 edit)

It’s unfair, I had thought to look at the decorations (above the mantelpiece), which should also give the solution.

Just art reflecting life (unfair, that is).

(1 edit)

Finished! Thanks for putting me out of my misery with the damned light source. I think I probably just mistyped 'x mantelpiece' originally (I'm a terrible typist - my transcripts mainly consist of me entering typos several times before getting the command right) and then assumed there was nothing interesting to see there.

With the pantry: the extra hints are handy, and I guess that you are still planning to implement a proper 'HINT' command (I'm amused at your holding message: elves don't need hints, but some humans certainly do!). REACH was something else that I attempted (REACH SHELF, REACH GINGERBREAD, REACH UP) that could be another queue for a hint ('You can't reach the top shelf  - you'll need to find another way of getting up there'). 

I'm pleased to have got to the end of it at last - it's top notch Christmas fun.

Submitted

I added reach. REACH SHELF and REACH SHELVES will work.

Coal is the only one on the list of chores that is not in the book.

What does TBD mean for HINT?

Submitted

ASK NELDOR ABOUT OLIVER. (He's on the list.)

'TBD' means 'To Be Determined'. That was a placeholder until I got around to implementing a hint system. I've replaced that message in version 0.0.3, but haven't implemented a full-blown hint system yet.

There should be something to say about the shovel, pickaxe and barrel that decorate the entrance to your mine. I don’t know who won’t try to interact with that.

To avoid invisible outside walls and the default message “You can’t go that way”, the boundary_message property would be useful, especially at the North Pole.

Submitted

This is a very nice game, and I really love the graphics, but I've hit a snag. I've made every present and put it on the sleigh, and I've also retrieved the gingerbread, but I can't give it to Mrs Claus. When I try, she thanks me but says that she's only interested in the gingerbread. Also, my score is 90/100 when I suspect that it ought to be 95/100. It's as though I don't have the gingerbread at all, even though it's in my inventory, and dropping/taking it gives the expected responses. The credits text list the version as 0.0.4.

Submitted (1 edit)

Terribly sorry about that. I added a generic GIVE at someone else's request and it was being processed before the specific GIVE. I've done a quick fix to version 0.0.5 and it should now be okay. If you save your game and press F5 to do a refresh, I think you should be able to continue on from where you left off. I'll do some more minor updates tomorrow (mainly extra verbs), but this time, I'll make sure I test them first.