aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim')
-rwxr-xr-x[-rw-r--r--]OpenSim/Addons/Groups/GroupsMessagingModule.cs2
-rwxr-xr-x[-rw-r--r--]OpenSim/Addons/Groups/GroupsModule.cs2
-rwxr-xr-x[-rw-r--r--]OpenSim/Framework/ConfigurationMember.cs4
-rwxr-xr-xOpenSim/Framework/Console/ConsoleBase.cs86
-rwxr-xr-x[-rw-r--r--]OpenSim/Framework/Console/ConsoleUtil.cs20
-rwxr-xr-x[-rw-r--r--]OpenSim/Framework/Console/LocalConsole.cs15
-rwxr-xr-x[-rw-r--r--]OpenSim/Framework/Console/MockConsole.cs14
-rwxr-xr-x[-rw-r--r--]OpenSim/Framework/Console/RemoteConsole.cs16
-rwxr-xr-x[-rw-r--r--]OpenSim/Framework/IConsole.cs17
-rwxr-xr-x[-rw-r--r--]OpenSim/Framework/Monitoring/ChecksManager.cs2
-rwxr-xr-x[-rw-r--r--]OpenSim/Framework/Monitoring/StatsLogger.cs4
-rwxr-xr-x[-rw-r--r--]OpenSim/Framework/Monitoring/StatsManager.cs10
-rwxr-xr-x[-rw-r--r--]OpenSim/Framework/Monitoring/WorkManager.cs18
-rwxr-xr-x[-rw-r--r--]OpenSim/Framework/PluginManager.cs6
-rwxr-xr-x[-rw-r--r--]OpenSim/Framework/RegionInfo.cs14
-rwxr-xr-x[-rw-r--r--]OpenSim/Framework/Servers/MainServer.cs12
-rwxr-xr-x[-rw-r--r--]OpenSim/Framework/Servers/ServerBase.cs12
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/Application/OpenSim.cs10
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/Application/OpenSimBase.cs20
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs11
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/ClientStack/Linden/UDP/LLUDPServerCommands.cs82
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs20
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs12
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs2
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/CoreModules/Avatar/Commands/UserCommandsModule.cs9
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/CoreModules/Framework/Monitoring/MonitorModule.cs6
-rwxr-xr-xOpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs4
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs8
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/CoreModules/World/Objects/Commands/ObjectCommandsModule.cs56
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/CoreModules/World/Region/RegionCommandsModule.cs17
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/CoreModules/World/Region/RestartModule.cs4
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/CoreModules/World/Terrain/TerrainModule.cs15
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/CoreModules/World/Wind/WindModule.cs20
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/Framework/Interfaces/IAvatarFactoryModule.cs2
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/OptionalModules/Agent/TextureSender/J2KDecoderCommandModule.cs13
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/OptionalModules/Asset/AssetInfoModule.cs20
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/OptionalModules/Avatar/Animations/AnimationsCommandModule.cs2
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/OptionalModules/Avatar/Appearance/AppearanceInfoModule.cs37
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/OptionalModules/Avatar/Friends/FriendsCommandsModule.cs15
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/OptionalModules/Avatar/SitStand/SitStandCommandsModule.cs8
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsMessagingModule.cs2
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs2
-rwxr-xr-xOpenSim/Region/OptionalModules/PhysicsParameters/PhysicsParameters.cs4
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/OptionalModules/Scripting/JsonStore/JsonStoreCommands.cs2
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/OptionalModules/Scripting/RegionReadyModule/RegionReadyModule.cs4
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/OptionalModules/World/AutoBackup/AutoBackupModule.cs6
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/OptionalModules/World/SceneCommands/SceneCommandsModule.cs4
-rwxr-xr-x[-rw-r--r--]OpenSim/Region/ScriptEngine/XEngine/ScriptEngineConsoleCommands.cs4
-rwxr-xr-xOpenSim/Region/ScriptEngine/XEngine/XEngine.cs24
-rwxr-xr-x[-rw-r--r--]OpenSim/Server/Base/CommandManager.cs15
-rwxr-xr-x[-rw-r--r--]OpenSim/Server/Handlers/Asset/AssetServerConnector.cs26
-rwxr-xr-x[-rw-r--r--]OpenSim/Services/GridService/GridService.cs12
-rwxr-xr-x[-rw-r--r--]OpenSim/Services/LLLoginService/LLLoginService.cs8
-rwxr-xr-x[-rw-r--r--]OpenSim/Services/UserAccountService/GridUserService.cs4
-rwxr-xr-x[-rw-r--r--]OpenSim/Services/UserAccountService/UserAccountService.cs68
-rwxr-xr-x[-rw-r--r--]OpenSim/Tools/pCampBot/BotManager.cs51
56 files changed, 430 insertions, 453 deletions
diff --git a/OpenSim/Addons/Groups/GroupsMessagingModule.cs b/OpenSim/Addons/Groups/GroupsMessagingModule.cs
index f4d3490..854a125 100644..100755
--- a/OpenSim/Addons/Groups/GroupsMessagingModule.cs
+++ b/OpenSim/Addons/Groups/GroupsMessagingModule.cs
@@ -252,7 +252,7 @@ namespace OpenSim.Groups
252 252
253 m_debugEnabled = verbose; 253 m_debugEnabled = verbose;
254 254
255 MainConsole.Instance.OutputFormat("{0} verbose logging set to {1}", Name, m_debugEnabled); 255 MainConsole.Instance.Output("{0} verbose logging set to {1}", null, Name, m_debugEnabled);
256 } 256 }
257 257
258 /// <summary> 258 /// <summary>
diff --git a/OpenSim/Addons/Groups/GroupsModule.cs b/OpenSim/Addons/Groups/GroupsModule.cs
index e98bc0f..98264ad 100644..100755
--- a/OpenSim/Addons/Groups/GroupsModule.cs
+++ b/OpenSim/Addons/Groups/GroupsModule.cs
@@ -127,7 +127,7 @@ namespace OpenSim.Groups
127 127
128 m_debugEnabled = verbose; 128 m_debugEnabled = verbose;
129 129
130 MainConsole.Instance.OutputFormat("{0} verbose logging set to {1}", Name, m_debugEnabled); 130 MainConsole.Instance.Output("{0} verbose logging set to {1}", null, Name, m_debugEnabled);
131 } 131 }
132 132
133 public void RegionLoaded(Scene scene) 133 public void RegionLoaded(Scene scene)
diff --git a/OpenSim/Framework/ConfigurationMember.cs b/OpenSim/Framework/ConfigurationMember.cs
index 7afa68a..32c6a3e 100644..100755
--- a/OpenSim/Framework/ConfigurationMember.cs
+++ b/OpenSim/Framework/ConfigurationMember.cs
@@ -262,14 +262,14 @@ namespace OpenSim.Framework
262 if (configurationDescription.Trim() != String.Empty) 262 if (configurationDescription.Trim() != String.Empty)
263 { 263 {
264 console_result = 264 console_result =
265 MainConsole.Instance.CmdPrompt( 265 MainConsole.Instance.Prompt(
266 configurationDescription + ": " + configOption.configurationQuestion, 266 configurationDescription + ": " + configOption.configurationQuestion,
267 configOption.configurationDefault); 267 configOption.configurationDefault);
268 } 268 }
269 else 269 else
270 { 270 {
271 console_result = 271 console_result =
272 MainConsole.Instance.CmdPrompt(configOption.configurationQuestion, 272 MainConsole.Instance.Prompt(configOption.configurationQuestion,
273 configOption.configurationDefault); 273 configOption.configurationDefault);
274 } 274 }
275 } 275 }
diff --git a/OpenSim/Framework/Console/ConsoleBase.cs b/OpenSim/Framework/Console/ConsoleBase.cs
index 64cddea..56bda05 100755
--- a/OpenSim/Framework/Console/ConsoleBase.cs
+++ b/OpenSim/Framework/Console/ConsoleBase.cs
@@ -35,13 +35,13 @@ using log4net;
35 35
36namespace OpenSim.Framework.Console 36namespace OpenSim.Framework.Console
37{ 37{
38 public class ConsoleBase 38 public class ConsoleBase : IConsole
39 { 39 {
40// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 40// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
41 41
42 protected string prompt = "# "; 42 protected string prompt = "# ";
43 43
44 public object ConsoleScene { get; set; } 44 public IScene ConsoleScene { get; set; }
45 45
46 public string DefaultPrompt { get; set; } 46 public string DefaultPrompt { get; set; }
47 47
@@ -58,78 +58,39 @@ namespace OpenSim.Framework.Console
58 { 58 {
59 } 59 }
60 60
61 public virtual void Output(string text, string level) 61 public virtual void Output(string format, string level = null, params object[] components)
62 { 62 {
63 Output(text); 63 System.Console.WriteLine(format, components);
64 } 64 }
65 65
66 public virtual void Output(string text) 66 public virtual string Prompt(string p, string def = null, List<char> excludedCharacters = null, bool echo = true)
67 {
68 System.Console.WriteLine(text);
69 }
70
71 public virtual void OutputFormat(string format, params object[] components)
72 {
73 Output(string.Format(format, components));
74 }
75
76 public string CmdPrompt(string p)
77 {
78 return ReadLine(String.Format("{0}: ", p), false, true);
79 }
80
81 public string CmdPrompt(string p, string def)
82 {
83 string ret = ReadLine(String.Format("{0} [{1}]: ", p, def), false, true);
84 if (ret == String.Empty)
85 ret = def;
86
87 return ret;
88 }
89
90 public string CmdPrompt(string p, List<char> excludedCharacters)
91 { 67 {
92 bool itisdone = false; 68 bool itisdone = false;
93 string ret = String.Empty; 69 string ret = String.Empty;
94 while (!itisdone) 70 while (!itisdone)
95 { 71 {
96 itisdone = true; 72 itisdone = true;
97 ret = CmdPrompt(p);
98 73
99 foreach (char c in excludedCharacters) 74 if (def != null)
100 { 75 ret = ReadLine(String.Format("{0}: ", p), false, echo);
101 if (ret.Contains(c.ToString())) 76 else
102 { 77 ret = ReadLine(String.Format("{0} [{1}]: ", p, def), false, echo);
103 System.Console.WriteLine("The character \"" + c.ToString() + "\" is not permitted.");
104 itisdone = false;
105 }
106 }
107 }
108
109 return ret;
110 }
111
112 public string CmdPrompt(string p, string def, List<char> excludedCharacters)
113 {
114 bool itisdone = false;
115 string ret = String.Empty;
116 while (!itisdone)
117 {
118 itisdone = true;
119 ret = CmdPrompt(p, def);
120 78
121 if (ret == String.Empty) 79 if (ret == String.Empty && def != null)
122 { 80 {
123 ret = def; 81 ret = def;
124 } 82 }
125 else 83 else
126 { 84 {
127 foreach (char c in excludedCharacters) 85 if (excludedCharacters != null)
128 { 86 {
129 if (ret.Contains(c.ToString())) 87 foreach (char c in excludedCharacters)
130 { 88 {
131 System.Console.WriteLine("The character \"" + c.ToString() + "\" is not permitted."); 89 if (ret.Contains(c.ToString()))
132 itisdone = false; 90 {
91 System.Console.WriteLine("The character \"" + c.ToString() + "\" is not permitted.");
92 itisdone = false;
93 }
133 } 94 }
134 } 95 }
135 } 96 }
@@ -139,14 +100,14 @@ namespace OpenSim.Framework.Console
139 } 100 }
140 101
141 // Displays a command prompt and returns a default value, user may only enter 1 of 2 options 102 // Displays a command prompt and returns a default value, user may only enter 1 of 2 options
142 public string CmdPrompt(string prompt, string defaultresponse, List<string> options) 103 public virtual string Prompt(string prompt, string defaultresponse, List<string> options)
143 { 104 {
144 bool itisdone = false; 105 bool itisdone = false;
145 string optstr = String.Empty; 106 string optstr = String.Empty;
146 foreach (string s in options) 107 foreach (string s in options)
147 optstr += " " + s; 108 optstr += " " + s;
148 109
149 string temp = CmdPrompt(prompt, defaultresponse); 110 string temp = Prompt(prompt, defaultresponse);
150 while (itisdone == false) 111 while (itisdone == false)
151 { 112 {
152 if (options.Contains(temp)) 113 if (options.Contains(temp))
@@ -156,19 +117,12 @@ namespace OpenSim.Framework.Console
156 else 117 else
157 { 118 {
158 System.Console.WriteLine("Valid options are" + optstr); 119 System.Console.WriteLine("Valid options are" + optstr);
159 temp = CmdPrompt(prompt, defaultresponse); 120 temp = Prompt(prompt, defaultresponse);
160 } 121 }
161 } 122 }
162 return temp; 123 return temp;
163 } 124 }
164 125
165 // Displays a prompt and waits for the user to enter a string, then returns that string
166 // (Done with no echo and suitable for passwords)
167 public string PasswdPrompt(string p)
168 {
169 return ReadLine(String.Format("{0}: ", p), false, false);
170 }
171
172 public virtual string ReadLine(string p, bool isCommand, bool e) 126 public virtual string ReadLine(string p, bool isCommand, bool e)
173 { 127 {
174 System.Console.Write("{0}", p); 128 System.Console.Write("{0}", p);
diff --git a/OpenSim/Framework/Console/ConsoleUtil.cs b/OpenSim/Framework/Console/ConsoleUtil.cs
index bfa05a2..5342a29 100644..100755
--- a/OpenSim/Framework/Console/ConsoleUtil.cs
+++ b/OpenSim/Framework/Console/ConsoleUtil.cs
@@ -75,7 +75,7 @@ namespace OpenSim.Framework.Console
75 { 75 {
76 if (File.Exists(path)) 76 if (File.Exists(path))
77 { 77 {
78 console.OutputFormat("File {0} already exists. Please move or remove it.", path); 78 console.Output("File {0} already exists. Please move or remove it.", null, path);
79 return false; 79 return false;
80 } 80 }
81 81
@@ -97,7 +97,7 @@ namespace OpenSim.Framework.Console
97 if (!UUID.TryParse(rawUuid, out uuid)) 97 if (!UUID.TryParse(rawUuid, out uuid))
98 { 98 {
99 if (console != null) 99 if (console != null)
100 console.OutputFormat("ERROR: {0} is not a valid uuid", rawUuid); 100 console.Output("ERROR: {0} is not a valid uuid", null, rawUuid);
101 101
102 return false; 102 return false;
103 } 103 }
@@ -110,7 +110,7 @@ namespace OpenSim.Framework.Console
110 if (!uint.TryParse(rawLocalId, out localId)) 110 if (!uint.TryParse(rawLocalId, out localId))
111 { 111 {
112 if (console != null) 112 if (console != null)
113 console.OutputFormat("ERROR: {0} is not a valid local id", localId); 113 console.Output("ERROR: {0} is not a valid local id", null, localId);
114 114
115 return false; 115 return false;
116 } 116 }
@@ -118,7 +118,7 @@ namespace OpenSim.Framework.Console
118 if (localId == 0) 118 if (localId == 0)
119 { 119 {
120 if (console != null) 120 if (console != null)
121 console.OutputFormat("ERROR: {0} is not a valid local id - it must be greater than 0", localId); 121 console.Output("ERROR: {0} is not a valid local id - it must be greater than 0", null, localId);
122 122
123 return false; 123 return false;
124 } 124 }
@@ -150,7 +150,7 @@ namespace OpenSim.Framework.Console
150 } 150 }
151 151
152 if (console != null) 152 if (console != null)
153 console.OutputFormat("ERROR: {0} is not a valid UUID or local id", rawId); 153 console.Output("ERROR: {0} is not a valid UUID or local id", null, rawId);
154 154
155 return false; 155 return false;
156 } 156 }
@@ -167,7 +167,7 @@ namespace OpenSim.Framework.Console
167 if (!bool.TryParse(rawConsoleString, out b)) 167 if (!bool.TryParse(rawConsoleString, out b))
168 { 168 {
169 if (console != null) 169 if (console != null)
170 console.OutputFormat("ERROR: {0} is not a true or false value", rawConsoleString); 170 console.Output("ERROR: {0} is not a true or false value", null, rawConsoleString);
171 171
172 return false; 172 return false;
173 } 173 }
@@ -187,7 +187,7 @@ namespace OpenSim.Framework.Console
187 if (!int.TryParse(rawConsoleInt, out i)) 187 if (!int.TryParse(rawConsoleInt, out i))
188 { 188 {
189 if (console != null) 189 if (console != null)
190 console.OutputFormat("ERROR: {0} is not a valid integer", rawConsoleInt); 190 console.Output("ERROR: {0} is not a valid integer", null, rawConsoleInt);
191 191
192 return false; 192 return false;
193 } 193 }
@@ -207,7 +207,7 @@ namespace OpenSim.Framework.Console
207 if (!float.TryParse(rawConsoleInput, out i)) 207 if (!float.TryParse(rawConsoleInput, out i))
208 { 208 {
209 if (console != null) 209 if (console != null)
210 console.OutputFormat("ERROR: {0} is not a valid float", rawConsoleInput); 210 console.Output("ERROR: {0} is not a valid float", null, rawConsoleInput);
211 211
212 return false; 212 return false;
213 } 213 }
@@ -227,7 +227,7 @@ namespace OpenSim.Framework.Console
227 if (!double.TryParse(rawConsoleInput, out i)) 227 if (!double.TryParse(rawConsoleInput, out i))
228 { 228 {
229 if (console != null) 229 if (console != null)
230 console.OutputFormat("ERROR: {0} is not a valid double", rawConsoleInput); 230 console.Output("ERROR: {0} is not a valid double", null, rawConsoleInput);
231 231
232 return false; 232 return false;
233 } 233 }
@@ -249,7 +249,7 @@ namespace OpenSim.Framework.Console
249 if (i < 0) 249 if (i < 0)
250 { 250 {
251 if (console != null) 251 if (console != null)
252 console.OutputFormat("ERROR: {0} is not a positive integer", rawConsoleInt); 252 console.Output("ERROR: {0} is not a positive integer", null, rawConsoleInt);
253 253
254 return false; 254 return false;
255 } 255 }
diff --git a/OpenSim/Framework/Console/LocalConsole.cs b/OpenSim/Framework/Console/LocalConsole.cs
index ba32f50..55c5c7e 100644..100755
--- a/OpenSim/Framework/Console/LocalConsole.cs
+++ b/OpenSim/Framework/Console/LocalConsole.cs
@@ -359,7 +359,7 @@ namespace OpenSim.Framework.Console
359 { 359 {
360 string outText = text; 360 string outText = text;
361 361
362 if (level != LOGLEVEL_NONE) 362 if (level != null)
363 { 363 {
364 MatchCollection matches = m_categoryRegex.Matches(text); 364 MatchCollection matches = m_categoryRegex.Matches(text);
365 365
@@ -389,20 +389,15 @@ namespace OpenSim.Framework.Console
389 System.Console.WriteLine(); 389 System.Console.WriteLine();
390 } 390 }
391 391
392 public override void Output(string text) 392 public override void Output(string format, string level = null, params object[] components)
393 { 393 {
394 Output(text, LOGLEVEL_NONE); 394 FireOnOutput(format);
395 }
396
397 public override void Output(string text, string level)
398 {
399 FireOnOutput(text);
400 395
401 lock (m_commandLine) 396 lock (m_commandLine)
402 { 397 {
403 if (m_cursorYPosition == -1) 398 if (m_cursorYPosition == -1)
404 { 399 {
405 WriteLocalText(text, level); 400 WriteLocalText(format, level);
406 401
407 return; 402 return;
408 } 403 }
@@ -418,7 +413,7 @@ namespace OpenSim.Framework.Console
418 m_cursorYPosition = SetCursorTop(m_cursorYPosition); 413 m_cursorYPosition = SetCursorTop(m_cursorYPosition);
419 SetCursorLeft(0); 414 SetCursorLeft(0);
420 415
421 WriteLocalText(text, level); 416 WriteLocalText(format, level);
422 417
423 m_cursorYPosition = System.Console.CursorTop; 418 m_cursorYPosition = System.Console.CursorTop;
424 419
diff --git a/OpenSim/Framework/Console/MockConsole.cs b/OpenSim/Framework/Console/MockConsole.cs
index e1ff720..d68b066 100644..100755
--- a/OpenSim/Framework/Console/MockConsole.cs
+++ b/OpenSim/Framework/Console/MockConsole.cs
@@ -56,21 +56,17 @@ namespace OpenSim.Framework.Console
56 56
57 public string ReadLine(string p, bool isCommand, bool e) { return ""; } 57 public string ReadLine(string p, bool isCommand, bool e) { return ""; }
58 58
59 public object ConsoleScene { 59 public IScene ConsoleScene {
60 get { return null; } 60 get { return null; }
61 set {} 61 set {}
62 } 62 }
63 63
64 public void Output(string text, string level) {} 64 public void Output(string format, string level, params object[] components) {}
65 public void Output(string text) {}
66 public void OutputFormat(string format, params object[] components) {}
67 65
68 public string CmdPrompt(string p) { return ""; } 66 public string Prompt(string p) { return ""; }
69 public string CmdPrompt(string p, string def) { return ""; } 67 public string Prompt(string p, string def, List<char> excludedCharacters, bool echo) { return ""; }
70 public string CmdPrompt(string p, List<char> excludedCharacters) { return ""; }
71 public string CmdPrompt(string p, string def, List<char> excludedCharacters) { return ""; }
72 68
73 public string CmdPrompt(string prompt, string defaultresponse, List<string> options) { return ""; } 69 public string Prompt(string prompt, string defaultresponse, List<string> options) { return ""; }
74 70
75 public string PasswdPrompt(string p) { return ""; } 71 public string PasswdPrompt(string p) { return ""; }
76 } 72 }
diff --git a/OpenSim/Framework/Console/RemoteConsole.cs b/OpenSim/Framework/Console/RemoteConsole.cs
index b90b75f..16b4636 100644..100755
--- a/OpenSim/Framework/Console/RemoteConsole.cs
+++ b/OpenSim/Framework/Console/RemoteConsole.cs
@@ -188,13 +188,19 @@ namespace OpenSim.Framework.Console
188 m_Server.AddHTTPHandler("/SessionCommand/", HandleHttpSessionCommand); 188 m_Server.AddHTTPHandler("/SessionCommand/", HandleHttpSessionCommand);
189 } 189 }
190 190
191 public override void Output(string text, string level) 191 public override void Output(string format, string level = null, params object[] components)
192 { 192 {
193 Output(text, level, false, false, false); 193 if (components.Length == 0)
194 Output(format, level, false, false, false);
195 else
196 Output(String.Format(format, components), level, false, false, false);
194 } 197 }
195 198
196 protected void Output(string text, string level, bool isPrompt, bool isCommand, bool isInput) 199 protected void Output(string text, string level, bool isPrompt, bool isCommand, bool isInput)
197 { 200 {
201 if (level == null)
202 level = String.Empty;
203
198 // Increment the line number. It was 0 and they start at 1 204 // Increment the line number. It was 0 and they start at 1
199 // so we need to pre-increment. 205 // so we need to pre-increment.
200 m_lineNumber++; 206 m_lineNumber++;
@@ -228,12 +234,6 @@ namespace OpenSim.Framework.Console
228 System.Console.WriteLine(text.Trim()); 234 System.Console.WriteLine(text.Trim());
229 } 235 }
230 236
231 public override void Output(string text)
232 {
233 // Output plain (non-logging style) text.
234 Output(text, String.Empty, false, false, false);
235 }
236
237 public override string ReadLine(string p, bool isCommand, bool e) 237 public override string ReadLine(string p, bool isCommand, bool e)
238 { 238 {
239 // Output the prompt an prepare to wait. This 239 // Output the prompt an prepare to wait. This
diff --git a/OpenSim/Framework/IConsole.cs b/OpenSim/Framework/IConsole.cs
index 79560d8..963e07f 100644..100755
--- a/OpenSim/Framework/IConsole.cs
+++ b/OpenSim/Framework/IConsole.cs
@@ -32,22 +32,13 @@ namespace OpenSim.Framework
32{ 32{
33 public interface IConsole 33 public interface IConsole
34 { 34 {
35 object ConsoleScene { get; set; } 35 IScene ConsoleScene { get; set; }
36 36
37 void Output(string text, string level); 37 void Output(string format, string level = null, params object[] components);
38 void Output(string text);
39 void OutputFormat(string format, params object[] components);
40 38
41 string CmdPrompt(string p); 39 string Prompt(string p, string def = null, List<char> excludedCharacters = null, bool echo = true);
42 string CmdPrompt(string p, string def);
43 string CmdPrompt(string p, List<char> excludedCharacters);
44 string CmdPrompt(string p, string def, List<char> excludedCharacters);
45 40
46 // Displays a command prompt and returns a default value, user may only enter 1 of 2 options 41 // Displays a command prompt and returns a default value, user may only enter 1 of 2 options
47 string CmdPrompt(string prompt, string defaultresponse, List<string> options); 42 string Prompt(string prompt, string defaultresponse, List<string> options);
48
49 // Displays a prompt and waits for the user to enter a string, then returns that string
50 // (Done with no echo and suitable for passwords)
51 string PasswdPrompt(string p);
52 } 43 }
53} \ No newline at end of file 44} \ No newline at end of file
diff --git a/OpenSim/Framework/Monitoring/ChecksManager.cs b/OpenSim/Framework/Monitoring/ChecksManager.cs
index ff3b041..100b748 100644..100755
--- a/OpenSim/Framework/Monitoring/ChecksManager.cs
+++ b/OpenSim/Framework/Monitoring/ChecksManager.cs
@@ -88,7 +88,7 @@ namespace OpenSim.Framework.Monitoring
88 con.Output("check categories available are:"); 88 con.Output("check categories available are:");
89 89
90 foreach (string category in RegisteredChecks.Keys) 90 foreach (string category in RegisteredChecks.Keys)
91 con.OutputFormat(" {0}", category); 91 con.Output(" {0}", null, category);
92 } 92 }
93// else 93// else
94// { 94// {
diff --git a/OpenSim/Framework/Monitoring/StatsLogger.cs b/OpenSim/Framework/Monitoring/StatsLogger.cs
index b719af9..4369b36 100644..100755
--- a/OpenSim/Framework/Monitoring/StatsLogger.cs
+++ b/OpenSim/Framework/Monitoring/StatsLogger.cs
@@ -79,7 +79,7 @@ namespace OpenSim.Framework.Monitoring
79 if (cmd[2] == "start") 79 if (cmd[2] == "start")
80 { 80 {
81 Start(); 81 Start();
82 con.OutputFormat("Now recording all stats to file every {0}ms", m_statsLogIntervalMs); 82 con.Output("Now recording all stats to file every {0}ms", null, m_statsLogIntervalMs);
83 } 83 }
84 else if (cmd[2] == "stop") 84 else if (cmd[2] == "stop")
85 { 85 {
@@ -106,7 +106,7 @@ namespace OpenSim.Framework.Monitoring
106 sw.WriteLine(line); 106 sw.WriteLine(line);
107 } 107 }
108 108
109 MainConsole.Instance.OutputFormat("Stats saved to file {0}", path); 109 MainConsole.Instance.Output("Stats saved to file {0}", null, path);
110 } 110 }
111 111
112 public static void Start() 112 public static void Start()
diff --git a/OpenSim/Framework/Monitoring/StatsManager.cs b/OpenSim/Framework/Monitoring/StatsManager.cs
index a6b341f..57b9474 100644..100755
--- a/OpenSim/Framework/Monitoring/StatsManager.cs
+++ b/OpenSim/Framework/Monitoring/StatsManager.cs
@@ -117,14 +117,14 @@ namespace OpenSim.Framework.Monitoring
117 { 117 {
118 con.Output("Statistic categories available are:"); 118 con.Output("Statistic categories available are:");
119 foreach (string category in RegisteredStats.Keys) 119 foreach (string category in RegisteredStats.Keys)
120 con.OutputFormat(" {0}", category); 120 con.Output(" {0}", null, category);
121 } 121 }
122 else 122 else
123 { 123 {
124 SortedDictionary<string, SortedDictionary<string, Stat>> category; 124 SortedDictionary<string, SortedDictionary<string, Stat>> category;
125 if (!RegisteredStats.TryGetValue(categoryName, out category)) 125 if (!RegisteredStats.TryGetValue(categoryName, out category))
126 { 126 {
127 con.OutputFormat("No such category as {0}", categoryName); 127 con.Output("No such category as {0}", null, categoryName);
128 } 128 }
129 else 129 else
130 { 130 {
@@ -150,14 +150,14 @@ namespace OpenSim.Framework.Monitoring
150 } 150 }
151 else 151 else
152 { 152 {
153 con.OutputFormat( 153 con.Output(
154 "No such stat {0} in {1}.{2}", statName, categoryName, containerName); 154 "No such stat {0} in {1}.{2}", null, statName, categoryName, containerName);
155 } 155 }
156 } 156 }
157 } 157 }
158 else 158 else
159 { 159 {
160 con.OutputFormat("No such container {0} in category {1}", containerName, categoryName); 160 con.Output("No such container {0} in category {1}", null, containerName, categoryName);
161 } 161 }
162 } 162 }
163 } 163 }
diff --git a/OpenSim/Framework/Monitoring/WorkManager.cs b/OpenSim/Framework/Monitoring/WorkManager.cs
index c6d97e1..f6e0799 100644..100755
--- a/OpenSim/Framework/Monitoring/WorkManager.cs
+++ b/OpenSim/Framework/Monitoring/WorkManager.cs
@@ -215,23 +215,23 @@ namespace OpenSim.Framework.Monitoring
215 if (subCommand == "stop") 215 if (subCommand == "stop")
216 { 216 {
217 JobEngine.Stop(); 217 JobEngine.Stop();
218 MainConsole.Instance.OutputFormat("Stopped job engine."); 218 MainConsole.Instance.Output("Stopped job engine.");
219 } 219 }
220 else if (subCommand == "start") 220 else if (subCommand == "start")
221 { 221 {
222 JobEngine.Start(); 222 JobEngine.Start();
223 MainConsole.Instance.OutputFormat("Started job engine."); 223 MainConsole.Instance.Output("Started job engine.");
224 } 224 }
225 else if (subCommand == "status") 225 else if (subCommand == "status")
226 { 226 {
227 MainConsole.Instance.OutputFormat("Job engine running: {0}", JobEngine.IsRunning); 227 MainConsole.Instance.Output("Job engine running: {0}", null, JobEngine.IsRunning);
228 228
229 JobEngine.Job job = JobEngine.CurrentJob; 229 JobEngine.Job job = JobEngine.CurrentJob;
230 MainConsole.Instance.OutputFormat("Current job {0}", job != null ? job.Name : "none"); 230 MainConsole.Instance.Output("Current job {0}", null, job != null ? job.Name : "none");
231 231
232 MainConsole.Instance.OutputFormat( 232 MainConsole.Instance.Output(
233 "Jobs waiting: {0}", JobEngine.IsRunning ? JobEngine.JobsWaiting.ToString() : "n/a"); 233 "Jobs waiting: {0}", null, JobEngine.IsRunning ? JobEngine.JobsWaiting.ToString() : "n/a");
234 MainConsole.Instance.OutputFormat("Log Level: {0}", JobEngine.LogLevel); 234 MainConsole.Instance.Output("Log Level: {0}", null, JobEngine.LogLevel);
235 } 235 }
236 else if (subCommand == "log") 236 else if (subCommand == "log")
237 { 237 {
@@ -246,12 +246,12 @@ namespace OpenSim.Framework.Monitoring
246 // if (ConsoleUtil.TryParseConsoleInt(MainConsole.Instance, args[4], out logLevel)) 246 // if (ConsoleUtil.TryParseConsoleInt(MainConsole.Instance, args[4], out logLevel))
247 // { 247 // {
248 JobEngine.LogLevel = logLevel; 248 JobEngine.LogLevel = logLevel;
249 MainConsole.Instance.OutputFormat("Set debug log level to {0}", JobEngine.LogLevel); 249 MainConsole.Instance.Output("Set debug log level to {0}", null, JobEngine.LogLevel);
250 // } 250 // }
251 } 251 }
252 else 252 else
253 { 253 {
254 MainConsole.Instance.OutputFormat("Unrecognized job engine subcommand {0}", subCommand); 254 MainConsole.Instance.Output("Unrecognized job engine subcommand {0}", null, subCommand);
255 } 255 }
256 } 256 }
257 } 257 }
diff --git a/OpenSim/Framework/PluginManager.cs b/OpenSim/Framework/PluginManager.cs
index 0c94fcb..c5e860d 100644..100755
--- a/OpenSim/Framework/PluginManager.cs
+++ b/OpenSim/Framework/PluginManager.cs
@@ -129,7 +129,7 @@ namespace OpenSim.Framework
129 } 129 }
130 130
131 Addin addin = addins[ndx]; 131 Addin addin = addins[ndx];
132 MainConsole.Instance.OutputFormat("Uninstalling plugin {0}", addin.Id); 132 MainConsole.Instance.Output("Uninstalling plugin {0}", null, addin.Id);
133 AddinManager.Registry.DisableAddin(addin.Id); 133 AddinManager.Registry.DisableAddin(addin.Id);
134 addin.Enabled = false; 134 addin.Enabled = false;
135 IProgressStatus ps = new ConsoleProgressStatus(false); 135 IProgressStatus ps = new ConsoleProgressStatus(false);
@@ -487,7 +487,7 @@ namespace OpenSim.Framework
487 } 487 }
488 else 488 else
489 { 489 {
490 MainConsole.Instance.OutputFormat("Not Enabled in this domain {0}", addin.Name); 490 MainConsole.Instance.Output("Not Enabled in this domain {0}", null, addin.Name);
491 } 491 }
492 return; 492 return;
493 } 493 }
@@ -503,7 +503,7 @@ namespace OpenSim.Framework
503 503
504 foreach (Addin addin in addins) 504 foreach (Addin addin in addins)
505 { 505 {
506 MainConsole.Instance.OutputFormat("Addin {0}", addin.Name); 506 MainConsole.Instance.Output("Addin {0}", null, addin.Name);
507 } 507 }
508 } 508 }
509 509
diff --git a/OpenSim/Framework/RegionInfo.cs b/OpenSim/Framework/RegionInfo.cs
index 98ef5d5..5a3b814 100644..100755
--- a/OpenSim/Framework/RegionInfo.cs
+++ b/OpenSim/Framework/RegionInfo.cs
@@ -528,7 +528,7 @@ namespace OpenSim.Framework
528 { 528 {
529 while (name.Trim() == string.Empty) 529 while (name.Trim() == string.Empty)
530 { 530 {
531 name = MainConsole.Instance.CmdPrompt("New region name", name); 531 name = MainConsole.Instance.Prompt("New region name", name);
532 if (name.Trim() == string.Empty) 532 if (name.Trim() == string.Empty)
533 { 533 {
534 MainConsole.Instance.Output("Cannot interactively create region with no name"); 534 MainConsole.Instance.Output("Cannot interactively create region with no name");
@@ -570,7 +570,7 @@ namespace OpenSim.Framework
570 UUID newID = UUID.Random(); 570 UUID newID = UUID.Random();
571 while (RegionID == UUID.Zero) 571 while (RegionID == UUID.Zero)
572 { 572 {
573 regionUUID = MainConsole.Instance.CmdPrompt("RegionUUID", newID.ToString()); 573 regionUUID = MainConsole.Instance.Prompt("RegionUUID", newID.ToString());
574 if (!UUID.TryParse(regionUUID.Trim(), out RegionID)) 574 if (!UUID.TryParse(regionUUID.Trim(), out RegionID))
575 { 575 {
576 MainConsole.Instance.Output("RegionUUID must be a valid UUID"); 576 MainConsole.Instance.Output("RegionUUID must be a valid UUID");
@@ -587,7 +587,7 @@ namespace OpenSim.Framework
587 string location = config.GetString("Location", String.Empty); 587 string location = config.GetString("Location", String.Empty);
588 if (location == String.Empty) 588 if (location == String.Empty)
589 { 589 {
590 location = MainConsole.Instance.CmdPrompt("Region Location", "1000,1000"); 590 location = MainConsole.Instance.Prompt("Region Location", "1000,1000");
591 config.Set("Location", location); 591 config.Set("Location", location);
592 } 592 }
593 593
@@ -623,7 +623,7 @@ namespace OpenSim.Framework
623 } 623 }
624 else 624 else
625 { 625 {
626 address = IPAddress.Parse(MainConsole.Instance.CmdPrompt("Internal IP address", "0.0.0.0")); 626 address = IPAddress.Parse(MainConsole.Instance.Prompt("Internal IP address", "0.0.0.0"));
627 config.Set("InternalAddress", address.ToString()); 627 config.Set("InternalAddress", address.ToString());
628 } 628 }
629 629
@@ -637,7 +637,7 @@ namespace OpenSim.Framework
637 } 637 }
638 else 638 else
639 { 639 {
640 port = Convert.ToInt32(MainConsole.Instance.CmdPrompt("Internal port", "9000")); 640 port = Convert.ToInt32(MainConsole.Instance.Prompt("Internal port", "9000"));
641 config.Set("InternalPort", port); 641 config.Set("InternalPort", port);
642 } 642 }
643 m_internalEndPoint = new IPEndPoint(address, port); 643 m_internalEndPoint = new IPEndPoint(address, port);
@@ -652,7 +652,7 @@ namespace OpenSim.Framework
652 else 652 else
653 { 653 {
654 if (creatingNew) 654 if (creatingNew)
655 m_resolveAddress = Convert.ToBoolean(MainConsole.Instance.CmdPrompt("Resolve hostname to IP on start (for running inside Docker)", "False")); 655 m_resolveAddress = Convert.ToBoolean(MainConsole.Instance.Prompt("Resolve hostname to IP on start (for running inside Docker)", "False"));
656 656
657 config.Set("ResolveAddress", m_resolveAddress.ToString()); 657 config.Set("ResolveAddress", m_resolveAddress.ToString());
658 } 658 }
@@ -667,7 +667,7 @@ namespace OpenSim.Framework
667 } 667 }
668 else 668 else
669 { 669 {
670 externalName = MainConsole.Instance.CmdPrompt("External host name", "SYSTEMIP"); 670 externalName = MainConsole.Instance.Prompt("External host name", "SYSTEMIP");
671 config.Set("ExternalHostName", externalName); 671 config.Set("ExternalHostName", externalName);
672 } 672 }
673 if (externalName == "SYSTEMIP") 673 if (externalName == "SYSTEMIP")
diff --git a/OpenSim/Framework/Servers/MainServer.cs b/OpenSim/Framework/Servers/MainServer.cs
index 48a3a82..f4662fe 100644..100755
--- a/OpenSim/Framework/Servers/MainServer.cs
+++ b/OpenSim/Framework/Servers/MainServer.cs
@@ -192,35 +192,35 @@ namespace OpenSim.Framework.Servers
192 192
193 if (!int.TryParse(rawNewDebug, out newDebug)) 193 if (!int.TryParse(rawNewDebug, out newDebug))
194 { 194 {
195 MainConsole.Instance.OutputFormat("{0} is not a valid debug level", rawNewDebug); 195 MainConsole.Instance.Output("{0} is not a valid debug level", null, rawNewDebug);
196 return; 196 return;
197 } 197 }
198 198
199 if (newDebug < 0 || newDebug > 6) 199 if (newDebug < 0 || newDebug > 6)
200 { 200 {
201 MainConsole.Instance.OutputFormat("{0} is outside the valid debug level range of 0..6", newDebug); 201 MainConsole.Instance.Output("{0} is outside the valid debug level range of 0..6", null, newDebug);
202 return; 202 return;
203 } 203 }
204 204
205 if (allReqs || inReqs) 205 if (allReqs || inReqs)
206 { 206 {
207 MainServer.DebugLevel = newDebug; 207 MainServer.DebugLevel = newDebug;
208 MainConsole.Instance.OutputFormat("IN debug level set to {0}", newDebug); 208 MainConsole.Instance.Output("IN debug level set to {0}", null, newDebug);
209 } 209 }
210 210
211 if (allReqs || outReqs) 211 if (allReqs || outReqs)
212 { 212 {
213 WebUtil.DebugLevel = newDebug; 213 WebUtil.DebugLevel = newDebug;
214 MainConsole.Instance.OutputFormat("OUT debug level set to {0}", newDebug); 214 MainConsole.Instance.Output("OUT debug level set to {0}", null, newDebug);
215 } 215 }
216 } 216 }
217 else 217 else
218 { 218 {
219 if (allReqs || inReqs) 219 if (allReqs || inReqs)
220 MainConsole.Instance.OutputFormat("Current IN debug level is {0}", MainServer.DebugLevel); 220 MainConsole.Instance.Output("Current IN debug level is {0}", null, DebugLevel);
221 221
222 if (allReqs || outReqs) 222 if (allReqs || outReqs)
223 MainConsole.Instance.OutputFormat("Current OUT debug level is {0}", WebUtil.DebugLevel); 223 MainConsole.Instance.Output("Current OUT debug level is {0}", null, WebUtil.DebugLevel);
224 } 224 }
225 } 225 }
226 226
diff --git a/OpenSim/Framework/Servers/ServerBase.cs b/OpenSim/Framework/Servers/ServerBase.cs
index 858098c..78341d4 100644..100755
--- a/OpenSim/Framework/Servers/ServerBase.cs
+++ b/OpenSim/Framework/Servers/ServerBase.cs
@@ -492,18 +492,18 @@ namespace OpenSim.Framework.Servers
492 492
493 if (!int.TryParse(rawLevel, out newLevel)) 493 if (!int.TryParse(rawLevel, out newLevel))
494 { 494 {
495 MainConsole.Instance.OutputFormat("{0} is not a valid debug level", rawLevel); 495 MainConsole.Instance.Output("{0} is not a valid debug level", null, rawLevel);
496 return; 496 return;
497 } 497 }
498 498
499 if (newLevel < 0 || newLevel > Util.MAX_THREADPOOL_LEVEL) 499 if (newLevel < 0 || newLevel > Util.MAX_THREADPOOL_LEVEL)
500 { 500 {
501 MainConsole.Instance.OutputFormat("{0} is outside the valid debug level range of 0.." + Util.MAX_THREADPOOL_LEVEL, newLevel); 501 MainConsole.Instance.Output("{0} is outside the valid debug level range of 0.." + Util.MAX_THREADPOOL_LEVEL, null, newLevel);
502 return; 502 return;
503 } 503 }
504 504
505 Util.LogThreadPool = newLevel; 505 Util.LogThreadPool = newLevel;
506 MainConsole.Instance.OutputFormat("LogThreadPool set to {0}", newLevel); 506 MainConsole.Instance.Output("LogThreadPool set to {0}", null, newLevel);
507 } 507 }
508 508
509 private void HandleForceGc(string module, string[] args) 509 private void HandleForceGc(string module, string[] args)
@@ -991,9 +991,9 @@ namespace OpenSim.Framework.Servers
991 } 991 }
992 992
993 if (Watchdog.AbortThread(threadId)) 993 if (Watchdog.AbortThread(threadId))
994 MainConsole.Instance.OutputFormat("Aborted thread with id {0}", threadId); 994 MainConsole.Instance.Output("Aborted thread with id {0}", null, threadId);
995 else 995 else
996 MainConsole.Instance.OutputFormat("ERROR - Thread with id {0} not found in managed threads", threadId); 996 MainConsole.Instance.Output("ERROR - Thread with id {0} not found in managed threads", null, threadId);
997 } 997 }
998 998
999 /// <summary> 999 /// <summary>
@@ -1020,7 +1020,7 @@ namespace OpenSim.Framework.Servers
1020 protected void Notice(string format, params object[] components) 1020 protected void Notice(string format, params object[] components)
1021 { 1021 {
1022 if (m_console != null) 1022 if (m_console != null)
1023 m_console.OutputFormat(format, components); 1023 m_console.Output(format, null, components);
1024 } 1024 }
1025 1025
1026 public virtual void Shutdown() 1026 public virtual void Shutdown()
diff --git a/OpenSim/Region/Application/OpenSim.cs b/OpenSim/Region/Application/OpenSim.cs
index ee4ddf4..6a56a36 100644..100755
--- a/OpenSim/Region/Application/OpenSim.cs
+++ b/OpenSim/Region/Application/OpenSim.cs
@@ -782,8 +782,8 @@ namespace OpenSim
782 Scene existingScene; 782 Scene existingScene;
783 if (SceneManager.TryGetScene(regInfo.RegionID, out existingScene)) 783 if (SceneManager.TryGetScene(regInfo.RegionID, out existingScene))
784 { 784 {
785 MainConsole.Instance.OutputFormat( 785 MainConsole.Instance.Output(
786 "ERROR: Cannot create region {0} with ID {1}, this ID is already assigned to region {2}", 786 "ERROR: Cannot create region {0} with ID {1}, this ID is already assigned to region {2}", null,
787 regInfo.RegionName, regInfo.RegionID, existingScene.RegionInfo.RegionName); 787 regInfo.RegionName, regInfo.RegionID, existingScene.RegionInfo.RegionName);
788 788
789 return; 789 return;
@@ -980,7 +980,7 @@ namespace OpenSim
980 SceneManager.ForEachSelectedScene( 980 SceneManager.ForEachSelectedScene(
981 scene => 981 scene =>
982 { 982 {
983 MainConsole.Instance.OutputFormat("Loaded region modules in {0} are:", scene.Name); 983 MainConsole.Instance.Output("Loaded region modules in {0} are:", null, scene.Name);
984 984
985 List<IRegionModuleBase> sharedModules = new List<IRegionModuleBase>(); 985 List<IRegionModuleBase> sharedModules = new List<IRegionModuleBase>();
986 List<IRegionModuleBase> nonSharedModules = new List<IRegionModuleBase>(); 986 List<IRegionModuleBase> nonSharedModules = new List<IRegionModuleBase>();
@@ -994,10 +994,10 @@ namespace OpenSim
994 } 994 }
995 995
996 foreach (IRegionModuleBase module in sharedModules.OrderBy(m => m.Name)) 996 foreach (IRegionModuleBase module in sharedModules.OrderBy(m => m.Name))
997 MainConsole.Instance.OutputFormat("New Region Module (Shared): {0}", module.Name); 997 MainConsole.Instance.Output("New Region Module (Shared): {0}", null, module.Name);
998 998
999 foreach (IRegionModuleBase module in nonSharedModules.OrderBy(m => m.Name)) 999 foreach (IRegionModuleBase module in nonSharedModules.OrderBy(m => m.Name))
1000 MainConsole.Instance.OutputFormat("New Region Module (Non-Shared): {0}", module.Name); 1000 MainConsole.Instance.Output("New Region Module (Non-Shared): {0}", null, module.Name);
1001 } 1001 }
1002 ); 1002 );
1003 1003
diff --git a/OpenSim/Region/Application/OpenSimBase.cs b/OpenSim/Region/Application/OpenSimBase.cs
index 7a221c4..ed0f496 100644..100755
--- a/OpenSim/Region/Application/OpenSimBase.cs
+++ b/OpenSim/Region/Application/OpenSimBase.cs
@@ -593,14 +593,14 @@ namespace OpenSim
593 estateOwnerPassword = Config.Configs[ESTATE_SECTION_NAME].GetString("DefaultEstateOwnerPassword", null); 593 estateOwnerPassword = Config.Configs[ESTATE_SECTION_NAME].GetString("DefaultEstateOwnerPassword", null);
594 } 594 }
595 595
596 MainConsole.Instance.OutputFormat("Estate {0} has no owner set.", regionInfo.EstateSettings.EstateName); 596 MainConsole.Instance.Output("Estate {0} has no owner set.", null, regionInfo.EstateSettings.EstateName);
597 List<char> excluded = new List<char>(new char[1]{' '}); 597 List<char> excluded = new List<char>(new char[1]{' '});
598 598
599 599
600 if (estateOwnerFirstName == null || estateOwnerLastName == null) 600 if (estateOwnerFirstName == null || estateOwnerLastName == null)
601 { 601 {
602 estateOwnerFirstName = MainConsole.Instance.CmdPrompt("Estate owner first name", "Test", excluded); 602 estateOwnerFirstName = MainConsole.Instance.Prompt("Estate owner first name", "Test", excluded);
603 estateOwnerLastName = MainConsole.Instance.CmdPrompt("Estate owner last name", "User", excluded); 603 estateOwnerLastName = MainConsole.Instance.Prompt("Estate owner last name", "User", excluded);
604 } 604 }
605 605
606 UserAccount account 606 UserAccount account
@@ -624,13 +624,13 @@ namespace OpenSim
624 if (scene.UserAccountService is UserAccountService) 624 if (scene.UserAccountService is UserAccountService)
625 { 625 {
626 if (estateOwnerPassword == null) 626 if (estateOwnerPassword == null)
627 estateOwnerPassword = MainConsole.Instance.PasswdPrompt("Password"); 627 estateOwnerPassword = MainConsole.Instance.Prompt("Password", null, null, false);
628 628
629 if (estateOwnerEMail == null) 629 if (estateOwnerEMail == null)
630 estateOwnerEMail = MainConsole.Instance.CmdPrompt("Email"); 630 estateOwnerEMail = MainConsole.Instance.Prompt("Email");
631 631
632 if (rawEstateOwnerUuid == null) 632 if (rawEstateOwnerUuid == null)
633 rawEstateOwnerUuid = MainConsole.Instance.CmdPrompt("User ID", UUID.Random().ToString()); 633 rawEstateOwnerUuid = MainConsole.Instance.Prompt("User ID", UUID.Random().ToString());
634 634
635 UUID estateOwnerUuid = UUID.Zero; 635 UUID estateOwnerUuid = UUID.Zero;
636 if (!UUID.TryParse(rawEstateOwnerUuid, out estateOwnerUuid)) 636 if (!UUID.TryParse(rawEstateOwnerUuid, out estateOwnerUuid))
@@ -999,11 +999,11 @@ namespace OpenSim
999 if (!string.IsNullOrEmpty(estateName)) 999 if (!string.IsNullOrEmpty(estateName))
1000 newName = estateName; 1000 newName = estateName;
1001 else 1001 else
1002 newName = MainConsole.Instance.CmdPrompt("New estate name", regInfo.EstateSettings.EstateName); 1002 newName = MainConsole.Instance.Prompt("New estate name", regInfo.EstateSettings.EstateName);
1003 1003
1004 if (estatesByName.ContainsKey(newName)) 1004 if (estatesByName.ContainsKey(newName))
1005 { 1005 {
1006 MainConsole.Instance.OutputFormat("An estate named {0} already exists. Please try again.", newName); 1006 MainConsole.Instance.Output("An estate named {0} already exists. Please try again.", null, newName);
1007 return false; 1007 return false;
1008 } 1008 }
1009 1009
@@ -1086,7 +1086,7 @@ namespace OpenSim
1086 else 1086 else
1087 { 1087 {
1088 string response 1088 string response
1089 = MainConsole.Instance.CmdPrompt( 1089 = MainConsole.Instance.Prompt(
1090 string.Format( 1090 string.Format(
1091 "Do you wish to join region {0} to an existing estate (yes/no)?", regInfo.RegionName), 1091 "Do you wish to join region {0} to an existing estate (yes/no)?", regInfo.RegionName),
1092 "yes", 1092 "yes",
@@ -1103,7 +1103,7 @@ namespace OpenSim
1103 { 1103 {
1104 string[] estateNames = estatesByName.Keys.ToArray(); 1104 string[] estateNames = estatesByName.Keys.ToArray();
1105 response 1105 response
1106 = MainConsole.Instance.CmdPrompt( 1106 = MainConsole.Instance.Prompt(
1107 string.Format( 1107 string.Format(
1108 "Name of estate to join. Existing estate names are ({0})", 1108 "Name of estate to join. Existing estate names are ({0})",
1109 string.Join(", ", estateNames)), 1109 string.Join(", ", estateNames)),
diff --git a/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs b/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs
index 4e451b5..8ac348e 100644..100755
--- a/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs
+++ b/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs
@@ -150,26 +150,27 @@ namespace OpenSim.Region.ClientStack.Linden
150 150
151 if (!(args.Length == 3 && int.TryParse(args[2], out debugLevel))) 151 if (!(args.Length == 3 && int.TryParse(args[2], out debugLevel)))
152 { 152 {
153 MainConsole.Instance.OutputFormat("Usage: debug eq [0|1|2]"); 153 MainConsole.Instance.Output("Usage: debug eq [0|1|2]");
154 } 154 }
155 else 155 else
156 { 156 {
157 DebugLevel = debugLevel; 157 DebugLevel = debugLevel;
158 MainConsole.Instance.OutputFormat( 158 MainConsole.Instance.Output(
159 "Set event queue debug level to {0} in {1}", DebugLevel, m_scene.RegionInfo.RegionName); 159 "Set event queue debug level to {0} in {1}", null, DebugLevel, m_scene.RegionInfo.RegionName);
160 } 160 }
161 } 161 }
162 162
163 protected void HandleShowEq(string module, string[] args) 163 protected void HandleShowEq(string module, string[] args)
164 { 164 {
165 MainConsole.Instance.OutputFormat("For scene {0}", m_scene.Name); 165 MainConsole.Instance.Output("For scene {0}", null, m_scene.Name);
166 166
167 lock (queues) 167 lock (queues)
168 { 168 {
169 foreach (KeyValuePair<UUID, Queue<OSD>> kvp in queues) 169 foreach (KeyValuePair<UUID, Queue<OSD>> kvp in queues)
170 { 170 {
171 MainConsole.Instance.OutputFormat( 171 MainConsole.Instance.Output(
172 "For agent {0} there are {1} messages queued for send.", 172 "For agent {0} there are {1} messages queued for send.",
173 null,
173 kvp.Key, kvp.Value.Count); 174 kvp.Key, kvp.Value.Count);
174 } 175 }
175 } 176 }
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServerCommands.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServerCommands.cs
index a4d7eb9..be3c4b7 100644..100755
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServerCommands.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServerCommands.cs
@@ -222,7 +222,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
222 if (SceneManager.Instance.CurrentScene != null && SceneManager.Instance.CurrentScene != m_udpServer.Scene) 222 if (SceneManager.Instance.CurrentScene != null && SceneManager.Instance.CurrentScene != m_udpServer.Scene)
223 return; 223 return;
224 224
225 m_console.OutputFormat("Throttles for {0}", m_udpServer.Scene.Name); 225 m_console.Output("Throttles for {0}", null, m_udpServer.Scene.Name);
226 ConsoleDisplayList cdl = new ConsoleDisplayList(); 226 ConsoleDisplayList cdl = new ConsoleDisplayList();
227 cdl.AddRow("Adaptive throttles", m_udpServer.ThrottleRates.AdaptiveThrottlesEnabled); 227 cdl.AddRow("Adaptive throttles", m_udpServer.ThrottleRates.AdaptiveThrottlesEnabled);
228 228
@@ -238,7 +238,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
238 238
239 m_console.Output(cdl.ToString()); 239 m_console.Output(cdl.ToString());
240 240
241 m_console.OutputFormat("{0}\n", GetServerThrottlesReport(m_udpServer)); 241 m_console.Output("{0}\n", null, GetServerThrottlesReport(m_udpServer));
242 } 242 }
243 243
244 private string GetServerThrottlesReport(LLUDPServer udpServer) 244 private string GetServerThrottlesReport(LLUDPServer udpServer)
@@ -297,7 +297,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
297 297
298 if (args.Length != 7) 298 if (args.Length != 7)
299 { 299 {
300 MainConsole.Instance.OutputFormat("Usage: debug lludp data out <true|false> <avatar-first-name> <avatar-last-name>"); 300 MainConsole.Instance.Output("Usage: debug lludp data out <true|false> <avatar-first-name> <avatar-last-name>");
301 return; 301 return;
302 } 302 }
303 303
@@ -312,8 +312,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
312 { 312 {
313 if (sp.Firstname == firstName && sp.Lastname == lastName) 313 if (sp.Firstname == firstName && sp.Lastname == lastName)
314 { 314 {
315 MainConsole.Instance.OutputFormat( 315 MainConsole.Instance.Output(
316 "Data debug for {0} ({1}) set to {2} in {3}", 316 "Data debug for {0} ({1}) set to {2} in {3}",
317 null,
317 sp.Name, sp.IsChildAgent ? "child" : "root", level, m_udpServer.Scene.Name); 318 sp.Name, sp.IsChildAgent ? "child" : "root", level, m_udpServer.Scene.Name);
318 319
319 ((LLClientView)sp.ControllingClient).UDPClient.DebugDataOutLevel = level; 320 ((LLClientView)sp.ControllingClient).UDPClient.DebugDataOutLevel = level;
@@ -331,7 +332,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
331 332
332 if (!all && !one) 333 if (!all && !one)
333 { 334 {
334 MainConsole.Instance.OutputFormat( 335 MainConsole.Instance.Output(
335 "Usage: debug lludp throttles log <level> [<avatar-first-name> <avatar-last-name>]"); 336 "Usage: debug lludp throttles log <level> [<avatar-first-name> <avatar-last-name>]");
336 return; 337 return;
337 } 338 }
@@ -353,8 +354,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
353 { 354 {
354 if (all || (sp.Firstname == firstName && sp.Lastname == lastName)) 355 if (all || (sp.Firstname == firstName && sp.Lastname == lastName))
355 { 356 {
356 MainConsole.Instance.OutputFormat( 357 MainConsole.Instance.Output(
357 "Throttle log level for {0} ({1}) set to {2} in {3}", 358 "Throttle log level for {0} ({1}) set to {2} in {3}",
359 null,
358 sp.Name, sp.IsChildAgent ? "child" : "root", level, m_udpServer.Scene.Name); 360 sp.Name, sp.IsChildAgent ? "child" : "root", level, m_udpServer.Scene.Name);
359 361
360 ((LLClientView)sp.ControllingClient).UDPClient.ThrottleDebugLevel = level; 362 ((LLClientView)sp.ControllingClient).UDPClient.ThrottleDebugLevel = level;
@@ -372,7 +374,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
372 374
373 if (!all && !one) 375 if (!all && !one)
374 { 376 {
375 MainConsole.Instance.OutputFormat( 377 MainConsole.Instance.Output(
376 "Usage: debug lludp throttles set <param> <value> [<avatar-first-name> <avatar-last-name>]"); 378 "Usage: debug lludp throttles set <param> <value> [<avatar-first-name> <avatar-last-name>]");
377 return; 379 return;
378 } 380 }
@@ -399,8 +401,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
399 { 401 {
400 if (all || (sp.Firstname == firstName && sp.Lastname == lastName)) 402 if (all || (sp.Firstname == firstName && sp.Lastname == lastName))
401 { 403 {
402 MainConsole.Instance.OutputFormat( 404 MainConsole.Instance.Output(
403 "Setting param {0} to {1} for {2} ({3}) in {4}", 405 "Setting param {0} to {1} for {2} ({3}) in {4}",
406 null,
404 param, newValue, sp.Name, sp.IsChildAgent ? "child" : "root", m_udpServer.Scene.Name); 407 param, newValue, sp.Name, sp.IsChildAgent ? "child" : "root", m_udpServer.Scene.Name);
405 408
406 LLUDPClient udpClient = ((LLClientView)sp.ControllingClient).UDPClient; 409 LLUDPClient udpClient = ((LLClientView)sp.ControllingClient).UDPClient;
@@ -422,8 +425,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
422 { 425 {
423 if (all || (sp.Firstname == firstName && sp.Lastname == lastName)) 426 if (all || (sp.Firstname == firstName && sp.Lastname == lastName))
424 { 427 {
425 MainConsole.Instance.OutputFormat( 428 MainConsole.Instance.Output(
426 "Setting param {0} to {1} for {2} ({3}) in {4}", 429 "Setting param {0} to {1} for {2} ({3}) in {4}",
430 null,
427 param, newValue, sp.Name, sp.IsChildAgent ? "child" : "root", m_udpServer.Scene.Name); 431 param, newValue, sp.Name, sp.IsChildAgent ? "child" : "root", m_udpServer.Scene.Name);
428 432
429 LLUDPClient udpClient = ((LLClientView)sp.ControllingClient).UDPClient; 433 LLUDPClient udpClient = ((LLClientView)sp.ControllingClient).UDPClient;
@@ -443,8 +447,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
443 { 447 {
444 if (all || (sp.Firstname == firstName && sp.Lastname == lastName)) 448 if (all || (sp.Firstname == firstName && sp.Lastname == lastName))
445 { 449 {
446 MainConsole.Instance.OutputFormat( 450 MainConsole.Instance.Output(
447 "Setting param {0} to {1} for {2} ({3}) in {4}", 451 "Setting param {0} to {1} for {2} ({3}) in {4}",
452 null,
448 param, newValue, sp.Name, sp.IsChildAgent ? "child" : "root", m_udpServer.Scene.Name); 453 param, newValue, sp.Name, sp.IsChildAgent ? "child" : "root", m_udpServer.Scene.Name);
449 454
450 LLUDPClient udpClient = ((LLClientView)sp.ControllingClient).UDPClient; 455 LLUDPClient udpClient = ((LLClientView)sp.ControllingClient).UDPClient;
@@ -464,7 +469,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
464 469
465 if (!all && !one) 470 if (!all && !one)
466 { 471 {
467 MainConsole.Instance.OutputFormat( 472 MainConsole.Instance.Output(
468 "Usage: debug lludp throttles get [<avatar-first-name> <avatar-last-name>]"); 473 "Usage: debug lludp throttles get [<avatar-first-name> <avatar-last-name>]");
469 return; 474 return;
470 } 475 }
@@ -482,8 +487,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
482 { 487 {
483 if (all || (sp.Firstname == firstName && sp.Lastname == lastName)) 488 if (all || (sp.Firstname == firstName && sp.Lastname == lastName))
484 { 489 {
485 m_console.OutputFormat( 490 m_console.Output(
486 "Status for {0} ({1}) in {2}", 491 "Status for {0} ({1}) in {2}",
492 null,
487 sp.Name, sp.IsChildAgent ? "child" : "root", m_udpServer.Scene.Name); 493 sp.Name, sp.IsChildAgent ? "child" : "root", m_udpServer.Scene.Name);
488 494
489 LLUDPClient udpClient = ((LLClientView)sp.ControllingClient).UDPClient; 495 LLUDPClient udpClient = ((LLClientView)sp.ControllingClient).UDPClient;
@@ -504,7 +510,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
504 if (SceneManager.Instance.CurrentScene != null && SceneManager.Instance.CurrentScene != m_udpServer.Scene) 510 if (SceneManager.Instance.CurrentScene != null && SceneManager.Instance.CurrentScene != m_udpServer.Scene)
505 return; 511 return;
506 512
507 m_console.OutputFormat("Debug settings for {0}", m_udpServer.Scene.Name); 513 m_console.Output("Debug settings for {0}", null, m_udpServer.Scene.Name);
508 ConsoleDisplayList cdl = new ConsoleDisplayList(); 514 ConsoleDisplayList cdl = new ConsoleDisplayList();
509 515
510 long maxSceneDripRate = (long)m_udpServer.Throttle.MaxDripRate; 516 long maxSceneDripRate = (long)m_udpServer.Throttle.MaxDripRate;
@@ -527,7 +533,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
527 533
528 if (args.Length != 5) 534 if (args.Length != 5)
529 { 535 {
530 MainConsole.Instance.OutputFormat("Usage: debug lludp set <param> <value>"); 536 MainConsole.Instance.Output("Usage: debug lludp set <param> <value>");
531 return; 537 return;
532 } 538 }
533 539
@@ -555,7 +561,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
555 return; 561 return;
556 } 562 }
557 563
558 m_console.OutputFormat("{0} set to {1} in {2}", param, rawValue, m_udpServer.Scene.Name); 564 m_console.Output("{0} set to {1} in {2}", null, param, rawValue, m_udpServer.Scene.Name);
559 } 565 }
560 566
561/* not in use, nothing to set/get from lludp 567/* not in use, nothing to set/get from lludp
@@ -632,7 +638,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
632 } 638 }
633 else 639 else
634 { 640 {
635 MainConsole.Instance.OutputFormat("ERROR: Cannot specify a user name when setting default/all logging level"); 641 MainConsole.Instance.Output("ERROR: Cannot specify a user name when setting default/all logging level");
636 return; 642 return;
637 } 643 }
638 } 644 }
@@ -646,16 +652,18 @@ namespace OpenSim.Region.ClientStack.LindenUDP
646 { 652 {
647 m_udpServer.DefaultClientPacketDebugLevel = newDebug; 653 m_udpServer.DefaultClientPacketDebugLevel = newDebug;
648 654
649 MainConsole.Instance.OutputFormat( 655 MainConsole.Instance.Output(
650 "Packet debug for {0} clients set to {1} in {2}", 656 "Packet debug for {0} clients set to {1} in {2}",
657 null,
651 (setAll ? "all" : "future"), m_udpServer.DefaultClientPacketDebugLevel, m_udpServer.Scene.Name); 658 (setAll ? "all" : "future"), m_udpServer.DefaultClientPacketDebugLevel, m_udpServer.Scene.Name);
652 659
653 if (setAll) 660 if (setAll)
654 { 661 {
655 m_udpServer.Scene.ForEachScenePresence(sp => 662 m_udpServer.Scene.ForEachScenePresence(sp =>
656 { 663 {
657 MainConsole.Instance.OutputFormat( 664 MainConsole.Instance.Output(
658 "Packet debug for {0} ({1}) set to {2} in {3}", 665 "Packet debug for {0} ({1}) set to {2} in {3}",
666 null,
659 sp.Name, sp.IsChildAgent ? "child" : "root", newDebug, m_udpServer.Scene.Name); 667 sp.Name, sp.IsChildAgent ? "child" : "root", newDebug, m_udpServer.Scene.Name);
660 668
661 sp.ControllingClient.DebugPacketLevel = newDebug; 669 sp.ControllingClient.DebugPacketLevel = newDebug;
@@ -668,8 +676,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
668 { 676 {
669 if (name == null || sp.Name == name) 677 if (name == null || sp.Name == name)
670 { 678 {
671 MainConsole.Instance.OutputFormat( 679 MainConsole.Instance.Output(
672 "Packet debug for {0} ({1}) set to {2} in {3}", 680 "Packet debug for {0} ({1}) set to {2} in {3}",
681 null,
673 sp.Name, sp.IsChildAgent ? "child" : "root", newDebug, m_udpServer.Scene.Name); 682 sp.Name, sp.IsChildAgent ? "child" : "root", newDebug, m_udpServer.Scene.Name);
674 683
675 sp.ControllingClient.DebugPacketLevel = newDebug; 684 sp.ControllingClient.DebugPacketLevel = newDebug;
@@ -701,8 +710,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
701 710
702 if (subCommand == "add") 711 if (subCommand == "add")
703 { 712 {
704 MainConsole.Instance.OutputFormat( 713 MainConsole.Instance.Output(
705 "Adding packet {0} to {1} drop list for all connections in {2}", 714 "Adding packet {0} to {1} drop list for all connections in {2}",
715 null,
706 direction, packetName, m_udpServer.Scene.Name); 716 direction, packetName, m_udpServer.Scene.Name);
707 717
708 m_udpServer.Scene.ForEachScenePresence( 718 m_udpServer.Scene.ForEachScenePresence(
@@ -719,8 +729,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
719 } 729 }
720 else if (subCommand == "remove") 730 else if (subCommand == "remove")
721 { 731 {
722 MainConsole.Instance.OutputFormat( 732 MainConsole.Instance.Output(
723 "Removing packet {0} from {1} drop list for all connections in {2}", 733 "Removing packet {0} from {1} drop list for all connections in {2}",
734 null,
724 direction, packetName, m_udpServer.Scene.Name); 735 direction, packetName, m_udpServer.Scene.Name);
725 736
726 m_udpServer.Scene.ForEachScenePresence( 737 m_udpServer.Scene.ForEachScenePresence(
@@ -784,8 +795,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
784 795
785 m_udpServer.DiscardInboundAgentUpdates = !m_udpServer.DiscardInboundAgentUpdates; 796 m_udpServer.DiscardInboundAgentUpdates = !m_udpServer.DiscardInboundAgentUpdates;
786 797
787 MainConsole.Instance.OutputFormat( 798 MainConsole.Instance.Output(
788 "Discard AgentUpdates now {0} for {1}", m_udpServer.DiscardInboundAgentUpdates, m_udpServer.Scene.Name); 799 "Discard AgentUpdates now {0} for {1}", null, m_udpServer.DiscardInboundAgentUpdates, m_udpServer.Scene.Name);
789 } 800 }
790 801
791 private void HandleStatusCommand(string module, string[] args) 802 private void HandleStatusCommand(string module, string[] args)
@@ -793,14 +804,14 @@ namespace OpenSim.Region.ClientStack.LindenUDP
793 if (SceneManager.Instance.CurrentScene != null && SceneManager.Instance.CurrentScene != m_udpServer.Scene) 804 if (SceneManager.Instance.CurrentScene != null && SceneManager.Instance.CurrentScene != m_udpServer.Scene)
794 return; 805 return;
795 806
796 MainConsole.Instance.OutputFormat( 807 MainConsole.Instance.Output(
797 "IN LLUDP packet processing for {0} is {1}", m_udpServer.Scene.Name, m_udpServer.IsRunningInbound ? "enabled" : "disabled"); 808 "IN LLUDP packet processing for {0} is {1}", null, m_udpServer.Scene.Name, m_udpServer.IsRunningInbound ? "enabled" : "disabled");
798 809
799 MainConsole.Instance.OutputFormat( 810 MainConsole.Instance.Output(
800 "OUT LLUDP packet processing for {0} is {1}", m_udpServer.Scene.Name, m_udpServer.IsRunningOutbound ? "enabled" : "disabled"); 811 "OUT LLUDP packet processing for {0} is {1}", null, m_udpServer.Scene.Name, m_udpServer.IsRunningOutbound ? "enabled" : "disabled");
801 812
802 MainConsole.Instance.OutputFormat( 813 MainConsole.Instance.Output(
803 "Packet debug level for new clients is {0}", m_udpServer.DefaultClientPacketDebugLevel); 814 "Packet debug level for new clients is {0}", null, m_udpServer.DefaultClientPacketDebugLevel);
804 } 815 }
805 816
806 private void HandleOqreCommand(string module, string[] args) 817 private void HandleOqreCommand(string module, string[] args)
@@ -819,24 +830,25 @@ namespace OpenSim.Region.ClientStack.LindenUDP
819 if (subCommand == "stop") 830 if (subCommand == "stop")
820 { 831 {
821 m_udpServer.OqrEngine.Stop(); 832 m_udpServer.OqrEngine.Stop();
822 MainConsole.Instance.OutputFormat("Stopped OQRE for {0}", m_udpServer.Scene.Name); 833 MainConsole.Instance.Output("Stopped OQRE for {0}", null, m_udpServer.Scene.Name);
823 } 834 }
824 else if (subCommand == "start") 835 else if (subCommand == "start")
825 { 836 {
826 m_udpServer.OqrEngine.Start(); 837 m_udpServer.OqrEngine.Start();
827 MainConsole.Instance.OutputFormat("Started OQRE for {0}", m_udpServer.Scene.Name); 838 MainConsole.Instance.Output("Started OQRE for {0}", null, m_udpServer.Scene.Name);
828 } 839 }
829 else if (subCommand == "status") 840 else if (subCommand == "status")
830 { 841 {
831 MainConsole.Instance.OutputFormat("OQRE in {0}", m_udpServer.Scene.Name); 842 MainConsole.Instance.Output("OQRE in {0}", null, m_udpServer.Scene.Name);
832 MainConsole.Instance.OutputFormat("Running: {0}", m_udpServer.OqrEngine.IsRunning); 843 MainConsole.Instance.Output("Running: {0}", null, m_udpServer.OqrEngine.IsRunning);
833 MainConsole.Instance.OutputFormat( 844 MainConsole.Instance.Output(
834 "Requests waiting: {0}", 845 "Requests waiting: {0}",
846 null,
835 m_udpServer.OqrEngine.IsRunning ? m_udpServer.OqrEngine.JobsWaiting.ToString() : "n/a"); 847 m_udpServer.OqrEngine.IsRunning ? m_udpServer.OqrEngine.JobsWaiting.ToString() : "n/a");
836 } 848 }
837 else 849 else
838 { 850 {
839 MainConsole.Instance.OutputFormat("Unrecognized OQRE subcommand {0}", subCommand); 851 MainConsole.Instance.Output("Unrecognized OQRE subcommand {0}", null, subCommand);
840 } 852 }
841 } 853 }
842 } 854 }
diff --git a/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs b/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs
index d1cb5e8..b42759d 100644..100755
--- a/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs
+++ b/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs
@@ -1075,14 +1075,14 @@ namespace OpenSim.Region.CoreModules.Asset
1075 { 1075 {
1076 case "status": 1076 case "status":
1077 if (m_MemoryCacheEnabled) 1077 if (m_MemoryCacheEnabled)
1078 con.OutputFormat("Memory Cache: {0} assets", m_MemoryCache.Count); 1078 con.Output("Memory Cache: {0} assets", null, m_MemoryCache.Count);
1079 else 1079 else
1080 con.OutputFormat("Memory cache disabled"); 1080 con.Output("Memory cache disabled");
1081 1081
1082 if (m_FileCacheEnabled) 1082 if (m_FileCacheEnabled)
1083 { 1083 {
1084 int fileCount = GetFileCacheCount(m_CacheDirectory); 1084 int fileCount = GetFileCacheCount(m_CacheDirectory);
1085 con.OutputFormat("File Cache: {0} assets", fileCount); 1085 con.Output("File Cache: {0} assets", null, fileCount);
1086 } 1086 }
1087 else 1087 else
1088 { 1088 {
@@ -1099,7 +1099,7 @@ namespace OpenSim.Region.CoreModules.Asset
1099 { 1099 {
1100 string RegionID = s.Remove(0,s.IndexOf("_")).Replace(".fac",""); 1100 string RegionID = s.Remove(0,s.IndexOf("_")).Replace(".fac","");
1101 DateTime RegionDeepScanTMStamp = File.GetLastWriteTime(s); 1101 DateTime RegionDeepScanTMStamp = File.GetLastWriteTime(s);
1102 con.OutputFormat("Region: {0}, {1}", RegionID, RegionDeepScanTMStamp.ToString("MM/dd/yyyy hh:mm:ss")); 1102 con.Output("Region: {0}, {1}", null, RegionID, RegionDeepScanTMStamp.ToString("MM/dd/yyyy hh:mm:ss"));
1103 } 1103 }
1104 } 1104 }
1105 1105
@@ -1160,7 +1160,7 @@ namespace OpenSim.Region.CoreModules.Asset
1160 { 1160 {
1161 if(m_cleanupRunning) 1161 if(m_cleanupRunning)
1162 { 1162 {
1163 con.OutputFormat("Flotsam assets check already running"); 1163 con.Output("Flotsam assets check already running");
1164 return; 1164 return;
1165 } 1165 }
1166 m_cleanupRunning = true; 1166 m_cleanupRunning = true;
@@ -1192,7 +1192,7 @@ namespace OpenSim.Region.CoreModules.Asset
1192 } 1192 }
1193 m_cleanupRunning = false; 1193 m_cleanupRunning = false;
1194 } 1194 }
1195 con.OutputFormat("Completed check with {0} assets.", assetReferenceTotal); 1195 con.Output("Completed check with {0} assets.", null, assetReferenceTotal);
1196 }, null, "TouchAllSceneAssets", false); 1196 }, null, "TouchAllSceneAssets", false);
1197 1197
1198 break; 1198 break;
@@ -1200,7 +1200,7 @@ namespace OpenSim.Region.CoreModules.Asset
1200 case "expire": 1200 case "expire":
1201 if (cmdparams.Length < 3) 1201 if (cmdparams.Length < 3)
1202 { 1202 {
1203 con.OutputFormat("Invalid parameters for Expire, please specify a valid date & time", cmd); 1203 con.Output("Invalid parameters for Expire, please specify a valid date & time");
1204 break; 1204 break;
1205 } 1205 }
1206 1206
@@ -1218,18 +1218,18 @@ namespace OpenSim.Region.CoreModules.Asset
1218 1218
1219 if (!DateTime.TryParse(s_expirationDate, out expirationDate)) 1219 if (!DateTime.TryParse(s_expirationDate, out expirationDate))
1220 { 1220 {
1221 con.OutputFormat("{0} is not a valid date & time", cmd); 1221 con.Output("{0} is not a valid date & time", null, cmd);
1222 break; 1222 break;
1223 } 1223 }
1224 1224
1225 if (m_FileCacheEnabled) 1225 if (m_FileCacheEnabled)
1226 CleanExpiredFiles(m_CacheDirectory, expirationDate); 1226 CleanExpiredFiles(m_CacheDirectory, expirationDate);
1227 else 1227 else
1228 con.OutputFormat("File cache not active, not clearing."); 1228 con.Output("File cache not active, not clearing.");
1229 1229
1230 break; 1230 break;
1231 default: 1231 default:
1232 con.OutputFormat("Unknown command {0}", cmd); 1232 con.Output("Unknown command {0}", null, cmd);
1233 break; 1233 break;
1234 } 1234 }
1235 } 1235 }
diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
index 5205576..864fc79 100644..100755
--- a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
@@ -159,27 +159,27 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
159 159
160 if (!(args.Length == 4 && int.TryParse(args[3], out debugLevel))) 160 if (!(args.Length == 4 && int.TryParse(args[3], out debugLevel)))
161 { 161 {
162 MainConsole.Instance.OutputFormat("Usage: debug attachments log [0|1]"); 162 MainConsole.Instance.Output("Usage: debug attachments log [0|1]");
163 } 163 }
164 else 164 else
165 { 165 {
166 DebugLevel = debugLevel; 166 DebugLevel = debugLevel;
167 MainConsole.Instance.OutputFormat( 167 MainConsole.Instance.Output(
168 "Set attachments debug level to {0} in {1}", DebugLevel, m_scene.Name); 168 "Set attachments debug level to {0} in {1}", null, DebugLevel, m_scene.Name);
169 } 169 }
170 } 170 }
171 171
172 private void HandleDebugAttachmentsStatus(string module, string[] args) 172 private void HandleDebugAttachmentsStatus(string module, string[] args)
173 { 173 {
174 MainConsole.Instance.OutputFormat("Settings for {0}", m_scene.Name); 174 MainConsole.Instance.Output("Settings for {0}", null, m_scene.Name);
175 MainConsole.Instance.OutputFormat("Debug logging level: {0}", DebugLevel); 175 MainConsole.Instance.Output("Debug logging level: {0}", null, DebugLevel);
176 } 176 }
177 177
178 protected void HandleShowAttachmentsCommand(string module, string[] cmd) 178 protected void HandleShowAttachmentsCommand(string module, string[] cmd)
179 { 179 {
180 if (cmd.Length != 2 && cmd.Length < 4) 180 if (cmd.Length != 2 && cmd.Length < 4)
181 { 181 {
182 MainConsole.Instance.OutputFormat("Usage: attachments show [<first-name> <last-name>]"); 182 MainConsole.Instance.Output("Usage: attachments show [<first-name> <last-name>]");
183 return; 183 return;
184 } 184 }
185 185
diff --git a/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs b/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
index 1a0b7ba..777d020 100644..100755
--- a/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
@@ -1370,7 +1370,7 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
1370 rawTextureID += " (uploaded)"; 1370 rawTextureID += " (uploaded)";
1371 } 1371 }
1372 1372
1373 outputAction(BAKED_TEXTURES_REPORT_FORMAT, bt, rawTextureID); 1373 outputAction(BAKED_TEXTURES_REPORT_FORMAT, null, bt, rawTextureID);
1374 } 1374 }
1375 1375
1376 bool bakedTextureValid = m_scene.AvatarFactory.ValidateBakedTextureCache(sp); 1376 bool bakedTextureValid = m_scene.AvatarFactory.ValidateBakedTextureCache(sp);
diff --git a/OpenSim/Region/CoreModules/Avatar/Commands/UserCommandsModule.cs b/OpenSim/Region/CoreModules/Avatar/Commands/UserCommandsModule.cs
index cf65c47..d98f11a 100644..100755
--- a/OpenSim/Region/CoreModules/Avatar/Commands/UserCommandsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Commands/UserCommandsModule.cs
@@ -135,7 +135,7 @@ namespace OpenSim.Region.CoreModules.Avatars.Commands
135 { 135 {
136 if (cmd.Length < 5) 136 if (cmd.Length < 5)
137 { 137 {
138 MainConsole.Instance.OutputFormat("Usage: " + TeleportUserCommandSyntax); 138 MainConsole.Instance.Output("Usage: " + TeleportUserCommandSyntax);
139 return; 139 return;
140 } 140 }
141 141
@@ -147,7 +147,7 @@ namespace OpenSim.Region.CoreModules.Avatars.Commands
147 147
148 if (user == null) 148 if (user == null)
149 { 149 {
150 MainConsole.Instance.OutputFormat("No user found with name {0} {1}", firstName, lastName); 150 MainConsole.Instance.Output("No user found with name {0} {1}", null, firstName, lastName);
151 return; 151 return;
152 } 152 }
153 153
@@ -161,7 +161,7 @@ namespace OpenSim.Region.CoreModules.Avatars.Commands
161 161
162 if (!m.Success) 162 if (!m.Success)
163 { 163 {
164 MainConsole.Instance.OutputFormat("Invalid destination {0}", rawDestination); 164 MainConsole.Instance.Output("Invalid destination {0}", null, rawDestination);
165 return; 165 return;
166 } 166 }
167 } 167 }
@@ -169,8 +169,9 @@ namespace OpenSim.Region.CoreModules.Avatars.Commands
169 string regionName 169 string regionName
170 = m.Groups["regionName"].Success ? m.Groups["regionName"].Value : user.Scene.RegionInfo.RegionName; 170 = m.Groups["regionName"].Success ? m.Groups["regionName"].Value : user.Scene.RegionInfo.RegionName;
171 171
172 MainConsole.Instance.OutputFormat( 172 MainConsole.Instance.Output(
173 "Teleporting {0} to {1},{2},{3} in {4}", 173 "Teleporting {0} to {1},{2},{3} in {4}",
174 null,
174 user.Name, 175 user.Name,
175 m.Groups["x"], m.Groups["y"], m.Groups["z"], 176 m.Groups["x"], m.Groups["y"], m.Groups["z"],
176 regionName); 177 regionName);
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/MonitorModule.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/MonitorModule.cs
index fb3d31c..da103b5 100644..100755
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/MonitorModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/MonitorModule.cs
@@ -316,15 +316,17 @@ namespace OpenSim.Region.CoreModules.Framework.Monitoring
316 { 316 {
317 foreach (IMonitor monitor in m_staticMonitors) 317 foreach (IMonitor monitor in m_staticMonitors)
318 { 318 {
319 MainConsole.Instance.OutputFormat( 319 MainConsole.Instance.Output(
320 "[MONITOR MODULE]: {0} reports {1} = {2}", 320 "[MONITOR MODULE]: {0} reports {1} = {2}",
321 null,
321 m_scene.RegionInfo.RegionName, monitor.GetFriendlyName(), monitor.GetFriendlyValue()); 322 m_scene.RegionInfo.RegionName, monitor.GetFriendlyName(), monitor.GetFriendlyValue());
322 } 323 }
323 324
324 foreach (KeyValuePair<string, float> tuple in m_scene.StatsReporter.GetExtraSimStats()) 325 foreach (KeyValuePair<string, float> tuple in m_scene.StatsReporter.GetExtraSimStats())
325 { 326 {
326 MainConsole.Instance.OutputFormat( 327 MainConsole.Instance.Output(
327 "[MONITOR MODULE]: {0} reports {1} = {2}", 328 "[MONITOR MODULE]: {0} reports {1} = {2}",
329 null,
328 m_scene.RegionInfo.RegionName, tuple.Key, tuple.Value); 330 m_scene.RegionInfo.RegionName, tuple.Key, tuple.Value);
329 } 331 }
330 } 332 }
diff --git a/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs b/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs
index 3baf03d..cc2e611 100755
--- a/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs
@@ -1028,7 +1028,7 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement
1028 { 1028 {
1029 if (cmd.Length < 3) 1029 if (cmd.Length < 3)
1030 { 1030 {
1031 MainConsole.Instance.OutputFormat("Usage: show name <uuid>"); 1031 MainConsole.Instance.Output("Usage: show name <uuid>");
1032 return; 1032 return;
1033 } 1033 }
1034 1034
@@ -1040,7 +1040,7 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement
1040 1040
1041 if(!GetUser(userId, out ud)) 1041 if(!GetUser(userId, out ud))
1042 { 1042 {
1043 MainConsole.Instance.OutputFormat("No name known for user with id {0}", userId); 1043 MainConsole.Instance.Output("No name known for user with id {0}", null, userId);
1044 return; 1044 return;
1045 } 1045 }
1046 1046
diff --git a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
index b67cad7..6985549 100644..100755
--- a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
+++ b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
@@ -2528,7 +2528,7 @@ namespace OpenSim.Region.CoreModules.World.Land
2528 if (!(MainConsole.Instance.ConsoleScene == null || MainConsole.Instance.ConsoleScene == m_scene)) 2528 if (!(MainConsole.Instance.ConsoleScene == null || MainConsole.Instance.ConsoleScene == m_scene))
2529 return; 2529 return;
2530 2530
2531 string response = MainConsole.Instance.CmdPrompt( 2531 string response = MainConsole.Instance.Prompt(
2532 string.Format( 2532 string.Format(
2533 "Are you sure that you want to clear all land parcels from {0} (y or n)", m_scene.Name), 2533 "Are you sure that you want to clear all land parcels from {0} (y or n)", m_scene.Name),
2534 "n"); 2534 "n");
@@ -2536,11 +2536,11 @@ namespace OpenSim.Region.CoreModules.World.Land
2536 if (response.ToLower() == "y") 2536 if (response.ToLower() == "y")
2537 { 2537 {
2538 Clear(true); 2538 Clear(true);
2539 MainConsole.Instance.OutputFormat("Cleared all parcels from {0}", m_scene.Name); 2539 MainConsole.Instance.Output("Cleared all parcels from {0}", null, m_scene.Name);
2540 } 2540 }
2541 else 2541 else
2542 { 2542 {
2543 MainConsole.Instance.OutputFormat("Aborting clear of all parcels from {0}", m_scene.Name); 2543 MainConsole.Instance.Output("Aborting clear of all parcels from {0}", null, m_scene.Name);
2544 } 2544 }
2545 } 2545 }
2546 2546
@@ -2568,7 +2568,7 @@ namespace OpenSim.Region.CoreModules.World.Land
2568 { 2568 {
2569 if (!m_landList.TryGetValue(landLocalId, out lo)) 2569 if (!m_landList.TryGetValue(landLocalId, out lo))
2570 { 2570 {
2571 MainConsole.Instance.OutputFormat("No parcel found with local ID {0}", landLocalId); 2571 MainConsole.Instance.Output("No parcel found with local ID {0}", null, landLocalId);
2572 return; 2572 return;
2573 } 2573 }
2574 } 2574 }
diff --git a/OpenSim/Region/CoreModules/World/Objects/Commands/ObjectCommandsModule.cs b/OpenSim/Region/CoreModules/World/Objects/Commands/ObjectCommandsModule.cs
index 3d786dd..e118b66 100644..100755
--- a/OpenSim/Region/CoreModules/World/Objects/Commands/ObjectCommandsModule.cs
+++ b/OpenSim/Region/CoreModules/World/Objects/Commands/ObjectCommandsModule.cs
@@ -235,7 +235,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
235 235
236 sb.AppendFormat("{0} object(s) found in {1}\n", sceneObjects.Count, m_scene.Name); 236 sb.AppendFormat("{0} object(s) found in {1}\n", sceneObjects.Count, m_scene.Name);
237 237
238 m_console.OutputFormat(sb.ToString()); 238 m_console.Output(sb.ToString());
239 } 239 }
240 240
241 private void OutputSopsToConsole(Predicate<SceneObjectPart> searchPredicate, bool showFull) 241 private void OutputSopsToConsole(Predicate<SceneObjectPart> searchPredicate, bool showFull)
@@ -255,7 +255,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
255 255
256 sb.AppendFormat("{0} parts found in {1}\n", parts.Count, m_scene.Name); 256 sb.AppendFormat("{0} parts found in {1}\n", parts.Count, m_scene.Name);
257 257
258 m_console.OutputFormat(sb.ToString()); 258 m_console.Output(sb.ToString());
259 } 259 }
260 260
261 private void HandleShowObjectById(string module, string[] cmdparams) 261 private void HandleShowObjectById(string module, string[] cmdparams)
@@ -270,7 +270,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
270 270
271 if (mainParams.Count < 4) 271 if (mainParams.Count < 4)
272 { 272 {
273 m_console.OutputFormat("Usage: show object uuid <uuid>"); 273 m_console.Output("Usage: show object uuid <uuid>");
274 return; 274 return;
275 } 275 }
276 276
@@ -295,7 +295,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
295 StringBuilder sb = new StringBuilder(); 295 StringBuilder sb = new StringBuilder();
296 AddSceneObjectReport(sb, so, showFull); 296 AddSceneObjectReport(sb, so, showFull);
297 297
298 m_console.OutputFormat(sb.ToString()); 298 m_console.Output(sb.ToString());
299 } 299 }
300 300
301 private void HandleShowObjectByName(string module, string[] cmdparams) 301 private void HandleShowObjectByName(string module, string[] cmdparams)
@@ -313,7 +313,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
313 313
314 if (mainParams.Count < 4) 314 if (mainParams.Count < 4)
315 { 315 {
316 m_console.OutputFormat("Usage: show object name [--full] [--regex] <name>"); 316 m_console.Output("Usage: show object name [--full] [--regex] <name>");
317 return; 317 return;
318 } 318 }
319 319
@@ -346,7 +346,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
346 346
347 if (mainParams.Count < 4) 347 if (mainParams.Count < 4)
348 { 348 {
349 m_console.OutputFormat("Usage: show object owner <OwnerID>"); 349 m_console.Output("Usage: show object owner <OwnerID>");
350 return; 350 return;
351 } 351 }
352 352
@@ -372,7 +372,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
372 372
373 if (mainParams.Count < 5) 373 if (mainParams.Count < 5)
374 { 374 {
375 m_console.OutputFormat("Usage: show object pos [--full] <start-coord> to <end-coord>"); 375 m_console.Output("Usage: show object pos [--full] <start-coord> to <end-coord>");
376 return; 376 return;
377 } 377 }
378 378
@@ -401,7 +401,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
401 if (mainParams.Count < 4) 401 if (mainParams.Count < 4)
402 { 402 {
403 //m_console.OutputFormat("Usage: show part id [--full] <UUID-or-localID>"); 403 //m_console.OutputFormat("Usage: show part id [--full] <UUID-or-localID>");
404 m_console.OutputFormat("Usage: show part id <UUID-or-localID>"); 404 m_console.Output("Usage: show part id <UUID-or-localID>");
405 return; 405 return;
406 } 406 }
407 407
@@ -425,7 +425,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
425 StringBuilder sb = new StringBuilder(); 425 StringBuilder sb = new StringBuilder();
426 AddScenePartReport(sb, sop, true); 426 AddScenePartReport(sb, sop, true);
427 427
428 m_console.OutputFormat(sb.ToString()); 428 m_console.Output(sb.ToString());
429 } 429 }
430 430
431 private void HandleShowPartByPos(string module, string[] cmdparams) 431 private void HandleShowPartByPos(string module, string[] cmdparams)
@@ -442,7 +442,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
442 if (mainParams.Count < 5) 442 if (mainParams.Count < 5)
443 { 443 {
444 //m_console.OutputFormat("Usage: show part pos <start-coord> to <end-coord>"); 444 //m_console.OutputFormat("Usage: show part pos <start-coord> to <end-coord>");
445 m_console.OutputFormat("Usage: show part pos [--full] <start-coord> to <end-coord>"); 445 m_console.Output("Usage: show part pos [--full] <start-coord> to <end-coord>");
446 return; 446 return;
447 } 447 }
448 448
@@ -451,7 +451,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
451 451
452 if (!ConsoleUtil.TryParseConsoleMinVector(rawConsoleStartVector, out startVector)) 452 if (!ConsoleUtil.TryParseConsoleMinVector(rawConsoleStartVector, out startVector))
453 { 453 {
454 m_console.OutputFormat("Error: Start vector '{0}' does not have a valid format", rawConsoleStartVector); 454 m_console.Output("Error: Start vector '{0}' does not have a valid format", null, rawConsoleStartVector);
455 return; 455 return;
456 } 456 }
457 457
@@ -460,7 +460,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
460 460
461 if (!ConsoleUtil.TryParseConsoleMaxVector(rawConsoleEndVector, out endVector)) 461 if (!ConsoleUtil.TryParseConsoleMaxVector(rawConsoleEndVector, out endVector))
462 { 462 {
463 m_console.OutputFormat("Error: End vector '{0}' does not have a valid format", rawConsoleEndVector); 463 m_console.Output("Error: End vector '{0}' does not have a valid format", null, rawConsoleEndVector);
464 return; 464 return;
465 } 465 }
466 466
@@ -482,7 +482,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
482 482
483 if (mainParams.Count < 4) 483 if (mainParams.Count < 4)
484 { 484 {
485 m_console.OutputFormat("Usage: show part name [--regex] <name>"); 485 m_console.Output("Usage: show part name [--regex] <name>");
486 //m_console.OutputFormat("Usage: show part name [--full] [--regex] <name>"); 486 //m_console.OutputFormat("Usage: show part name [--full] [--regex] <name>");
487 return; 487 return;
488 } 488 }
@@ -511,7 +511,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
511 511
512 if (cmdparams.Length < 4) 512 if (cmdparams.Length < 4)
513 { 513 {
514 m_console.OutputFormat("Usage: dump object id <UUID-or-localID>"); 514 m_console.Output("Usage: dump object id <UUID-or-localID>");
515 return; 515 return;
516 } 516 }
517 517
@@ -546,7 +546,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
546 SceneObjectSerializer.ToOriginalXmlFormat(so, xtw, true); 546 SceneObjectSerializer.ToOriginalXmlFormat(so, xtw, true);
547 } 547 }
548 548
549 m_console.OutputFormat("Object dumped to file {0}", fileName); 549 m_console.Output("Object dumped to file {0}", fileName);
550 } 550 }
551 551
552 /// <summary> 552 /// <summary>
@@ -809,7 +809,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
809 if(so.IsAttachment) 809 if(so.IsAttachment)
810 { 810 {
811 requireConfirmation = true; 811 requireConfirmation = true;
812 m_console.OutputFormat("Warning: object with uuid {0} is a attachment", uuid); 812 m_console.Output("Warning: object with uuid {0} is a attachment", null, uuid);
813 } 813 }
814 } 814 }
815 break; 815 break;
@@ -844,7 +844,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
844 }); 844 });
845 845
846 if (deletes.Count == 0) 846 if (deletes.Count == 0)
847 m_console.OutputFormat("No objects were found outside region bounds"); 847 m_console.Output("No objects were found outside region bounds");
848 848
849 break; 849 break;
850 850
@@ -853,7 +853,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
853 break; 853 break;
854 854
855 default: 855 default:
856 m_console.OutputFormat("Unrecognized mode {0}", mode); 856 m_console.Output("Unrecognized mode {0}", null, mode);
857 return; 857 return;
858 } 858 }
859 859
@@ -862,7 +862,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
862 862
863 if (requireConfirmation) 863 if (requireConfirmation)
864 { 864 {
865 string response = MainConsole.Instance.CmdPrompt( 865 string response = MainConsole.Instance.Prompt(
866 string.Format( 866 string.Format(
867 "Are you sure that you want to delete {0} objects from {1}", 867 "Are you sure that you want to delete {0} objects from {1}",
868 deletes.Count, m_scene.RegionInfo.RegionName), 868 deletes.Count, m_scene.RegionInfo.RegionName),
@@ -870,18 +870,18 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
870 870
871 if (response.ToLower() != "y") 871 if (response.ToLower() != "y")
872 { 872 {
873 MainConsole.Instance.OutputFormat( 873 MainConsole.Instance.Output(
874 "Aborting delete of {0} objects from {1}", deletes.Count, m_scene.RegionInfo.RegionName); 874 "Aborting delete of {0} objects from {1}", null, deletes.Count, m_scene.RegionInfo.RegionName);
875 875
876 return; 876 return;
877 } 877 }
878 } 878 }
879 879
880 m_console.OutputFormat("Deleting {0} objects in {1}", deletes.Count, m_scene.RegionInfo.RegionName); 880 m_console.Output("Deleting {0} objects in {1}", null, deletes.Count, m_scene.RegionInfo.RegionName);
881 881
882 foreach (SceneObjectGroup g in deletes) 882 foreach (SceneObjectGroup g in deletes)
883 { 883 {
884 m_console.OutputFormat("Deleting object {0} {1}", g.UUID, g.Name); 884 m_console.Output("Deleting object {0} {1}", null, g.UUID, g.Name);
885 m_scene.DeleteSceneObject(g, false); 885 m_scene.DeleteSceneObject(g, false);
886 } 886 }
887 } 887 }
@@ -895,7 +895,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
895 895
896 if (mainParams.Count < 4) 896 if (mainParams.Count < 4)
897 { 897 {
898 m_console.OutputFormat("Usage: delete object name [--regex] <name>"); 898 m_console.Output("Usage: delete object name [--regex] <name>");
899 return null; 899 return null;
900 } 900 }
901 901
@@ -917,7 +917,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
917 m_scene.ForEachSOG(searchAction); 917 m_scene.ForEachSOG(searchAction);
918 918
919 if (sceneObjects.Count == 0) 919 if (sceneObjects.Count == 0)
920 m_console.OutputFormat("No objects with name {0} found in {1}", name, m_scene.RegionInfo.RegionName); 920 m_console.Output("No objects with name {0} found in {1}", null, name, m_scene.RegionInfo.RegionName);
921 921
922 return sceneObjects; 922 return sceneObjects;
923 } 923 }
@@ -933,7 +933,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
933 { 933 {
934 if (cmdparams.Length < 5) 934 if (cmdparams.Length < 5)
935 { 935 {
936 m_console.OutputFormat("Usage: delete object pos <start-coord> to <end-coord>"); 936 m_console.Output("Usage: delete object pos <start-coord> to <end-coord>");
937 return null; 937 return null;
938 } 938 }
939 939
@@ -952,7 +952,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
952 952
953 if (!ConsoleUtil.TryParseConsoleMinVector(rawConsoleStartVector, out startVector)) 953 if (!ConsoleUtil.TryParseConsoleMinVector(rawConsoleStartVector, out startVector))
954 { 954 {
955 m_console.OutputFormat("Error: Start vector '{0}' does not have a valid format", rawConsoleStartVector); 955 m_console.Output("Error: Start vector '{0}' does not have a valid format", null, rawConsoleStartVector);
956 endVector = Vector3.Zero; 956 endVector = Vector3.Zero;
957 957
958 return false; 958 return false;
@@ -962,7 +962,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
962 962
963 if (!ConsoleUtil.TryParseConsoleMaxVector(rawConsoleEndVector, out endVector)) 963 if (!ConsoleUtil.TryParseConsoleMaxVector(rawConsoleEndVector, out endVector))
964 { 964 {
965 m_console.OutputFormat("Error: End vector '{0}' does not have a valid format", rawConsoleEndVector); 965 m_console.Output("Error: End vector '{0}' does not have a valid format", null, rawConsoleEndVector);
966 return false; 966 return false;
967 } 967 }
968 968
diff --git a/OpenSim/Region/CoreModules/World/Region/RegionCommandsModule.cs b/OpenSim/Region/CoreModules/World/Region/RegionCommandsModule.cs
index 49246a2..2a661a6 100644..100755
--- a/OpenSim/Region/CoreModules/World/Region/RegionCommandsModule.cs
+++ b/OpenSim/Region/CoreModules/World/Region/RegionCommandsModule.cs
@@ -202,7 +202,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
202 202
203 if (args.Length != 4) 203 if (args.Length != 4)
204 { 204 {
205 MainConsole.Instance.OutputFormat("Usage: region set <param> <value>"); 205 MainConsole.Instance.Output("Usage: region set <param> <value>");
206 return; 206 return;
207 } 207 }
208 208
@@ -224,16 +224,17 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
224 224
225 if (newValue > ri.AgentCapacity) 225 if (newValue > ri.AgentCapacity)
226 { 226 {
227 MainConsole.Instance.OutputFormat( 227 MainConsole.Instance.Output(
228 "Cannot set {0} to {1} in {2} as max-agent-limit is {3}", "agent-limit", 228 "Cannot set {0} to {1} in {2} as max-agent-limit is {3}", "agent-limit",
229 null,
229 newValue, m_scene.Name, ri.AgentCapacity); 230 newValue, m_scene.Name, ri.AgentCapacity);
230 } 231 }
231 else 232 else
232 { 233 {
233 rs.AgentLimit = newValue; 234 rs.AgentLimit = newValue;
234 235
235 MainConsole.Instance.OutputFormat( 236 MainConsole.Instance.Output(
236 "{0} set to {1} in {2}", "agent-limit", newValue, m_scene.Name); 237 "{0} set to {1} in {2}", "agent-limit", null, newValue, m_scene.Name);
237 } 238 }
238 239
239 rs.Save(); 240 rs.Save();
@@ -247,15 +248,15 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
247 248
248 ri.AgentCapacity = newValue; 249 ri.AgentCapacity = newValue;
249 250
250 MainConsole.Instance.OutputFormat( 251 MainConsole.Instance.Output(
251 "{0} set to {1} in {2}", "max-agent-limit", newValue, m_scene.Name); 252 "{0} set to {1} in {2}", "max-agent-limit", null, newValue, m_scene.Name);
252 253
253 if (ri.AgentCapacity < rs.AgentLimit) 254 if (ri.AgentCapacity < rs.AgentLimit)
254 { 255 {
255 rs.AgentLimit = ri.AgentCapacity; 256 rs.AgentLimit = ri.AgentCapacity;
256 257
257 MainConsole.Instance.OutputFormat( 258 MainConsole.Instance.Output(
258 "Reducing {0} to {1} in {2}", "agent-limit", rs.AgentLimit, m_scene.Name); 259 "Reducing {0} to {1} in {2}", null, "agent-limit", rs.AgentLimit, m_scene.Name);
259 } 260 }
260 261
261 rs.Save(); 262 rs.Save();
diff --git a/OpenSim/Region/CoreModules/World/Region/RestartModule.cs b/OpenSim/Region/CoreModules/World/Region/RestartModule.cs
index bb3b860..6d3daf2 100644..100755
--- a/OpenSim/Region/CoreModules/World/Region/RestartModule.cs
+++ b/OpenSim/Region/CoreModules/World/Region/RestartModule.cs
@@ -337,8 +337,8 @@ namespace OpenSim.Region.CoreModules.World.Region
337 for (int i = 4 ; i < args.Length ; i++) 337 for (int i = 4 ; i < args.Length ; i++)
338 times.Add(Convert.ToInt32(args[i])); 338 times.Add(Convert.ToInt32(args[i]));
339 339
340 MainConsole.Instance.OutputFormat( 340 MainConsole.Instance.Output(
341 "Region {0} scheduled for restart in {1} seconds", m_Scene.Name, times.Sum()); 341 "Region {0} scheduled for restart in {1} seconds", null, m_Scene.Name, times.Sum());
342 342
343 ScheduleRestart(UUID.Zero, args[3], times.ToArray(), notice); 343 ScheduleRestart(UUID.Zero, args[3], times.ToArray(), notice);
344 } 344 }
diff --git a/OpenSim/Region/CoreModules/World/Terrain/TerrainModule.cs b/OpenSim/Region/CoreModules/World/Terrain/TerrainModule.cs
index a786568..d8c118f 100644..100755
--- a/OpenSim/Region/CoreModules/World/Terrain/TerrainModule.cs
+++ b/OpenSim/Region/CoreModules/World/Terrain/TerrainModule.cs
@@ -791,8 +791,9 @@ namespace OpenSim.Region.CoreModules.World.Terrain
791 791
792 if (offsetX < 0 || offsetX >= fileWidth || offsetY < 0 || offsetY >= fileHeight) 792 if (offsetX < 0 || offsetX >= fileWidth || offsetY < 0 || offsetY >= fileHeight)
793 { 793 {
794 MainConsole.Instance.OutputFormat( 794 MainConsole.Instance.Output(
795 "ERROR: file width + minimum X tile and file height + minimum Y tile must incorporate the current region at ({0},{1}). File width {2} from {3} and file height {4} from {5} does not.", 795 "ERROR: file width + minimum X tile and file height + minimum Y tile must incorporate the current region at ({0},{1}). File width {2} from {3} and file height {4} from {5} does not.",
796 null,
796 m_scene.RegionInfo.RegionLocX, m_scene.RegionInfo.RegionLocY, fileWidth, fileStartX, fileHeight, fileStartY); 797 m_scene.RegionInfo.RegionLocX, m_scene.RegionInfo.RegionLocY, fileWidth, fileStartX, fileHeight, fileStartY);
797 798
798 return; 799 return;
@@ -810,8 +811,9 @@ namespace OpenSim.Region.CoreModules.World.Terrain
810 (int)m_scene.RegionInfo.RegionSizeX, 811 (int)m_scene.RegionInfo.RegionSizeX,
811 (int)m_scene.RegionInfo.RegionSizeY); 812 (int)m_scene.RegionInfo.RegionSizeY);
812 813
813 MainConsole.Instance.OutputFormat( 814 MainConsole.Instance.Output(
814 "Saved terrain from ({0},{1}) to ({2},{3}) from {4} to {5}", 815 "Saved terrain from ({0},{1}) to ({2},{3}) from {4} to {5}",
816 null,
815 fileStartX, fileStartY, fileStartX + fileWidth - 1, fileStartY + fileHeight - 1, 817 fileStartX, fileStartY, fileStartX + fileWidth - 1, fileStartY + fileHeight - 1,
816 m_scene.RegionInfo.RegionName, filename); 818 m_scene.RegionInfo.RegionName, filename);
817 } 819 }
@@ -820,8 +822,9 @@ namespace OpenSim.Region.CoreModules.World.Terrain
820 } 822 }
821 } 823 }
822 824
823 MainConsole.Instance.OutputFormat( 825 MainConsole.Instance.Output(
824 "ERROR: Could not save terrain from {0} to {1}. Valid file extensions are {2}", 826 "ERROR: Could not save terrain from {0} to {1}. Valid file extensions are {2}",
827 null,
825 m_scene.RegionInfo.RegionName, filename, m_supportFileExtensionsForTileSave); 828 m_scene.RegionInfo.RegionName, filename, m_supportFileExtensionsForTileSave);
826 } 829 }
827 830
@@ -1538,7 +1541,7 @@ namespace OpenSim.Region.CoreModules.World.Terrain
1538 } 1541 }
1539 else 1542 else
1540 { 1543 {
1541 MainConsole.Instance.OutputFormat("ERROR: Unrecognised direction {0} - need x or y", direction); 1544 MainConsole.Instance.Output("ERROR: Unrecognised direction {0} - need x or y", null, direction);
1542 } 1545 }
1543 } 1546 }
1544 1547
@@ -1703,8 +1706,8 @@ namespace OpenSim.Region.CoreModules.World.Terrain
1703 1706
1704 double avg = sum / (m_channel.Height * m_channel.Width); 1707 double avg = sum / (m_channel.Height * m_channel.Width);
1705 1708
1706 MainConsole.Instance.OutputFormat("Channel {0}x{1}", m_channel.Width, m_channel.Height); 1709 MainConsole.Instance.Output("Channel {0}x{1}", null, m_channel.Width, m_channel.Height);
1707 MainConsole.Instance.OutputFormat("max/min/avg/sum: {0}/{1}/{2}/{3}", max, min, avg, sum); 1710 MainConsole.Instance.Output("max/min/avg/sum: {0}/{1}/{2}/{3}", null, max, min, avg, sum);
1708 } 1711 }
1709 1712
1710 private void InterfaceEnableExperimentalBrushes(Object[] args) 1713 private void InterfaceEnableExperimentalBrushes(Object[] args)
diff --git a/OpenSim/Region/CoreModules/World/Wind/WindModule.cs b/OpenSim/Region/CoreModules/World/Wind/WindModule.cs
index ebcb678..c9580d2 100644..100755
--- a/OpenSim/Region/CoreModules/World/Wind/WindModule.cs
+++ b/OpenSim/Region/CoreModules/World/Wind/WindModule.cs
@@ -264,8 +264,8 @@ namespace OpenSim.Region.CoreModules
264 } 264 }
265 else 265 else
266 { 266 {
267 MainConsole.Instance.OutputFormat( 267 MainConsole.Instance.Output(
268 "Invalid value {0} specified for {1}", cmdparams[3], cmdparams[2]); 268 "Invalid value {0} specified for {1}", null, cmdparams[3], cmdparams[2]);
269 269
270 return; 270 return;
271 } 271 }
@@ -276,7 +276,7 @@ namespace OpenSim.Region.CoreModules
276 276
277 if (desiredPlugin.Equals(m_activeWindPlugin.Name)) 277 if (desiredPlugin.Equals(m_activeWindPlugin.Name))
278 { 278 {
279 MainConsole.Instance.OutputFormat("Wind model plugin {0} is already active", cmdparams[3]); 279 MainConsole.Instance.Output("Wind model plugin {0} is already active", null, cmdparams[3]);
280 280
281 return; 281 return;
282 } 282 }
@@ -285,11 +285,11 @@ namespace OpenSim.Region.CoreModules
285 { 285 {
286 m_activeWindPlugin = m_availableWindPlugins[cmdparams[3]]; 286 m_activeWindPlugin = m_availableWindPlugins[cmdparams[3]];
287 287
288 MainConsole.Instance.OutputFormat("{0} wind model plugin now active", m_activeWindPlugin.Name); 288 MainConsole.Instance.Output("{0} wind model plugin now active", null, m_activeWindPlugin.Name);
289 } 289 }
290 else 290 else
291 { 291 {
292 MainConsole.Instance.OutputFormat("Could not find wind model plugin {0}", desiredPlugin); 292 MainConsole.Instance.Output("Could not find wind model plugin {0}", null, desiredPlugin);
293 } 293 }
294 break; 294 break;
295 } 295 }
@@ -317,17 +317,17 @@ namespace OpenSim.Region.CoreModules
317 { 317 {
318 if (!float.TryParse(cmdparams[3], out value)) 318 if (!float.TryParse(cmdparams[3], out value))
319 { 319 {
320 MainConsole.Instance.OutputFormat("Invalid value {0}", cmdparams[3]); 320 MainConsole.Instance.Output("Invalid value {0}", null, cmdparams[3]);
321 } 321 }
322 322
323 try 323 try
324 { 324 {
325 WindParamSet(plugin, param, value); 325 WindParamSet(plugin, param, value);
326 MainConsole.Instance.OutputFormat("{0} set to {1}", param, value); 326 MainConsole.Instance.Output("{0} set to {1}", null, param, value);
327 } 327 }
328 catch (Exception e) 328 catch (Exception e)
329 { 329 {
330 MainConsole.Instance.OutputFormat("{0}", e.Message); 330 MainConsole.Instance.Output("{0}", null, e.Message);
331 } 331 }
332 } 332 }
333 else 333 else
@@ -335,11 +335,11 @@ namespace OpenSim.Region.CoreModules
335 try 335 try
336 { 336 {
337 value = WindParamGet(plugin, param); 337 value = WindParamGet(plugin, param);
338 MainConsole.Instance.OutputFormat("{0} : {1}", param, value); 338 MainConsole.Instance.Output("{0} : {1}", null, param, value);
339 } 339 }
340 catch (Exception e) 340 catch (Exception e)
341 { 341 {
342 MainConsole.Instance.OutputFormat("{0}", e.Message); 342 MainConsole.Instance.Output("{0}", null, e.Message);
343 } 343 }
344 } 344 }
345 345
diff --git a/OpenSim/Region/Framework/Interfaces/IAvatarFactoryModule.cs b/OpenSim/Region/Framework/Interfaces/IAvatarFactoryModule.cs
index d25c930..800affe 100644..100755
--- a/OpenSim/Region/Framework/Interfaces/IAvatarFactoryModule.cs
+++ b/OpenSim/Region/Framework/Interfaces/IAvatarFactoryModule.cs
@@ -31,7 +31,7 @@ using OpenSim.Framework;
31 31
32namespace OpenSim.Region.Framework.Interfaces 32namespace OpenSim.Region.Framework.Interfaces
33{ 33{
34 public delegate void ReportOutputAction(string format, params object[] args); 34 public delegate void ReportOutputAction(string format, string level, params object[] args);
35 35
36 public interface IAvatarFactoryModule 36 public interface IAvatarFactoryModule
37 { 37 {
diff --git a/OpenSim/Region/OptionalModules/Agent/TextureSender/J2KDecoderCommandModule.cs b/OpenSim/Region/OptionalModules/Agent/TextureSender/J2KDecoderCommandModule.cs
index e93fcdc..1f4c65a 100644..100755
--- a/OpenSim/Region/OptionalModules/Agent/TextureSender/J2KDecoderCommandModule.cs
+++ b/OpenSim/Region/OptionalModules/Agent/TextureSender/J2KDecoderCommandModule.cs
@@ -114,27 +114,27 @@ namespace OpenSim.Region.OptionalModules.Agent.TextureSender
114 114
115 if (!UUID.TryParse(rawAssetId, out assetId)) 115 if (!UUID.TryParse(rawAssetId, out assetId))
116 { 116 {
117 MainConsole.Instance.OutputFormat("ERROR: {0} is not a valid ID format", rawAssetId); 117 MainConsole.Instance.Output("ERROR: {0} is not a valid ID format", null, rawAssetId);
118 return; 118 return;
119 } 119 }
120 120
121 AssetBase asset = m_scene.AssetService.Get(assetId.ToString()); 121 AssetBase asset = m_scene.AssetService.Get(assetId.ToString());
122 if (asset == null) 122 if (asset == null)
123 { 123 {
124 MainConsole.Instance.OutputFormat("ERROR: No asset found with ID {0}", assetId); 124 MainConsole.Instance.Output("ERROR: No asset found with ID {0}", null, assetId);
125 return; 125 return;
126 } 126 }
127 127
128 if (asset.Type != (sbyte)AssetType.Texture) 128 if (asset.Type != (sbyte)AssetType.Texture)
129 { 129 {
130 MainConsole.Instance.OutputFormat("ERROR: Asset {0} is not a texture type", assetId); 130 MainConsole.Instance.Output("ERROR: Asset {0} is not a texture type", null, assetId);
131 return; 131 return;
132 } 132 }
133 133
134 IJ2KDecoder decoder = m_scene.RequestModuleInterface<IJ2KDecoder>(); 134 IJ2KDecoder decoder = m_scene.RequestModuleInterface<IJ2KDecoder>();
135 if (decoder == null) 135 if (decoder == null)
136 { 136 {
137 MainConsole.Instance.OutputFormat("ERROR: No IJ2KDecoder module available"); 137 MainConsole.Instance.Output("ERROR: No IJ2KDecoder module available");
138 return; 138 return;
139 } 139 }
140 140
@@ -142,13 +142,14 @@ namespace OpenSim.Region.OptionalModules.Agent.TextureSender
142 int components; 142 int components;
143 if (decoder.Decode(assetId, asset.Data, out layers, out components)) 143 if (decoder.Decode(assetId, asset.Data, out layers, out components))
144 { 144 {
145 MainConsole.Instance.OutputFormat( 145 MainConsole.Instance.Output(
146 "Successfully decoded asset {0} with {1} layers and {2} components", 146 "Successfully decoded asset {0} with {1} layers and {2} components",
147 null,
147 assetId, layers.Length, components); 148 assetId, layers.Length, components);
148 } 149 }
149 else 150 else
150 { 151 {
151 MainConsole.Instance.OutputFormat("Decode of asset {0} failed", assetId); 152 MainConsole.Instance.Output("Decode of asset {0} failed", null, assetId);
152 } 153 }
153 } 154 }
154 } 155 }
diff --git a/OpenSim/Region/OptionalModules/Asset/AssetInfoModule.cs b/OpenSim/Region/OptionalModules/Asset/AssetInfoModule.cs
index 906e1ee..89c6637 100644..100755
--- a/OpenSim/Region/OptionalModules/Asset/AssetInfoModule.cs
+++ b/OpenSim/Region/OptionalModules/Asset/AssetInfoModule.cs
@@ -115,14 +115,14 @@ namespace OpenSim.Region.OptionalModules.Asset
115 115
116 if (!UUID.TryParse(rawAssetId, out assetId)) 116 if (!UUID.TryParse(rawAssetId, out assetId))
117 { 117 {
118 MainConsole.Instance.OutputFormat("ERROR: {0} is not a valid ID format", rawAssetId); 118 MainConsole.Instance.Output("ERROR: {0} is not a valid ID format", null, rawAssetId);
119 return; 119 return;
120 } 120 }
121 121
122 AssetBase asset = m_scene.AssetService.Get(assetId.ToString()); 122 AssetBase asset = m_scene.AssetService.Get(assetId.ToString());
123 if (asset == null) 123 if (asset == null)
124 { 124 {
125 MainConsole.Instance.OutputFormat("ERROR: No asset found with ID {0}", assetId); 125 MainConsole.Instance.Output("ERROR: No asset found with ID {0}", null, assetId);
126 return; 126 return;
127 } 127 }
128 128
@@ -139,7 +139,7 @@ namespace OpenSim.Region.OptionalModules.Asset
139 } 139 }
140 } 140 }
141 141
142 MainConsole.Instance.OutputFormat("Asset dumped to file {0}", fileName); 142 MainConsole.Instance.Output("Asset dumped to file {0}", null, fileName);
143 } 143 }
144 144
145 void HandleShowAsset(string module, string[] args) 145 void HandleShowAsset(string module, string[] args)
@@ -160,13 +160,13 @@ namespace OpenSim.Region.OptionalModules.Asset
160 160
161 int i; 161 int i;
162 162
163 MainConsole.Instance.OutputFormat("Name: {0}", asset.Name); 163 MainConsole.Instance.Output("Name: {0}", null, asset.Name);
164 MainConsole.Instance.OutputFormat("Description: {0}", asset.Description); 164 MainConsole.Instance.Output("Description: {0}", null, asset.Description);
165 MainConsole.Instance.OutputFormat("Type: {0} (type number = {1})", (AssetType)asset.Type, asset.Type); 165 MainConsole.Instance.Output("Type: {0} (type number = {1})", null, (AssetType)asset.Type, asset.Type);
166 MainConsole.Instance.OutputFormat("Content-type: {0}", asset.Metadata.ContentType); 166 MainConsole.Instance.Output("Content-type: {0}", null, asset.Metadata.ContentType);
167 MainConsole.Instance.OutputFormat("Size: {0} bytes", asset.Data.Length); 167 MainConsole.Instance.Output("Size: {0} bytes", null, asset.Data.Length);
168 MainConsole.Instance.OutputFormat("Temporary: {0}", asset.Temporary ? "yes" : "no"); 168 MainConsole.Instance.Output("Temporary: {0}", null, asset.Temporary ? "yes" : "no");
169 MainConsole.Instance.OutputFormat("Flags: {0}", asset.Metadata.Flags); 169 MainConsole.Instance.Output("Flags: {0}", null, asset.Metadata.Flags);
170 170
171 for (i = 0 ; i < 5 ; i++) 171 for (i = 0 ; i < 5 ; i++)
172 { 172 {
diff --git a/OpenSim/Region/OptionalModules/Avatar/Animations/AnimationsCommandModule.cs b/OpenSim/Region/OptionalModules/Avatar/Animations/AnimationsCommandModule.cs
index 0698cec..4e8f507 100644..100755
--- a/OpenSim/Region/OptionalModules/Avatar/Animations/AnimationsCommandModule.cs
+++ b/OpenSim/Region/OptionalModules/Avatar/Animations/AnimationsCommandModule.cs
@@ -109,7 +109,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Animations
109 { 109 {
110 if (cmd.Length != 2 && cmd.Length < 4) 110 if (cmd.Length != 2 && cmd.Length < 4)
111 { 111 {
112 MainConsole.Instance.OutputFormat("Usage: show animations [<first-name> <last-name>]"); 112 MainConsole.Instance.Output("Usage: show animations [<first-name> <last-name>]");
113 return; 113 return;
114 } 114 }
115 115
diff --git a/OpenSim/Region/OptionalModules/Avatar/Appearance/AppearanceInfoModule.cs b/OpenSim/Region/OptionalModules/Avatar/Appearance/AppearanceInfoModule.cs
index c04f40c..ded0857 100644..100755
--- a/OpenSim/Region/OptionalModules/Avatar/Appearance/AppearanceInfoModule.cs
+++ b/OpenSim/Region/OptionalModules/Avatar/Appearance/AppearanceInfoModule.cs
@@ -154,7 +154,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance
154 { 154 {
155 if (cmd.Length != 2 && cmd.Length < 4) 155 if (cmd.Length != 2 && cmd.Length < 4)
156 { 156 {
157 MainConsole.Instance.OutputFormat("Usage: appearance send [<first-name> <last-name>]"); 157 MainConsole.Instance.Output("Usage: appearance send [<first-name> <last-name>]");
158 return; 158 return;
159 } 159 }
160 160
@@ -178,8 +178,9 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance
178 ScenePresence sp = scene.GetScenePresence(optionalTargetFirstName, optionalTargetLastName); 178 ScenePresence sp = scene.GetScenePresence(optionalTargetFirstName, optionalTargetLastName);
179 if (sp != null && !sp.IsChildAgent) 179 if (sp != null && !sp.IsChildAgent)
180 { 180 {
181 MainConsole.Instance.OutputFormat( 181 MainConsole.Instance.Output(
182 "Sending appearance information for {0} to all other avatars in {1}", 182 "Sending appearance information for {0} to all other avatars in {1}",
183 null,
183 sp.Name, scene.RegionInfo.RegionName); 184 sp.Name, scene.RegionInfo.RegionName);
184 185
185 scene.AvatarFactory.SendAppearance(sp.UUID); 186 scene.AvatarFactory.SendAppearance(sp.UUID);
@@ -190,8 +191,9 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance
190 scene.ForEachRootScenePresence( 191 scene.ForEachRootScenePresence(
191 sp => 192 sp =>
192 { 193 {
193 MainConsole.Instance.OutputFormat( 194 MainConsole.Instance.Output(
194 "Sending appearance information for {0} to all other avatars in {1}", 195 "Sending appearance information for {0} to all other avatars in {1}",
196 null,
195 sp.Name, scene.RegionInfo.RegionName); 197 sp.Name, scene.RegionInfo.RegionName);
196 198
197 scene.AvatarFactory.SendAppearance(sp.UUID); 199 scene.AvatarFactory.SendAppearance(sp.UUID);
@@ -206,7 +208,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance
206 { 208 {
207 if (cmd.Length != 2 && cmd.Length < 4) 209 if (cmd.Length != 2 && cmd.Length < 4)
208 { 210 {
209 MainConsole.Instance.OutputFormat("Usage: appearance show [<first-name> <last-name>]"); 211 MainConsole.Instance.Output("Usage: appearance show [<first-name> <last-name>]");
210 return; 212 return;
211 } 213 }
212 214
@@ -229,7 +231,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance
229 { 231 {
230 ScenePresence sp = scene.GetScenePresence(optionalTargetFirstName, optionalTargetLastName); 232 ScenePresence sp = scene.GetScenePresence(optionalTargetFirstName, optionalTargetLastName);
231 if (sp != null && !sp.IsChildAgent) 233 if (sp != null && !sp.IsChildAgent)
232 scene.AvatarFactory.WriteBakedTexturesReport(sp, MainConsole.Instance.OutputFormat); 234 scene.AvatarFactory.WriteBakedTexturesReport(sp, MainConsole.Instance.Output);
233 } 235 }
234 else 236 else
235 { 237 {
@@ -237,8 +239,8 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance
237 sp => 239 sp =>
238 { 240 {
239 bool bakedTextureValid = scene.AvatarFactory.ValidateBakedTextureCache(sp); 241 bool bakedTextureValid = scene.AvatarFactory.ValidateBakedTextureCache(sp);
240 MainConsole.Instance.OutputFormat( 242 MainConsole.Instance.Output(
241 "{0} baked appearance texture is {1}", sp.Name, bakedTextureValid ? "OK" : "incomplete"); 243 "{0} baked appearance texture is {1}", null, sp.Name, bakedTextureValid ? "OK" : "incomplete");
242 } 244 }
243 ); 245 );
244 } 246 }
@@ -250,7 +252,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance
250 { 252 {
251 if (cmd.Length != 4) 253 if (cmd.Length != 4)
252 { 254 {
253 MainConsole.Instance.OutputFormat("Usage: appearance rebake <first-name> <last-name>"); 255 MainConsole.Instance.Output("Usage: appearance rebake <first-name> <last-name>");
254 return; 256 return;
255 } 257 }
256 258
@@ -267,12 +269,14 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance
267 int rebakesRequested = scene.AvatarFactory.RequestRebake(sp, false); 269 int rebakesRequested = scene.AvatarFactory.RequestRebake(sp, false);
268 270
269 if (rebakesRequested > 0) 271 if (rebakesRequested > 0)
270 MainConsole.Instance.OutputFormat( 272 MainConsole.Instance.Output(
271 "Requesting rebake of {0} uploaded textures for {1} in {2}", 273 "Requesting rebake of {0} uploaded textures for {1} in {2}",
274 null,
272 rebakesRequested, sp.Name, scene.RegionInfo.RegionName); 275 rebakesRequested, sp.Name, scene.RegionInfo.RegionName);
273 else 276 else
274 MainConsole.Instance.OutputFormat( 277 MainConsole.Instance.Output(
275 "No texture IDs available for rebake request for {0} in {1}", 278 "No texture IDs available for rebake request for {0} in {1}",
279 null,
276 sp.Name, scene.RegionInfo.RegionName); 280 sp.Name, scene.RegionInfo.RegionName);
277 } 281 }
278 } 282 }
@@ -283,7 +287,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance
283 { 287 {
284 if (cmd.Length != 3) 288 if (cmd.Length != 3)
285 { 289 {
286 MainConsole.Instance.OutputFormat("Usage: appearance find <uuid-or-start-of-uuid>"); 290 MainConsole.Instance.Output("Usage: appearance find <uuid-or-start-of-uuid>");
287 return; 291 return;
288 } 292 }
289 293
@@ -310,12 +314,13 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance
310 314
311 if (matchedAvatars.Count == 0) 315 if (matchedAvatars.Count == 0)
312 { 316 {
313 MainConsole.Instance.OutputFormat("{0} did not match any baked avatar textures in use", rawUuid); 317 MainConsole.Instance.Output("{0} did not match any baked avatar textures in use", null, rawUuid);
314 } 318 }
315 else 319 else
316 { 320 {
317 MainConsole.Instance.OutputFormat( 321 MainConsole.Instance.Output(
318 "{0} matched {1}", 322 "{0} matched {1}",
323 null,
319 rawUuid, 324 rawUuid,
320 string.Join(", ", matchedAvatars.ToList().ConvertAll<string>(sp => sp.Name).ToArray())); 325 string.Join(", ", matchedAvatars.ToList().ConvertAll<string>(sp => sp.Name).ToArray()));
321 } 326 }
@@ -325,7 +330,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance
325 { 330 {
326 if (cmd.Length != 2 && cmd.Length < 4) 331 if (cmd.Length != 2 && cmd.Length < 4)
327 { 332 {
328 MainConsole.Instance.OutputFormat("Usage: wearables show [<first-name> <last-name>]"); 333 MainConsole.Instance.Output("Usage: wearables show [<first-name> <last-name>]");
329 return; 334 return;
330 } 335 }
331 336
@@ -388,7 +393,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance
388 { 393 {
389 if (cmd.Length != 4) 394 if (cmd.Length != 4)
390 { 395 {
391 MainConsole.Instance.OutputFormat("Usage: wearables check <first-name> <last-name>"); 396 MainConsole.Instance.Output("Usage: wearables check <first-name> <last-name>");
392 return; 397 return;
393 } 398 }
394 399
@@ -410,7 +415,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance
410 AvatarWearable[] wearables = sp.Appearance.Wearables; 415 AvatarWearable[] wearables = sp.Appearance.Wearables;
411 if(wearables.Count() == 0) 416 if(wearables.Count() == 0)
412 { 417 {
413 MainConsole.Instance.OutputFormat("avatar has no wearables"); 418 MainConsole.Instance.Output("avatar has no wearables");
414 return; 419 return;
415 } 420 }
416 421
diff --git a/OpenSim/Region/OptionalModules/Avatar/Friends/FriendsCommandsModule.cs b/OpenSim/Region/OptionalModules/Avatar/Friends/FriendsCommandsModule.cs
index 31fc56a..030c9eb 100644..100755
--- a/OpenSim/Region/OptionalModules/Avatar/Friends/FriendsCommandsModule.cs
+++ b/OpenSim/Region/OptionalModules/Avatar/Friends/FriendsCommandsModule.cs
@@ -122,7 +122,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Friends
122 122
123 if (mainParams.Count != 4) 123 if (mainParams.Count != 4)
124 { 124 {
125 MainConsole.Instance.OutputFormat("Usage: friends show [--cache] <first-name> <last-name>"); 125 MainConsole.Instance.Output("Usage: friends show [--cache] <first-name> <last-name>");
126 return; 126 return;
127 } 127 }
128 128
@@ -136,7 +136,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Friends
136 136
137 if (userId == UUID.Zero) 137 if (userId == UUID.Zero)
138 { 138 {
139 MainConsole.Instance.OutputFormat("No such user as {0} {1}", firstName, lastName); 139 MainConsole.Instance.Output("No such user as {0} {1}", null, firstName, lastName);
140 return; 140 return;
141 } 141 }
142 142
@@ -146,7 +146,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Friends
146 { 146 {
147 if (!m_friendsModule.AreFriendsCached(userId)) 147 if (!m_friendsModule.AreFriendsCached(userId))
148 { 148 {
149 MainConsole.Instance.OutputFormat("No friends cached on this simulator for {0} {1}", firstName, lastName); 149 MainConsole.Instance.Output("No friends cached on this simulator for {0} {1}", null, firstName, lastName);
150 return; 150 return;
151 } 151 }
152 else 152 else
@@ -162,10 +162,10 @@ namespace OpenSim.Region.OptionalModules.Avatar.Friends
162 friends = ((FriendsModule)m_friendsModule).FriendsService.GetFriends(userId); 162 friends = ((FriendsModule)m_friendsModule).FriendsService.GetFriends(userId);
163 } 163 }
164 164
165 MainConsole.Instance.OutputFormat("Friends for {0} {1} {2}:", firstName, lastName, userId); 165 MainConsole.Instance.Output("Friends for {0} {1} {2}:", null, firstName, lastName, userId);
166 166
167 MainConsole.Instance.OutputFormat( 167 MainConsole.Instance.Output(
168 "{0,-36} {1,-36} {2,-7} {3,7} {4,10}", "UUID", "Name", "Status", "MyFlags", "TheirFlags"); 168 "{0,-36} {1,-36} {2,-7} {3,7} {4,10}", null, "UUID", "Name", "Status", "MyFlags", "TheirFlags");
169 169
170 foreach (FriendInfo friend in friends) 170 foreach (FriendInfo friend in friends)
171 { 171 {
@@ -191,8 +191,9 @@ namespace OpenSim.Region.OptionalModules.Avatar.Friends
191 else 191 else
192 onlineText = "offline"; 192 onlineText = "offline";
193 193
194 MainConsole.Instance.OutputFormat( 194 MainConsole.Instance.Output(
195 "{0,-36} {1,-36} {2,-7} {3,-7} {4,-10}", 195 "{0,-36} {1,-36} {2,-7} {3,-7} {4,-10}",
196 null,
196 friend.Friend, friendName, onlineText, friend.MyFlags, friend.TheirFlags); 197 friend.Friend, friendName, onlineText, friend.MyFlags, friend.TheirFlags);
197 } 198 }
198 } 199 }
diff --git a/OpenSim/Region/OptionalModules/Avatar/SitStand/SitStandCommandsModule.cs b/OpenSim/Region/OptionalModules/Avatar/SitStand/SitStandCommandsModule.cs
index 1b5ee04..1dd5b0a 100644..100755
--- a/OpenSim/Region/OptionalModules/Avatar/SitStand/SitStandCommandsModule.cs
+++ b/OpenSim/Region/OptionalModules/Avatar/SitStand/SitStandCommandsModule.cs
@@ -142,8 +142,9 @@ namespace OpenSim.Region.OptionalModules.Avatar.SitStand
142 142
143 if (sitPart != null) 143 if (sitPart != null)
144 { 144 {
145 MainConsole.Instance.OutputFormat( 145 MainConsole.Instance.Output(
146 "Sitting {0} on {1} {2} in {3}", 146 "Sitting {0} on {1} {2} in {3}",
147 null,
147 sp.Name, sitPart.ParentGroup.Name, sitPart.ParentGroup.UUID, m_scene.Name); 148 sp.Name, sitPart.ParentGroup.Name, sitPart.ParentGroup.UUID, m_scene.Name);
148 149
149 sp.HandleAgentRequestSit(sp.ControllingClient, sp.UUID, sitPart.UUID, Vector3.Zero); 150 sp.HandleAgentRequestSit(sp.ControllingClient, sp.UUID, sitPart.UUID, Vector3.Zero);
@@ -151,8 +152,9 @@ namespace OpenSim.Region.OptionalModules.Avatar.SitStand
151 } 152 }
152 else 153 else
153 { 154 {
154 MainConsole.Instance.OutputFormat( 155 MainConsole.Instance.Output(
155 "Could not find any unoccupied set seat on which to sit {0} in {1}. Aborting", 156 "Could not find any unoccupied set seat on which to sit {0} in {1}. Aborting",
157 null,
156 sp.Name, m_scene.Name); 158 sp.Name, m_scene.Name);
157 159
158 break; 160 break;
@@ -177,7 +179,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.SitStand
177 { 179 {
178 if (sp.SitGround || sp.IsSatOnObject) 180 if (sp.SitGround || sp.IsSatOnObject)
179 { 181 {
180 MainConsole.Instance.OutputFormat("Standing {0} in {1}", sp.Name, m_scene.Name); 182 MainConsole.Instance.Output("Standing {0} in {1}", null, sp.Name, m_scene.Name);
181 sp.StandUp(); 183 sp.StandUp();
182 } 184 }
183 } 185 }
diff --git a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsMessagingModule.cs b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsMessagingModule.cs
index 8791235..04ff09d 100644..100755
--- a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsMessagingModule.cs
+++ b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsMessagingModule.cs
@@ -243,7 +243,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
243 243
244 m_debugEnabled = verbose; 244 m_debugEnabled = verbose;
245 245
246 MainConsole.Instance.OutputFormat("{0} verbose logging set to {1}", Name, m_debugEnabled); 246 MainConsole.Instance.Output("{0} verbose logging set to {1}", null, Name, m_debugEnabled);
247 } 247 }
248 248
249 /// <summary> 249 /// <summary>
diff --git a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs
index 4b81838..1d65d8b 100644..100755
--- a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs
+++ b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs
@@ -154,7 +154,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
154 154
155 m_debugEnabled = verbose; 155 m_debugEnabled = verbose;
156 156
157 MainConsole.Instance.OutputFormat("{0} verbose logging set to {1}", Name, m_debugEnabled); 157 MainConsole.Instance.Output("{0} verbose logging set to {1}", null, Name, m_debugEnabled);
158 } 158 }
159 159
160 public void RegionLoaded(Scene scene) 160 public void RegionLoaded(Scene scene)
diff --git a/OpenSim/Region/OptionalModules/PhysicsParameters/PhysicsParameters.cs b/OpenSim/Region/OptionalModules/PhysicsParameters/PhysicsParameters.cs
index bcfb34d..9bcbfda 100755
--- a/OpenSim/Region/OptionalModules/PhysicsParameters/PhysicsParameters.cs
+++ b/OpenSim/Region/OptionalModules/PhysicsParameters/PhysicsParameters.cs
@@ -256,13 +256,13 @@ namespace OpenSim.Region.OptionalModules.PhysicsParameters
256 private void WriteOut(string msg, params object[] args) 256 private void WriteOut(string msg, params object[] args)
257 { 257 {
258 // m_log.InfoFormat(msg, args); 258 // m_log.InfoFormat(msg, args);
259 MainConsole.Instance.OutputFormat(msg, args); 259 MainConsole.Instance.Output(msg, null, args);
260 } 260 }
261 261
262 private void WriteError(string msg, params object[] args) 262 private void WriteError(string msg, params object[] args)
263 { 263 {
264 // m_log.ErrorFormat(msg, args); 264 // m_log.ErrorFormat(msg, args);
265 MainConsole.Instance.OutputFormat(msg, args); 265 MainConsole.Instance.Output(msg, null, args);
266 } 266 }
267 } 267 }
268} 268}
diff --git a/OpenSim/Region/OptionalModules/Scripting/JsonStore/JsonStoreCommands.cs b/OpenSim/Region/OptionalModules/Scripting/JsonStore/JsonStoreCommands.cs
index 9bf9cb0..ff30a5c 100644..100755
--- a/OpenSim/Region/OptionalModules/Scripting/JsonStore/JsonStoreCommands.cs
+++ b/OpenSim/Region/OptionalModules/Scripting/JsonStore/JsonStoreCommands.cs
@@ -186,7 +186,7 @@ namespace OpenSim.Region.OptionalModules.Scripting.JsonStore
186 return; 186 return;
187 187
188 JsonStoreStats stats = m_store.GetStoreStats(); 188 JsonStoreStats stats = m_store.GetStoreStats();
189 MainConsole.Instance.OutputFormat("{0}\t{1}",m_scene.RegionInfo.RegionName,stats.StoreCount); 189 MainConsole.Instance.Output("{0}\t{1}", null, m_scene.RegionInfo.RegionName, stats.StoreCount);
190 } 190 }
191 191
192#endregion 192#endregion
diff --git a/OpenSim/Region/OptionalModules/Scripting/RegionReadyModule/RegionReadyModule.cs b/OpenSim/Region/OptionalModules/Scripting/RegionReadyModule/RegionReadyModule.cs
index 732735e..7d95c7f 100644..100755
--- a/OpenSim/Region/OptionalModules/Scripting/RegionReadyModule/RegionReadyModule.cs
+++ b/OpenSim/Region/OptionalModules/Scripting/RegionReadyModule/RegionReadyModule.cs
@@ -109,7 +109,7 @@ namespace OpenSim.Region.OptionalModules.Scripting.RegionReady
109 // This should always show up to the user but should not trigger warn/errors as these messages are 109 // This should always show up to the user but should not trigger warn/errors as these messages are
110 // expected and are not simulator problems. Ideally, there would be a status level in log4net but 110 // expected and are not simulator problems. Ideally, there would be a status level in log4net but
111 // failing that, we will print out to console instead. 111 // failing that, we will print out to console instead.
112 MainConsole.Instance.OutputFormat("Region {0} - LOGINS DISABLED DURING INITIALIZATION.", m_scene.Name); 112 MainConsole.Instance.Output("Region {0} - LOGINS DISABLED DURING INITIALIZATION.", null, m_scene.Name);
113 113
114 if (m_uri != string.Empty) 114 if (m_uri != string.Empty)
115 { 115 {
@@ -232,7 +232,7 @@ namespace OpenSim.Region.OptionalModules.Scripting.RegionReady
232 // without info log messages enabled. Making this a warning is arguably misleading since it isn't a 232 // without info log messages enabled. Making this a warning is arguably misleading since it isn't a
233 // warning, and monitor scripts looking for warn/error/fatal messages will received false positives. 233 // warning, and monitor scripts looking for warn/error/fatal messages will received false positives.
234 // Arguably, log4net needs a status log level (like Apache). 234 // Arguably, log4net needs a status log level (like Apache).
235 MainConsole.Instance.OutputFormat("INITIALIZATION COMPLETE FOR {0} - LOGINS ENABLED", m_scene.Name); 235 MainConsole.Instance.Output("INITIALIZATION COMPLETE FOR {0} - LOGINS ENABLED", null, m_scene.Name);
236 } 236 }
237 237
238 m_scene.SceneGridService.InformNeighborsThatRegionisUp( 238 m_scene.SceneGridService.InformNeighborsThatRegionisUp(
diff --git a/OpenSim/Region/OptionalModules/World/AutoBackup/AutoBackupModule.cs b/OpenSim/Region/OptionalModules/World/AutoBackup/AutoBackupModule.cs
index 64513a0..9ab9610 100644..100755
--- a/OpenSim/Region/OptionalModules/World/AutoBackup/AutoBackupModule.cs
+++ b/OpenSim/Region/OptionalModules/World/AutoBackup/AutoBackupModule.cs
@@ -271,13 +271,13 @@ namespace OpenSim.Region.OptionalModules.World.AutoBackup
271 271
272 if (args.Length != 2) 272 if (args.Length != 2)
273 { 273 {
274 MainConsole.Instance.OutputFormat ("Usage: dooarbackup <regionname>"); 274 MainConsole.Instance.Output("Usage: dooarbackup <regionname>");
275 return; 275 return;
276 } 276 }
277 277
278 if(m_busy) 278 if(m_busy)
279 { 279 {
280 MainConsole.Instance.OutputFormat ("Already doing a backup, please try later"); 280 MainConsole.Instance.Output("Already doing a backup, please try later");
281 return; 281 return;
282 } 282 }
283 283
@@ -327,7 +327,7 @@ namespace OpenSim.Region.OptionalModules.World.AutoBackup
327 m_busy = false; 327 m_busy = false;
328 } 328 }
329 if (!found) 329 if (!found)
330 MainConsole.Instance.OutputFormat ("No such region {0}. Nothing to backup", name); 330 MainConsole.Instance.Output("No such region {0}. Nothing to backup", null, name);
331 } 331 }
332 332
333 private void ParseDefaultConfig(IConfig config) 333 private void ParseDefaultConfig(IConfig config)
diff --git a/OpenSim/Region/OptionalModules/World/SceneCommands/SceneCommandsModule.cs b/OpenSim/Region/OptionalModules/World/SceneCommands/SceneCommandsModule.cs
index f406ca6..6eac299 100644..100755
--- a/OpenSim/Region/OptionalModules/World/SceneCommands/SceneCommandsModule.cs
+++ b/OpenSim/Region/OptionalModules/World/SceneCommands/SceneCommandsModule.cs
@@ -145,7 +145,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Attachments
145 cdl.AddRow("teleport", m_scene.DebugTeleporting); 145 cdl.AddRow("teleport", m_scene.DebugTeleporting);
146 cdl.AddRow("updates", m_scene.DebugUpdates); 146 cdl.AddRow("updates", m_scene.DebugUpdates);
147 147
148 MainConsole.Instance.OutputFormat("Scene {0} options:", m_scene.Name); 148 MainConsole.Instance.Output("Scene {0} options:", null, m_scene.Name);
149 MainConsole.Instance.Output(cdl.ToString()); 149 MainConsole.Instance.Output(cdl.ToString());
150 } 150 }
151 151
@@ -160,7 +160,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Attachments
160 string value = args[4]; 160 string value = args[4];
161 SetSceneDebugOptions(new Dictionary<string, string>() { { key, value } }); 161 SetSceneDebugOptions(new Dictionary<string, string>() { { key, value } });
162 162
163 MainConsole.Instance.OutputFormat("Set {0} debug scene {1} = {2}", m_scene.Name, key, value); 163 MainConsole.Instance.Output("Set {0} debug scene {1} = {2}", null, m_scene.Name, key, value);
164 } 164 }
165 else 165 else
166 { 166 {
diff --git a/OpenSim/Region/ScriptEngine/XEngine/ScriptEngineConsoleCommands.cs b/OpenSim/Region/ScriptEngine/XEngine/ScriptEngineConsoleCommands.cs
index efb854d..01e35c1 100644..100755
--- a/OpenSim/Region/ScriptEngine/XEngine/ScriptEngineConsoleCommands.cs
+++ b/OpenSim/Region/ScriptEngine/XEngine/ScriptEngineConsoleCommands.cs
@@ -89,7 +89,7 @@ namespace OpenSim.Region.ScriptEngine.XEngine
89 } 89 }
90 90
91 MainConsole.Instance.Output(cdt.ToString()); 91 MainConsole.Instance.Output(cdt.ToString());
92 MainConsole.Instance.OutputFormat("Total: {0}", sensorInfo.Count); 92 MainConsole.Instance.Output("Total: {0}", null, sensorInfo.Count);
93 } 93 }
94 94
95 private void HandleShowTimers(string module, string[] cmdparams) 95 private void HandleShowTimers(string module, string[] cmdparams)
@@ -120,7 +120,7 @@ namespace OpenSim.Region.ScriptEngine.XEngine
120 } 120 }
121 121
122 MainConsole.Instance.Output(cdt.ToString()); 122 MainConsole.Instance.Output(cdt.ToString());
123 MainConsole.Instance.OutputFormat("Total: {0}", timersInfo.Count); 123 MainConsole.Instance.Output("Total: {0}", null, timersInfo.Count);
124 } 124 }
125 } 125 }
126} \ No newline at end of file 126} \ No newline at end of file
diff --git a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
index dd83744..e4a41de 100755
--- a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
+++ b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
@@ -456,7 +456,7 @@ namespace OpenSim.Region.ScriptEngine.XEngine
456 } 456 }
457 457
458 si.DebugLevel = newLevel; 458 si.DebugLevel = newLevel;
459 MainConsole.Instance.OutputFormat("Set debug level of {0} {1} to {2}", si.ScriptName, si.ItemID, newLevel); 459 MainConsole.Instance.Output("Set debug level of {0} {1} to {2}", null, si.ScriptName, si.ItemID, newLevel);
460 } 460 }
461 461
462 /// <summary> 462 /// <summary>
@@ -472,12 +472,12 @@ namespace OpenSim.Region.ScriptEngine.XEngine
472 if (ConsoleUtil.TryParseConsoleNaturalInt(MainConsole.Instance, args[3], out newDebug)) 472 if (ConsoleUtil.TryParseConsoleNaturalInt(MainConsole.Instance, args[3], out newDebug))
473 { 473 {
474 DebugLevel = newDebug; 474 DebugLevel = newDebug;
475 MainConsole.Instance.OutputFormat("Debug level set to {0} in XEngine for region {1}", newDebug, m_Scene.Name); 475 MainConsole.Instance.Output("Debug level set to {0} in XEngine for region {1}", null, newDebug, m_Scene.Name);
476 } 476 }
477 } 477 }
478 else if (args.Length == 3) 478 else if (args.Length == 3)
479 { 479 {
480 MainConsole.Instance.OutputFormat("Current debug level is {0}", DebugLevel); 480 MainConsole.Instance.Output("Current debug level is {0}", null, DebugLevel);
481 } 481 }
482 else 482 else
483 { 483 {
@@ -532,7 +532,7 @@ namespace OpenSim.Region.ScriptEngine.XEngine
532 532
533 if (!UUID.TryParse(rawItemId, out itemId)) 533 if (!UUID.TryParse(rawItemId, out itemId))
534 { 534 {
535 MainConsole.Instance.OutputFormat("ERROR: {0} is not a valid UUID", rawItemId); 535 MainConsole.Instance.Output("ERROR: {0} is not a valid UUID", null, rawItemId);
536 continue; 536 continue;
537 } 537 }
538 538
@@ -617,8 +617,8 @@ namespace OpenSim.Region.ScriptEngine.XEngine
617 { 617 {
618 lock (m_Scripts) 618 lock (m_Scripts)
619 { 619 {
620 MainConsole.Instance.OutputFormat( 620 MainConsole.Instance.Output(
621 "Showing {0} scripts in {1}", m_Scripts.Count, m_Scene.RegionInfo.RegionName); 621 "Showing {0} scripts in {1}", null, m_Scripts.Count, m_Scene.RegionInfo.RegionName);
622 } 622 }
623 } 623 }
624 624
@@ -669,8 +669,9 @@ namespace OpenSim.Region.ScriptEngine.XEngine
669 instance.Suspend(); 669 instance.Suspend();
670 670
671 SceneObjectPart sop = m_Scene.GetSceneObjectPart(instance.ObjectID); 671 SceneObjectPart sop = m_Scene.GetSceneObjectPart(instance.ObjectID);
672 MainConsole.Instance.OutputFormat( 672 MainConsole.Instance.Output(
673 "Suspended {0}.{1}, item UUID {2}, prim UUID {3} @ {4}", 673 "Suspended {0}.{1}, item UUID {2}, prim UUID {3} @ {4}",
674 null,
674 instance.PrimName, instance.ScriptName, instance.ItemID, instance.ObjectID, sop.AbsolutePosition); 675 instance.PrimName, instance.ScriptName, instance.ItemID, instance.ObjectID, sop.AbsolutePosition);
675 } 676 }
676 } 677 }
@@ -682,8 +683,9 @@ namespace OpenSim.Region.ScriptEngine.XEngine
682 instance.Resume(); 683 instance.Resume();
683 684
684 SceneObjectPart sop = m_Scene.GetSceneObjectPart(instance.ObjectID); 685 SceneObjectPart sop = m_Scene.GetSceneObjectPart(instance.ObjectID);
685 MainConsole.Instance.OutputFormat( 686 MainConsole.Instance.Output(
686 "Resumed {0}.{1}, item UUID {2}, prim UUID {3} @ {4}", 687 "Resumed {0}.{1}, item UUID {2}, prim UUID {3} @ {4}",
688 null,
687 instance.PrimName, instance.ScriptName, instance.ItemID, instance.ObjectID, sop.AbsolutePosition); 689 instance.PrimName, instance.ScriptName, instance.ItemID, instance.ObjectID, sop.AbsolutePosition);
688 } 690 }
689 } 691 }
@@ -695,8 +697,9 @@ namespace OpenSim.Region.ScriptEngine.XEngine
695 instance.Start(); 697 instance.Start();
696 698
697 SceneObjectPart sop = m_Scene.GetSceneObjectPart(instance.ObjectID); 699 SceneObjectPart sop = m_Scene.GetSceneObjectPart(instance.ObjectID);
698 MainConsole.Instance.OutputFormat( 700 MainConsole.Instance.Output(
699 "Started {0}.{1}, item UUID {2}, prim UUID {3} @ {4}", 701 "Started {0}.{1}, item UUID {2}, prim UUID {3} @ {4}",
702 null,
700 instance.PrimName, instance.ScriptName, instance.ItemID, instance.ObjectID, sop.AbsolutePosition); 703 instance.PrimName, instance.ScriptName, instance.ItemID, instance.ObjectID, sop.AbsolutePosition);
701 } 704 }
702 } 705 }
@@ -710,8 +713,9 @@ namespace OpenSim.Region.ScriptEngine.XEngine
710 instance.Stop(0); 713 instance.Stop(0);
711 714
712 SceneObjectPart sop = m_Scene.GetSceneObjectPart(instance.ObjectID); 715 SceneObjectPart sop = m_Scene.GetSceneObjectPart(instance.ObjectID);
713 MainConsole.Instance.OutputFormat( 716 MainConsole.Instance.Output(
714 "Stopped {0}.{1}, item UUID {2}, prim UUID {3} @ {4}", 717 "Stopped {0}.{1}, item UUID {2}, prim UUID {3} @ {4}",
718 null,
715 instance.PrimName, instance.ScriptName, instance.ItemID, instance.ObjectID, sop.AbsolutePosition); 719 instance.PrimName, instance.ScriptName, instance.ItemID, instance.ObjectID, sop.AbsolutePosition);
716 } 720 }
717 } 721 }
diff --git a/OpenSim/Server/Base/CommandManager.cs b/OpenSim/Server/Base/CommandManager.cs
index ffb20ce..9ada974 100644..100755
--- a/OpenSim/Server/Base/CommandManager.cs
+++ b/OpenSim/Server/Base/CommandManager.cs
@@ -178,7 +178,8 @@ namespace OpenSim.Server.Base
178 { 178 {
179 Dictionary<string, object> plugin = (Dictionary<string, object>)result[k]; 179 Dictionary<string, object> plugin = (Dictionary<string, object>)result[k];
180 bool enabled = (bool)plugin["enabled"]; 180 bool enabled = (bool)plugin["enabled"];
181 MainConsole.Instance.OutputFormat("{0}) {1} {2} rev. {3}", 181 MainConsole.Instance.Output("{0}) {1} {2} rev. {3}",
182 null,
182 k, 183 k,
183 enabled == true ? "[ ]" : "[X]", 184 enabled == true ? "[ ]" : "[X]",
184 plugin["name"], plugin["version"]); 185 plugin["name"], plugin["version"]);
@@ -215,7 +216,8 @@ namespace OpenSim.Server.Base
215 { 216 {
216 Dictionary<string, object> plugin = (Dictionary<string, object>)result[k]; 217 Dictionary<string, object> plugin = (Dictionary<string, object>)result[k];
217 bool enabled = (bool)plugin["enabled"]; 218 bool enabled = (bool)plugin["enabled"];
218 MainConsole.Instance.OutputFormat("{0}) {1} {2} rev. {3}", 219 MainConsole.Instance.Output("{0}) {1} {2} rev. {3}",
220 null,
219 k, 221 k,
220 enabled == true ? "[ ]" : "[X]", 222 enabled == true ? "[ ]" : "[X]",
221 plugin["name"], plugin["version"]); 223 plugin["name"], plugin["version"]);
@@ -235,7 +237,8 @@ namespace OpenSim.Server.Base
235 { 237 {
236 // name, version, repository 238 // name, version, repository
237 Dictionary<string, object> plugin = (Dictionary<string, object>)result[k]; 239 Dictionary<string, object> plugin = (Dictionary<string, object>)result[k];
238 MainConsole.Instance.OutputFormat("{0}) {1} rev. {2} {3}", 240 MainConsole.Instance.Output("{0}) {1} rev. {2} {3}",
241 null,
239 k, 242 k,
240 plugin["name"], 243 plugin["name"],
241 plugin["version"], 244 plugin["version"],
@@ -309,7 +312,8 @@ namespace OpenSim.Server.Base
309 { 312 {
310 Dictionary<string, object> repo = (Dictionary<string, object>)result[k]; 313 Dictionary<string, object> repo = (Dictionary<string, object>)result[k];
311 bool enabled = (bool)repo["enabled"]; 314 bool enabled = (bool)repo["enabled"];
312 MainConsole.Instance.OutputFormat("{0}) {1} {2}", 315 MainConsole.Instance.Output("{0}) {1} {2}",
316 null,
313 k, 317 k,
314 enabled == true ? "[ ]" : "[X]", 318 enabled == true ? "[ ]" : "[X]",
315 repo["name"], repo["url"]); 319 repo["name"], repo["url"]);
@@ -329,7 +333,8 @@ namespace OpenSim.Server.Base
329 int ndx = Convert.ToInt16(cmd[2]); 333 int ndx = Convert.ToInt16(cmd[2]);
330 PluginManager.AddinInfo(ndx, out result); 334 PluginManager.AddinInfo(ndx, out result);
331 335
332 MainConsole.Instance.OutputFormat("Name: {0}\nURL: {1}\nFile: {2}\nAuthor: {3}\nCategory: {4}\nDesc: {5}", 336 MainConsole.Instance.Output("Name: {0}\nURL: {1}\nFile: {2}\nAuthor: {3}\nCategory: {4}\nDesc: {5}",
337 null,
333 result["name"], 338 result["name"],
334 result["url"], 339 result["url"],
335 result["file_name"], 340 result["file_name"],
diff --git a/OpenSim/Server/Handlers/Asset/AssetServerConnector.cs b/OpenSim/Server/Handlers/Asset/AssetServerConnector.cs
index bad3ea2..b710ec1 100644..100755
--- a/OpenSim/Server/Handlers/Asset/AssetServerConnector.cs
+++ b/OpenSim/Server/Handlers/Asset/AssetServerConnector.cs
@@ -125,14 +125,14 @@ namespace OpenSim.Server.Handlers.Asset
125 125
126 if (asset == null || asset.Data.Length == 0) 126 if (asset == null || asset.Data.Length == 0)
127 { 127 {
128 MainConsole.Instance.OutputFormat("Could not find asset with ID {0}", args[2]); 128 MainConsole.Instance.Output("Could not find asset with ID {0}", null, args[2]);
129 return; 129 return;
130 } 130 }
131 131
132 if (!m_AssetService.Delete(asset.ID)) 132 if (!m_AssetService.Delete(asset.ID))
133 MainConsole.Instance.OutputFormat("ERROR: Could not delete asset {0} {1}", asset.ID, asset.Name); 133 MainConsole.Instance.Output("ERROR: Could not delete asset {0} {1}", null, asset.ID, asset.Name);
134 else 134 else
135 MainConsole.Instance.OutputFormat("Deleted asset {0} {1}", asset.ID, asset.Name); 135 MainConsole.Instance.Output("Deleted asset {0} {1}", null, asset.ID, asset.Name);
136 } 136 }
137 137
138 void HandleDumpAsset(string module, string[] args) 138 void HandleDumpAsset(string module, string[] args)
@@ -148,14 +148,14 @@ namespace OpenSim.Server.Handlers.Asset
148 148
149 if (!UUID.TryParse(rawAssetId, out assetId)) 149 if (!UUID.TryParse(rawAssetId, out assetId))
150 { 150 {
151 MainConsole.Instance.OutputFormat("ERROR: {0} is not a valid ID format", rawAssetId); 151 MainConsole.Instance.Output("ERROR: {0} is not a valid ID format", null, rawAssetId);
152 return; 152 return;
153 } 153 }
154 154
155 AssetBase asset = m_AssetService.Get(assetId.ToString()); 155 AssetBase asset = m_AssetService.Get(assetId.ToString());
156 if (asset == null) 156 if (asset == null)
157 { 157 {
158 MainConsole.Instance.OutputFormat("ERROR: No asset found with ID {0}", assetId); 158 MainConsole.Instance.Output("ERROR: No asset found with ID {0}", null, assetId);
159 return; 159 return;
160 } 160 }
161 161
@@ -172,7 +172,7 @@ namespace OpenSim.Server.Handlers.Asset
172 } 172 }
173 } 173 }
174 174
175 MainConsole.Instance.OutputFormat("Asset dumped to file {0}", fileName); 175 MainConsole.Instance.Output("Asset dumped to file {0}", null, fileName);
176 } 176 }
177 177
178 void HandleShowAsset(string module, string[] args) 178 void HandleShowAsset(string module, string[] args)
@@ -193,13 +193,13 @@ namespace OpenSim.Server.Handlers.Asset
193 193
194 int i; 194 int i;
195 195
196 MainConsole.Instance.OutputFormat("Name: {0}", asset.Name); 196 MainConsole.Instance.Output("Name: {0}", null, asset.Name);
197 MainConsole.Instance.OutputFormat("Description: {0}", asset.Description); 197 MainConsole.Instance.Output("Description: {0}", null, asset.Description);
198 MainConsole.Instance.OutputFormat("Type: {0} (type number = {1})", (AssetType)asset.Type, asset.Type); 198 MainConsole.Instance.Output("Type: {0} (type number = {1})", null, (AssetType)asset.Type, asset.Type);
199 MainConsole.Instance.OutputFormat("Content-type: {0}", asset.Metadata.ContentType); 199 MainConsole.Instance.Output("Content-type: {0}", null, asset.Metadata.ContentType);
200 MainConsole.Instance.OutputFormat("Size: {0} bytes", asset.Data.Length); 200 MainConsole.Instance.Output("Size: {0} bytes", null, asset.Data.Length);
201 MainConsole.Instance.OutputFormat("Temporary: {0}", asset.Temporary ? "yes" : "no"); 201 MainConsole.Instance.Output("Temporary: {0}", null, asset.Temporary ? "yes" : "no");
202 MainConsole.Instance.OutputFormat("Flags: {0}", asset.Metadata.Flags); 202 MainConsole.Instance.Output("Flags: {0}", null, asset.Metadata.Flags);
203 203
204 for (i = 0 ; i < 5 ; i++) 204 for (i = 0 ; i < 5 ; i++)
205 { 205 {
diff --git a/OpenSim/Services/GridService/GridService.cs b/OpenSim/Services/GridService/GridService.cs
index 78fffa6..7140b32 100644..100755
--- a/OpenSim/Services/GridService/GridService.cs
+++ b/OpenSim/Services/GridService/GridService.cs
@@ -772,7 +772,7 @@ namespace OpenSim.Services.GridService
772 772
773 if (!UUID.TryParse(rawRegionUuid, out regionUuid)) 773 if (!UUID.TryParse(rawRegionUuid, out regionUuid))
774 { 774 {
775 MainConsole.Instance.OutputFormat("{0} is not a valid region uuid", rawRegionUuid); 775 MainConsole.Instance.Output("{0} is not a valid region uuid", null, rawRegionUuid);
776 return; 776 return;
777 } 777 }
778 778
@@ -780,18 +780,18 @@ namespace OpenSim.Services.GridService
780 780
781 if (region == null) 781 if (region == null)
782 { 782 {
783 MainConsole.Instance.OutputFormat("No region with UUID {0}", regionUuid); 783 MainConsole.Instance.Output("No region with UUID {0}", null, regionUuid);
784 return; 784 return;
785 } 785 }
786 786
787 if (DeregisterRegion(regionUuid)) 787 if (DeregisterRegion(regionUuid))
788 { 788 {
789 MainConsole.Instance.OutputFormat("Deregistered {0} {1}", region.RegionName, regionUuid); 789 MainConsole.Instance.Output("Deregistered {0} {1}", null, region.RegionName, regionUuid);
790 } 790 }
791 else 791 else
792 { 792 {
793 // I don't think this can ever occur if we know that the region exists. 793 // I don't think this can ever occur if we know that the region exists.
794 MainConsole.Instance.OutputFormat("Error deregistering {0} {1}", region.RegionName, regionUuid); 794 MainConsole.Instance.Output("Error deregistering {0} {1}", null, region.RegionName, regionUuid);
795 } 795 }
796 } 796 }
797 } 797 }
@@ -828,7 +828,7 @@ namespace OpenSim.Services.GridService
828 MainConsole.Instance.Output("it will count regions that are inactive but were not deregistered from the grid service"); 828 MainConsole.Instance.Output("it will count regions that are inactive but were not deregistered from the grid service");
829 MainConsole.Instance.Output("(e.g. simulator crashed rather than shutting down cleanly).\n"); 829 MainConsole.Instance.Output("(e.g. simulator crashed rather than shutting down cleanly).\n");
830 830
831 MainConsole.Instance.OutputFormat("Grid size: {0} km squared.", size / 1000000); 831 MainConsole.Instance.Output("Grid size: {0} km squared.", null, size / 1000000);
832 } 832 }
833 833
834 private void HandleShowRegion(string module, string[] cmd) 834 private void HandleShowRegion(string module, string[] cmd)
@@ -877,7 +877,7 @@ namespace OpenSim.Services.GridService
877 877
878 if (region == null) 878 if (region == null)
879 { 879 {
880 MainConsole.Instance.OutputFormat("No region found at {0},{1}", x, y); 880 MainConsole.Instance.Output("No region found at {0},{1}", null, x, y);
881 return; 881 return;
882 } 882 }
883 883
diff --git a/OpenSim/Services/LLLoginService/LLLoginService.cs b/OpenSim/Services/LLLoginService/LLLoginService.cs
index b923761..22cdff5 100644..100755
--- a/OpenSim/Services/LLLoginService/LLLoginService.cs
+++ b/OpenSim/Services/LLLoginService/LLLoginService.cs
@@ -1122,22 +1122,22 @@ namespace OpenSim.Services.LLLoginService
1122 if (cmd.Length > 2) 1122 if (cmd.Length > 2)
1123 { 1123 {
1124 if (Int32.TryParse(cmd[2], out m_MinLoginLevel)) 1124 if (Int32.TryParse(cmd[2], out m_MinLoginLevel))
1125 MainConsole.Instance.OutputFormat("Set minimum login level to {0}", m_MinLoginLevel); 1125 MainConsole.Instance.Output("Set minimum login level to {0}", null, m_MinLoginLevel);
1126 else 1126 else
1127 MainConsole.Instance.OutputFormat("ERROR: {0} is not a valid login level", cmd[2]); 1127 MainConsole.Instance.Output("ERROR: {0} is not a valid login level", null, cmd[2]);
1128 } 1128 }
1129 break; 1129 break;
1130 1130
1131 case "reset": 1131 case "reset":
1132 m_MinLoginLevel = m_LoginServerConfig.GetInt("MinLoginLevel", 0); 1132 m_MinLoginLevel = m_LoginServerConfig.GetInt("MinLoginLevel", 0);
1133 MainConsole.Instance.OutputFormat("Reset min login level to {0}", m_MinLoginLevel); 1133 MainConsole.Instance.Output("Reset min login level to {0}", null, m_MinLoginLevel);
1134 break; 1134 break;
1135 1135
1136 case "text": 1136 case "text":
1137 if (cmd.Length > 2) 1137 if (cmd.Length > 2)
1138 { 1138 {
1139 m_WelcomeMessage = cmd[2]; 1139 m_WelcomeMessage = cmd[2];
1140 MainConsole.Instance.OutputFormat("Login welcome message set to '{0}'", m_WelcomeMessage); 1140 MainConsole.Instance.Output("Login welcome message set to '{0}'", null, m_WelcomeMessage);
1141 } 1141 }
1142 break; 1142 break;
1143 } 1143 }
diff --git a/OpenSim/Services/UserAccountService/GridUserService.cs b/OpenSim/Services/UserAccountService/GridUserService.cs
index 3cb672e..6cea69f 100644..100755
--- a/OpenSim/Services/UserAccountService/GridUserService.cs
+++ b/OpenSim/Services/UserAccountService/GridUserService.cs
@@ -94,7 +94,7 @@ namespace OpenSim.Services.UserAccountService
94 MainConsole.Instance.Output(cdl.ToString()); 94 MainConsole.Instance.Output(cdl.ToString());
95 } 95 }
96 96
97 MainConsole.Instance.OutputFormat("Entries: {0}", data.Length); 97 MainConsole.Instance.Output("Entries: {0}", null, data.Length);
98 } 98 }
99 99
100 protected void HandleShowGridUsersOnline(string module, string[] cmdparams) 100 protected void HandleShowGridUsersOnline(string module, string[] cmdparams)
@@ -123,7 +123,7 @@ namespace OpenSim.Services.UserAccountService
123 } 123 }
124 } 124 }
125 125
126 MainConsole.Instance.OutputFormat("Users online: {0}", onlineRecentlyCount); 126 MainConsole.Instance.Output("Users online: {0}", null, onlineRecentlyCount);
127 } 127 }
128 128
129 private GridUserData GetGridUserData(string userID) 129 private GridUserData GetGridUserData(string userID)
diff --git a/OpenSim/Services/UserAccountService/UserAccountService.cs b/OpenSim/Services/UserAccountService/UserAccountService.cs
index 9ac8418..5270799 100644..100755
--- a/OpenSim/Services/UserAccountService/UserAccountService.cs
+++ b/OpenSim/Services/UserAccountService/UserAccountService.cs
@@ -385,28 +385,28 @@ namespace OpenSim.Services.UserAccountService
385 // List<char> excluded = new List<char>(new char[]{' '}); 385 // List<char> excluded = new List<char>(new char[]{' '});
386 List<char> excluded = new List<char>(new char[]{' ', '@', '.', ':' }); //Protect user names from using valid HG identifiers. 386 List<char> excluded = new List<char>(new char[]{' ', '@', '.', ':' }); //Protect user names from using valid HG identifiers.
387 if (cmdparams.Length < 3) 387 if (cmdparams.Length < 3)
388 firstName = MainConsole.Instance.CmdPrompt("First name", "Default", excluded); 388 firstName = MainConsole.Instance.Prompt("First name", "Default", excluded);
389 else firstName = cmdparams[2]; 389 else firstName = cmdparams[2];
390 390
391 if (cmdparams.Length < 4) 391 if (cmdparams.Length < 4)
392 lastName = MainConsole.Instance.CmdPrompt("Last name", "User", excluded); 392 lastName = MainConsole.Instance.Prompt("Last name", "User", excluded);
393 else lastName = cmdparams[3]; 393 else lastName = cmdparams[3];
394 394
395 if (cmdparams.Length < 5) 395 if (cmdparams.Length < 5)
396 password = MainConsole.Instance.PasswdPrompt("Password"); 396 password = MainConsole.Instance.Prompt("Password", null, null, false);
397 else password = cmdparams[4]; 397 else password = cmdparams[4];
398 398
399 if (cmdparams.Length < 6) 399 if (cmdparams.Length < 6)
400 email = MainConsole.Instance.CmdPrompt("Email", ""); 400 email = MainConsole.Instance.Prompt("Email", "");
401 else email = cmdparams[5]; 401 else email = cmdparams[5];
402 402
403 if (cmdparams.Length < 7) 403 if (cmdparams.Length < 7)
404 rawPrincipalId = MainConsole.Instance.CmdPrompt("User ID (enter for random)", ""); 404 rawPrincipalId = MainConsole.Instance.Prompt("User ID (enter for random)", "");
405 else 405 else
406 rawPrincipalId = cmdparams[6]; 406 rawPrincipalId = cmdparams[6];
407 407
408 if (cmdparams.Length < 8) 408 if (cmdparams.Length < 8)
409 model = MainConsole.Instance.CmdPrompt("Model name",""); 409 model = MainConsole.Instance.Prompt("Model name","");
410 else 410 else
411 model = cmdparams[7]; 411 model = cmdparams[7];
412 412
@@ -434,19 +434,19 @@ namespace OpenSim.Services.UserAccountService
434 434
435 if (ua == null) 435 if (ua == null)
436 { 436 {
437 MainConsole.Instance.OutputFormat("No user named {0} {1}", firstName, lastName); 437 MainConsole.Instance.Output("No user named {0} {1}", null, firstName, lastName);
438 return; 438 return;
439 } 439 }
440 440
441 MainConsole.Instance.OutputFormat("Name: {0}", ua.Name); 441 MainConsole.Instance.Output("Name: {0}", null, ua.Name);
442 MainConsole.Instance.OutputFormat("ID: {0}", ua.PrincipalID); 442 MainConsole.Instance.Output("ID: {0}", null, ua.PrincipalID);
443 MainConsole.Instance.OutputFormat("Title: {0}", ua.UserTitle); 443 MainConsole.Instance.Output("Title: {0}", null, ua.UserTitle);
444 MainConsole.Instance.OutputFormat("E-mail: {0}", ua.Email); 444 MainConsole.Instance.Output("E-mail: {0}", null, ua.Email);
445 MainConsole.Instance.OutputFormat("Created: {0}", Utils.UnixTimeToDateTime(ua.Created)); 445 MainConsole.Instance.Output("Created: {0}", null, Utils.UnixTimeToDateTime(ua.Created));
446 MainConsole.Instance.OutputFormat("Level: {0}", ua.UserLevel); 446 MainConsole.Instance.Output("Level: {0}", null, ua.UserLevel);
447 MainConsole.Instance.OutputFormat("Flags: {0}", ua.UserFlags); 447 MainConsole.Instance.Output("Flags: {0}", null, ua.UserFlags);
448 foreach (KeyValuePair<string, Object> kvp in ua.ServiceURLs) 448 foreach (KeyValuePair<string, Object> kvp in ua.ServiceURLs)
449 MainConsole.Instance.OutputFormat("{0}: {1}", kvp.Key, kvp.Value); 449 MainConsole.Instance.Output("{0}: {1}", null, kvp.Key, kvp.Value);
450 } 450 }
451 451
452 protected void HandleResetUserPassword(string module, string[] cmdparams) 452 protected void HandleResetUserPassword(string module, string[] cmdparams)
@@ -456,21 +456,21 @@ namespace OpenSim.Services.UserAccountService
456 string newPassword; 456 string newPassword;
457 457
458 if (cmdparams.Length < 4) 458 if (cmdparams.Length < 4)
459 firstName = MainConsole.Instance.CmdPrompt("First name"); 459 firstName = MainConsole.Instance.Prompt("First name");
460 else firstName = cmdparams[3]; 460 else firstName = cmdparams[3];
461 461
462 if (cmdparams.Length < 5) 462 if (cmdparams.Length < 5)
463 lastName = MainConsole.Instance.CmdPrompt("Last name"); 463 lastName = MainConsole.Instance.Prompt("Last name");
464 else lastName = cmdparams[4]; 464 else lastName = cmdparams[4];
465 465
466 if (cmdparams.Length < 6) 466 if (cmdparams.Length < 6)
467 newPassword = MainConsole.Instance.PasswdPrompt("New password"); 467 newPassword = MainConsole.Instance.Prompt("New password", null, null, false);
468 else newPassword = cmdparams[5]; 468 else newPassword = cmdparams[5];
469 469
470 UserAccount account = GetUserAccount(UUID.Zero, firstName, lastName); 470 UserAccount account = GetUserAccount(UUID.Zero, firstName, lastName);
471 if (account == null) 471 if (account == null)
472 { 472 {
473 MainConsole.Instance.OutputFormat("No such user as {0} {1}", firstName, lastName); 473 MainConsole.Instance.Output("No such user as {0} {1}", null, firstName, lastName);
474 return; 474 return;
475 } 475 }
476 476
@@ -479,9 +479,9 @@ namespace OpenSim.Services.UserAccountService
479 success = m_AuthenticationService.SetPassword(account.PrincipalID, newPassword); 479 success = m_AuthenticationService.SetPassword(account.PrincipalID, newPassword);
480 480
481 if (!success) 481 if (!success)
482 MainConsole.Instance.OutputFormat("Unable to reset password for account {0} {1}.", firstName, lastName); 482 MainConsole.Instance.Output("Unable to reset password for account {0} {1}.", null, firstName, lastName);
483 else 483 else
484 MainConsole.Instance.OutputFormat("Password reset for user {0} {1}", firstName, lastName); 484 MainConsole.Instance.Output("Password reset for user {0} {1}", null, firstName, lastName);
485 } 485 }
486 486
487 protected void HandleResetUserEmail(string module, string[] cmdparams) 487 protected void HandleResetUserEmail(string module, string[] cmdparams)
@@ -491,21 +491,21 @@ namespace OpenSim.Services.UserAccountService
491 string newEmail; 491 string newEmail;
492 492
493 if (cmdparams.Length < 4) 493 if (cmdparams.Length < 4)
494 firstName = MainConsole.Instance.CmdPrompt("First name"); 494 firstName = MainConsole.Instance.Prompt("First name");
495 else firstName = cmdparams[3]; 495 else firstName = cmdparams[3];
496 496
497 if (cmdparams.Length < 5) 497 if (cmdparams.Length < 5)
498 lastName = MainConsole.Instance.CmdPrompt("Last name"); 498 lastName = MainConsole.Instance.Prompt("Last name");
499 else lastName = cmdparams[4]; 499 else lastName = cmdparams[4];
500 500
501 if (cmdparams.Length < 6) 501 if (cmdparams.Length < 6)
502 newEmail = MainConsole.Instance.PasswdPrompt("New Email"); 502 newEmail = MainConsole.Instance.Prompt("New Email");
503 else newEmail = cmdparams[5]; 503 else newEmail = cmdparams[5];
504 504
505 UserAccount account = GetUserAccount(UUID.Zero, firstName, lastName); 505 UserAccount account = GetUserAccount(UUID.Zero, firstName, lastName);
506 if (account == null) 506 if (account == null)
507 { 507 {
508 MainConsole.Instance.OutputFormat("No such user as {0} {1}", firstName, lastName); 508 MainConsole.Instance.Output("No such user as {0} {1}", null, firstName, lastName);
509 return; 509 return;
510 } 510 }
511 511
@@ -515,9 +515,9 @@ namespace OpenSim.Services.UserAccountService
515 515
516 success = StoreUserAccount(account); 516 success = StoreUserAccount(account);
517 if (!success) 517 if (!success)
518 MainConsole.Instance.OutputFormat("Unable to set Email for account {0} {1}.", firstName, lastName); 518 MainConsole.Instance.Output("Unable to set Email for account {0} {1}.", null, firstName, lastName);
519 else 519 else
520 MainConsole.Instance.OutputFormat("User Email set for user {0} {1} to {2}", firstName, lastName, account.Email); 520 MainConsole.Instance.Output("User Email set for user {0} {1} to {2}", null, firstName, lastName, account.Email);
521 } 521 }
522 522
523 523
@@ -529,25 +529,25 @@ namespace OpenSim.Services.UserAccountService
529 int level; 529 int level;
530 530
531 if (cmdparams.Length < 4) 531 if (cmdparams.Length < 4)
532 firstName = MainConsole.Instance.CmdPrompt("First name"); 532 firstName = MainConsole.Instance.Prompt("First name");
533 else firstName = cmdparams[3]; 533 else firstName = cmdparams[3];
534 534
535 if (cmdparams.Length < 5) 535 if (cmdparams.Length < 5)
536 lastName = MainConsole.Instance.CmdPrompt("Last name"); 536 lastName = MainConsole.Instance.Prompt("Last name");
537 else lastName = cmdparams[4]; 537 else lastName = cmdparams[4];
538 538
539 UserAccount account = GetUserAccount(UUID.Zero, firstName, lastName); 539 UserAccount account = GetUserAccount(UUID.Zero, firstName, lastName);
540 if (account == null) { 540 if (account == null) {
541 MainConsole.Instance.OutputFormat("No such user"); 541 MainConsole.Instance.Output("No such user");
542 return; 542 return;
543 } 543 }
544 544
545 if (cmdparams.Length < 6) 545 if (cmdparams.Length < 6)
546 rawLevel = MainConsole.Instance.CmdPrompt("User level"); 546 rawLevel = MainConsole.Instance.Prompt("User level");
547 else rawLevel = cmdparams[5]; 547 else rawLevel = cmdparams[5];
548 548
549 if(int.TryParse(rawLevel, out level) == false) { 549 if(int.TryParse(rawLevel, out level) == false) {
550 MainConsole.Instance.OutputFormat("Invalid user level"); 550 MainConsole.Instance.Output("Invalid user level");
551 return; 551 return;
552 } 552 }
553 553
@@ -555,9 +555,9 @@ namespace OpenSim.Services.UserAccountService
555 555
556 bool success = StoreUserAccount(account); 556 bool success = StoreUserAccount(account);
557 if (!success) 557 if (!success)
558 MainConsole.Instance.OutputFormat("Unable to set user level for account {0} {1}.", firstName, lastName); 558 MainConsole.Instance.Output("Unable to set user level for account {0} {1}.", null, firstName, lastName);
559 else 559 else
560 MainConsole.Instance.OutputFormat("User level set for user {0} {1} to {2}", firstName, lastName, level); 560 MainConsole.Instance.Output("User level set for user {0} {1} to {2}", null, firstName, lastName, level);
561 } 561 }
562 562
563 #endregion 563 #endregion
diff --git a/OpenSim/Tools/pCampBot/BotManager.cs b/OpenSim/Tools/pCampBot/BotManager.cs
index 60e6ce3..2b6fbce 100644..100755
--- a/OpenSim/Tools/pCampBot/BotManager.cs
+++ b/OpenSim/Tools/pCampBot/BotManager.cs
@@ -352,7 +352,7 @@ namespace pCampBot
352 } 352 }
353 else 353 else
354 { 354 {
355 MainConsole.Instance.OutputFormat("No behaviour with abbreviated name {0} found", abName); 355 MainConsole.Instance.Output("No behaviour with abbreviated name {0} found", null, abName);
356 } 356 }
357 } 357 }
358 358
@@ -365,8 +365,8 @@ namespace pCampBot
365 { 365 {
366 if (BotConnectingState != BotManagerBotConnectingState.Ready) 366 if (BotConnectingState != BotManagerBotConnectingState.Ready)
367 { 367 {
368 MainConsole.Instance.OutputFormat( 368 MainConsole.Instance.Output(
369 "Bot connecting status is {0}. Please wait for previous process to complete.", BotConnectingState); 369 "Bot connecting status is {0}. Please wait for previous process to complete.", null, BotConnectingState);
370 return; 370 return;
371 } 371 }
372 372
@@ -486,8 +486,9 @@ namespace pCampBot
486 BotManager bm, List<IBehaviour> behaviours, 486 BotManager bm, List<IBehaviour> behaviours,
487 string firstName, string lastName, string password, string loginUri, string startLocation, string wearSetting) 487 string firstName, string lastName, string password, string loginUri, string startLocation, string wearSetting)
488 { 488 {
489 MainConsole.Instance.OutputFormat( 489 MainConsole.Instance.Output(
490 "[BOT MANAGER]: Creating bot {0} {1}, behaviours are {2}", 490 "[BOT MANAGER]: Creating bot {0} {1}, behaviours are {2}",
491 null,
491 firstName, lastName, string.Join(",", behaviours.ConvertAll<string>(b => b.Name).ToArray())); 492 firstName, lastName, string.Join(",", behaviours.ConvertAll<string>(b => b.Name).ToArray()));
492 493
493 Bot pb = new Bot(bm, behaviours, firstName, lastName, password, startLocation, loginUri); 494 Bot pb = new Bot(bm, behaviours, firstName, lastName, password, startLocation, loginUri);
@@ -552,7 +553,7 @@ namespace pCampBot
552 botsToConnect = Math.Min(botsToConnect, disconnectedBots); 553 botsToConnect = Math.Min(botsToConnect, disconnectedBots);
553 } 554 }
554 555
555 MainConsole.Instance.OutputFormat("Connecting {0} bots", botsToConnect); 556 MainConsole.Instance.Output("Connecting {0} bots", null, botsToConnect);
556 557
557 ConnectBots(botsToConnect); 558 ConnectBots(botsToConnect);
558 } 559 }
@@ -562,7 +563,7 @@ namespace pCampBot
562 { 563 {
563 if (cmd.Length < 3 || cmd.Length > 4) 564 if (cmd.Length < 3 || cmd.Length > 4)
564 { 565 {
565 MainConsole.Instance.OutputFormat("Usage: add behaviour <abbreviated-behaviour> [<bot-number>]"); 566 MainConsole.Instance.Output("Usage: add behaviour <abbreviated-behaviour> [<bot-number>]");
566 return; 567 return;
567 } 568 }
568 569
@@ -585,7 +586,7 @@ namespace pCampBot
585 586
586 if (bot == null) 587 if (bot == null)
587 { 588 {
588 MainConsole.Instance.OutputFormat("Error: No bot found with number {0}", botNumber); 589 MainConsole.Instance.Output("Error: No bot found with number {0}", null, botNumber);
589 return; 590 return;
590 } 591 }
591 592
@@ -606,8 +607,9 @@ namespace pCampBot
606 behavioursAdded.Add(behaviour); 607 behavioursAdded.Add(behaviour);
607 } 608 }
608 609
609 MainConsole.Instance.OutputFormat( 610 MainConsole.Instance.Output(
610 "Added behaviours {0} to bot {1}", 611 "Added behaviours {0} to bot {1}",
612 null,
611 string.Join(", ", behavioursAdded.ConvertAll<string>(b => b.Name).ToArray()), bot.Name); 613 string.Join(", ", behavioursAdded.ConvertAll<string>(b => b.Name).ToArray()), bot.Name);
612 } 614 }
613 } 615 }
@@ -616,7 +618,7 @@ namespace pCampBot
616 { 618 {
617 if (cmd.Length < 3 || cmd.Length > 4) 619 if (cmd.Length < 3 || cmd.Length > 4)
618 { 620 {
619 MainConsole.Instance.OutputFormat("Usage: remove behaviour <abbreviated-behaviour> [<bot-number>]"); 621 MainConsole.Instance.Output("Usage: remove behaviour <abbreviated-behaviour> [<bot-number>]");
620 return; 622 return;
621 } 623 }
622 624
@@ -639,7 +641,7 @@ namespace pCampBot
639 641
640 if (bot == null) 642 if (bot == null)
641 { 643 {
642 MainConsole.Instance.OutputFormat("Error: No bot found with number {0}", botNumber); 644 MainConsole.Instance.Output("Error: No bot found with number {0}", null, botNumber);
643 return; 645 return;
644 } 646 }
645 647
@@ -664,8 +666,9 @@ namespace pCampBot
664 } 666 }
665 } 667 }
666 668
667 MainConsole.Instance.OutputFormat( 669 MainConsole.Instance.Output(
668 "Removed behaviours {0} from bot {1}", 670 "Removed behaviours {0} from bot {1}",
671 null,
669 string.Join(", ", behavioursRemoved.ConvertAll<string>(b => b.Name).ToArray()), bot.Name); 672 string.Join(", ", behavioursRemoved.ConvertAll<string>(b => b.Name).ToArray()), bot.Name);
670 } 673 }
671 } 674 }
@@ -701,7 +704,7 @@ namespace pCampBot
701 704
702 private void DisconnectBotsInternal(List<Bot> connectedBots, int disconnectCount) 705 private void DisconnectBotsInternal(List<Bot> connectedBots, int disconnectCount)
703 { 706 {
704 MainConsole.Instance.OutputFormat("Disconnecting {0} bots", disconnectCount); 707 MainConsole.Instance.Output("Disconnecting {0} bots", null, disconnectCount);
705 708
706 int disconnectedBots = 0; 709 int disconnectedBots = 0;
707 710
@@ -731,7 +734,7 @@ namespace pCampBot
731 { 734 {
732 if (bot.ConnectionState == ConnectionState.Connected) 735 if (bot.ConnectionState == ConnectionState.Connected)
733 { 736 {
734 MainConsole.Instance.OutputFormat("Sitting bot {0} on ground.", bot.Name); 737 MainConsole.Instance.Output("Sitting bot {0} on ground.", null, bot.Name);
735 bot.SitOnGround(); 738 bot.SitOnGround();
736 } 739 }
737 } 740 }
@@ -746,7 +749,7 @@ namespace pCampBot
746 { 749 {
747 if (bot.ConnectionState == ConnectionState.Connected) 750 if (bot.ConnectionState == ConnectionState.Connected)
748 { 751 {
749 MainConsole.Instance.OutputFormat("Standing bot {0} from ground.", bot.Name); 752 MainConsole.Instance.Output("Standing bot {0} from ground.", null, bot.Name);
750 bot.Stand(); 753 bot.Stand();
751 } 754 }
752 } 755 }
@@ -761,7 +764,7 @@ namespace pCampBot
761 764
762 if (connectedBots > 0) 765 if (connectedBots > 0)
763 { 766 {
764 MainConsole.Instance.OutputFormat("Please disconnect {0} connected bots first", connectedBots); 767 MainConsole.Instance.Output("Please disconnect {0} connected bots first", null, connectedBots);
765 return; 768 return;
766 } 769 }
767 } 770 }
@@ -785,8 +788,8 @@ namespace pCampBot
785 if (!ConsoleUtil.TryParseConsoleBool(MainConsole.Instance, rawValue, out newSendAgentUpdatesSetting)) 788 if (!ConsoleUtil.TryParseConsoleBool(MainConsole.Instance, rawValue, out newSendAgentUpdatesSetting))
786 return; 789 return;
787 790
788 MainConsole.Instance.OutputFormat( 791 MainConsole.Instance.Output("Setting SEND_AGENT_UPDATES to {0} for all bots",
789 "Setting SEND_AGENT_UPDATES to {0} for all bots", newSendAgentUpdatesSetting); 792 null, newSendAgentUpdatesSetting);
790 793
791 lock (m_bots) 794 lock (m_bots)
792 m_bots.ForEach(b => b.Client.Settings.SEND_AGENT_UPDATES = newSendAgentUpdatesSetting); 795 m_bots.ForEach(b => b.Client.Settings.SEND_AGENT_UPDATES = newSendAgentUpdatesSetting);
@@ -801,7 +804,7 @@ namespace pCampBot
801 { 804 {
802 if (args.Length != 6) 805 if (args.Length != 6)
803 { 806 {
804 MainConsole.Instance.OutputFormat("Usage: debug lludp packet <level> <bot-first-name> <bot-last-name>"); 807 MainConsole.Instance.Output("Usage: debug lludp packet <level> <bot-first-name> <bot-last-name>");
805 return; 808 return;
806 } 809 }
807 810
@@ -820,26 +823,26 @@ namespace pCampBot
820 823
821 if (bot == null) 824 if (bot == null)
822 { 825 {
823 MainConsole.Instance.OutputFormat("No bot named {0} {1}", botFirstName, botLastName); 826 MainConsole.Instance.Output("No bot named {0} {1}", null, botFirstName, botLastName);
824 return; 827 return;
825 } 828 }
826 829
827 bot.PacketDebugLevel = level; 830 bot.PacketDebugLevel = level;
828 831
829 MainConsole.Instance.OutputFormat("Set debug level of {0} to {1}", bot.Name, bot.PacketDebugLevel); 832 MainConsole.Instance.Output("Set debug level of {0} to {1}", null, bot.Name, bot.PacketDebugLevel);
830 } 833 }
831 834
832 private void HandleShowRegions(string module, string[] cmd) 835 private void HandleShowRegions(string module, string[] cmd)
833 { 836 {
834 string outputFormat = "{0,-30} {1, -20} {2, -5} {3, -5}"; 837 string outputFormat = "{0,-30} {1, -20} {2, -5} {3, -5}";
835 MainConsole.Instance.OutputFormat(outputFormat, "Name", "Handle", "X", "Y"); 838 MainConsole.Instance.Output(outputFormat, null, "Name", "Handle", "X", "Y");
836 839
837 lock (RegionsKnown) 840 lock (RegionsKnown)
838 { 841 {
839 foreach (GridRegion region in RegionsKnown.Values) 842 foreach (GridRegion region in RegionsKnown.Values)
840 { 843 {
841 MainConsole.Instance.OutputFormat( 844 MainConsole.Instance.Output(
842 outputFormat, region.Name, region.RegionHandle, region.X, region.Y); 845 outputFormat, null, region.Name, region.RegionHandle, region.X, region.Y);
843 } 846 }
844 } 847 }
845 } 848 }
@@ -908,7 +911,7 @@ namespace pCampBot
908 911
909 if (bot == null) 912 if (bot == null)
910 { 913 {
911 MainConsole.Instance.OutputFormat("Error: No bot found with number {0}", botNumber); 914 MainConsole.Instance.Output("Error: No bot found with number {0}", null, botNumber);
912 return; 915 return;
913 } 916 }
914 917