From 88c9605e940b0c5d1e548f7e57cb869ee429f221 Mon Sep 17 00:00:00 2001 From: BuildTools Date: Wed, 2 Sep 2015 23:01:01 -0400 Subject: [PATCH 1/9] Added a new PM regex Added [someone @ me] message so that remote control could be used on more servers. Added back Hero Chat Messages with a default config option of; herochatmessagesenabled=false which safely disables it for everyone and has to be explicitly enabled for it to goof anything up. How this happened was me downloading the "source" from minecraft forums and modifying that source then trying to merge it back to the main github fork of mine. --- .vs/MinecraftClient/v14/.suo | Bin 0 -> 3584 bytes MinecraftClient/ChatBot.cs | 22 ++++++++++++++++++++++ MinecraftClient/Settings.cs | 3 +++ 3 files changed, 25 insertions(+) create mode 100644 .vs/MinecraftClient/v14/.suo diff --git a/.vs/MinecraftClient/v14/.suo b/.vs/MinecraftClient/v14/.suo new file mode 100644 index 0000000000000000000000000000000000000000..9b02a86378d3ff782804856f32fdca328b07c6a2 GIT binary patch literal 3584 zcmca`Uhu)fjZzO8(10BSGsD0CoD6J8;*3Bx6O1pwz`z1zgT(&*|NkE(%nZap<|r6K zA@CRIR#5znf{_^lK@9moSi+#d;L4B(q>C6TL0Oq-AjZIolIMxh2rDm$QA>;(etC4yf%0YR`em9P)QxOY4A9;TaLMfibV&)&y~#i~86-q%&q+PEFx@fDg_$jR mA~1=gl-Hne0Ev+cUdWqU*~urSWXP>Q!M3qChg@?8N*@4)1zMs2 literal 0 HcmV?d00001 diff --git a/MinecraftClient/ChatBot.cs b/MinecraftClient/ChatBot.cs index 4c0a5c09..27459bf9 100644 --- a/MinecraftClient/ChatBot.cs +++ b/MinecraftClient/ChatBot.cs @@ -197,6 +197,17 @@ namespace MinecraftClient return IsValidName(sender); } + //Detect Modified server messages. /m + //[Someone @ me] message + else if (text[0] == '[' && tmp.Length > 3 && tmp[1] == "@" + && (tmp[2] == "me]" || tmp[2] == "moi]")) //'me' is replaced by 'moi' in french servers + { + message = text.Substring(tmp[0].Length + 4 + tmp[2].Length + 0); + sender = tmp[0].Substring(1); + if (sender[0] == '~') { sender = sender.Substring(1); } + return IsValidName(sender); + } + //Detect Essentials (Bukkit) /me messages with some custom prefix //[Prefix] [Someone -> me] message //[Prefix] [~Someone -> me] message @@ -231,6 +242,17 @@ namespace MinecraftClient return IsValidName(sender); } + //Detect HeroChat Messages + //[Channel] [Rank] User: Message + else if (text.StartsWith("[") && text.Contains(':') && tmp.Length > 2 && Settings.Hero_Chat_Messages_Enabled.Equals(true)) + { + int name_end = text.IndexOf(':'); + int name_start = text.Substring(0, name_end).LastIndexOf(']') + 2; + sender = text.Substring(name_start, name_end - name_start); + message = text.Substring(name_end + 2); + return IsValidName(sender); + } + else return false; } catch (IndexOutOfRangeException) { return false; } diff --git a/MinecraftClient/Settings.cs b/MinecraftClient/Settings.cs index 40a51cb1..d09a5912 100644 --- a/MinecraftClient/Settings.cs +++ b/MinecraftClient/Settings.cs @@ -89,6 +89,7 @@ namespace MinecraftClient public static bool RemoteCtrl_Enabled = false; public static bool RemoteCtrl_AutoTpaccept = true; public static bool RemoteCtrl_AutoTpaccept_Everyone = false; + public static bool Hero_Chat_Messages_Enabled = false; //Auto Respond public static bool AutoRespond_Enabled = false; @@ -282,6 +283,7 @@ namespace MinecraftClient case "enabled": RemoteCtrl_Enabled = str2bool(argValue); break; case "autotpaccept": RemoteCtrl_AutoTpaccept = str2bool(argValue); break; case "tpaccepteveryone": RemoteCtrl_AutoTpaccept_Everyone = str2bool(argValue); break; + case "herochatmessagesenabled": Hero_Chat_Messages_Enabled = str2bool(argValue); break; } break; @@ -422,6 +424,7 @@ namespace MinecraftClient + "enabled=false\r\n" + "autotpaccept=true\r\n" + "tpaccepteveryone=false\r\n" + + "herochatmessagesenabled=false\r\n" + "\r\n" + "[AutoRespond]\r\n" + "enabled=false\r\n" From 450cb4c6b98754bc6d1cf62a778c631dcce195d3 Mon Sep 17 00:00:00 2001 From: BuildTools Date: Wed, 2 Sep 2015 23:01:30 -0400 Subject: [PATCH 2/9] Revert "Added a new PM regex" This reverts commit 88c9605e940b0c5d1e548f7e57cb869ee429f221. --- .vs/MinecraftClient/v14/.suo | Bin 3584 -> 0 bytes MinecraftClient/ChatBot.cs | 22 ---------------------- MinecraftClient/Settings.cs | 3 --- 3 files changed, 25 deletions(-) delete mode 100644 .vs/MinecraftClient/v14/.suo diff --git a/.vs/MinecraftClient/v14/.suo b/.vs/MinecraftClient/v14/.suo deleted file mode 100644 index 9b02a86378d3ff782804856f32fdca328b07c6a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3584 zcmca`Uhu)fjZzO8(10BSGsD0CoD6J8;*3Bx6O1pwz`z1zgT(&*|NkE(%nZap<|r6K zA@CRIR#5znf{_^lK@9moSi+#d;L4B(q>C6TL0Oq-AjZIolIMxh2rDm$QA>;(etC4yf%0YR`em9P)QxOY4A9;TaLMfibV&)&y~#i~86-q%&q+PEFx@fDg_$jR mA~1=gl-Hne0Ev+cUdWqU*~urSWXP>Q!M3qChg@?8N*@4)1zMs2 diff --git a/MinecraftClient/ChatBot.cs b/MinecraftClient/ChatBot.cs index 27459bf9..4c0a5c09 100644 --- a/MinecraftClient/ChatBot.cs +++ b/MinecraftClient/ChatBot.cs @@ -197,17 +197,6 @@ namespace MinecraftClient return IsValidName(sender); } - //Detect Modified server messages. /m - //[Someone @ me] message - else if (text[0] == '[' && tmp.Length > 3 && tmp[1] == "@" - && (tmp[2] == "me]" || tmp[2] == "moi]")) //'me' is replaced by 'moi' in french servers - { - message = text.Substring(tmp[0].Length + 4 + tmp[2].Length + 0); - sender = tmp[0].Substring(1); - if (sender[0] == '~') { sender = sender.Substring(1); } - return IsValidName(sender); - } - //Detect Essentials (Bukkit) /me messages with some custom prefix //[Prefix] [Someone -> me] message //[Prefix] [~Someone -> me] message @@ -242,17 +231,6 @@ namespace MinecraftClient return IsValidName(sender); } - //Detect HeroChat Messages - //[Channel] [Rank] User: Message - else if (text.StartsWith("[") && text.Contains(':') && tmp.Length > 2 && Settings.Hero_Chat_Messages_Enabled.Equals(true)) - { - int name_end = text.IndexOf(':'); - int name_start = text.Substring(0, name_end).LastIndexOf(']') + 2; - sender = text.Substring(name_start, name_end - name_start); - message = text.Substring(name_end + 2); - return IsValidName(sender); - } - else return false; } catch (IndexOutOfRangeException) { return false; } diff --git a/MinecraftClient/Settings.cs b/MinecraftClient/Settings.cs index d09a5912..40a51cb1 100644 --- a/MinecraftClient/Settings.cs +++ b/MinecraftClient/Settings.cs @@ -89,7 +89,6 @@ namespace MinecraftClient public static bool RemoteCtrl_Enabled = false; public static bool RemoteCtrl_AutoTpaccept = true; public static bool RemoteCtrl_AutoTpaccept_Everyone = false; - public static bool Hero_Chat_Messages_Enabled = false; //Auto Respond public static bool AutoRespond_Enabled = false; @@ -283,7 +282,6 @@ namespace MinecraftClient case "enabled": RemoteCtrl_Enabled = str2bool(argValue); break; case "autotpaccept": RemoteCtrl_AutoTpaccept = str2bool(argValue); break; case "tpaccepteveryone": RemoteCtrl_AutoTpaccept_Everyone = str2bool(argValue); break; - case "herochatmessagesenabled": Hero_Chat_Messages_Enabled = str2bool(argValue); break; } break; @@ -424,7 +422,6 @@ namespace MinecraftClient + "enabled=false\r\n" + "autotpaccept=true\r\n" + "tpaccepteveryone=false\r\n" - + "herochatmessagesenabled=false\r\n" + "\r\n" + "[AutoRespond]\r\n" + "enabled=false\r\n" From 35365a4b80774e2a4505f449c6e99c5842f88b1e Mon Sep 17 00:00:00 2001 From: BuildTools Date: Wed, 2 Sep 2015 23:01:46 -0400 Subject: [PATCH 3/9] Revert "Revert "Added a new PM regex"" This reverts commit 450cb4c6b98754bc6d1cf62a778c631dcce195d3. --- .vs/MinecraftClient/v14/.suo | Bin 0 -> 3584 bytes MinecraftClient/ChatBot.cs | 22 ++++++++++++++++++++++ MinecraftClient/Settings.cs | 3 +++ 3 files changed, 25 insertions(+) create mode 100644 .vs/MinecraftClient/v14/.suo diff --git a/.vs/MinecraftClient/v14/.suo b/.vs/MinecraftClient/v14/.suo new file mode 100644 index 0000000000000000000000000000000000000000..9b02a86378d3ff782804856f32fdca328b07c6a2 GIT binary patch literal 3584 zcmca`Uhu)fjZzO8(10BSGsD0CoD6J8;*3Bx6O1pwz`z1zgT(&*|NkE(%nZap<|r6K zA@CRIR#5znf{_^lK@9moSi+#d;L4B(q>C6TL0Oq-AjZIolIMxh2rDm$QA>;(etC4yf%0YR`em9P)QxOY4A9;TaLMfibV&)&y~#i~86-q%&q+PEFx@fDg_$jR mA~1=gl-Hne0Ev+cUdWqU*~urSWXP>Q!M3qChg@?8N*@4)1zMs2 literal 0 HcmV?d00001 diff --git a/MinecraftClient/ChatBot.cs b/MinecraftClient/ChatBot.cs index 4c0a5c09..27459bf9 100644 --- a/MinecraftClient/ChatBot.cs +++ b/MinecraftClient/ChatBot.cs @@ -197,6 +197,17 @@ namespace MinecraftClient return IsValidName(sender); } + //Detect Modified server messages. /m + //[Someone @ me] message + else if (text[0] == '[' && tmp.Length > 3 && tmp[1] == "@" + && (tmp[2] == "me]" || tmp[2] == "moi]")) //'me' is replaced by 'moi' in french servers + { + message = text.Substring(tmp[0].Length + 4 + tmp[2].Length + 0); + sender = tmp[0].Substring(1); + if (sender[0] == '~') { sender = sender.Substring(1); } + return IsValidName(sender); + } + //Detect Essentials (Bukkit) /me messages with some custom prefix //[Prefix] [Someone -> me] message //[Prefix] [~Someone -> me] message @@ -231,6 +242,17 @@ namespace MinecraftClient return IsValidName(sender); } + //Detect HeroChat Messages + //[Channel] [Rank] User: Message + else if (text.StartsWith("[") && text.Contains(':') && tmp.Length > 2 && Settings.Hero_Chat_Messages_Enabled.Equals(true)) + { + int name_end = text.IndexOf(':'); + int name_start = text.Substring(0, name_end).LastIndexOf(']') + 2; + sender = text.Substring(name_start, name_end - name_start); + message = text.Substring(name_end + 2); + return IsValidName(sender); + } + else return false; } catch (IndexOutOfRangeException) { return false; } diff --git a/MinecraftClient/Settings.cs b/MinecraftClient/Settings.cs index 40a51cb1..d09a5912 100644 --- a/MinecraftClient/Settings.cs +++ b/MinecraftClient/Settings.cs @@ -89,6 +89,7 @@ namespace MinecraftClient public static bool RemoteCtrl_Enabled = false; public static bool RemoteCtrl_AutoTpaccept = true; public static bool RemoteCtrl_AutoTpaccept_Everyone = false; + public static bool Hero_Chat_Messages_Enabled = false; //Auto Respond public static bool AutoRespond_Enabled = false; @@ -282,6 +283,7 @@ namespace MinecraftClient case "enabled": RemoteCtrl_Enabled = str2bool(argValue); break; case "autotpaccept": RemoteCtrl_AutoTpaccept = str2bool(argValue); break; case "tpaccepteveryone": RemoteCtrl_AutoTpaccept_Everyone = str2bool(argValue); break; + case "herochatmessagesenabled": Hero_Chat_Messages_Enabled = str2bool(argValue); break; } break; @@ -422,6 +424,7 @@ namespace MinecraftClient + "enabled=false\r\n" + "autotpaccept=true\r\n" + "tpaccepteveryone=false\r\n" + + "herochatmessagesenabled=false\r\n" + "\r\n" + "[AutoRespond]\r\n" + "enabled=false\r\n" From 6ed17f5f9832cfef381e2803f3c6f86e0f3dc5b0 Mon Sep 17 00:00:00 2001 From: ZizzyDizzyMC Date: Thu, 3 Sep 2015 23:58:38 -0400 Subject: [PATCH 4/9] Removal of .suo --- .vs/MinecraftClient/v14/.suo | Bin 3584 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 .vs/MinecraftClient/v14/.suo diff --git a/.vs/MinecraftClient/v14/.suo b/.vs/MinecraftClient/v14/.suo deleted file mode 100644 index 9b02a86378d3ff782804856f32fdca328b07c6a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3584 zcmca`Uhu)fjZzO8(10BSGsD0CoD6J8;*3Bx6O1pwz`z1zgT(&*|NkE(%nZap<|r6K zA@CRIR#5znf{_^lK@9moSi+#d;L4B(q>C6TL0Oq-AjZIolIMxh2rDm$QA>;(etC4yf%0YR`em9P)QxOY4A9;TaLMfibV&)&y~#i~86-q%&q+PEFx@fDg_$jR mA~1=gl-Hne0Ev+cUdWqU*~urSWXP>Q!M3qChg@?8N*@4)1zMs2 From 60c95a66251f983e70c4c2ed9e9cdc71988905cb Mon Sep 17 00:00:00 2001 From: ZizzyDizzyMC Date: Thu, 3 Sep 2015 15:55:08 -0400 Subject: [PATCH 5/9] Added /.vs/ to git ignore. Adding /.vs/ to git ignore for Visual Studio 2015 Removed folder. --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 307f491a..163e9ada 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ /MinecraftClientGUI.v11.suo /MinecraftClientGUI.suo /MinecraftClient.userprefs +/.vs/ From cdec34d5ca5340c63deb240110facb8882088970 Mon Sep 17 00:00:00 2001 From: ZizzyDizzyMC Date: Thu, 3 Sep 2015 23:42:01 -0400 Subject: [PATCH 6/9] I messed up and put the herochat *back* into a faulty position. Removed my mistake and updated the location of the Hero_Chat_Messages_Enabled clause that keeps it disabled unless needed. --- MinecraftClient/ChatBot.cs | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/MinecraftClient/ChatBot.cs b/MinecraftClient/ChatBot.cs index 27459bf9..d7a7e412 100644 --- a/MinecraftClient/ChatBot.cs +++ b/MinecraftClient/ChatBot.cs @@ -241,18 +241,6 @@ namespace MinecraftClient message = text.Substring(text.IndexOf(':') + 2); return IsValidName(sender); } - - //Detect HeroChat Messages - //[Channel] [Rank] User: Message - else if (text.StartsWith("[") && text.Contains(':') && tmp.Length > 2 && Settings.Hero_Chat_Messages_Enabled.Equals(true)) - { - int name_end = text.IndexOf(':'); - int name_start = text.Substring(0, name_end).LastIndexOf(']') + 2; - sender = text.Substring(name_start, name_end - name_start); - message = text.Substring(name_end + 2); - return IsValidName(sender); - } - else return false; } catch (IndexOutOfRangeException) { return false; } @@ -297,8 +285,9 @@ namespace MinecraftClient } //Detect HeroChat Messages + //Public chat messages //[Channel] [Rank] User: Message - else if (text[0] == '[' && text.Contains(':') && tmp.Length > 2) + else if (text[0] == '[' && text.Contains(':') && tmp.Length > 2 && Settings.Hero_Chat_Messages_Enabled.Equals(true)) { int name_end = text.IndexOf(':'); int name_start = text.Substring(0, name_end).LastIndexOf(']') + 2; From b233b60abac95434b9475215c969c2f0b1c193ef Mon Sep 17 00:00:00 2001 From: ZizzyDizzyMC Date: Thu, 3 Sep 2015 23:44:07 -0400 Subject: [PATCH 7/9] Default acceptance of Hero-Chat public messages changed. Changed from default of disabled to enabled. *True* --- MinecraftClient/Settings.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/MinecraftClient/Settings.cs b/MinecraftClient/Settings.cs index d09a5912..27240440 100644 --- a/MinecraftClient/Settings.cs +++ b/MinecraftClient/Settings.cs @@ -89,7 +89,7 @@ namespace MinecraftClient public static bool RemoteCtrl_Enabled = false; public static bool RemoteCtrl_AutoTpaccept = true; public static bool RemoteCtrl_AutoTpaccept_Everyone = false; - public static bool Hero_Chat_Messages_Enabled = false; + public static bool Hero_Chat_Messages_Enabled = true; //Auto Respond public static bool AutoRespond_Enabled = false; @@ -424,7 +424,7 @@ namespace MinecraftClient + "enabled=false\r\n" + "autotpaccept=true\r\n" + "tpaccepteveryone=false\r\n" - + "herochatmessagesenabled=false\r\n" + + "herochatmessagesenabled=true\r\n" + "\r\n" + "[AutoRespond]\r\n" + "enabled=false\r\n" From 1abb46b8cabe8614da298409f644ea37859bae98 Mon Sep 17 00:00:00 2001 From: ZizzyDizzyMC Date: Thu, 3 Sep 2015 23:59:15 -0400 Subject: [PATCH 8/9] Added / Cleaned Enable features of Chat Messages --- MinecraftClient/ChatBot.cs | 3 ++- MinecraftClient/Settings.cs | 16 +++++++++++++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/MinecraftClient/ChatBot.cs b/MinecraftClient/ChatBot.cs index d7a7e412..ebdbcc08 100644 --- a/MinecraftClient/ChatBot.cs +++ b/MinecraftClient/ChatBot.cs @@ -306,7 +306,8 @@ namespace MinecraftClient && text.IndexOf('*') < text.IndexOf('<') && text.IndexOf('<') < text.IndexOf('>') && text.IndexOf('>') < text.IndexOf(' ') - && text.IndexOf(' ') < text.IndexOf(':')) + && text.IndexOf(' ') < text.IndexOf(':') + && Settings.Unknown_Chat_Plugin_Messages_One_Enabled.Equals(true)) { string prefix = tmp[0]; string user = tmp[1]; diff --git a/MinecraftClient/Settings.cs b/MinecraftClient/Settings.cs index 27240440..a22ec296 100644 --- a/MinecraftClient/Settings.cs +++ b/MinecraftClient/Settings.cs @@ -89,7 +89,10 @@ namespace MinecraftClient public static bool RemoteCtrl_Enabled = false; public static bool RemoteCtrl_AutoTpaccept = true; public static bool RemoteCtrl_AutoTpaccept_Everyone = false; + + //Chat Message Enabled / Disabled. public static bool Hero_Chat_Messages_Enabled = true; + public static bool Unknown_Chat_Plugin_Messages_One_Enabled = true; //Auto Respond public static bool AutoRespond_Enabled = false; @@ -100,7 +103,7 @@ namespace MinecraftClient private static readonly Dictionary> Accounts = new Dictionary>(); private static readonly Dictionary> Servers = new Dictionary>(); - private enum ParseMode { Default, Main, AppVars, Proxy, AntiAFK, Hangman, Alerts, ChatLog, AutoRelog, ScriptScheduler, RemoteControl, AutoRespond }; + private enum ParseMode { Default, Main, AppVars, Proxy, AntiAFK, Hangman, Alerts, ChatLog, AutoRelog, ScriptScheduler, RemoteControl, ChatBotMessages, AutoRespond }; /// /// Load settings from the give INI file @@ -287,6 +290,15 @@ namespace MinecraftClient } break; + case ParseMode.ChatBotMessages: + switch (argName.ToLower()) + { + case "herochatmessagesenabled": Hero_Chat_Messages_Enabled = str2bool(argValue); break; + case "unknownchatpluginmessagesone": Unknown_Chat_Plugin_Messages_One_Enabled = str2bool(argValue); break; + + } + break; + case ParseMode.Proxy: switch (argName.ToLower()) { @@ -424,7 +436,9 @@ namespace MinecraftClient + "enabled=false\r\n" + "autotpaccept=true\r\n" + "tpaccepteveryone=false\r\n" + + "[ChatBotMessages]\r\n" + "herochatmessagesenabled=true\r\n" + + "unknownchatpluginmessagesone=true\r\n" + "\r\n" + "[AutoRespond]\r\n" + "enabled=false\r\n" From 93aae2d4679fe4edeb5db0cfd4c27c445c01551b Mon Sep 17 00:00:00 2001 From: ZizzyDizzyMC Date: Fri, 4 Sep 2015 00:15:02 -0400 Subject: [PATCH 9/9] Commented Auto-Generated MinecraftClient.ini Added example chat format in the ini comments. Further cleaning up my own mistakes as well. Note: I'm learning still. Getting better AND fast though. --- MinecraftClient/Settings.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/MinecraftClient/Settings.cs b/MinecraftClient/Settings.cs index a22ec296..ee14b0e1 100644 --- a/MinecraftClient/Settings.cs +++ b/MinecraftClient/Settings.cs @@ -436,9 +436,10 @@ namespace MinecraftClient + "enabled=false\r\n" + "autotpaccept=true\r\n" + "tpaccepteveryone=false\r\n" + + "\r\n" + "[ChatBotMessages]\r\n" - + "herochatmessagesenabled=true\r\n" - + "unknownchatpluginmessagesone=true\r\n" + + "herochatmessagesenabled=true # Chat Format is \"[Channel][Rank] User: Message\"\r\n" + + "unknownchatpluginmessagesone=true # Chat Format is \"**Faction User : Message\"\r\n" + "\r\n" + "[AutoRespond]\r\n" + "enabled=false\r\n"