И в бою, и на карте приключений при спавне существа на занятую клетку оно заспавнится на ближайшую рядом.
В целом, ничего особо сложного нет
function SaveCreaturePos(table, mob)
local x, y, z = GetObjectPosition(mob)
creature_coord_table[mob] = {x=x, y=y, floor=z}
end --Что-то такое