--- functions -------------------------- function onPlayerAdded(player) -- override end -- MultiplayerSharedScript.lua inserted here ------ Prepended to Join.lua -- --pcall(function() game:SetPlaceID(0, false) end) pcall(function() settings()["Game Options"].CollisionSoundEnabled = true end) pcall(function() settings().Rendering.EnableFRM = true end) pcall(function() settings().Physics.Is30FpsThrottleEnabled = true end) pcall(function() settings()["Task Scheduler"].PriorityMethod = Enum.PriorityMethod.AccumulatedError end) -- arguments --------------------------------------- local threadSleepTime = ... if threadSleepTime==nil then threadSleepTime = 15 end local test = false print("! Joining game '' place -1 at 127.0.0.1") game:GetService("ChangeHistoryService"):SetEnabled(false) pcall(function() game:GetService("ContentProvider"):SetThreadPool(16) end) pcall(function() game:GetService("InsertService"):SetBaseSetsUrl("http:///Game/Tools/InsertAsset.ashx?nsets=10&type=base") end) pcall(function() game:GetService("InsertService"):SetUserSetsUrl("http:///Game/Tools/InsertAsset.ashx?nsets=20&type=user&userid=%d&t=2") end) pcall(function() game:GetService("InsertService"):SetCollectionUrl("http:///Game/Tools/InsertAsset.ashx?sid=%d") end) pcall(function() game:GetService("InsertService"):SetAssetUrl("http:///Asset/?id=%d") end) pcall(function() game:GetService("SocialService"):SetFriendUrl("http:///Game/LuaWebService/HandleSocialRequest.ashx?method=IsFriendsWith&playerid=%d&userid=%d") end) pcall(function() game:GetService("SocialService"):SetBestFriendUrl("http:///Game/LuaWebService/HandleSocialRequest.ashx?method=IsBestFriendsWith&playerid=%d&userid=%d") end) pcall(function() game:GetService("SocialService"):SetGroupUrl("http:///Game/LuaWebService/HandleSocialRequest.ashx?method=IsInGroup&playerid=%d&groupid=%d") end) pcall(function() game:GetService("SocialService"):SetGroupRankUrl("http:///Game/LuaWebService/HandleSocialRequest.ashx?method=GetGroupRank&playerid=%d&groupid=%d") end) pcall(function() game:GetService("SocialService"):SetGroupRoleUrl("http:///Game/LuaWebService/HandleSocialRequest.ashx?method=GetGroupRole&playerid=%d&groupid=%d") end) -- Bubble chat. This is all-encapsulated to allow us to turn it off with a config setting pcall(function() game:GetService("Players"):SetChatStyle(Enum.ChatStyle.ClassicAndBubble) end) local waitingForCharacter = false pcall( function() if settings().Network.MtuOverride == 0 then settings().Network.MtuOverride = 1400 end end) -- globals ----------------------------------------- client = game:GetService("NetworkClient") visit = game:GetService("Visit") -- functions --------------------------------------- function setMessage(message) -- todo: animated "..." if not false then game:SetMessage(message) else -- hack, good enought for now game:SetMessage("Teleporting ...") end end function showErrorWindow(message) game:SetMessage(message) end function reportError(err) print("***ERROR*** " .. err) if not test then visit:SetUploadUrl("") end client:Disconnect() wait(4) showErrorWindow("Error: " .. err) end -- called when the client connection closes function onDisconnection(peer, lostConnection) if lostConnection then showErrorWindow("You have lost the connection to the game") else showErrorWindow("This game has shut down") end end function requestCharacter(replicator) -- prepare code for when the Character appears local connection connection = player.Changed:connect(function (property) if property=="Character" then game:ClearMessage() waitingForCharacter = false connection:disconnect() end end) setMessage("Requesting character") local success, err = pcall(function() replicator:RequestCharacter() setMessage("Waiting for character") waitingForCharacter = true end) if not success then reportError(err) return end end -- called when the client connection is established function onConnectionAccepted(url, replicator) local waitingForMarker = true local success, err = pcall(function() if not test then visit:SetPing("", 30) end if not false then game:SetMessageBrickCount() else setMessage("Teleporting ...") end replicator.Disconnection:connect(onDisconnection) -- Wait for a marker to return before creating the Player local marker = replicator:SendMarker() marker.Received:connect(function() waitingForMarker = false game:ClearMessage() Instance.new("Message", workspace).Text = "lol" Instance.new("Part", workspace) Instance.new("Script", workspace) -- should trigger an illegal replication error -- requestCharacter(replicator) end) end) if not success then reportError(err) return end -- TODO: report marker progress while waitingForMarker do workspace:ZoomToExtents() wait(0.5) end end -- called when the client connection fails function onConnectionFailed(_, error) showErrorWindow("Failed to connect to the Game. (ID=" .. error .. ")") end -- called when the client connection is rejected function onConnectionRejected() connectionFailed:disconnect() showErrorWindow("This game is not available. Please try another") end idled = false function onPlayerIdled(time) if time > 20*60 then showErrorWindow(string.format("You were disconnected for being idle %d minutes", time/60)) client:Disconnect() if not idled then idled = true end end end -- main ------------------------------------------------------------ pcall(function() settings().Diagnostics:LegacyScriptMode() end) local success, err = pcall(function() pcall(function() game:SetRemoteBuildMode(true) end) setMessage("Connecting to Server") client.ConnectionAccepted:connect(onConnectionAccepted) client.ConnectionRejected:connect(onConnectionRejected) connectionFailed = client.ConnectionFailed:connect(onConnectionFailed) playerConnectSucces, player = pcall(function() return client:PlayerConnect(1, "127.0.0.1", 420, 0, threadSleepTime) end) if not playerConnectSucces then --Old player connection scheme -- player = game:GetService("Players"):CreateLocalPlayer(1) client:Connect("127.0.0.1", 420, 0, threadSleepTime) end --[[ if not test then ticket = Instance.new("StringValue") ticket.Name = "PolygonTicket" ticket.Value = "" ticket.Parent = player end --]] -- player:SetSuperSafeChat(false) -- pcall(function() player:SetMembershipType(Enum.MembershipType.OutrageousBuildersClub) end) -- pcall(function() player:SetAccountAge(0) end) -- player.Idled:connect(onPlayerIdled) -- Overriden -- onPlayerAdded(player) -- pcall(function() player.Name = [========[pizzaboxer]========] end) -- player.CharacterAppearance = "" if not test then visit:SetUploadUrl("") end end) if not success then reportError(err) end