Mario Kart
Mario Kart
About
This bukkit plugin allows for Mario Kart in minecraft. The cars are minecarts that were placed down on any non-rail block and can be driven along the setup racetracks and use mario kart powerups.
Features
- Drive cars
- Race cars around tracks
- Setup race tracks for your players to race around with commands
- Use mariokart powerups
Powerups
Name | Icon | Description |
---|---|---|
Banana | Karts that run over Bananas will spin out. | |
Green shell | Travels in a straight line and knocks over the first kart it hits. Can be fired both forwards and backwards. | |
Red shell | Homes in on the closest kart in front of the player and hits it. | |
Blue shell | Chases after the kart in the lead and hits it. | |
Bob-omb | Will explode when thrown or dropped, knocking over any kart in its blast radius. | |
Mushroom | Provides the player's kart with a small speed boost. | |
Lightning | Causes all opponents to be struck by lightning and drive slowly for a short time. | |
Pow block | The POW Block hurts all enemies ahead of you, but spares those behind. When fired off, it'll count-down slowly through three stages prior to impact, at which point your enemies will all spin out to much calamity and amusement. | |
Boo | Makes the player temporarily invisible to opponents and applies Nausea to the racer ahead. | |
Random | Gives you a random powerup upon right-click. | |
Star | The driver obtains total invincibility and the driver receives a speed boost and the ability to drive off-road without losing any speed. |
See in action
The official server to see the plugin in action on is the GameBlade minecraft network. Go online and join the game 'MarioKart' to try it out! (Singleplayer time trials and multiplayer)
Website | http://gameblade.net |
IP | playgb.net |
Commands and Permissions
Commands | Permissions | Description |
---|---|---|
/marioraceadmin create <Trackname> | mariokart.raceadmin | Create a race! |
/marioraceadmin delete <Trackname> | mariokart.raceadmin | Remove a race! |
/marioraceadmin list (page) | mariokart.race | List the races available! |
/race shop | mariokart.race | Opens the race shop to buy kart upgrades! |
/race join <Trackname> | mariokart.race | Join a specific race! |
/race join <Trackname> auto | mariokart.race | Join a specific race, with a random racemode! |
/race join auto | mariokart.race | Join a random race! |
/race join auto auto | mariokart.race | Join a random race, with a random racemode! |
/race leave | mariokart.race | Leave a current race! |
Resource Pack
Requirements
To run, MarioKart requires a few other plugins before it can function. These are:
- uCars - http://dev.bukkit.org/bukkit-plugins/ucars/
- ProtocolLib - http://dev.bukkit.org/bukkit-plugins/protocollib/
Upgrades
Upgrades are basic extras players can use to get an advantage on others in a race and are purchased through the race shop.
For the race shop to function you need Vault installed!
To edit the items available in the shop and how much they cost you can edit plugins/MarioKart/upgrades.yml. By default
there are a few basic upgrades setup (One of every available type); if not all of these show up, simply delete the upgrades.yml
and it will regenerate next time the server is reloaded.
Available Types: (More coming soon)
- SPEED_BOOST
- IMMUNITY
Music
During races, if music is enabled, the best song for that track is chosen at random and played using the Resource Pack!
Donations
Todo
Add booAdd a speedo in the xp bar- Add cups/championships
Correct scoreboard order by making values negative.Make resource packAdd mario sound effects(Resource pack)Make an item selection animation with random switching in the hotbarStore item box reloading data in hashmap instead of on the sign.
Recommended Plugins
UltimatePluginUpdater, the easy way to keep all your plugins up-to-date with ease! - http://dev.bukkit.org/bukkit-plugins/UltimatePluginUpdater/
UcarsTrade, the official plugin for a more extensive car system ideal for RPG servers with different speed and specs of cars, custom recipes, trading and more! - http://dev.bukkit.org/bukkit-plugins/ucars-trade
uPlanes, a brilliant plugin, similar to uCars, which adds uPlanes to the game! All is fully compatible and, alike to uCarsTrade, is survival friendly! Want some cool, upgradeable planes? Get this! - http://dev.bukkit.org/bukkit-plugins/uplanes
Video Tutorial
Video by VariationVault on YouTube
Have fun racing!
Source code: Link
Mario Kart made by Storm345
Page documented by SeaBoiii
Resource Pack made by MwGuy52
@apiccinelli
You may be using the wrong words or alternatively you are using an unsupported version of Bukkit (eg. spigot hack) and that may be full of errors. Hope this helps you! :D
@storm345
Thanks for the clarification. It makes sense. I'm a professional Java developer. If that's a feature you want to support and you'd like help, I can take a look at it for you.
But either way, thanks for the workaround.
One more question: I am having problems with the Join Signs that AbsintoJ uses in his video. The signs don't change colors like his, and therefore, don't work. Any ideas why that would be? I don't see any errors in the log.
Thanks!
@ludgart
Hi chance your protocollib isnt updated to the Spigot Hack
@robotnikthingy
Kill them when they fall. (Lava, void, etc...)
@ludgart
Is this the Spigot DEV 1.7.2 build? If so, that's totally unsupported, sorry.
@ludgart
Same as I said to the other guy. BTW if it isn't 1.7 then I will look into the error and fix for you.
@apiccinelli
The two plugins have the same package and class names and are totally incompatible. This was done to avoid USER confusion with multiple race plugins and remove needless lag caused by running TWO near-identical plugins. Just use MarioKart in preference to uCarsRace and on non-mario tracks don't place any item boxes. Perhaps I may revoke the incompatibility in the future. But for now; that's the solution!
@storm345
I tested my server for lag. I also removed uCarsRace and successfully built 2 MarioKart tracks. Then I restored uCarsRace and started encountering the same double-click problem (one click executed 2 actions, such as the start and end clicks).
So @storm345, are you saying that it's not possible to run both MarioKart and uCarsRace? Why would this be since those 2 plugins use different commands to start the track creation? Don't these plugins only respond to wand actions once the create command is invoked?
@GamerKing195
There are join signs implemented already?
Can you please add Join signs?
and isnt work with spigot...
and:
2013-11-24 00:03:59 [SEVERE] Could not pass event RaceEndEvent to MarioKart v2.3 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:30) at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:478) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:463) at net.stormdev.ucars.race.Race.end(Race.java:366) at net.stormdev.ucars.race.Race$1$1.run(Race.java:225) at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftTask.run(CraftTask.java:58) at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:520) at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:240) at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:483) at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:415) at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) Caused by: java.lang.NullPointerException at net.stormdev.ucars.race.RaceScheduler.removeRace(RaceScheduler.java:315) at net.stormdev.ucars.race.RaceScheduler.trackInUse(RaceScheduler.java:298) at net.stormdev.ucars.race.URaceListener.RaceEnd(URaceListener.java:289) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425) ... 13 more
and:
2013-11-24 00:03:56 [WARNING] [MarioKart] Task #21196 for MarioKart v2.3 generated an exception java.lang.NullPointerException 2013-11-24 00:03:57 [WARNING] [MarioKart] Task #21196 for MarioKart v2.3 generated an exception java.lang.NullPointerException 2013-11-24 00:03:57 [WARNING] [MarioKart] Task #21196 for MarioKart v2.3 generated an exception java.lang.NullPointerException 2013-11-24 00:03:57 [WARNING] [MarioKart] Task #21196 for MarioKart v2.3 generated an exception java.lang.NullPointerException 2013-11-24 00:03:57 [WARNING] [MarioKart] Task #21196 for MarioKart v2.3 generated an exception java.lang.NullPointerException 2013-11-24 00:03:57 [WARNING] [MarioKart] Task #21196 for MarioKart v2.3 generated an exception java.lang.NullPointerException
and:
2013-11-24 00:03:56 [WARNING] [MarioKart] Task #21196 for MarioKart v2.3 generated an exception java.lang.NullPointerException 2013-11-24 00:03:57 [WARNING] [MarioKart] Task #21196 for MarioKart v2.3 generated an exception java.lang.NullPointerException 2013-11-24 00:03:57 [WARNING] [MarioKart] Task #21196 for MarioKart v2.3 generated an exception java.lang.NullPointerException 2013-11-24 00:03:57 [WARNING] [MarioKart] Task #21196 for MarioKart v2.3 generated an exception java.lang.NullPointerException 2013-11-24 00:03:57 [WARNING] [MarioKart] Task #21196 for MarioKart v2.3 generated an exception java.lang.NullPointerException 2013-11-24 00:03:57 [WARNING] [MarioKart] Task #21196 for MarioKart v2.3 generated an exception java.lang.NullPointerException
I get this error:
2013-11-23 22:45:41 [SEVERE] Could not pass event PlayerInteractEvent to MarioKart v2.3 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:30) at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:478) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:463) at org.bukkit.craftbukkit.v1_6_R3.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:207) at net.minecraft.server.v1_6_R3.PlayerInteractManager.interact(PlayerInteractManager.java:374) at net.minecraft.server.v1_6_R3.PlayerConnection.a(PlayerConnection.java:631) at net.minecraft.server.v1_6_R3.Packet15Place.handle(SourceFile:58) at org.spigotmc.netty.NettyNetworkManager.b(NettyNetworkManager.java:230) at net.minecraft.server.v1_6_R3.PlayerConnection.e(PlayerConnection.java:117) at net.minecraft.server.v1_6_R3.ServerConnection.b(SourceFile:37) at org.spigotmc.netty.NettyServerConnection.b(NettyServerConnection.java:132) at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:594) at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:240) at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:483) at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:415) at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) Caused by: java.util.ConcurrentModificationException at java.util.HashMap$HashIterator.nextEntry(Unknown Source) at java.util.HashMap$KeyIterator.next(Unknown Source) at net.stormdev.ucars.race.RaceScheduler.removeRace(RaceScheduler.java:310) at net.stormdev.ucars.race.RaceScheduler.trackInUse(RaceScheduler.java:298) at net.stormdev.ucars.race.RaceScheduler.reCalculateQues(RaceScheduler.java:122) at net.stormdev.ucars.race.RaceScheduler.joinGame(RaceScheduler.java:74) at net.stormdev.ucars.race.URaceCommandExecutor.urace(URaceCommandExecutor.java:314) at net.stormdev.ucars.race.URaceListener.signClicker(URaceListener.java:750) at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425) ... 17 more
and
2013-11-23 22:44:19 [SEVERE] Could not pass event PlayerDeathEvent to MarioKart v2.3 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:30) at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:478) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:463) at org.bukkit.craftbukkit.v1_6_R3.event.CraftEventFactory.callPlayerDeathEvent(CraftEventFactory.java:361) at net.minecraft.server.v1_6_R3.EntityPlayer.die(EntityPlayer.java:328) at org.bukkit.craftbukkit.v1_6_R3.entity.CraftLivingEntity.setHealth(CraftLivingEntity.java:79) at net.stormdev.mariokartAddons.MarioKart.calculate(MarioKart.java:178) at net.stormdev.ucars.race.URaceListener.signClicker(URaceListener.java:725) at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:30) at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:478) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:463) at org.bukkit.craftbukkit.v1_6_R3.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:207) at net.minecraft.server.v1_6_R3.PlayerInteractManager.interact(PlayerInteractManager.java:374) at net.minecraft.server.v1_6_R3.PlayerConnection.a(PlayerConnection.java:631) at net.minecraft.server.v1_6_R3.Packet15Place.handle(SourceFile:58) at org.spigotmc.netty.NettyNetworkManager.b(NettyNetworkManager.java:230) at net.minecraft.server.v1_6_R3.PlayerConnection.e(PlayerConnection.java:117) at net.minecraft.server.v1_6_R3.ServerConnection.b(SourceFile:37) at org.spigotmc.netty.NettyServerConnection.b(NettyServerConnection.java:132) at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:594) at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:240) at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:483) at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:415) at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) Caused by: java.lang.NullPointerException at net.stormdev.ucars.race.URaceListener.playerDeathEvent(URaceListener.java:926) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425) ... 30 more
It would be nice if there was a way to make it if cars fall off a track they are put where they last were. Maybe put a configurable height, and when a car goes below that height they are placed on the last block they were on
@MuteTerra
FIX: Put the race-track lobby near the race-track because Minecraft doesn't like spawning Minecarts in unloaded parts of worlds.
I have this bug!
When the game starts the player has no Mine-cart They have to kill them selfs just to get a minecart can you fix this bug!
@apiccinelli
Stop and restart your server and also check you aren't running uCarsRace at the same time. It sounds like your server is running two instances of the same code. (Either the plugin double-loaded or you have an incompatibility)
@apiccinelli
Its either your mouse or your server. You can try to increase the tick rate in the config to make it less lag for the server. :)
Has anyone had a problem where, when you click, with or without the wand, it actually reads 2 clicks?
It's doing that for me which means that it sets the lobby and the end with one click, but it also sets 2 starting points for every one of my clicks?
I just noticed that there were recent updates, which I downloaded, but it didn't fix is.
Any thoughts?
@Mwguy52
:D
@Mwguy52
Thanks :D
Alright as requested from a user im making Wii maps such as desert hills,coconut mall,Yoshi Falls.A map pack will be made when im done with the maps hopefully i can remake most or all mario kart maps and make even more map packs.
Awesome!
@ZenithGamer
Read the documentation for uCars. It is likely you're tripping some feature from there as a speed boost. Also they may be holding down 'd' (Brake)