update files

This commit is contained in:
Bitl 2021-03-19 16:02:03 -07:00
parent cada251d69
commit 752d9238e6
26 changed files with 481 additions and 152 deletions

View File

@ -3,15 +3,10 @@
<ContentProviders>
<Providers>
<Provider>
<Name>Roblox (Novetus Official Redirect)</Name>
<Name>Roblox (Novetus redirect, Image items only)</Name>
<URL>http://novetusofficial.000webhostapp.com/asset?id=</URL>
<Icon>robloxnovetus.png</Icon>
</Provider>
<Provider>
<Name>Roblox (Novetus+ Redirect)</Name>
<URL>http://epicgamers.xyz/asset/?id=</URL>
<Icon>robloxnplus.png</Icon>
</Provider>
<Provider>
<Name>Finobe</Name>
<URL>http://finobe.com/asset/?id=</URL>

View File

@ -34,6 +34,7 @@ namespace NovetusCMD
GlobalFuncs.ConsolePrint("-port <port number> | Sets the server port.", 4, true);
GlobalFuncs.ConsolePrint("-maxplayers <number of players> | Sets the number of players.", 4, true);
GlobalFuncs.ConsolePrint("-webserver <true/false> | Toggles launching of the web server.", 4, true);
GlobalFuncs.ConsolePrint("-notifications <true/false> | Toggles server join/leave notifications.", 4, true);
GlobalFuncs.ConsolePrint("---------", 1, true);
GlobalFuncs.ConsolePrint("How to launch:", 3, true);
GlobalFuncs.ConsolePrint("---------", 1, true);

View File

@ -314,7 +314,22 @@ namespace NovetusCMD
}
else
{
GlobalFuncs.ConsolePrint("NovetusCMD no longer will launch the Web Server.", 4);
GlobalFuncs.ConsolePrint("NovetusCMD will no longer launch the Web Server.", 4);
}
}
if (CommandLine["notifications"] != null)
{
LocalVars.OverrideINI = true;
GlobalVars.UserConfiguration.ShowServerNotifications = Convert.ToBoolean(CommandLine["notifications"]);
if (GlobalVars.UserConfiguration.ShowServerNotifications)
{
GlobalFuncs.ConsolePrint("NovetusCMD will show notifications on player join/leave.", 4);
}
else
{
GlobalFuncs.ConsolePrint("NovetusCMD will no longer show notifications on player join/leave.", 4);
}
}

View File

@ -63,6 +63,7 @@ public class FileFormat
WebServerPort = 40735;
WebServer = true;
DisableReshadeDelete = false;
ShowServerNotifications = true;
}
public string SelectedClient { get; set; }
@ -89,6 +90,7 @@ public class FileFormat
public int WebServerPort { get; set; }
public bool WebServer { get; set; }
public bool DisableReshadeDelete { get; set; }
public bool ShowServerNotifications { get; set; }
}
#endregion

View File

@ -123,6 +123,7 @@ public class GlobalFuncs
ini.IniWriteValue(section, "WebServerPort", GlobalVars.UserConfiguration.WebServerPort.ToString());
ini.IniWriteValue(section, "WebServer", GlobalVars.UserConfiguration.WebServer.ToString());
ini.IniWriteValue(section, "DisableReshadeDelete", GlobalVars.UserConfiguration.DisableReshadeDelete.ToString());
ini.IniWriteValue(section, "ShowServerNotifications", GlobalVars.UserConfiguration.ShowServerNotifications.ToString());
}
else
{
@ -132,7 +133,7 @@ public class GlobalFuncs
string closeonlaunch, userid, name, selectedclient,
map, port, limit, upnp,
disablehelpmessage, tripcode, discord, mappath, mapsnip,
graphics, reshade, qualitylevel, style, savebackups, altIP, WS, WSPort, disReshadeDel;
graphics, reshade, qualitylevel, style, savebackups, altIP, WS, WSPort, disReshadeDel, showNotifs;
INIFile ini = new INIFile(cfgpath);
@ -160,6 +161,7 @@ public class GlobalFuncs
WSPort = ini.IniReadValue(section, "WebServerPort", GlobalVars.UserConfiguration.WebServerPort.ToString());
WS = ini.IniReadValue(section, "WebServer", GlobalVars.UserConfiguration.WebServer.ToString());
disReshadeDel = ini.IniReadValue(section, "DisableReshadeDelete", GlobalVars.UserConfiguration.DisableReshadeDelete.ToString());
showNotifs = ini.IniReadValue(section, "ShowServerNotifications", GlobalVars.UserConfiguration.ShowServerNotifications.ToString());
GlobalVars.UserConfiguration.CloseOnLaunch = Convert.ToBoolean(closeonlaunch);
@ -214,6 +216,7 @@ public class GlobalFuncs
GlobalVars.UserConfiguration.WebServerPort = Convert.ToInt32(WSPort);
GlobalVars.UserConfiguration.WebServer = Convert.ToBoolean(WS);
GlobalVars.UserConfiguration.DisableReshadeDelete = Convert.ToBoolean(disReshadeDel);
GlobalVars.UserConfiguration.ShowServerNotifications = Convert.ToBoolean(showNotifs);
}
catch (Exception)
{
@ -500,6 +503,10 @@ public class GlobalFuncs
#endif
{
string name = ClientName;
if (string.IsNullOrWhiteSpace(name))
{
name = GlobalVars.ProgramInformation.DefaultClient;
}
string clientpath = GlobalPaths.ClientDir + @"\\" + name + @"\\clientinfo.nov";
if (!File.Exists(clientpath))
@ -657,21 +664,11 @@ public class GlobalFuncs
public static void ResetConfigValues()
#endif
{
GlobalVars.UserConfiguration = new FileFormat.Config();
GlobalVars.UserConfiguration.SelectedClient = GlobalVars.ProgramInformation.DefaultClient;
GlobalVars.UserConfiguration.Map = GlobalVars.ProgramInformation.DefaultMap;
GlobalVars.UserConfiguration.CloseOnLaunch = false;
GeneratePlayerID();
GlobalVars.UserConfiguration.PlayerName = "Player";
GlobalVars.UserConfiguration.RobloxPort = 53640;
GlobalVars.UserConfiguration.PlayerLimit = 12;
GlobalVars.UserConfiguration.UPnP = false;
GlobalVars.UserConfiguration.DisabledItemMakerHelp = false;
GlobalVars.UserConfiguration.DiscordPresence = true;
GlobalVars.UserConfiguration.Map = GlobalVars.ProgramInformation.DefaultMap;
GlobalVars.UserConfiguration.MapPath = GlobalPaths.MapsDir + @"\\" + GlobalVars.ProgramInformation.DefaultMap;
GlobalVars.UserConfiguration.MapPathSnip = GlobalPaths.MapsDirBase + @"\\" + GlobalVars.ProgramInformation.DefaultMap;
GlobalVars.UserConfiguration.GraphicsMode = Settings.GraphicsOptions.Mode.Automatic;
GlobalVars.UserConfiguration.ReShade = false;
GlobalVars.UserConfiguration.QualityLevel = Settings.GraphicsOptions.Level.Automatic;
#if LAUNCHER
if (IsInCompact)
{
@ -684,36 +681,14 @@ public class GlobalFuncs
#else
GlobalVars.UserConfiguration.LauncherStyle = Settings.UIOptions.Style.Extended;
#endif
GeneratePlayerID();
GenerateTripcode();
ResetCustomizationValues();
}
public static void ResetCustomizationValues()
{
GlobalVars.UserCustomization.Hat1 = "NoHat.rbxm";
GlobalVars.UserCustomization.Hat2 = "NoHat.rbxm";
GlobalVars.UserCustomization.Hat3 = "NoHat.rbxm";
GlobalVars.UserCustomization.Face = "DefaultFace.rbxm";
GlobalVars.UserCustomization.Head = "DefaultHead.rbxm";
GlobalVars.UserCustomization.TShirt = "NoTShirt.rbxm";
GlobalVars.UserCustomization.Shirt = "NoShirt.rbxm";
GlobalVars.UserCustomization.Pants = "NoPants.rbxm";
GlobalVars.UserCustomization.Icon = "NBC";
GlobalVars.UserCustomization.Extra = "NoExtra.rbxm";
GlobalVars.UserCustomization.HeadColorID = 24;
GlobalVars.UserCustomization.TorsoColorID = 23;
GlobalVars.UserCustomization.LeftArmColorID = 24;
GlobalVars.UserCustomization.RightArmColorID = 24;
GlobalVars.UserCustomization.LeftLegColorID = 119;
GlobalVars.UserCustomization.RightLegColorID = 119;
GlobalVars.UserCustomization.CharacterID = "";
GlobalVars.UserCustomization.HeadColorString = "Color [A=255, R=245, G=205, B=47]";
GlobalVars.UserCustomization.TorsoColorString = "Color [A=255, R=13, G=105, B=172]";
GlobalVars.UserCustomization.LeftArmColorString = "Color [A=255, R=245, G=205, B=47]";
GlobalVars.UserCustomization.RightArmColorString = "Color [A=255, R=245, G=205, B=47]";
GlobalVars.UserCustomization.LeftLegColorString = "Color [A=255, R=164, G=189, B=71]";
GlobalVars.UserCustomization.RightLegColorString = "Color [A=255, R=164, G=189, B=71]";
GlobalVars.UserCustomization.ExtraSelectionIsHat = false;
GlobalVars.UserCustomization.ShowHatsInExtra = false;
GlobalVars.UserCustomization = new FileFormat.CustomizationConfig();
ReloadLoadoutValue();
}
@ -1039,6 +1014,27 @@ public class GlobalFuncs
ApplyClientSettings(info, ClientName, GraphicsMode, MeshDetail, ShadingQuality, MaterialQuality, AA, AASamples, Bevels,
Shadows_2008, Shadows_2007, "", GFXQualityLevel);
}
else
{
//just copy the file.
string terms = "_" + ClientName;
string[] dirs = Directory.GetFiles(GlobalPaths.ConfigDirClients);
try
{
foreach (string dir in dirs)
{
if (dir.Contains(terms) && !dir.Contains("_default"))
{
FixedFileCopy(dir, Settings.GraphicsOptions.GetPathForClientLoadOptions(info.ClientLoadOptions) + @"\" + Path.GetFileName(dir).Replace(terms, "").Replace("-Shaders", ""), true);
}
}
}
catch (Exception)
{
return;
}
}
}
//oh god....
@ -1145,6 +1141,7 @@ public class GlobalFuncs
RobloxXML.EditRenderSettings(doc, "Bevels", Bevels.ToString(), XMLTypes.Token);
RobloxXML.EditRenderSettings(doc, "Shadow", Shadows_2008.ToString(), XMLTypes.Token);
RobloxXML.EditRenderSettings(doc, "Shadows", Shadows_2007.ToString().ToLower(), XMLTypes.Bool);
RobloxXML.EditRenderSettings(doc, "shadows", Shadows_2007.ToString().ToLower(), XMLTypes.Bool);
RobloxXML.EditRenderSettings(doc, "_skinFile", !string.IsNullOrWhiteSpace(Style_2007) ? @"Styles\" + Style_2007 : "", XMLTypes.String);
RobloxXML.EditRenderSettings(doc, "QualityLevel", GFXQualityLevel.ToString(), XMLTypes.Token);
}
@ -1590,12 +1587,12 @@ public class GlobalFuncs
await TaskEx.Delay(miliseconds);
}
// Credit to Carrot for the original code. Rewote it to be smaller and more customizable.
public static string CryptStringWithByte(string word, int byteflag)
// Credit to Carrot for the original code. Rewote it to be smaller.
public static string CryptStringWithByte(string word)
{
byte[] bytes = Encoding.ASCII.GetBytes(word);
string result = "";
for (int i = 0; i < bytes.Length; i++) { result += Convert.ToChar(byteflag ^ bytes[i]); }
for (int i = 0; i < bytes.Length; i++) { result += Convert.ToChar(0x55 ^ bytes[i]); }
return result;
}
}

View File

@ -69,7 +69,8 @@ public class ScriptFuncs
return "_G.CSServer("
+ GlobalVars.UserConfiguration.RobloxPort + ","
+ GlobalVars.UserConfiguration.PlayerLimit + ","
+ md5s + ")";
+ md5s + ","
+ GlobalVars.UserConfiguration.ShowServerNotifications.ToString().ToLower() + ")";
case ScriptType.Solo:
case ScriptType.EasterEgg:
return "_G.CSSolo("
@ -194,7 +195,8 @@ public class ScriptFuncs
return "dofile('" + luafile + "'); _G.CSServer("
+ GlobalVars.UserConfiguration.RobloxPort + ","
+ GlobalVars.UserConfiguration.PlayerLimit + ","
+ md5s + "); "
+ md5s + ","
+ GlobalVars.UserConfiguration.ShowServerNotifications.ToString().ToLower() + "); "
+ (!string.IsNullOrWhiteSpace(GlobalPaths.AddonScriptPath) ? " dofile('" + GlobalPaths.AddonScriptPath + "');" : "");
case ScriptType.Solo:
case ScriptType.EasterEgg:
@ -373,6 +375,7 @@ public class ScriptFuncs
.Replace("%tripcode%", GlobalVars.UserConfiguration.PlayerTripcode)
.Replace("%scripttype%", Generator.GetNameForType(type))
.Replace("%addonscriptpath%", GlobalPaths.AddonScriptPath)
.Replace("%notifications%", GlobalVars.UserConfiguration.ShowServerNotifications.ToString().ToLower())
.Replace("%loadout%", code.Contains("<solo>") ? GlobalVars.soloLoadout : GlobalVars.Loadout)
.Replace("%doublequote%", "\"");

View File

@ -58,6 +58,7 @@ namespace NovetusLauncher
this.label3 = new System.Windows.Forms.Label();
this.textBox1 = new System.Windows.Forms.TextBox();
this.tabPage2 = new System.Windows.Forms.TabPage();
this.checkBox9 = new System.Windows.Forms.CheckBox();
this.checkBox8 = new System.Windows.Forms.CheckBox();
this.label19 = new System.Windows.Forms.Label();
this.textBox3 = new System.Windows.Forms.TextBox();
@ -360,6 +361,7 @@ namespace NovetusLauncher
//
// tabPage2
//
this.tabPage2.Controls.Add(this.checkBox9);
this.tabPage2.Controls.Add(this.checkBox8);
this.tabPage2.Controls.Add(this.label19);
this.tabPage2.Controls.Add(this.textBox3);
@ -381,10 +383,21 @@ namespace NovetusLauncher
this.tabPage2.ToolTipText = "Start a server for other players to play";
this.tabPage2.UseVisualStyleBackColor = true;
//
// checkBox9
//
this.checkBox9.AutoSize = true;
this.checkBox9.Location = new System.Drawing.Point(315, 189);
this.checkBox9.Name = "checkBox9";
this.checkBox9.Size = new System.Drawing.Size(84, 17);
this.checkBox9.TabIndex = 63;
this.checkBox9.Text = "Notifications";
this.checkBox9.UseVisualStyleBackColor = true;
this.checkBox9.CheckedChanged += new System.EventHandler(this.checkBox9_CheckedChanged);
//
// checkBox8
//
this.checkBox8.AutoSize = true;
this.checkBox8.Location = new System.Drawing.Point(265, 189);
this.checkBox8.Location = new System.Drawing.Point(226, 189);
this.checkBox8.Name = "checkBox8";
this.checkBox8.Size = new System.Drawing.Size(83, 17);
this.checkBox8.TabIndex = 62;
@ -419,7 +432,7 @@ namespace NovetusLauncher
// checkBox4
//
this.checkBox4.AutoSize = true;
this.checkBox4.Location = new System.Drawing.Point(204, 189);
this.checkBox4.Location = new System.Drawing.Point(163, 189);
this.checkBox4.Name = "checkBox4";
this.checkBox4.Size = new System.Drawing.Size(54, 17);
this.checkBox4.TabIndex = 57;
@ -431,7 +444,7 @@ namespace NovetusLauncher
// button23
//
this.button23.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button23.Location = new System.Drawing.Point(63, 184);
this.button23.Location = new System.Drawing.Point(23, 184);
this.button23.Name = "button23";
this.button23.Size = new System.Drawing.Size(66, 25);
this.button23.TabIndex = 51;
@ -441,7 +454,7 @@ namespace NovetusLauncher
//
// button22
//
this.button22.Location = new System.Drawing.Point(135, 184);
this.button22.Location = new System.Drawing.Point(97, 184);
this.button22.Name = "button22";
this.button22.Size = new System.Drawing.Size(63, 25);
this.button22.TabIndex = 50;
@ -451,7 +464,7 @@ namespace NovetusLauncher
//
// numericUpDown3
//
this.numericUpDown3.Location = new System.Drawing.Point(270, 161);
this.numericUpDown3.Location = new System.Drawing.Point(265, 160);
this.numericUpDown3.Maximum = new decimal(new int[] {
256,
0,
@ -463,7 +476,7 @@ namespace NovetusLauncher
0,
0});
this.numericUpDown3.Name = "numericUpDown3";
this.numericUpDown3.Size = new System.Drawing.Size(49, 20);
this.numericUpDown3.Size = new System.Drawing.Size(77, 20);
this.numericUpDown3.TabIndex = 49;
this.numericUpDown3.Value = new decimal(new int[] {
12,
@ -474,7 +487,7 @@ namespace NovetusLauncher
//
// numericUpDown2
//
this.numericUpDown2.Location = new System.Drawing.Point(134, 161);
this.numericUpDown2.Location = new System.Drawing.Point(97, 160);
this.numericUpDown2.Maximum = new decimal(new int[] {
65535,
0,
@ -497,7 +510,7 @@ namespace NovetusLauncher
//
// label29
//
this.label29.Location = new System.Drawing.Point(205, 163);
this.label29.Location = new System.Drawing.Point(201, 162);
this.label29.Name = "label29";
this.label29.Size = new System.Drawing.Size(60, 16);
this.label29.TabIndex = 46;
@ -505,7 +518,7 @@ namespace NovetusLauncher
//
// label35
//
this.label35.Location = new System.Drawing.Point(63, 163);
this.label35.Location = new System.Drawing.Point(20, 162);
this.label35.Name = "label35";
this.label35.Size = new System.Drawing.Size(65, 16);
this.label35.TabIndex = 44;
@ -1530,6 +1543,7 @@ namespace NovetusLauncher
private System.Windows.Forms.Button SearchButton;
private System.Windows.Forms.CheckBox checkBox8;
private System.Windows.Forms.Button button36;
private System.Windows.Forms.CheckBox checkBox9;
//private System.Windows.Forms.CheckBox checkBox8;
}
}

View File

@ -469,6 +469,7 @@ namespace NovetusLauncher
label38.Text = GlobalVars.UserConfiguration.RobloxPort.ToString();
checkBox2.Checked = GlobalVars.UserConfiguration.DiscordPresence;
checkBox4.Checked = GlobalVars.UserConfiguration.UPnP;
checkBox9.Checked = GlobalVars.UserConfiguration.ShowServerNotifications;
if (SecurityFuncs.IsElevated)
{
@ -1332,6 +1333,11 @@ namespace NovetusLauncher
{
MessageBox.Show("no functionality");
}
private void checkBox9_CheckedChanged(object sender, EventArgs e)
{
GlobalVars.UserConfiguration.ShowServerNotifications = checkBox9.Checked;
}
#endregion
#region Functions

View File

@ -156,6 +156,7 @@ namespace NovetusLauncher
this.panel4 = new System.Windows.Forms.Panel();
this.button35 = new System.Windows.Forms.Button();
this.UAButton = new System.Windows.Forms.Button();
this.checkBox9 = new System.Windows.Forms.CheckBox();
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
this.panel1.SuspendLayout();
this.panel2.SuspendLayout();
@ -650,6 +651,7 @@ namespace NovetusLauncher
//
// tabPage2
//
this.tabPage2.Controls.Add(this.checkBox9);
this.tabPage2.Controls.Add(this.checkBox8);
this.tabPage2.Controls.Add(this.label19);
this.tabPage2.Controls.Add(this.textBox3);
@ -749,7 +751,7 @@ namespace NovetusLauncher
0,
0});
this.numericUpDown3.Name = "numericUpDown3";
this.numericUpDown3.Size = new System.Drawing.Size(49, 20);
this.numericUpDown3.Size = new System.Drawing.Size(108, 20);
this.numericUpDown3.TabIndex = 49;
this.numericUpDown3.Value = new decimal(new int[] {
12,
@ -1463,6 +1465,17 @@ namespace NovetusLauncher
this.UAButton.Size = new System.Drawing.Size(75, 23);
this.UAButton.TabIndex = 0;
//
// checkBox9
//
this.checkBox9.AutoSize = true;
this.checkBox9.Location = new System.Drawing.Point(468, 180);
this.checkBox9.Name = "checkBox9";
this.checkBox9.Size = new System.Drawing.Size(84, 17);
this.checkBox9.TabIndex = 62;
this.checkBox9.Text = "Notifications";
this.checkBox9.UseVisualStyleBackColor = true;
this.checkBox9.CheckedChanged += new System.EventHandler(this.checkBox9_CheckedChanged);
//
// LauncherFormExtended
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
@ -1628,6 +1641,7 @@ namespace NovetusLauncher
private System.Windows.Forms.Button button36;
private System.Windows.Forms.CheckBox checkBox8;
private System.Windows.Forms.Button button37;
private System.Windows.Forms.CheckBox checkBox9;
//private System.Windows.Forms.CheckBox checkBox8;
}
}

View File

@ -505,6 +505,7 @@ namespace NovetusLauncher
checkBox6.Checked = GlobalVars.UserConfiguration.ReShadeFPSDisplay;
checkBox7.Checked = GlobalVars.UserConfiguration.ReShadePerformanceMode;
checkBox4.Checked = GlobalVars.UserConfiguration.UPnP;
checkBox9.Checked = GlobalVars.UserConfiguration.ShowServerNotifications;
if (SecurityFuncs.IsElevated)
{
@ -1503,6 +1504,11 @@ namespace NovetusLauncher
{
MessageBox.Show("no functionality");
}
private void checkBox9_CheckedChanged(object sender, EventArgs e)
{
GlobalVars.UserConfiguration.ShowServerNotifications = checkBox9.Checked;
}
#endregion
#region Functions

View File

@ -151,6 +151,7 @@ partial class ClientinfoEditor
this.label9 = new System.Windows.Forms.Label();
this.comboBox1 = new System.Windows.Forms.ComboBox();
this.label10 = new System.Windows.Forms.Label();
this.notificationsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.menuStrip1.SuspendLayout();
this.SuspendLayout();
//
@ -479,7 +480,8 @@ partial class ClientinfoEditor
// serverToolStripMenuItem1
//
this.serverToolStripMenuItem1.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.limitToolStripMenuItem});
this.limitToolStripMenuItem,
this.notificationsToolStripMenuItem});
this.serverToolStripMenuItem1.Name = "serverToolStripMenuItem1";
this.serverToolStripMenuItem1.Size = new System.Drawing.Size(180, 22);
this.serverToolStripMenuItem1.Text = "Server";
@ -487,7 +489,7 @@ partial class ClientinfoEditor
// limitToolStripMenuItem
//
this.limitToolStripMenuItem.Name = "limitToolStripMenuItem";
this.limitToolStripMenuItem.Size = new System.Drawing.Size(118, 22);
this.limitToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.limitToolStripMenuItem.Text = "%limit%";
this.limitToolStripMenuItem.Click += new System.EventHandler(this.variableToolStripMenuItem_Click);
//
@ -989,14 +991,14 @@ partial class ClientinfoEditor
// donothingToolStripMenuItem
//
this.donothingToolStripMenuItem.Name = "donothingToolStripMenuItem";
this.donothingToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.donothingToolStripMenuItem.Size = new System.Drawing.Size(150, 22);
this.donothingToolStripMenuItem.Text = "%donothing%";
this.donothingToolStripMenuItem.Click += new System.EventHandler(this.variableToolStripMenuItem_Click);
//
// disabledToolStripMenuItem
//
this.disabledToolStripMenuItem.Name = "disabledToolStripMenuItem";
this.disabledToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.disabledToolStripMenuItem.Size = new System.Drawing.Size(150, 22);
this.disabledToolStripMenuItem.Text = "%disabled%";
this.disabledToolStripMenuItem.Click += new System.EventHandler(this.variableToolStripMenuItem_Click);
//
@ -1117,6 +1119,13 @@ partial class ClientinfoEditor
this.label10.TabIndex = 33;
this.label10.Text = "When applying the settings (if there is a settings XML file):";
//
// notificationsToolStripMenuItem
//
this.notificationsToolStripMenuItem.Name = "notificationsToolStripMenuItem";
this.notificationsToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.notificationsToolStripMenuItem.Text = "%notifications%";
this.notificationsToolStripMenuItem.Click += new System.EventHandler(this.variableToolStripMenuItem_Click);
//
// ClientinfoEditor
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
@ -1269,4 +1278,5 @@ partial class ClientinfoEditor
private System.Windows.Forms.ToolStripMenuItem md5sdToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem doublequoteToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem disabledToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem notificationsToolStripMenuItem;
}

View File

@ -64,33 +64,36 @@
// newToolStripMenuItem
//
this.newToolStripMenuItem.Name = "newToolStripMenuItem";
this.newToolStripMenuItem.Size = new System.Drawing.Size(157, 22);
this.newToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.newToolStripMenuItem.Text = "New";
this.newToolStripMenuItem.Click += new System.EventHandler(this.NewToolStripMenuItemClick);
//
// loadToolStripMenuItem
//
this.loadToolStripMenuItem.Name = "loadToolStripMenuItem";
this.loadToolStripMenuItem.Size = new System.Drawing.Size(157, 22);
this.loadToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.loadToolStripMenuItem.Text = "Load";
this.loadToolStripMenuItem.Click += new System.EventHandler(this.LoadToolStripMenuItemClick);
//
// saveToolStripMenuItem
//
this.saveToolStripMenuItem.Name = "saveToolStripMenuItem";
this.saveToolStripMenuItem.Size = new System.Drawing.Size(157, 22);
this.saveToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.saveToolStripMenuItem.Text = "Save";
this.saveToolStripMenuItem.Click += new System.EventHandler(this.SaveToolStripMenuItemClick);
//
// saveAsTextToolStripMenuItem
//
this.saveAsTextToolStripMenuItem.Name = "saveAsTextToolStripMenuItem";
this.saveAsTextToolStripMenuItem.Size = new System.Drawing.Size(157, 22);
this.saveAsTextToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.saveAsTextToolStripMenuItem.Text = "Save as Text File";
this.saveAsTextToolStripMenuItem.Click += new System.EventHandler(this.saveAsTextFileToolStripMenuItem_Click);
//
// richTextBox1
//
this.richTextBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.richTextBox1.Location = new System.Drawing.Point(2, 27);
this.richTextBox1.Name = "richTextBox1";
this.richTextBox1.Size = new System.Drawing.Size(800, 423);
@ -99,6 +102,7 @@
//
// label1
//
this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(630, 5);
this.label1.Name = "label1";
@ -108,6 +112,7 @@
//
// label2
//
this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(729, 5);
this.label2.Name = "label2";

View File

@ -7,10 +7,7 @@ using System.Windows.Forms;
#region Diogenes Editor
public partial class DiogenesEditor : Form
{
#region Private vars
private int diogenesFlag = 0x55;
#endregion
{
#region Constructor
public DiogenesEditor()
@ -30,7 +27,7 @@ using System.Windows.Forms;
{
using (var ofd = new OpenFileDialog())
{
ofd.Filter = "ROBLOX Diogenes filter (diogenes.fnt)|diogenes.fnt";
ofd.Filter = "ROBLOX Diogenes filter v2 (diogenes.fnt)|diogenes.fnt|ROBLOX Diogenes filter v1 (diogenes.fnt)|diogenes.fnt";
ofd.FilterIndex = 1;
ofd.FileName = "diogenes.fnt";
ofd.Title = "Load diogenes.fnt";
@ -50,18 +47,17 @@ using System.Windows.Forms;
{
string line = reader.ReadLine();
try
if (ofd.FilterIndex == 1)
{
line = GlobalFuncs.CryptStringWithByte(line, diogenesFlag);
line = GlobalFuncs.CryptStringWithByte(line);
label2.Text = "v2";
}
catch (Exception)
else
{
label2.Text = "v1";
continue;
}
builder.Append(line + Environment.NewLine);
builder.Append(line + (!reader.EndOfStream ? Environment.NewLine : ""));
}
}
}
@ -88,12 +84,18 @@ using System.Windows.Forms;
{
if (sfd.FilterIndex == 1)
{
builder.Append(GlobalFuncs.CryptStringWithByte(s, diogenesFlag) + Environment.NewLine);
if (!string.IsNullOrWhiteSpace(s))
{
builder.AppendLine(GlobalFuncs.CryptStringWithByte(s));
}
label2.Text = "v2";
}
else
{
builder.Append(s + Environment.NewLine);
if (!string.IsNullOrWhiteSpace(s))
{
builder.AppendLine(s);
}
label2.Text = "v1";
}
}

View File

@ -52,6 +52,8 @@ IF %M%==4 GOTO MENU
del /S Novetus\*.pdb
del /S Novetus\*.log
del /s /q Novetus\clients\2007E\content\scripts\CSMPBoot.lua
del /s /q Novetus\clients\2007E-Shaders\content\scripts\CSMPBoot.lua
del /s /q Novetus\clients\2007M\content\scripts\CSMPBoot.lua
del /s /q Novetus\clients\2007M-Shaders\content\scripts\CSMPBoot.lua
del /s /q Novetus\clients\2006S\content\scripts\CSMPBoot.lua
@ -67,6 +69,16 @@ del /s /q Novetus\clients\2006S-Shaders\OPENGL32.log
del /s /q Novetus\clients\2006S-Shaders\opengl32.dll
del /s /q Novetus\clients\2006S-Shaders\DefaultPreset.ini
del /s /q Novetus\clients\2007E\ReShade.ini
del /s /q Novetus\clients\2007E\OPENGL32.log
del /s /q Novetus\clients\2007E\opengl32.dll
del /s /q Novetus\clients\2007E\DefaultPreset.ini
del /s /q Novetus\clients\2007E-Shaders\ReShade.ini
del /s /q Novetus\clients\2007E-Shaders\OPENGL32.log
del /s /q Novetus\clients\2007E-Shaders\opengl32.dll
del /s /q Novetus\clients\2007E-Shaders\DefaultPreset.ini
del /s /q Novetus\clients\2007M\ReShade.ini
del /s /q Novetus\clients\2007M\OPENGL32.log
del /s /q Novetus\clients\2007M\opengl32.dll

View File

@ -5,7 +5,8 @@ SET basedir=%CD%\scripts
if not exist "%basedir%" mkdir "%basedir%"
if not exist "%basedir%/2006S" mkdir "%basedir%/2006S"
if not exist "%basedir%/2006S-Shaders" mkdir "%basedir%/2006S-Shaders"
if not exist "%basedir%/2007M" mkdir "%basedir%/2007E"
if not exist "%basedir%/2007E" mkdir "%basedir%/2007E"
if not exist "%basedir%/2007E-Shaders" mkdir "%basedir%/2007E-Shaders"
if not exist "%basedir%/2007M" mkdir "%basedir%/2007M"
if not exist "%basedir%/2007M-Shaders" mkdir "%basedir%/2007M-Shaders"
if not exist "%basedir%/2008M" mkdir "%basedir%/2008M"
@ -19,6 +20,7 @@ if not exist "%basedir%/3DView" mkdir "%basedir%/3DView"
XCOPY Novetus\clients\2006S\content\scripts\CSMPFunctions.lua %basedir%/2006S
XCOPY Novetus\clients\2006S-Shaders\content\scripts\CSMPFunctions.lua %basedir%/2006S-Shaders
XCOPY Novetus\clients\2007E\content\scripts\CSMPFunctions.lua %basedir%/2007E
XCOPY Novetus\clients\2007E-Shaders\content\scripts\CSMPFunctions.lua %basedir%/2007E-Shaders
XCOPY Novetus\clients\2007M\content\scripts\CSMPFunctions.lua %basedir%/2007M
XCOPY Novetus\clients\2007M-Shaders\content\scripts\CSMPFunctions.lua %basedir%/2007M-Shaders
XCOPY Novetus\clients\2008M\content\scripts\CSMPFunctions.lua %basedir%/2008M

View File

@ -1,3 +1,5 @@
showServerNotifications = true
--function made by rbxbanland
function newWaitForChild(newParent,name)
local returnable = nil
@ -17,6 +19,9 @@ function KickPlayer(Player,reason)
wait(2)
Player:remove()
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: "..reason)
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' was kicked. Reason: "..reason)
end
end
end
@ -215,14 +220,22 @@ end
print("ROBLOX Client version '0.3.512.0' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
Server = game:GetService("NetworkServer")
RunService = game:GetService("RunService")
PlayerService = game:GetService("Players")
Server:start(Port, 20)
RunService:run()
showServerNotifications = Notifications
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
PlayerService.MaxPlayers = PlayerLimit
if (showServerNotifications) then
PlayerService.MaxPlayers = PlayerLimit + 1
--create a fake player to record connections and disconnections
notifyPlayer = game:GetService("Players"):CreateLocalPlayer(-1)
notifyPlayer.Name = "[SERVER]"
else
PlayerService.MaxPlayers = PlayerLimit
end
PlayerService.PlayerAdded:connect(function(Player)
Player.Chatted:connect(function(msg)
print(Player.Name.."; "..msg)
@ -232,6 +245,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
KickPlayer(Player, "Too many players on server.")
else
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' added")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' joined")
end
Player:LoadCharacter()
LoadSecurity(newWaitForChildSecurity(Player,"Security"),Player,game.Lighting)
newWaitForChildSecurity(Player,"Tripcode")
@ -266,6 +282,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
end)
PlayerService.PlayerRemoving:connect(function(Player)
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' leaving")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' left")
end
end)
pcall(function() game.Close:connect(function() Server:Stop() end) end)
InitalizeSecurityValues(game.Lighting,ClientEXEMD5,LauncherMD5,ClientScriptMD5)

View File

@ -1,3 +1,5 @@
showServerNotifications = true
--function made by rbxbanland
function newWaitForChild(newParent,name)
local returnable = nil
@ -17,6 +19,9 @@ function KickPlayer(Player,reason)
wait(2)
Player:remove()
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: "..reason)
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' was kicked. Reason: "..reason)
end
end
end
@ -215,14 +220,22 @@ end
print("ROBLOX Client version '0.3.512.0' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
Server = game:GetService("NetworkServer")
RunService = game:GetService("RunService")
PlayerService = game:GetService("Players")
Server:start(Port, 20)
RunService:run()
showServerNotifications = Notifications
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
PlayerService.MaxPlayers = PlayerLimit
if (showServerNotifications) then
PlayerService.MaxPlayers = PlayerLimit + 1
--create a fake player to record connections and disconnections
notifyPlayer = game:GetService("Players"):CreateLocalPlayer(-1)
notifyPlayer.Name = "[SERVER]"
else
PlayerService.MaxPlayers = PlayerLimit
end
PlayerService.PlayerAdded:connect(function(Player)
Player.Chatted:connect(function(msg)
print(Player.Name.."; "..msg)
@ -232,6 +245,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
KickPlayer(Player, "Too many players on server.")
else
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' added")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' joined")
end
Player:LoadCharacter()
LoadSecurity(newWaitForChildSecurity(Player,"Security"),Player,game.Lighting)
newWaitForChildSecurity(Player,"Tripcode")
@ -266,6 +282,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
end)
PlayerService.PlayerRemoving:connect(function(Player)
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' leaving")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' left")
end
end)
pcall(function() game.Close:connect(function() Server:Stop() end) end)
InitalizeSecurityValues(game.Lighting,ClientEXEMD5,LauncherMD5,ClientScriptMD5)

View File

@ -1,3 +1,5 @@
showServerNotifications = true
--function made by rbxbanland
function newWaitForChild(newParent,name)
local returnable = nil
@ -17,6 +19,9 @@ function KickPlayer(Player,reason)
wait(2)
Player:remove()
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: "..reason)
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' was kicked. Reason: "..reason)
end
end
end
@ -265,14 +270,22 @@ end
print("ROBLOX Client version '0.3.368.0' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
Server = game:service("NetworkServer")
RunService = game:service("RunService")
PlayerService = game:service("Players")
Server:start(Port, 20)
RunService:run()
showServerNotifications = Notifications
game.Workspace:insertContent("rbxasset://Fonts//libraries.rbxm")
PlayerService.maxPlayers = PlayerLimit
if (showServerNotifications) then
PlayerService.maxPlayers = PlayerLimit + 1
--create a fake player to record connections and disconnections
notifyPlayer = game:service("Players"):createLocalPlayer(-1)
notifyPlayer.Name = "[SERVER]"
else
PlayerService.maxPlayers = PlayerLimit
end
PlayerService.ChildAdded:connect(function(Player)
Player.Chatted:connect(function(msg)
print(Player.Name.."; "..msg)
@ -282,6 +295,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
KickPlayer(Player, "Too many players on server.")
else
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' added")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' joined")
end
Player:LoadCharacter()
LoadSecurity(newWaitForChildSecurity(Player,"Security"),Player,game.Lighting)
newWaitForChildSecurity(Player,"Tripcode")
@ -316,6 +332,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
end)
PlayerService.PlayerRemoving:connect(function(Player)
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' leaving")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' left")
end
end)
pcall(function() game.Close:connect(function() Server:stop() end) end)
InitalizeSecurityValues(game.Lighting,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
@ -330,9 +349,9 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
InitalizeSecurityValues(player,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
InitalizeTripcode(player,Tripcode)
player:SetSuperSafeChat(false)
player:SetAdminMode(true)
pcall(function() player:SetUnder13(false) end)
pcall(function() player:SetAccountAge(365) end)
player:SetAdminMode(true)
pcall(function() player.Name=PlayerName or "" end)
game:service("Visit"):setUploadUrl("")
InitalizeClientAppearance(player,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,ItemID)

View File

@ -1,3 +1,5 @@
showServerNotifications = true
--function made by rbxbanland
function newWaitForChild(newParent,name)
local returnable = nil
@ -17,6 +19,9 @@ function KickPlayer(Player,reason)
wait(2)
Player:remove()
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: "..reason)
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' was kicked. Reason: "..reason)
end
end
end
@ -311,14 +316,22 @@ end
print("ROBLOX Client version '0.3.512.0' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
Server = game:GetService("NetworkServer")
RunService = game:GetService("RunService")
PlayerService = game:GetService("Players")
Server:start(Port, 20)
RunService:run()
showServerNotifications = Notifications
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
PlayerService.MaxPlayers = PlayerLimit
if (showServerNotifications) then
PlayerService.MaxPlayers = PlayerLimit + 1
--create a fake player to record connections and disconnections
notifyPlayer = game:GetService("Players"):CreateLocalPlayer(-1)
notifyPlayer.Name = "[SERVER]"
else
PlayerService.MaxPlayers = PlayerLimit
end
PlayerService.PlayerAdded:connect(function(Player)
Player.Chatted:connect(function(msg)
print(Player.Name.."; "..msg)
@ -328,6 +341,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
KickPlayer(Player, "Too many players on server.")
else
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' added")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' joined")
end
Player:LoadCharacter()
LoadSecurity(newWaitForChildSecurity(Player,"Security"),Player,game.Lighting)
newWaitForChildSecurity(Player,"Tripcode")
@ -362,6 +378,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
end)
PlayerService.PlayerRemoving:connect(function(Player)
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' leaving")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' left")
end
end)
pcall(function() game.Close:connect(function() Server:stop() end) end)
InitalizeSecurityValues(game.Lighting,ClientEXEMD5,LauncherMD5,ClientScriptMD5)

View File

@ -1,3 +1,5 @@
showServerNotifications = true
--function made by rbxbanland
function newWaitForChild(newParent,name)
local returnable = nil
@ -17,6 +19,9 @@ function KickPlayer(Player,reason)
wait(2)
Player:remove()
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: "..reason)
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' was kicked. Reason: "..reason)
end
end
end
@ -311,14 +316,22 @@ end
print("ROBLOX Client version '0.3.512.0' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
Server = game:GetService("NetworkServer")
RunService = game:GetService("RunService")
PlayerService = game:GetService("Players")
Server:start(Port, 20)
RunService:run()
showServerNotifications = Notifications
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
PlayerService.MaxPlayers = PlayerLimit
if (showServerNotifications) then
PlayerService.MaxPlayers = PlayerLimit + 1
--create a fake player to record connections and disconnections
notifyPlayer = game:GetService("Players"):CreateLocalPlayer(-1)
notifyPlayer.Name = "[SERVER]"
else
PlayerService.MaxPlayers = PlayerLimit
end
PlayerService.PlayerAdded:connect(function(Player)
Player.Chatted:connect(function(msg)
print(Player.Name.."; "..msg)
@ -328,6 +341,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
KickPlayer(Player, "Too many players on server.")
else
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' added")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' joined")
end
Player:LoadCharacter()
LoadSecurity(newWaitForChildSecurity(Player,"Security"),Player,game.Lighting)
newWaitForChildSecurity(Player,"Tripcode")
@ -362,6 +378,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
end)
PlayerService.PlayerRemoving:connect(function(Player)
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' leaving")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' left")
end
end)
pcall(function() game.Close:connect(function() Server:stop() end) end)
InitalizeSecurityValues(game.Lighting,ClientEXEMD5,LauncherMD5,ClientScriptMD5)

View File

@ -1,3 +1,5 @@
showServerNotifications = true
--function made by rbxbanland
function newWaitForChild(newParent,name)
local returnable = nil
@ -17,6 +19,9 @@ function KickPlayer(Player,reason)
wait(2)
Player:remove()
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: "..reason)
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' was kicked. Reason: "..reason)
end
end
end
@ -403,14 +408,22 @@ end
rbxversion = version()
print("ROBLOX Client version '" .. rbxversion .. "' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
Server = game:GetService("NetworkServer")
RunService = game:GetService("RunService")
Server:start(Port, 20)
RunService:run()
showServerNotifications = Notifications
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
PlayerService = game:GetService("Players")
PlayerService.MaxPlayers = PlayerLimit
if (showServerNotifications) then
PlayerService.MaxPlayers = PlayerLimit + 1
--create a fake player to record connections and disconnections
notifyPlayer = game:GetService("Players"):CreateLocalPlayer(-1)
notifyPlayer.Name = "[SERVER]"
else
PlayerService.MaxPlayers = PlayerLimit
end
PlayerService.PlayerAdded:connect(function(Player)
Player.Chatted:connect(function(msg)
print(Player.Name.."; "..msg)
@ -420,6 +433,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
KickPlayer(Player, "Too many players on server.")
else
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' added")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' joined")
end
Player:LoadCharacter()
LoadSecurity(newWaitForChildSecurity(Player,"Security"),Player,game.Lighting)
newWaitForChildSecurity(Player,"Tripcode")
@ -452,6 +468,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
end)
PlayerService.PlayerRemoving:connect(function(Player)
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' leaving")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' left")
end
end)
pcall(function() game.Close:connect(function() Server:Stop() end) end)
InitalizeSecurityValues(game.Lighting,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
@ -542,11 +561,18 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
InitalizeClientAppearance(plr,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,ItemID)
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character,false)
game:GetService("Visit"):SetUploadUrl("")
while true do wait()
if (plr.Character:FindFirstChild("Humanoid") and (plr.Character.Humanoid.Health == 0)) then
wait(5)
plr:LoadCharacter()
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character,false)
while true do
wait(0.001)
if (plr.Character ~= nil) then
if (plr.Character:findFirstChild("Humanoid") and (plr.Character.Humanoid.Health == 0)) then
wait(5)
plr:LoadCharacter()
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character)
elseif (plr.Character.Parent == nil) then
wait(5)
plr:LoadCharacter() -- to make sure nobody is deleted.
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character)
end
end
end
end

View File

@ -1,3 +1,5 @@
showServerNotifications = true
--function made by rbxbanland
function newWaitForChild(newParent,name)
local returnable = nil
@ -17,6 +19,9 @@ function KickPlayer(Player,reason)
wait(2)
Player:remove()
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: "..reason)
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' was kicked. Reason: "..reason)
end
end
end
@ -463,14 +468,22 @@ end
rbxversion = version()
print("ROBLOX Client version '" .. rbxversion .. "' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
Server = game:GetService("NetworkServer")
RunService = game:GetService("RunService")
Server:start(Port, 20)
RunService:run()
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
showServerNotifications = Notifications
PlayerService = game:GetService("Players")
PlayerService.MaxPlayers = PlayerLimit
if (showServerNotifications) then
PlayerService.MaxPlayers = PlayerLimit + 1
--create a fake player to record connections and disconnections
notifyPlayer = game:GetService("Players"):CreateLocalPlayer(-1)
notifyPlayer.Name = "[SERVER]"
else
PlayerService.MaxPlayers = PlayerLimit
end
PlayerService.PlayerAdded:connect(function(Player)
Player.Chatted:connect(function(msg)
print(Player.Name.."; "..msg)
@ -480,6 +493,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
KickPlayer(Player, "Too many players on server.")
else
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' added")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' joined")
end
Player:LoadCharacter()
LoadSecurity(newWaitForChildSecurity(Player,"Security"),Player,game.Lighting)
newWaitForChildSecurity(Player,"Tripcode")
@ -512,6 +528,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
end)
PlayerService.PlayerRemoving:connect(function(Player)
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' leaving")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' left")
end
end)
pcall(function() game.Close:connect(function() Server:Stop() end) end)
InitalizeSecurityValues(game.Lighting,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
@ -614,11 +633,18 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
InitalizeClientAppearance(plr,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,ItemID)
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character,false)
game:GetService("Visit"):SetUploadUrl("")
while true do wait()
if (plr.Character:FindFirstChild("Humanoid") and (plr.Character.Humanoid.Health == 0)) then
wait(5)
plr:LoadCharacter()
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character,false)
while true do
wait(0.001)
if (plr.Character ~= nil) then
if (plr.Character:findFirstChild("Humanoid") and (plr.Character.Humanoid.Health == 0)) then
wait(5)
plr:LoadCharacter()
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character)
elseif (plr.Character.Parent == nil) then
wait(5)
plr:LoadCharacter() -- to make sure nobody is deleted.
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character)
end
end
end
end

View File

@ -1,3 +1,4 @@
showServerNotifications = true
pcall(function() game:GetService("ScriptContext").ScriptsDisabled = false end)
--function made by rbxbanland
@ -19,6 +20,9 @@ function KickPlayer(Player,reason)
wait(2)
Player:remove()
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: "..reason)
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' was kicked. Reason: "..reason)
end
end
end
@ -467,19 +471,30 @@ end
rbxversion = version()
print("ROBLOX Client version '" .. rbxversion .. "' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
assert((type(Port)~="number" or tonumber(Port)~=nil or Port==nil),"CSRun Error: Port must be nil or a number.")
local NetworkServer=game:GetService("NetworkServer")
local RunService = game:GetService("RunService")
local PlayerService = game:GetService("Players")
showServerNotifications = Notifications
pcall(NetworkServer.Stop,NetworkServer)
NetworkServer:Start(Port)
PlayerService.MaxPlayers = PlayerLimit
if (showServerNotifications) then
PlayerService.MaxPlayers = PlayerLimit + 1
--create a fake player to record connections and disconnections
notifyPlayer = game:GetService("Players"):CreateLocalPlayer(-1)
notifyPlayer.Name = "[SERVER]"
else
PlayerService.MaxPlayers = PlayerLimit
end
PlayerService.PlayerAdded:connect(function(Player)
if (PlayerService.NumPlayers > PlayerService.MaxPlayers) then
KickPlayer(Player, "Too many players on server.")
else
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' added")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' joined")
end
Player:LoadCharacter()
end
@ -514,6 +529,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
end)
PlayerService.PlayerRemoving:connect(function(Player)
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' leaving")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' left")
end
end)
RunService:Run()
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
@ -638,11 +656,18 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
InitalizeClientAppearance(plr,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,ItemID)
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character,false)
game:GetService("Visit"):SetUploadUrl("")
while true do wait()
if (plr.Character:FindFirstChild("Humanoid") and (plr.Character.Humanoid.Health == 0)) then
wait(5)
plr:LoadCharacter()
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character,false)
while true do
wait(0.001)
if (plr.Character ~= nil) then
if (plr.Character:findFirstChild("Humanoid") and (plr.Character.Humanoid.Health == 0)) then
wait(5)
plr:LoadCharacter()
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character)
elseif (plr.Character.Parent == nil) then
wait(5)
plr:LoadCharacter() -- to make sure nobody is deleted.
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character)
end
end
end
end

View File

@ -1,3 +1,4 @@
showServerNotifications = true
pcall(function() game:GetService("ScriptContext").ScriptsDisabled = false end)
--function made by rbxbanland
@ -19,6 +20,9 @@ function KickPlayer(Player,reason)
wait(2)
Player:remove()
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: "..reason)
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' was kicked. Reason: "..reason)
end
end
end
@ -467,19 +471,30 @@ end
rbxversion = version()
print("ROBLOX Client version '" .. rbxversion .. "' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
assert((type(Port)~="number" or tonumber(Port)~=nil or Port==nil),"CSRun Error: Port must be nil or a number.")
local NetworkServer=game:GetService("NetworkServer")
local RunService = game:GetService("RunService")
local PlayerService = game:GetService("Players")
showServerNotifications = Notifications
pcall(NetworkServer.Stop,NetworkServer)
NetworkServer:Start(Port)
PlayerService.MaxPlayers = PlayerLimit
if (showServerNotifications) then
PlayerService.MaxPlayers = PlayerLimit + 1
--create a fake player to record connections and disconnections
notifyPlayer = game:GetService("Players"):CreateLocalPlayer(-1)
notifyPlayer.Name = "[SERVER]"
else
PlayerService.MaxPlayers = PlayerLimit
end
PlayerService.PlayerAdded:connect(function(Player)
if (PlayerService.NumPlayers > PlayerService.MaxPlayers) then
KickPlayer(Player, "Too many players on server.")
else
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' added")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' joined")
end
Player:LoadCharacter()
end
@ -514,6 +529,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
end)
PlayerService.PlayerRemoving:connect(function(Player)
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' leaving")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' left")
end
end)
RunService:Run()
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
@ -640,11 +658,18 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
newWaitForChild(game.StarterGui, "Health")
game.StarterGui.Health:clone().Parent = plr.PlayerGui
game:GetService("Visit"):SetUploadUrl("")
while true do wait()
if (plr.Character:FindFirstChild("Humanoid") and (plr.Character.Humanoid.Health == 0)) then
wait(5)
plr:LoadCharacter()
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character,false)
while true do
wait(0.001)
if (plr.Character ~= nil) then
if (plr.Character:findFirstChild("Humanoid") and (plr.Character.Humanoid.Health == 0)) then
wait(5)
plr:LoadCharacter()
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character)
elseif (plr.Character.Parent == nil) then
wait(5)
plr:LoadCharacter() -- to make sure nobody is deleted.
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character)
end
end
end
end

View File

@ -4,6 +4,8 @@ game:GetService("CoreGui").DescendantAdded:connect(function(Child)
end
end)
showServerNotifications = true
coroutine.resume(coroutine.create(function()
while not game:GetService("CoreGui"):FindFirstChild("RobloxGui") do game:GetService("CoreGui").ChildAdded:wait() end
game:GetService("CoreGui").RobloxGui.TopLeftControl:Remove()
@ -35,6 +37,9 @@ function KickPlayer(Player,reason)
wait(2)
Player:remove()
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: "..reason)
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' was kicked. Reason: "..reason)
end
end
end
@ -484,19 +489,30 @@ end
rbxversion = version()
print("ROBLOX Client version '" .. rbxversion .. "' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
assert((type(Port)~="number" or tonumber(Port)~=nil or Port==nil),"CSRun Error: Port must be nil or a number.")
local NetworkServer=game:GetService("NetworkServer")
local RunService = game:GetService("RunService")
local PlayerService = game:GetService("Players")
showServerNotifications = Notifications
pcall(NetworkServer.Stop,NetworkServer)
NetworkServer:Start(Port)
PlayerService.MaxPlayers = PlayerLimit
if (showServerNotifications) then
PlayerService.MaxPlayers = PlayerLimit + 1
--create a fake player to record connections and disconnections
notifyPlayer = game:GetService("Players"):CreateLocalPlayer(-1)
notifyPlayer.Name = "[SERVER]"
else
PlayerService.MaxPlayers = PlayerLimit
end
PlayerService.PlayerAdded:connect(function(Player)
if (PlayerService.NumPlayers > PlayerService.MaxPlayers) then
KickPlayer(Player, "Too many players on server.")
else
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' added")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' joined")
end
Player:LoadCharacter()
end
@ -526,6 +542,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
end)
PlayerService.PlayerRemoving:connect(function(Player)
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' leaving")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' left")
end
end)
RunService:Run()
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
@ -669,15 +688,20 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character,false)
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
newWaitForChild(game.StarterGui, "Dialogs")
newWaitForChild(game.StarterGui, "Health")
game.StarterGui.Dialogs:clone().Parent = plr.PlayerGui
game.StarterGui.Health:clone().Parent = plr.PlayerGui
game:GetService("Visit"):SetUploadUrl("")
while true do wait()
if (plr.Character:FindFirstChild("Humanoid") and (plr.Character.Humanoid.Health == 0)) then
wait(5)
plr:LoadCharacter()
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character,false)
while true do
wait(0.001)
if (plr.Character ~= nil) then
if (plr.Character:findFirstChild("Humanoid") and (plr.Character.Humanoid.Health == 0)) then
wait(5)
plr:LoadCharacter()
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character)
elseif (plr.Character.Parent == nil) then
wait(5)
plr:LoadCharacter() -- to make sure nobody is deleted.
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character)
end
end
end
end

View File

@ -1,3 +1,5 @@
showServerNotifications = true
game:GetService("CoreGui").DescendantAdded:connect(function(Child)
if (Child:IsA("BaseScript")) and (Child.Name~="SubMenuBuilder") and (Child.Name~="ToolTipper") and (Child.Name~="MainBotChatScript") then
Child:Remove()
@ -26,6 +28,9 @@ function KickPlayer(Player,reason)
wait(2)
Player:remove()
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: "..reason)
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' was kicked. Reason: "..reason)
end
end
end
@ -475,19 +480,30 @@ end
rbxversion = version()
print("ROBLOX Client version '" .. rbxversion .. "' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
assert((type(Port)~="number" or tonumber(Port)~=nil or Port==nil),"CSRun Error: Port must be nil or a number.")
local NetworkServer=game:GetService("NetworkServer")
local RunService = game:GetService("RunService")
local PlayerService = game:GetService("Players")
showServerNotifications = Notifications
pcall(NetworkServer.Stop,NetworkServer)
NetworkServer:Start(Port)
PlayerService.MaxPlayers = PlayerLimit
if (showServerNotifications) then
PlayerService.MaxPlayers = PlayerLimit + 1
--create a fake player to record connections and disconnections
notifyPlayer = game:GetService("Players"):CreateLocalPlayer(-1)
notifyPlayer.Name = "[SERVER]"
else
PlayerService.MaxPlayers = PlayerLimit
end
PlayerService.PlayerAdded:connect(function(Player)
if (PlayerService.NumPlayers > PlayerService.MaxPlayers) then
KickPlayer(Player, "Too many players on server.")
else
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' added")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' joined")
end
Player:LoadCharacter()
end
@ -517,6 +533,9 @@ function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
end)
PlayerService.PlayerRemoving:connect(function(Player)
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' leaving")
if (showServerNotifications) then
game.Players:Chat("Player '" .. Player.Name .. "' left")
end
end)
RunService:Run()
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
@ -662,19 +681,24 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character,false)
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
newWaitForChild(game.StarterGui, "Dialogs")
newWaitForChild(game.StarterGui, "Health")
newWaitForChild(game.StarterGui, "Playerlist")
newWaitForChild(game.StarterGui, "Backpack")
game.StarterGui.Dialogs:clone().Parent = plr.PlayerGui
game.StarterGui.Health:clone().Parent = plr.PlayerGui
newWaitForChild(game.StarterGui, "Playerlist")
game.StarterGui.Playerlist:clone().Parent = plr.PlayerGui
newWaitForChild(game.StarterGui, "Backpack")
game.StarterGui.Backpack:clone().Parent = plr.PlayerGui
game:GetService("Visit"):SetUploadUrl("")
while true do wait()
if (plr.Character:FindFirstChild("Humanoid") and (plr.Character.Humanoid.Health == 0)) then
wait(5)
plr:LoadCharacter()
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character,false)
while true do
wait(0.001)
if (plr.Character ~= nil) then
if (plr.Character:findFirstChild("Humanoid") and (plr.Character.Humanoid.Health == 0)) then
wait(5)
plr:LoadCharacter()
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character)
elseif (plr.Character.Parent == nil) then
wait(5)
plr:LoadCharacter() -- to make sure nobody is deleted.
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character)
end
end
end
end