Another tip in order to avoid duplication of items that seems to be working (need further testing) is the following:
In the actions lists, you order the 'immediate action' command first and call the 'executed command on destination' from within the immediate action if needed, i.e.:
'open' executed (immediate)
'open' executed
.
.
Then you have a condition to check whether the character can reach the item or not, let's say he can open the item only when he is on the balcony:
If condition on balcony is true
Call action 'open' executed
else.. (do stuff if he is not on the balcony, i.e. he cannot reach the item)
Also noted that you mentioned:
action command [any] item [any]
but it seems that [any] is applicable only for items, not for commands correct? Need to make a separate action for each command.