start_at = my_location
locations {
my_location : location "You are in a room." ;
}
on_command {
: match "get boot" {
: create "boot" target = "inventory" worn = "true" ;
# : create "boot" target = "inventory_worn";
: print "You take and put on the boot." ;
: done ;
}
: match "wear boot" {
: wear "boot" ;
: done ;
}
}
objects {
boot : object "a boot" at = "my_location" wearable = "true" ;
}
You are in a room.
You see a boot.
>WEAR BOOT
You wear the boot.
>i
You are carrying:
Nothing
>Get BOOT
You take and put on the boot.
>I
You are carrying:
a boot
>
There was a bug here, and it should be fixed in the beta version ( adventuron.io/beta ).
Let me know if this fixes it.
Additionally, in the beta version, you can add the following setting:
game_type = verb_noun, and it will validate that your game is ONLY verb/noun, and will stop adventuron from adding system prepositions. It will also add a system level error message if the player types in 3 words (press control + space in the system_messages {} ) section to find the new system message. I added this to make it easier to build verb noun games, but mostly so that players could have confidence that the game would only ever require 2 word inputs, which should result in less stress and suspicion by the player that they will encounter a “goat puzzle”-like parser quirk.
The Beta 65q did not fix the issue. Whether with target = "inventory" worn = "true" or target = "inventory_worn", the create function does not change the worn state of the object.
And the issue remains with wear "boot", but works well with wear without OBJECT_ID:
wear “boot” (with OBJECT_ID):
You are in a room.
You see a boot.
>WEAR BOOT
You wear the boot.
>I
You are carrying:
Nothing
>WEAR BOOT
You are already wearing that.
>
wear without OBJECT_ID:
You are in a room.
You see a boot.
>WEAR BOOT
You don’t have it.