#Technical side of Assassin's Creed movement system implementation.

1 messages · Page 1 of 1 (latest)

willow wind
#

Hi, I'd like to ask about technical side of implementing a movement system similiar to Assassin's Creed.

Well, most movement systems are pretty straight forward - usually done by using a Character Controller etc. But Assassin's Creed seems to use a more constrained system - you can jump automatically if you simply hold High Profile + Parkour Up, you can't simply fall of an object because you just slide across its edge. Of course different games in the series have different movement systems (e.g. AC1-AC Revelations gives you more freedom and you can make unsafe jumps that aren't verified by the game, AC3 is where the constraints really kicked in), but they probably have a similar core. But how does the game make these constraints? Is it NavMesh based? Looking at how these games snap you to the surface, quickly sample positions to let you jump across the beams and that you simply slide by the edge of an object if you try to jump off, I guess it's something based on a navmesh? It's probably not the same navmesh as in unity but something more complex that can account many other things (well, ubisoft has its own "Anvil" engine so they could do whatever they want). Or maybe it analyzes the colliders in real time and has some stuff to feed it into the system? idk. I watched some of the "Making Of" videos from ubisoft and there are some parts where it actually shows how the parkour system works - e.g. in Black Flag you can clearly see that a beam's surface is marked with color yellow/purple and there is a bunch of dots floating around some of the objects you can interact with, or in AC1 you can see that there's a rectangular area in front of the player which seems to snap itself to the ground as if it was scanning it. That's why i'm asking this question - how is it really implemented? :P

Maybe someone knows more about AC and is willing to share their knowledge?

dire belfry
#

This movement system exists on roblox but not as its default movement system. Devs open sourced it.
But I’m sure unity devs has open sourced something for that

#

If no one responded, search harder

willow wind
dire belfry
#

Yeah and its the best movement system for realistic games genre

willow wind
dire belfry
#

You can look up “inverse kinematics”. Thats its popular name

#

Also leaning to the direction you’re moving to is scriptable, not built in the inverse kinematics tho

willow wind
#

IK isn't really related to what I'm talking about (I'm talking about the movement system itself, not character limb placement or animations) but I'll take a look into that anyways.

dire belfry
#

Change the walk speed as mini-seconds pass, thats how to make a slow movement initialization

#

And also turn off auto rotation and turn manually with a varying turn speed. If u wanna do that smooth too

#

Im talking from the roblox dev perspective, im sure unity has these possibilities

#

I only started unity yesterday lol

willow wind
#

but - is it just IK or is it a full movement system? i pointed out earlier that i'm researching how the environment analysis and movement system work, not how IK and animations work.

dire belfry
#

No its not a full system. Its multiple separate parts where roblox devs open sourced. I told you the speed trick

willow wind
#

yeah i checked it out a second ago. it's not what i'm looking for, thanks for help tho