This guide will go over several different ways in which fast-travel can be implemented onto your world.
The two main types of fast travel are through structures, and through objects.
Structure-Based Fast Travel:The key way to use structure based fast travel is to make it easily identifiable as a fast travel station. This can be done in a number of ways. One of the easiest ways for this to be done in RPGs is to keep all fast travel structures the same or very similar in appearance. Another way that this can be achieved is by simply naming the location as a fast travel hub by means of a sign, NPC, or painting (me and tater have made a fast travel painting that can be given upon request).
Additionally, make sure to make it clear where the player must stand in order to be sent to a new location. Different colored blocks on the floor, an elevated platform, or some other indicator is essential for host-to-player communications.
Finally, stay true to your theme. Too often fast travel structures tend to be out of place in worlds. Hosts enjoy building a palace of gold as their fast travel station in the middle of a poverty-stricken medieval village.
Object-Based Fast Travel:The key to object based fast travel lies in two things. The believability of the object (can it really transport you to another location?) and the scriptability (where will the script activation be hidden within the object?).
The believability of a fast-travel object simply lies in common sense, most of the time. If your fast travel object is a canoe, don't put it in a river that ends two blocks ahead of you. The same goes for animals, such as horses. Oftentimes it helps the believability to have a path laid out that the horse is assumed to be traveling on.
And then there comes the aesthetic. This is more based on the prowess of a builder, but the believability of an object lies in a player's ability to determine what that object is supposed to be instantly.
The scriptability aspect of object-based fast travel is a bit more situational. For this I will simply show examples (aka pictures) of how hidden script blocks can be achieved and implemented into a build in a way that does not compromise the believability.