Действие перемещения приводит к перемещению персонажа из локации А в локацию Б.
В русском языке есть множество глаголов обозначающих различные способы движения: иди, беги, ползи, лезь, езжай, лети, плыви, и т.д.
Помимо этого есть множество производных глаголов, обозначающих направление движения. Можно выделить направления вверх/вниз, внутрь/наружу, приближение/удаление.
Сравните:
иди - взойди - сойди - войди - выйди - подойди - отойди
беги - взбеги - сбеги - вбеги - выбеги - подбеги - отбеги
ползи - всползи - сползи - вползи - выползи - подползи - отползи
лезь - залезь* - слезь - влезь* - вылезь - (нет?) - (нет?)
езжай - (нет?) - съезжай - въезжай - выезжай - подъезжай - отъезжай
лети - взлети - слети - влети - вылети - подлети - отлети
плыви - всплыви - (нет?) - вплыви - выплыви - подплыви - отплыви
и т.д.
Есть еще глаголы обозначающие начало и завершение перемещения:
пойди - иди - приди
побеги - беги - прибеги
и т.д.
Но в рамках парсерной игры перемещение осуществляется за 1 ход, и следовательно эти глаголы можно считать синонимами.
В принципе, инструментарий ТОМа позволяет все эти смысловые тонкости правильно обработать, включая возможные исключения.
Взаимное расположение локаций позволяет вычислять направление движения, и генерировать сообщения при смысловых расхождениях.
Но если и все прочие действия прорабатывать с такой же глубиной - страшно представить во что превратиться стандартная библиотека.
Я пока в раздумьях... =)