View Full Version : two questions about 'skeletons'
SirRethcir
09-02-2005, 08:18
First: descr_skeleton.txt
Could someone explain how to make changes in this file effecting the game.
I think several mods using it, though '-utill:animdb' seems not to work.
Seems to be a big secret!? ~:confused:
Second: bone structure in unit models
I guess it is hard coded, according to my tests.
Or is there a way to, let's say, add another bone to a horse?
Thanks in advance! :bow:
descr_skeleton does nothing it seems ro be a redundant file.
I don't think we have a way to add bones to the existing skeletons yet sadly but don't quote me on that.
Hoggy is right...there is currently no way of actually making a fundamental change to the skeleton. Don't let that limit you TOO much though!
First off...DITCH the old anim editor, and get a copy of hte latest version of XIDX. It works much better. Vercingetorix virtually started again with this tool to sort some fundamental bugs in the old one. XIDX is loads better.
Secondly...whilst you ARE limited in the number of bones you have, you can distort the skeletons in all sorts of ways to make new stuff once you get the hang of animations, and provided you have access to a copy of 3DS Max.
The text file descr_skeleton has no effect on the game that I can see. In fact...delete it, and the game runs just fine.
SirRethcir
09-02-2005, 12:26
The text file descr_skeleton has no effect on the game that I can see. In fact...delete it, and the game runs just fine.
I suppose you know this thread:
https://forums.totalwar.org/vb/showthread.php?t=44433
ChivTW-Demo: in descr_skeleton their is for example a skeleton type 'fs_crossbowman'. Is this just a remnant of an sad attempt to implement a new skeleton?
Hoggy is right...there is currently no way of actually making a fundamental change to the skeleton. Don't let that limit you TOO much though!
The limit is beyond your imagination! ~D
First off...DITCH the old anim editor, and get a copy of hte latest version of XIDX. It works much better. Vercingetorix virtually started again with this tool to sort some fundamental bugs in the old one. XIDX is loads better. Yeah, already done!
Secondly...whilst you ARE limited in the number of bones you have, you can distort the skeletons in all sorts of ways to make new stuff once you get the hang of animations, and provided you have access to a copy of 3DS Max.
Not just in the number of bones!
Ok, i wanted an additional bone for the horses.
Due the fact that the dog has more bones than the horse I tried to use these dog bones for the horse. Not good. :embarassed:
Then I had the idea of making generals riding dogs. But to accomplish that I need a new skeleton or the animations are limited to the dog animations.
And all this, because I just wanted to make a more realistic animation for the general on the rearing horse. :dizzy2:
(Besides, changing the general animation won't do it, because general_signal_charge.cas is used for the charge signal -horse not rearing- and for the regroup signal -horse rearing-)
No, th crossbowman in Chivalry works just fine. The point is, all relevant files regarding animations are packed in the files in the animation folder, animations.idx and skeletons.idx and they have to be packed in order to work. The descr_skeleton is redundant, but perhaps it´s a good way to make the list of available skeletons easily acessible.
Ahh, I see... you see...the terminology here is a bit confusing...
You CAN make new 'skeletons' in terms of say fs_dagger kind of skeleton. You CANNOT make a new skeleton in terms of the actual underlying skeleton in the model mesh that is animated.
The files you want to change can be changed. These are animation routines. You will need 3DS Max and Vercingetorix's script to import and export animations.
Use the XIDX tool to extract all the animations and skeleton files, and make yourself a copy of the horse animation sets. Then you can modify the ones you want, and re-pack. It's quite a tricky task at first, but once you have the process done once...it gets easier!
SirRethcir
09-02-2005, 19:44
Ahh, I see... you see...the terminology here is a bit confusing...
You CAN make new 'skeletons' in terms of say fs_dagger kind of skeleton. You CANNOT make a new skeleton in terms of the actual underlying skeleton in the model mesh that is animated.
No confusing at all. Cause I had two question. ~;)
Use the XIDX tool to extract all the animations and skeleton files, and make yourself a copy of the horse animation sets. Then you can modify the ones you want, and re-pack. It's quite a tricky task at first, but once you have the process done once...it gets easier!
Ok, I can extract animation and skeleton files. I can change animation and re-pack them. But how do I make new skeleton files?
Provided you are not intending to try and change any of the actual bones...all you need to do is extract the skeleton.idx and skeleton.dat ( using the batch file provided in XIDX ). Yo uget a whole load of files which are skeleton files. Copy one of these, rename it, add it to the text file 'list' and you have a copy of the skeleton. It will use identical animations to the original. Next...you extract all the animations ( another batch file for this ). Then...using the chpath command, you can set up a folder with a full set of 'copy' animations. Then you start changing stuff. Once you have all teh changes you want done, re-pack all the skeleton and anim packs and you are good to go. A simple change of the skeleton reference the model usies in descr_model_battle and there you are.
Chack back a way for my thread on animation problems... I put a step by step of the working process in there.
You are not actually making a new skeleton file ( even with the evt files provided by Gerome, making new skeleton files from scratch is impossible. #IT just CTD's ) but you can copy an existing one and change all the anims.
What I REALLY wanted to do, but can't is make a skeleton from scratch with different bone layouts .... but that just can't be done with the tools we have.
SirRethcir
09-02-2005, 21:40
Thanks a lot!
I'll give it a try (next week).
But I fear this won't bring me any closer to a solution for this :charge: .
OH..and I forgot...the answer to question 2 is absolutely no way.
I think you will also run into some of the same problems I have hit with what you want to do as well.
If, as you suggest, you use the dog to make a horse, you only have the number of animations that existed in the dog. You can re-design all of those to fit a horse, but you still have issues left as a result. The horse uses a lot more movements as a mount that the dog needs. I expect ( though I haven't actually tried it ) that you will get an error. I know you can't use mounted skeleton routines for foot soldiers. Put an 'hc' anim into a foot unit, and the game gives an error stating that there are insufficient animations in the model. It needs all of it's animations to be 'found' somewhere to work.
So...really, for a mount, you need to start off with a unit that already is used as a mount. This could be a camel, or horse. All can be scaled to horse size. Elephant might work too....possibly. Going to be fiddly to get the proportions right though.
SirRethcir
09-03-2005, 10:41
I had the same thoughts.
But I have another Idea. ~D
It's a variation of my very first approach.
I'll tell you monday if it works.
SirRethcir
09-05-2005, 10:45
It doesn't work. :bigcry:
I give up. :hanged:
It's impossible. :wall:
I´m wondering, if I unpack the skeleton and animation packs, I get quite a bunch of folders with single skeletons and anims, for the different unit types (sordsmen, archers etc). Now, every certain movement is one animation file, right? Knowing this, it should possible to make a new animation "package" by using those single animation, for example an axeman anim using only the slashing animations of a swordsman (for the time being, axefighters use the fs_swordsman animation, resulting in stabs with their axe points - rather ridiculous, dito the Cataphracts stb with their maces) without having to do anything in 3ds Max.
Changing of the actual animations can only be done in 3DS Max...but what you are saying is exactly right.... you could make a slashing anim for cavalry, and make a new fs_hc_axe skeleton setup ( for example ) and use that on your horseman.
No way to re-model anims without Max though.
That´s a great relief, for I don´t have 3ds Max (and even if I did I wouldn´t know how to make anims). Perhaps in some (yet undetermined ~;) ) future time there might be an anim pack ridding all the axemen of their stabbing.
SigniferOne
09-05-2005, 18:19
Well, if you simply take the infantry axeman animation, and insert it into the cavalry skeleton in the way you suggested, then for that animation only he will appear to be "standing" right through the horse -- because after all that is the animation, it concerns the whole body and not jst the upper half. So you will have to convert the anim to be squatted, with legs spread and knees bent, and that will look more proper.
There is neither an infantry nor cavalry axeman animation to begin with, they use the swordsman animation. What I´m talking about is removing the stabbing animations from both the mounted and the infantry swordsman set, thus creating two new sets, one for infantry and one for mounted.
Ok..thats easy enough ~;)
Step 1:
Using the XIDX toolset, extract all the animations and skeletons from the dat and idx files.
Step 2:
Make a copy of both mounted and foot soldiers skeletons. These can be re-named as axemen versions. Add them to the 'list' in the text file.
Step 3:
By referring to the dscr_skeleton text file, you should be able to work out which animation is using a 'slash' attack, and which is a 'stab'. There are a couple of 'stabbing' moves all of which will need to be changed.
Step 4:
Set up a folder under your data/animations/data/animations for EACH of the new skeleton animation sets you are going to make. Then, copy each of the SLASHING animations into that folder, and rename them to match their corresponding stabbing anim.
Step 5:
Now, using the IDX shell and the chpath command, point each of the new skeletons at the new animations that you have put in the new folders.
Step 6: Re-pack skeleton and animation files, and you are ready to roll.. just re-name the skeleton used by your axeman to the all slashing stab-free anims you just created.
Thanks for clearing it up, Bwian. I suppose step 4 includes all other relevant animations needed, such as idle, walking, running, etc.
That´s a great relief, for I don´t have 3ds Max (and even if I did I wouldn´t know how to make anims). Perhaps in some (yet undetermined ~;) ) future time there might be an anim pack ridding all the axemen of their stabbing.
Lol... Considering how expensive Max is if you had it you would learn, trust me. You can also you Gmax 1.2 though, it works with all of Vercingtorix's scripts on import, just not on export. Then you'd just need to have someone export it for you (export it to a .pls or a .p3d format and they should be able to open it). Once you read some tutorials on the subject of modelling, a good concept of animations isn't far behind.
No...not necessary really.
The swordsman animations can all be used exactly as they are, since they actually fit OK. It's only when teh guy tries to stab with an axe that things look silly. The other animations don't actually look wrong, with the unit just holding the axe.
For a foot anim, you need to change only 4 anims....mounted is a bit more, since they have 'high' and 'low' attacks depending on whether they are striking at a mounted or ground unit.
When you make the copy of fs_swordsman .... lets call it fs_axeman ....
By default, all the animations will STILL be looked for in the stock place. All the animations will automatically be found and it will work just like a swordsman. All you need to do is take the stabbing animations, and replace them with copies of the slashing anim in a folder of tehir own, so we don't destroy the stabbing anim for the swordsman. It's only a few. Then...you ONLY re-direct it to your folder for the changed anims. Saves a LOT of work and prevents bloating of teh animation pack.
If you want... I will have a go at doing it when I get in from work later on. Should be straight forward enough to make fs_axeman, fs_fast_axeman and fs_hc_axeman
Have you got an e-mail accuont able to handle a 6mb or so zipfile?
ok...Thats done, and tested. A few brief custom battles have revealed no stabbing from the axemen!!!
I have submitted it over at Twcenter.net under the title of Axemen Animations ...so hopefully, it should be accessable soon.
No...not necessary really.
The swordsman animations can all be used exactly as they are, since they actually fit OK. It's only when teh guy tries to stab with an axe that things look silly. The other animations don't actually look wrong, with the unit just holding the axe.
For a foot anim, you need to change only 4 anims....mounted is a bit more, since they have 'high' and 'low' attacks depending on whether they are striking at a mounted or ground unit.
When you make the copy of fs_swordsman .... lets call it fs_axeman ....
By default, all the animations will STILL be looked for in the stock place. All the animations will automatically be found and it will work just like a swordsman. All you need to do is take the stabbing animations, and replace them with copies of the slashing anim in a folder of tehir own, so we don't destroy the stabbing anim for the swordsman. It's only a few. Then...you ONLY re-direct it to your folder for the changed anims. Saves a LOT of work and prevents bloating of teh animation pack.
If you want... I will have a go at doing it when I get in from work later on. Should be straight forward enough to make fs_axeman, fs_fast_axeman and fs_hc_axeman
Have you got an e-mail accuont able to handle a 6mb or so zipfile?
So, you´re saying an fs_axeman would contain only four .cas files ~:confused: ? Surely not, it would have to contain all the other anims as well, even if there´s no need for renaming them.
Cool thing you made the pack, but still, I´ll give it a try myself, the knowledge might come handy. To quote Kane, there´s much truth to the saying "Knowledge is Power" ;)
You only need to CHANGE 4 anims for fs_axeman.
When you look at the animations files after extraction, each skeleton DOES NOT have it's own animations. Quite a few are re-used un multiple places. For example.... fs_swordsman and fs_fast_swordsman use pretty much the same animations. Only the few animations that allow faster movement are needed. The attack anims are identical. Yet a quick glance through the list shows that each animation is ONLY THERE ONCE. The game does not set up specvial folders for each skeleton with a discreet set of animations in each one. Instead, it lumps them all in one folder, with special folders for particular units, like cavalry, dogs, siege etc.
So...you don't create a full set of animations for EVERY skeleton. When you make the copy of fs_swordsman, it contains a pointer to EVERY animation already in place. These are the ones used by fs_swordsman. You can, in fact, use the animation without making ANY changes, and it will work just fine. The skeleton contains the information ( presumably made up just like descr_skeletons lists them ) which tells the game which moves use what animation routines.
When you make a new animation that is DIFFERENT, then you need to point the new skeleton in a new direction for that animation only. If you made a copy of all the animations for every new skeleton, yuo would end up very quickly building up a HUGE animation archive packed full of copies of the same movements. The human units all use the same skeleton in Max, regardless of the external mesh...so this is the most economical way of doing it.
Does this make sense?
fs_axeman contains NO ANIMATIONS....all it contains are pointers which tell it where to look. It has those already. It looks in the animations pack for the animations, and all is fine. When you make a change to the stock animation, you put it somewhere unique, or give it a unique name, and then use the chpath command to re-set the pointer to your new animation so the game knows where to find it.
Frans Ubberdork
09-08-2005, 00:56
fs_axeman contains NO ANIMATIONS....all it contains are pointers which tell it where to look. It has those already. It looks in the animations pack for the animations, and all is fine. When you make a change to the stock animation, you put it somewhere unique, or give it a unique name, and then use the chpath command to re-set the pointer to your new animation so the game knows where to find it.
Ok let me see if I understand.
In animation folder
You make a copy of the skeleton you wish to use(in this case fs_axemen)
then you:
in 3dmax
You open the .cas file that uses the skelleton you want.(is this step neccissary?)
You open the animations .cas you want to use/change. Then you simply use chpath to point it to the next animation in the sequence you want to use?
Is there something else that needs done?
Or am I using the wrong tool?
I want to use s1 gladius/stabbing animation but I do not want to use his whole set, so I want to see if I can do it myself.
Thanks Bwain 8)
Thomas
Frans..you don't need 3DS Max for this.
You COULD make a whole new animation to replace the stabbing one, but I didn't bother. I just re-used the slashing animation.
The chpath command is run from the IDX Shell ( part of the XIDX toolkit ) and makes a change DIRECTLY in the fs_xxxxxxx file.
All you are actually doing is telling the fs_xxxxx file that the animation it should use when it tries to do that move is somewhere else. It's one of those things that is really awkward to explain....but once you have done it...you wonder why it ever caused you trouble!
You only need to CHANGE 4 anims for fs_axeman.
When you look at the animations files after extraction, each skeleton DOES NOT have it's own animations. Quite a few are re-used un multiple places. For example.... fs_swordsman and fs_fast_swordsman use pretty much the same animations. Only the few animations that allow faster movement are needed. The attack anims are identical. Yet a quick glance through the list shows that each animation is ONLY THERE ONCE. The game does not set up specvial folders for each skeleton with a discreet set of animations in each one. Instead, it lumps them all in one folder, with special folders for particular units, like cavalry, dogs, siege etc.
So...you don't create a full set of animations for EVERY skeleton. When you make the copy of fs_swordsman, it contains a pointer to EVERY animation already in place. These are the ones used by fs_swordsman. You can, in fact, use the animation without making ANY changes, and it will work just fine. The skeleton contains the information ( presumably made up just like descr_skeletons lists them ) which tells the game which moves use what animation routines.
When you make a new animation that is DIFFERENT, then you need to point the new skeleton in a new direction for that animation only. If you made a copy of all the animations for every new skeleton, yuo would end up very quickly building up a HUGE animation archive packed full of copies of the same movements. The human units all use the same skeleton in Max, regardless of the external mesh...so this is the most economical way of doing it.
Does this make sense?
fs_axeman contains NO ANIMATIONS....all it contains are pointers which tell it where to look. It has those already. It looks in the animations pack for the animations, and all is fine. When you make a change to the stock animation, you put it somewhere unique, or give it a unique name, and then use the chpath command to re-set the pointer to your new animation so the game knows where to find it.
Ah, slowly things get clear.
However, could you please relate the chpath command to me? It´s not in the xidx readme; while the program is great, the readme, sadly, is not.
Frans Ubberdork
09-08-2005, 13:50
The chpath command is run from the IDX Shell ( part of the XIDX toolkit ) and makes a change DIRECTLY in the fs_xxxxxxx file.
All you are actually doing is telling the fs_xxxxx file that the animation it should use when it tries to do that move is somewhere else. It's one of those things that is really awkward to explain....but once you have done it...you wonder why it ever caused you trouble!
Cool thanks Bwain, I like idxshell more and more 8)
I have used the scaleing function on it already.
Thomas
vBulletin® v3.7.1, Copyright ©2000-2025, Jelsoft Enterprises Ltd.