here is the code i modified this morning.
check_common_teleport_door_trigger = (ti_on_scene_prop_use,
[
(store_trigger_param_1, ":agent_id"),
(store_trigger_param_2, ":instance_id"),
(try_begin),
(agent_is_active,":agent_id"),
(agent_is_alive,":agent_id"),
(prop_instance_is_valid,":instance_id"),
(this_or_next|multiplayer_is_server),
(neg|game_in_multiplayer_mode),
(prop_instance_get_variation_id, ":teleport_id", ":instance_id"),
(assign,":found_dest_instance_id", -1),
(try_for_range,":door_type","spr_door_teleport_vertical","spr_door_teleport_props_end"),
(try_for_prop_instances, ":cur_instance_id", ":door_type", somt_object),
(eq,":found_dest_instance_id", -1), # not found yet.
(neq, ":cur_instance_id", ":instance_id"),
(prop_instance_get_variation_id, ":dest_teleport_id", ":cur_instance_id"),
(eq, ":teleport_id", ":dest_teleport_id"),
(assign, ":found_dest_instance_id", ":cur_instance_id"),
(try_end),
(try_end),
(try_begin),
(prop_instance_is_valid,":found_dest_instance_id"),
(prop_instance_get_position, pos1, ":found_dest_instance_id"),
(try_begin),
(prop_instance_get_scene_prop_kind, ":door_kind", ":found_dest_instance_id"),
(eq, ":door_kind", "spr_door_teleport_vertical"),
(position_move_y, pos1, -150),
(position_move_x, pos1, -50),
(agent_set_position, ":agent_id", pos1),
(else_try),
(agent_set_position, ":agent_id", pos1),
(try_end),
(try_end),
(try_end),
])
if you don't care about the code, here is the txt file. let me know how it works out. be sure to make sure your maps are made with the new tp changes in mind.