diff --git a/AddonLoader.lua b/AddonLoader.lua new file mode 100644 index 0000000..839c9a3 --- /dev/null +++ b/AddonLoader.lua @@ -0,0 +1,73 @@ +-- put script names here + +Addons = {"ClientNamePrinter", "ShadersCompatibility"} + +-- DONT EDIT ANYTHING ELSE BELOW + +Scripts = {} + +function AddScript(name) + table.insert(Scripts, name) +end + +for i,v in pairs(Addons) do + local fullname = "rbxasset://..//..//..//addons//".. v ..".lua" + AddScript(fullname) +end + +Modules = {} + +for i,v in pairs(Scripts) do + dofile(v) + _G.CSScript_AddModule(Modules) +end + +function PreInit(Script, Client) + for i,v in pairs(Modules) do + pcall(function() v:PreInit(Script, Client) end) + end +end + +function PostInit() + for i,v in pairs(Modules) do + pcall(function() v:PostInit() end) + end +end + +function OnLoadCharacter(Player, Appearance) + for i,v in pairs(Modules) do + pcall(function() v:OnLoadCharacter(Player, Appearance) end) + end +end + +function OnPlayerAdded(Player) + for i,v in pairs(Modules) do + pcall(function() v:OnPlayerAdded(Player) end) + end +end + +function OnPlayerRemoved(Player) + for i,v in pairs(Modules) do + pcall(function() v:OnPlayerRemoved(Player) end) + end +end + +function OnPlayerKicked(Player, Reason) + for i,v in pairs(Modules) do + pcall(function() v:OnPlayerKicked(Player, Reason) end) + end +end + +function OnPrePlayerKicked(Player, Reason) + for i,v in pairs(Modules) do + pcall(function() v:OnPrePlayerKicked(Player, Reason) end) + end +end + +_G.CSScript_PreInit=PreInit +_G.CSScript_PostInit=PostInit +_G.CSScript_OnLoadCharacter=OnLoadCharacter +_G.CSScript_OnPlayerAdded=OnPlayerAdded +_G.CSScript_OnPlayerRemoved=OnPlayerRemoved +_G.CSScript_OnPlayerKicked=OnPlayerKicked +_G.CSScript_OnPrePlayerKicked=OnPrePlayerKicked \ No newline at end of file diff --git a/Addon_Template.lua b/Addon_Template.lua index 499defc..7273c7b 100644 --- a/Addon_Template.lua +++ b/Addon_Template.lua @@ -1,37 +1,45 @@ +local this = {} + -- executes before the game starts (server, solo, studio) --- arguments: Script Type - returns the script type name (Server, Solo, Studio) -function PreInit(Script) +-- arguments: Script - returns the script type name (Server, Solo, Studio), Client - returns the Client name. +function this:PreInit(Script, Client) end -- executes after the game starts (server, solo, studio) -- arguments: none -function PostInit() +function this:PostInit() end -- executes after a character loads (server, solo, studio) -- arguments: Player - Player getting a character loaded, Appearance - The object containing the appearance values -- notes: in play solo, you may have to respawn once to see any print outputs. -function OnLoadCharacter(Player, Appearance) +function this:OnLoadCharacter(Player, Appearance) end -- executes after a player joins (server) -- arguments: Player - the Player joining -function OnPlayerAdded(Player) +function this:OnPlayerAdded(Player) end -- executes after a player leaves (server) -- arguments: Player - the Player leaving -function OnPlayerRemoved(Player) +function this:OnPlayerRemoved(Player) +end + +-- executes after a player gets kicked (server) +-- arguments: Player - the Player getting kicked, Reason - the reason the player got kicked +function this:OnPlayerKicked(Player, Reason) end -- executes before a player gets kicked (server) -- arguments: Player - the Player getting kicked, Reason - the reason the player got kicked -function OnPlayerKicked(Player, Reason) +function this:OnPrePlayerKicked(Player, Reason) end -_G.CSScript_PreInit=PreInit -_G.CSScript_PostInit=PostInit -_G.CSScript_OnLoadCharacter=OnLoadCharacter -_G.CSScript_OnPlayerAdded=OnPlayerAdded -_G.CSScript_OnPlayerRemoved=OnPlayerRemoved -_G.CSScript_OnPlayerKicked=OnPlayerKicked \ No newline at end of file +-- DO NOT MODIFY THIS. this is required to load this addon into the game. + +function AddModule(t) + table.insert(t, this) +end + +_G.CSScript_AddModule=AddModule \ No newline at end of file diff --git a/ClientNamePrinter.lua b/ClientNamePrinter.lua new file mode 100644 index 0000000..da7dd60 --- /dev/null +++ b/ClientNamePrinter.lua @@ -0,0 +1,19 @@ +--adds a StringValue that lists the client's version. + +local this = {} + +function this:Name() + return "Client Name Printer" +end + +function this:PreInit(Script, Client) + local ver = Instance.new("StringValue",game.Lighting) + ver.Name = "Version" + ver.Value = Client +end + +function AddModule(t) + table.insert(t, this) +end + +_G.CSScript_AddModule=AddModule \ No newline at end of file diff --git a/ShadersCompatibility.lua b/ShadersCompatibility.lua new file mode 100644 index 0000000..ec37422 --- /dev/null +++ b/ShadersCompatibility.lua @@ -0,0 +1,65 @@ +-- allows 2007M, 2006S, and 2007E users to join Shaders servers, and vice versa + +local this = {} +local ClientName = "N/A" + +function this:Name() + return "Shaders MP Compatibility" +end + +-- executes before the game starts (server, solo, studio) +-- arguments: Script - returns the script type name (Server, Solo, Studio), Client - returns the Client name. +function this:PreInit(Script, Client) + ClientName = Client +end + +function IsShaderSupportingClient() + -- hate this so much + if (ClientName == "2007E" or ClientName == "2007M" or ClientName == "2006S" or ClientName == "2007E-Shaders" or ClientName == "2007M-Shaders" or ClientName == "2006S-Shaders") then + return true + end +end + +-- executes before a player gets kicked (server) +-- arguments: Player - the Player getting kicked, Reason - the reason the player got kicked +function this:OnPrePlayerKicked(Player, Reason) + if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then + do return end + end + + if (IsShaderSupportingClient()) then + validLauncher = false + + for _,newVal in pairs(Player.Security:GetChildren()) do + if (newVal.Name == "LauncherMD5") then + if (newVal.Value == game.Lighting.Security.LauncherMD5.Value or newVal.Value == "") then + validLauncher = true + end + end + end + + if (validLauncher == true) then + print(Player.Name .. " is using a valid modified client!") + local ver = Instance.new("StringValue",game.Lighting) + ver.Name = "SkipSecurity" + ver.Value = "temp" + end + end +end + +-- executes after a character loads (server, solo, studio) +-- arguments: Player - Player getting a character loaded, Appearance - The object containing the appearance values +-- notes: in play solo, you may have to respawn once to see any print outputs. +function this:OnLoadCharacter(Player, Appearance) + if (game.Lighting.SkipSecurity.Value == "temp" then + game.Lighting.SkipSecurity:remove() + end +end + +-- DO NOT MODIFY THIS. this is required to load this addon into the game. + +function AddModule(t) + table.insert(t, this) +end + +_G.CSScript_AddModule=AddModule \ No newline at end of file diff --git a/changelog.txt b/changelog.txt index 6937979..6edad8c 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,7 +1,14 @@ 1.3 Snapshot v22.8222.20490.2 Enhancements: +- Added support for multiple addon scripts! + - Thanks to BRAVONATCHO for the idea! +- Added OnPrePlayerKicked to the scripting API. +- You can now join games with Shaders clients! +---------------------------------------------------------------------------- +1.3 Snapshot v22.8222.20490.2 +Enhancements: - Added a Novetus Scripting API! - - Look in the Addon_Template.lua file for more info! + - Look in the addons/Addon_Template.lua file for more info! ---------------------------------------------------------------------------- 1.3 Snapshot v22.8222.20490.1 Enhancements: diff --git a/scripts/batch/github_sync.bat b/scripts/batch/github_sync.bat index 25b069d..e67d9bf 100644 --- a/scripts/batch/github_sync.bat +++ b/scripts/batch/github_sync.bat @@ -141,5 +141,8 @@ XCOPY "%cd%\Novetus\LICENSE.txt" "%dest%\LICENSE" /y XCOPY "%cd%\Novetus\LICENSE-QUERY-PHP.txt" "%dest%\LICENSE-QUERY-PHP" /y XCOPY "%cd%\Novetus\LICENSE-RESHADE.txt" "%dest%\LICENSE-RESHADE" /y XCOPY "%cd%\Novetus\README-AND-CREDITS.TXT" "%dest%" /y -XCOPY "%cd%\Novetus\Addon_Template.lua" "%dest%" /y +XCOPY "%cd%\Novetus\addons\Addon_Template.lua" "%dest%" /y +XCOPY "%cd%\Novetus\addons\ClientNamePrinter.lua" "%dest%" /y +XCOPY "%cd%\Novetus\addons\ShadersCompatibility.lua" "%dest%" /y +XCOPY "%cd%\Novetus\addons\core\AddonLoader.lua" "%dest%" /y if %debug%==1 pause \ No newline at end of file diff --git a/scripts/game/2006S-Shaders/CSMPFunctions.lua b/scripts/game/2006S-Shaders/CSMPFunctions.lua index 13ee89c..5c2861c 100644 --- a/scripts/game/2006S-Shaders/CSMPFunctions.lua +++ b/scripts/game/2006S-Shaders/CSMPFunctions.lua @@ -12,6 +12,8 @@ function newWaitForChild(newParent,name) end function KickPlayer(Player,reason) + pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end) + if (game.Lighting:findFirstChild("SkipSecurity") ~= nil) then do return end end @@ -232,8 +234,8 @@ end print("ROBLOX Client version '0.3.368.0' loaded.") function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Server") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Server", "2006S-Shaders") end) Server = game:service("NetworkServer") RunService = game:service("RunService") PlayerService = game:service("Players") @@ -403,8 +405,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He end function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Solo") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Solo", "2006S-Shaders") end) game:service("RunService"):run() local plr = game.Players:createLocalPlayer(UserID) game.Workspace:insertContent("rbxasset://Fonts//libraries.rbxm") @@ -434,8 +436,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID, end function CSStudio() - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Studio") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Studio", "2006S-Shaders") end) pcall(function() _G.CSScript_PostInit() end) end diff --git a/scripts/game/2006S/CSMPFunctions.lua b/scripts/game/2006S/CSMPFunctions.lua index c5c416f..f25b896 100644 --- a/scripts/game/2006S/CSMPFunctions.lua +++ b/scripts/game/2006S/CSMPFunctions.lua @@ -12,6 +12,8 @@ function newWaitForChild(newParent,name) end function KickPlayer(Player,reason) + pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end) + if (game.Lighting:findFirstChild("SkipSecurity") ~= nil) then do return end end @@ -232,8 +234,8 @@ end print("ROBLOX Client version '0.3.368.0' loaded.") function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Server") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Server", "2006S") end) Server = game:service("NetworkServer") RunService = game:service("RunService") PlayerService = game:service("Players") @@ -403,8 +405,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He end function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Solo") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Solo", "2006S") end) game:service("RunService"):run() local plr = game.Players:createLocalPlayer(UserID) game.Workspace:insertContent("rbxasset://Fonts//libraries.rbxm") @@ -434,8 +436,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID, end function CSStudio() - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Studio") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Studio", "2006S") end) pcall(function() _G.CSScript_PostInit() end) end diff --git a/scripts/game/2007E-Shaders/CSMPFunctions.lua b/scripts/game/2007E-Shaders/CSMPFunctions.lua index 27a0f55..d670378 100644 --- a/scripts/game/2007E-Shaders/CSMPFunctions.lua +++ b/scripts/game/2007E-Shaders/CSMPFunctions.lua @@ -12,6 +12,8 @@ function newWaitForChild(newParent,name) end function KickPlayer(Player,reason) + pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end) + if (game.Lighting:findFirstChild("SkipSecurity") ~= nil) then do return end end @@ -294,8 +296,8 @@ end print("ROBLOX Client version '0.3.368.0' loaded.") function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Server") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Server", "2007E-Shaders") end) Server = game:service("NetworkServer") RunService = game:service("RunService") PlayerService = game:service("Players") @@ -461,8 +463,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He end function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Solo") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Solo", "2007E-Shaders") end) game:service("RunService"):run() local plr = game.Players:createLocalPlayer(UserID) game.Workspace:insertContent("rbxasset://Fonts//libraries.rbxm") @@ -492,8 +494,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID, end function CSStudio() - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Studio") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Studio", "2007E-Shaders") end) pcall(function() _G.CSScript_PostInit() end) end diff --git a/scripts/game/2007E/CSMPFunctions.lua b/scripts/game/2007E/CSMPFunctions.lua index 27a0f55..d6af650 100644 --- a/scripts/game/2007E/CSMPFunctions.lua +++ b/scripts/game/2007E/CSMPFunctions.lua @@ -12,6 +12,8 @@ function newWaitForChild(newParent,name) end function KickPlayer(Player,reason) + pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end) + if (game.Lighting:findFirstChild("SkipSecurity") ~= nil) then do return end end @@ -294,8 +296,8 @@ end print("ROBLOX Client version '0.3.368.0' loaded.") function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Server") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Server", "2007E") end) Server = game:service("NetworkServer") RunService = game:service("RunService") PlayerService = game:service("Players") @@ -461,8 +463,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He end function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Solo") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Solo", "2007E") end) game:service("RunService"):run() local plr = game.Players:createLocalPlayer(UserID) game.Workspace:insertContent("rbxasset://Fonts//libraries.rbxm") @@ -492,8 +494,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID, end function CSStudio() - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Studio") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Studio", "2007E") end) pcall(function() _G.CSScript_PostInit() end) end diff --git a/scripts/game/2007M-Shaders/CSMPFunctions.lua b/scripts/game/2007M-Shaders/CSMPFunctions.lua index 3fb0084..ba5d90b 100644 --- a/scripts/game/2007M-Shaders/CSMPFunctions.lua +++ b/scripts/game/2007M-Shaders/CSMPFunctions.lua @@ -12,6 +12,8 @@ function newWaitForChild(newParent,name) end function KickPlayer(Player,reason) + pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end) + if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then do return end end @@ -354,8 +356,8 @@ end print("ROBLOX Client version '0.3.512.0' loaded.") function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Server") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Server", "2007M-Shaders") end) Server = game:GetService("NetworkServer") RunService = game:GetService("RunService") PlayerService = game:GetService("Players") @@ -520,8 +522,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He end function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Solo") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Solo", "2007M-Shaders") end) game:GetService("RunService"):run() local plr = game.Players:CreateLocalPlayer(UserID) game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm") @@ -550,8 +552,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID, end function CSStudio() - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Studio") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Studio", "2007M-Shaders") end) pcall(function() _G.CSScript_PostInit() end) end diff --git a/scripts/game/2007M/CSMPFunctions.lua b/scripts/game/2007M/CSMPFunctions.lua index ba1e489..090d377 100644 --- a/scripts/game/2007M/CSMPFunctions.lua +++ b/scripts/game/2007M/CSMPFunctions.lua @@ -12,6 +12,8 @@ function newWaitForChild(newParent,name) end function KickPlayer(Player,reason) + pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end) + if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then do return end end @@ -354,8 +356,8 @@ end print("ROBLOX Client version '0.3.512.0' loaded.") function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Server") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Server", "2007M") end) Server = game:GetService("NetworkServer") RunService = game:GetService("RunService") PlayerService = game:GetService("Players") @@ -520,8 +522,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He end function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Solo") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Solo", "2007M") end) game:GetService("RunService"):run() local plr = game.Players:CreateLocalPlayer(UserID) game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm") @@ -550,8 +552,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID, end function CSStudio() - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Studio") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Studio", "2007M") end) pcall(function() _G.CSScript_PostInit() end) end diff --git a/scripts/game/2008M/CSMPFunctions.lua b/scripts/game/2008M/CSMPFunctions.lua index 18aadc3..12dca18 100644 --- a/scripts/game/2008M/CSMPFunctions.lua +++ b/scripts/game/2008M/CSMPFunctions.lua @@ -12,6 +12,8 @@ function newWaitForChild(newParent,name) end function KickPlayer(Player,reason) + pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end) + if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then do return end end @@ -472,8 +474,8 @@ rbxversion = version() print("ROBLOX Client version '" .. rbxversion .. "' loaded.") function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Server") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Server", "2008M") end) Server = game:GetService("NetworkServer") RunService = game:GetService("RunService") Server:start(Port, 20) @@ -638,8 +640,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He end function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Solo") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Solo", "2008M") end) game:GetService("RunService"):run() local plr = game.Players:CreateLocalPlayer(UserID) game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm") @@ -669,8 +671,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID, end function CSStudio() - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Studio") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Studio", "2008M") end) pcall(function() _G.CSScript_PostInit() end) end diff --git a/scripts/game/2009E-HD/CSMPFunctions.lua b/scripts/game/2009E-HD/CSMPFunctions.lua index 5114ac2..8b46a1e 100644 --- a/scripts/game/2009E-HD/CSMPFunctions.lua +++ b/scripts/game/2009E-HD/CSMPFunctions.lua @@ -12,6 +12,8 @@ function newWaitForChild(newParent,name) end function KickPlayer(Player,reason) + pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end) + if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then do return end end @@ -553,8 +555,8 @@ rbxversion = version() print("ROBLOX Client version '" .. rbxversion .. "' loaded.") function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Server") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Server", "2009E-HD") end) Server = game:GetService("NetworkServer") RunService = game:GetService("RunService") Server:start(Port, 20) @@ -732,8 +734,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He end function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Solo") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Solo", "2009E-HD") end) game:GetService("RunService"):run() local plr = game.Players:CreateLocalPlayer(UserID) game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm") @@ -763,8 +765,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID, end function CSStudio() - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Studio") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Studio", "2009E-HD") end) pcall(function() _G.CSScript_PostInit() end) end diff --git a/scripts/game/2009E/CSMPFunctions.lua b/scripts/game/2009E/CSMPFunctions.lua index 5114ac2..ddeecf9 100644 --- a/scripts/game/2009E/CSMPFunctions.lua +++ b/scripts/game/2009E/CSMPFunctions.lua @@ -12,6 +12,8 @@ function newWaitForChild(newParent,name) end function KickPlayer(Player,reason) + pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end) + if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then do return end end @@ -553,8 +555,8 @@ rbxversion = version() print("ROBLOX Client version '" .. rbxversion .. "' loaded.") function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Server") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Server", "2009E") end) Server = game:GetService("NetworkServer") RunService = game:GetService("RunService") Server:start(Port, 20) @@ -732,8 +734,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He end function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Solo") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Solo", "2009E") end) game:GetService("RunService"):run() local plr = game.Players:CreateLocalPlayer(UserID) game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm") @@ -763,8 +765,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID, end function CSStudio() - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Studio") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Studio", "2009E") end) pcall(function() _G.CSScript_PostInit() end) end diff --git a/scripts/game/2010L/CSMPFunctions.lua b/scripts/game/2010L/CSMPFunctions.lua index 7acc624..3ce02bc 100644 --- a/scripts/game/2010L/CSMPFunctions.lua +++ b/scripts/game/2010L/CSMPFunctions.lua @@ -13,6 +13,8 @@ function newWaitForChild(newParent,name) end function KickPlayer(Player,reason) + pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end) + if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then do return end end @@ -558,8 +560,8 @@ rbxversion = version() print("ROBLOX Client version '" .. rbxversion .. "' loaded.") function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Server") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Server", "2010L") end) 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") @@ -754,8 +756,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He end function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Solo") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Solo", "2010L") end) game:GetService("RunService"):Run() local plr = game.Players:CreateLocalPlayer(UserID) plr.Name = PlayerName @@ -788,8 +790,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID, end function CSStudio() - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Studio") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Studio", "2010L") end) pcall(function() _G.CSScript_PostInit() end) end diff --git a/scripts/game/2011E/CSMPFunctions.lua b/scripts/game/2011E/CSMPFunctions.lua index 21d53dc..0f5d090 100644 --- a/scripts/game/2011E/CSMPFunctions.lua +++ b/scripts/game/2011E/CSMPFunctions.lua @@ -17,6 +17,8 @@ function newWaitForChild(newParent,name) end function KickPlayer(Player,reason) + pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end) + if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then do return end end @@ -582,8 +584,8 @@ rbxversion = version() print("ROBLOX Client version '" .. rbxversion .. "' loaded.") function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications,ValidatedScripts) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Server") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Server", "2011E") end) 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") @@ -787,8 +789,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He end function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Solo") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Solo", "2011E") end) game:GetService("RunService"):Run() local plr = game.Players:CreateLocalPlayer(UserID) plr.Name = PlayerName @@ -828,8 +830,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID, end function CSStudio() - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Studio") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Studio", "2011E") end) pcall(function() _G.CSScript_PostInit() end) end diff --git a/scripts/game/2011M/CSMPFunctions.lua b/scripts/game/2011M/CSMPFunctions.lua index 2a9df7a..ae78b6a 100644 --- a/scripts/game/2011M/CSMPFunctions.lua +++ b/scripts/game/2011M/CSMPFunctions.lua @@ -15,6 +15,8 @@ function newWaitForChild(newParent,name) end function KickPlayer(Player,reason) + pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end) + if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then do return end end @@ -580,8 +582,8 @@ rbxversion = version() print("ROBLOX Client version '" .. rbxversion .. "' loaded.") function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications,ValidatedScripts,NewGUI) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Server") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Server", "2011M") end) pcall(function() id = -1 if NewGUI == true then @@ -791,8 +793,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He end function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID,NewGUI) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Solo") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Solo", "2011M") end) pcall(function() id = -1 if NewGUI == true then @@ -841,8 +843,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID, end function CSStudio(NewGUI) - pcall(function() dofile("rbxasset://scripts//Addon.lua") end) - pcall(function() _G.CSScript_PreInit("Studio") end) + pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end) + pcall(function() _G.CSScript_PreInit("Studio", "2011M") end) pcall(function() id = -1 if NewGUI == true then diff --git a/scripts/launcher/info.ini b/scripts/launcher/info.ini index 67e31a9..7f795da 100644 --- a/scripts/launcher/info.ini +++ b/scripts/launcher/info.ini @@ -8,6 +8,6 @@ ExtendedVersionNumber=True ExtendedVersionEditChangelog=True //ExtendedVersionTemplate=%version% v?.2022.%extended-revision%%lite% ExtendedVersionTemplate=%version% Snapshot v22.%build%.%revision%.%extended-revision% -ExtendedVersionRevision=2 +ExtendedVersionRevision=1 IsLite=False -InitialBootup=True +InitialBootup=False