Advertisement
SCRIPTCUSTOMIZER

Testing

Dec 16th, 2023
33
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.28 KB | None | 0 0
  1. local RestrictedTorsoMovement = false --Restricts the X rotation of the Torso (RagdollEnabled false)
  2. local RestrictedTorsoHeight = false --Restricts the Torso height to your VRMover's Y Position
  3. local ConnectedBody = false --Uses ball in socket To connect Your VR Body Together
  4. local RagdollEnabled = false --Uses your character instead of hats
  5. local SmoothLegMovement = true --Makes the Leg movement Smooth
  6. local CustomNetless = false --Uses a custom Netless else Netless v3
  7. local ShowControllerModels = false --Shows the roblox VR Controller Models
  8. local ShowVRLaserCursor = 0 --Shows the roblox VR Pointer 0 = False 2 = true
  9. local VRBodyTransparecy = 0.65 --The Transparency of your vr body
  10. local ChatGUI = true --a GUI that follows your head position containing a custom chat
  11. local ClockHUD = true --A clock on your left hand displaying your IRL time
  12. local KillOnBreak = true --if the script breaks it will respawn your character and you will have to Re-run the script
  13. local VRBodyHeightOffset = 0 --The height in studs of the offset of your vrbody
  14. local AccessorySettings = {
  15. LeftArm = "Pal Hair";
  16. RightArm = "LavanderHair";
  17. LeftLeg = "Kate Hair";
  18. RightLeg = "Hat1";
  19. Torso = "SeeMonkey";
  20. Head = "Robloxclassicred";
  21.  
  22. AutoHead = true; --Uses the leftover hats for you head
  23. }
  24.  
  25.  
  26.  
  27.  
  28. local plr = game:GetService("Players").LocalPlayer
  29. local char = plr.Character
  30. local leftarm
  31. local rightarm
  32. local rightleg
  33. local torso
  34. local head
  35. local LegUpdateTime = 0.1
  36. local HeadHats = {}
  37. if RagdollEnabled == true then
  38. leftarm = char["Left Arm"]
  39. rightarm = char["Right Arm"]
  40. torso = char["Torso"]
  41. leftleg = char["Left Leg"]
  42. rightleg =char["Right Leg"]
  43. head = char["Head"]
  44. else
  45.  
  46. leftarm = char:FindFirstChild(AccessorySettings.LeftArm).Handle
  47. rightarm = char:FindFirstChild(AccessorySettings.RightArm).Handle
  48. leftleg = char:FindFirstChild(AccessorySettings.LeftLeg).Handle
  49. rightleg = char:FindFirstChild(AccessorySettings.RightLeg).Handle
  50. torso = char:FindFirstChild(AccessorySettings.Torso).Handle
  51. head = char:FindFirstChild(AccessorySettings.Head).Handle
  52. end
  53. if CustomNetless == true then
  54. game:GetService("RunService").Heartbeat:Connect(function()
  55. leftarm.Handle.Velocity = Vector3.new(35,0,0)
  56. rightarm.Handle.Velocity = Vector3.new(35,0,0)
  57. leftleg.Handle.Velocity = Vector3.new(35,0,0)
  58. rightleg.Handle.Velocity = Vector3.new(35,0,0)
  59. torso.Handle.Velocity = Vector3.new(35,0,0)
  60. head.Handle.Velocity = Vector3.new(35,0,0)
  61. end)
  62. else
  63. for i,v in next, game:GetService("Players").LocalPlayer.Character:GetDescendants() do
  64. if v:IsA("BasePart") and v.Name ~="HumanoidRootPart" then
  65. game:GetService("RunService").Heartbeat:connect(function()
  66. v.Velocity = Vector3.new(0,45,0)
  67. end)
  68. end
  69. end
  70. end
  71. local MoverModel = Instance.new("Model",char)
  72. MoverModel.Name = "Mover"
  73. local HumanoidRootPart = Instance.new("Part",MoverModel)
  74. HumanoidRootPart.Size = Vector3.new(2,2,1)
  75. HumanoidRootPart.Name = "HumanoidRootPart"
  76. HumanoidRootPart.CanCollide = false
  77. HumanoidRootPart.CFrame = char.PrimaryPart.CFrame
  78. HumanoidRootPart.Transparency = 1
  79. local Humanoid = Instance.new("Humanoid",MoverModel)
  80. Humanoid.WalkSpeed = 8
  81. Humanoid.JumpPower = 40
  82. Humanoid.HipHeight = 2.5
  83. Humanoid.CameraOffset = Vector3.new(0, VRBodyHeightOffset, 0)
  84. local VR_Ready = false
  85. local VRService = game:GetService("VRService")
  86. if VRService.VREnabled == true then
  87. VR_Ready = true
  88. else
  89. VR_Ready= false
  90. end
  91. local function HatFixer(hat)
  92. hat:BreakJoints()
  93. hat:FindFirstChildOfClass("SpecialMesh"):Destroy()
  94. end
  95. local function Align(part0,part1,cframe)
  96. local Att0 = Instance.new("Attachment",part0)
  97. local Att1 = Instance.new("Attachment",part1)
  98. local AlignPosition = Instance.new("AlignPosition",part0)
  99. local AlignOrientation = Instance.new("AlignOrientation",part0)
  100. AlignPosition.Attachment0 =Att0
  101. AlignPosition.Attachment1 = Att1
  102. AlignPosition.Responsiveness = math.huge
  103. AlignPosition.MaxForce = math.huge
  104. AlignPosition.MaxVelocity = math.huge
  105. AlignOrientation.Attachment0 = Att0
  106. AlignOrientation.Attachment1 = Att1
  107. AlignOrientation.Responsiveness = math.huge
  108. AlignOrientation.MaxTorque = math.huge
  109. AlignOrientation.MaxAngularVelocity = math.huge
  110. if SmoothLegMovement == true then
  111. AlignPosition.Responsiveness = 85
  112. else
  113. AlignPosition.Responsiveness = math.huge
  114. end
  115. if cframe then
  116. Att0.CFrame = cframe
  117. else
  118. --//uhh
  119. end
  120. part0.Massless = true
  121. part1.Massless = true
  122. end
  123. local function CreateLimb(size,name)
  124. local part = Instance.new("Part",char)
  125. part.Size = size
  126. part.Name = name
  127. part.CanCollide = false
  128. part.Anchored = true
  129. part.Transparency = 1
  130. return part
  131. end
  132. -- CreateLimb(Vector3.new(1,1,2),"LF")
  133. -- CreateLimb(Vector3.new(1,1,2),"RH")
  134. local LeftFoot
  135. local RightFoot
  136. if RagdollEnabled == true then
  137. LeftFoot = CreateLimb(Vector3.new(1,2,1),"LF")
  138. RightFoot = CreateLimb(Vector3.new(1,2,1),"RH")
  139. else
  140. LeftFoot = CreateLimb(Vector3.new(1,1,2),"LH")
  141. RightFoot = CreateLimb(Vector3.new(1,1,2),"RH")
  142. end
  143. warn("50%")
  144. Align(leftleg ,LeftFoot,CFrame.new(0,0,0)*CFrame.Angles(math.rad(90),math.rad(0),math.rad(0)))
  145. Align(rightleg ,RightFoot,CFrame.new(0,0,0)*CFrame.Angles(math.rad(90),math.rad(0),math.rad(0)))
  146. local UserInputService = game:GetService("UserInputService")
  147. local Backpack = plr.Backpack
  148. local Camera = workspace.CurrentCamera
  149. local function UpdateFooting()
  150. if RagdollEnabled == false then
  151. wait(LegUpdateTime)
  152. LeftFoot.CFrame = torso .CFrame * CFrame.new(0.5,0,2)*CFrame.Angles(math.rad(90),math.rad(0),math.rad(0))
  153. LeftFoot.Orientation = Vector3.new(0, -Camera.CFrame.Y, 0)
  154. wait(LegUpdateTime)
  155. RightFoot.CFrame = torso .CFrame * CFrame.new(-0.5,0,2)*CFrame.Angles(math.rad(90),math.rad(0),math.rad(0))
  156. RightFoot.Orientation = Vector3.new(0, Camera.CFrame.Y, 0)
  157. else
  158. wait(LegUpdateTime)
  159. LeftFoot.CFrame = torso .CFrame * CFrame.new(0.5,-2,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  160. LeftFoot.Orientation = Vector3.new(90, 0, 0)
  161. wait(LegUpdateTime)
  162. RightFoot.CFrame = torso .CFrame * CFrame.new(-0.5,-2,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  163. RightFoot.Orientation = Vector3.new(90, 0, 0)
  164. end
  165. end
  166. if VR_Ready then
  167. UserInputService.UserCFrameChanged:Connect(function(typec,move)
  168. if typec == Enum.UserCFrame.LeftHand then
  169. if RagdollEnabled == false then
  170. leftarm .CFrame = Camera.CFrame * move*CFrame.new(0,0,0.5)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  171. else
  172. leftarm .CFrame = Camera.CFrame * move*CFrame.new(0,0,0)*CFrame.Angles(math.rad(90),math.rad(0),math.rad(0))
  173. end
  174. end
  175. if typec == Enum.UserCFrame.RightHand then
  176. if RagdollEnabled == false then
  177. rightarm.CFrame = Camera.CFrame * move*CFrame.new(0,0,0.5)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  178. else
  179. rightarm .CFrame = Camera.CFrame * move*CFrame.new(0,0,0)*CFrame.Angles(math.rad(90),math.rad(0),math.rad(0))
  180. end
  181. for i,x in pairs(char:GetChildren()) do
  182. if x:IsA("Tool") and x:FindFirstChild("Handle") then
  183. x.Grip.C0 = Camera.CFrame * move*CFrame.new(0,0,0.5)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  184. end
  185. end
  186. end
  187. if typec == Enum.UserCFrame.Head then
  188. if RagdollEnabled == false then
  189. head .CFrame = Camera.CFrame * move*CFrame.new(0,0.2,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  190. if RestrictedTorsoMovement == false then
  191. torso .CFrame = Camera.CFrame * move*CFrame.new(0,-2,0)*CFrame.Angles(math.rad(90),math.rad(0),math.rad(0))
  192. else
  193. if RestrictedTorsoHeight == true then
  194. torso.Position = Vector3.new(Camera.CFrame.Z,HumanoidRootPart.Position.Y,Camera.CFrame.Z)
  195. end
  196. torso .CFrame = Camera.CFrame * move*CFrame.new(0,-2,0)*CFrame.Angles(math.rad(90),math.rad(0),math.rad(0))
  197. torso.Orientation = Vector3.new(90,Camera.CFrame.Y,Camera.CFrame.Z)
  198. end
  199. else
  200. head .CFrame = Camera.CFrame * move*CFrame.new(0,0.2,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  201. torso .CFrame = Camera.CFrame * move*CFrame.new(0,-2,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  202. end
  203.  
  204. end
  205. end)
  206. else
  207. local CamPart = Instance.new("Part",char)
  208. CamPart.Size = Vector3.new(1, 1, 1)
  209. CamPart.CanCollide = false
  210. CamPart.Anchored = true
  211. CamPart.Transparency = 1
  212. local usingleft = false
  213. local usingright = false
  214. local mouse = plr:GetMouse()
  215. Align(leftarm,torso,CFrame.new(1.5,0,-2)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0)))
  216. Align(rightarm,torso,CFrame.new(-1.5,0,-2)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0)))
  217. Align(head,CamPart,CFrame.new(0,0,0))
  218. Align(torso,CamPart,CFrame.new(0,0,-2)*CFrame.Angles(math.rad(-90),math.rad(0),math.rad(0)))
  219. local Att0 = Instance.new("Attachment",leftarm)
  220. local Att1 = Instance.new("Attachment",rightarm)
  221. local Att2 = Instance.new("Attachment",torso)
  222. local Att3 = Instance.new("Attachment",torso)
  223. local Ballin = Instance.new("BallSocketConstraint",leftarm)
  224. Ballin.Attachment0 = Att0
  225. --Ballin.Attachment1 = Att2
  226. local Ballin2 = Instance.new("BallSocketConstraint",rightleg)
  227. Ballin2.Attachment0 = Att1
  228. --Ballin2.Attachment1 = Att3
  229. game:GetService("RunService").Heartbeat:Connect(function()
  230. if torso and head then
  231. CamPart.CFrame = Camera.CFrame
  232. end
  233. end)
  234. Att2.CFrame = torso.CFrame * CFrame.new(1,-1,0)*CFrame.Angles(math.rad(90),math.rad(0),math.rad(0))
  235. Att3.CFrame = torso.CFrame * CFrame.new(-1,-1,0)*CFrame.Angles(math.rad(90),math.rad(0),math.rad(0))
  236. mouse.Button1Down:Connect(function()
  237. usingleft = true
  238. Att2.CFrame = torso.CFrame * CFrame.new(1,-1,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  239. end)
  240. mouse.Button1Up:Connect(function()
  241. usingleft = false
  242. Att2.CFrame = torso.CFrame * CFrame.new(1,-1,0)*CFrame.Angles(math.rad(90),math.rad(0),math.rad(0))
  243. end)
  244. mouse.Button2Down:Connect(function()
  245. usingright = true
  246. Att3.CFrame = torso.CFrame * CFrame.new(-1,-1,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  247. end)
  248. mouse.Button2Up:Connect(function()
  249. usingright = false
  250. Att3.CFrame = torso.CFrame * CFrame.new(-1,-1,0)*CFrame.Angles(math.rad(90),math.rad(0),math.rad(0))
  251. end)
  252. --plr.CameraMode = Enum.CameraMode.LockFirstPerson
  253. end
  254. for i,x in pairs(char:GetChildren()) do
  255. if x:IsA("Accessory") then
  256. x.Handle.Transparency = VRBodyTransparecy
  257. end
  258. if x:IsA("BasePart") then
  259. x.Transparency = VRBodyTransparecy
  260. char:FindFirstChildOfClass("Humanoid").RootPart.Transparency = 1
  261. x.CanCollide =false
  262. end
  263. end
  264. if RagdollEnabled == true then
  265. leftarm:BreakJoints()
  266. rightarm:BreakJoints()
  267. leftleg:BreakJoints()
  268. rightleg:BreakJoints()
  269. else
  270. HatFixer(leftarm)
  271. HatFixer(rightarm)
  272. HatFixer(leftleg)
  273. HatFixer(rightleg)
  274. HatFixer(torso)
  275. head:BreakJoints()
  276. end
  277. --plr.Character.HumanoidRootPart.Anchored = true
  278. if RagdollEnabled == true then
  279. plr.Character.HumanoidRootPart.RootJoint:Destroy()
  280. plr.Character:FindFirstChildOfClass("Humanoid").RootPart:Destroy()
  281. end
  282. plr.Character = MoverModel
  283. Camera.CameraSubject = Humanoid
  284. UserInputService.InputBegan:Connect(function(key)
  285. if key.KeyCode == Enum.KeyCode.ButtonR2 then
  286. Humanoid.WalkSpeed = 19
  287. LegUpdateTime = 0.13
  288. end
  289. end)
  290. UserInputService.InputEnded:Connect(function(key)
  291. if key.KeyCode ==Enum.KeyCode.ButtonR2 then
  292. Humanoid.WalkSpeed = 8
  293. LegUpdateTime = 0.25
  294. end
  295. end)
  296. Humanoid.Died:Connect(function()
  297. Camera.CameraSubject = game:WaitForChild(plr.Name):FindFirstChildOfClass("Humanoid")
  298. plr.Character = game:WaitForChild(plr.Name)
  299. wait(0.1)
  300. plr.Character:BreakJoints()
  301. end)
  302. if ClockHUD == true then
  303. local clock = game:GetObjects("rbxassetid://12270042599")[1]
  304. clock.Parent = workspace
  305. clock.Anchored = true
  306. UserInputService.UserCFrameChanged:Connect(function(a,b)
  307. if a == Enum.UserCFrame.LeftHand then
  308. clock.CFrame = Camera.CFrame * b * CFrame.new(0.5,0,0)
  309. end
  310. end)
  311. end
  312. if ChatGUI == true then
  313. local chat = game:GetObjects("rbxassetid://12375597548")[1]
  314. chat.Parent = workspace
  315. chat.GUI.Enabled = false
  316. chat.CanQuery = true
  317. chat.CanTouch = true
  318. local function MakeChat(color,msg,player,normalname)
  319. local chattext = chat.GUI.ChatGUI.TextLabel:Clone()
  320. chattext.Parent = chat.GUI.ChatGUI.Frame
  321. chattext.Text = ("["..player.."@"..normalname.."]"..": "..msg)
  322. chattext.TextColor = color
  323. wait(20)
  324. chattext:Destroy()
  325. end
  326. UserInputService.InputBegan:Connect(function(k)
  327. if k.KeyCode == Enum.KeyCode.ButtonY then
  328. chat.GUI.Enabled = not chat.GUI.Enabled
  329. end
  330. end)
  331. UserInputService.UserCFrameChanged:Connect(function(a,b)
  332. if a == Enum.UserCFrame.Head then
  333. chat.CFrame = Camera.CFrame * CFrame.new(0,0,-5) *CFrame.Angles(math.rad(0), math.rad(-90), math.rad(0))
  334. end
  335. end)
  336. for i,x in pairs(game.Players:GetChildren()) do
  337. if x:IsA("Player") then
  338. x.Chatted:Connect(function(msg)
  339. MakeChat(BrickColor.random(),msg,x.DisplayName,x.Name)
  340. end)
  341. end
  342. end
  343. game.Players.PlayerAdded:Connect(function(player)
  344. player.Chatted:Connect(function(msg)
  345. MakeChat(BrickColor.random(),msg,player.DisplayName,player.Name)
  346. end)
  347. end)
  348. end
  349. head.Transparency = 1
  350. if ShowVRLaserCursor == 0 then
  351. game:GetService("StarterGui"):SetCore("VRLaserPointerMode", 0)
  352. else
  353. game:GetService("StarterGui"):SetCore("VRLaserPointerMode", 2)
  354. end
  355. game:GetService("StarterGui"):SetCore("VREnableControllerModels", ShowControllerModels)
  356. LeftFoot.Transparency = 1
  357. RightFoot.Transparency = 1
  358. if ConnectedBody == true then
  359. local A0 = Instance.new("Attachment",leftleg)
  360. local A1 = Instance.new("Attachment",rightleg)
  361. local B0 = Instance.new("Attachment",torso)
  362. local B1 = Instance.new("Attachment",torso)
  363. local A2 = Instance.new("Attachment",leftarm)
  364. local A3 = Instance.new("Attachment",rightarm)
  365. local B2 = Instance.new("Attachment",torso)
  366. local B3 = Instance.new("Attachment",torso)
  367. local BallInSocket0 = Instance.new("BallSocketConstraint",leftleg)
  368. BallInSocket0.Attachment0 = A0
  369. BallInSocket0.Attachment1 = B0
  370. local BallInSocket1 = Instance.new("BallSocketConstraint",rightleg)
  371. BallInSocket1.Attachment0 = A1
  372. BallInSocket1.Attachment1 = B1
  373. local BallInSocket2 = Instance.new("BallSocketConstraint",leftarm)
  374. BallInSocket2.Attachment0 = A2
  375. BallInSocket2.Attachment1 = B2
  376. local BallInSocket3 = Instance.new("BallSocketConstraint",rightleg)
  377. BallInSocket3.Attachment0 = A3
  378. BallInSocket3.Attachment1 = B3
  379. if RagdollEnabled == false then
  380. A0.CFrame = CFrame.new(0,0,2)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  381. A1.CFrame = CFrame.new(0,0,2)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  382. A2.CFrame = CFrame.new(0,0,-2)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  383. A3.CFrame = CFrame.new(0,0,-2)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  384. B0.CFrame = CFrame.new(0.5,1,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  385. B1.CFrame = CFrame.new(-0.5,1,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  386. B2.CFrame = CFrame.new(0.5,-1,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  387. B3.CFrame = CFrame.new(-0.5,-1,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  388. else
  389. A0.CFrame = CFrame.new(0,-1,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  390. A1.CFrame = CFrame.new(0,-1,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  391. B0.CFrame = CFrame.new(0.5,1,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  392. B1.CFrame = CFrame.new(-0.5,1,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  393. end
  394. end
  395. while true do
  396. wait()
  397. UpdateFooting()
  398. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement