1.1 stuff

This commit is contained in:
Bitl 2020-03-10 18:28:36 -07:00
parent ede653da4a
commit cededcd177
13 changed files with 429 additions and 207 deletions

View File

@ -193,7 +193,9 @@ namespace NovetusCMD
string version = lines[0];
GlobalVars.DefaultClient = lines[1];
GlobalVars.DefaultMap = lines[2];
GlobalVars.SelectedClient = GlobalVars.DefaultClient;
GlobalVars.RegisterClient1 = lines[3];
GlobalVars.RegisterClient2 = lines[4];
GlobalVars.SelectedClient = GlobalVars.DefaultClient;
GlobalVars.Map = GlobalVars.DefaultMap;
Console.Title = "Novetus " + version + " CMD";
@ -244,7 +246,7 @@ namespace NovetusCMD
if (CommandLine["map"] != null)
{
GlobalVars.Map = CommandLine["map"];
GlobalVars.MapPath = CommandLine["map"];
}
else
{
@ -350,8 +352,8 @@ namespace NovetusCMD
{
luafile = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\content\\scripts\\" + GlobalVars.ScriptGenName + ".lua";
}
string mapfile = GlobalVars.MapsDir + @"\\" + TreeNodeHelper.GetFolderNameFromPrefix(GlobalVars.Map) + GlobalVars.Map;
string rbxexe = "";
string mapfile = GlobalVars.MapPath;
string rbxexe = "";
if (GlobalVars.LegacyMode == true)
{
rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp.exe";

View File

@ -122,7 +122,6 @@ public class ClientScript
return GetFolderAndMapName(source, " -");
}
public static string CompileScript(string code, string tag, string endtag, string mapfile, string luafile, string rbxexe)
{
if (GlobalVars.FixScriptMapMode) {
@ -193,7 +192,7 @@ public class ClientScript
.Replace("%extraws%", GlobalVars.WebServer_ExtraDir + GlobalVars.Custom_Extra)
.Replace("%hat4ws%", GlobalVars.WebServer_HatDir + GlobalVars.Custom_Extra)
.Replace("%bodycolors%", GlobalVars.WebServer_BodyColors)
.Replace("%mapfiled%", GlobalVars.MapGameDir + GetFolderAndMapName(GlobalVars.Map))
.Replace("%mapfiled%", GlobalVars.MapPath)
.Replace("%tripcode%", GlobalVars.PlayerTripcode)
.Replace("%addonscriptpath%", GlobalVars.AddonScriptPath);
return compiled;

View File

@ -31,6 +31,7 @@ public static class GlobalVars
public static readonly string ConfigDir = BasePath + "\\config";
public static readonly string ClientDir = BasePath + "\\clients";
public static readonly string MapsDir = BasePath + "\\maps";
public static string MapPath = MapsDir + "\\" + DefaultMap;
public static readonly string BaseGameDir = "rbxasset://../../../";
public static readonly string SharedDataGameDir = BaseGameDir + "shareddata/";
public static readonly string MapGameDir = BaseGameDir + "maps/";
@ -143,7 +144,7 @@ public static class GlobalVars
public static string FullMapPath = "";
public static int RobloxPort = 53640;
public static int DefaultRobloxPort = 53640;
public static int WebServer_Port = (RobloxPort + 1);
public static int WebServer_Port = 40735;
public static int PlayerLimit = 12;
//player settings
public static int UserID = 0;
@ -158,7 +159,9 @@ public static class GlobalVars
//client shit
public static string SelectedClient = "";
public static string DefaultClient = "";
public static string DefaultMap = "";
public static string RegisterClient1 = "";
public static string RegisterClient2 = "";
public static string DefaultMap = "";
public static bool UsesPlayerName = false;
public static bool UsesID = true;
public static string SelectedClientDesc = "";

View File

@ -7,9 +7,11 @@
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Linq;
public class LauncherFuncs
{
@ -29,7 +31,7 @@ public class LauncherFuncs
public static void ReadConfigValues(string cfgpath)
{
string Decryptline1, Decryptline2, Decryptline3, Decryptline4, Decryptline5, Decryptline6, Decryptline7, Decryptline9, Decryptline10, Decryptline11, Decryptline12, Decryptline13;
string Decryptline1, Decryptline2, Decryptline3, Decryptline4, Decryptline5, Decryptline6, Decryptline7, Decryptline9, Decryptline10, Decryptline11, Decryptline12, Decryptline13, Decryptline14;
IniFile ini = new IniFile(cfgpath);
@ -119,6 +121,13 @@ public class LauncherFuncs
Decryptline13 = ini.IniReadValue(section, "DiscordRichPresence");
}
Decryptline14 = ini.IniReadValue(section, "MapPath");
if (string.IsNullOrWhiteSpace(Decryptline13)) {
ini.IniWriteValue(section, "MapPath", GlobalVars.MapPath.ToString());
Decryptline13 = ini.IniReadValue(section, "MapPath");
}
bool bline1 = Convert.ToBoolean(Decryptline1);
GlobalVars.CloseOnLaunch = bline1;
@ -168,6 +177,8 @@ public class LauncherFuncs
bool bline13 = Convert.ToBoolean(Decryptline13);
GlobalVars.DiscordPresence = bline13;
GlobalVars.MapPath = Decryptline14;
ReadCustomizationValues(GlobalVars.ConfigDir + "\\" + GlobalVars.ConfigNameCustomization);
}
@ -189,6 +200,7 @@ public class LauncherFuncs
ini.IniWriteValue(section, "ItemMakerDisableHelpMessage", GlobalVars.DisabledHelp.ToString());
ini.IniWriteValue(section, "PlayerTripcode", SecurityFuncs.Base64Encode(GlobalVars.PlayerTripcode.ToString()));
ini.IniWriteValue(section, "DiscordRichPresence", GlobalVars.DiscordPresence.ToString());
ini.IniWriteValue(section, "MapPath", GlobalVars.MapPath.ToString());
WriteCustomizationValues(GlobalVars.ConfigDir + "\\" + GlobalVars.ConfigNameCustomization);
}
@ -196,17 +208,17 @@ public class LauncherFuncs
{
GlobalVars.SelectedClient = GlobalVars.DefaultClient;
GlobalVars.Map = GlobalVars.DefaultMap;
GlobalVars.CloseOnLaunch = false;
GlobalVars.CloseOnLaunch = false;
GeneratePlayerID();
GlobalVars.PlayerName = "Player";
GlobalVars.SelectedClient = GlobalVars.DefaultClient;
GlobalVars.Map = GlobalVars.DefaultMap;
GlobalVars.RobloxPort = 53640;
GlobalVars.PlayerLimit = 12;
GlobalVars.Custom_Extra_ShowHats = false;
GlobalVars.UPnP = false;
GlobalVars.DisabledHelp = false;
GlobalVars.DiscordPresence = true;
GlobalVars.MapPath = GlobalVars.MapsDir + "\\" + GlobalVars.DefaultMap;
ResetCustomizationValues();
}

View File

@ -42,41 +42,35 @@ public static class SplashReader
{
DateTime today = DateTime.Now;
string splash = "";
if (IsTheSameDay(today, new DateTime(today.Year, 12, 24)) || IsTheSameDay(today, new DateTime(today.Year, 12, 25))) {
splash = "Merry Christmas!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 12, 31)) || IsTheSameDay(today, new DateTime(today.Year, 1, 1))) {
splash = "Happy New Year!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 10, 31))) {
splash = "Happy Halloween!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 6, 10))) {
splash = "Happy Birthday, Bitl!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 8, 27))) {
splash = "Happy Birthday, ROBLOX!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 10, 27))) {
splash = "Happy Birthday, Novetus!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 2, 15))) {
splash = "Happy Birthday, Carrot!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 6, 14))) {
splash = "Happy Birthday, MAO!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 9, 15))) {
splash = "Happy Birthday, Coke!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 5, 17))) {
splash = "Happy Birthday, TheLivingBee!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 10, 9))) {
splash = "Happy Leif Erikson Day! HINGA DINGA DURGEN!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 10, 10))) {
splash = "I used to wonder what friendship could be!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 4, 20))) {
splash = "4/20 lol";
} else if (IsTheSameDay(today, new DateTime(today.Year, 4, 27))) {
splash = "fluttershy is best pone";
} else if (IsTheSameDay(today, new DateTime(today.Year, 2, 11))) {
splash = "RIP Erik Cassel";
} else {
splash = RandomSplash();
}
return splash;
if (IsTheSameDay(today, new DateTime(today.Year, 12, 24)) || IsTheSameDay(today, new DateTime(today.Year, 12, 25))) {
splash = "Merry Christmas!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 12, 31)) || IsTheSameDay(today, new DateTime(today.Year, 1, 1))) {
splash = "Happy New Year!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 10, 31))) {
splash = "Happy Halloween!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 6, 10))) {
splash = "Happy Birthday, Bitl!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 8, 27))) {
splash = "Happy Birthday, ROBLOX!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 10, 27))) {
splash = "Happy Birthday, Novetus!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 10, 9))) {
splash = "Happy Leif Erikson Day! HINGA DINGA DURGEN!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 10, 10))) {
splash = "I used to wonder what friendship could be!";
} else if (IsTheSameDay(today, new DateTime(today.Year, 4, 20))) {
splash = "4/20 lol";
} else if (IsTheSameDay(today, new DateTime(today.Year, 4, 27))) {
splash = "fluttershy is best pone";
} else if (IsTheSameDay(today, new DateTime(today.Year, 2, 11))) {
splash = "RIP Erik Cassel";
} else if (IsTheSameDay(today, new DateTime(today.Year, 3, 20))) {
splash = " Rip and and tear and plant. Until it is done.";
} else {
splash = RandomSplash();
}
return splash;
}
}

View File

@ -6,11 +6,12 @@
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using System.Collections.Generic;
using System.Windows.Forms;
using System.IO;
using System.Linq;
public static class TreeNodeHelper
{
@ -21,7 +22,7 @@ public static class TreeNodeHelper
treeView.Nodes.Add(CreateDirectoryNode(rootDirectoryInfo));
}
public static TreeNode CreateDirectoryNode(DirectoryInfo directoryInfo)
public static TreeNode CreateDirectoryNode(DirectoryInfo directoryInfo)
{
var directoryNode = new TreeNode(directoryInfo.Name);
foreach (var directory in directoryInfo.GetDirectories())
@ -30,8 +31,8 @@ public static class TreeNodeHelper
directoryNode.Nodes.Add(new TreeNode(file.Name));
return directoryNode;
}
public static TreeNode SearchTreeView(string p_sSearchTerm, TreeNodeCollection p_Nodes)
public static TreeNode SearchTreeView(string p_sSearchTerm, TreeNodeCollection p_Nodes)
{
foreach (TreeNode node in p_Nodes) {
if (node.Text == p_sSearchTerm)
@ -48,8 +49,8 @@ public static class TreeNodeHelper
return null;
}
public static string GetFolderNameFromPrefix(string source, string seperator = " -")
public static string GetFolderNameFromPrefix(string source, string seperator = " -")
{
try {
string result = source.Substring(0, source.IndexOf(seperator));
@ -89,4 +90,23 @@ public static class TreeNodeHelper
}
return result;
}
public static List<TreeNode> Ancestors(this TreeNode node)
{
return AncestorsInternal(node).Reverse().ToList();
}
public static List<TreeNode> AncestorsAndSelf(this TreeNode node)
{
return AncestorsInternal(node, true).Reverse().ToList();
}
private static IEnumerable<TreeNode> AncestorsInternal(TreeNode node, bool self = false)
{
if (self)
yield return node;
while (node.Parent != null)
{
node = node.Parent;
yield return node;
}
}
}

View File

@ -56,7 +56,6 @@ namespace NovetusLauncher
this.label17 = new System.Windows.Forms.Label();
this.checkBox4 = new System.Windows.Forms.CheckBox();
this.button6 = new System.Windows.Forms.Button();
this.textBox3 = new System.Windows.Forms.TextBox();
this.treeView1 = new System.Windows.Forms.TreeView();
this.button23 = new System.Windows.Forms.Button();
this.button22 = new System.Windows.Forms.Button();
@ -91,6 +90,7 @@ namespace NovetusLauncher
this.tabPage8 = new System.Windows.Forms.TabPage();
this.richTextBox2 = new System.Windows.Forms.RichTextBox();
this.tabPage5 = new System.Windows.Forms.TabPage();
this.checkBox2 = new System.Windows.Forms.CheckBox();
this.label18 = new System.Windows.Forms.Label();
this.button26 = new System.Windows.Forms.Button();
this.button25 = new System.Windows.Forms.Button();
@ -120,7 +120,6 @@ namespace NovetusLauncher
this.label11 = new System.Windows.Forms.Label();
this.label12 = new System.Windows.Forms.Label();
this.label16 = new System.Windows.Forms.Label();
this.checkBox2 = new System.Windows.Forms.CheckBox();
this.tabControl1.SuspendLayout();
this.tabPage1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).BeginInit();
@ -316,7 +315,6 @@ namespace NovetusLauncher
this.tabPage2.Controls.Add(this.label17);
this.tabPage2.Controls.Add(this.checkBox4);
this.tabPage2.Controls.Add(this.button6);
this.tabPage2.Controls.Add(this.textBox3);
this.tabPage2.Controls.Add(this.treeView1);
this.tabPage2.Controls.Add(this.button23);
this.tabPage2.Controls.Add(this.button22);
@ -338,9 +336,9 @@ namespace NovetusLauncher
//
// button24
//
this.button24.Location = new System.Drawing.Point(204, 4);
this.button24.Location = new System.Drawing.Point(10, 4);
this.button24.Name = "button24";
this.button24.Size = new System.Drawing.Size(75, 23);
this.button24.Size = new System.Drawing.Size(188, 23);
this.button24.TabIndex = 59;
this.button24.Text = "Refresh List";
this.button24.UseVisualStyleBackColor = true;
@ -350,12 +348,11 @@ namespace NovetusLauncher
//
this.label17.Font = new System.Drawing.Font("Microsoft Sans Serif", 6.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label17.ForeColor = System.Drawing.Color.Red;
this.label17.Location = new System.Drawing.Point(10, 124);
this.label17.Location = new System.Drawing.Point(10, 141);
this.label17.Name = "label17";
this.label17.Size = new System.Drawing.Size(382, 36);
this.label17.Size = new System.Drawing.Size(382, 19);
this.label17.TabIndex = 58;
this.label17.Text = "NOTE: If you changed the server port, go to the CONSOLE and type \"webserver resta" +
"rt\" or \"restart\" to restart the web server or restart the launcher.";
this.label17.Text = "NOTE: The webserver port is static and it cannot be changed. It is 40735.";
this.label17.TextAlign = System.Drawing.ContentAlignment.TopCenter;
//
// checkBox4
@ -372,28 +369,20 @@ namespace NovetusLauncher
// button6
//
this.button6.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button6.Location = new System.Drawing.Point(284, 4);
this.button6.Location = new System.Drawing.Point(204, 4);
this.button6.Name = "button6";
this.button6.Size = new System.Drawing.Size(108, 23);
this.button6.Size = new System.Drawing.Size(188, 23);
this.button6.TabIndex = 56;
this.button6.Text = "Open Maps Folder";
this.button6.UseVisualStyleBackColor = true;
this.button6.Click += new System.EventHandler(this.Button6Click);
//
// textBox3
//
this.textBox3.Location = new System.Drawing.Point(10, 6);
this.textBox3.Name = "textBox3";
this.textBox3.Size = new System.Drawing.Size(188, 20);
this.textBox3.TabIndex = 55;
this.textBox3.TextChanged += new System.EventHandler(this.TextBox3TextChanged);
//
// treeView1
//
this.treeView1.HideSelection = false;
this.treeView1.Location = new System.Drawing.Point(10, 30);
this.treeView1.Name = "treeView1";
this.treeView1.Size = new System.Drawing.Size(382, 91);
this.treeView1.Size = new System.Drawing.Size(382, 108);
this.treeView1.TabIndex = 54;
this.treeView1.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.TreeView1AfterSelect);
//
@ -762,13 +751,11 @@ namespace NovetusLauncher
this.tabPage5.Controls.Add(this.checkBox2);
this.tabPage5.Controls.Add(this.label18);
this.tabPage5.Controls.Add(this.button26);
this.tabPage5.Controls.Add(this.button25);
this.tabPage5.Controls.Add(this.label7);
this.tabPage5.Controls.Add(this.label10);
this.tabPage5.Controls.Add(this.label9);
this.tabPage5.Controls.Add(this.label6);
this.tabPage5.Controls.Add(this.label5);
this.tabPage5.Controls.Add(this.button21);
this.tabPage5.Controls.Add(this.label8);
this.tabPage5.Controls.Add(this.button9);
this.tabPage5.Controls.Add(this.checkBox3);
@ -781,6 +768,19 @@ namespace NovetusLauncher
this.tabPage5.Text = "SETTINGS";
this.tabPage5.UseVisualStyleBackColor = true;
//
// checkBox2
//
this.checkBox2.AutoSize = true;
this.checkBox2.Checked = true;
this.checkBox2.CheckState = System.Windows.Forms.CheckState.Checked;
this.checkBox2.Location = new System.Drawing.Point(176, 8);
this.checkBox2.Name = "checkBox2";
this.checkBox2.Size = new System.Drawing.Size(135, 17);
this.checkBox2.TabIndex = 59;
this.checkBox2.Text = "Discord Rich Presence";
this.checkBox2.UseVisualStyleBackColor = true;
this.checkBox2.CheckedChanged += new System.EventHandler(this.checkBox2_CheckedChanged);
//
// label18
//
this.label18.Location = new System.Drawing.Point(113, 237);
@ -802,11 +802,12 @@ namespace NovetusLauncher
//
// button25
//
this.button25.Location = new System.Drawing.Point(6, 29);
this.button25.Font = new System.Drawing.Font("Microsoft Sans Serif", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button25.Location = new System.Drawing.Point(315, 31);
this.button25.Name = "button25";
this.button25.Size = new System.Drawing.Size(76, 21);
this.button25.Size = new System.Drawing.Size(63, 20);
this.button25.TabIndex = 56;
this.button25.Text = "Install Addon";
this.button25.Text = "Install Mod";
this.button25.UseVisualStyleBackColor = true;
this.button25.Click += new System.EventHandler(this.button25_Click);
//
@ -856,11 +857,12 @@ namespace NovetusLauncher
//
// button21
//
this.button21.Location = new System.Drawing.Point(6, 3);
this.button21.Font = new System.Drawing.Font("Microsoft Sans Serif", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button21.Location = new System.Drawing.Point(380, 31);
this.button21.Name = "button21";
this.button21.Size = new System.Drawing.Size(77, 21);
this.button21.Size = new System.Drawing.Size(35, 20);
this.button21.TabIndex = 44;
this.button21.Text = "Install URI";
this.button21.Text = "URI";
this.button21.UseVisualStyleBackColor = true;
this.button21.Click += new System.EventHandler(this.Button21Click);
//
@ -876,11 +878,11 @@ namespace NovetusLauncher
// button9
//
this.button9.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button9.Location = new System.Drawing.Point(89, 29);
this.button9.Location = new System.Drawing.Point(91, 4);
this.button9.Name = "button9";
this.button9.Size = new System.Drawing.Size(83, 21);
this.button9.Size = new System.Drawing.Size(69, 46);
this.button9.TabIndex = 37;
this.button9.Text = "Reset Config";
this.button9.Text = "Reset CFG";
this.button9.UseVisualStyleBackColor = true;
this.button9.Click += new System.EventHandler(this.Button9Click);
//
@ -910,11 +912,11 @@ namespace NovetusLauncher
// button5
//
this.button5.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button5.Location = new System.Drawing.Point(89, 3);
this.button5.Location = new System.Drawing.Point(14, 4);
this.button5.Name = "button5";
this.button5.Size = new System.Drawing.Size(73, 21);
this.button5.Size = new System.Drawing.Size(69, 46);
this.button5.TabIndex = 10;
this.button5.Text = "Save Config";
this.button5.Text = "Save CFG";
this.button5.UseVisualStyleBackColor = true;
this.button5.Click += new System.EventHandler(this.Button5Click);
//
@ -978,22 +980,23 @@ namespace NovetusLauncher
//
// button8
//
this.button8.Font = new System.Drawing.Font("Microsoft Sans Serif", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button8.Location = new System.Drawing.Point(223, 31);
this.button8.Name = "button8";
this.button8.Size = new System.Drawing.Size(94, 31);
this.button8.Size = new System.Drawing.Size(47, 20);
this.button8.TabIndex = 35;
this.button8.Text = "Customization";
this.button8.Text = "Avatar";
this.button8.UseVisualStyleBackColor = true;
this.button8.Click += new System.EventHandler(this.Button8Click);
//
// button3
//
this.button3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button3.Location = new System.Drawing.Point(323, 31);
this.button3.Font = new System.Drawing.Font("Microsoft Sans Serif", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button3.Location = new System.Drawing.Point(271, 31);
this.button3.Name = "button3";
this.button3.Size = new System.Drawing.Size(82, 31);
this.button3.Size = new System.Drawing.Size(43, 20);
this.button3.TabIndex = 6;
this.button3.Text = "Open Studio";
this.button3.Text = "Studio";
this.button3.UseVisualStyleBackColor = true;
this.button3.Click += new System.EventHandler(this.Button3Click);
//
@ -1042,9 +1045,9 @@ namespace NovetusLauncher
// label12
//
this.label12.Font = new System.Drawing.Font("Microsoft Sans Serif", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label12.Location = new System.Drawing.Point(223, 63);
this.label12.Location = new System.Drawing.Point(223, 51);
this.label12.Name = "label12";
this.label12.Size = new System.Drawing.Size(182, 13);
this.label12.Size = new System.Drawing.Size(192, 21);
this.label12.TabIndex = 0;
this.label12.Text = "Novetus!";
this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
@ -1057,19 +1060,6 @@ namespace NovetusLauncher
this.label16.Size = new System.Drawing.Size(2, 65);
this.label16.TabIndex = 51;
//
// checkBox2
//
this.checkBox2.AutoSize = true;
this.checkBox2.Checked = true;
this.checkBox2.CheckState = System.Windows.Forms.CheckState.Checked;
this.checkBox2.Location = new System.Drawing.Point(176, 8);
this.checkBox2.Name = "checkBox2";
this.checkBox2.Size = new System.Drawing.Size(135, 17);
this.checkBox2.TabIndex = 59;
this.checkBox2.Text = "Discord Rich Presence";
this.checkBox2.UseVisualStyleBackColor = true;
this.checkBox2.CheckedChanged += new System.EventHandler(this.checkBox2_CheckedChanged);
//
// MainForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
@ -1080,10 +1070,12 @@ namespace NovetusLauncher
this.Controls.Add(this.label16);
this.Controls.Add(this.label12);
this.Controls.Add(this.label28);
this.Controls.Add(this.button25);
this.Controls.Add(this.label11);
this.Controls.Add(this.pictureBox2);
this.Controls.Add(this.button3);
this.Controls.Add(this.button8);
this.Controls.Add(this.button21);
this.Controls.Add(this.label13);
this.Controls.Add(this.label15);
this.Controls.Add(this.button4);
@ -1106,7 +1098,6 @@ namespace NovetusLauncher
this.tabPage1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).EndInit();
this.tabPage2.ResumeLayout(false);
this.tabPage2.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown3)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown2)).EndInit();
this.tabPage3.ResumeLayout(false);
@ -1124,7 +1115,6 @@ namespace NovetusLauncher
private System.Windows.Forms.Label label17;
private System.Windows.Forms.CheckBox checkBox4;
private System.Windows.Forms.Button button6;
private System.Windows.Forms.TextBox textBox3;
private System.Windows.Forms.TreeView treeView1;
private System.Windows.Forms.Label label16;
private System.Windows.Forms.Label label12;

View File

@ -271,7 +271,6 @@ namespace NovetusLauncher
if (GlobalVars.CloseOnLaunch == true)
{
this.Visible = false;
textBox3.Text = "";
}
}
@ -283,7 +282,6 @@ namespace NovetusLauncher
if (GlobalVars.CloseOnLaunch == true)
{
this.Visible = false;
textBox3.Text = "";
}
}
@ -298,7 +296,6 @@ namespace NovetusLauncher
if (GlobalVars.CloseOnLaunch == true)
{
this.Visible = false;
textBox3.Text = "";
}
}
@ -308,7 +305,9 @@ namespace NovetusLauncher
string version = lines[0];
GlobalVars.DefaultClient = lines[1];
GlobalVars.DefaultMap = lines[2];
GlobalVars.SelectedClient = GlobalVars.DefaultClient;
GlobalVars.RegisterClient1 = lines[3];
GlobalVars.RegisterClient2 = lines[4];
GlobalVars.SelectedClient = GlobalVars.DefaultClient;
GlobalVars.Map = GlobalVars.DefaultMap;
this.Text = "Novetus " + version;
ConsolePrint("Novetus version " + version + " loaded. Initializing config.", 4);
@ -408,8 +407,10 @@ namespace NovetusLauncher
label26.Text = GlobalVars.SelectedClient;
label28.Text = GlobalVars.Map;
treeView1.SelectedNode = TreeNodeHelper.SearchTreeView(GlobalVars.Map, treeView1.Nodes);
treeView1.Focus();
numericUpDown1.Value = Convert.ToDecimal(GlobalVars.RobloxPort);
treeView1.Focus();
//GlobalVars.Map = treeView1.SelectedNode.Text.ToString();
// GlobalVars.MapPath = treeView1.SelectedNode.FullPath.ToString().Replace(@"\", @"\\");
numericUpDown1.Value = Convert.ToDecimal(GlobalVars.RobloxPort);
numericUpDown2.Value = Convert.ToDecimal(GlobalVars.RobloxPort);
label37.Text = GlobalVars.IP;
label38.Text = GlobalVars.RobloxPort.ToString();
@ -672,7 +673,6 @@ namespace NovetusLauncher
if (GlobalVars.CloseOnLaunch == true)
{
this.Visible = false;
textBox3.Text = "";
}
}
@ -684,7 +684,6 @@ namespace NovetusLauncher
if (GlobalVars.CloseOnLaunch == true)
{
this.Visible = false;
textBox3.Text = "";
}
}
@ -793,9 +792,11 @@ namespace NovetusLauncher
rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp_server.exe";
break;
case ScriptGenerator.ScriptType.Studio:
case ScriptGenerator.ScriptType.Solo:
rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp_studio.exe";
break;
case ScriptGenerator.ScriptType.Solo:
rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp_solo.exe";
break;
case ScriptGenerator.ScriptType.None:
default:
rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp.exe";
@ -898,8 +899,8 @@ namespace NovetusLauncher
{
string luafile = GetLuaFileName();
string rbxexe = GetClientEXEDir(ScriptGenerator.ScriptType.Solo);
string mapfile = GlobalVars.MapsDir + @"\\" + TreeNodeHelper.GetFolderNameFromPrefix(GlobalVars.Map) + GlobalVars.Map;
string quote = "\"";
string mapfile = GlobalVars.MapPath;
string quote = "\"";
string args = "";
if (GlobalVars.CustomArgs.Equals("%args%"))
{
@ -942,8 +943,8 @@ namespace NovetusLauncher
{
string luafile = GetLuaFileName();
string rbxexe = GetClientEXEDir(ScriptGenerator.ScriptType.Server);
string mapfile = GlobalVars.MapsDir + @"\\" + TreeNodeHelper.GetFolderNameFromPrefix(GlobalVars.Map) + GlobalVars.Map;
string quote = "\"";
string mapfile = GlobalVars.MapPath;
string quote = "\"";
string args = "";
if (GlobalVars.CustomArgs.Equals("%args%"))
{
@ -1001,8 +1002,8 @@ namespace NovetusLauncher
{
string luafile = GetLuaFileName();
string rbxexe = GetClientEXEDir(ScriptGenerator.ScriptType.Studio);
string mapfile = GlobalVars.MapsDir + @"\\" + TreeNodeHelper.GetFolderNameFromPrefix(GlobalVars.Map) + GlobalVars.Map;
string quote = "\"";
string mapfile = GlobalVars.MapPath;
string quote = "\"";
string args = "";
if (GlobalVars.CustomArgs.Equals("%args%"))
{
@ -1366,21 +1367,38 @@ namespace NovetusLauncher
{
try
{
string loadstring = GlobalVars.BasePath + "/" + System.AppDomain.CurrentDomain.FriendlyName;
string loadstring = GlobalVars.BasePath + "/" + AppDomain.CurrentDomain.FriendlyName;
SecurityFuncs.RegisterURLProtocol("Novetus", loadstring, "Novetus URI");
ConsolePrint("URI Successfully Installed!", 3);
MessageBox.Show("URI Successfully Installed!","Novetus - Install URI", MessageBoxButtons.OK, MessageBoxIcon.Information);
Process process = new Process();
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = GlobalVars.ClientDir + @"\\" + GlobalVars.RegisterClient1 + @"\\RobloxApp_studio.exe";
startInfo.Arguments = "/regserver";
startInfo.Verb = "runas";
process.StartInfo = startInfo;
process.Start();
Process process2 = new Process();
ProcessStartInfo startInfo2 = new ProcessStartInfo();
startInfo2.FileName = GlobalVars.ClientDir + @"\\" + GlobalVars.RegisterClient2 + @"\\RobloxApp_studio.exe";
startInfo2.Arguments = "/regserver";
startInfo2.Verb = "runas";
process2.StartInfo = startInfo2;
process2.Start();
ConsolePrint("URI and Library Successfully Installed and Registered!", 3);
MessageBox.Show("URI and Library Successfully Installed and Registered!","Novetus - Install URI", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch (Exception ex) when (!Env.Debugging)
{
ConsolePrint("ERROR 5 - Failed to install URI. (" + ex.Message + ")", 2);
MessageBox.Show("Failed to install URI. (Error: " + ex.Message + ")","Novetus - Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
ConsolePrint("ERROR 5 - Failed to register. (" + ex.Message + ")", 2);
MessageBox.Show("Failed to register. (Error: " + ex.Message + ")","Novetus - Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
else
{
ConsolePrint("ERROR 5 - Failed to install URI. (Did not run as Administrator)", 2);
MessageBox.Show("Failed to install URI. (Error: Did not run as Administrator)","Novetus - Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
ConsolePrint("ERROR 5 - Failed to register. (Did not run as Administrator)", 2);
MessageBox.Show("Failed to register. (Error: Did not run as Administrator)","Novetus - Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
@ -1389,7 +1407,6 @@ namespace NovetusLauncher
GlobalVars.RobloxPort = Convert.ToInt32(numericUpDown1.Value);
numericUpDown2.Value = Convert.ToDecimal(GlobalVars.RobloxPort);
label38.Text = GlobalVars.RobloxPort.ToString();
GlobalVars.WebServer_Port = (GlobalVars.RobloxPort+1);
}
void NumericUpDown2ValueChanged(object sender, EventArgs e)
@ -1397,7 +1414,6 @@ namespace NovetusLauncher
GlobalVars.RobloxPort = Convert.ToInt32(numericUpDown2.Value);
numericUpDown1.Value = Convert.ToDecimal(GlobalVars.RobloxPort);
label38.Text = GlobalVars.RobloxPort.ToString();
GlobalVars.WebServer_Port = (GlobalVars.RobloxPort+1);
}
void NumericUpDown3ValueChanged(object sender, EventArgs e)
@ -1429,50 +1445,13 @@ namespace NovetusLauncher
if (treeView1.SelectedNode.Nodes.Count == 0)
{
GlobalVars.Map = treeView1.SelectedNode.Text.ToString();
GlobalVars.MapPath = GlobalVars.BasePath + @"\\" + treeView1.SelectedNode.FullPath.ToString().Replace(@"\", @"\\");
label28.Text = GlobalVars.Map;
}
}
bool GetRBXLResults(TreeNode node)
{
return node.Text.EndsWith(".rbxl");
}
void TextBox3TextChanged(object sender, EventArgs e)
{
//blocks repainting tree till all objects loaded
treeView1.BeginUpdate();
treeView1.Nodes.Clear();
if (textBox3.Text != "")
{
List<TreeNode> nodeList = _fieldsTreeCache.GetAllNodes();
List<TreeNode> rbxlList = nodeList.FindAll(GetRBXLResults);
foreach (TreeNode node in rbxlList)
{
if (node.Text.Replace(".rbxl","").Contains(textBox3.Text, StringComparison.OrdinalIgnoreCase))
{
treeView1.Nodes.Add((TreeNode)node.Clone());
}
}
}
else
{
foreach (TreeNode _node in _fieldsTreeCache.Nodes)
{
treeView1.Nodes.Add((TreeNode)_node.Clone());
}
}
//enables redrawing tree after all objects have been added
treeView1.EndUpdate();
}
void Button6Click(object sender, EventArgs e)
{
DialogResult result = MessageBox.Show("If you want to install a place into a folder, add the name of the folder as a prefix with a '-' seperator to your map's name. (Ex. [2008 - ]Thrillvile) If you want to put your place in the roor maps folder, remove ANY prefix in the map's name if it has any. Maps won't load in the root folder if they have a prefix. Maps with a prefix that's different from the folder's name will not load as well.","Novetus - Open Maps Folder", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
if (result == DialogResult.Cancel)
return;
Process.Start("explorer.exe", GlobalVars.MapsDir.Replace(@"\\",@"\"));
}
@ -1497,7 +1476,6 @@ namespace NovetusLauncher
{
treeView1.Nodes.Clear();
_fieldsTreeCache.Nodes.Clear();
textBox3.Text = "";
string mapdir = GlobalVars.MapsDir;
TreeNodeHelper.ListDirectory(treeView1, mapdir);
TreeNodeHelper.CopyNodes(treeView1.Nodes,_fieldsTreeCache.Nodes);

View File

@ -117,10 +117,6 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="label9.Text" xml:space="preserve">
<value>ROBLOX and the ROBLOX Clients were made by the ROBLOX Corporation. The ROBLOX Corporation does not support or endorse the creation of Novetus. Bitl is not affiliated with the ROBLOX Corporation or its subsidiaries. Bitl does not own any of the content included with Novetus. LUA scripts were used to build a client that can connect to LAN and the Internet. The LUA scripts used were borrowed from the RBXPri client and modified for this project. All credit for the LUA code included with the RBXPri client goes to the RBXPri team. All credit for the LUA code used with "non-modern" clients goes to Scripter John and EnergyCell. All credit for the LUA code used for character customization goes to RBXBanLand.
</value>
</data>
<data name="label4.Text" xml:space="preserve">
<value>NOTE:
- If you have a problem where you can't see your character, REGENERATE YOUR PLAYER ID THEN REJOIN THE SERVER.
@ -130,6 +126,10 @@
</value>
</data>
<data name="label9.Text" xml:space="preserve">
<value>ROBLOX and the ROBLOX Clients were made by the ROBLOX Corporation. The ROBLOX Corporation does not support or endorse the creation of Novetus. Bitl is not affiliated with the ROBLOX Corporation or its subsidiaries. Bitl does not own any of the content included with Novetus. LUA scripts were used to build a client that can connect to LAN and the Internet. The LUA scripts used were borrowed from the RBXPri client and modified for this project. All credit for the LUA code included with the RBXPri client goes to the RBXPri team. All credit for the LUA code used with "non-modern" clients goes to Scripter John and EnergyCell. All credit for the LUA code used for character customization goes to RBXBanLand.
</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

View File

@ -79,6 +79,7 @@
this.Controls.Add(this.listBox1);
this.Controls.Add(this.label1);
this.Controls.Add(this.pictureBox2);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.Name = "NovetusSDK";

View File

@ -43,8 +43,6 @@ namespace NovetusLauncher
this.textBox2 = new System.Windows.Forms.TextBox();
this.button4 = new System.Windows.Forms.Button();
this.pictureBox2 = new System.Windows.Forms.PictureBox();
this.button8 = new System.Windows.Forms.Button();
this.button3 = new System.Windows.Forms.Button();
this.label25 = new System.Windows.Forms.Label();
this.label26 = new System.Windows.Forms.Label();
this.label27 = new System.Windows.Forms.Label();
@ -53,6 +51,10 @@ namespace NovetusLauncher
this.label12 = new System.Windows.Forms.Label();
this.label16 = new System.Windows.Forms.Label();
this.textBox1 = new System.Windows.Forms.TextBox();
this.button25 = new System.Windows.Forms.Button();
this.button3 = new System.Windows.Forms.Button();
this.button8 = new System.Windows.Forms.Button();
this.button21 = new System.Windows.Forms.Button();
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
this.SuspendLayout();
//
@ -116,27 +118,6 @@ namespace NovetusLauncher
this.pictureBox2.TabIndex = 7;
this.pictureBox2.TabStop = false;
//
// button8
//
this.button8.Enabled = false;
this.button8.Location = new System.Drawing.Point(223, 31);
this.button8.Name = "button8";
this.button8.Size = new System.Drawing.Size(94, 31);
this.button8.TabIndex = 35;
this.button8.Text = "Customization";
this.button8.UseVisualStyleBackColor = true;
//
// button3
//
this.button3.Enabled = false;
this.button3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button3.Location = new System.Drawing.Point(323, 31);
this.button3.Name = "button3";
this.button3.Size = new System.Drawing.Size(82, 31);
this.button3.TabIndex = 6;
this.button3.Text = "Open Studio";
this.button3.UseVisualStyleBackColor = true;
//
// label25
//
this.label25.Location = new System.Drawing.Point(55, 4);
@ -185,9 +166,9 @@ namespace NovetusLauncher
this.label12.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.label12.Font = new System.Drawing.Font("Microsoft Sans Serif", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label12.ForeColor = System.Drawing.Color.Black;
this.label12.Location = new System.Drawing.Point(223, 63);
this.label12.Location = new System.Drawing.Point(223, 51);
this.label12.Name = "label12";
this.label12.Size = new System.Drawing.Size(182, 13);
this.label12.Size = new System.Drawing.Size(192, 21);
this.label12.TabIndex = 0;
this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
@ -208,6 +189,50 @@ namespace NovetusLauncher
this.textBox1.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.textBox1.TextChanged += new System.EventHandler(this.textBox1_TextChanged);
//
// button25
//
this.button25.Enabled = false;
this.button25.Font = new System.Drawing.Font("Microsoft Sans Serif", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button25.Location = new System.Drawing.Point(315, 31);
this.button25.Name = "button25";
this.button25.Size = new System.Drawing.Size(63, 20);
this.button25.TabIndex = 60;
this.button25.Text = "Install Mod";
this.button25.UseVisualStyleBackColor = true;
//
// button3
//
this.button3.Enabled = false;
this.button3.Font = new System.Drawing.Font("Microsoft Sans Serif", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button3.Location = new System.Drawing.Point(271, 31);
this.button3.Name = "button3";
this.button3.Size = new System.Drawing.Size(43, 20);
this.button3.TabIndex = 57;
this.button3.Text = "Studio";
this.button3.UseVisualStyleBackColor = true;
//
// button8
//
this.button8.Enabled = false;
this.button8.Font = new System.Drawing.Font("Microsoft Sans Serif", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button8.Location = new System.Drawing.Point(223, 31);
this.button8.Name = "button8";
this.button8.Size = new System.Drawing.Size(47, 20);
this.button8.TabIndex = 58;
this.button8.Text = "Avatar";
this.button8.UseVisualStyleBackColor = true;
//
// button21
//
this.button21.Enabled = false;
this.button21.Font = new System.Drawing.Font("Microsoft Sans Serif", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button21.Location = new System.Drawing.Point(380, 31);
this.button21.Name = "button21";
this.button21.Size = new System.Drawing.Size(35, 20);
this.button21.TabIndex = 59;
this.button21.Text = "URI";
this.button21.UseVisualStyleBackColor = true;
//
// SplashTester
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
@ -215,14 +240,16 @@ namespace NovetusLauncher
this.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
this.ClientSize = new System.Drawing.Size(417, 109);
this.Controls.Add(this.button25);
this.Controls.Add(this.button3);
this.Controls.Add(this.button8);
this.Controls.Add(this.button21);
this.Controls.Add(this.textBox1);
this.Controls.Add(this.label16);
this.Controls.Add(this.label12);
this.Controls.Add(this.label28);
this.Controls.Add(this.label11);
this.Controls.Add(this.pictureBox2);
this.Controls.Add(this.button3);
this.Controls.Add(this.button8);
this.Controls.Add(this.label13);
this.Controls.Add(this.label15);
this.Controls.Add(this.button4);
@ -246,7 +273,6 @@ namespace NovetusLauncher
private System.Windows.Forms.Label label16;
private System.Windows.Forms.Label label12;
private System.Windows.Forms.PictureBox pictureBox2;
private System.Windows.Forms.Button button8;
private System.Windows.Forms.TextBox textBox5;
private System.Windows.Forms.Label label28;
private System.Windows.Forms.Label label27;
@ -257,7 +283,10 @@ namespace NovetusLauncher
private System.Windows.Forms.Button button4;
private System.Windows.Forms.Label label13;
private System.Windows.Forms.Label label11;
private System.Windows.Forms.Button button3;
private System.Windows.Forms.TextBox textBox1;
private System.Windows.Forms.Button button25;
private System.Windows.Forms.Button button3;
private System.Windows.Forms.Button button8;
private System.Windows.Forms.Button button21;
}
}

View File

@ -65,7 +65,9 @@ namespace NovetusLauncher
GlobalVars.Version = lines[0];
GlobalVars.DefaultClient = lines[1];
GlobalVars.DefaultMap = lines[2];
GlobalVars.SelectedClient = GlobalVars.DefaultClient;
GlobalVars.RegisterClient1 = lines[3];
GlobalVars.RegisterClient2 = lines[4];
GlobalVars.SelectedClient = GlobalVars.DefaultClient;
GlobalVars.Map = GlobalVars.DefaultMap;
QuickConfigure main = new QuickConfigure();
main.ShowDialog();

192
safechat.xml Normal file
View File

@ -0,0 +1,192 @@
<?xml version="1.0" encoding="utf-8"?>
<roblox xmlns:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4">
<External>null</External>
<External>nil</External>
<utterance>Use the Chat menu to talk to me.</utterance>
<utterance>I can only see menu chats.</utterance>
<utterance>
Hello
<utterance>
Hi
<utterance>Hi there!</utterance><utterance>Hi everyone</utterance></utterance><utterance>
Howdy
<utterance>Howdy partner!</utterance></utterance><utterance>
Greetings
<utterance>Greetings everyone</utterance><utterance>Greetings Robloxians!</utterance><utterance>Seaons greetings!</utterance></utterance><utterance>
Welcome
<utterance>Welcome to my place</utterance><utterance>Welcome to our base</utterance><utterance>Welcome to my barbecque</utterance></utterance><utterance>Hey there!</utterance><utterance>
What's up?
<utterance>How are you doing?</utterance><utterance>How's it going?</utterance><utterance>What's new?</utterance></utterance><utterance>
Good day
<utterance>Good morning</utterance><utterance>Good afternoon</utterance><utterance>Good evening</utterance><utterance>Good night</utterance></utterance><utterance>
Silly
<utterance>Waaaaaaaz up?!</utterance><utterance>Hullo!</utterance><utterance>Behold greatness, mortals!</utterance><utterance>Pardon me, is this Sparta?</utterance><utterance>THIS IS SPARTAAAA!</utterance></utterance><utterance>
Holidays
<utterance>Happy New Year!</utterance><utterance>Happy Valentine's Day!</utterance><utterance>Beware the Ides of March!</utterance><utterance>Happy St. Patrick's Day! </utterance><utterance>Happy Easter!</utterance><utterance>Happy Earth Day!</utterance><utterance>Happy 4th of July!</utterance><utterance>Happy Thanksgiving!</utterance><utterance>Happy Halloween!</utterance><utterance>Happy Hanukkah!</utterance><utterance>Merry Christmas!</utterance><utterance>Happy Halloween!</utterance><utterance>Happy May Day!</utterance><utterance>Happy Towel Day!</utterance><utterance>Happy ROBLOX Day!</utterance><utterance>Happy LOL Day!</utterance><utterance>Happy Holidays!</utterance></utterance></utterance>
<utterance>
Goodbye
<utterance>
Good Night
<utterance>Sweet dreams</utterance><utterance>Go to sleep!</utterance><utterance>Lights out!</utterance><utterance>Bedtime</utterance><utterance>Going to bed now</utterance></utterance><utterance>
Later
<utterance>See ya later</utterance><utterance>Later gator!</utterance><utterance>See you tomorrow</utterance></utterance><utterance>
Bye
<utterance>Hasta la bye bye!</utterance></utterance><utterance>I'll be right back</utterance><utterance>I have to go</utterance><utterance>
Farewell
<utterance>Take care</utterance><utterance>Have a nice day</utterance><utterance>Goodluck!</utterance><utterance>Ta-ta for now!</utterance></utterance><utterance>
Peace
<utterance>Peace out!</utterance><utterance>Peace dudes!</utterance><utterance>Rest in pieces!</utterance></utterance><utterance>
Silly
<utterance>To the batcave!</utterance><utterance>Over and out!</utterance><utterance>Happy trails!</utterance><utterance>I've got to book it!</utterance><utterance>Tootles!</utterance><utterance>Smell you later!</utterance><utterance>GG!</utterance><utterance>My house is on fire! gtg.</utterance></utterance></utterance>
<utterance>
Friend
<utterance>Wanna be friends?</utterance><utterance>
Follow me
<utterance>Come to my place!</utterance><utterance>Come to my base!</utterance><utterance>Follow me, team!</utterance><utterance>Follow me</utterance></utterance><utterance>
Your place is cool
<utterance>Your place is fun</utterance><utterance>Your place is awesome</utterance><utterance>Your place looks good</utterance><utterance>This place is awesome!</utterance></utterance><utterance>
Thank you
<utterance>Thanks for playing</utterance><utterance>Thanks for visiting</utterance><utterance>Thanks for everything</utterance><utterance>No, thank you</utterance><utterance>Thanx</utterance></utterance><utterance>
No problem
<utterance>Don't worry</utterance><utterance>That's ok</utterance><utterance>np</utterance></utterance><utterance>
You are ...
<utterance>You are great!</utterance><utterance>You are good!</utterance><utterance>You are cool!</utterance><utterance>You are funny!</utterance><utterance>You are silly!</utterance><utterance>You are awesome!</utterance><utterance>You are doing something I don't like, please stop</utterance></utterance><utterance>
I like ...
<utterance>I like your name</utterance><utterance>I like your shirt</utterance><utterance>I like your place</utterance><utterance>I like your style</utterance><utterance>I like you</utterance><utterance>I like items</utterance><utterance>I like money</utterance></utterance><utterance>
Sorry
<utterance>My bad!</utterance><utterance>I'm sorry</utterance><utterance>Whoops!</utterance><utterance>Please forgive me.</utterance><utterance>I forgive you.</utterance><utterance>I didn't mean to do that.</utterance><utterance>Sorry, I'll stop now.</utterance></utterance></utterance>
<utterance>
Questions
<utterance>
Who?
<utterance>Who wants to be my friend?</utterance><utterance>Who wants to be on my team?</utterance><utterance>Who made this brilliant game?</utterance><utterance>LOLWHO?</utterance></utterance><utterance>
What?
<utterance>What is your favorite animal?</utterance><utterance>What is your favorite game?</utterance><utterance>What is your favorite movie?</utterance><utterance>What is your favorite TV show?</utterance><utterance>What is your favorite music?</utterance><utterance>What are your hobbies?</utterance><utterance>LOLWUT?</utterance></utterance><utterance>
When?
<utterance>When are you online?</utterance><utterance>When is the new version coming out?</utterance><utterance>When can we play again?</utterance><utterance>When will your place be done?</utterance></utterance><utterance>
Where?
<utterance>Where do you want to go?</utterance><utterance>Where are you going?</utterance><utterance>Where am I?!</utterance><utterance>Where did you go?</utterance></utterance><utterance>
How?
<utterance>How are you today?</utterance><utterance>How did you make this cool place?</utterance><utterance>LOLHOW?</utterance></utterance><utterance>
Can I...
<utterance>Can I have a tour?</utterance><utterance>Can I be on your team?</utterance><utterance>Can I be your friend?</utterance><utterance>Can I try something?</utterance><utterance>Can I have that please?</utterance><utterance>Can I have that back please?</utterance><utterance>Can I have borrow your hat?</utterance><utterance>Can I have borrow your gear?</utterance></utterance></utterance>
<utterance>
Answers
<utterance>
You need help?
<utterance>Check out the news section</utterance><utterance>Check out the help section</utterance><utterance>Read the wiki!</utterance><utterance>All the answers are in the wiki!</utterance><utterance>I will help you with this.</utterance></utterance><utterance>
Some people ...
<utterance>Me</utterance><utterance>Not me</utterance><utterance>You</utterance><utterance>All of us</utterance><utterance>Everyone but you</utterance><utterance>Builderman!</utterance><utterance>Telamon!</utterance><utterance>My team</utterance><utterance>My group</utterance><utterance>Mom</utterance><utterance>Dad</utterance><utterance>Sister</utterance><utterance>Brother</utterance><utterance>Cousin</utterance><utterance>Grandparent</utterance><utterance>Friend</utterance></utterance><utterance>
Time ...
<utterance>In the morning</utterance><utterance>In the afternoon</utterance><utterance>At night</utterance><utterance>Tomorrow</utterance><utterance>This week</utterance><utterance>This month</utterance><utterance>Sometime</utterance><utterance>Sometimes</utterance><utterance>Whenever you want</utterance><utterance>Never</utterance><utterance>After this</utterance><utterance>In 10 minutes</utterance><utterance>In a couple hours</utterance><utterance>In a couple days</utterance></utterance><utterance>
Animals
<utterance>
Cats
<utterance>Lion</utterance><utterance>Tiger</utterance><utterance>Leopard</utterance><utterance>Cheetah</utterance></utterance><utterance>
Dogs
<utterance>Wolves</utterance><utterance>Beagle</utterance><utterance>Collie</utterance><utterance>Dalmatian</utterance><utterance>Poodle</utterance><utterance>Spaniel</utterance><utterance>Shepherd</utterance><utterance>Terrier</utterance><utterance>Retriever</utterance></utterance><utterance>
Horses
<utterance>Ponies</utterance><utterance>Stallions</utterance><utterance>Pwnyz</utterance></utterance><utterance>
Reptiles
<utterance>Dinosaurs</utterance><utterance>Lizards</utterance><utterance>Snakes</utterance><utterance>Turtles!</utterance></utterance><utterance>Hamster</utterance><utterance>Monkey</utterance><utterance>Bears</utterance><utterance>
Fish
<utterance>Goldfish</utterance><utterance>Sharks</utterance><utterance>Sea Bass</utterance><utterance>Halibut</utterance><utterance>Tropical Fish</utterance></utterance><utterance>
Birds
<utterance>Eagles</utterance><utterance>Penguins</utterance><utterance>Parakeets</utterance><utterance>Owls</utterance><utterance>Hawks</utterance><utterance>Pidgeons</utterance></utterance><utterance>Elephants</utterance><utterance>
Mythical Beasts
<utterance>Dragons</utterance><utterance>Unicorns</utterance><utterance>Sea Serpents</utterance><utterance>Sphinx</utterance><utterance>Cyclops</utterance><utterance>Minotaurs</utterance><utterance>Goblins</utterance><utterance>Honest Politicians</utterance><utterance>Ghosts</utterance><utterance>Scylla and Charybdis</utterance></utterance></utterance><utterance>
Games
<utterance>
Roblox
<utterance>BrickBattle</utterance><utterance>Community Building</utterance><utterance>Roblox Minigames</utterance><utterance>Contest Place</utterance><utterance>
Revivals
<utterance>RBXLegacy</utterance><utterance>Novetus</utterance><utterance>Graphictoria</utterance><utterance>Finobe</utterance><utterance>Nobelium</utterance><utterance>RBLXDev</utterance></utterance></utterance><utterance>Action</utterance><utterance>Puzzle</utterance><utterance>Strategy</utterance><utterance>Racing</utterance><utterance>RPG</utterance><utterance>Obstacle Course</utterance><utterance>Tycoon</utterance><utterance>FPS</utterance><utterance>MOBA</utterance><utterance>Building</utterance><utterance>
Board games
<utterance>Chess</utterance><utterance>Checkers</utterance><utterance>Settlers of Catan</utterance><utterance>Tigris and Euphrates</utterance><utterance>El Grande</utterance><utterance>Stratego</utterance><utterance>Carcassonne</utterance></utterance></utterance><utterance>
Sports
<utterance>Hockey</utterance><utterance>Soccer</utterance><utterance>Football</utterance><utterance>Baseball</utterance><utterance>Basketball</utterance><utterance>Volleyball</utterance><utterance>Tennis</utterance><utterance>Sports team practice</utterance><utterance>
Watersports
<utterance>Surfing</utterance><utterance>Swimming</utterance><utterance>Water Polo</utterance></utterance><utterance>
Winter sports
<utterance>Skiing</utterance><utterance>Snowboarding</utterance><utterance>Sledding</utterance><utterance>Skating</utterance></utterance><utterance>
Adventure
<utterance>Rock climbing</utterance><utterance>Hiking</utterance><utterance>Fishing</utterance><utterance>Horseback riding</utterance></utterance><utterance>
Wacky
<utterance>Foosball</utterance><utterance>Calvinball</utterance><utterance>Croquet</utterance><utterance>Cricket</utterance><utterance>Dodgeball</utterance><utterance>Squash</utterance><utterance>Trampoline</utterance></utterance></utterance><utterance>
Movies/TV
<utterance>Science Fiction</utterance><utterance>
Animated
<utterance>Anime</utterance></utterance><utterance>Comedy</utterance><utterance>Romantic</utterance><utterance>Action</utterance><utterance>Fantasy</utterance></utterance><utterance>
Music
<utterance>Country</utterance><utterance>Jazz</utterance><utterance>Rap</utterance><utterance>Hip-hop</utterance><utterance>Techno</utterance><utterance>Classical</utterance><utterance>Pop</utterance><utterance>Rock</utterance><utterance>Dubstep</utterance><utterance>Breakcore</utterance><utterance>Metalcore</utterance><utterance>IDM</utterance><utterance>EDM</utterance><utterance>Shoegaze</utterance><utterance>Ambient</utterance><utterance>Metal</utterance><utterance>Synthwave</utterance><utterance>Vaporwave</utterance><utterance>Vapor</utterance><utterance>Experimental</utterance><utterance>Field Recordings</utterance><utterance>J-Rock</utterance><utterance>K-Pop</utterance><utterance>R&amp;B</utterance><utterance>D&amp;B</utterance><utterance>Video Game Music</utterance><utterance>Disco</utterance></utterance><utterance>
Hobbies
<utterance>
Computers
<utterance>Building computers</utterance><utterance>Videogames</utterance><utterance>Coding</utterance><utterance>Programming</utterance><utterance>Hacking</utterance></utterance><utterance>
The Internet
<utterance>lol. teh internets!</utterance><utterance>Watching vids</utterance></utterance><utterance>Dance</utterance><utterance>Gynastics</utterance><utterance>
Martial Arts
<utterance>Karate</utterance><utterance>Judo</utterance><utterance>Taikwon Do</utterance><utterance>Wushu</utterance><utterance>Street fighting</utterance></utterance><utterance>Listening to music</utterance><utterance>
Music lessons
<utterance>Playing in my band</utterance><utterance>Playing piano</utterance><utterance>Playing guitar</utterance><utterance>Playing violin</utterance><utterance>Playing drums</utterance><utterance>Playing a weird instrument</utterance></utterance><utterance>Arts and crafts</utterance></utterance><utterance>
Location
<utterance>
Space
<utterance>
Solar System
<utterance>Mercury</utterance><utterance>Venus</utterance><utterance>Earth</utterance><utterance>Mars</utterance><utterance>Jupiter</utterance><utterance>Saturn</utterance><utterance>Uranus</utterance><utterance>Neptune</utterance><utterance>Pluto</utterance><utterance>The Sun</utterance></utterance><utterance>Milky Way</utterance><utterance>Andromeda</utterance><utterance>Galaxy</utterance><utterance>Big Bang</utterance><utterance>Star</utterance><utterance>Supernova</utterance><utterance>Black Hole</utterance></utterance><utterance>
USA
<utterance>
West
<utterance>Alaska</utterance><utterance>Arizona</utterance><utterance>California</utterance><utterance>Colorado</utterance><utterance>Hawaii</utterance><utterance>Idaho</utterance><utterance>Montana</utterance><utterance>Nevada</utterance><utterance>New Mexico</utterance><utterance>Oregon</utterance><utterance>Utah</utterance><utterance>Washington</utterance><utterance>Wyoming</utterance></utterance><utterance>
Midwest
<utterance>Illinois</utterance><utterance>Indiana</utterance><utterance>Iowa</utterance><utterance>Kansas</utterance><utterance>Michigan</utterance><utterance>Minnesota</utterance><utterance>Missouri</utterance><utterance>Nebraska</utterance><utterance>North Dakota</utterance><utterance>Ohio</utterance><utterance>South Dakota</utterance><utterance>Wisconsin</utterance></utterance><utterance>
Northeast
<utterance>Connecticut</utterance><utterance>Delaware</utterance><utterance>Maine</utterance><utterance>Maryland</utterance><utterance>Massachusetts</utterance><utterance>New Hampshire</utterance><utterance>New Jersey</utterance><utterance>New York</utterance><utterance>Pennsylvania</utterance><utterance>Rhode Island</utterance><utterance>Vermont</utterance></utterance><utterance>
South
<utterance>Alabama</utterance><utterance>Arkansas</utterance><utterance>Florida</utterance><utterance>Georgia</utterance><utterance>Kentucky</utterance><utterance>Louisiana</utterance><utterance>Mississippi</utterance><utterance>North Carolina</utterance><utterance>Oklahoma</utterance><utterance>South Carolina</utterance><utterance>Tennessee</utterance><utterance>Texas</utterance><utterance>Virginia</utterance><utterance>West Virginia</utterance></utterance></utterance><utterance>
Canada
<utterance>Alberta</utterance><utterance>British Columbia</utterance><utterance>Manitoba</utterance><utterance>New Brunswick</utterance><utterance>Newfoundland</utterance><utterance>Northwest Territories</utterance><utterance>Nova Scotia</utterance><utterance>Nunavut</utterance><utterance>Ontario</utterance><utterance>Prince Edward Island</utterance><utterance>Quebec</utterance><utterance>Saskatchewan</utterance><utterance>Yukon</utterance></utterance><utterance>Mexico</utterance><utterance>Central America</utterance><utterance>
Europe
<utterance>
Great Britain
<utterance>England</utterance><utterance>Scotland</utterance><utterance>Wales</utterance><utterance>Northern Ireland</utterance></utterance><utterance>France</utterance><utterance>Germany</utterance><utterance>Spain</utterance><utterance>Italy</utterance><utterance>Poland</utterance><utterance>Switzerland</utterance><utterance>Greece</utterance><utterance>Romania</utterance><utterance>Netherlands</utterance></utterance><utterance>
Asia
<utterance>China</utterance><utterance>India</utterance><utterance>Japan</utterance><utterance>Korea</utterance><utterance>Russia</utterance><utterance>Vietnam</utterance></utterance><utterance>
South America
<utterance>Argentina</utterance><utterance>Brazil</utterance></utterance><utterance>
Africa
<utterance>Eygpt</utterance><utterance>Swaziland</utterance></utterance><utterance>Australia</utterance><utterance>Middle East</utterance><utterance>Antarctica</utterance><utterance>New Zealand</utterance></utterance><utterance>
Age
<utterance>Rugrat</utterance><utterance>Kid</utterance><utterance>Tween</utterance><utterance>Teen</utterance><utterance>Twenties</utterance><utterance>Old</utterance><utterance>Ancient</utterance><utterance>Mesozoic</utterance><utterance>I don't want to say my age. Don't ask.</utterance></utterance><utterance>
Mood
<utterance>Good</utterance><utterance>Great!</utterance><utterance>Not bad</utterance><utterance>Sad</utterance><utterance>Hyper</utterance><utterance>Chill</utterance><utterance>Happy</utterance><utterance>Kind of mad</utterance></utterance><utterance>Boy</utterance><utterance>Girl</utterance><utterance>Man</utterance><utterance>Woman</utterance><utterance>Transgender Man</utterance><utterance>Transgender Woman</utterance><utterance>Gay</utterance><utterance>Lesbian</utterance><utterance>Transgender</utterance><utterance>Bisexual</utterance><utterance>Pansexual</utterance><utterance>Non-Binary</utterance><utterance>Gender-Fluent</utterance></utterance>
<utterance>
Game
<utterance>Let's build</utterance><utterance>Let's battle</utterance><utterance>Nice one!</utterance><utterance>So far so good!</utterance><utterance>Lucky shot!</utterance><utterance>Oh man!</utterance><utterance>I challenge you to a fight!</utterance><utterance>Help me with this</utterance><utterance>Let's go to your game</utterance><utterance>Can you show me how do to that?</utterance><utterance>Backflip!</utterance><utterance>Frontflip!</utterance><utterance>Dance!</utterance><utterance>I'm on your side!</utterance><utterance>
Game Commands
<utterance>regen</utterance><utterance>reset<utterance>!!reset</utterance></utterance><utterance>go</utterance><utterance>fix</utterance><utterance>respawn</utterance></utterance></utterance>
<utterance>
Silly
<utterance>Muahahahaha!</utterance><utterance>GET OFF MAH LAWN</utterance><utterance>TEH EPIK DUCK IS COMING!!!</utterance><utterance>ROFL</utterance><utterance>MY ROFLCOPTER GOES SOISOISOI!!</utterance><utterance>
1337
<utterance>i r teh pwnz0r!</utterance><utterance>w00t!</utterance><utterance>z0mg h4x!</utterance><utterance>ub3rR0xXorzage!</utterance><utterance>all your base are belong to me!</utterance></utterance></utterance>
<utterance>
Yes
<utterance>Absolutely!</utterance><utterance>Rock on!</utterance><utterance>Totally!</utterance><utterance>Juice!</utterance><utterance>Yay!</utterance><utterance>Yesh</utterance></utterance>
<utterance>
No
<utterance>Ummm. No.</utterance><utterance>...</utterance><utterance>Stop!</utterance><utterance>Go away!</utterance><utterance>Don't do that</utterance><utterance>Stop breaking the rules</utterance><utterance>I don't want to</utterance></utterance>
<utterance>
Ok
<utterance>Well... ok</utterance><utterance>Sure</utterance></utterance>
<utterance>
Uncertain
<utterance>Maybe</utterance><utterance>I don't know</utterance><utterance>idk</utterance><utterance>I can't decide</utterance><utterance>Hmm...</utterance></utterance>
<utterance>
Emoticons
<utterance>:D</utterance><utterance>T_T</utterance><utterance>^_^</utterance><utterance>:(</utterance><utterance>D:</utterance><utterance>:-O</utterance><utterance>XD</utterance><utterance>&lt;(0_0&lt;) &lt;(0_0)&gt; (&gt;0_0)&gt; KIRBY DANCE</utterance><utterance>:3</utterance><utterance>OwO</utterance><utterance>UwU</utterance><utterance>lol</utterance><utterance>D=&lt;</utterance><utterance>):&lt;</utterance><utterance>&gt;=D</utterance><utterance>&gt;:)</utterance><utterance>&gt;_&lt;</utterance><utterance>;D</utterance><utterance>;)</utterance><utterance>O_O</utterance><utterance>=)</utterance><utterance>@_@</utterance><utterance>:)</utterance><utterance>O_o</utterance><utterance>o_O</utterance><utterance>-_-</utterance><utterance>._.</utterance><utterance>?_?</utterance><utterance>x_x</utterance><utterance>;_;</utterance><utterance>XP</utterance><utterance>*_*</utterance></utterance>
<utterance>
Ratings
<utterance>Rate it!</utterance><utterance>I give it a 0 out of 10</utterance><utterance>I give it a 1 out of 10</utterance><utterance>I give it a 2 out of 10</utterance><utterance>I give it a 3 out of 10</utterance><utterance>I give it a 4 out of 10</utterance><utterance>I give it a 5 out of 10</utterance><utterance>I give it a 6 out of 10</utterance><utterance>I give it a 7 out of 10</utterance><utterance>I give it a 8 out of 10</utterance><utterance>I give it a 9 out of 10</utterance><utterance>I give it a 10 out of 10!</utterance></utterance>
</roblox>