Difference between revisions of "Minecraft"

From Server Knowledge Base
Jump to navigationJump to search
m
 
(101 intermediate revisions by the same user not shown)
Line 1: Line 1:
Currently the server is running 1.4.6-R0.4 Dev for our Minecraft server. We have now updated the plugins to be compatible with 1.4.6
Server host/IP: mc.bywatercraft.co.uk / 188.165.120.188<br>
Website name: bywatercraft.co.uk -/> bywatercraft.com
 
Currently the Bywater Craft Minecraft server is running Spigot 1.8.8. We have now updated the plugins to be compatible with 1.8.7.


Load Minecraft:
Load Minecraft:


<pre>/usr/bin/java -Djline.terminal=jline.UnsupportedTerminal -client -Xmx7132M -jar craftbukkit.jar nogui -d yyyy-MM-dd HH:mm:ss -nojline</pre>
<pre>/usr/bin/java -Djline.terminal=jline.UnsupportedTerminal -client -Xmx7132M -jar spigot.jar nogui -d yyyy-MM-dd HH:mm:ss -nojline</pre>


Load McMyAdmin:
Load McMyAdmin:


<pre>tmux new-session -t minecraft
<pre>tmux new-session -n minecraft
cd /home/user
cd /home/user
./MCMA2_Linux_x86_64 | tee /var/www/sites/byw*.co.uk/logs/minecraft.log</pre>
./MCMA2_Linux_x86_64 | tee yourminecraft.log</pre>


If you want to connect from elsewhere to view the above output/console load the screen session:
If you want to connect from elsewhere to view the above output/console load the screen session:
Line 15: Line 18:
<pre>ssh user@localhost -pXXXX
<pre>ssh user@localhost -pXXXX
tmux ls
tmux ls
tmux attach 0</pre>
tmux attach 0
</pre>


Using CTRL + D will quit screen and close any processes running within it. To exit safely do:
To kill the process on boot:


CTRL + B, let go, then press D on it's own.  
<pre>ps -ef | grep tmux | grep -v grep | awk '{print $2}' | xargs kill -9</pre>
 
Using CTRL + D will quit screen and close any processes running within it.<br>
To exit safely do CTRL + B, let go, then press D on it's own.  


When downloading a backup from McMyAdmin, it comes in the mcb format. Change it to .zip and you can then unzip it into a folder and restore to the server.
When downloading a backup from McMyAdmin, it comes in the mcb format. Change it to .zip and you can then unzip it into a folder and restore to the server.
Line 41: Line 48:


Edit the value next to "contents-amount:" in the user's .yml file.
Edit the value next to "contents-amount:" in the user's .yml file.
== Bungeecord ==
http://www.spigotmc.org/wiki/bungeecord/<br>
https://www.spigotmc.org/wiki/bungeecord-configuration-guide/<br>
http://www.spigotmc.org/wiki/bungeecord-installation/#installing-bungeecord-on-linux
To end Bungeecord script, type end and hit enter.
[https://www.youtube.com/watch?v=0ViRZPLuBiA How to use and install BungeeCord]
== Buycraft ==
=== Edit Store welcome page ===
Webstore > General settings > Homepage description


== Chat ==
== Chat ==
Line 57: Line 80:


If you use Bukkit/Essentials, do /lag
If you use Bukkit/Essentials, do /lag
== ColorMe ==
If you add or remove a player to players.yml manually, keep a copy of the text you entered or of the file from which the text was removed. Sometimes when you do /color reload it will import an old version of the file from before the change you made. To resolve this:
* make a copy of the text you added or the entire file not including the text you remove
* run the following command:
<pre>:> players.yml</pre>
* in config.yml set updateConfig: to true from the default of false
* /color reload
* now add or remove the text you did before, run the above command and it should work
Also, it may be worth keeping updateConfig: as true always
=== Colour and type ===
To use both colour and formatting/type such as bold, itallic, strikethrough and underline at the same time, use the colour first then the formatting:
<pre>amplified: '&6&oModerator&f'</pre>
or
/prefix me &6&oModerator
== Command Block ==
Quick FAQ/Guide: http://hypixel.net/wiki/command-block/


== Connection reset ==
== Connection reset ==
Line 106: Line 156:


== Current errors ==
== Current errors ==
On /reload, this appears:
[WARNING] [PermissionsEx] Can't obtain PermissionsEx instance<br>
[WARNING] [PermissionsEx] Reinjecting all permissibles
Doesn't show on startup.


[WARNING] Can't keep up! Did the system time change, or is the server overloaded?
[WARNING] Can't keep up! Did the system time change, or is the server overloaded?
Line 120: Line 163:
=== Current issues ===
=== Current issues ===


None
None.


== DynMap ==
== DynMap ==
Line 132: Line 175:


[https://github.com/webbukkit/dynmap/wiki/Configuring-Maps-and-Worlds-using-dmap Configuring Maps and Worlds using dmap]<br>
[https://github.com/webbukkit/dynmap/wiki/Configuring-Maps-and-Worlds-using-dmap Configuring Maps and Worlds using dmap]<br>
[https://github.com/webbukkit/dynmap/wiki/Component-Configuration Component Configuration]<br>
[http://dev.bukkit.org/server-mods/dynmap/pages/faq/ FAQ]
[http://dev.bukkit.org/server-mods/dynmap/pages/faq/ FAQ]


Render all: /dynmap fullrender
Render all:
<pre>/dynmap fullrender</pre>


Please be warned if you run a full render with the template set as the [https://github.com/webbukkit/dynmap/wiki/HD-Map-Configuration highest one for HD], hi_boost_xhi, then on a server with 8GB of RAM it will cause ~45-65% RAM usage.
Please be warned if you run a full render with the template set as the [https://github.com/webbukkit/dynmap/wiki/HD-Map-Configuration highest one for HD], hi_boost_xhi, then on a server with 8GB of RAM it will cause ~45-65% RAM usage.


Pause render: /dynmap pause all<br>
Pause render:  
Start render: /dynmap pause none
<pre>/dynmap pause all</pre>
 
Start render:
<pre>/dynmap pause none</pre>
 
Disable world render:
<pre>/dmap worldset WorldName enabled:false</pre>


Disable world render: /dmap worldset WorldName enabled:false
Hide a player:
<pre>/dynmap hide PlayerName</pre>


Hide a player: /dynmap hide PlayerName<br>
Show a player:
Show a player: /dynmap show PlayerName
<pre>/dynmap show PlayerName</pre>


https://github.com/webbukkit/dynmap/wiki/Web-UI-Parameters
https://github.com/webbukkit/dynmap/wiki/Web-UI-Parameters
Line 151: Line 203:


The Dynmap WorldGuard plugin that shows the WorldGuard region areas on the Dynamic Map shows a green border when there is no owner as it is not claimed.
The Dynmap WorldGuard plugin that shows the WorldGuard region areas on the Dynamic Map shows a green border when there is no owner as it is not claimed.
This will stop a render in progress and purge the tiles.
<pre>/dynmap purgeworld Le_Monde</pre>


== Enjin ==
== Enjin ==
Line 162: Line 218:
* Note down the enjinkey
* Note down the enjinkey


== Essentials ==
--


[http://forums.fragnet.net/minecraft/588-essentials-command-reference.html Command reference]
If your site expires you will need to set the Custom Domain Name again.


=== Allow TNT ===
Go to http://site5659999cd2a04.enjin.com/dashboard/website/dns?site_id=722890


We use http://dev.bukkit.org/server-mods/antitnt and http://dev.bukkit.org/bukkit-mods/naughty-blocks which means we can have TNT enabled but then only provide users access via the permissions AntiTNT.tnt and naughtyblocks.tnt
== [[Minecraft/Essentials | Essentials]] ==


Essentials and WorldGuard don't. If you are using Essentials and WorldGuard do this:
== Fixed errors ==
 
<pre>vim plugins/Essentials/config.yml</pre>
 
10 = lava :: 11 = still lava :: 46 = TNT :: 327 = lava bucket
 
Default:
 
<pre>alert:
    on-placement: 10,11,46,327
    on-use: 327
    on-break:
 
placement: 10,11,46,327</pre>
 
Remove 46 from the placement line.
 
Ensure plugins/WorldGuard/config.yml has the following:
 
<pre>ignition:
    block-tnt: false
    block-tnt-block-damage: false</pre>
 
=== Find players home ===
 
/home playername:home<br>
/home <user>:<name>
 
Broken:
 
/home user:
 
=== Get user's coordinates ===
 
If you have Essentials, use /getpos PlayerName
 
=== Kill specific mob/s ===
 
/killall MobName (e.g. Blaze)
 
=== Mail players ===
 
/mail send FullPlayerName Message
 
To read the mail, do /mail read<br>
To clear the mail, do /mail clear
 
=== Respawn at home instead of spawn ===
 
Change this:
 
When users die, should they respawn at their first home or bed, instead of the spawnpoint?<br>
 
respawn-at-home: false
 
to
 
respawn-at-home: true
 
=== Set players home ===
 
WIP
 
=== Stop checking user's permissions ===
 
If you get the following message a lot in your server.log:
 
Essentials: checking if Player has plugin.permission - true/false


<pre>vim plugins/Essentials/config.yml</pre>
=== Failed to start the minecraft server ===


Set debug: to false.
<pre>Loading libraries, please wait...
Failed to start the minecraft server
java.lang.NullPointerException
at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213)</pre>


=== Teleport player to you ===
Move your usercache.json file to another folder and try start/restart the server again


/tpohere playername
=== FirstJoinPlus ===


=== Teleport to coordinates ===
Could not pass event FirstJoinEvent to FirstJoinPlus v1.8.2


/tppos x y z
Set your first join point again using /firstjoinplus setspawn


=== Teleport to player ===
Setting debug to true will treat every join as if it was a first join, so don't keep it on permanently!
 
As OP, /tpo playername
 
As player, /tpa playername
 
=== Updating Essentials ===
 
<pre>mkdir /root/scripts/testing/ess-core
mkdir /root/scripts/testing/ess-extra
cd /root/scripts/testing/ess-core</pre>
 
Latest stable:
<pre>wget http://dev.bukkit.org/media/files/671/664/Essentials.zip</pre>
 
or latest pre-release:
<pre>wget http://dev.bukkit.org/media/files/693/255/Essentials.zip</pre>
 
<pre>unzip Essentials.zip
rm Essentials.zip
cd /root/scripts/testing/ess-extra</pre>
 
Latest pre-release
<pre>wget http://dev.bukkit.org/media/files/693/254/Essentials-extra.zip
unzip Essentials-extra.zip
rm Essentials-extra.zip</pre>
 
'''Stop the server.'''
 
Make backups:
 
<pre>mkdir /root/backups/essentialsBackup/
cd /home/mc/Minecraft/plugins/</pre>
 
Either copy or move the files/folders:
 
cp -v Essentials/ EssentialsAntiBuild.jar EssentialsChat.jar Essentials.jar EssentialsGeoIP.jar EssentialsProtect.jar EssentialsSpawn.jar EssentialsXMPP.jar /root/backups/essentialsBackup/ -R
 
mv -v Essentials/ EssentialsAntiBuild.jar EssentialsChat.jar Essentials.jar EssentialsGeoIP.jar EssentialsProtect.jar EssentialsSpawn.jar EssentialsXMPP.jar /root/backups/essentialsBackup/
 
Copy the new version of the files into place:
 
Essentials Core:
 
<pre>cd /root/scripts/testing/ess-core
cp -v EssentialsAntiBuild.jar EssentialsChat.jar Essentials.jar EssentialsProtect.jar EssentialsSpawn.jar /home/mc/Minecraft/plugins -R</pre>
 
Essentials Extras:
 
<pre>cd /root/scripts/testing/ess-extra
cp -v EssentialsGeoIP.jar EssentialsXMPP.jar /home/mc/Minecraft/plugins -R</pre>
 
== Fixed errors ==


=== Modifyworld pass event ===
=== Modifyworld pass event ===
Line 316: Line 256:
=== NoSplosion will cause Endermen to NOT spawn ===
=== NoSplosion will cause Endermen to NOT spawn ===


"'''Disables all explosions vanila or mods (tekkit etc...) and fire from destroying blocks as well as endermen from spawning. All explosions and fire still damage players but do not damage the environment.'''"
Disables all explosions vanilla or mods (Tekkit etc...) and fire from destroying blocks as well as Endermen from spawning. All explosions and fire still damage players but do not damage the environment.
 
=== NoCheatPlus ===
 
[INFO] [NoCheatPlus] Enabling NoCheatPlus v3.6.1<br>
[SEVERE] Error occurred while enabling NoCheatPlus v3.6.1 (Is it up to date?)<br>
Error  : Minecraft server could not be started<br>
java.lang.VerifyError: (class: fr/neatmonster/nocheatplus/checks/chat/ChatListener, method: commandPreprocess signature:(Lorg/bukkit/event/player/PlayerCommandPreprocessEvent;)V) Incompatible argument to function<br>
Error  : An incompatible, damaged or outdated addon is preventing the server from starting.<br>
Error  : Java Error: java.lang.VerifyError: (class: fr/neatmonster/nocheatplus/checks/chat/ChatListener, method: commandPreprocess signature: (Lorg/bukkit/event/player/PlayerCommandPreprocessEvent;)V) Incompatible argument to function
 
Outdated version, install up-to-date version: http://dev.bukkit.org/server-mods/nocheatplus/


==== Your configuration might be outdated! ====
=== Your configuration might be outdated! ===


The best thing to do is just do:
The best thing to do is just do:


<pre>mv config.yml old.config.yml
<pre>mv config.yml old.config.yml</pre>
diff config.yml old.config.yml</pre>


Then reload the server configuration or NCP plugin itself:
Then reload the server configuration or NCP plugin itself:
Line 340: Line 268:
<pre>/reload
<pre>/reload
/ncp reload</pre>
/ncp reload</pre>
Then check if the config is different:
<pre>diff config.yml old.config.yml</pre>


== Give items ==
== Give items ==
Line 448: Line 380:
== Lock chests ==
== Lock chests ==


Use Lockette. To snoop in chest and to do this without message, edit this file:
Use LWC or Lockette.  
 
To reload LWC, do /lwc admin reload
 
To snoop in a chest with Lockette and to do this without a broadcast message, edit this file:


/home/user/Minecraft/plugins/Lockette/config.yml
/home/user/Minecraft/plugins/Lockette/config.yml
Line 470: Line 406:
ps aux|grep MC|grep x86|awk {'print $2'}</pre>
ps aux|grep MC|grep x86|awk {'print $2'}</pre>


== McMyAdmin ==
== [[Minecraft/McMyAdmin | McMyAdmin]] ==
 
=== Help command ===
 
In console:
 
/?
 
=== [https://ssl.mcmyadmin.com/keyrecovery Licence Key Recovery] ===
 
=== Permissions issue ===
 
One issue we have ran into is when running McMyAdmin and PermissionsEx at the same time is, if you add a user, group or permission via McMyAdmin, it writes the permissions.yml to PermissionsEx with the user but with no group in between the "''" parts.
 
To avoid this, add users/groups/permissions via /pex in the server console or in-game. To reload do /pex reload instead of /reload
 
=== Other ===
 
If you make a group that is a 'default' group (Like the Everyone group is by default) - MCMA transparently renames it to 'default' when using PermissionsBukkit as PB requires that it's called Default for people to be a member automatically.


== Migrate from one *nix server to another ==
== Migrate from one *nix server to another ==
Line 512: Line 430:
This page has been moved to the above link as our server does not used Multiverse any more, it used Multiworld.
This page has been moved to the above link as our server does not used Multiverse any more, it used Multiworld.


== Multiworld ==
== [[Minecraft/Multiworld | Multiworld]] ==
 
== NCore ==
 
Plugin list: http://www.ribesg.fr/


Creating worlds:
=== NEnchantingEgg ===


End world (type = end):
[http://www.ribesg.fr/bukkit/NEnchantingEgg Documentation]
<pre>/mw create WorldName Type</pre>


=== Import world ===
=== nTheEndAgain ===


If you have old worlds say from Multiverse, when the server is restarted Mulitworld will unload these worlds and not show up in /mw list. Therefore you need to backup your worlds and in game/console do:
[http://www.ribesg.fr/bukkit/NTheEndAgain Documentation]


<pre>/mw create OriginalWorldName</pre>
Shortcut instead of /ntheendagain -> /nend


Where OriginalWorldName is the name of the world as it was/is and it will load it from now on and be viewable in /mw list
=== Check amount of dragons ===


Ensure the permissions are correct!
<pre>/ntheendagain nb world_the_end</pre>


=== List worlds ===
==== Regen the world ====


<pre>/mw list</pre>
<pre>/ntheendagain regen world_the_end
/ntheendagain respawn world_the_end</pre>


=== Teleport to another worlds ===
==== Respawn the dragon ====


<pre>/goto WorldName</pre>
<pre>/ntheendagain respawnEnderDragon world_the_end</pre>


== Redstone ==
== Redstone ==
Line 548: Line 470:


http://forums.bukkit.org/threads/petition-to-remove-the-reload-command.43212
http://forums.bukkit.org/threads/petition-to-remove-the-reload-command.43212
== Remote Toolkit ==
Colour code errors in console/log such as:
<pre>[12:21:32 INFO]: CONSOLE: Forcing save..←[m
[12:21:32 INFO]: CONSOLE: Save complete.←[m
←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1
G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K[12:21
:32 INFO]: ←[0;35;1m[Server←[0;35;1m] Save is complete.←[m</pre>
This is due to the MinecraftRKitPlugin.jar file in your plugins folder. This is as of Release 10, Alpha 15.3 of the toolkit wrapper and happens on both Windows ([http://forums.bukkit.org/threads/console-format-issue.205024/ example]) and Unix (my own) ([https://forums.bukkit.org/threads/weird-multicraft-bukkit-error.127851/ example 2]).


== Restart required ==
== Restart required ==
Line 588: Line 522:


=== Hawkeye ===
=== Hawkeye ===
[http://dev.bukkit.org/bukkit-plugins/hawkeye/pages/other-information/usage/ Usage]


'''Log everything:'''
'''Log everything:'''
Line 658: Line 594:


<pre>mysql -p
<pre>mysql -p
create database hawkminecraft;
create database hawkeye;
show databases;
show databases;
use hawkminecraft
use hawkeye
show tables;</pre>
show tables;</pre>


This may be empty. If so (more than likely), log into your minecraft server and do /reload. Then go back into MySQL:
This may be empty. If so (more than likely), log into your minecraft server and do /reload. Then go back into MySQL:


<pre>use hawkminecraft
<pre>use hawkeye
show tables;
show tables;
+-------------------------+
+-------------------------+
| Tables_in_hawkminecraft |
| Tables_in_hawkeye      |
+-------------------------+
+-------------------------+
| hawk_players            |
| hawk_players            |
Line 687: Line 623:


==== Look at logs ====
==== Look at logs ====
Via a web interface: http://dev.bukkit.org/bukkit-plugins/hawkeye-reload/pages/web-interface-setup/
If you do a search and get this error message you need to re-download the interface:
<pre>Error! Unknown column 'date' in 'where clause'</pre>
Via SQL:


select * from hawkeye ORDER BY data_id DESC LIMIT 100000;
select * from hawkeye ORDER BY data_id DESC LIMIT 100000;
Line 713: Line 657:


/flyspeed 2 playername
/flyspeed 2 playername
== Setting spawn ==
On Bywater Craft where we have multiple spawn plugins, to set spawn you need to do:
<pre>/mw setspawn
/setspawn</pre>


== Set warps ==
== Set warps ==
Line 727: Line 678:


If you have per-warp-permission set to true in the config.yml then you can limit what warps players can use. This also controls what players would see with /warp, hence why both essentials.warp and essentials.warp.list are used.
If you have per-warp-permission set to true in the config.yml then you can limit what warps players can use. This also controls what players would see with /warp, hence why both essentials.warp and essentials.warp.list are used.
== Set world for SkyGridMP ==
<pre>vim SkyGrid.jar/config.yml</pre>
Edit this line:
<pre>world: WorldName</pre>
== Spigot patching 09/09/14 - 28/11/14 (old) ==
This was changed as of November 28th 2014: http://www.spigotmc.org/threads/bukkit-craftbukkit-spigot-1-8.36598/
Please now use http://www.spigotmc.org/threads/buildtools-updates-information.42865/ for Minecraft 1.8+
<pre>cd ~/spigotwork
java -jar ~/spigotwork/SpigotPatcher-1.0.jar ~/spigotwork/spigot1649.jar ~/spigotwork/spigot-YYYYMMDDa.bps ~/spigotwork/spigot-patched.jar ; mv spigot-patched.jar spigot.jar ; chown user:user spigot.jar
rm ../Minecraft/spigot.jar
mv spigot.jar ../Minecraft/</pre>
Inside the spigotwork folder:
<pre>java -jar SpigotPatcher-1.0.jar spigot1649.jar spigot-YYYYMMDD.bps spigot-patched.jar ; mv spigot-patched.jar spigot.jar ; chown user:user spigot.jar</pre>
== Spigot patching - new ==
Inside your spigotwork folder:
<pre>mkdir 1.XX-XBuildTools
rm BuildTools.jar
wget "https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar" -O BuildTools.jar
java -jar BuildTools.jar
</pre>
If needed run this first outside of McMyAdmin:
<pre>exec java -jar spigot.jar --forceUpgrade nogui | tee test.log</pre>


== [http://www.minecraftforum.net/videos/view-51785-how-to-synchronize-nether-portals Synchronise Nether Portals] ==
== [http://www.minecraftforum.net/videos/view-51785-how-to-synchronize-nether-portals Synchronise Nether Portals] ==
Line 773: Line 761:


<pre>//set block</pre>
<pre>//set block</pre>
=== Unbind a tool/block ===
If for example you accidentally do //fill block (e.g. sand), and each time you right click with a tool/block or your hand, clear it by doing:
<pre>/none</pre>


== World Guard ==
== World Guard ==
http://wiki.sk89q.com/wiki/WorldEdit/Selection
https://bukkit.org/threads/worldguard-not-expanding-regions.20974/


To protect an area, do:
To protect an area, do:
Line 798: Line 796:


<pre>/region info newnameforarea</pre>
<pre>/region info newnameforarea</pre>
=== Allow fire spread/tick ===
In config.yml:
Set high-frequency-flags to true<br>
Set disable-all-fire-spread to false
<pre>/rg flag __global__ fire-spread allow
/rg flag __global__ lava-fire allow</pre>
If this still doesn't work, if you have Essentials then set these in config.yml:
<pre>fire-spread: true
lava-fire-spread: true
flint-fire: true</pre>
=== Edit world regions from outside (and inside) that world ===
<pre>/rg flag -w ExactWorldName RegionName FlagName allow</pre>
If you want to use the blocked-cmds flag and want to block multiple commands separate them by commas:
<pre>/rg flag -w world MyHome blocked-cmds /tp,/warp</pre>
=== Entry flag for groups ===
Due to inheritance
<pre>/rg flag chestroomdoor entry deny
/rg flag chestroomdoor entry -g nonmembers
/rg addmember chestroomdoor g:citizen</pre>
This gets round inheritance by denying all except members from a certain group up the inheritance tree.
Let's say you have:
Region name: doorway<br>
Group name: '''vip'''<br>
Flag: entry deny
<pre>/region define doorway
/region flag doorway entry deny
/region addmember doorway g:vip
/region flag doorway entry -g nonmembers</pre>
This would stop entry to everyone who is not in the vip group for the doorway.
Region name: doorway<br>
Group name: '''guest'''<br>
Flag: entry deny
<pre>/region define doorway
/region flag doorway entry deny
/region addmember doorway g:guest
/region flag doorway entry -g members</pre>
This would stop entry to everyone who is in the members field, guest in this case, group for the doorway. Everyone else would be allowed.
Then you'd add the permission node "group.guest" to the guest group in your permissions plugin's config.
"Guest" isn't a group - http://wiki.sk89q.com/wiki/WorldGuard/Regions/Flags#Group
Note:
<pre>/rg removemember chestroomdoor playername</pre>
==== Group inheritance ====
Important note about the below example:
<pre>/rg flag regionname entry deny
/rg addmember regionname g:groupname</pre>
These two commands should deny entry to groups not added as members or owners.
'''Keep in mind that if you use any inheritance system in your permissions (for example: builder inherits default permissions), any groups that inherit the same permissions as the allowed group will also be allowed entrance to the region.'''
Your best bet is to eliminate the inheritances and give each group their own group.groupname permission. This allows worldguard to see separate groups.
The same goes with the exit flag.
=== Flint & Steel doesn't work ===
If it returns the message:
'''You're not allowed to use that here'''
Do this in-game:
<pre>/region flag -w world __global__ lighter allow</pre>
Source: http://forums.bukkit.org/threads/i-need-help-with-allowing-flint-steel.152990/


=== Rename region ===
=== Rename region ===


You cannot do this without editing the database manually. If the area is not too big, just remove it and re-add it.
You cannot do this without editing the database manually. If the area is not too big, just remove it and re-add it.
If you do edit the entry in the id column of the region table of the worldguard (by default) database, just do /worldguard reload in-game after you have changed it.


=== Set flags ===
=== Set flags ===
Line 812: Line 905:
/rg flag areaname pvp deny
/rg flag areaname pvp deny
/rg flag areaname use allow</pre>
/rg flag areaname use allow</pre>
==== [http://dev.bukkit.org/bukkit-plugins/worldguard-block-restricter WorldGuard Block Restricter] ====
This requires [http://dev.bukkit.org/bukkit-plugins/worldguard-custom-flags WorldGuard Custom Flags] installing too.
To only allow a specific type of block you need to:
* set build allow in WorldGuard: /rg flag areaname build allow
* then deny all blocks via WorldGuard Block Restricter using /rg flag areaname deny-blocks any
* then allow the blocks you want via WorldGuard Block Restricter using /rg flag areaname allow-blocks dirt

Latest revision as of 15:33, 6 April 2020

Server host/IP: mc.bywatercraft.co.uk / 188.165.120.188
Website name: bywatercraft.co.uk -/> bywatercraft.com

Currently the Bywater Craft Minecraft server is running Spigot 1.8.8. We have now updated the plugins to be compatible with 1.8.7.

Load Minecraft:

/usr/bin/java -Djline.terminal=jline.UnsupportedTerminal -client -Xmx7132M -jar spigot.jar nogui -d yyyy-MM-dd HH:mm:ss -nojline

Load McMyAdmin:

tmux new-session -n minecraft
cd /home/user
./MCMA2_Linux_x86_64 | tee yourminecraft.log

If you want to connect from elsewhere to view the above output/console load the screen session:

ssh user@localhost -pXXXX
tmux ls
tmux attach 0

To kill the process on boot:

ps -ef | grep tmux | grep -v grep | awk '{print $2}' | xargs kill -9

Using CTRL + D will quit screen and close any processes running within it.
To exit safely do CTRL + B, let go, then press D on it's own.

When downloading a backup from McMyAdmin, it comes in the mcb format. Change it to .zip and you can then unzip it into a folder and restore to the server.

Allowing PvP

Personally, for WorldGuard's pvp flag to work we had to ensure:

  • Essentials plugin had pvp = true
  • McMyAdmin control panel had Configuration > Game Settings > Allow Player vs Player combat
  • server.properties file had pvp = true
  • WorldGuard had __global__ set to pvp deny
  • WorldGuard then could have specific regions set to pvp allow

Backpack

Reduce/downgrade Backpack space:

cd /Minecraft/plugins/Backpack/backpacks/world
ls -lah

Edit the value next to "contents-amount:" in the user's .yml file.

Bungeecord

http://www.spigotmc.org/wiki/bungeecord/
https://www.spigotmc.org/wiki/bungeecord-configuration-guide/
http://www.spigotmc.org/wiki/bungeecord-installation/#installing-bungeecord-on-linux

To end Bungeecord script, type end and hit enter.

How to use and install BungeeCord

Buycraft

Edit Store welcome page

Webstore > General settings > Homepage description

Chat

/tell PlayerName will whisper a message to a player. This option will not show in a console.

/msg PayerName will show it as YourPlayerName -> Me to the other Player but be private

Prefix and Suffix

Never use McMyAdmin's Prefix and Suffix boxes, as you likely will not be able to remove them after you have set them without removing the group and re-adding it.

Check server's TPS

Ticks Per Second

If you use Bukkit/Essentials, do /lag

ColorMe

If you add or remove a player to players.yml manually, keep a copy of the text you entered or of the file from which the text was removed. Sometimes when you do /color reload it will import an old version of the file from before the change you made. To resolve this:

  • make a copy of the text you added or the entire file not including the text you remove
  • run the following command:
:> players.yml
  • in config.yml set updateConfig: to true from the default of false
  • /color reload
  • now add or remove the text you did before, run the above command and it should work

Also, it may be worth keeping updateConfig: as true always

Colour and type

To use both colour and formatting/type such as bold, itallic, strikethrough and underline at the same time, use the colour first then the formatting:

amplified: '&6&oModerator&f'

or

/prefix me &6&oModerator

Command Block

Quick FAQ/Guide: http://hypixel.net/wiki/command-block/

Connection reset

[Metrics]

Set opt-out to true in plugins/PluginMetrics/config.yml

This by default is false.

In minecraft.log "[INFO] Connection reset"

touch reset.sh ; chmod +x reset.sh ; vim reset.sh

#!/bin/bash
netstat -pantu | grep -v LISTEN | grep 25565 >> reset.log
echo -e "\n-------------------------------------------------------------------------------------------"
date +%R
netstat -pantu | grep -v LISTEN | grep 25565

Then do the following in two separate SSH windows:

tail -f minecraft/install/directory/logs/minecraft.log
watch -n 1 ./reset.sh

Then match up the times, and block the IP address from the server list website that is causing the message:

iptables -A INPUT -s 50.116.54.77 -j DROP
iptables-save
iptables -L

Configuration

Lava

Allowing lava seems to be easiest by creating a group that can do it and then doing:

# Allow lava buckets
[lavabucket]
allow
ignore-groups=Everyone
on-use=notify,log

The below method seems to fail

ignore-perms=worldguard.lavabucket.exempt
ignore-groups=admins,mods,Lava
on-use=deny,tell,notify,log

Current errors

[WARNING] Can't keep up! Did the system time change, or is the server overloaded?

May be due to TPS, /lag

Current issues

None.

DynMap

To remove a map from rendering on the Dynamic Map web page, do this:

/dynmap pause all
/map mapdelete _worldname_:_mapname_

Or remove the folder from /home/user/Minecraft/plugins/dynmap/web/tiles/worldname

Configuring Maps and Worlds using dmap
Component Configuration
FAQ

Render all:

/dynmap fullrender

Please be warned if you run a full render with the template set as the highest one for HD, hi_boost_xhi, then on a server with 8GB of RAM it will cause ~45-65% RAM usage.

Pause render:

/dynmap pause all

Start render:

/dynmap pause none

Disable world render:

/dmap worldset WorldName enabled:false

Hide a player:

/dynmap hide PlayerName

Show a player:

/dynmap show PlayerName

https://github.com/webbukkit/dynmap/wiki/Web-UI-Parameters

http://bywatercraft.co.uk:8123/?worldname=world&mapname=surface

The Dynmap WorldGuard plugin that shows the WorldGuard region areas on the Dynamic Map shows a green border when there is no owner as it is not claimed.

This will stop a render in progress and purge the tiles.

/dynmap purgeworld Le_Monde

Enjin

  • domain.co.uk//admin/games/minecraft-plugin/gid/6207-0
  • Click Vault
  • If using Unix download the Vault.jar by doing wget http://dev.bukkit.org/media/files/655/849/Vault.jar
  • Download the Enjin plugin
  • Upload it via FTP to your server and it's Minecraft plugins directory
  • Click Add Server
  • Note down the enjinkey

--

If your site expires you will need to set the Custom Domain Name again.

Go to http://site5659999cd2a04.enjin.com/dashboard/website/dns?site_id=722890

Essentials

Fixed errors

Failed to start the minecraft server

Loading libraries, please wait...
Failed to start the minecraft server
java.lang.NullPointerException
at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213)

Move your usercache.json file to another folder and try start/restart the server again

FirstJoinPlus

Could not pass event FirstJoinEvent to FirstJoinPlus v1.8.2

Set your first join point again using /firstjoinplus setspawn

Setting debug to true will treat every join as if it was a first join, so don't keep it on permanently!

Modifyworld pass event

[SEVERE] Could not pass event InventoryClickEvent to Modifyworld v1.19.4 org.bukkit.event.EventException

Fix: Disable the Modifyworld plugin and allow people to edit the world via the essentials.build permission.

Notes: http://www.minecraftforum.net/topic/1763125-severe-could-not-pass-event-inventoryclickevent-to-modifyworld-v1194
https://github.com/PEXPlugins/PermissionsEx/wiki/Modifyworld#wiki-mw-configuration

NoSplosion will cause Endermen to NOT spawn

Disables all explosions vanilla or mods (Tekkit etc...) and fire from destroying blocks as well as Endermen from spawning. All explosions and fire still damage players but do not damage the environment.

Your configuration might be outdated!

The best thing to do is just do:

mv config.yml old.config.yml

Then reload the server configuration or NCP plugin itself:

/reload
/ncp reload

Then check if the config is different:

diff config.yml old.config.yml

Give items

http://www.minecraftinfo.com/IDList.htm

/give [playername] [data-value] [amount]

http://www.minecraftwiki.net/wiki/Data_values

Install Feed The Beast on a Unix server

Add a user and make a directory specifically for the mod, e.g.:

add user ftb
mkdir server
cd /home/ftb/server
su ftb

Then do:

tmux new-session -n NameTheSession
su user
cd ~/server
wget http://www.creeperrepo.net/direct/FTB2/6ce418a51b200ece8cb3c509ba9e094a/modpacks%5EUltimate%5E1_0_1%5EUltimate_Server.zip
mv modpacks^Ultimate^1_0_1^Ultimate_Server.zip Ultimate_Server.zip
unzip Ultimate_Server.zip
vim ServerStart.sh

Edit the values as you see fit.

chmod +x ServerStart.sh
./ServerStart.sh | tee ftb.log

It will error out if you're already running a Minecraft server on the default port 25565. If it does, do CTRL + C. To change this,

vim server.properties

Set the server-port to something that is not 25565. Then make sure the user:group ownership is correct on the server folder and all files and directories below it.

./ServerStart.sh | tee ftb.log

CTRL + B then d to quit the tmux session.

Errors

If you get something like below, you likely need to disable some mods (for me it was mods/railcraft.jar and mods/MineFactoryReloaded.jar):

[SEVERE] [ForgeModLoader] Detected leaking worlds in memory. There are 4 worlds that appear to be persisting.
A mod is likely caching the world incorrectly
2013-04-23 15:54:59 [SEVERE] [ForgeModLoader] The world 7debb392 (world) has leaked.
2013-04-23 15:54:59 [SEVERE] [ForgeModLoader] The world 3e6abeb4 (world) has leaked.

Install Votifier

Install the plugin as normal by placing the .jar file in your plugins folder: http://dev.bukkit.org/server-mods/votifier

Then reload the server and do:

cat plugins/Votifier/rsa/public.key

Copy the code into the area of the server listing website you are using.

SimpleVoteListener

SimpleVoteListener can perform commands and broadcast messages

Load MCMyAdmin and Minecraft on server start

ssh -p port user@localhost
crontab -e

Press insert and add:

@reboot screen -dmS minecraft /home/mc/MCMA2_Linux_x86_64

Then do:

:wq

You can then if you wish do:

exit
touch /etc/init.d/minecraftd ; chown user:user /etc/init.d/minecraftd
vim /etc/init.d/minecraftd

Lock chests

Use LWC or Lockette.

To reload LWC, do /lwc admin reload

To snoop in a chest with Lockette and to do this without a broadcast message, edit this file:

/home/user/Minecraft/plugins/Lockette/config.yml

And edit the following:

allow-admin-snoop: true
broadcast-snoop-target: ''

Kill all MCMA processes

ps aux|grep MC|grep x86|awk {'print $2'}

Results of the above command.

for a in `!!`
for a in `ps aux|grep MC|grep x86|awk {'print $2'}`
> do
> kill -9 $a
> done
ps aux|grep MC|grep x86|awk {'print $2'}

McMyAdmin

Migrate from one *nix server to another

scp / rsync the data in the Minecraft directory across. Then do:

apt-get install unzip
apt-get install openjdk-7-jre openjdk-7-jdk
cd /usr/local
wget http://mcmyadmin.com/Downloads/etc.zip
unzip etc.zip

Go to serverIPaddress:8080 in your browser. To login, check the details in McMyAdmin.conf. To change the password you need to stop McMyAdmin:

/quit in console

The file stores the password as MD5, to convert your password use this: http://www.md5hashgenerator.com/index.php

Mob Spawning Ranges

Multiverse

This page has been moved to the above link as our server does not used Multiverse any more, it used Multiworld.

Multiworld

NCore

Plugin list: http://www.ribesg.fr/

NEnchantingEgg

Documentation

nTheEndAgain

Documentation

Shortcut instead of /ntheendagain -> /nend

Check amount of dragons

/ntheendagain nb world_the_end

Regen the world

/ntheendagain regen world_the_end
/ntheendagain respawn world_the_end

Respawn the dragon

/ntheendagain respawnEnderDragon world_the_end

Redstone

Powering a column of pistons

Reload command

http://www.minecraftforum.net/topic/1506590-warning-cant-keep-up-did-the-system-time-change-or-is-the-server-overloaded

v

http://forums.bukkit.org/threads/petition-to-remove-the-reload-command.43212

Remote Toolkit

Colour code errors in console/log such as:

[12:21:32 INFO]: CONSOLE: Forcing save..←[m
[12:21:32 INFO]: CONSOLE: Save complete.←[m
←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1
G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K←[1G←[K[12:21
:32 INFO]: ←[0;35;1m[Server←[0;35;1m] Save is complete.←[m

This is due to the MinecraftRKitPlugin.jar file in your plugins folder. This is as of Release 10, Alpha 15.3 of the toolkit wrapper and happens on both Windows (example) and Unix (my own) (example 2).

Restart required

If you use PermissionsBukkit with McMyAdmin, if you make a change you normally need to restart the Minecraft server to get it to see the changes.

A huge advantage of setting the Permissions Export to PermissionsEx is when a permission is added to McMyAdmin it automatically reloads the configuration, this is shown in the console by:

[INFO] Permissions file successfully reloaded
[INFO] Permissions reloaded

If you op or de-op a player from ops.txt and the Administrators group in McMyAdmin.

To set negative permissions in PermissionsEx, use - -permission before the other permissions.

Restore backup from McMyAdmin

mkdir BACKUPOFWORLDShhmm
cp -v world world_nether world_the_end BACKUPOFWORLDShhmm/ -R
mkdir movedawayworlds
mv world world_nether world_the_end movedawayworlds

Then restore the backup via the McMyAdmin control panel.

Security

To check when a player was last online, their IP address, what world they are in, do:

/seen playername

Useful:

screen -xr mcmonitor
CTRL A + D
screen -xr mysqlmcmon

cd /home/mc/Minecraft
cat server.log | grep "YYYY-MM-DD" | grep User | grep -v indestructible
cat server.log | grep User | grep -v 'indestructible\|fell from a high place'

Hawkeye

Usage

Log everything:

Install Hawkeye by doing this manually or through a server control panel. In Unix, do:

/home/user/Minecraft/plugins/HawkEye# cat config.yml

log:
  lava-bucket: true
  pvp-death: true
  other-death: true
  chat: true
  join: true
  open-container: true
  container-transaction: true
  teleport: true
  sign-place: true
  sign-break: true
  flint-steel: true
  block-place: true
  block-break: true
  enderman-pickup: true
  spawnmob-egg: true
  crop-trample: true
general:
  max-lines: 0
  log-item-drops-on-death: true
  cleanse-period: 20m
  cleanse-age: 0
  delete-data-on-rollback: true
  log-ip-addresses: true
  debug: false
  debug-level: low
  max-radius: 0
  give-user-tool: true
  tool-block: '17'
  default-here-radius: 5
  default-tool-command: ''
  check-for-updates: true
  log-delay: 2
mysql:
  hawkeye-table: hawkeye
  port: 3306
  player-table: hawk_players
  username: root
  world-table: hawk_worlds
  hostname: localhost
  max-connections: 10
  password: 'InsertMySQLPasswordHere'
  database: hawkminecraft #you can rename this if you wish
ignore-worlds:
- thisworldisignored
- soisthisone
command-filter:
- /login
- /restartsrv
- /register
- /spawn
block-filter:
- NONE
containertransaction-filter:
  chest: true
  doublechest: true
  furnace: true
  dispenser: true
version: 1.1.0

Create the database:

mysql -p
create database hawkeye;
show databases;
use hawkeye
show tables;

This may be empty. If so (more than likely), log into your minecraft server and do /reload. Then go back into MySQL:

use hawkeye
show tables;
+-------------------------+
| Tables_in_hawkeye       |
+-------------------------+
| hawk_players            |
| hawk_worlds             |
| hawkeye                 |
+-------------------------+
select * from hawk_players;
select * from hawk_worlds;
select * from hawkeye;
quit

And you can now do /hawk in game. To check a block, do /hawk tool , then left click a block and it will show you the block information.

Get table structure and players

desc hawkeye; select * from hawk_players;

Look at logs

Via a web interface: http://dev.bukkit.org/bukkit-plugins/hawkeye-reload/pages/web-interface-setup/

If you do a search and get this error message you need to re-download the interface:

Error! Unknown column 'date' in 'where clause'

Via SQL:

select * from hawkeye ORDER BY data_id DESC LIMIT 100000;

See region information

/region info area

It should output something like:

Region: area, type: shape, Priority: X
Flags: use: ALLOW, mob-spawning: DENY (OR ALLOW)
Bound: (x) (z)

server.properties file

Set flyspeed

Default is 1

For yourself:

/flyspeeed 2

For others:

/flyspeed 2 playername

Setting spawn

On Bywater Craft where we have multiple spawn plugins, to set spawn you need to do:

/mw setspawn
/setspawn

Set warps

/setwarp NewWarpName

Go to warps:

/warp WarpName

List warps:

/warp

If you have per-warp-permission set to true in the config.yml then you can limit what warps players can use. This also controls what players would see with /warp, hence why both essentials.warp and essentials.warp.list are used.

Set world for SkyGridMP

vim SkyGrid.jar/config.yml

Edit this line:

world: WorldName

Spigot patching 09/09/14 - 28/11/14 (old)

This was changed as of November 28th 2014: http://www.spigotmc.org/threads/bukkit-craftbukkit-spigot-1-8.36598/

Please now use http://www.spigotmc.org/threads/buildtools-updates-information.42865/ for Minecraft 1.8+

cd ~/spigotwork
java -jar ~/spigotwork/SpigotPatcher-1.0.jar ~/spigotwork/spigot1649.jar ~/spigotwork/spigot-YYYYMMDDa.bps ~/spigotwork/spigot-patched.jar ; mv spigot-patched.jar spigot.jar ; chown user:user spigot.jar
rm ../Minecraft/spigot.jar
mv spigot.jar ../Minecraft/

Inside the spigotwork folder:

java -jar SpigotPatcher-1.0.jar spigot1649.jar spigot-YYYYMMDD.bps spigot-patched.jar ; mv spigot-patched.jar spigot.jar ; chown user:user spigot.jar

Spigot patching - new

Inside your spigotwork folder:

mkdir 1.XX-XBuildTools
rm BuildTools.jar
wget "https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar" -O BuildTools.jar
java -jar BuildTools.jar

If needed run this first outside of McMyAdmin:

exec java -jar spigot.jar --forceUpgrade nogui | tee test.log

Synchronise Nether Portals

Tools

ASCII SSH Bukkit Menu (via screen)
Init script

tmux

Using it

http://unix.stackexchange.com/questions/13953/sending-text-input-to-a-detached-screen/13954#13954

Update CraftBukkit

Stop the server, then do:

mv craftbukkit.jar versioncraftbukkit.jar
wget http://dl.bukkit.org/latest-rb/craftbukkit.jar

Or download the development/beta build and do:

mv craftbukkit-dev.jar craftbukkit.jar

Start the server

Log out and back into MCMyAdmin.

World Edit

Place .schematic files in /home/user/Minecraft/plugins/WorldEdit/schematics

Import them by doing:

//schematic load filename

Then you can do //paste in Minecraft to paste it into the world where you are.

Fill an area

//wand

Select position 1 and 2. Then do:

//set block

Unbind a tool/block

If for example you accidentally do //fill block (e.g. sand), and each time you right click with a tool/block or your hand, clear it by doing:

/none

World Guard

http://wiki.sk89q.com/wiki/WorldEdit/Selection

https://bukkit.org/threads/worldguard-not-expanding-regions.20974/

To protect an area, do:

//wand

Then click the first position then the second position with the wooden axe.

If you only do one layer, you can do //expand to go up or down, e.g.:

//expand UpValue DownValue up
//expand 10 0 up

This would expand up 10 blocks from the single layer but do 0 down.

Then do:

/region define newnameforarea owner

Owner can be left blank.

To get information on the area you just created, do:

/region info newnameforarea

Allow fire spread/tick

In config.yml:

Set high-frequency-flags to true
Set disable-all-fire-spread to false

/rg flag __global__ fire-spread allow
/rg flag __global__ lava-fire allow

If this still doesn't work, if you have Essentials then set these in config.yml:

fire-spread: true
lava-fire-spread: true
flint-fire: true

Edit world regions from outside (and inside) that world

/rg flag -w ExactWorldName RegionName FlagName allow

If you want to use the blocked-cmds flag and want to block multiple commands separate them by commas:

/rg flag -w world MyHome blocked-cmds /tp,/warp

Entry flag for groups

Due to inheritance

/rg flag chestroomdoor entry deny
/rg flag chestroomdoor entry -g nonmembers
/rg addmember chestroomdoor g:citizen

This gets round inheritance by denying all except members from a certain group up the inheritance tree.

Let's say you have:

Region name: doorway
Group name: vip
Flag: entry deny

/region define doorway
/region flag doorway entry deny
/region addmember doorway g:vip
/region flag doorway entry -g nonmembers

This would stop entry to everyone who is not in the vip group for the doorway.

Region name: doorway
Group name: guest
Flag: entry deny

/region define doorway
/region flag doorway entry deny
/region addmember doorway g:guest
/region flag doorway entry -g members

This would stop entry to everyone who is in the members field, guest in this case, group for the doorway. Everyone else would be allowed.

Then you'd add the permission node "group.guest" to the guest group in your permissions plugin's config.

"Guest" isn't a group - http://wiki.sk89q.com/wiki/WorldGuard/Regions/Flags#Group

Note:

/rg removemember chestroomdoor playername

Group inheritance

Important note about the below example:

/rg flag regionname entry deny
/rg addmember regionname g:groupname

These two commands should deny entry to groups not added as members or owners.

Keep in mind that if you use any inheritance system in your permissions (for example: builder inherits default permissions), any groups that inherit the same permissions as the allowed group will also be allowed entrance to the region.

Your best bet is to eliminate the inheritances and give each group their own group.groupname permission. This allows worldguard to see separate groups.

The same goes with the exit flag.

Flint & Steel doesn't work

If it returns the message:

You're not allowed to use that here

Do this in-game:

/region flag -w world __global__ lighter allow

Source: http://forums.bukkit.org/threads/i-need-help-with-allowing-flint-steel.152990/

Rename region

You cannot do this without editing the database manually. If the area is not too big, just remove it and re-add it.

If you do edit the entry in the id column of the region table of the worldguard (by default) database, just do /worldguard reload in-game after you have changed it.

Set flags

To set flags, see this page: http://wiki.sk89q.com/wiki/WorldGuard/Regions/Flags

To stop building and PvP but to allow use, you would do:

/rg flag areaname build deny
/rg flag areaname pvp deny
/rg flag areaname use allow

WorldGuard Block Restricter

This requires WorldGuard Custom Flags installing too.

To only allow a specific type of block you need to:

  • set build allow in WorldGuard: /rg flag areaname build allow
  • then deny all blocks via WorldGuard Block Restricter using /rg flag areaname deny-blocks any
  • then allow the blocks you want via WorldGuard Block Restricter using /rg flag areaname allow-blocks dirt