[open source] sekiro grapple hook

Where Would I put the Animation?

it might be just me but I don’t think the stream link works anymore

Awesome!! This is actually one of the best grapple hooks I’ve ever seen!

It’s not I tested the link and it does not work for me either :stuck_out_tongue:

Would it be possible to butcher this in a way?

you want to change it into R6 but you don’t know how? follow my lead
first, you gotta change it into R6 and then go to ReplicatedStorage.effects.grapple
and open the module then go to line 20

 local hand = character:FindFirstChild("RightHand")

change the “RightHand” into “Right Arm”
this should look like this:

local hand = character:FindFirstChild("Right Arm")

and we’re done!
don’t forget to change the animation into R6

it’s R6 compatible but it just doesn’t show the chain and effect from the grapple

1 Like

This is really cool for pc players but how to make button on mobile so they can use grapple hook.
Please let me know or help me. I really want to use this is my game.

Thanks for fixing that issue but can you tell me where should I put the animations ?
And How do I add button for mobile players ?

Does this work by tweening the humanoid root part, tweening the rod/rope, or something else?

Amazing! Can’t wait to use this in game!

THIS. LOOKS. AWESOME. I was wondering if there was a way to use it on mobile, because a grapple gui just looks weird in places with no grapple areas.

Im not really good at scripting myself but this did the trick for me to make it work on mobile.

You’d want to make the edits in StarterplayerScripts > grapple_client

-- after "basic key input"

local ContextActionService = game:GetService("ContextActionService")

local function MobileHook(actionName, inputState, inputObject)
	if inputState == Enum.UserInputState.Begin then
		if not Grapple.Target then
			return
		end

		GrappleToPosition(Grapple.Target.Position)
	end
end

--Remove these lines if the button is supposed to dissapear when far away
ContextActionService:BindAction("HookMobile", MobileHook, true) 
ContextActionService:SetPosition("HookMobile", UDim2.new(1, -70, 0, 10)) --Add your own position for the mobile gui
ContextActionService:SetTitle("HookMobile", "Grapple")

The one above sets up the GUI permanently, to make it appear only when you are close you’d remove the last ones and add this.

--after the distance variable is defined

if distance < Grapple.MaxRange * 2 then
	ContextActionService:BindAction("HookMobile", MobileHook, true) 
	ContextActionService:SetPosition("HookMobile", UDim2.new(1, -70, 0, 10)) --Add your own position for the mobile gui
	ContextActionService:SetTitle("HookMobile", "Grapple")
else
	ContextActionService:UnbindAction("HookMobile")
end

hope it helps.

1 Like

Out of curiosity, why did you make a import module, a services module etc.? Why did you go to all the effort when you could just define your services at the top of the script like:

local Players = game:GetService("Players")

Edit: I would also love to watch the stream but I wasn’t there when you were doing it live. Mind uploading it somewhere? Thanks for the helpful resource btw.

does this have to be r15? or can it be r6

WHAT?!? That’s amazing! I’ve gotta make a game just so I can use this in it.

it works with r6 but you will have to change r15 body parts to r6 in scripts

How would I be able to do that?

check all scripts and if you see an r15 part mentioned in a line just change the part to r6

Thought so. Thanks

-this is useless text-

GrappleCap

This is SUPER late, but for those who are still unsure, replace the animation ID in StarterPlayer>StarterCharacterScripts>GrappleAnimations>Cast.