CurveCraft is like Curve Fever (or CurveFever2). Players can play CurveCraft with joining a lobby, starting a game and playing with friends. The players spawning on horses that automatically move. Every player spawns planes while riding the horse. The last player which has not crashed the wall/border or a plane, has won the round. After reaching the needed point amount, the game is over and a new one can start in the arena.
At the arena can play 2 - 16 players. Each player has an other plane color, but be careful with the ground that every color is visible. Voting for an earlier start is possible.
Please note:
- Place the teleport point one higher than it should. That could fix teleport problems.
First you need the permission CurveCraft.create, to execute the command "/cc create". Now execute the command and set the name of the arena with "/cc setname NAME". Now you have to define your arena. Choose two corners, so the plugin can calculate the area. If a player joins a lobby, the player spawns in a lobby room. Please define this location with "/cc setlobby". If a player crashs, he can spectate the the other players. Please define a teleport location with "/cc setend". If the game is over, all players will be teleportet to an other location. Please define it with "/cc setexit". Finish the arena with "/cc finish".
Please note:
player: minplayer: 2 #if two players are in the lobby, they can start the game. maxplayer: 16 #at 16 players the game starts automatically playersCanVoteForStart: true #if false, minplayer is not used. arena: name: test #name of the arena speed: 0.5 #speed of the horses -> higher, more difficult gap_length: 3 #size of the gaps, between planes gap_distance: 20 #how many space is between gaps timebeforegame: 10 #time in seconds before the game starts timebeforeround: 5 #time in seconds before a new round starts timeinvincible: 60 #time in server ticks -> player can not crash at the beginning of a round. corner1: -1198/8/636 corner2: -1113/8/551 lobbyloc: -1159/10/643 endloc: -1159/10/643 exitloc: -1159/14/643 statussign: false #if a join sign is created the coordinates of it will occure here. lightning: true #weather a lightning bolt should flash on player crash commandwhitelist: true #weather a command whitelist should be used disabled: false #status of arena
To create a status / join sign:
[..] Can be anything
To create a lobbyview sign:
[..] Can be anything
To create a "vote for start" sign:
[..] Can be anything
To create a leave sign:
[..] Can be anything
Note: You can edit them in the language.yml
| Action | Permission node |
|---|---|
| Playe CC | CurveCraft.play |
| Use help command | CurveCraft.help |
| Create new arenas | CurveCraft.create |
| needed for privacy command | CurveCraft.user |
| plugin info | CurveCraft.version |
| Change arena status | CurveCraft.changestatus |
language: en #language -> language_en.yml must exist autodownload: true #the plugin downloads the new plugin file to the plugin folder installondownload: false #not implemented yet updateCheck: true #plugin checks for a new version senderrorreport: true #plugin sends error reports about fatal errors to the developer senddebugfile: false #only the stacktrace is send. If this is true, the error log will be send too. debug: false #more console output debugfile: false users_can_choose_privacy: false #according to the german law, I am only allowed to store personal data (like chat messages) in a file if I ask the person. This can be toggled here. If not activated, all data will be anonymized. UsePrefix: true #toggle prefix use Prefix: CurveCraft #the prefix PrefixColor: b #color of the [CurveCraft] prefix TextColor: 6 #color of chat messages updateIntervall: 30 #update check intervall use_MySQL: false #not used dbPath: localhost:3306/Paypassage #not used dbUser: root #not used dbPassword: root #not used everyArenaOwnJoinPermission: false #admin can choose if the playe needs permission CurveCraft.join or CurveCraft.join.ARENANAME globalcommandwhitelist: false #if true the global command whitelist is active for all arenas where whitelist is enabled.
First, add this plugin as library to your project.
Now you create your own EventHandler:
import com.ibhh.CurveCraft.arena.APIHandler; import com.ibhh.CurveCraft.arena.CCArena; import com.ibhh.CurveCraft.arena.CCEventHandler; import com.ibhh.CurveCraft.arena.CrashReason; import com.ibhh.CurveCraft.arena.InvalidEventHandler; import java.util.ArrayList; import java.util.HashMap; import java.util.logging.Level; import java.util.logging.Logger; import org.bukkit.entity.Player; /** * * @author ibhh */ public class ExampleEventHandler extends CCEventHandler { public ExampleEventHandler() { try { APIHandler.addHandler(this); } catch (InvalidEventHandler ex) { Logger.getLogger(ExampleEventHandler.class.getName()).log(Level.SEVERE, null, ex); } } @Override public void PlayerCrashedEvent(CCArena a, Player p, CrashReason r) { } @Override public void PlayerRoundWinEvent(CCArena a, Player p) { } @Override public void PlayerGameWinEvent(CCArena a, Player p, HashMap<Player, Integer> score, ArrayList<Player> lobby) { } @Override public void GameStartEvent(CCArena a) { } @Override public void RoundStartEvent(CCArena a) { } @Override public void PlayerJoinEvent(CCArena a, Player p) { } @Override public void PlayerLeaveEvent(CCArena a, Player p) { } }
See Github.com for the documentation.
This plugin uses mcstats.org to gather statistical data. The data is collected anonymously and ALL data is visible to everyone. Follow the link at the statistics banner and you'll see the collected data.
If you don't want any data to be sent, disable statistic sending in the Metrics folder/configuration.
Opting out of this service can be done by editing plugins/Plugin Metrics/config.yml and changing opt-out to true.
This plugin creates debug files to make the finding of errors easier for me. If a error occurs the plugin may report it to me. All error reports are visible on my tracker. Klick here.
You can modify /disable this behavior in the configuration file. Set senddebugfile to false if you don't want to send debugfiles to me.
Set senderrorreport to false if you don't want to send any debug/errors to me. We are using our own bugtracker. It collects data that servers sent to us.