|
All non player like npcs possible animations
link:https://mega.nz/#!MAJRiQgZ!DH8Y8Uabs...CnC7OJ4xo5sRLk
example:
EnjoyCode:8387 - Sotetseg Walk Animation=8136, Stance Animation=8137: PossibleAnimations: [8136, 8137, 8138, 8139, 8140]
Last edited by ARMAR X K1NG; 09-25-2018 at 08:26 AM.
Not a bad contribution man thanks.
thanks for this!
Did you derive these by comparing the animation bone counts with the amount of bones in the model? I've been meaning to do something like this for a while, wondering if there's any other info you can use (i'm not familiar with the OSRS animation format so maybe there's extra metadata in that that isn't present in 3xx).
Nah. Each animation consists of a list of frames. All those frames belong in the same frame map. You derive the frame map from the stand/walk animation of the monster, and then find all animations that contain frames which belong to that same frame map.
Ultimately gives you the ability to extract a lot more than what Armar's provided. I personally extract these fields, although they can be extended even further.
https://gist.github.com/555196afa946...d4525a162712ea
Oh and this is also a more up to date version of what the OP provided, as of right now it's the current OSRS's cache dump.
So this isn't actually a dataset of animations you can 'correctly' apply to each npc, only ones that share the same frame data as the idle/walk animations. Still clever though
I assume this works because most animations end (maybe start as well?) on the first frame of the idle/walk animations?
It's 100% legitimate, if that's what you're asking.
Each frame map contains all frame ids that function with the said frame(or bone structure). It's basically all the functioning animations' frames put into a single integer set in its essence. If you know one animation of the element you're trying to find, you can find all of them straight away. Since all npcs have their stand/walk animations set in their definitions, you can practically extract them all with zero hassle.
FYI it isn't possible(or at least RS never does it) for an animation to function on a frame and not be a part of that frame map.
If the explanation is unclear, basically in its essence it is..(this is an example from OSRS itself):
Picked a random animation from my list above:
1676 - this belongs to corporeal beast.
Accessed the animation's definitions in the cache, and loaded up the frames from the definitions:
[31064066, 31064073, 31064070, 31064075, 31064071, 31064068, 31064074, 31064065, 31064072, 31064064, 31064069, 31064067, 31064076]
Now I looked up the frame map that these frames belong in. (This is mostly done by looping)
The id of the map turned out to be 304.
Now I printed out all of the frames that belong in that map, giving me a total set of frames:
[30343178, 30605312, 30867462, 31064073, 30539780, 30474241, 30343169, 31064065, 30343170, 30670852, 30670851, 30867463, 30867461, 30867456, 30277636,
30277632, 30867460, 30539782, 30670853, 30670849, 30670850, 30539781, 30539783, 30539779, 30539778, 30539776, 30539777, 30867458, 30277634, 30605316,
30343174, 30670848, 30343173, 30277635, 30867457, 30867459, 30277633, 30343181, 31064075, 30343180, 30343184, 30605317, 31064067, 30605314, 30343176,
31064074, 31064066, 30343168, 30343171, 30343172, 30343175, 30474246, 30474240, 30605313, 31064076, 30343185, 30343177, 31064072, 31064064, 30343179,
30605315, 31064070, 31064071, 31064069, 31064068, 30474242, 30474243, 30474245, 30474244, 30343182, 30343183]
I colour-coded a few the frames(check them all if you wish, ain't got the time), showing you how all of the frames that were inside the animation exist in this same frame map. They do not exist in any other map.
Once you know the frame map, you can just loop all of the animations' frames, mark down the ones that have their frames belong in the map and you'll end up with an accurate list of animations.
u just said a bunch of stuff i already know and didnt answer the question
It has no correlation to which point an animation starts at. I'll say it again in a single sentence. All the frames of all the animations that function on a single skeleton belong in the same frame(or skeleton) map. If you know the animation, you can use any frame in that animation to locate the map, and thus, all the other animations that fit the skeleton.
I can't explain it any clearer than I have.
« Previous Thread | Next Thread » |
Thread Information |
Users Browsing this ThreadThere are currently 1 users browsing this thread. (0 members and 1 guests) |