So basically I decided to try out and test a specific model on my game, little did I know the model had a virus, something called “Vaccine”, it kept displaying a hint message that was blank and I got rid of the model but still appears, so I created a script to remove it right at the start of the game,
wait(0.1)
while true do
msg = game.Workspace:GetChildren()
for i = 1,
if (msg[i].className == "Message") or (msg[i].className == "Hint") then
msg[i]:remove()
end
end
wait(1)
end
Any other tips on how to remove something like that?
Is the issue that you can’t find the virus script or that you don’t want to remove it because the free model works well aside from the virus? The best solution is to fix it in studio rather than trying to stop it once it’s ingame.
I tried to use an alien model to see if it would follow another npc, but the specific npc would not be followed by anything I didn’t know why, so I just said forget it and deleted the alien and npc. Later, some hints start appearing only when the client is running, I wasn’t able to figure it out but then I searched through my game and found something called “Vaccine”, it kept displaying blank hints nonstop, so I simply made a script that remove messages and hints, but say I wanted to add messages and hints in my game, it would also remove those hints and messages. My question here is would there be anyway to get rid of it without removing all hints and messages?
No I found it, that’s the name, “Vaccine”, I removed it, but then it doesn’t stop what it’s doing even when it’s gone. I tried to look for more but I went through everything and even removed the model.
Try sorting explorer for scripts (ctrl+shift+x “Script”) and look for any other scripts that you didn’t write. It might be hidden in a free model that works and just also does the hint stuff.
“Vaccine”? That thing is still around? Wow, it’s been YEARS since I’ve seen that one. At least 5, maybe 6 or 7. Talk about ancient technology!
Running this in the command bar will print out all scripts in the game:
local function check(instance)
if instance:IsA 'LuaSourceContainer' then
print(instance)
end
end
for i, instance in next, game:GetDescendants() do
pcall(check, instance)
end
Edit: a quicker version with the suggestion below:
local instances = game:GetDescendants()
local i = 0
local function checkAll()
while i < #instances do
i = i + 1
if instances[i]:IsA 'LuaSourceContainer' then
print(instances[i]:GetFullName())
end
end
end
-- pcall is no longer called for every instance in the game,
-- only once every error. Lack of permissions causes
-- lots of errors.
while i < #instances do
pcall(checkAll)
end
I personally use an old plugin (still works maybe?), to remove any potential infectious scripts. I haven’t had any issues with it yet. Let me know how it works though.
There is a good virus scanner I use, it works all the time and is trusted. The creator made a full series of him making it, you can search it up but here is the plugin link: