| |
|
»
»
|
|
| |
Virus in game, can I get some help?
|
|
|
Seriphus
|
  |
| Joined: 05 Dec 2008 |
| Total Posts: 9267 |
|
|
| 07 Jun 2014 06:41 PM |
Long story short, a friend lent me one of his models. Turns out he had a virus in it... and now im stuck with it.
I'm trying a script, but It just cant seem to get rid of the virus
------------------------------------------------ Print_Scan_Results = true ------------------------------------------------ Quarantine_Instead_of_Delete = true ------------------------------------------------ --Script Created by Vitos q = Instance.new("Model") q.Name = "Quarantine" classes = {"AutoJoint", "BackpackItem", "Feature", "Glue", "HtmlWindow", "JointInstance", "LocalBackpack", "LocalBackpackItem", "MotorFeature", "Mouse", "Rotate", "RotateP", "RotateV", "Snap", "StockSound", "VelocityMotor", "Weld", "Geometry", "Timer","ChangeHistoryService"} names = {"Infected", "ROFL", "Snap Reducer", "SnapReducer", "Snap-Reducer", "Anti-Lag", "Anti Lag", "AntiLag", "Wildfire", "AntiVirus", "Anti-Virus", "Anti Virus", "4D Being", "No samurai plzzz", "OHAI", "VIRUS", "Guest_Talking_Script","GuestTalking"} hidden = Instance.new("StringValue") file = {}
function Start() workspace = game.Workspace:GetChildren() qu = q:GetChildren() index = {} virus = 0
function Scan(object) for i = 1,#object do inside = object[i]:GetChildren() if Malicious(object[i]) then virus = virus+1 Name(object[i]) Quarantine(object[i]) else if #inside > 0 then Scan(inside) end end end end
function Malicious(class) for x = 1, #classes do if class.className == classes[x] and #(class:GetChildren()) > 0 then return true end end for x = 1, #names do if string.lower(class.Name) == string.lower(names[x]) then return true end end return false end
function Hidden(class) for x = 1, #classes do if class.className == classes[x] then return true end end return false end
function Name(malware) cur = malware file[1] = "."..cur.Name while cur.Parent.Name ~= "Workspace" do cur = cur.Parent file[#file+1] = "."..cur.Name end inde = "game.Workspace" for j = 1, #file do inde = inde..file[#file+1-j] end file = {} inde = inde.." ("..malware.className.." Class)" index[#index+1] = inde malware.Parent = q end
function Quarantine(malware) if malware ~= nil then contain = malware:GetChildren() if Hidden(malware) then h = hidden:clone() h.Name = malware.Name h.Value = "Original Class: "..malware.className h.Parent = malware.Parent for j = 1, #contain do contain[j].Parent = h end malware:remove() malware = h end contain = malware:GetChildren() for j = 1, #contain do Quarantine(contain[j]) end end end
Scan(workspace)
if virus > 0 and Quarantine_Instead_of_Delete then q.Parent = game.Lighting end
if virus > 0 and Print_Scan_Results then print("--------------------") print("Scan Results:") print("Potentially malicious objects were found in the following locations:") for i = 1, #index do print(" -- "..index[i]) end if Quarantine_Instead_of_Delete then print("These objects have been quarantined to the Lighting Directory.") else print("These objects have been removed.") end print("--------------------") Start() wait() Start() end end
Start() game.Workspace.ChildAdded:connect(Start)
The quarantine fills up with the virus, but it still stays.
Help? |
|
|
| Report Abuse |
|
|
Perci1
|
  |
| Joined: 24 Jan 2011 |
| Total Posts: 1027 |
|
|
| 07 Jun 2014 06:43 PM |
Ugm that's way too much reading.
|
|
|
| Report Abuse |
|
|
|
| 07 Jun 2014 06:44 PM |
| If you quarantine it, they will spread. Most have a script that clones one to Workspace if it disappears somehow. |
|
|
| Report Abuse |
|
|
devChris
|
  |
| Joined: 26 Aug 2010 |
| Total Posts: 7538 |
|
|
| 07 Jun 2014 06:45 PM |
add the name of your virus to names
print("get out") |
|
|
| Report Abuse |
|
|
quickeye
|
  |
| Joined: 10 Jun 2012 |
| Total Posts: 192 |
|
|
| 07 Jun 2014 07:00 PM |
try this change the string name"virus name here" put in command bar and enter
repeat workspace:findFirstChild("4D Being", true):remove() until workspace:findFirstChild("4D Being", true) == nil |
|
|
| Report Abuse |
|
|
|
| 07 Jun 2014 07:03 PM |
classes = {"AutoJoint", "BackpackItem", "Feature", "Glue", "HtmlWindow", "JointInstance", "LocalBackpack", "LocalBackpackItem", "MotorFeature", "Mouse", "Rotate", "RotateP", "RotateV", "Snap", "StockSound", "VelocityMotor", "Weld", "Geometry", "Timer","ChangeHistoryService"} names = {"Infected", "ROFL", "Snap Reducer", "SnapReducer", "Snap-Reducer", "Anti-Lag", "Anti Lag", "AntiLag", "Wildfire", "AntiVirus", "Anti-Virus", "Anti Virus", "4D Being", "No samurai plzzz", "OHAI", "VIRUS", "Guest_Talking_Script","GuestTalking"}
for _, v in pairs(classes) do while game:FindFirstChild(v,true) do game:FindFirstChild(v,true):Destroy() end end
Try this...? |
|
|
| Report Abuse |
|
|
L0cky2013
|
  |
| Joined: 30 Jul 2012 |
| Total Posts: 1446 |
|
|
| 07 Jun 2014 07:10 PM |
for _, v in pairs(classes) do while game:FindFirstChild(v,true) do pcall(function() game:FindFirstChild(v,true):Destroy();end) end end |
|
|
| Report Abuse |
|
|
|
| |
|
|
| |
|
»
»
|
|
|
|
|