Compare commits

...

9 Commits

Author SHA1 Message Date
trashprovider56 fcffcf1eed
Update README.md 2018-01-15 13:06:22 -06:00
trashprovider56 993acc0955
Merge pull request #21 from trashprovider56/master
gh
2018-01-15 13:02:50 -06:00
trashprovider56 7622ccbc8c
sadfghaq34yhhrstjhsrtsrtrts 2018-01-14 23:20:04 -06:00
trashprovider56 2ab8495d39
I hate markdown 2018-01-14 23:19:43 -06:00
trashprovider56 865b4906ae
Update README.md 2018-01-14 23:19:03 -06:00
trashprovider56 7b826dd564
Update README.md 2018-01-14 23:17:55 -06:00
trashprovider56 cc1d6ad6a9
Update README.md 2018-01-14 23:17:20 -06:00
trashprovider56 9a93d97796
Update README.md 2018-01-14 23:17:06 -06:00
Quacky dcb46bfbbd 2007 support part 1
Starting off with a rewrite of StartClient
2018-01-14 01:12:16 -06:00
3 changed files with 389 additions and 97 deletions

289
.gitignore vendored
View File

@ -45,3 +45,292 @@ $RECYCLE.BIN/
Network Trash Folder Network Trash Folder
Temporary Items Temporary Items
.apdisk .apdisk
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
##
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
# User-specific files
*.suo
*.user
*.userosscache
*.sln.docstates
# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs
# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
bld/
[Bb]in/
[Oo]bj/
[Ll]og/
# Visual Studio 2015 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/
# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
# NUNIT
*.VisualState.xml
TestResult.xml
# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c
# .NET Core
project.lock.json
project.fragment.lock.json
artifacts/
**/Properties/launchSettings.json
*_i.c
*_p.c
*_i.h
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc
# Chutzpah Test files
_Chutzpah*
# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db
*.VC.VC.opendb
# Visual Studio profiler
*.psess
*.vsp
*.vspx
*.sap
# TFS 2012 Local Workspace
$tf/
# Guidance Automation Toolkit
*.gpState
# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user
# JustCode is a .NET coding add-in
.JustCode
# TeamCity is a build add-in
_TeamCity*
# DotCover is a Code Coverage Tool
*.dotCover
# Visual Studio code coverage results
*.coverage
*.coveragexml
# NCrunch
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*
# MightyMoose
*.mm.*
AutoTest.Net/
# Web workbench (sass)
.sass-cache/
# Installshield output folder
[Ee]xpress/
# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html
# Click-Once directory
publish/
# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
# TODO: Comment the next line if you want to checkin your web deploy settings
# but database connection strings (with potential passwords) will be unencrypted
*.pubxml
*.publishproj
# Microsoft Azure Web App publish settings. Comment the next line if you want to
# checkin your Azure Web App publish settings, but sensitive information contained
# in these scripts will be unencrypted
PublishScripts/
# NuGet Packages
*.nupkg
# The packages folder can be ignored because of Package Restore
**/packages/*
# except build/, which is used as an MSBuild target.
!**/packages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/packages/repositories.config
# NuGet v3's project.json files produces more ignorable files
*.nuget.props
*.nuget.targets
# Microsoft Azure Build Output
csx/
*.build.csdef
# Microsoft Azure Emulator
ecf/
rcf/
# Windows Store app package directories and files
AppPackages/
BundleArtifacts/
Package.StoreAssociation.xml
_pkginfo.txt
# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!*.[Cc]ache/
# Others
ClientBin/
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.jfm
*.pfx
*.publishsettings
orleans.codegen.cs
# Since there are multiple workflows, uncomment next line to ignore bower_components
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
#bower_components/
# RIA/Silverlight projects
Generated_Code/
# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
# SQL Server files
*.mdf
*.ldf
*.ndf
# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings
# Microsoft Fakes
FakesAssemblies/
# GhostDoc plugin setting file
*.GhostDoc.xml
# Node.js Tools for Visual Studio
.ntvs_analysis.dat
node_modules/
# Typescript v1 declaration files
typings/
# Visual Studio 6 build log
*.plg
# Visual Studio 6 workspace options file
*.opt
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
*.vbw
# Visual Studio LightSwitch build output
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
**/*.DesktopClient/ModelManifest.xml
**/*.Server/GeneratedArtifacts
**/*.Server/ModelManifest.xml
_Pvt_Extensions
# Paket dependency manager
.paket/paket.exe
paket-files/
# FAKE - F# Make
.fake/
# JetBrains Rider
.idea/
*.sln.iml
# CodeRush
.cr/
# Python Tools for Visual Studio (PTVS)
__pycache__/
*.pyc
# Cake - Uncomment if you are using it
# tools/**
# !tools/packages.config
# Telerik's JustMock configuration file
*.jmconfig
# BizTalk build output
*.btp.cs
*.btm.cs
*.odx.cs
*.xsd.cs

View File

@ -190,7 +190,7 @@ namespace RBXLegacyLauncher
sudp.StartInfo.CreateNoWindow = true; sudp.StartInfo.CreateNoWindow = true;
sudp.Start(); sudp.Start();
} }
StartClient(); startGame();
if (GlobalVars.CloseOnLaunch == true) if (GlobalVars.CloseOnLaunch == true)
{ {
@ -711,95 +711,99 @@ namespace RBXLegacyLauncher
richTextBox1.AppendText(Environment.NewLine); richTextBox1.AppendText(Environment.NewLine);
} }
void StartClient() void startGame()
{ {
if (SecurityFuncs.checkScriptMD5() == true) // checks
{ if (SecurityFuncs.checkScriptMD5() == false)
string rbxexe = ""; {
if (GlobalVars.LegacyMode == true) ConsolePrint("ERROR 2 - Failed to launch RBXLegacy. (The script has been detected as modified.)", 2);
{ DialogResult result2 = MessageBox.Show("Failed to launch RBXLegacy. (The script has been detected as modified.)", "RBXLegacy Launcher - Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp.exe"; return;
} }
else else if (SecurityFuncs.checkClientMD5(GlobalVars.SelectedClient) == false)
{ {
rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxPlayer.exe"; ConsolePrint("ERROR 2 - Failed to launch RBXLegacy. (The client has been detected as modified.)", 2);
} DialogResult result2 = MessageBox.Show("Failed to launch RBXLegacy. (The client has been detected as modified.)", "RBXLegacy Launcher - Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
string quote = "\""; return;
string args = ""; }
string HatIDOffline1 = GlobalVars.Custom_Hat1ID_Offline; string clientPath = "";
string HatIDOffline2 = GlobalVars.Custom_Hat2ID_Offline; string arguments = "";
string HatIDOffline3 = GlobalVars.Custom_Hat3ID_Offline; string launchArgs = "";
if (GlobalVars.HasRocky == true) if (GlobalVars.LegacyMode == true)
{ {
if (GlobalVars.UsesPlayerName == true && GlobalVars.UsesID == true) clientPath = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp.exe";
{ }
args = "-script " + quote + "dofile('" + GlobalVars.DefaultScript + "'); _G.SetRBXLegacyVersion(" + GlobalVars.SelectedClientVersion + ") _G.CSConnect(" + GlobalVars.UserID + ",'localhost'," + GlobalVars.RobloxPort + ",'" + GlobalVars.PlayerName + "','" + HatIDOffline1 + "','" + HatIDOffline2 + "','" + HatIDOffline3 + "'," + GlobalVars.HeadColorID + "," + GlobalVars.TorsoColorID + "," + GlobalVars.LeftArmColorID + "," + GlobalVars.RightArmColorID + "," + GlobalVars.LeftLegColorID + "," + GlobalVars.RightLegColorID + ",'" + GlobalVars.Custom_TShirt + "','" + GlobalVars.Custom_Shirt + "','" + GlobalVars.Custom_Pants + "','" + GlobalVars.FaceID + "','" + GlobalVars.HeadID + "','" + GlobalVars.Custom_IconType + "'," + GlobalVars.AdminMode.ToString().ToLower() + ")" + quote; else
} {
else if (GlobalVars.UsesPlayerName == false && GlobalVars.UsesID == true) clientPath = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxPlayer.exe";
{ }
args = "-script " + quote + "dofile('" + GlobalVars.DefaultScript + "'); _G.SetRBXLegacyVersion(" + GlobalVars.SelectedClientVersion + ") _G.CSConnect(" + GlobalVars.UserID + ",'localhost'," + GlobalVars.RobloxPort + ",'Player','" + HatIDOffline1 + "','" + HatIDOffline2 + "','" + HatIDOffline3 + "'," + GlobalVars.HeadColorID + "," + GlobalVars.TorsoColorID + "," + GlobalVars.LeftArmColorID + "," + GlobalVars.RightArmColorID + "," + GlobalVars.LeftLegColorID + "," + GlobalVars.RightLegColorID + ",'" + GlobalVars.Custom_TShirt + "','" + GlobalVars.Custom_Shirt + "','" + GlobalVars.Custom_Pants + "','" + GlobalVars.FaceID + "','" + GlobalVars.HeadID + "','" + GlobalVars.Custom_IconType + "'," + GlobalVars.AdminMode.ToString().ToLower() + ")" + quote;
} if (GlobalVars.UsesPlayerName == true && GlobalVars.UsesID == true)
else if (GlobalVars.UsesPlayerName == true && GlobalVars.UsesID == false) {
{ arguments = "dofile(\"" + GlobalVars.DefaultScript + "\") _G.SetRBXLegacyVersion(" + GlobalVars.SelectedClientVersion + ") _G.CSConnect(" + GlobalVars.UserID + ", " + GlobalVars.IP + ", " + GlobalVars.RobloxPort + ", \"" + GlobalVars.PlayerName + "\", \"" + GlobalVars.Custom_Hat1ID_Offline + "\", \"" + GlobalVars.Custom_Hat2ID_Offline + "\", \"" + GlobalVars.Custom_Hat3ID_Offline + "\", \"" + GlobalVars.HeadColorID + ", " + GlobalVars.TorsoColorID + "," + GlobalVars.LeftArmColorID + "," + GlobalVars.RightArmColorID + "," + GlobalVars.LeftLegColorID + "," + GlobalVars.RightLegColorID + ",\"" + GlobalVars.Custom_TShirt + "\", \"" + GlobalVars.Custom_Shirt + "\", \"" + GlobalVars.Custom_Pants + "\", \"" + GlobalVars.FaceID + "\", \"" + GlobalVars.HeadID + "\", \"" + GlobalVars.Custom_IconType + "\", " + GlobalVars.AdminMode.ToString().ToLower() + "\")";
args = "-script " + quote + "dofile('" + GlobalVars.DefaultScript + "'); _G.SetRBXLegacyVersion(" + GlobalVars.SelectedClientVersion + ") _G.CSConnect(0,'localhost'," + GlobalVars.RobloxPort + ",'" + GlobalVars.PlayerName + "','" + HatIDOffline1 + "','" + HatIDOffline2 + "','" + HatIDOffline3 + "'," + GlobalVars.HeadColorID + "," + GlobalVars.TorsoColorID + "," + GlobalVars.LeftArmColorID + "," + GlobalVars.RightArmColorID + "," + GlobalVars.LeftLegColorID + "," + GlobalVars.RightLegColorID + ",'" + GlobalVars.Custom_TShirt + "','" + GlobalVars.Custom_Shirt + "','" + GlobalVars.Custom_Pants + "','" + GlobalVars.FaceID + "','" + GlobalVars.HeadID + "','" + GlobalVars.Custom_IconType + "'," + GlobalVars.AdminMode.ToString().ToLower() + ")" + quote; }
} else if (GlobalVars.UsesPlayerName == false && GlobalVars.UsesID == true)
else if (GlobalVars.UsesPlayerName == false && GlobalVars.UsesID == false) {
{ arguments = "dofile(\"" + GlobalVars.DefaultScript + "\") _G.SetRBXLegacyVersion(" + GlobalVars.SelectedClientVersion + ") _G.CSConnect(" + GlobalVars.UserID + "," + GlobalVars.IP + "," + GlobalVars.RobloxPort + ",\"Player\",\"" + GlobalVars.Custom_Hat1ID_Offline + "\", \"" + GlobalVars.Custom_Hat2ID_Offline + "\", \"" + GlobalVars.Custom_Hat3ID_Offline + "\"," + GlobalVars.HeadColorID + "," + GlobalVars.TorsoColorID + "," + GlobalVars.LeftArmColorID + "," + GlobalVars.RightArmColorID + "," + GlobalVars.LeftLegColorID + "," + GlobalVars.RightLegColorID + ",\"" + GlobalVars.Custom_TShirt + "\", \"" + GlobalVars.Custom_Shirt + "\", \"" + GlobalVars.Custom_Pants + "\", \"" + GlobalVars.FaceID + "\", \"" + GlobalVars.HeadID + "\", \"" + GlobalVars.Custom_IconType + "\"," + GlobalVars.AdminMode.ToString().ToLower() + "\")";
args = "-script " + quote + "dofile('" + GlobalVars.DefaultScript + "'); _G.SetRBXLegacyVersion(" + GlobalVars.SelectedClientVersion + ") _G.CSConnect(0,'localhost'," + GlobalVars.RobloxPort + ",'Player','" + HatIDOffline1 + "','" + HatIDOffline2 + "','" + HatIDOffline3 + "'," + GlobalVars.HeadColorID + "," + GlobalVars.TorsoColorID + "," + GlobalVars.LeftArmColorID + "," + GlobalVars.RightArmColorID + "," + GlobalVars.LeftLegColorID + "," + GlobalVars.RightLegColorID + ",'" + GlobalVars.Custom_TShirt + "','" + GlobalVars.Custom_Shirt + "','" + GlobalVars.Custom_Pants + "','" + GlobalVars.FaceID + "','" + GlobalVars.HeadID + "','" + GlobalVars.Custom_IconType + "'," + GlobalVars.AdminMode.ToString().ToLower() + ")" + quote; }
} else if (GlobalVars.UsesPlayerName == true && GlobalVars.UsesID == false)
} {
else arguments = "dofile(\"" + GlobalVars.DefaultScript + "\") _G.SetRBXLegacyVersion(" + GlobalVars.SelectedClientVersion + ") _G.CSConnect(0," + GlobalVars.IP + "," + GlobalVars.RobloxPort + ",\"" + GlobalVars.PlayerName + "\", \"" + GlobalVars.Custom_Hat1ID_Offline + "\", \"" + GlobalVars.Custom_Hat2ID_Offline + "\", \"" + GlobalVars.Custom_Hat3ID_Offline + "\"," + GlobalVars.HeadColorID + "," + GlobalVars.TorsoColorID + "," + GlobalVars.LeftArmColorID + "," + GlobalVars.RightArmColorID + "," + GlobalVars.LeftLegColorID + "," + GlobalVars.RightLegColorID + ",\"" + GlobalVars.Custom_TShirt + "\", \"" + GlobalVars.Custom_Shirt + "\", \"" + GlobalVars.Custom_Pants + "\", \"" + GlobalVars.FaceID + "\", \"" + GlobalVars.HeadID + "\", \"" + GlobalVars.Custom_IconType + "\"," + GlobalVars.AdminMode.ToString().ToLower() + "\")";
{ }
if (GlobalVars.UsesPlayerName == true && GlobalVars.UsesID == true) else if (GlobalVars.UsesPlayerName == false && GlobalVars.UsesID == false)
{ {
args = "-script " + quote + "dofile('" + GlobalVars.DefaultScript + "') _G.SetRBXLegacyVersion(" + GlobalVars.SelectedClientVersion + "); _G.CSConnect(" + GlobalVars.UserID + "," + GlobalVars.IP + "," + GlobalVars.RobloxPort + ",'" + GlobalVars.PlayerName + "','" + HatIDOffline1 + "','" + HatIDOffline2 + "','" + HatIDOffline3 + "'," + GlobalVars.HeadColorID + "," + GlobalVars.TorsoColorID + "," + GlobalVars.LeftArmColorID + "," + GlobalVars.RightArmColorID + "," + GlobalVars.LeftLegColorID + "," + GlobalVars.RightLegColorID + ",'" + GlobalVars.Custom_TShirt + "','" + GlobalVars.Custom_Shirt + "','" + GlobalVars.Custom_Pants + "','" + GlobalVars.FaceID + "','" + GlobalVars.HeadID + "','" + GlobalVars.Custom_IconType + "'," + GlobalVars.AdminMode.ToString().ToLower() + ")" + quote; arguments = "dofile(\"" + GlobalVars.DefaultScript + "\") _G.SetRBXLegacyVersion(" + GlobalVars.SelectedClientVersion + ") _G.CSConnect(0," + GlobalVars.IP + "," + GlobalVars.RobloxPort + ",\"Player\",\"" + GlobalVars.Custom_Hat1ID_Offline + "\", \"" + GlobalVars.Custom_Hat2ID_Offline + "\", \"" + GlobalVars.Custom_Hat3ID_Offline + "\"," + GlobalVars.HeadColorID + "," + GlobalVars.TorsoColorID + "," + GlobalVars.LeftArmColorID + "," + GlobalVars.RightArmColorID + "," + GlobalVars.LeftLegColorID + "," + GlobalVars.RightLegColorID + ",\"" + GlobalVars.Custom_TShirt + "\", \"" + GlobalVars.Custom_Shirt + "\", \"" + GlobalVars.Custom_Pants + "\", \"" + GlobalVars.FaceID + "\", \"" + GlobalVars.HeadID + "\", \"" + GlobalVars.Custom_IconType + "\"," + GlobalVars.AdminMode.ToString().ToLower() + "\")";
} }
else if (GlobalVars.UsesPlayerName == false && GlobalVars.UsesID == true)
{ if (GlobalVars.HasRocky == true)
args = "-script " + quote + "dofile('" + GlobalVars.DefaultScript + "') _G.SetRBXLegacyVersion(" + GlobalVars.SelectedClientVersion + "); _G.CSConnect(" + GlobalVars.UserID + "," + GlobalVars.IP + "," + GlobalVars.RobloxPort + ",'Player','" + HatIDOffline1 + "','" + HatIDOffline2 + "','" + HatIDOffline3 + "'," + GlobalVars.HeadColorID + "," + GlobalVars.TorsoColorID + "," + GlobalVars.LeftArmColorID + "," + GlobalVars.RightArmColorID + "," + GlobalVars.LeftLegColorID + "," + GlobalVars.RightLegColorID + ",'" + GlobalVars.Custom_TShirt + "','" + GlobalVars.Custom_Shirt + "','" + GlobalVars.Custom_Pants + "','" + GlobalVars.FaceID + "','" + GlobalVars.HeadID + "','" + GlobalVars.Custom_IconType + "'," + GlobalVars.AdminMode.ToString().ToLower() + ")" + quote; {
} arguments = arguments.Replace(GlobalVars.IP, "localhost");
else if (GlobalVars.UsesPlayerName == true && GlobalVars.UsesID == false) }
{ // Write the arguments to a file (Fixes 2007)
args = "-script " + quote + "dofile('" + GlobalVars.DefaultScript + "') _G.SetRBXLegacyVersion(" + GlobalVars.SelectedClientVersion + "); _G.CSConnect(0," + GlobalVars.IP + "," + GlobalVars.RobloxPort + ",'" + GlobalVars.PlayerName + "','" + HatIDOffline1 + "','" + HatIDOffline2 + "','" + HatIDOffline3 + "'," + GlobalVars.HeadColorID + "," + GlobalVars.TorsoColorID + "," + GlobalVars.LeftArmColorID + "," + GlobalVars.RightArmColorID + "," + GlobalVars.LeftLegColorID + "," + GlobalVars.RightLegColorID + ",'" + GlobalVars.Custom_TShirt + "','" + GlobalVars.Custom_Shirt + "','" + GlobalVars.Custom_Pants + "','" + GlobalVars.FaceID + "','" + GlobalVars.HeadID + "','" + GlobalVars.Custom_IconType + "'," + GlobalVars.AdminMode.ToString().ToLower() + ")" + quote; string path = Assembly.GetExecutingAssembly().Location;
} string argumentName = "arguments" + DateTime.Now + ".lua";
else if (GlobalVars.UsesPlayerName == false && GlobalVars.UsesID == false) argumentName = argumentName.Replace(":", "-");
{ argumentName = argumentName.Replace("/", ".");
args = "-script " + quote + "dofile('" + GlobalVars.DefaultScript + "') _G.SetRBXLegacyVersion(" + GlobalVars.SelectedClientVersion + "); _G.CSConnect(0," + GlobalVars.IP + "," + GlobalVars.RobloxPort + ",'Player','" + HatIDOffline1 + "','" + HatIDOffline2 + "','" + HatIDOffline3 + "'," + GlobalVars.HeadColorID + "," + GlobalVars.TorsoColorID + "," + GlobalVars.LeftArmColorID + "," + GlobalVars.RightArmColorID + "," + GlobalVars.LeftLegColorID + "," + GlobalVars.RightLegColorID + ",'" + GlobalVars.Custom_TShirt + "','" + GlobalVars.Custom_Shirt + "','" + GlobalVars.Custom_Pants + "','" + GlobalVars.FaceID + "','" + GlobalVars.HeadID + "','" + GlobalVars.Custom_IconType + "'," + GlobalVars.AdminMode.ToString().ToLower() + ")" + quote; argumentName = argumentName.Replace(" ", "");
} string argumentPath = Path.Combine(path, @"..\data\" + argumentName);
} if (!File.Exists(argumentPath))
try {
{ File.Create(argumentPath).Dispose();
ConsolePrint("Client Loaded.", 4); }
if (SecurityFuncs.checkClientMD5(GlobalVars.SelectedClient) == true) File.WriteAllText(argumentPath, arguments);
{ if (GlobalVars.SelectedClientVersion >= 2)
Process client = new Process(); {
client.StartInfo.FileName = rbxexe; launchArgs = "-script \"data\\" + argumentName + "\"";
client.StartInfo.Arguments = args; }
client.EnableRaisingEvents = true; else
ReadClientValues(GlobalVars.SelectedClient); {
client.Exited += new EventHandler(ClientExited); launchArgs = "-script dofile(\"rbxasset://..//..//..//data\\" + argumentName + "\")";
client.Start(); }
GlobalVars.presence.largeImageKey = GlobalVars.imagekey_large; ConsolePrint("Client loaded.", 4);
GlobalVars.presence.state = "In " + GlobalVars.SelectedClient + " Game"; try
GlobalVars.presence.largeImageText = GlobalVars.PlayerName; {
DiscordRpc.UpdatePresence(ref GlobalVars.presence); Process client = new Process();
} client.StartInfo.FileName = clientPath;
} client.StartInfo.Arguments = launchArgs;
catch (Exception) client.EnableRaisingEvents = true;
{ ReadClientValues(GlobalVars.SelectedClient);
ConsolePrint("ERROR 2 - Failed to launch RBXLegacy. (The client has been detected as modified.)", 2); client.Exited += new EventHandler(ClientExited);
DialogResult result2 = MessageBox.Show("Failed to launch RBXLegacy. (Error: The client has been detected as modified.)","RBXLegacy Launcher - Error", MessageBoxButtons.OK, MessageBoxIcon.Error); client.Start();
} GlobalVars.presence.largeImageKey = GlobalVars.imagekey_large;
} GlobalVars.presence.state = "In Game";
else GlobalVars.presence.details = GlobalVars.SelectedClient;
{ GlobalVars.presence.largeImageText = GlobalVars.PlayerName;
ConsolePrint("ERROR 2 - Failed to launch RBXLegacy. (The script has been detected as modified.)", 2); DiscordRpc.UpdatePresence(ref GlobalVars.presence);
DialogResult result2 = MessageBox.Show("Failed to launch RBXLegacy. (Error: The script has been detected as modified.)","RBXLegacy Launcher - Error", MessageBoxButtons.OK, MessageBoxIcon.Error); }
} catch (Exception e)
} {
ConsolePrint("ERROR 2 - Failed to launch RBXLegacy. (" + e.ToString() + ")", 2);
void ClientExited(object sender, EventArgs e) DialogResult result2 = MessageBox.Show("Failed to launch RBXLegacy. (" + e.ToString() + ")", "RBXLegacy Launcher - Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
void ClientExited(object sender, EventArgs e)
{ {
Process[] sudp = Process.GetProcessesByName("udppipe"); Process[] sudp = Process.GetProcessesByName("udppipe");
if (sudp != null) if (sudp != null)
@ -1035,7 +1039,7 @@ namespace RBXLegacyLauncher
sudp.StartInfo.CreateNoWindow = true; sudp.StartInfo.CreateNoWindow = true;
sudp.Start(); sudp.Start();
} }
StartClient(); startGame();
} }
else if (command.Equals("solo")) else if (command.Equals("solo"))
{ {

View File

@ -1,11 +1,10 @@
<img src="https://cdn.discordapp.com/attachments/327072930066333697/349348817423958017/rbxlegacylogo2.png" alt="RBXLegacy"/><br>
![Logo](https://cdn.discordapp.com/attachments/327072930066333697/349348817423958017/rbxlegacylogo2.png) RBXLegacy - version 2.0
## Overview ## Overview
RBXLegacy is a launcher and website for ROBLOX's clients from 2006 - 2013, designed so you can play offline, online and through LAN. RBXLegacy is a launcher and website for ROBLOX's clients from 2007 - 2012, designed so you can play online and through a Local Area Network.
This is the source code for RBXLegacy's launcher, installer, server, and Discord bot. All of these source files (except for the Discord bot) are under the license specified in [LICENSE.MD](https://github.com/Bitl/RBXLegacy-src/blob/master/LICENSE.MD). This is the source code for RBXLegacy's launcher, dedicated server, and site.
## Installing ## Installing
@ -23,7 +22,7 @@ And of course, we welcome everyone with new ideas. [You can post your idea in is
## Licence ## Licence
RBXLegacy is licenced under the GPL, but some components of it may use different licences. RBXLegacy is licenced under the [GPL](https://github.com/Bitl/RBXLegacy-src/blob/master/LICENSE.MD), but some components of it may use different licences.
Open.NAT is licened under the MIT Licence. Please look in the Open.NAT folder for more information. Open.NAT is licened under the MIT Licence. Please look in the Open.NAT folder for more information.