Creating a Race Track - Video Tutorial (Slightly outdated: SEE FOOTNOTE)
Note: It's important to note that now, you need to place beacons instead of markers when setting up markers on your track.
Creating a Race Track - Text Tutorial
Step 1. Make a Track
(Before doing anything, make sure to set "EditMode" to "true" in your config!)
Build yourself a nice track. It's really not that hard to make something good, but you can look at this page to recreate your favorite Mario Kart tracks. Just keep in mind all racers will be facing south.
Step 2. Set Up a Race Line
There are several important things about the race line to understand. The first is the race line detects laps only if the player is running South. As such, all start points should be facing this direction, too. Secondly, the first time the player crosses the race line, his scores start being counted. Thus, start points need to be behind the race line. Also, the way the race line system works is it checks for when the player moves, sees if he is in the race line "zone" and then triggers a series of events. I'm working on a better system for this, but keep in mind sometimes if you're moving super fast, the lap can glitch and not count. You might want to make it a thick as possible to assure that the player doesn't skip through it (don't worry, big race lines are all the rage).
Now, for the actually-doing-something part. Go to each corner of where you want your race line to be and do /ed line 1 and /ed line 2 respectively. It works similarly to WorldEdit's pos1 and pos2 commands, however there is no wand alternative at the moment. Once you perform each command, the race line will be saved. Next time a player joins, the race track will be updated.
Step 3. Create Location Markers
In its technical sense, this isn't, strictly speaking, required. You could just rely on the laps. However, if you want live updating on the players positions and the powerups to work properly, you should create track markers. Also, if I ever decide to add bot support, these will be how the bots will determine where to go.
1. Go into edit mode by using /ed marker edit.
2. Get out a beacon and begin placing markers in order to show the pathway around the track. For the most accurate results, it's best to place them about 5 blocks apart. When you place a beacon, the marker will appear for a couple seconds, then disappear. You can make it so all markers are visible (even new ones that are placed) when you use /ed marker list. Add a third argument if you want to only see all markers for a few seconds.
Deleting Markers/Continuing marker editing from a certain number:
If you mess up one of the markers, don't worry. Use /ed marker list and break the marker with your hand while in creative mode, or use /ed marker delete <marker> to delete the marker by its number. If you need to delete a lot of markers at once, try /ed marker delete <marker range>. The range specifies multiple markers. Example: /ed marker delete 10-15 deletes all markers that are bigger or equal to 10 and also smaller or equal to 15.
Note: Both commands delete ALL markers with the numbers, so unless you need to remove a whole lot at once, consider using /ed marker.
Then you can disable edit mode by using /ed marker edit again. If you want to make a short cut, just make two pathways: the long route and the short route. When you're done with one of the routes, just use [b]/ed marker edit (number after the marker where the paths split). Example: If you're making a shortcut at marker number "5", just do /ed marker edit 6. If the shortcut take two times less time than the long-cut, then you might want to make it so each marker is either closer together or has a value that is two more than the last marker. [/i]It's not that important, but if you're crazy like me, everything is important, right?[/i]
The value of the marker is used to calculate your score. The equation that shows up on your scoreboard is: Score = (nearest marker's value) * (lap number).
4. Now you need to designate a few spawn points. The number of players that will be playing the map (as designate in the config) is the number of spawn points you need to make. Go to each location and perform the command /ed spawn spawn(spawn number). Example: /ed spawn spawn1. Then to make the spawn point for the firework that will be fired every lap, use /ed spawn flarespawn at the location.
5. Great! Now your map is set up. But we've forgotten one vital thing: powerups. Item boxes contain powerups, and powerups are obtained whenever a player runs into a box. Just use /ed ib to create the item box, and left-click it in creative mode to remove it again. Simple, right?
Step 4. Add World as a "Track"
1. If you do /ed help, you'll notice that there are some commands with "track" as a second argument. You can list all tracks with /ed track list. But if this is your first track, then obviously nothing will show up. Let's change that.
2. First, you will need to know the name of your world. If you're using Multiverse or another world management plugin to make the world, then you should know its name. (If not, just check your worlds folder.) If not, chances are it's just called "world." If you're okay with your track being called the same thing as your world, you can just do /ed track add (world's name). For example, if the world is called "SnowTrack," you'd do /ed track add SnowTrack. However, if you want a better name (let's say "Snowy Land") with spaces in it, add a fourth argument, and instead of using spaces, use underscores (don't worry, it automagically adds spaces where you put underscores). In this case, you would use the command: /ed track add SnowTrack Snowy_Land. It will tell you that it made the track.
3. Go to your Track config and mess around with the settings there. Lots of the 0.8 config items were moved to the Track config. You can find your track config here: plugins/EquestrianDash/Tracks/(track name)/TrackData.yml
4. All changes will take effect on a restart. Technically you could /reload, but /reload is evil, and we don't use such black magic here.
5. Repeat steps 1-4 for all of your tracks.
Step 5. Create the Lobby
1. This is the last step. All you need to do is go to wherever you want your lobby to be (the place where you spawn while you wait for players and/or vote) and use the lobby command.
2. The lobby command is /ed lobby, so once you're standing at the right place and facing the right direction, use it.
3. That's it! You can now disable EditMode in your config.yml (set it to 'false'), then restart your server to play.