RC4 part 2
This commit is contained in:
parent
4934e161e9
commit
5396bc8ded
|
|
@ -0,0 +1,83 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build">
|
||||||
|
<PropertyGroup>
|
||||||
|
<ProjectGuid>{BAC99C87-F6C1-4ED0-AA2E-05C6AE8979EA}</ProjectGuid>
|
||||||
|
<ProjectTypeGuids>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||||
|
<Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
|
||||||
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||||
|
<OutputType>Exe</OutputType>
|
||||||
|
<RootNamespace>NovetusCMD</RootNamespace>
|
||||||
|
<AssemblyName>NovetusCMD</AssemblyName>
|
||||||
|
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||||
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
|
<NoWin32Manifest>False</NoWin32Manifest>
|
||||||
|
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
|
||||||
|
<NoStdLib>False</NoStdLib>
|
||||||
|
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
|
||||||
|
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
|
||||||
|
<WarningLevel>4</WarningLevel>
|
||||||
|
<ApplicationIcon>Resources\NovetusIcon.ico</ApplicationIcon>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' ">
|
||||||
|
<PlatformTarget>x86</PlatformTarget>
|
||||||
|
<BaseAddress>4194304</BaseAddress>
|
||||||
|
<RegisterForComInterop>False</RegisterForComInterop>
|
||||||
|
<GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies>
|
||||||
|
<FileAlignment>4096</FileAlignment>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||||
|
<OutputPath>bin\Debug\</OutputPath>
|
||||||
|
<DebugSymbols>True</DebugSymbols>
|
||||||
|
<DebugType>Full</DebugType>
|
||||||
|
<Optimize>False</Optimize>
|
||||||
|
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
|
||||||
|
<DefineConstants>DEBUG;TRACE;NOVETUS_APPS</DefineConstants>
|
||||||
|
<BaseIntermediateOutputPath>obj\</BaseIntermediateOutputPath>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||||
|
<OutputPath>bin\Release\</OutputPath>
|
||||||
|
<DebugSymbols>False</DebugSymbols>
|
||||||
|
<DebugType>None</DebugType>
|
||||||
|
<Optimize>True</Optimize>
|
||||||
|
<CheckForOverflowUnderflow>False</CheckForOverflowUnderflow>
|
||||||
|
<DefineConstants>TRACE;NOVETUS_APPS</DefineConstants>
|
||||||
|
<BaseIntermediateOutputPath>obj\</BaseIntermediateOutputPath>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Reference Include="Microsoft.CSharp">
|
||||||
|
<RequiredTargetFramework>4.0</RequiredTargetFramework>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Mono.Nat">
|
||||||
|
<HintPath>..\packages\Mono.Nat.1.2.24.0\lib\net40\Mono.Nat.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="System" />
|
||||||
|
<Reference Include="System.Core">
|
||||||
|
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="System.Data" />
|
||||||
|
<Reference Include="System.Data.DataSetExtensions">
|
||||||
|
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="System.Drawing" />
|
||||||
|
<Reference Include="System.Windows.Forms" />
|
||||||
|
<Reference Include="System.Xml" />
|
||||||
|
<Reference Include="System.Xml.Linq">
|
||||||
|
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||||
|
</Reference>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Compile Include="Program.cs" />
|
||||||
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="app.config" />
|
||||||
|
<None Include="packages.config" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\NovetusShared\NovetusShared.csproj">
|
||||||
|
<Project>{759bfc2b-c130-4a2a-a01f-65abfee85b4c}</Project>
|
||||||
|
<Name>NovetusShared</Name>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
|
</Project>
|
||||||
|
|
@ -0,0 +1,329 @@
|
||||||
|
/*
|
||||||
|
* Created by SharpDevelop.
|
||||||
|
* User: Bitl
|
||||||
|
* Date: 6/15/2019
|
||||||
|
* Time: 5:10 PM
|
||||||
|
*
|
||||||
|
* To change this template use Tools | Options | Coding | Edit Standard Headers.
|
||||||
|
*/
|
||||||
|
using System;
|
||||||
|
using Mono.Nat;
|
||||||
|
using NovetusShared;
|
||||||
|
using System.Diagnostics;
|
||||||
|
using System.IO;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using System.Reflection;
|
||||||
|
|
||||||
|
namespace NovetusCMD
|
||||||
|
{
|
||||||
|
class Program
|
||||||
|
{
|
||||||
|
public static void InitUPnP()
|
||||||
|
{
|
||||||
|
if (GlobalVars.UPnP == true)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
UPnP.InitUPnP(DeviceFound,DeviceLost);
|
||||||
|
ConsolePrint("UPnP: Service initialized", 3);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
ConsolePrint("UPnP: Unable to initialize UPnP. Reason - " + ex.Message, 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void StartUPnP(INatDevice device, Protocol protocol, int port)
|
||||||
|
{
|
||||||
|
if (GlobalVars.UPnP == true)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
UPnP.StartUPnP(device,protocol,port);
|
||||||
|
ConsolePrint("UPnP: Port " + port + " opened on '" + device.GetExternalIP() + "' (" + protocol.ToString() + ")", 3);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
ConsolePrint("UPnP: Unable to open port mapping. Reason - " + ex.Message, 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void StopUPnP(INatDevice device, Protocol protocol, int port)
|
||||||
|
{
|
||||||
|
if (GlobalVars.UPnP == true)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
UPnP.StopUPnP(device,protocol,port);
|
||||||
|
ConsolePrint("UPnP: Port " + port + " closed on '" + device.GetExternalIP() + "' (" + protocol.ToString() + ")", 3);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
ConsolePrint("UPnP: Unable to close port mapping. Reason - " + ex.Message, 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void DeviceFound(object sender, DeviceEventArgs args)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
INatDevice device = args.Device;
|
||||||
|
ConsolePrint("UPnP: Device '" + device.GetExternalIP() + "' registered.", 3);
|
||||||
|
StartUPnP(device, Protocol.Udp, GlobalVars.RobloxPort);
|
||||||
|
StartUPnP(device, Protocol.Tcp, GlobalVars.RobloxPort);
|
||||||
|
StartUPnP(device, Protocol.Udp, GlobalVars.WebServer_Port);
|
||||||
|
StartUPnP(device, Protocol.Tcp, GlobalVars.WebServer_Port);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
ConsolePrint("UPnP: Unable to register device. Reason - " + ex.Message, 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void DeviceLost(object sender, DeviceEventArgs args)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
INatDevice device = args.Device;
|
||||||
|
ConsolePrint("UPnP: Device '" + device.GetExternalIP() + "' disconnected.", 3);
|
||||||
|
StopUPnP(device, Protocol.Udp, GlobalVars.RobloxPort);
|
||||||
|
StopUPnP(device, Protocol.Tcp, GlobalVars.RobloxPort);
|
||||||
|
StopUPnP(device, Protocol.Udp, GlobalVars.WebServer_Port);
|
||||||
|
StopUPnP(device, Protocol.Tcp, GlobalVars.WebServer_Port);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
ConsolePrint("UPnP: Unable to disconnect device. Reason - " + ex.Message, 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void StartWebServer()
|
||||||
|
{
|
||||||
|
if (SecurityFuncs.IsElevated)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
GlobalVars.WebServer = new SimpleHTTPServer(GlobalVars.DataPath, GlobalVars.WebServer_Port);
|
||||||
|
ConsolePrint("WebServer: Server is running on port: " + GlobalVars.WebServer.Port.ToString(), 3);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
ConsolePrint("WebServer: Failed to launch WebServer. Some features may not function. (" + ex.Message + ")", 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ConsolePrint("WebServer: Failed to launch WebServer. Some features may not function. (Did not run as Administrator)", 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void StopWebServer()
|
||||||
|
{
|
||||||
|
if (SecurityFuncs.IsElevated)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
ConsolePrint("WebServer: Server has stopped on port: " + GlobalVars.WebServer.Port.ToString(), 2);
|
||||||
|
GlobalVars.WebServer.Stop();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
ConsolePrint("WebServer: Failed to stop WebServer. Some features may not function. (" + ex.Message + ")", 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ConsolePrint("WebServer: Failed to stop WebServer. Some features may not function. (Did not run as Administrator)", 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void WriteConfigValues()
|
||||||
|
{
|
||||||
|
LauncherFuncs.WriteConfigValues(GlobalVars.ConfigDir + "\\config.ini");
|
||||||
|
ConsolePrint("Config Saved.", 3);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void ProgramClose(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
WriteConfigValues();
|
||||||
|
if (GlobalVars.IsWebServerOn == true)
|
||||||
|
{
|
||||||
|
StopWebServer();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void ReadConfigValues()
|
||||||
|
{
|
||||||
|
LauncherFuncs.ReadConfigValues(GlobalVars.ConfigDir + "\\config.ini");
|
||||||
|
|
||||||
|
if (GlobalVars.UserID == 0)
|
||||||
|
{
|
||||||
|
LauncherFuncs.GeneratePlayerID();
|
||||||
|
WriteConfigValues();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (GlobalVars.PlayerLimit == 0)
|
||||||
|
{
|
||||||
|
//We need at least a limit of 12 players.
|
||||||
|
GlobalVars.PlayerLimit = 12;
|
||||||
|
}
|
||||||
|
|
||||||
|
ConsolePrint("Config loaded.", 3);
|
||||||
|
ReadClientValues(GlobalVars.SelectedClient);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void ReadClientValues(string ClientName)
|
||||||
|
{
|
||||||
|
string clientpath = GlobalVars.ClientDir + @"\\" + ClientName + @"\\clientinfo.nov";
|
||||||
|
|
||||||
|
if (!File.Exists(clientpath))
|
||||||
|
{
|
||||||
|
ConsolePrint("ERROR 1 - No clientinfo.nov detected with the client you chose. The client either cannot be loaded, or it is not available.", 2);
|
||||||
|
GlobalVars.SelectedClient = GlobalVars.DefaultClient;
|
||||||
|
}
|
||||||
|
|
||||||
|
LauncherFuncs.ReadClientValues(clientpath);
|
||||||
|
ConsolePrint("Client '" + GlobalVars.SelectedClient + "' successfully loaded.", 3);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void Main(string[] args)
|
||||||
|
{
|
||||||
|
if (args.Length == 0)
|
||||||
|
{
|
||||||
|
ConsolePrint("NovetusCMD will use values defined from the launcher. If you want to define values for NovetusCMD, change the settings on the launcher through the 'Host' tab.", 5);
|
||||||
|
}
|
||||||
|
|
||||||
|
string[] lines = File.ReadAllLines(GlobalVars.ConfigDir + "\\info.txt"); //File is in System.IO
|
||||||
|
string version = lines[0];
|
||||||
|
GlobalVars.DefaultClient = lines[1];
|
||||||
|
GlobalVars.DefaultMap = lines[2];
|
||||||
|
GlobalVars.SelectedClient = GlobalVars.DefaultClient;
|
||||||
|
GlobalVars.Map = GlobalVars.DefaultMap;
|
||||||
|
Console.Title = "Novetus " + version;
|
||||||
|
ConsolePrint("Novetus version " + version + " loaded. Initializing config.", 4);
|
||||||
|
|
||||||
|
if (!File.Exists(GlobalVars.ConfigDir + "\\config.ini"))
|
||||||
|
{
|
||||||
|
ConsolePrint("WARNING 2 - config.ini not found. Creating one with default values.", 5);
|
||||||
|
WriteConfigValues();
|
||||||
|
}
|
||||||
|
|
||||||
|
GlobalVars.Version = version;
|
||||||
|
|
||||||
|
ReadConfigValues();
|
||||||
|
InitUPnP();
|
||||||
|
StartWebServer();
|
||||||
|
|
||||||
|
AppDomain.CurrentDomain.ProcessExit += new EventHandler(ProgramClose);
|
||||||
|
|
||||||
|
StartServer(true);
|
||||||
|
Console.ReadKey();
|
||||||
|
}
|
||||||
|
|
||||||
|
static void StartServer(bool no3d)
|
||||||
|
{
|
||||||
|
string luafile = "";
|
||||||
|
if (!GlobalVars.FixScriptMapMode)
|
||||||
|
{
|
||||||
|
luafile = "rbxasset://scripts\\\\" + GlobalVars.ScriptName + ".lua";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
luafile = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\content\\scripts\\" + GlobalVars.ScriptGenName + ".lua";
|
||||||
|
}
|
||||||
|
string mapfile = GlobalVars.MapsDir + @"\\" + TreeNodeHelper.GetFolderNameFromPrefix(GlobalVars.Map) + GlobalVars.Map;
|
||||||
|
string rbxexe = "";
|
||||||
|
if (GlobalVars.LegacyMode == true)
|
||||||
|
{
|
||||||
|
rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp.exe";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp_server.exe";
|
||||||
|
}
|
||||||
|
string quote = "\"";
|
||||||
|
string args = "";
|
||||||
|
if (GlobalVars.CustomArgs.Equals("%args%"))
|
||||||
|
{
|
||||||
|
if (!GlobalVars.FixScriptMapMode)
|
||||||
|
{
|
||||||
|
args = quote + mapfile + "\" -script \"dofile('" + luafile + "'); " + ScriptGenerator.GetScriptFuncForType(ScriptGenerator.ScriptType.Server, GlobalVars.SelectedClient) + quote + (no3d ? " -no3d" : "");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ScriptGenerator.GenerateScriptForClient(ScriptGenerator.ScriptType.Server, GlobalVars.SelectedClient);
|
||||||
|
args = "-script " + quote + luafile + quote + (no3d ? " -no3d" : "") + " " + quote + mapfile + quote;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (!no3d)
|
||||||
|
{
|
||||||
|
args = ClientScript.CompileScript(GlobalVars.CustomArgs, "<server>", "</server>", mapfile, luafile, rbxexe);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
args = ClientScript.CompileScript(GlobalVars.CustomArgs, "<no3d>", "</no3d>", mapfile, luafile, rbxexe);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
try
|
||||||
|
{
|
||||||
|
//when we add upnp, change this
|
||||||
|
ConsolePrint("Server Loaded.", 4);
|
||||||
|
Process client = new Process();
|
||||||
|
client.StartInfo.FileName = rbxexe;
|
||||||
|
client.StartInfo.Arguments = args;
|
||||||
|
client.EnableRaisingEvents = true;
|
||||||
|
ReadClientValues(GlobalVars.SelectedClient);
|
||||||
|
client.Exited += new EventHandler(ServerExited);
|
||||||
|
client.Start();
|
||||||
|
SecurityFuncs.RenameWindow(client, ScriptGenerator.ScriptType.Server);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
ConsolePrint("ERROR 2 - Failed to launch Novetus. (" + ex.Message + ")", 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void ServerExited(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
Environment.Exit(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void ConsolePrint(string text, int type)
|
||||||
|
{
|
||||||
|
ConsoleText("[" + DateTime.Now.ToShortTimeString() + "] - ", ConsoleColor.White);
|
||||||
|
if (type == 1)
|
||||||
|
{
|
||||||
|
ConsoleText(text, ConsoleColor.White);
|
||||||
|
}
|
||||||
|
else if (type == 2)
|
||||||
|
{
|
||||||
|
ConsoleText(text, ConsoleColor.Red);
|
||||||
|
}
|
||||||
|
else if (type == 3)
|
||||||
|
{
|
||||||
|
ConsoleText(text, ConsoleColor.Green);
|
||||||
|
}
|
||||||
|
else if (type == 4)
|
||||||
|
{
|
||||||
|
ConsoleText(text, ConsoleColor.Cyan);
|
||||||
|
}
|
||||||
|
else if (type == 5)
|
||||||
|
{
|
||||||
|
ConsoleText(text, ConsoleColor.Yellow);
|
||||||
|
}
|
||||||
|
|
||||||
|
ConsoleText(Environment.NewLine, ConsoleColor.White);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void ConsoleText(string text, ConsoleColor color)
|
||||||
|
{
|
||||||
|
Console.ForegroundColor = color;
|
||||||
|
Console.Write(text);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,31 @@
|
||||||
|
#region Using directives
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Reflection;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
// General Information about an assembly is controlled through the following
|
||||||
|
// set of attributes. Change these attribute values to modify the information
|
||||||
|
// associated with an assembly.
|
||||||
|
[assembly: AssemblyTitle("NovetusCMD")]
|
||||||
|
[assembly: AssemblyDescription("")]
|
||||||
|
[assembly: AssemblyConfiguration("")]
|
||||||
|
[assembly: AssemblyCompany("")]
|
||||||
|
[assembly: AssemblyProduct("NovetusCMD")]
|
||||||
|
[assembly: AssemblyCopyright("Copyright 2019")]
|
||||||
|
[assembly: AssemblyTrademark("")]
|
||||||
|
[assembly: AssemblyCulture("")]
|
||||||
|
|
||||||
|
// This sets the default COM visibility of types in the assembly to invisible.
|
||||||
|
// If you need to expose a type to COM, use [ComVisible(true)] on that type.
|
||||||
|
[assembly: ComVisible(false)]
|
||||||
|
|
||||||
|
// The assembly version has following format :
|
||||||
|
//
|
||||||
|
// Major.Minor.Build.Revision
|
||||||
|
//
|
||||||
|
// You can specify all the values or you can use the default the Revision and
|
||||||
|
// Build Numbers by using the '*' as shown below:
|
||||||
|
[assembly: AssemblyVersion("1.0.*")]
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 130 KiB |
|
|
@ -0,0 +1,6 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<configuration>
|
||||||
|
<startup>
|
||||||
|
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" />
|
||||||
|
</startup>
|
||||||
|
</configuration>
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<packages>
|
||||||
|
<package id="Mono.Nat" version="1.2.24.0" targetFramework="net40" />
|
||||||
|
</packages>
|
||||||
|
|
@ -4,6 +4,10 @@ Microsoft Visual Studio Solution File, Format Version 11.00
|
||||||
# SharpDevelop 5.1
|
# SharpDevelop 5.1
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NovetusLauncher", "NovetusLauncher\NovetusLauncher.csproj", "{F92FFBED-2767-4676-9711-BB89CDA58A43}"
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NovetusLauncher", "NovetusLauncher\NovetusLauncher.csproj", "{F92FFBED-2767-4676-9711-BB89CDA58A43}"
|
||||||
EndProject
|
EndProject
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NovetusCMD", "NovetusCMD\NovetusCMD.csproj", "{BAC99C87-F6C1-4ED0-AA2E-05C6AE8979EA}"
|
||||||
|
EndProject
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NovetusShared", "NovetusShared\NovetusShared.csproj", "{759BFC2B-C130-4A2A-A01F-65ABFEE85B4C}"
|
||||||
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
Debug|Any CPU = Debug|Any CPU
|
Debug|Any CPU = Debug|Any CPU
|
||||||
|
|
@ -14,5 +18,13 @@ Global
|
||||||
{F92FFBED-2767-4676-9711-BB89CDA58A43}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{F92FFBED-2767-4676-9711-BB89CDA58A43}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{F92FFBED-2767-4676-9711-BB89CDA58A43}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{F92FFBED-2767-4676-9711-BB89CDA58A43}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{F92FFBED-2767-4676-9711-BB89CDA58A43}.Release|Any CPU.Build.0 = Release|Any CPU
|
{F92FFBED-2767-4676-9711-BB89CDA58A43}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{BAC99C87-F6C1-4ED0-AA2E-05C6AE8979EA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{BAC99C87-F6C1-4ED0-AA2E-05C6AE8979EA}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{BAC99C87-F6C1-4ED0-AA2E-05C6AE8979EA}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{BAC99C87-F6C1-4ED0-AA2E-05C6AE8979EA}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{759BFC2B-C130-4A2A-A01F-65ABFEE85B4C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{759BFC2B-C130-4A2A-A01F-65ABFEE85B4C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{759BFC2B-C130-4A2A-A01F-65ABFEE85B4C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{759BFC2B-C130-4A2A-A01F-65ABFEE85B4C}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
EndGlobal
|
EndGlobal
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,7 @@ using System.Text;
|
||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.ComponentModel;
|
using System.ComponentModel;
|
||||||
|
using NovetusShared;
|
||||||
|
|
||||||
namespace NovetusLauncher
|
namespace NovetusLauncher
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@ using System;
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
|
using NovetusShared;
|
||||||
|
|
||||||
namespace NovetusLauncher
|
namespace NovetusLauncher
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@ using System.Windows.Forms;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
|
using NovetusShared;
|
||||||
|
|
||||||
namespace NovetusLauncher
|
namespace NovetusLauncher
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@ using System.Net;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.ComponentModel;
|
using System.ComponentModel;
|
||||||
|
using NovetusShared;
|
||||||
|
|
||||||
namespace NovetusLauncher
|
namespace NovetusLauncher
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,7 @@ using System.Reflection;
|
||||||
using System.Security.Cryptography;
|
using System.Security.Cryptography;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
|
using NovetusShared;
|
||||||
|
|
||||||
namespace NovetusLauncher
|
namespace NovetusLauncher
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -57,7 +57,6 @@ namespace NovetusLauncher
|
||||||
this.button6 = new System.Windows.Forms.Button();
|
this.button6 = new System.Windows.Forms.Button();
|
||||||
this.textBox3 = new System.Windows.Forms.TextBox();
|
this.textBox3 = new System.Windows.Forms.TextBox();
|
||||||
this.treeView1 = new System.Windows.Forms.TreeView();
|
this.treeView1 = new System.Windows.Forms.TreeView();
|
||||||
this.checkBox2 = new System.Windows.Forms.CheckBox();
|
|
||||||
this.button23 = new System.Windows.Forms.Button();
|
this.button23 = new System.Windows.Forms.Button();
|
||||||
this.button22 = new System.Windows.Forms.Button();
|
this.button22 = new System.Windows.Forms.Button();
|
||||||
this.numericUpDown3 = new System.Windows.Forms.NumericUpDown();
|
this.numericUpDown3 = new System.Windows.Forms.NumericUpDown();
|
||||||
|
|
@ -313,7 +312,6 @@ namespace NovetusLauncher
|
||||||
this.tabPage2.Controls.Add(this.button6);
|
this.tabPage2.Controls.Add(this.button6);
|
||||||
this.tabPage2.Controls.Add(this.textBox3);
|
this.tabPage2.Controls.Add(this.textBox3);
|
||||||
this.tabPage2.Controls.Add(this.treeView1);
|
this.tabPage2.Controls.Add(this.treeView1);
|
||||||
this.tabPage2.Controls.Add(this.checkBox2);
|
|
||||||
this.tabPage2.Controls.Add(this.button23);
|
this.tabPage2.Controls.Add(this.button23);
|
||||||
this.tabPage2.Controls.Add(this.button22);
|
this.tabPage2.Controls.Add(this.button22);
|
||||||
this.tabPage2.Controls.Add(this.numericUpDown3);
|
this.tabPage2.Controls.Add(this.numericUpDown3);
|
||||||
|
|
@ -346,7 +344,7 @@ namespace NovetusLauncher
|
||||||
//
|
//
|
||||||
// checkBox4
|
// checkBox4
|
||||||
//
|
//
|
||||||
this.checkBox4.Location = new System.Drawing.Point(152, 198);
|
this.checkBox4.Location = new System.Drawing.Point(152, 187);
|
||||||
this.checkBox4.Name = "checkBox4";
|
this.checkBox4.Name = "checkBox4";
|
||||||
this.checkBox4.Size = new System.Drawing.Size(104, 17);
|
this.checkBox4.Size = new System.Drawing.Size(104, 17);
|
||||||
this.checkBox4.TabIndex = 57;
|
this.checkBox4.TabIndex = 57;
|
||||||
|
|
@ -382,16 +380,6 @@ namespace NovetusLauncher
|
||||||
this.treeView1.TabIndex = 54;
|
this.treeView1.TabIndex = 54;
|
||||||
this.treeView1.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.TreeView1AfterSelect);
|
this.treeView1.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.TreeView1AfterSelect);
|
||||||
//
|
//
|
||||||
// checkBox2
|
|
||||||
//
|
|
||||||
this.checkBox2.Location = new System.Drawing.Point(152, 182);
|
|
||||||
this.checkBox2.Name = "checkBox2";
|
|
||||||
this.checkBox2.Size = new System.Drawing.Size(134, 16);
|
|
||||||
this.checkBox2.TabIndex = 53;
|
|
||||||
this.checkBox2.Text = "Disable Teapot Turret";
|
|
||||||
this.checkBox2.UseVisualStyleBackColor = true;
|
|
||||||
this.checkBox2.CheckedChanged += new System.EventHandler(this.CheckBox2CheckedChanged);
|
|
||||||
//
|
|
||||||
// button23
|
// 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.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||||
|
|
@ -1079,7 +1067,6 @@ namespace NovetusLauncher
|
||||||
private System.Windows.Forms.Label label7;
|
private System.Windows.Forms.Label label7;
|
||||||
private System.Windows.Forms.Label label2;
|
private System.Windows.Forms.Label label2;
|
||||||
private System.Windows.Forms.TabPage tabPage5;
|
private System.Windows.Forms.TabPage tabPage5;
|
||||||
private System.Windows.Forms.CheckBox checkBox2;
|
|
||||||
private System.Windows.Forms.Button button23;
|
private System.Windows.Forms.Button button23;
|
||||||
private System.Windows.Forms.Button button22;
|
private System.Windows.Forms.Button button22;
|
||||||
private System.Windows.Forms.Button button7;
|
private System.Windows.Forms.Button button7;
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,7 @@ using System.Diagnostics;
|
||||||
using System.ComponentModel;
|
using System.ComponentModel;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using Mono.Nat;
|
using Mono.Nat;
|
||||||
|
using NovetusShared;
|
||||||
|
|
||||||
namespace NovetusLauncher
|
namespace NovetusLauncher
|
||||||
{
|
{
|
||||||
|
|
@ -411,7 +412,6 @@ namespace NovetusLauncher
|
||||||
numericUpDown2.Value = Convert.ToDecimal(GlobalVars.RobloxPort);
|
numericUpDown2.Value = Convert.ToDecimal(GlobalVars.RobloxPort);
|
||||||
label37.Text = GlobalVars.IP;
|
label37.Text = GlobalVars.IP;
|
||||||
label38.Text = GlobalVars.RobloxPort.ToString();
|
label38.Text = GlobalVars.RobloxPort.ToString();
|
||||||
checkBox2.Checked = GlobalVars.DisableTeapotTurret;
|
|
||||||
checkBox4.Checked = GlobalVars.UPnP;
|
checkBox4.Checked = GlobalVars.UPnP;
|
||||||
ConsolePrint("Config loaded.", 3);
|
ConsolePrint("Config loaded.", 3);
|
||||||
ReadClientValues(GlobalVars.SelectedClient);
|
ReadClientValues(GlobalVars.SelectedClient);
|
||||||
|
|
@ -727,8 +727,7 @@ namespace NovetusLauncher
|
||||||
|
|
||||||
void ConsolePrint(string text, int type)
|
void ConsolePrint(string text, int type)
|
||||||
{
|
{
|
||||||
richTextBox1.AppendText("[" + DateTime.Now.ToShortTimeString() + "]", Color.White);
|
richTextBox1.AppendText("[" + DateTime.Now.ToShortTimeString() + "] - ", Color.White);
|
||||||
richTextBox1.AppendText(" - ", Color.White);
|
|
||||||
if (type == 1)
|
if (type == 1)
|
||||||
{
|
{
|
||||||
richTextBox1.AppendText(text, Color.White);
|
richTextBox1.AppendText(text, Color.White);
|
||||||
|
|
@ -844,7 +843,6 @@ namespace NovetusLauncher
|
||||||
client.Exited += new EventHandler(ClientExited);
|
client.Exited += new EventHandler(ClientExited);
|
||||||
client.Start();
|
client.Start();
|
||||||
SecurityFuncs.RenameWindow(client, ScriptGenerator.ScriptType.Client);
|
SecurityFuncs.RenameWindow(client, ScriptGenerator.ScriptType.Client);
|
||||||
SecurityFuncs.InjectAntiCheat(client);
|
|
||||||
GlobalVars.presence.details = "";
|
GlobalVars.presence.details = "";
|
||||||
GlobalVars.presence.state = "In " + GlobalVars.SelectedClient + " Game";
|
GlobalVars.presence.state = "In " + GlobalVars.SelectedClient + " Game";
|
||||||
GlobalVars.presence.largeImageText = GlobalVars.PlayerName + " | In " + GlobalVars.SelectedClient + " Game";
|
GlobalVars.presence.largeImageText = GlobalVars.PlayerName + " | In " + GlobalVars.SelectedClient + " Game";
|
||||||
|
|
@ -1389,18 +1387,6 @@ namespace NovetusLauncher
|
||||||
GlobalVars.RobloxPort = GlobalVars.DefaultRobloxPort;
|
GlobalVars.RobloxPort = GlobalVars.DefaultRobloxPort;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CheckBox2CheckedChanged(object sender, EventArgs e)
|
|
||||||
{
|
|
||||||
if (checkBox2.Checked == true)
|
|
||||||
{
|
|
||||||
GlobalVars.DisableTeapotTurret = true;
|
|
||||||
}
|
|
||||||
else if (checkBox2.Checked == false)
|
|
||||||
{
|
|
||||||
GlobalVars.DisableTeapotTurret = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void TreeView1AfterSelect(object sender, TreeViewEventArgs e)
|
void TreeView1AfterSelect(object sender, TreeViewEventArgs e)
|
||||||
{
|
{
|
||||||
if (treeView1.SelectedNode.Nodes.Count == 0)
|
if (treeView1.SelectedNode.Nodes.Count == 0)
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,9 @@
|
||||||
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
|
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
|
||||||
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
|
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
|
||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
|
<SignAssembly>False</SignAssembly>
|
||||||
|
<DelaySign>False</DelaySign>
|
||||||
|
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' ">
|
<PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' ">
|
||||||
<PlatformTarget>x86</PlatformTarget>
|
<PlatformTarget>x86</PlatformTarget>
|
||||||
|
|
@ -32,16 +35,18 @@
|
||||||
<DebugType>Full</DebugType>
|
<DebugType>Full</DebugType>
|
||||||
<Optimize>False</Optimize>
|
<Optimize>False</Optimize>
|
||||||
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
|
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
|
||||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
<DefineConstants>DEBUG;TRACE;LAUNCHER;NOVETUS_APPS</DefineConstants>
|
||||||
|
<BaseIntermediateOutputPath>obj\</BaseIntermediateOutputPath>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||||
<OutputPath>bin\Release\</OutputPath>
|
<OutputPath>bin\Release\</OutputPath>
|
||||||
<DebugSymbols>False</DebugSymbols>
|
<DebugSymbols>False</DebugSymbols>
|
||||||
<DebugType>None</DebugType>
|
<DebugType>None</DebugType>
|
||||||
<Optimize>True</Optimize>
|
<Optimize>True</Optimize>
|
||||||
<CheckForOverflowUnderflow>False</CheckForOverflowUnderflow>
|
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
|
||||||
<DefineConstants>TRACE</DefineConstants>
|
<DefineConstants>TRACE;LAUNCHER;NOVETUS_APPS</DefineConstants>
|
||||||
<BaseIntermediateOutputPath>obj\</BaseIntermediateOutputPath>
|
<BaseIntermediateOutputPath>obj\</BaseIntermediateOutputPath>
|
||||||
|
<StartAction>Project</StartAction>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="Mono.Nat">
|
<Reference Include="Mono.Nat">
|
||||||
|
|
@ -79,7 +84,6 @@
|
||||||
<Compile Include="ItemMaker.Designer.cs">
|
<Compile Include="ItemMaker.Designer.cs">
|
||||||
<DependentUpon>ItemMaker.cs</DependentUpon>
|
<DependentUpon>ItemMaker.cs</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="LauncherFuncs.cs" />
|
|
||||||
<Compile Include="LoaderForm.cs" />
|
<Compile Include="LoaderForm.cs" />
|
||||||
<Compile Include="LoaderForm.Designer.cs">
|
<Compile Include="LoaderForm.Designer.cs">
|
||||||
<DependentUpon>LoaderForm.cs</DependentUpon>
|
<DependentUpon>LoaderForm.cs</DependentUpon>
|
||||||
|
|
@ -129,5 +133,11 @@
|
||||||
<None Include="app.config" />
|
<None Include="app.config" />
|
||||||
<None Include="packages.config" />
|
<None Include="packages.config" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\NovetusShared\NovetusShared.csproj">
|
||||||
|
<Project>{759bfc2b-c130-4a2a-a01f-65abfee85b4c}</Project>
|
||||||
|
<Name>NovetusShared</Name>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
</Project>
|
</Project>
|
||||||
|
|
@ -8,6 +8,7 @@
|
||||||
*/
|
*/
|
||||||
using System;
|
using System;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
|
using NovetusShared;
|
||||||
|
|
||||||
namespace NovetusLauncher
|
namespace NovetusLauncher
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -1,31 +1,27 @@
|
||||||
#region Using directives
|
#region Using directives
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Runtime.InteropServices;
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
// General Information about an assembly is controlled through the following
|
// General Information about an assembly is controlled through the following
|
||||||
// set of attributes. Change these attribute values to modify the information
|
// set of attributes. Change these attribute values to modify the information
|
||||||
// associated with an assembly.
|
// associated with an assembly.
|
||||||
[assembly: AssemblyTitle("Novetus")]
|
[assembly: AssemblyTitle ("Novetus")]
|
||||||
[assembly: AssemblyDescription("Launcher for old ROBLOX clients")]
|
[assembly: AssemblyDescription ("Launcher for old ROBLOX clients")]
|
||||||
[assembly: AssemblyConfiguration("")]
|
[assembly: AssemblyConfiguration ("")]
|
||||||
[assembly: AssemblyCompany("Bitl")]
|
[assembly: AssemblyCompany ("Bitl")]
|
||||||
[assembly: AssemblyProduct("Novetus")]
|
[assembly: AssemblyProduct ("Novetus")]
|
||||||
[assembly: AssemblyCopyright("(c) Bitl 2018-2019. All rights to ROBLOX go to the ROBLOX Corporation")]
|
[assembly: AssemblyCopyright ("(c) Bitl 2018-2019. All rights to ROBLOX go to the ROBLOX Corporation")]
|
||||||
[assembly: AssemblyTrademark("")]
|
[assembly: AssemblyTrademark ("")]
|
||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture ("")]
|
||||||
|
|
||||||
// This sets the default COM visibility of types in the assembly to invisible.
|
// This sets the default COM visibility of types in the assembly to invisible.
|
||||||
// If you need to expose a type to COM, use [ComVisible(true)] on that type.
|
// If you need to expose a type to COM, use [ComVisible(true)] on that type.
|
||||||
[assembly: ComVisible(false)]
|
[assembly: ComVisible (false)]
|
||||||
|
|
||||||
// The assembly version has following format :
|
// The assembly version has following format :
|
||||||
//
|
//
|
||||||
// Major.Minor.Build.Revision
|
// Major.Minor.Build.Revision
|
||||||
//
|
//
|
||||||
// You can specify all the values or you can use the default the Revision and
|
// You can specify all the values or you can use the default the Revision and
|
||||||
// Build Numbers by using the '*' as shown below:
|
// Build Numbers by using the '*' as shown below:
|
||||||
[assembly: AssemblyVersion("1.0.*")]
|
[assembly: AssemblyVersion ("1.0.*")]
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,7 @@ using System.Text;
|
||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.ComponentModel;
|
using System.ComponentModel;
|
||||||
|
using NovetusShared;
|
||||||
|
|
||||||
namespace NovetusLauncher
|
namespace NovetusLauncher
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@ using System;
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
using System.Net;
|
using System.Net;
|
||||||
|
using NovetusShared;
|
||||||
|
|
||||||
namespace NovetusLauncher
|
namespace NovetusLauncher
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,7 @@ using System.Net.Sockets;
|
||||||
using System.Net;
|
using System.Net;
|
||||||
using Mono.Nat;
|
using Mono.Nat;
|
||||||
|
|
||||||
namespace NovetusLauncher
|
namespace NovetusShared
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Description of LauncherFuncs.
|
/// Description of LauncherFuncs.
|
||||||
|
|
@ -39,7 +39,7 @@ namespace NovetusLauncher
|
||||||
|
|
||||||
public static void ReadConfigValues(string cfgpath)
|
public static void ReadConfigValues(string cfgpath)
|
||||||
{
|
{
|
||||||
string Decryptline1, Decryptline2, Decryptline3, Decryptline4, Decryptline5, Decryptline6, Decryptline7, Decryptline8, Decryptline9, Decryptline10;
|
string Decryptline1, Decryptline2, Decryptline3, Decryptline4, Decryptline5, Decryptline6, Decryptline7, Decryptline9, Decryptline10;
|
||||||
|
|
||||||
IniFile ini = new IniFile(cfgpath);
|
IniFile ini = new IniFile(cfgpath);
|
||||||
|
|
||||||
|
|
@ -52,7 +52,6 @@ namespace NovetusLauncher
|
||||||
Decryptline5 = ini.IniReadValue(section, "Map");
|
Decryptline5 = ini.IniReadValue(section, "Map");
|
||||||
Decryptline6 = ini.IniReadValue(section, "RobloxPort");
|
Decryptline6 = ini.IniReadValue(section, "RobloxPort");
|
||||||
Decryptline7 = ini.IniReadValue(section, "PlayerLimit");
|
Decryptline7 = ini.IniReadValue(section, "PlayerLimit");
|
||||||
Decryptline8 = ini.IniReadValue(section, "DisableTeapotTurret");
|
|
||||||
Decryptline9 = ini.IniReadValue(section, "ShowHatsOnExtra");
|
Decryptline9 = ini.IniReadValue(section, "ShowHatsOnExtra");
|
||||||
Decryptline10 = ini.IniReadValue(section, "UPnP");
|
Decryptline10 = ini.IniReadValue(section, "UPnP");
|
||||||
|
|
||||||
|
|
@ -74,9 +73,6 @@ namespace NovetusLauncher
|
||||||
int iline7 = Convert.ToInt32(Decryptline7);
|
int iline7 = Convert.ToInt32(Decryptline7);
|
||||||
GlobalVars.PlayerLimit = iline7;
|
GlobalVars.PlayerLimit = iline7;
|
||||||
|
|
||||||
bool bline8 = Convert.ToBoolean(Decryptline8);
|
|
||||||
GlobalVars.DisableTeapotTurret = bline8;
|
|
||||||
|
|
||||||
bool bline9 = Convert.ToBoolean(Decryptline9);
|
bool bline9 = Convert.ToBoolean(Decryptline9);
|
||||||
GlobalVars.Custom_Extra_ShowHats = bline9;
|
GlobalVars.Custom_Extra_ShowHats = bline9;
|
||||||
|
|
||||||
|
|
@ -99,7 +95,6 @@ namespace NovetusLauncher
|
||||||
ini.IniWriteValue(section, "Map", GlobalVars.Map.ToString());
|
ini.IniWriteValue(section, "Map", GlobalVars.Map.ToString());
|
||||||
ini.IniWriteValue(section, "RobloxPort", GlobalVars.RobloxPort.ToString());
|
ini.IniWriteValue(section, "RobloxPort", GlobalVars.RobloxPort.ToString());
|
||||||
ini.IniWriteValue(section, "PlayerLimit", GlobalVars.PlayerLimit.ToString());
|
ini.IniWriteValue(section, "PlayerLimit", GlobalVars.PlayerLimit.ToString());
|
||||||
ini.IniWriteValue(section, "DisableTeapotTurret", GlobalVars.DisableTeapotTurret.ToString());
|
|
||||||
ini.IniWriteValue(section, "ShowHatsOnExtra", GlobalVars.Custom_Extra_ShowHats.ToString());
|
ini.IniWriteValue(section, "ShowHatsOnExtra", GlobalVars.Custom_Extra_ShowHats.ToString());
|
||||||
ini.IniWriteValue(section, "UPnP", GlobalVars.UPnP.ToString());
|
ini.IniWriteValue(section, "UPnP", GlobalVars.UPnP.ToString());
|
||||||
WriteCustomizationValues(cfgpath.Replace(".ini","_customization.ini"));
|
WriteCustomizationValues(cfgpath.Replace(".ini","_customization.ini"));
|
||||||
|
|
@ -116,7 +111,6 @@ namespace NovetusLauncher
|
||||||
GlobalVars.Map = GlobalVars.DefaultMap;
|
GlobalVars.Map = GlobalVars.DefaultMap;
|
||||||
GlobalVars.RobloxPort = 53640;
|
GlobalVars.RobloxPort = 53640;
|
||||||
GlobalVars.PlayerLimit = 12;
|
GlobalVars.PlayerLimit = 12;
|
||||||
GlobalVars.DisableTeapotTurret = false;
|
|
||||||
GlobalVars.Custom_Extra_ShowHats = false;
|
GlobalVars.Custom_Extra_ShowHats = false;
|
||||||
GlobalVars.UPnP = false;
|
GlobalVars.UPnP = false;
|
||||||
ResetCustomizationValues();
|
ResetCustomizationValues();
|
||||||
|
|
@ -833,15 +827,6 @@ namespace NovetusLauncher
|
||||||
RenameWindow(exe, type);
|
RenameWindow(exe, type);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void InjectAntiCheat(Process client)
|
|
||||||
{
|
|
||||||
if (client.IsRunning() == true)
|
|
||||||
{
|
|
||||||
var injector = new DllInjector();
|
|
||||||
injector.Inject(client, GlobalVars.BasePath + "\\AntiCheat.dll");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class RichTextBoxExtensions
|
public static class RichTextBoxExtensions
|
||||||
|
|
@ -980,7 +965,7 @@ namespace NovetusLauncher
|
||||||
}
|
}
|
||||||
else if (type == ScriptType.Server)
|
else if (type == ScriptType.Server)
|
||||||
{
|
{
|
||||||
return "_G.CSServer(" + GlobalVars.RobloxPort + "," + GlobalVars.PlayerLimit + "," + md5s + "," + GlobalVars.DisableTeapotTurret.ToString().ToLower() + ")";
|
return "_G.CSServer(" + GlobalVars.RobloxPort + "," + GlobalVars.PlayerLimit + "," + md5s + ")";
|
||||||
}
|
}
|
||||||
else if (type == ScriptType.Solo)
|
else if (type == ScriptType.Solo)
|
||||||
{
|
{
|
||||||
|
|
@ -1254,7 +1239,7 @@ namespace NovetusLauncher
|
||||||
}
|
}
|
||||||
else if (type == ScriptGenerator.ScriptType.Server)
|
else if (type == ScriptGenerator.ScriptType.Server)
|
||||||
{
|
{
|
||||||
return "dofile('" + luafile + "'); _G.CSServer(" + GlobalVars.RobloxPort + "," + GlobalVars.PlayerLimit + "," + md5s + "," + GlobalVars.DisableTeapotTurret.ToString().ToLower() + ")";
|
return "dofile('" + luafile + "'); _G.CSServer(" + GlobalVars.RobloxPort + "," + GlobalVars.PlayerLimit + "," + md5s + ")";
|
||||||
}
|
}
|
||||||
else if (type == ScriptGenerator.ScriptType.Solo)
|
else if (type == ScriptGenerator.ScriptType.Solo)
|
||||||
{
|
{
|
||||||
|
|
@ -2114,7 +2099,6 @@ namespace NovetusLauncher
|
||||||
public static int DefaultRobloxPort = 53640;
|
public static int DefaultRobloxPort = 53640;
|
||||||
public static int WebServer_Port = (RobloxPort+1);
|
public static int WebServer_Port = (RobloxPort+1);
|
||||||
public static int PlayerLimit = 12;
|
public static int PlayerLimit = 12;
|
||||||
public static bool DisableTeapotTurret = false;
|
|
||||||
//player settings
|
//player settings
|
||||||
public static int UserID = 0;
|
public static int UserID = 0;
|
||||||
public static string PlayerName = "Player";
|
public static string PlayerName = "Player";
|
||||||
|
|
@ -0,0 +1,59 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build">
|
||||||
|
<PropertyGroup>
|
||||||
|
<ProjectGuid>{759BFC2B-C130-4A2A-A01F-65ABFEE85B4C}</ProjectGuid>
|
||||||
|
<ProjectTypeGuids>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||||
|
<Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
|
||||||
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||||
|
<OutputType>Library</OutputType>
|
||||||
|
<RootNamespace>NovetusShared</RootNamespace>
|
||||||
|
<AssemblyName>NovetusShared</AssemblyName>
|
||||||
|
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||||
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' ">
|
||||||
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||||
|
<OutputPath>bin\Debug\</OutputPath>
|
||||||
|
<DebugSymbols>True</DebugSymbols>
|
||||||
|
<DebugType>Full</DebugType>
|
||||||
|
<Optimize>False</Optimize>
|
||||||
|
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
|
||||||
|
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||||
|
<OutputPath>bin\Release\</OutputPath>
|
||||||
|
<DebugSymbols>False</DebugSymbols>
|
||||||
|
<DebugType>None</DebugType>
|
||||||
|
<Optimize>True</Optimize>
|
||||||
|
<CheckForOverflowUnderflow>False</CheckForOverflowUnderflow>
|
||||||
|
<DefineConstants>TRACE</DefineConstants>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Reference Include="Microsoft.CSharp">
|
||||||
|
<RequiredTargetFramework>4.0</RequiredTargetFramework>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Mono.Nat">
|
||||||
|
<HintPath>..\packages\Mono.Nat.1.2.24.0\lib\net40\Mono.Nat.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="System" />
|
||||||
|
<Reference Include="System.Core">
|
||||||
|
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="System.Drawing" />
|
||||||
|
<Reference Include="System.Windows.Forms" />
|
||||||
|
<Reference Include="System.Xml" />
|
||||||
|
<Reference Include="System.Xml.Linq">
|
||||||
|
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||||
|
</Reference>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Compile Include="LauncherFuncs.cs" />
|
||||||
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="packages.config" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
|
</Project>
|
||||||
|
|
@ -0,0 +1,31 @@
|
||||||
|
#region Using directives
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Reflection;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
// General Information about an assembly is controlled through the following
|
||||||
|
// set of attributes. Change these attribute values to modify the information
|
||||||
|
// associated with an assembly.
|
||||||
|
[assembly: AssemblyTitle("NovetusShared")]
|
||||||
|
[assembly: AssemblyDescription("")]
|
||||||
|
[assembly: AssemblyConfiguration("")]
|
||||||
|
[assembly: AssemblyCompany("")]
|
||||||
|
[assembly: AssemblyProduct("NovetusShared")]
|
||||||
|
[assembly: AssemblyCopyright("Copyright 2019")]
|
||||||
|
[assembly: AssemblyTrademark("")]
|
||||||
|
[assembly: AssemblyCulture("")]
|
||||||
|
|
||||||
|
// This sets the default COM visibility of types in the assembly to invisible.
|
||||||
|
// If you need to expose a type to COM, use [ComVisible(true)] on that type.
|
||||||
|
[assembly: ComVisible(false)]
|
||||||
|
|
||||||
|
// The assembly version has following format :
|
||||||
|
//
|
||||||
|
// Major.Minor.Build.Revision
|
||||||
|
//
|
||||||
|
// You can specify all the values or you can use the default the Revision and
|
||||||
|
// Build Numbers by using the '*' as shown below:
|
||||||
|
[assembly: AssemblyVersion("1.0.*")]
|
||||||
Binary file not shown.
|
|
@ -0,0 +1,4 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<packages>
|
||||||
|
<package id="Mono.Nat" version="1.2.24.0" targetFramework="net40" />
|
||||||
|
</packages>
|
||||||
|
|
@ -1,4 +1,6 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<repositories>
|
<repositories>
|
||||||
|
<repository path="..\NovetusCMD\packages.config" />
|
||||||
<repository path="..\NovetusLauncher\packages.config" />
|
<repository path="..\NovetusLauncher\packages.config" />
|
||||||
|
<repository path="..\NovetusShared\packages.config" />
|
||||||
</repositories>
|
</repositories>
|
||||||
Loading…
Reference in New Issue