Dupe Hero
Key Required Patched

Dupe Hero

Capture Anime!REDzREDz 1K views 691 executesUpdated Jun 24, 2026
1.7/ 5(3 votes)
1233% Positive
Lua Script•167 lines (4116 chars)
local replicatedStorage = game:GetService("ReplicatedStorage")
local players = game:GetService("Players")

local localPlayer = players.LocalPlayer

local healingShirines = workspace.Misc.HealingShrines
local enemies = workspace.Enemies
local pets = workspace.Pets

local heroesData = require(replicatedStorage.Modules.Shared.WorldData.HeroData)
local getGameService = require(replicatedStorage.GetService)

local dataServiceClient = getGameService("DataServiceClient")
local network = getGameService("Network")

local function collectDashBlocks()
	for _, block in workspace.MAP.DashBlocks:GetChildren() do
		network:FireServer("PickUpDashFragment", block.Name)
	end
end

local function getEquippedPets()
	return dataServiceClient:Get("EquippedPets")
end

--[[local function healHeroes()
	local equippedPets = getEquippedPets()
	
	for _, petId in equippedPets do
		if not petId
	end
end]]

local function healHeroes()
	local healingShirine = healingShirines:FindFirstChildOfClass("Model")
	localPlayer.Character:PivotTo(healingShirine.ZONE.CFrame)
	task.wait(2)
end

local function attackEnemy(enemy)
	localPlayer.Character:PivotTo(enemy:GetPivot())
	
	local equippedPets = getEquippedPets()
	local totalHeroDied = 0
	
	local enemyPos = enemy:GetPivot().Position
	
	for index = 1, #equippedPets do
		local petID = equippedPets[index][1]
		local petData = pets:FindFirstChild(petID)
		if not petData then totalHeroDied += 1 continue end
		
		local enemyTarget = petData:FindFirstChild("EnemyTarget")
		local visualModel = petData:FindFirstChild("VisualModel")
		
		if visualModel and (visualModel:GetPivot().Position - enemyPos).Magnitude >= 50 then
			network:FireServer("UnequipHero", petData.Name)
			network:FireServer("EquipHero", petData.Name)
			task.wait(0.5)
		end
		
		if not enemyTarget or enemyTarget.Value ~= enemy then
			network:FireServer("StartBattle", enemy)
			task.wait(1)
			return true
		end
	end
	
	if next(equippedPets) and totalHeroDied == #equippedPets then
		healHeroes()
	end
end

local function dupeHero(heroName)
	assert(heroName, "missing hero name to dupe")
	
	for _, enemy in enemies:GetChildren() do
		if enemy:GetAttribute("NAME") ~= heroName then continue end
		
		local health = enemy:FindFirstChild("Health")
		if not (health and health.Value > 0) then continue end
		
		local STARTED_DUPPING_AT = nil
		
		while task.wait() do
			if health.Value > 0 then attackEnemy(enemy) continue end
			
			if not STARTED_DUPPING_AT then
				STARTED_DUPPING_AT = tick()
			elseif (tick() - STARTED_DUPPING_AT) >= 20 then
				break
			end
			
			for _ = 1, 5 do
				task.spawn(network.InvokeServer, network,"CaptureEnemy", enemy)
			end
		end
	end
end

local function createWindow()
	return loadstring(game:HttpGet(
		"https://raw.githubusercontent.com/tlredz/Library/refs/heads/main/redz-V5-remake/main.luau"
	))():MakeWindow({
		Title = "Capture Anime",
		SubTitle = "by real_redz"
	})
end

local function init()
	local window = createWindow()
	
	local dupeTab = window:MakeTab({"Dupe"})
	
	local heroList = {}
	local heroLookup = {}
	
	for heroTag, heroData in heroesData do
		local displayTag = `{heroData.DN or "Unknown"} (@{heroTag})`
		table.insert(heroList, displayTag)
		heroLookup[displayTag] = heroTag
	end
	
	local SELECTED_DUPE_HERO = nil
	
	dupeTab:AddSection("Dupe Hero")
	
	dupeTab:AddDropdown({
		Name = "Select Hero",
		Options = heroList,
		Callback = function(hero)
			SELECTED_DUPE_HERO = heroLookup[hero]
		end
	})
	
	dupeTab:AddToggle({
		Name = "Start Dupe",
		Callback = function(value)
			if getgenv().DUPE_THREAD then
				task.cancel(getgenv().DUPE_THREAD)
			end
			
			if value then
				local heroName = SELECTED_DUPE_HERO
				
				if not heroName then
					window:Notify({"Error", "Select an hero to Dupe"})
					return
				end
				
				getgenv().DUPE_THREAD = task.spawn(function()
					while task.wait() do
						dupeHero(heroName)
					end
				end)
			end
		end
	})

  	dupeTab:AddParagraph("You need to defeat the enemy for the dupe to work.")
end

init()
--[[for _ = 1, 10 do
	network:FireServer("SelectFirstHero", "HERO_3")
	print("got the best pet!")
end]]

Features & Information

DUPE (BAN RISK)
#dupe#opensource

Community Comments (2)

riblixkintinriblixkintinJul 11, 2026

ga bisa *, ga bisa di executed

HeooHeooJul 13, 2026

um not working? can you fix? or make auto farm script?

More Scripts for Capture Anime!