Skip to main content

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

On mobile now so i can't test this. But i need to ask to be sure if i change it on paper for later. If i have two items where only adjective is diferent for example "brown cat" and "gray cat". Can the engine work with commands examine, get, drop etc by writing "get brown" instead of "get cat"?

Get and drop and examine will automatically disambiguate 

The player will be asked which cat they mean and will have to type a number next to names of the options.

Get brown or get blue will not work. Verbs with subjects (currently) expects a noun.

Ok, thank you. Got solution for this.

(1 edit)

I think it's a little bit confusing. I mean, the rules say "[...] sane responses to common inputs" and in my mind "pet brown cat" make more sence than "pet cat" with question "more specific?". And the problem is if player types "pet brown cat" the game will ask him "which one cat you want to pet?" anyway. As a player I think "what? I just told you which one! Why are you asking me again?".

I hope I clearly expressed my thought. Sorry if you confused, it's hard to write in English in the morning. It's not about the jam, it's about overall engine logic.

Adventuron is being upgraded to a proper entity matching system soon fully aware of the context of a noun referred to by a verb and how to disambiguate using natural language, but right now, it's a weak area.

 All I can suggest is to try to find a way to give each cat an individual noun for now, or try to just call all cats, cats without an adjective at all, except in the examine message.

You can create multiple objects with the same noun like this:

cat_1 : object "a cat" treasure="true";
cat_2 : object "a cat" treasure="true";
cat_3 : object "a cat" treasure="true";
cat_4 : object "a cat" treasure="true";

I know this isn't ideal, and if I can upgrade the entity matching system before the end of the jam, I will. I'm about to set off on a long journey, so that's the best I can suggest for now unfortunately.

Ordinarily, you could say GET BROWN CAT or GET GREY CAT and Adventuron knows exactly which object you're talking about from the object ids brown_cat and grey_cat. If you just say GET CAT and only one is present, it knows to get that one. If you say GET CAT and both cats are present it prompts you for clarification and you have to enter 1 or 2. (Personally, I hate this mechanism, but that's just the way it is.)

Because of the two-word restriction in this jam, you must be able to do everything with two words (verb + noun), so you can't use three-word inputs (verb + adjective + noun). However, you can be a little more creative. I have a similar situation and the way I'm handling this is if you say GET CAT, it says "Which one?" You can then say GET BROWN or GET GREY. This is easily implemented with some clever match statements and appropriate tests.

In my case, the objects requiring disambiguation are in the same location. It gets a little more complicated if they can move around. In this case, you can say GET CAT and if there's only one cat present, then you get it. If there's two or more cats present, then you do what I described above.