local Rayfield = loadstring(game:HttpGet('https://[Log in to view URL]'))()

local Window = Rayfield:CreateWindow({
   Name = "99 Nights in the Forest 🔦",
   Icon = 0, -- Icon in Topbar. Can use Lucide Icons (string) or Roblox Image (number). 0 to use no icon (default).
   LoadingTitle = "Example Hub",
   LoadingSubtitle = "by punaszopo",
   ShowText = "Rayfield", -- for mobile users to unhide rayfield, change if you'd like
   Theme = "Default", -- Check https://[Log in to view URL]

   ToggleUIKeybind = "K", -- The keybind to toggle the UI visibility (string like "K" or Enum.KeyCode)

   DisableRayfieldPrompts = false,
   DisableBuildWarnings = false, -- Prevents Rayfield from warning when the script has a version mismatch with the interface

   ConfigurationSaving = {
      Enabled = true,
      FolderName = nil, -- Create a custom folder for your hub/game
      FileName = "CHEAT"
   },

   Discord = {
      Enabled = false, -- Prompt the user to join your Discord server if their executor supports it
      Invite = "noinvitelink", -- The Discord invite code, do not include discord.gg/. E.g. discord.gg/ ABCD would be ABCD
      RememberJoins = true -- Set this to false to make them join the discord every time they load it up
   },

   KeySystem = true, -- Set this to true to use our key system
   KeySettings = {
      Title = "99 Nights in the Forest 🔦 | KEY",
      Subtitle = "Key System",
      Note = "To Obtain The Key Go To My Roblox User (USER: punaszopo), It's Gonna Be In My Bio", -- Use this to tell the user how to get a key
      FileName = "Script Key", -- It is recommended to use something unique as other scripts using Rayfield may overwrite your key file
      SaveKey = false, -- The user's key will be saved, but if you change the key, they will be unable to use your script
      GrabKeyFromSite = true, -- If this is true, set Key below to the RAW site you would like Rayfield to get the key from
      Key = {"1kOlb7824PSXtdcv9"} -- List of keys that will be accepted by the system, can be RAW file links (pastebin, github etc) or simple strings ("hello","key22")
   }
})

local MainTab = Window:CreateTab("🏡 Home", nil) -- Title, Image
local MainSection = MainTab:CreateSection("Infinite Jump")

Rayfield:Notify({
   Title = "You Executed The Script",
   Content = "Very Good Script",
   Duration = 6.5,
   Image = nil,
})

local Button = MainTab:CreateButton({
   Name = "Infinite Jump",
   Callback = function()
   --[[
Š 2022 WeAreDevs | The WeAreDevs Infinite Jump script
Created and distributed by https://[Log in to view URL]
March 9, 2022

Step 1: Inject this script into any game using a Lua injector like JJSploit
Step 2: When you get the ready notification, spam the space bar to jump as many times as you want

Controls:
Reinject the script to toggle the infinite jump script on or off.
Excute Lua "G.infinjump = true" to explicity turn the infinite jump script on
Excute Lua "G.infinjump = false" to explicity turn the infinite jump script off
]]

--Toggles the infinite jump between on or off on every script run
_G.infinjump = not _G.infinjump

if _G.infinJumpStarted == nil then
	--Ensures this only runs once to save resources
	_G.infinJumpStarted = true
	
	--Notifies readiness

	--The actual infinite jump
	local plr = game:GetService('Players').LocalPlayer
	local m = plr:GetMouse()
	m.KeyDown:connect(function(k)
		if _G.infinjump then
			if k:byte() == 32 then
			humanoid = game:GetService'Players'.LocalPlayer.Character:FindFirstChildOfClass('Humanoid')
			humanoid:ChangeState('Jumping')
			wait()
			humanoid:ChangeState('Seated')
			end
		end
	end)
end
   end,
})

local Slider = MainTab:CreateSlider({
   Name = "Walkspeed Slider",
   Range = {0, 300},
   Increment = 1,
   Suffix = "Speed",
   CurrentValue = 16,
   Flag = "Slider1", -- A flag is the identifier for the configuration file, make sure every element has a different flag if you're using configuration saving to ensure no overlaps
   Callback = function(Value)
        game.Players.LocalPlayer.Character.Humanoid.WalkSpeed = (Value)
   end,
})

local Toggle = MainTab:CreateToggle({
   Name = "ESP",
   CurrentValue = false,
   Flag = "Toggle1", -- A flag is the identifier for the configuration file, make sure every element has a different flag if you're using configuration saving to ensure no overlaps
   Callback = function(Value)
            -- Function to create ESP for an entity
local function CreateESP(entity, entityType)
    -- Check if the entity is valid
    if not entity or not entity.Parent then return end

    -- Create a ScreenGui for the ESP if it doesn't already exist
    local screenGui = Instance.new("ScreenGui")
    screenGui.Name = "ESP"
    screenGui.Parent = game.CoreGui

    -- Create ESP components: Box, Name, and Distance Label
    local nameLabel = Instance.new("TextLabel")
    local boxOutline = Instance.new("Frame")
    local distanceLabel = Instance.new("TextLabel")

    -- Name label setup
    nameLabel.Name = "NameLabel"
    nameLabel.Text = entity.Name
    nameLabel.Size = UDim2.new(0, 200, 0, 50)
    nameLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
    nameLabel.BackgroundTransparency = 1
    nameLabel.Parent = screenGui

    -- Box outline setup
    boxOutline.Name = "BoxOutline"
    boxOutline.Size = UDim2.new(0, 100, 0, 100)
    boxOutline.Position = UDim2.new(0, 0, 0, 0)
    boxOutline.BorderSizePixel = 2
    boxOutline.Parent = screenGui

    -- Distance label setup
    distanceLabel.Name = "DistanceLabel"
    distanceLabel.Size = UDim2.new(0, 200, 0, 50)
    distanceLabel.Position = UDim2.new(0, 0, 0, 0)
    distanceLabel.TextColor3 = Color3.fromRGB(255, 255, 0)
    distanceLabel.BackgroundTransparency = 1
    distanceLabel.Parent = screenGui

    -- Set color based on entity type
    if entityType == "Player" then
        nameLabel.TextColor3 = Color3.fromRGB(255, 0, 0)  -- Red for players
        boxOutline.BorderColor3 = Color3.fromRGB(255, 0, 0)
    elseif entityType == "Food" then
        nameLabel.TextColor3 = Color3.fromRGB(0, 255, 0)  -- Green for food
        boxOutline.BorderColor3 = Color3.fromRGB(0, 255, 0)
    elseif entityType == "Monster" then
        nameLabel.TextColor3 = Color3.fromRGB(0, 0, 255)  -- Blue for monsters
        boxOutline.BorderColor3 = Color3.fromRGB(0, 0, 255)
    elseif entityType == "Animal" then
        nameLabel.TextColor3 = Color3.fromRGB(255, 255, 0)  -- Yellow for animals
        boxOutline.BorderColor3 = Color3.fromRGB(255, 255, 0)
    end

    -- Update ESP position and appearance
    game:GetService("RunService").Heartbeat:Connect(function()
        local rootPart = entity:FindFirstChild("HumanoidRootPart") or entity:FindFirstChild("PrimaryPart")
        if rootPart then
            -- Convert 3D world position to 2D screen position
            local screenPos, onScreen = workspace.CurrentCamera:WorldToScreenPoint(rootPart.Position)

            if onScreen then
                -- Position the name label
                nameLabel.Position = UDim2.new(0, screenPos.X - nameLabel.Size.X.Offset / 2, 0, screenPos.Y - nameLabel.Size.Y.Offset / 2 - 50)

                -- Adjust the box outline
                local size = rootPart.Size
                boxOutline.Position = UDim2.new(0, screenPos.X - size.X / 2, 0, screenPos.Y - size.Y / 2 - 50)

                -- Update distance label
                local distance = (game.Players.LocalPlayer.Character.HumanoidRootPart.Position - rootPart.Position).magnitude
                distanceLabel.Text = "Distance: " .. math.floor(distance) .. " studs"
                distanceLabel.Position = UDim2.new(0, screenPos.X - distanceLabel.Size.X.Offset / 2, 0, screenPos.Y - distanceLabel.Size.Y.Offset / 2 - 75)
            else
                -- Hide if off-screen
                nameLabel.Visible = false
                boxOutline.Visible = false
                distanceLabel.Visible = false
            end
        end
    end)

    -- Clean up when entity is removed
    entity.AncestryChanged:Connect(function()
        if not entity.Parent then
            screenGui:Destroy()
        end
    end)
end

-- Function to create ESP for players, food, monsters, and animals
local function DetectEntities()
    -- Detect all players
    for _, player in ipairs(game.Players:GetPlayers()) do
        if player.Character then
            CreateESP(player.Character, "Player")
        end

        -- Listen for new players joining
        player.CharacterAdded:Connect(function(character)
            CreateESP(character, "Player")
        end)
    end

    -- Detect all food (assuming food items are tagged with "FoodTag" or check by name)
    for _, food in ipairs(workspace:GetChildren()) do
        if food:IsA("Model") and food.Name:match("Food") then  -- Assuming food names contain "Food"
            CreateESP(food, "Food")
        end
    end

    -- Detect all monsters (assuming monsters are tagged with "MonsterTag" or check by name)
    for _, monster in ipairs(workspace:GetChildren()) do
        if monster:IsA("Model") and monster.Name:match("Monster") then  -- Assuming monster names contain "Monster"
            CreateESP(monster, "Monster")
        end
    end

    -- Detect all animals (assuming animals are tagged with "AnimalTag" or check by name)
    for _, animal in ipairs(workspace:GetChildren()) do
        if animal:IsA("Model") and animal.Name:match("Animal") then  -- Assuming animal names contain "Animal"
            CreateESP(animal, "Animal")
        end
    end
end

-- Continuously detect new entities (players, food, monsters, animals)
DetectEntities()

-- Recheck every time new entities are added
workspace.ChildAdded:Connect(function(child)
    if child:IsA("Model") then
        -- Detect if it's a player, food, monster, or animal
        if game.Players:GetPlayerFromCharacter(child) then
            CreateESP(child, "Player")
        elseif child.Name:match("Food") then
            CreateESP(child, "Food")
        elseif child.Name:match("Monster") then
            CreateESP(child, "Monster")
        elseif child.Name:match("Animal") then
            CreateESP(child, "Animal")
        end
    end
end)

   end,
})

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: