print([[ Hello. Welcome to global TAS. To add a savestate, press 1. To remove a savestate, press 2. To go back to a savestate, press LeftControl. To go one frame back, press 4 (four) To go one frame forward, press 5 (five) To save your run to your workspace, press 6. To pause/unpause the TAS, press CapsLock. To toggle the collision, press C. To delete the tas/restore to normal, press Delete. To run your tas, press 0. You can access these keybinds by pressing the "Show Keybinds" button below the tas information. Thank you for using, have fun! ]]);local v0=game:GetService("UserInputService");local v1=game:GetService("RunService");local v2=game:GetService("HttpService");local v3=game:GetService("CoreGui");local v4=game:GetService("Players");local v5=game:GetService("Workspace");local v6=v4.LocalPlayer;local v7=v6:GetMouse();local v8={AddSavestate="One",RemoveSavestate="Two",BackSavestate="LeftControl",GoFrameBack="Four",GoFrameForward="Five",SaveRun="Six",UserPause="CapsLock",CollisionToggler="C",ResetToNormal="Delete",ViewTAS="Zero"};local v9={};local v10={};local v11=0;local v12=true;local v13;local v14;local v15;local v16;local v17;local v18;local v19;local v20;local v21;local v22;local v23;local v24;local v25={Name="Idle",Weight=0 + 0 };local function v26() local v52=0;while true do if (v52==(1500 -(1408 + 92))) then if (v6.Character and v6.Character:FindFirstChild("HumanoidRootPart")) then return v6.Character.HumanoidRootPart.CFrame;end return CFrame.new();end end end local function v27() local v53=1086 -(461 + 625) ;while true do if (v53==(1288 -(993 + 295))) then local v220=0 + 0 ;while true do if (v220==(1171 -(418 + 753))) then if (v6.Character and v6.Character:FindFirstChild("HumanoidRootPart")) then return v6.Character.HumanoidRootPart.Velocity;end return Vector3.new();end end end end end local function v28() return v5.CurrentCamera.CFrame;end local function v29() return {CFrame=v26(),CameraCFrame=v28(),Velocity=v27(),Animation=v25,Time=(tick() -v14) -v11 };end local function v30() local v54=0;while true do if (v54==(0 + 0)) then if v16 then v16.Text="Savestates: " .. #v9 ;end if v15 then v15.Text="Frames: " .. #v10 ;end break;end end end local function v31(v55) local v56=math.floor(v55/(7 + 53) );local v57=math.floor(v55%60 );local v58=math.floor((v55 * 1000)%1000 );local v59=tostring(v58);local v60=tostring(v57);while #v59<(1 + 2) do v59="0" .. v59 ;end while #v60<(1 + 1) do v60="0" .. v60 ;end return v56 .. ":" .. v60 .. "." .. v59 ;end local function v32() if v17 then local v177=529 -(406 + 123) ;local v178;while true do if (v177==(1769 -(1749 + 20))) then v178=(tick() -v14) -v11 ;v17.Text=v31(v178);break;end end end end local function v33(v61) local v62=0;local v63;local v64;while true do if (v62==(0 + 0)) then if ( not v6.Character or not v6.Character:FindFirstChild("HumanoidRootPart") or not v6.Character:FindFirstChild("Humanoid")) then return;end v63=v6.Character.Humanoid;v62=1323 -(1249 + 73) ;end if (1==v62) then local v222=0 + 0 ;while true do if (v222==1) then v62=2;break;end if (v222==(1145 -(466 + 679))) then v64=v6.Character.HumanoidRootPart;v64.CFrame=v61.CFrame;v222=1;end end end if (v62==2) then v64.Velocity=v61.Velocity;v5.CurrentCamera.CFrame=v61.CameraCFrame;v62=6 -3 ;end if ((8 -5)==v62) then v25=v61.Animation or {Name="Idle",Weight=0} ;if (v25.Name and v63) then local v252=v63:FindFirstChildOfClass("Animator");if v252 then local v282=1900 -(106 + 1794) ;local v283;while true do if (v282==0) then v283=v252:GetPlayingAnimationTracks();for v317,v318 in ipairs(v283) do if (v318.Name==v25.Name) then v318:AdjustSpeed(v25.Weight or (1 + 0) );v318.TimePosition=0 + 0 ;break;end end break;end end end end break;end end end local function v34() if v20 then v20:Destroy();end v20=Instance.new("ScreenGui",v3);v20.Name="TASRecorderGUI";v20.ResetOnSpawn=false;v20.ZIndexBehavior=Enum.ZIndexBehavior.Sibling;local v69=Instance.new("Frame",v20);v69.AnchorPoint=Vector2.new(0.5 -0 ,2 -1 );v69.Position=UDim2.new(0.5,114 -(4 + 110) ,585 -(57 + 527) , -(1437 -(41 + 1386)));v69.Size=UDim2.new(103 -(17 + 86) ,170 + 80 ,0 -0 ,289 -189 );v69.BackgroundColor3=Color3.fromRGB(196 -(122 + 44) ,30,30);v69.BackgroundTransparency=0.3 -0 ;v69.BorderColor3=Color3.fromRGB(200,663 -463 ,163 + 37 );v69.BorderSizePixel=1 + 0 ;local v77=Instance.new("UIListLayout",v69);v77.Padding=UDim.new(0,10 -5 );v77.SortOrder=Enum.SortOrder.LayoutOrder;v17=Instance.new("TextLabel",v69);v17.Name="TimeText";v17.LayoutOrder=66 -(30 + 35) ;v17.Size=UDim2.new(1, -10,0 + 0 ,1277 -(1043 + 214) );v17.Position=UDim2.new(0 -0 ,1217 -(323 + 889) ,0 -0 ,585 -(361 + 219) );v17.BackgroundTransparency=321 -(53 + 267) ;v17.Font=Enum.Font.SourceSansBold;v17.Text="0:00.000";v17.TextColor3=Color3.fromRGB(58 + 197 ,668 -(15 + 398) ,1237 -(18 + 964) );v17.TextScaled=true;v17.TextXAlignment=Enum.TextXAlignment.Left;v16=Instance.new("TextLabel",v69);v16.Name="SavestatesCount";v16.LayoutOrder=7 -5 ;v16.Size=UDim2.new(1 + 0 , -10,0 + 0 ,865 -(20 + 830) );v16.BackgroundTransparency=1 + 0 ;v16.Font=Enum.Font.SourceSans;v16.Text="Savestates: 0";v16.TextColor3=Color3.fromRGB(220,346 -(116 + 10) ,220);v16.TextScaled=true;v16.TextXAlignment=Enum.TextXAlignment.Left;v15=Instance.new("TextLabel",v69);v15.Name="FrameCount";v15.LayoutOrder=3;v15.Size=UDim2.new(1 + 0 , -10,738 -(542 + 196) ,32 -17 );v15.BackgroundTransparency=1 + 0 ;v15.Font=Enum.Font.SourceSans;v15.Text="Frames: 0";v15.TextColor3=Color3.fromRGB(220,112 + 108 ,80 + 140 );v15.TextScaled=true;v15.TextXAlignment=Enum.TextXAlignment.Left;local v112=Instance.new("TextButton",v69);v112.Name="KeybindsButton";v112.LayoutOrder=10 -6 ;v112.Size=UDim2.new(1, -(25 -15),1551 -(1126 + 425) ,20);v112.BackgroundColor3=Color3.fromRGB(485 -(118 + 287) ,313 -233 ,1201 -(118 + 1003) );v112.TextColor3=Color3.fromRGB(255,746 -491 ,632 -(142 + 235) );v112.Text="Show Keybinds";v112.Font=Enum.Font.SourceSansBold;v112.TextScaled=true;v19=Instance.new("Frame",v20);v19.Name="KeyBindFrame";v19.AnchorPoint=Vector2.new(0.5 -0 ,1);v19.Position=UDim2.new(0.5 + 0 ,977 -(553 + 424) ,1, -(226 -106));v19.Size=UDim2.new(0 + 0 ,250,0 + 0 ,117 + 83 );v19.BackgroundColor3=Color3.fromRGB(18 + 22 ,23 + 17 ,86 -46 );v19.BackgroundTransparency=0.2 -0 ;v19.BorderColor3=Color3.fromRGB(200,447 -247 ,59 + 141 );v19.BorderSizePixel=1;v19.Visible=false;v19.ClipsDescendants=true;local v131=Instance.new("UIListLayout",v19);v131.Padding=UDim.new(0,9 -7 );v131.HorizontalAlignment=Enum.HorizontalAlignment.Center;v131.SortOrder=Enum.SortOrder.LayoutOrder;local function v136(v159,v160) local v161=753 -(239 + 514) ;local v162;while true do if ((1 + 1)==v161) then v162.Text=v159 .. " : " .. v160 ;v162.TextColor3=Color3.fromRGB(1559 -(797 + 532) ,168 + 62 ,78 + 152 );v162.TextScaled=true;v161=3;end if (v161==3) then v162.TextXAlignment=Enum.TextXAlignment.Left;return v162;end if (v161==(0 -0)) then v162=Instance.new("TextLabel",v19);v162.Name=v160 .. "Label" ;v162.Size=UDim2.new(1203 -(373 + 829) , -10,731 -(476 + 255) ,1145 -(369 + 761) );v161=1 + 0 ;end if (v161==(1 -0)) then v162.Position=UDim2.new(0,5,0 -0 ,238 -(64 + 174) );v162.BackgroundTransparency=1 + 0 ;v162.Font=Enum.Font.SourceSans;v161=2 -0 ;end end end v18=v136(v8.UserPause,"Pause/Unpause");v18.TextColor3=Color3.fromRGB(591 -(144 + 192) ,255,0);v136(v8.AddSavestate,"Add Savestate");v136(v8.RemoveSavestate,"Remove Savestate");v136(v8.BackSavestate,"Go To Last Savestate");v136(v8.GoFrameBack,"Go Frame Back");v136(v8.GoFrameForward,"Go Frame Forward");v136(v8.SaveRun,"Save Run");v136(v8.CollisionToggler,"Toggle Collision");v136(v8.ViewTAS,"View TAS");v136(v8.ResetToNormal,"Stop Recording");v112.MouseButton1Click:Connect(function() local v163=216 -(42 + 174) ;local v164;while true do if (v163==0) then v164=0 + 0 ;while true do if ((0 + 0)==v164) then v19.Visible= not v19.Visible;if v19.Visible then v112.Text="Hide Keybinds";else v112.Text="Show Keybinds";end break;end end break;end end end);end local function v35() local v138=0 + 0 ;while true do if (v138==(1504 -(363 + 1141))) then v12= not v12;if (v6.Character and v6.Character:FindFirstChild("HumanoidRootPart")) then v6.Character.HumanoidRootPart.Anchored=v12;end v138=1;end if (v138==1) then if v12 then local v254=1580 -(1183 + 397) ;while true do if (v254==(0 -0)) then v13=tick();if v17 then v17.TextColor3=Color3.fromRGB(187 + 68 ,191 + 64 ,1975 -(1913 + 62) );end v254=1 + 0 ;end if (v254==(2 -1)) then if v18 then local v306=1933 -(565 + 1368) ;local v307;while true do if (v306==(0 -0)) then v307=1661 -(1477 + 184) ;while true do if (v307==(0 -0)) then v18.Text=v8.UserPause .. " : Paused" ;v18.TextColor3=Color3.fromRGB(255,255,0 + 0 );break;end end break;end end end break;end end else local v255=856 -(564 + 292) ;while true do if (v255==1) then if v18 then local v308=0 -0 ;local v309;while true do if (v308==(0 -0)) then v309=0;while true do if (v309==(304 -(244 + 60))) then v18.Text=v8.UserPause .. " : Unpaused" ;v18.TextColor3=Color3.fromRGB(197 + 58 ,731 -(41 + 435) ,1256 -(938 + 63) );break;end end break;end end end break;end if (v255==(0 + 0)) then if v13 then local v310=1125 -(936 + 189) ;local v311;while true do if (v310==(0 + 0)) then v311=1613 -(1565 + 48) ;while true do if (v311==(0 + 0)) then v11=v11 + (tick() -v13) ;v13=nil;break;end end break;end end end if v17 then v17.TextColor3=Color3.fromRGB(1393 -(782 + 356) ,522 -(176 + 91) ,664 -409 );end v255=1;end end end break;end end end local function v36() table.insert(v9,v10);v10={};v30();end local function v37() if ( #v9>(1 -0)) then local v179=0;local v180;while true do if ((1092 -(975 + 117))==v179) then v180=0;while true do if (v180==0) then table.remove(v9);if (v9[ #v9] and ( #v9[ #v9]>(1875 -(157 + 1718)))) then local v313=0 + 0 ;local v314;while true do if (2==v313) then v14=tick() -v314.Time ;v11=0 -0 ;v313=10 -7 ;end if (v313==1) then v12=true;v13=tick();v313=1020 -(697 + 321) ;end if (v313==3) then v33(v314);v32();break;end if (v313==0) then v314=v9[ #v9][ #v9[ #v9]];v10={};v313=2 -1 ;end end else v10={};v14=tick();v11=0 -0 ;end v180=2 -1 ;end if (v180==1) then v30();break;end end break;end end end end local function v38() if (( #v9>(0 + 0)) and v9[ #v9] and ( #v9[ #v9]>0)) then local v181=0 -0 ;local v182;while true do if (v181==(5 -3)) then v11=0;v33(v182);if v17 then v17.TextColor3=Color3.fromRGB(255,255,0);end v181=3;end if (v181==(1230 -(322 + 905))) then if v18 then local v286=611 -(602 + 9) ;local v287;while true do if (v286==(1189 -(449 + 740))) then v287=872 -(826 + 46) ;while true do if (v287==(947 -(245 + 702))) then v18.Text=v8.UserPause .. " : Paused" ;v18.TextColor3=Color3.fromRGB(255,255,0 -0 );break;end end break;end end end v32();break;end if (v181==(0 + 0)) then local v256=1898 -(260 + 1638) ;while true do if (v256==(441 -(382 + 58))) then v12=true;v181=3 -2 ;break;end if (v256==0) then v182=v9[ #v9][ #v9[ #v9]];v10={};v256=1;end end end if (v181==(1 + 0)) then if (v6.Character and v6.Character:FindFirstChild("HumanoidRootPart")) then v6.Character.HumanoidRootPart.Anchored=true;end v13=tick();v14=tick() -v182.Time ;v181=3 -1 ;end end end end local function v39() if v12 then local v183=0 -0 ;while true do if (v183==(1206 -(902 + 303))) then v1.Heartbeat:Wait();v35();break;end if (v183==(0 -0)) then v35();v1.Heartbeat:Wait();v183=2 -1 ;end end end end local v40=false;local function v41() local v139=0;while true do if (v139==1) then while task.wait(0.05 + 0 ) and v40 do v39();end break;end if (v139==(1690 -(1121 + 569))) then v40=true;v39();v139=215 -(22 + 192) ;end end end local v42=false;local function v43() if v6.Character then local v184=nil;if ( #v10>(684 -(483 + 200))) then local v245=1463 -(1404 + 59) ;while true do if ((0 -0)==v245) then v184=v10[ #v10-(1 -0) ];v10[ #v10]=nil;break;end end elseif (( #v9>0) and ( #v9[ #v9]>(766 -(468 + 297)))) then local v275=0;while true do if (v275==(562 -(334 + 228))) then v184=v9[ #v9][ #v9[ #v9] -(3 -2) ];v9[ #v9][ #v9[ #v9]]=nil;break;end end end if v184 then local v246=0 -0 ;while true do if (v246==1) then v14=tick() -v184.Time ;v11=0 -0 ;v246=1 + 1 ;end if (v246==(239 -(141 + 95))) then v30();break;end if (v246==(0 + 0)) then if not v12 then v35();end v13=tick();v246=1;end if (v246==(4 -2)) then v33(v184);v32();v246=6 -3 ;end end end end end local function v44() v42=true;v43();while task.wait(0.05) and v42 do v43();end end local function v45() local v140=0 + 0 ;local v141;while true do if (v140==0) then v141=v7.Target;if (v141 and v141:IsA("BasePart")) then local v257=0;while true do if ((0 -0)==v257) then v141.CanCollide= not v141.CanCollide;v141.Transparency=(v141.CanCollide and 0) or (0.7 + 0) ;break;end end end break;end end end local function v46() local v142={};for v165=1 + 0 , #v9 do for v185=1 -0 , #v9[v165] do local v186=0 + 0 ;local v187;local v188;local v189;local v190;local v191;local v192;local v193;local v194;local v195;local v196;local v197;local v198;local v199;local v200;local v201;local v202;local v203;local v204;local v205;local v206;local v207;local v208;local v209;local v210;local v211;local v212;while true do if (v186==0) then v187=v9[v165][v185];v188={};v186=1;end if (v186==(167 -(92 + 71))) then v188.time=v187.Time;table.insert(v142,v188);break;end if (v186==3) then v188.VVelocity={v187.Velocity.X,v187.Velocity.Y,v187.Velocity.Z};v188.AAnimation=v187.Animation or {Name="Idle",Weight=0} ;v186=4;end if (v186==(2 -0)) then v188.CCFrame={v189,v190,v191,v192,v193,v194,v195,v196,v197,v198,v199,v200};v188.CCameraCFrame={v201,v202,v203,v204,v205,v206,v207,v208,v209,v210,v211,v212};v186=51 -(25 + 23) ;end if (v186==(1 + 0)) then v189,v190,v191,v192,v193,v194,v195,v196,v197,v198,v199,v200=v187.CFrame:GetComponents();v201,v202,v203,v204,v205,v206,v207,v208,v209,v210,v211,v212=v187.CameraCFrame:GetComponents();v186=2;end end end end return v142;end local function v47() local v143=1886 -(927 + 959) ;local v144;while true do if (v143==0) then v144=v46();if ( #v144>0) then local v265=0 -0 ;local v266;local v267;local v268;local v269;local v270;while true do if (v265==(733 -(16 + 716))) then v267=v267:gsub("[^%w%s]",""):gsub("%s+","_");v268=v267 .. "_" .. v266 .. "_TAS.json" ;v265=3 -1 ;end if (v265==2) then local v294=97 -(11 + 86) ;while true do if (v294==(0 -0)) then v269="TAS_Recorder/" .. v268 ;v270=v2:JSONEncode(v144);v294=286 -(175 + 110) ;end if ((2 -1)==v294) then v265=3;break;end end end if (v265==3) then if writefile then local v315=0 -0 ;while true do if (v315==1) then print("TAS saved to: " .. v269 );break;end if (v315==(1796 -(503 + 1293))) then if not isfolder("TAS_Recorder") then makefolder("TAS_Recorder");end writefile(v269,v270);v315=1;end end else local v316=0;while true do if (v316==(2 -1)) then print(v270);break;end if (v316==(0 + 0)) then print("File saving is not supported in this environment.");print("TAS Data (JSON):");v316=1;end end end break;end if (v265==(1061 -(810 + 251))) then local v295=0 + 0 ;while true do if (v295==(1 + 0)) then v265=1 + 0 ;break;end if (v295==(533 -(43 + 490))) then v266="Generic";v267=game:GetService("MarketplaceService"):GetProductInfo(game.PlaceId).Name;v295=1;end end end end else print("No TAS data to save.");end break;end end end local v48=false;local function v49(v145) if (v48 or ( #v145==0)) then return;end v48=true;print("Starting TAS Playback...");local v146=tick();local v147=1;local v148;if v12 then v35();end local v149=v6.Character;if ( not v149 or not v149:FindFirstChild("HumanoidRootPart")) then local v213=0;while true do local v228=0;while true do if (v228==(733 -(711 + 22))) then if (v213==(0 -0)) then print("Character not found for playback.");v48=false;v213=860 -(240 + 619) ;end if (v213==(1 + 0)) then return;end break;end end end end local v150=v149.HumanoidRootPart;local v151=v149.Humanoid;local function v152() local v166=0;while true do if (v166==(0 -0)) then if v148 then local v276=0 + 0 ;while true do if (0==v276) then v148:Disconnect();v148=nil;break;end end end v150.Anchored=false;v166=1745 -(1344 + 400) ;end if (v166==(407 -(255 + 150))) then task.wait();v35();v166=3 + 0 ;end if (v166==(1 + 0)) then v48=false;print("TAS Playback finished.");v166=8 -6 ;end if (v166==(9 -6)) then if not v12 then v35();end break;end end end v150.Anchored=false;v148=v1.Heartbeat:Connect(function() local v167=tick() -v146 ;local v168=nil;while (v147<= #v145) and (v145[v147].time<=v167) do local v214=1739 -(404 + 1335) ;while true do if (v214==0) then v168=v145[v147];v147=v147 + 1 ;break;end end end if v168 then local v229=0;local v230;local v231;local v232;while true do if (v229==(406 -(183 + 223))) then local v277=0;while true do if ((0 -0)==v277) then v230=v168.CCFrame;v231=v168.CCameraCFrame;v277=1;end if (v277==1) then v229=1;break;end end end if (1==v229) then v150.CFrame=CFrame.new(v230[1 + 0 ],v230[2],v230[3],v230[2 + 2 ],v230[342 -(10 + 327) ],v230[5 + 1 ],v230[345 -(118 + 220) ],v230[3 + 5 ],v230[9],v230[10],v230[460 -(108 + 341) ],v230[6 + 6 ]);v150.Velocity=Vector3.new(v168.VVelocity[4 -3 ],v168.VVelocity[2],v168.VVelocity[3]);v229=2;end if (v229==(1496 -(711 + 782))) then if (v232 and v151) then local v296=0 -0 ;local v297;while true do if ((469 -(270 + 199))==v296) then v297=v151:FindFirstChildOfClass("Animator");if v297 then local v324=v297:FindFirstChild(v232.Name,true);if (v324 and v324:IsA("AnimationTrack")) then if not v324.IsPlaying then v324:Play();end v324:AdjustSpeed(v232.Weight or 1 );end end break;end end end break;end if ((1 + 1)==v229) then v5.CurrentCamera.CFrame=CFrame.new(v231[1],v231[1821 -(580 + 1239) ],v231[8 -5 ],v231[4],v231[5 + 0 ],v231[6],v231[1 + 6 ],v231[4 + 4 ],v231[9],v231[10],v231[28 -17 ],v231[8 + 4 ]);v232=v168.AAnimation;v229=1170 -(645 + 522) ;end end end if (v147> #v145) then v152();end end);end local function v50() local v154=1790 -(1010 + 780) ;local v155;while true do if (v154==(0 + 0)) then v155=0 -0 ;while true do if (v155==3) then print("TAS Recorder Stopped.");break;end if (v155==(0 -0)) then if v21 then v21:Disconnect();end if v22 then v22:Disconnect();end v155=1;end if (v155==(1837 -(1045 + 791))) then if v23 then v23:Disconnect();end if v24 then v24:Disconnect();end v155=4 -2 ;end if (v155==(2 -0)) then if v20 then v20:Destroy();end if (v6.Character and v6.Character:FindFirstChild("HumanoidRootPart")) then v6.Character.HumanoidRootPart.Anchored=false;end v155=508 -(351 + 154) ;end end break;end end end local function v51() v9={};v10={};v11=1574 -(1281 + 293) ;v12=true;v14=tick();v13=tick();local v156=v26();local v157=v28();local v158=v27();table.insert(v9,{{CFrame=v156,CameraCFrame=v157,Velocity=v158,Animation={Name="Idle",Weight=266 -(28 + 238) },Time=0 -0 }});v34();v21=v1.Heartbeat:Connect(function(v169) if not v12 then local v233=0;while true do if (v233==(1560 -(1381 + 178))) then v30();break;end if (v233==0) then v32();table.insert(v10,v29());v233=1;end end end end);v22=v0.InputBegan:Connect(function(v170,v171) if v171 then return;end local v172=v170.KeyCode;if (v172==Enum.KeyCode[v8.UserPause]) then v35();elseif (v172==Enum.KeyCode[v8.AddSavestate]) then v36();elseif (v172==Enum.KeyCode[v8.RemoveSavestate]) then v37();elseif (v172==Enum.KeyCode[v8.BackSavestate]) then v38();elseif (v172==Enum.KeyCode[v8.CollisionToggler]) then v45();elseif (v172==Enum.KeyCode[v8.SaveRun]) then v47();elseif (v172==Enum.KeyCode[v8.GoFrameForward]) then task.spawn(v41);elseif (v172==Enum.KeyCode[v8.GoFrameBack]) then task.spawn(v44);elseif (v172==Enum.KeyCode[v8.ResetToNormal]) then v50();elseif (v172==Enum.KeyCode[v8.ViewTAS]) then if not v48 then local v329=0 + 0 ;local v330;while true do if ((0 + 0)==v329) then v330=v46();v49(v330);break;end end end end end);v23=v0.InputEnded:Connect(function(v173,v174) local v175=0;local v176;while true do if (v175==1) then if (v176==Enum.KeyCode[v8.GoFrameBack]) then v42=false;elseif (v176==Enum.KeyCode[v8.GoFrameForward]) then v40=false;end break;end if (v175==0) then if v174 then return;end v176=v173.KeyCode;v175=1 + 0 ;end end end);if v6.Character then local v215=v6.Character:FindFirstChildOfClass("Humanoid");if v215 then v24=v215.Died:Connect(function() task.wait(0.1 -0 );if not v12 then v35();end print("Character died. Attempting to respawn and go to last savestate.");v6.CharacterAdded:Wait();task.wait(1 + 0 );v38();v35();if not v12 then v35();end end);end end print("TAS Recorder Initialized.");if (v6.Character and v6.Character:FindFirstChild("HumanoidRootPart")) then v6.Character.HumanoidRootPart.Anchored=true;end if v17 then v17.TextColor3=Color3.fromRGB(725 -(381 + 89) ,255,0 + 0 );end if v18 then v18.Text=v8.UserPause .. " : Paused" ;v18.TextColor3=Color3.fromRGB(255,255,0 + 0 );end v35();if not v12 then v35();end end v51();