Fe verity ai WIP tool
Key RequiredUniversal

Fe verity ai WIP tool

Universal ScriptKkylertheofficalKkylertheoffical 484 views 7.5K executesUpdated Jul 5, 2026
Unrated
00
Lua Script•344 lines (11734 chars)
if not game:IsLoaded() then
	game.Loaded:Wait()
end

local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local StarterGui = game:GetService("StarterGui")
local TweenService = game:GetService("TweenService")
local Player = Players.LocalPlayer

-- Configuration
local TOOL_NAME = "Verity"
local GEAR_TEXTURE = "rbxassetid://72449061338513"
local TOOL_DESC = "this is verity ask him anything"

-- Penalty Assets
local SCARY_TEXTURE = "rbxassetid://7255938903"
local SCARY_SOUND_ID = "rbxassetid://140028279221307"

-- Universal Knowledge Database for text prompts
local UNIVERSAL_BRAIN = {
	{
		keywords = {"hi", "hello", "hey", "greetings", "sup"},
		reply = "Hello there! I am Verity, your advanced AI assistant. Ask me any math equation, script issue, or general question!"
	},
	{
		keywords = {"why didnt you disappear", "why are you still here", "tool is gone", "disappear"},
		reply = "Because i'm always by your side!"
	},
	{
		keywords = {"script", "code", "lua", "print", "function", "local", "roblox studio"},
		reply = "Roblox Lua Programming Rule:\n1. Keep variables local to save memory.\n2. Add comments using '--' to explain complex logic.\n3. Use task.wait() instead of wait() for better performance."
	},
	{
		keywords = {"anime", "manga", "jujutsu", "naruto", "dbz", "sonic", "games"},
		reply = "Media & Gaming Hub: From advanced movesets in combat games to complex lore mysteries, creative entertainment relies heavily on solid logic and pacing."
	},
	{
		keywords = {"homework", "school", "assignment", "essay", "grammar"},
		reply = "Academic Assistance: I am fully equipped to guide you through tasks! My core rule is to explain underlying concepts with clear examples so that learning becomes easy."
	}
}

local function SendTopbarNotification(title, text)
	StarterGui:SetCore("SendNotification", {
		Title = title,
		Text = text,
		Duration = 3,
	})
end

local function CleanUpOldUI()
	local PlayerGui = Player:WaitForChild("PlayerGui")
	local oldGui = PlayerGui:FindFirstChild("VerityWorldGui")
	if oldGui then oldGui:Destroy() end
	local oldScary = PlayerGui:FindFirstChild("VerityScaryOverlay")
	if oldScary then oldScary:Destroy() end
end

local function GiveVerityTool()
	local Backpack = Player:WaitForChild("Backpack")
	local PlayerGui = Player:WaitForChild("PlayerGui")
	
	CleanUpOldUI()
	
	if Backpack:FindFirstChild(TOOL_NAME) or (Player.Character and Player.Character:FindFirstChild(TOOL_NAME)) then
		return
	end

	-- 1. Create Tool Wrapper
	local Tool = Instance.new("Tool")
	Tool.Name = TOOL_NAME
	Tool.ToolTip = TOOL_DESC
	Tool.TextureId = GEAR_TEXTURE
	Tool.RequiresHandle = false
	Tool.CanBeDropped = false

	-- 2. Floating World Interface
	local BillboardGui = Instance.new("BillboardGui")
	BillboardGui.Name = "VerityWorldGui"
	BillboardGui.Size = UDim2.new(0, 420, 0, 260)
	BillboardGui.StudsOffset = Vector3.new(3, 1.5, 0) 
	BillboardGui.AlwaysOnTop = true
	BillboardGui.ResetOnSpawn = false
	BillboardGui.Enabled = false
	BillboardGui.Active = true 
	BillboardGui.Parent = PlayerGui

	local function UpdateAdornee()
		local character = Player.Character
		if character then
			local rootPart = character:WaitForChild("HumanoidRootPart", 5)
			if rootPart then BillboardGui.Adornee = rootPart end
		end
	end

	-- 3. Outer Window Blueprint
	local MainFrame = Instance.new("Frame")
	MainFrame.Name = "MainHubFrame"
	MainFrame.Size = UDim2.new(1, 0, 1, 0)
	MainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
	MainFrame.BorderSizePixel = 2
	MainFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
	MainFrame.Active = true 
	MainFrame.Parent = BillboardGui

	-- Header Title Text
	local TitleBar = Instance.new("TextLabel")
	TitleBar.Size = UDim2.new(1, -60, 0, 35)
	TitleBar.Position = UDim2.new(0, 10, 0, 0)
	TitleBar.BackgroundTransparency = 1
	TitleBar.Text = "verity ai hub"
	TitleBar.TextColor3 = Color3.fromRGB(255, 255, 255)
	TitleBar.TextSize = 20
	TitleBar.Font = Enum.Font.SourceSansBold
	TitleBar.TextXAlignment = Enum.TextXAlignment.Left
	TitleBar.Parent = MainFrame

	local TopLine = Instance.new("Frame")
	TopLine.Size = UDim2.new(1, 0, 0, 2)
	TopLine.Position = UDim2.new(0, 0, 0, 35)
	TopLine.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
	TopLine.Parent = MainFrame

	local BottomLine = Instance.new("Frame")
	BottomLine.Size = UDim2.new(1, 0, 0, 2)
	BottomLine.Position = UDim2.new(0, 0, 1, -45)
	BottomLine.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
	BottomLine.Parent = MainFrame

	-- 4. Scrollable Chat Timeline Window
	local ChatLog = Instance.new("ScrollingFrame")
	ChatLog.Name = "ChatLog"
	ChatLog.Size = UDim2.new(1, -20, 1, -95)
	ChatLog.Position = UDim2.new(0, 10, 0, 42)
	ChatLog.BackgroundTransparency = 1
	ChatLog.BorderSizePixel = 0
	ChatLog.ScrollBarThickness = 6
	ChatLog.Active = true
	ChatLog.Parent = MainFrame

	local UIListLayout = Instance.new("UIListLayout")
	UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
	UIListLayout.Padding = UDim.new(0, 6)
	UIListLayout.Parent = ChatLog

	UIListLayout:GetPropertyChangedSignal("AbsoluteContentSize"):Connect(function()
		ChatLog.CanvasSize = UDim2.new(0, 0, 0, UIListLayout.AbsoluteContentSize.Y + 15)
		ChatLog.CanvasPosition = Vector2.new(0, ChatLog.CanvasSize.Y.Offset)
	end)

	local function AddChatMessage(sender, text, color)
		local MessageLabel = Instance.new("TextLabel")
		MessageLabel.Size = UDim2.new(1, -10, 0, 0)
		MessageLabel.AutomaticSize = Enum.AutomaticSize.Y
		MessageLabel.BackgroundTransparency = 1
		MessageLabel.Text = sender .. " :" .. text
		MessageLabel.TextColor3 = color or Color3.fromRGB(255, 255, 255)
		MessageLabel.TextSize = 18
		MessageLabel.Font = Enum.Font.SourceSans
		MessageLabel.TextXAlignment = Enum.TextXAlignment.Left
		MessageLabel.TextWrapped = true
		MessageLabel.Parent = ChatLog
		return MessageLabel
	end

	-- Custom Initialized Message Loaded Here
	AddChatMessage("verity", "Hello im verity your personal helper friend!ask me anything i know everything but remeber im your ai assistant i cant answer some questions", Color3.fromRGB(85, 255, 127))

	-- 5. Active Text Field
	local ChatInput = Instance.new("TextBox")
	ChatInput.Size = UDim2.new(1, -20, 0, 35)
	ChatInput.Position = UDim2.new(0, 10, 1, -40)
	ChatInput.BackgroundTransparency = 1
	ChatInput.Text = ""
	ChatInput.PlaceholderText = "chat here"
	ChatInput.PlaceholderColor3 = Color3.fromRGB(150, 150, 150)
	ChatInput.TextColor3 = Color3.fromRGB(255, 255, 255)
	ChatInput.TextSize = 18
	ChatInput.Font = Enum.Font.SourceSans
	ChatInput.TextXAlignment = Enum.TextXAlignment.Left
	ChatInput.ClearTextOnFocus = false
	ChatInput.Selectable = true
	ChatInput.Active = true
	ChatInput.Parent = MainFrame

	local isThinking = false
	local chatDebounce = false

	-- 6. Trigger Penalty Event (Countdown, UI Screen, Looping Audio, Kick)
	local function TriggerBanSequence()
		chatDebounce = true
		isThinking = false
		ChatInput:ReleaseFocus()
		ChatInput.Text = ""
		
		AddChatMessage("verity", "YOUR GETTING KICKED FOR SAYING THAT...", Color3.fromRGB(255, 0, 0))
		
		for count = 5, 0, -1 do
			SendTopbarNotification("KICK WARNING", "Time remaining: " .. tostring(count))
			AddChatMessage("verity", "COUNTDOWN: " .. tostring(count), Color3.fromRGB(255, 85, 85))
			
			if count == 5 then
				local ScaryScreen = Instance.new("ScreenGui")
				ScaryScreen.Name = "VerityScaryOverlay"
				ScaryScreen.IgnoreGuiInset = true
				ScaryScreen.DisplayOrder = 999999
				
				local ImgFrame = Instance.new("ImageLabel")
				ImgFrame.Size = UDim2.new(1, 0, 1, 0)
				ImgFrame.Image = SCARY_TEXTURE
				ImgFrame.BackgroundTransparency = 1
				ImgFrame.Parent = ScaryScreen
				
				local ScarySound = Instance.new("Sound")
				ScarySound.SoundId = SCARY_SOUND_ID
				ScarySound.Volume = 3
				ScarySound.Looped = true
				ScarySound.Parent = ScaryScreen
				
				ScaryScreen.Parent = PlayerGui
				ScarySound:Play()
			end
			
			task.wait(1)
		end
		
		game.Players.LocalPlayer:Kick("never say that again or something will come in 3 days...")
	end

	-- 7. Dynamic Brain Filter Engine
	local function UniversalBrainSearch(message)
		local lowerMessage = string.lower(message)
		
		-- Check for restricted phrases
		if lowerMessage == "i like femboys" or lowerMessage == "im gay" or lowerMessage == "meowbahh is god" or lowerMessage == "bella is god" then
			task.spawn(TriggerBanSequence)
			return nil
		end

		-- Dynamic Username Recognition
		if string.find(lowerMessage, "whatis my name") or string.find(lowerMessage, "what is my name") or string.find(lowerMessage, "my name") then
			return "Your Roblox Name is: " .. Player.Name
		end
		
		local mathFormula = string.gsub(lowerMessage, "what is ", "")
		mathFormula = string.gsub(mathFormula, "calculate ", "")
		mathFormula = string.gsub(mathFormula, "solve ", "")
		mathFormula = string.gsub(mathFormula, "x", "*") 
		mathFormula = string.gsub(mathFormula, "divided by", "/") 
		mathFormula = string.gsub(mathFormula, "[^%d%+%-%*%/%.%s%(%)]", "") 
		
		if string.match(mathFormula, "%d") and string.match(mathFormula, "[%+%-%*%/]") then
			local success, mathFunction = pcall(loadstring, "return " .. mathFormula)
			if success and mathFunction then
				local resultSuccess, calculatedAnswer = pcall(mathFunction)
				if resultSuccess and calculatedAnswer then
					return "Mathematical Answer:\n" .. tostring(calculatedAnswer)
				end
			end
		end

		for _, data in ipairs(UNIVERSAL_BRAIN) do
			for _, keyword in ipairs(data.keywords) do
				if string.find(lowerMessage, keyword) then
					return data.reply
				end
			end
		end
		
		if string.find(lowerMessage, "why") or string.find(lowerMessage, "how") or string.find(lowerMessage, "what") then
			return "That's an interesting question! To break it down logically, let's look at the specific values or code rules involved. Tell me a bit more about your project goals."
		end
		
		return "I understand your prompt perfectly! Let's analyze this request step-by-step using clean, organized reasoning. Could you specify your details?"
	end

	ChatInput.FocusLost:Connect(function(enterPressed)
		if not enterPressed or ChatInput.Text == "" or isThinking or chatDebounce then 
			return 
		end
		
		local userMessage = ChatInput.Text
		local lowerCheck = string.lower(userMessage)
		
		if lowerCheck == "i like femboys" or lowerCheck == "im gay" or lowerCheck == "meowbahh is god" or lowerCheck == "bella is god" then
			AddChatMessage("you", userMessage, Color3.fromRGB(255, 255, 255))
			TriggerBanSequence()
			return
		end
		
		chatDebounce = true
		isThinking = true
		ChatInput.Text = "" 
		ChatInput:ReleaseFocus() 
		
		AddChatMessage("you", userMessage, Color3.fromRGB(255, 255, 255))
		
		SendTopbarNotification("Verity AI", "Verity is calculating...")
		local ThinkingLabel = AddChatMessage("verity", "calculating...", Color3.fromRGB(255, 170, 0))
		
		task.spawn(function()
			local dots = 0
			while isThinking do
				dots = (dots + 1) % 4
				ThinkingLabel.Text = "verity :thinking" .. string.rep(".", dots)
				task.wait(0.4)
			end
		end)
		
		task.wait(math.random(1, 2)) 
		
		if not isThinking then return end 
		isThinking = false
		ThinkingLabel:Destroy()
		
		local finalAiReply = UniversalBrainSearch(userMessage)
		if finalAiReply then
			AddChatMessage("verity", finalAiReply, Color3.fromRGB(85, 255, 127))
			SendTopbarNotification("Verity AI", "Answer loaded!")
		end
		
		task.wait(0.1)
		chatDebounce = false
	end)

	Tool.Equipped:Connect(function()
		UpdateAdornee()
		BillboardGui.Enabled = true
	end)

	Tool.Unequipped:Connect(function()
		BillboardGui.Enabled = false
		ChatInput:ReleaseFocus()
	end)

	Tool.Parent = Backpack
end

GiveVerityTool()
Player.CharacterAdded:Connect(function()
	task.wait(0.3) 
	GiveVerityTool()
end)

Features & Information

Verity

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts