Update repo

This commit is contained in:
Bitl 2024-03-19 11:43:05 -07:00
parent 01ae968b19
commit 3e8aec298b
19 changed files with 127 additions and 112 deletions

View File

@ -146,13 +146,13 @@ public partial class ItemCreationSDK : Form
type,
ItemName,
new string[] { Option1Path, Option2Path, Option1TextBox.Text, Option2TextBox.Text },
new Vector3(ConvertSafe.ToSingleSafe(XBox.Value), ConvertSafe.ToSingleSafe(YBox.Value), ConvertSafe.ToSingleSafe(ZBox.Value)),
new Vector3Legacy(ConvertSafe.ToDoubleSafe(XBox.Value), ConvertSafe.ToDoubleSafe(YBox.Value), ConvertSafe.ToDoubleSafe(ZBox.Value)),
new Vector3(ConvertSafe.ToSingleSafe(XBox360.Value), ConvertSafe.ToSingleSafe(YBox2.Value), ConvertSafe.ToSingleSafe(ZBox2.Value)),
new Vector3(ConvertSafe.ToSingleSafe(XBoxOne.Value), ConvertSafe.ToSingleSafe(YBox3.Value), ConvertSafe.ToSingleSafe(ZBox3.Value)),
new Vector3[] {
new Vector3(ConvertSafe.ToSingleSafe(rightXBox.Value), ConvertSafe.ToSingleSafe(rightYBox.Value), ConvertSafe.ToSingleSafe(rightZBox.Value)),
new Vector3(ConvertSafe.ToSingleSafe(upXBox.Value), ConvertSafe.ToSingleSafe(upYBox.Value), ConvertSafe.ToSingleSafe(upZBox.Value)),
new Vector3(ConvertSafe.ToSingleSafe(-forwardXBox.Value), ConvertSafe.ToSingleSafe(-forwardYBox.Value), ConvertSafe.ToSingleSafe(-forwardZBox.Value)) },
new Vector3(-ConvertSafe.ToSingleSafe(forwardXBox.Value), -ConvertSafe.ToSingleSafe(forwardYBox.Value), -ConvertSafe.ToSingleSafe(forwardZBox.Value)) },
ConvertSafe.ToDoubleSafe(transparencyBox.Value),
ConvertSafe.ToDoubleSafe(reflectivenessBox.Value),
new object[] { ConvertSafe.ToDoubleSafe(BevelBox.Value),
@ -513,12 +513,12 @@ public partial class ItemCreationSDK : Form
return "";
}
public static void SetItemCoordVals(XDocument doc, AssetCacheDef assetdef, Vector3 coord, string CoordClass, string CoordName)
public static void SetItemCoordVals(XDocument doc, AssetCacheDef assetdef, Vector3Legacy coord, string CoordClass, string CoordName)
{
SetItemCoordVals(doc, assetdef.Class, coord, CoordClass, CoordName);
}
public static void SetItemCoordVals(XDocument doc, string itemClassValue, Vector3 coord, string CoordClass, string CoordName)
public static void SetItemCoordVals(XDocument doc, string itemClassValue, Vector3Legacy coord, string CoordClass, string CoordName)
{
var v = from nodes in doc.Descendants("Item")
where nodes.Attribute("class").Value == itemClassValue
@ -535,6 +535,53 @@ public partial class ItemCreationSDK : Form
SetItemCoordXML(v, coord, CoordClass, CoordName);
}
//this is dumb
public static void SetItemCoordValsNoClassSearch(XDocument doc, Vector3Legacy coord, string CoordClass, string CoordName)
{
var v = from nodes in doc.Descendants("Item")
select nodes;
SetItemCoordXML(v, coord, CoordClass, CoordName);
}
//this is dumb
private static void SetItemCoordXML(IEnumerable<XElement> v, Vector3Legacy coord, string CoordClass, string CoordName)
{
foreach (var item in v)
{
var v2 = from nodes in item.Descendants(CoordClass)
where nodes.Attribute("name").Value == CoordName
select nodes;
foreach (var item2 in v2)
{
var v3 = from nodes in item2.Descendants("X")
select nodes;
foreach (var item3 in v3)
{
item3.Value = coord.X.ToString();
}
var v4 = from nodes in item2.Descendants("Y")
select nodes;
foreach (var item4 in v4)
{
item4.Value = coord.Y.ToString();
}
var v5 = from nodes in item2.Descendants("Z")
select nodes;
foreach (var item5 in v5)
{
item5.Value = coord.Z.ToString();
}
}
}
}
private static void SetItemCoordXML(IEnumerable<XElement> v, Vector3 coord, string CoordClass, string CoordName)
{
foreach (var item in v)
@ -1634,7 +1681,7 @@ public partial class ItemCreationSDK : Form
}
}
public bool CreateItem(string filepath, RobloxFileType type, string itemname, string[] assetfilenames, Vector3 coordoptions, Vector3 coordoptions2, Vector3 coordoptions3, Vector3[] rotationoptions, double transparency, double reflectiveness, object[] headoptions, string desctext = "")
public bool CreateItem(string filepath, RobloxFileType type, string itemname, string[] assetfilenames, Vector3Legacy coordoptions, Vector3 coordoptions2, Vector3 coordoptions3, Vector3[] rotationoptions, double transparency, double reflectiveness, object[] headoptions, string desctext = "")
{
string oldfile = File.ReadAllText(filepath);
string fixedfile = RobloxXML.RemoveInvalidXmlChars(RobloxXML.ReplaceHexadecimalSymbols(oldfile));
@ -1822,9 +1869,9 @@ public partial class ItemCreationSDK : Form
upXBox.Value = ConvertSafe.ToDecimalSafe(HatRotationSplit[3]);
upYBox.Value = ConvertSafe.ToDecimalSafe(HatRotationSplit[4]);
upZBox.Value = ConvertSafe.ToDecimalSafe(HatRotationSplit[5]);
forwardXBox.Value = ConvertSafe.ToDecimalSafe(HatRotationSplit[6]);
forwardYBox.Value = ConvertSafe.ToDecimalSafe(HatRotationSplit[7]);
forwardZBox.Value = ConvertSafe.ToDecimalSafe(HatRotationSplit[8]);
forwardXBox.Value = -ConvertSafe.ToDecimalSafe(HatRotationSplit[6]);
forwardYBox.Value = -ConvertSafe.ToDecimalSafe(HatRotationSplit[7]);
forwardZBox.Value = -ConvertSafe.ToDecimalSafe(HatRotationSplit[8]);
}
string HatPartVals = GetHatPartVals(doc);
@ -2306,3 +2353,19 @@ public partial class ItemCreationSDK : Form
}
#endregion
#region Vector3 (Legacy)
public class Vector3Legacy
{
public double X;
public double Y;
public double Z;
public Vector3Legacy(double aX, double aY, double aZ)
{
X = aX;
Y = aY;
Z = aZ;
}
}
#endregion

View File

@ -15,6 +15,7 @@ Enhancements:
- Added a DirectX installer.
- The Dependency Installer will require admin permissions by default, allowing all installers to run with admin permissions, making it quicker to install each dependency.
- Added support for more client APIs in the Web Proxy.
- Losing connection from servers will now automatically close the client.
Fixes:
- Fixed a bug where "Reset Colors" would reset the entire outfit.
@ -22,6 +23,25 @@ Fixes:
- Removed the "save config" button.
- Fixed character collision accuracy issues in 2007M clients.
- Fixed the Web Proxy not starting up automatically once enabled.
- Fixed bytecode security issues.
- Fixed a bug where kicked players don't fully disconnect from the server.
- Removed the ShadersCompatibility plugin due to security issues.
---------------------------------------------------------------------------
Continuation of 2.0 updates.
---------------------------------------------------------------------------
1.3 v3.2024.2
Changes from 1.3 v3.2024.1:
- Fixed a bug where kicked players don't fully disconnect from the server.
- Removed the ShadersCompatibility plugin due to security issues.
- Losing connection from servers will now automatically close the client.
---------------------------------------------------------------------------
1.3 v3.2024.1
Changes from 1.3 v8.2022.1:
- Fixed bytecode and metatable security issues.
- Discontinued the Lite version.
- My setup has been configured for the 2.0 release which is about as small as the Lite version. This means that I can no longer publish Lite versions.
---------------------------------------------------------------------------
1.3 Emergency Updates
---------------------------------------------------------------------------
Snapshot v24.8790.39939.1
Enhancements:
@ -258,7 +278,7 @@ Fixes:
- Fixed launcher DPI scaling.
- Fixed a potential security vulnerability with empty master server entries.
----------------------------------------------------------------------------
"Numberless" Version
2.0
----------------------------------------------------------------------------
1.3 Snapshot v22.8412.32591.1
Enhancements:

View File

@ -1,96 +0,0 @@
-- allows 2007M, 2006S, 2007E, and 2009E users to join Shaders/HD servers, and vice versa
local this = {}
function this:Name()
return "Shader Client MP Compatibility"
end
function this:IsEnabled(Script, Client)
-- hate this so much
if (Client == "2007E" or Client == "2007M" or Client == "2006S" or Client == "2007E-Shaders" or Client == "2007M-Shaders" or Client == "2006S-Shaders" or Client == "2009E" or Client == "2009E-HD") then
return true
else
return false
end
end
function this:OnPrePlayerKicked(Player, Reason)
if (game.Lighting:findFirstChild("SkipSecurity") ~= nil) then
do return end
end
invalidSecurityVals = 0
for _,newVal in pairs(Player.Security:children()) do
if (newVal.Name == "ClientEXEMD5") then
if (newVal.Value ~= game.Lighting.Security.ClientEXEMD5.Value or newVal.Value == "") then
invalidSecurityVals = invalidSecurityVals + 1
end
end
if (newVal.Name == "LauncherMD5") then
if (newVal.Value ~= game.Lighting.Security.LauncherMD5.Value or newVal.Value == "") then
invalidSecurityVals = invalidSecurityVals + 1
end
end
if (newVal.Name == "ClientScriptMD5") then
if (newVal.Value ~= game.Lighting.Security.ClientScriptMD5.Value or newVal.Value == "") then
invalidSecurityVals = invalidSecurityVals + 1
end
end
end
if (invalidSecurityVals > 0) then
print(Player.Name .. " has "..invalidSecurityVals.." invalid security values! Verifying...")
validLauncher = false
hasTripcode = false
securityValues = 0
for _,newVal in pairs(Player.Security:children()) do
if (newVal.Name == "LauncherMD5") then
if (newVal.Value == game.Lighting.Security.LauncherMD5.Value) then
validLauncher = true
end
end
securityValues = securityValues + 1
end
for _,newVal in pairs(Player:children()) do
if (newVal.Name == "Tripcode") then
if (newVal.Value ~= "") then
hasTripcode = true
end
end
end
if (validLauncher == true and hasTripcode == true and securityValues == 3) then
print(Player.Name .. " is using a valid modified client!")
local ver = Instance.new("StringValue",game.Lighting)
ver.Name = "SkipSecurity"
local tempTag = Instance.new("StringValue",ver)
tempTag.Name = "Temp"
else
print(Player.Name .. " is using an invalid modified client! Kicking...")
end
else
print(Player.Name .. " is using an invalid modified client! Kicking...")
end
end
function this:OnLoadCharacter(Player, Appearance)
if (game.Lighting:findFirstChild("SkipSecurity") ~= nil) then
if (game.Lighting.SkipSecurity:findFirstChild("Temp") ~= nil) then
game.Lighting.SkipSecurity:remove()
end
end
end
function AddModule(t)
print("AddonLoader: Adding " .. this:Name())
table.insert(t, this)
end
_G.CSScript_AddModule=AddModule

View File

@ -164,12 +164,12 @@ echo.
echo Copying maps....
SET mapdir=%CD%\maps
if not exist "%mapdir%" mkdir "%mapdir%"
XCOPY "%cd%\Novetus\maps\Maps released by year\*.bz2" "%mapdir%\Maps released by year" /sy
XCOPY "%cd%\Novetus\maps\Novetus Exclusives\*.bz2" "%mapdir%\Novetus Exclusives" /sy
XCOPY "%cd%\Novetus\maps\Universal\*.bz2" "%mapdir%\Universal" /sy
XCOPY "%cd%\Novetus\maps\Maps released by year\*.txt" "%mapdir%\Maps released by year" /sy
XCOPY "%cd%\Novetus\maps\Novetus Exclusives\*.txt" "%mapdir%\Novetus Exclusives" /sy
XCOPY "%cd%\Novetus\maps\Universal\*.txt" "%mapdir%\Universal" /sy
XCOPY /E "%cd%\Novetus\maps\Maps released by year\*.bz2" "%mapdir%\Maps released by year" /sy
XCOPY /E "%cd%\Novetus\maps\Novetus Exclusives\*.bz2" "%mapdir%\Novetus Exclusives" /sy
XCOPY /E "%cd%\Novetus\maps\Universal\*.bz2" "%mapdir%\Universal" /sy
XCOPY /E "%cd%\Novetus\maps\Maps released by year\*.txt" "%mapdir%\Maps released by year" /sy
XCOPY /E "%cd%\Novetus\maps\Novetus Exclusives\*.txt" "%mapdir%\Novetus Exclusives" /sy
XCOPY /E "%cd%\Novetus\maps\Universal\*.txt" "%mapdir%\Universal" /sy
echo.
echo Moving maps...

View File

@ -27,6 +27,7 @@ function KickPlayer(Player,reason)
name = "ServerReplicator|"..Player.Name.."|"..Player.userId.."|"..Player.AnonymousIdentifier.Value
if (Server:findFirstChild(name) ~= nil and Child.Name == name) then
Child:CloseConnection()
Child:remove()
print("Player '" .. Player.Name .. "' Kicked. Reason: "..reason)
end
end
@ -362,6 +363,7 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
local function disconnect(peer,lostconnection)
game:SetMessage("You have lost connection to the game")
game:Close()
end
local function connected(url, replicator)

View File

@ -27,6 +27,7 @@ function KickPlayer(Player,reason)
name = "ServerReplicator|"..Player.Name.."|"..Player.userId.."|"..Player.AnonymousIdentifier.Value
if (Server:findFirstChild(name) ~= nil and Child.Name == name) then
Child:CloseConnection()
Child:remove()
print("Player '" .. Player.Name .. "' Kicked. Reason: "..reason)
end
end
@ -362,6 +363,7 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
local function disconnect(peer,lostconnection)
game:SetMessage("You have lost connection to the game")
game:Close()
end
local function connected(url, replicator)

View File

@ -27,6 +27,7 @@ function KickPlayer(Player,reason)
name = "ServerReplicator|"..Player.Name.."|"..Player.userId.."|"..Player.AnonymousIdentifier.Value
if (Server:findFirstChild(name) ~= nil and Child.Name == name) then
Child:CloseConnection()
Child:remove()
print("Player '" .. Player.Name .. "' Kicked. Reason: "..reason)
end
end
@ -424,6 +425,7 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
local function disconnect(peer,lostconnection)
game:SetMessage("You have lost connection to the game")
game:Close()
end
local function connected(url, replicator)

View File

@ -27,6 +27,7 @@ function KickPlayer(Player,reason)
name = "ServerReplicator|"..Player.Name.."|"..Player.userId.."|"..Player.AnonymousIdentifier.Value
if (Server:findFirstChild(name) ~= nil and Child.Name == name) then
Child:CloseConnection()
Child:remove()
print("Player '" .. Player.Name .. "' Kicked. Reason: "..reason)
end
end
@ -424,6 +425,7 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
local function disconnect(peer,lostconnection)
game:SetMessage("You have lost connection to the game")
game:Close()
end
local function connected(url, replicator)

View File

@ -27,6 +27,7 @@ function KickPlayer(Player,reason)
name = "ServerReplicator|"..Player.Name.."|"..Player.userId.."|"..Player.AnonymousIdentifier.Value
if (Server:findFirstChild(name) ~= nil and Child.Name == name) then
Child:CloseConnection()
Child:remove()
print("Player '" .. Player.Name .. "' Kicked. Reason: "..reason)
end
end
@ -481,6 +482,7 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
local function disconnect(peer,lostconnection)
game:SetMessage("You have lost connection to the game")
game:Close()
end
local function connected(url, replicator)

View File

@ -27,6 +27,7 @@ function KickPlayer(Player,reason)
name = "ServerReplicator|"..Player.Name.."|"..Player.userId.."|"..Player.AnonymousIdentifier.Value
if (Server:findFirstChild(name) ~= nil and Child.Name == name) then
Child:CloseConnection()
Child:remove()
print("Player '" .. Player.Name .. "' Kicked. Reason: "..reason)
end
end
@ -481,6 +482,7 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
local function disconnect(peer,lostconnection)
game:SetMessage("You have lost connection to the game")
game:Close()
end
local function connected(url, replicator)

View File

@ -27,6 +27,7 @@ function KickPlayer(Player,reason)
name = "ServerReplicator|"..Player.Name.."|"..Player.userId.."|"..Player.AnonymousIdentifier.Value
if (Server:findFirstChild(name) ~= nil and Child.Name == name) then
Child:CloseConnection()
Child:remove()
print("Player '" .. Player.Name .. "' Kicked. Reason: "..reason)
end
end
@ -599,6 +600,7 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
local function disconnect(peer,lostconnection)
game:SetMessage("You have lost connection to the game")
game:Close()
end
local function connected(url, replicator)

View File

@ -27,6 +27,7 @@ function KickPlayer(Player,reason)
name = "ServerReplicator|"..Player.Name.."|"..Player.userId.."|"..Player.AnonymousIdentifier.Value
if (Server:findFirstChild(name) ~= nil and Child.Name == name) then
Child:CloseConnection()
Child:remove()
print("Player '" .. Player.Name .. "' Kicked. Reason: "..reason)
end
end
@ -693,6 +694,7 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
local function disconnect(peer,lostconnection)
game:SetMessage("You have lost connection to the game")
game:Close()
end
local function connected(url, replicator)

View File

@ -27,6 +27,7 @@ function KickPlayer(Player,reason)
name = "ServerReplicator|"..Player.Name.."|"..Player.userId.."|"..Player.AnonymousIdentifier.Value
if (Server:findFirstChild(name) ~= nil and Child.Name == name) then
Child:CloseConnection()
Child:remove()
print("Player '" .. Player.Name .. "' Kicked. Reason: "..reason)
end
end
@ -693,6 +694,7 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
local function disconnect(peer,lostconnection)
game:SetMessage("You have lost connection to the game")
game:Close()
end
local function connected(url, replicator)

View File

@ -30,6 +30,7 @@ function KickPlayer(Player,reason)
--2010L crashes if we don't do this.
wait(0.3)
Child:CloseConnection()
Child:remove()
print("Player '" .. Player.Name .. "' Kicked. Reason: "..reason)
end
end
@ -697,6 +698,7 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
local function disconnect(peer,lostconnection)
game:SetMessage("You have lost connection to the game")
game:Close()
end
local function connected(url, replicator)

View File

@ -30,6 +30,7 @@ function KickPlayer(Player,reason)
--2010L crashes if we don't do this.
wait(0.3)
Child:CloseConnection()
Child:remove()
print("Player '" .. Player.Name .. "' Kicked. Reason: "..reason)
end
end
@ -748,6 +749,7 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
local function disconnect(peer,lostconnection)
game:SetMessage("You have lost connection to the game")
game:Close()
end
local function connected(url, replicator)

View File

@ -30,6 +30,7 @@ function KickPlayer(Player,reason)
name = "ServerReplicator|"..Player.Name.."|"..Player.userId.."|"..Player.AnonymousIdentifier.Value
if (Server:findFirstChild(name) ~= nil and Child.Name == name) then
Child:CloseConnection()
Child:remove()
print("Player '" .. Player.Name .. "' Kicked. Reason: "..reason)
end
end
@ -778,6 +779,7 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
local function Disconnection(Peer,LostConnection)
SetMessage("You have lost connection to the game")
game:Close()
end
local function ConnectionAccepted(Peer,Replicator)

View File

@ -30,6 +30,7 @@ function KickPlayer(Player,reason)
name = "ServerReplicator|"..Player.Name.."|"..Player.userId.."|"..Player.AnonymousIdentifier.Value
if (Server:findFirstChild(name) ~= nil and Child.Name == name) then
Child:CloseConnection()
Child:remove()
print("Player '" .. Player.Name .. "' Kicked. Reason: "..reason)
end
end
@ -781,6 +782,7 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
local function Disconnection(Peer,LostConnection)
SetMessage("You have lost connection to the game")
game:Close()
end
local function ConnectionAccepted(Peer,Replicator)

View File

@ -31,6 +31,7 @@ function KickPlayer(Player,reason)
name = "ServerReplicator|"..Player.Name.."|"..Player.userId.."|"..Player.AnonymousIdentifier.Value
if (Server:findFirstChild(name) ~= nil and Child.Name == name) then
Child:CloseConnection()
Child:remove()
print("Player '" .. Player.Name .. "' Kicked. Reason: "..reason)
end
end

View File

@ -275,4 +275,5 @@ roblox for steam deck when|Just fuckin play novetus
you're still standing here, despite everything|Dedicated to Pepper
when in doubt, shoot someone|Dedicated to Pepper
oh my pkcell
[stylish]I'M A STONE FACED KILLER LIKE MY MOTHER FUCKIN' HOUSE IS!
[stylish]I'M A STONE FACED KILLER LIKE MY MOTHER FUCKIN' HOUSE IS!
Balls!