From 57a6b3545781fa65b211de816434af4d942396bb Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 31 Oct 2014 17:47:05 +0000 Subject: [PATCH 1/8] Added the ForceIP feature - Resolves #224 --- buildnumber.properties | 6 +++--- src/config.yml | 18 ++++++++++++++++++ .../Config/TFM_ConfigEntry.java | 5 +++++ .../Listener/TFM_PlayerListener.java | 9 +++++++++ 4 files changed, 35 insertions(+), 3 deletions(-) diff --git a/buildnumber.properties b/buildnumber.properties index ff32cd2b..1b844cc0 100644 --- a/buildnumber.properties +++ b/buildnumber.properties @@ -1,3 +1,3 @@ -#Build Number for ANT. Do not edit! -#Sat Aug 30 16:14:15 CEST 2014 -build.number=949 +#Build Number for ANT. Do not edit! +#Fri Oct 31 17:39:33 GMT 2014 +build.number=959 diff --git a/src/config.yml b/src/config.yml index a0e1ef40..d0e9feb0 100644 --- a/src/config.yml +++ b/src/config.yml @@ -1,6 +1,8 @@ # TotalFreedomMod v4.3 Configuration # by Madgeek1450 and DarthSalamon + + # Generic server information server: # You should change this to your server's name @@ -24,6 +26,22 @@ server: # URL players should appeal for permanent bans at permban_url: http://bit.ly/TF_PermBan + + # Your Servers Host Name - Used for ForceIP + hostname: play.totalfreedom.me + + # Server Port - Used for ForceIP + port: 25565 + +# ForceIP Configuration +forceip: + + # Please state if you wish to enable the ForceIP system. + enabled: true + + # Please enter the kick message you wish for people to see if they are not connecting on the servers hostname + kickmsg: You have been kicked from the server - Please connect using play.totalfreedom.me + # Blocking certain events allow: diff --git a/src/me/StevenLawson/TotalFreedomMod/Config/TFM_ConfigEntry.java b/src/me/StevenLawson/TotalFreedomMod/Config/TFM_ConfigEntry.java index d8dede36..0289e856 100644 --- a/src/me/StevenLawson/TotalFreedomMod/Config/TFM_ConfigEntry.java +++ b/src/me/StevenLawson/TotalFreedomMod/Config/TFM_ConfigEntry.java @@ -4,6 +4,9 @@ import java.util.List; public enum TFM_ConfigEntry { + FORCE_IP_ENABLED(Boolean.class, "forceip.enabled"), + FORCE_IP_KICKMSG(String.class, "forceip.kickmsg"), + // ALLOW_EXPLOSIONS(Boolean.class, "allow.explosions"), ALLOW_FIRE_PLACE(Boolean.class, "allow.fire_place"), ALLOW_FIRE_SPREAD(Boolean.class, "allow.fire_spread"), @@ -31,6 +34,8 @@ public enum TFM_ConfigEntry SERVER_OWNERS(List.class, "server.owners"), SERVER_BAN_URL(String.class, "server.ban_url"), SERVER_PERMBAN_URL(String.class, "server.permban_url"), + SERVER_HOSTNAME(String.class, "server.hostname"), + SERVER_PORT(Integer.class, "server.port"), // TWITTERBOT_ENABLED(Boolean.class, "twitterbot.enabled"), TWITTERBOT_SECRET(String.class, "twitterbot.secret"), diff --git a/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java b/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java index a19e7023..24be8f4d 100644 --- a/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java +++ b/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java @@ -766,6 +766,7 @@ public class TFM_PlayerListener implements Listener @EventHandler(priority = EventPriority.MONITOR) public void onPlayerJoin(PlayerJoinEvent event) { + final Player player = event.getPlayer(); final String ip = TFM_Util.getIp(player); final TFM_Player playerEntry; @@ -853,6 +854,14 @@ public class TFM_PlayerListener implements Listener public void onPlayerLogin(PlayerLoginEvent event) { TFM_ServerInterface.handlePlayerLogin(event); + + // Force IP Setup + if(TFM_ConfigEntry.FORCE_IP_ENABLED.getBoolean()){ + if(!event.getHostname().equalsIgnoreCase(TFM_ConfigEntry.SERVER_HOSTNAME.getString() + ":" + TFM_ConfigEntry.SERVER_PORT.getInteger())){ + event.disallow(PlayerLoginEvent.Result.KICK_OTHER, TFM_ConfigEntry.FORCE_IP_KICKMSG.getString()); + } + } + } // Player Tab and auto Tags From 1bc22a817aec06e438546f28a7ca520c0ae4351f Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 31 Oct 2014 17:52:57 +0000 Subject: [PATCH 2/8] Removed the whitespace. --- src/config.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/config.yml b/src/config.yml index d0e9feb0..2e80693f 100644 --- a/src/config.yml +++ b/src/config.yml @@ -1,8 +1,6 @@ # TotalFreedomMod v4.3 Configuration # by Madgeek1450 and DarthSalamon - - # Generic server information server: # You should change this to your server's name From 7981adaf85a1d9ba2e87013fd0c02d685ffcd907 Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 31 Oct 2014 17:57:44 +0000 Subject: [PATCH 3/8] Fixed Formatting Issues - Forgot it was allman style there. --- .../TotalFreedomMod/Listener/TFM_PlayerListener.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java b/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java index 24be8f4d..36ff194c 100644 --- a/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java +++ b/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java @@ -856,9 +856,11 @@ public class TFM_PlayerListener implements Listener TFM_ServerInterface.handlePlayerLogin(event); // Force IP Setup - if(TFM_ConfigEntry.FORCE_IP_ENABLED.getBoolean()){ - if(!event.getHostname().equalsIgnoreCase(TFM_ConfigEntry.SERVER_HOSTNAME.getString() + ":" + TFM_ConfigEntry.SERVER_PORT.getInteger())){ - event.disallow(PlayerLoginEvent.Result.KICK_OTHER, TFM_ConfigEntry.FORCE_IP_KICKMSG.getString()); + if(TFM_ConfigEntry.FORCE_IP_ENABLED.getBoolean()) + { + if(!event.getHostname().equalsIgnoreCase(TFM_ConfigEntry.SERVER_HOSTNAME.getString() + ":" + TFM_ConfigEntry.SERVER_PORT.getInteger())) + { + event.disallow(PlayerLoginEvent.Result.KICK_OTHER, TFM_ConfigEntry.FORCE_IP_KICKMSG.getString()); } } From b43ef812a2d03680b8cbae9154f844161d61d681 Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 31 Oct 2014 18:05:25 +0000 Subject: [PATCH 4/8] Fixed another slight formatting issue. --- .../TotalFreedomMod/Listener/TFM_PlayerListener.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java b/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java index 36ff194c..d1ddf24a 100644 --- a/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java +++ b/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java @@ -860,10 +860,9 @@ public class TFM_PlayerListener implements Listener { if(!event.getHostname().equalsIgnoreCase(TFM_ConfigEntry.SERVER_HOSTNAME.getString() + ":" + TFM_ConfigEntry.SERVER_PORT.getInteger())) { - event.disallow(PlayerLoginEvent.Result.KICK_OTHER, TFM_ConfigEntry.FORCE_IP_KICKMSG.getString()); + event.disallow(PlayerLoginEvent.Result.KICK_OTHER, TFM_ConfigEntry.FORCE_IP_KICKMSG.getString()); } - } - + } } // Player Tab and auto Tags From 2a71be40504389c81a7a29203da9f27bca04f2c0 Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 31 Oct 2014 18:10:06 +0000 Subject: [PATCH 5/8] Tweaked the config notes for Hostname & Port to make it a bit more descriptive --- src/config.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/config.yml b/src/config.yml index 2e80693f..d5152512 100644 --- a/src/config.yml +++ b/src/config.yml @@ -25,10 +25,10 @@ server: # URL players should appeal for permanent bans at permban_url: http://bit.ly/TF_PermBan - # Your Servers Host Name - Used for ForceIP + # Your Servers Host Name - This can be your servers's IP or your servers DNS Record. Please ensure its what you want players to use to connect using. hostname: play.totalfreedom.me - # Server Port - Used for ForceIP + # Server Port - If your using a domain SRV record (eg play.totalfreedom.me) this MUST be 25565 else use the port you need to type at the end of the address. port: 25565 # ForceIP Configuration From 99043a7c4976ac356c68b2276e69abbace094dc3 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 1 Nov 2014 12:10:08 +0000 Subject: [PATCH 6/8] Removed Hostname and Port from the config - Now using the server address. --- buildnumber.properties | 4 ++-- src/config.yml | 8 +------- .../TotalFreedomMod/Config/TFM_ConfigEntry.java | 2 -- .../TotalFreedomMod/Listener/TFM_PlayerListener.java | 2 +- 4 files changed, 4 insertions(+), 12 deletions(-) diff --git a/buildnumber.properties b/buildnumber.properties index 1b844cc0..3d3c6162 100644 --- a/buildnumber.properties +++ b/buildnumber.properties @@ -1,3 +1,3 @@ #Build Number for ANT. Do not edit! -#Fri Oct 31 17:39:33 GMT 2014 -build.number=959 +#Sat Nov 01 12:07:03 GMT 2014 +build.number=960 diff --git a/src/config.yml b/src/config.yml index d5152512..08f26aef 100644 --- a/src/config.yml +++ b/src/config.yml @@ -6,7 +6,7 @@ server: # You should change this to your server's name name: TotalFreedom - # The address your server is located at + # The address your server is located at - Please Note: The port MUST be included, even if it is default port (DNS Records included) address: 64.34.165.5:28965 # Shown at the server list @@ -25,12 +25,6 @@ server: # URL players should appeal for permanent bans at permban_url: http://bit.ly/TF_PermBan - # Your Servers Host Name - This can be your servers's IP or your servers DNS Record. Please ensure its what you want players to use to connect using. - hostname: play.totalfreedom.me - - # Server Port - If your using a domain SRV record (eg play.totalfreedom.me) this MUST be 25565 else use the port you need to type at the end of the address. - port: 25565 - # ForceIP Configuration forceip: diff --git a/src/me/StevenLawson/TotalFreedomMod/Config/TFM_ConfigEntry.java b/src/me/StevenLawson/TotalFreedomMod/Config/TFM_ConfigEntry.java index 0289e856..7a69ee62 100644 --- a/src/me/StevenLawson/TotalFreedomMod/Config/TFM_ConfigEntry.java +++ b/src/me/StevenLawson/TotalFreedomMod/Config/TFM_ConfigEntry.java @@ -34,8 +34,6 @@ public enum TFM_ConfigEntry SERVER_OWNERS(List.class, "server.owners"), SERVER_BAN_URL(String.class, "server.ban_url"), SERVER_PERMBAN_URL(String.class, "server.permban_url"), - SERVER_HOSTNAME(String.class, "server.hostname"), - SERVER_PORT(Integer.class, "server.port"), // TWITTERBOT_ENABLED(Boolean.class, "twitterbot.enabled"), TWITTERBOT_SECRET(String.class, "twitterbot.secret"), diff --git a/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java b/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java index d1ddf24a..2dba07cd 100644 --- a/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java +++ b/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java @@ -858,7 +858,7 @@ public class TFM_PlayerListener implements Listener // Force IP Setup if(TFM_ConfigEntry.FORCE_IP_ENABLED.getBoolean()) { - if(!event.getHostname().equalsIgnoreCase(TFM_ConfigEntry.SERVER_HOSTNAME.getString() + ":" + TFM_ConfigEntry.SERVER_PORT.getInteger())) + if(!event.getHostname().equalsIgnoreCase(TFM_ConfigEntry.SERVER_ADDRESS.getString())) { event.disallow(PlayerLoginEvent.Result.KICK_OTHER, TFM_ConfigEntry.FORCE_IP_KICKMSG.getString()); } From 8a92ff132b525fd842832b1bee7d0485c3164c32 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 1 Nov 2014 15:36:24 +0000 Subject: [PATCH 7/8] Changed the default config entry for the server address & added a little tweak. --- buildnumber.properties | 4 ++-- src/config.yml | 4 ++-- .../TotalFreedomMod/Listener/TFM_PlayerListener.java | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/buildnumber.properties b/buildnumber.properties index 3d3c6162..23a75c6c 100644 --- a/buildnumber.properties +++ b/buildnumber.properties @@ -1,3 +1,3 @@ #Build Number for ANT. Do not edit! -#Sat Nov 01 12:07:03 GMT 2014 -build.number=960 +#Sat Nov 01 15:34:44 GMT 2014 +build.number=961 diff --git a/src/config.yml b/src/config.yml index 08f26aef..e1f61c82 100644 --- a/src/config.yml +++ b/src/config.yml @@ -7,7 +7,7 @@ server: name: TotalFreedom # The address your server is located at - Please Note: The port MUST be included, even if it is default port (DNS Records included) - address: 64.34.165.5:28965 + address: play.totalfreedom.me:25565 # Shown at the server list motd: TotalFreedom &8- Minecraft %mcversion% @@ -32,7 +32,7 @@ forceip: enabled: true # Please enter the kick message you wish for people to see if they are not connecting on the servers hostname - kickmsg: You have been kicked from the server - Please connect using play.totalfreedom.me + kickmsg: You have been kicked from the server - Please connect using %address% # Blocking certain events diff --git a/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java b/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java index 2dba07cd..ddc772e5 100644 --- a/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java +++ b/src/me/StevenLawson/TotalFreedomMod/Listener/TFM_PlayerListener.java @@ -860,7 +860,7 @@ public class TFM_PlayerListener implements Listener { if(!event.getHostname().equalsIgnoreCase(TFM_ConfigEntry.SERVER_ADDRESS.getString())) { - event.disallow(PlayerLoginEvent.Result.KICK_OTHER, TFM_ConfigEntry.FORCE_IP_KICKMSG.getString()); + event.disallow(PlayerLoginEvent.Result.KICK_OTHER, TFM_ConfigEntry.FORCE_IP_KICKMSG.getString().replace("%address%", TFM_ConfigEntry.SERVER_ADDRESS.getString())); } } } From fcf52ba02ada6bf4135e52b88c0f943a227a9f3c Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 1 Nov 2014 17:44:07 +0000 Subject: [PATCH 8/8] Managed to tweak the port requirement, isnt actually needed like I thought. --- src/config.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/config.yml b/src/config.yml index e1f61c82..9a658d25 100644 --- a/src/config.yml +++ b/src/config.yml @@ -6,8 +6,8 @@ server: # You should change this to your server's name name: TotalFreedom - # The address your server is located at - Please Note: The port MUST be included, even if it is default port (DNS Records included) - address: play.totalfreedom.me:25565 + # The address your server is located at - Please include the port if required. + address: play.totalfreedom.me # Shown at the server list motd: TotalFreedom &8- Minecraft %mcversion%