MineWars
This plugin brings a completely new gamemode to your server. In this game players build large bases, armies and ore miners in order to win the game. Every player starts out with a headquarters and a bunch of money. Players then build power plants and ore refineries in order to grow their force.
Features
- Unique Minigame in which players build bases in order to grow their army and to beat the opponents.
- Massive Battles, this plugin allows for an infinite amount of players per game, this can lead to interesting situations!
- Easy Setup, simply define the arenas and you are good to go!
- A* Pathfinding, In other words, all units are equipped with an advanced pathfinding system so they are able to find a path to where you want them to go!
- Unit Grouping, You are able to select units in various ways and then control them all at the same time with just a single click.
- Diplomacy, You are able to send truce and pact requests to other players which will prevent units from attacking allies. You are also able to send money to others.
- API, add things yourself to this plugin using tons of custom events.
- AI (Beta), by going to the configuration you can toggle fill AI's to true. This will upon starting a game fill all empty spots with AIs. These AIs will attack you and play along. This is currently in beta but is working fine, the only issue is that after a while the game may become laggy, this is not the case in regular games without AIs.
- Customizations, This plugin comes with a ton of customization options. You are able to change how much each unit/building costs and the health and damage they have as well.
- Strategic, Every player is required to think about his actions which makes the game repeatedly enjoyable.
- Language Files, This plugin comes with a build-in language system, you are able to head over to the languages.yml and change the messages as you wish.
This plugin has a bunch of easy commands in order to setup an area. This is explained below:
Configurations
Arenas
Code (Text):
arenas:
conquest:
lobby: MineWars,-3,5,4
returnLocation: MineWars,-3,4,-3
players: 2
allowDiplomacy: true
minerTruce: false
timeLimit: -1
pos1: Unknown
pos2: Unknown
fillWithAI: 'false'
ore:
- MineWars,15,4,-57
- MineWars,13,4,-30
- MineWars,37,4,-26
- MineWars,33,4,-57
spawnpoints:
- MineWars,37,4,-30
- MineWars,11,4,-56
t:
lobby: MineWars,20,9,-212
returnLocation: MineWars,20,9,-212
players: 2
allowDiplomacy: true
minerTruce: 'false'
timeLimit: -1
pos1: Unknown
pos2: Unknown
fillWithAI: 'false'
ore:
- MineWars,36,4,-208
- MineWars,24,4,-193
- MineWars,7,4,-202
- MineWars,24,4,-210
spawnpoints:
- MineWars,11,4,-197
- MineWars,38,4,-203
Language
Code (Text):
EnableMessage1: MineWars starting up...
EnableMessage2: Running on a supported version!
Arena create: Succesfully created a new arena called %ArenaName%
Add Lobby: Succesfully set the lobby of the arena named %ArenaName%!
Add Spawnpoint: Succesfully added a spawnpoint to the arena named %ArenaName%!
Add Return Location: Succesfully set the returnLocation of the arena named %ArenaName%!
Add Ore Vein: Succesfully added an ore vein to the arena named %ArenaName%!
Set PlayerCount: Succesfully set the amount of players for arena %ArenaName%!
Connect: Sending you to the lobby >>>
Player Connects: '>>>%Player% Joined the lobby'
Countdown Message: Game starting in %Time% seconds
New Technology: New technology acquired
Building Constructed: Succesfully build a %Type%
Not Enough Funds: Insufficient funds!
Unit Recruited: '%Type% reporting for duty!'
Move Message: Left-click where I have to move to or Right-click to cancel!
Moving: Moving there right away!
MovingGroup: We're on our way!
Target Acquired9: Moving squad!
Harrier Recruited: Harrier ready to deliver the load!
Harrier Strike Message: Left-click an enemy unit/building I have to attack!
Target Acquired3: I am on it!
Target Acquired7: We've got a target!
Target Acquired2: Copy That!
Target Acquired8: We're on it!
Target Acquired1: Target Acquired!
Victory Message: You are victorious!
Cyborg Recruited: Cyborg... ready... my master...
Attempted Target Own Units: That is one of our own!
OP Destroy Sign: Succesfully removed the sign
Rocketeer Move: I am on it
Toggle Miner Truce: Succesfully toggled miner truce to %state%!
Game Full: This game is full
Airfield Full: That airfield is full!
Ore Vein Removed: Removed ore vein.
No reach: I am unable to target flying units!
No Lobby/ReturnLocation Error: User just attempted to join a game which has either no lobby assigned to it or no returnlocation!
Succesfully Requested Truce: A truce request has been send to %Player%!
Request Truce: '%Player% has proposed a truce'
Truce Accepted: You have succesfully accepted a truce with %Player%!
Truce Accepted2: '%Player%, has accepted your truce request!'
Truce Disbanded: Succesfully disbanded the truce with %Player%!
Truce Disbanded2: '%Player%, has disbanded your truce!'
Unknown name: That name %ArenaName%, doesn't exist!
INCOMPLETE! THESE MESSAGES GENERATE AS THEY ARE USED.
Unit Settings
Code (Text):
Prices:
Power Plant: 3000
Soviet Power Plant: 2500
Ore Refinery: 2500
Soviet Ore Refinery: 4000
Barracks: 500
Soviet Training Camp: 500
War Factory: 1000
Soviet War Factory: 5000
Airfield: 0
Soviet Airfield: 3500
Battle Lab: 0
Soviet Battle Lab: 0
LaserDefenseSystem: 0
Soviet Tesla Coil: 0
RepairPad: 0
Soviet RepairPad: 0
Sniper: 0
Soviet Sniper: 0
Machine Gunner: 0
Soviet Machine Gunner: 0
Commander: 0
Soviet Anti-Tank Gunner: 0
Juggernaut: 0
Soviet Physic Controller: 0
Cyborg: 0
Soviet Physic Dominator: 0
Ore Miner: 0
Soviet Ore Miner: 0
Battle Tank: 0
Soviet Battle Tank: 0
Gattling Tank: 0
Soviet Gattling Tank: 0
MCV: 0
Soviet MCV: 0
Prism Tank: 0
Soviet Apocalypse Tank: 0
Harrier: 0
Rocketeer: 0
Soviet Sky Fortress: 0
Range:
Sniper: 10
Soviet Sniper: 8
Machine Gunner: 2
Soviet Machine Gunner: 2
Commander: 2
Soviet Anti-Tank Gunner: 4
Juggernaut: 2
Soviet Physic Controller: 2
Cyborg: 2
Soviet Physic Dominator: 5
Battle Tank: 2
Soviet Battle Tank: 2
Gattling Tank: 3
Soviet Gattling Tank: 3
Prism Tank: 3
Soviet Apocalypse Tank: 4
Rocketeer: 3
Soviet Tesla Coil: 3
LaserDefenseSystem: 3
Headquarters: 5
ReloadTime:
Sniper: 600
Soviet Sniper: 700
Machine Gunner: 4
Soviet Machine Gunner: 4
Commander: 20
Soviet Anti-Tank Gunner: 400
Juggernaut: 15
Soviet Physic Controller: -1
Cyborg: 22
Soviet Physic Dominator: -1
Battle Tank: 35
Soviet Battle Tank: 35
Gattling Tank: 6
Soviet Gattling Tank: 35
Prism Tank: 140
Soviet Apocalypse Tank: 135
Rocketeer: 3
Soviet Sky Fortress: 35
Soviet Tesla Coil: 50
LaserDefenseSystem: 30
Damage:
Sniper:
Units: 700
Buildings: 10
Tanks: 0
Soviet Sniper:
Units: 600
Buildings: 30
Tanks: 10
Soviet Tesla Coil:
Units: 105
Buildings: 0
Tanks: 45
LaserDefenseSystem:
Units: 75
Buildings: 0
Tanks: 65
Machine Gunner:
Units: 30
Buildings: 30
Tanks: 10
Soviet Machine Gunner:
Units: 28
Buildings: 30
Tanks: 10
Commander:
Units: 50
Buildings: 30
Tanks: 10
Soviet Anti-Tank Gunner:
Units: 5
Buildings: 100
Tanks: 200
Juggernaut:
Units: 100
Buildings: 100
Tanks: 40
Cyborg:
Units: 100
Buildings: 70
Tanks: 60
Battle Tank:
Units: 20
Buildings: 100
Tanks: 190
Soviet Battle Tank:
Units: 10
Buildings: 110
Tanks: 200
Gattling Tank:
Units: 40
Buildings: 10
Tanks: 20
Soviet Gattling Tank:
Units: 40
Buildings: 10
Tanks: 20
Soviet Apocalypse Tank:
Units: 150
Buildings: 150
Tanks: 100
Prism Tank:
Units: 270
Buildings: 170
Tanks: 100
Rocketeer:
Units: 15
Buildings: 15
Tanks: 25
Soviet Sky Fortress:
Units: 150
Buildings: 50
Tanks: 100
Health:
Sniper: 5
Soviet Sniper: 5
Machine Gunner: 57
Soviet Machine Gunner: 57
Commander: 150
Soviet Anti-Tank Gunner: 50
Juggernaut: 3000
Soviet Physic Controller: 1500
Cyborg: 5750
Soviet Physic Dominator: 2500
Battle Tank: 200
Gattling Tank: 100
Soviet Battle Tank: 300
Soviet Gattling Tank: 200
Prism Tank: 75
Soviet Apocalypse Tank: 4000
Rocketeer: 25
Harrier: 25
Soviet Sky Fortress: 5000
Power Plant: 100
Ore Refinery: 350
Barracks: 76
War Factory: 250
Airfield: 100
Battle Lab: 150
Repair Pad: 400
Headquarters: 10000
LaserDefenseSystem: 220
MCV: 300
Soviet Power Plant: 200
Soviet Ore Refinery: 350
Soviet Training Camp: 35
Soviet War Factory: 450
Soviet Airfield: 100
Soviet Battle Lab: 150
Soviet Repair Pad: 400
Soviet Tesla Coil: 190
Soviet MCV: 500
Gameplay
When players start they will be given a headquarter. They will then be able to construct a power plant which will grant them access to the ore refinery and barracks. Right-click the barracks will allow players to recruit units. The Ore Refinery spawns in an ore miner which will seek out ore veins to gather more money. After building the ore refinery you will get access to the airfield and the war factory. Both of these allow you to create weaponry and grant access to the battle lab. The battle lab allows for advanced and powerful tanks and units and it also grants access to a base defense tower.
All units available:
- Sniper
- Machine Gunner
- Commander
- Juggernaut
- Cyborg
- Battle Tank
- Gatling Tank
- Prism Tank
- MCV
- Ore Miner
- Harrier
- Power Plant
- Ore Refinery
- Barracks
- War Factory
- Airfield
- Battle Lab
- Repair Pad
- Laser Defense System
API
This plugin comes with a bunch of events in order for you to reward players upon victory or punish them when losing.
Code (Text):
//Called when a player loses a game.
@EventHandler
public void lose(PlayerLoseEvent event){
Player p = event.getPlayer();
String map = event.getMap();
}
//Called when a player wins a game.
@EventHandler
public void win(PlayerWinEvent event){
Player p = event.getPlayer();
String map = event.getMap();
}
//Called when a player joins a game through a sign.
@EventHandler
public void join(PlayerJoinGameEvent event){
Player p = event.getPlayer();
String map = event.getMap();
}
//Called when a player leaves the game through any means.
@EventHandler
public void leave(PlayerLeaveGameEvent event){
Player p = event.getPlayer();
String map = event.getMap();
Boolean logout = event.isLogout();
}
//Called when a unit gets destroyed.
@EventHandler
public void unitDestroyed(UnitDestroyedEvent event){
Player ownerOfDestroyer = event.getOwnerOfDestroyer();
Player ownerOfDestroyed = event.getOwnerOfDestroyed();
String destroyerType = event.getDestroyerType();
String destroyedType = event.getDestroyedType();
String map = event.getMap();
ArmorStand destroyer = event.getDestroyer();
ArmorStand destroyed = event.getDestroyed();
}
//Called when a unit is moved.
@EventHandler
public void unitMoved(UnitMoveEvent event){
Player ownerOfMover = event.getOwner();
String moverType = event.getType();
String map = event.getMap();
ArmorStand mover = event.getMover();[/SIZE]
}
//Called when a player constructs a building.
@EventHandler
Public void construct(PlayerConstructEvent event){
Player p = event.getPlayer();
String map = event.getMap();
String type = event.getType();
Boolean canAfford = event.canAfford();
}
//Called when a game starts
@EventHandler
Public void start(GameStartEvent event){
ArrayList<Location> spawnpoints = event.getSpawnLocations();
String map = event.getMap();
}
//Called when a unit / building is created
@EventHandler
Public void create(UnitCreateEvent event){
String map = event.getMap();
String owner = event.getOwner();
String type = event.getType();
}
Support
If you ever need support then here are some ways to contact me:
- PM me here on Spigot! (Most efficient)
- Skype me at 'craterhater1'
Thanks