Aller au contenu

Photo

Extending/Overriding ANIM_base


  • Veuillez vous connecter pour répondre
18 réponses à ce sujet

#1
Kilrogg_

Kilrogg_
  • Members
  • 296 messages
I am trying to apply a 'blacksmith' animation as a looping ambient behavior.

So far I have succeeded in extending ambient_ai with a new row (132) that references animations from ANIM_base. They play normally in-game as one would expect, and I've tried many of them just to make sure.

However, the blacksmith animations do not work, and that seems to be because they are mispelled in ANIM_base.

As you can see below from ANIM_Base, the blacksmith animations (ID 3025 to 3028) are written as 'blcksmth'.
Posted Image

The actual name of the animations as seen in the cutscene editor:
Posted Image

To remedy this I edited ANIM_base with the correct animation names and put the GDA in my module/override with an appropriate suffix to override IDs 3025 to 3028, as seen below. (to clarify I did not add 'mh.' to the animation names since none of the other animations in ANIM_base are using prefixes)
Posted Image

This is not working. I also tried overriding the entire ANIM_base instead of M2DAing it, as well as putting the files in core/override instead, but that didnt work either. When I boot the game the NPC defaults to the idle standing animation (ID 1) since it can't find the animation.

Can anyone see something I'm doing wrong?

Modifié par Kilrogg_, 25 mai 2010 - 01:53 .


#2
Kilrogg_

Kilrogg_
  • Members
  • 296 messages
Anyone? :P

#3
Kilrogg_

Kilrogg_
  • Members
  • 296 messages
One last bump...

#4
Charsen

Charsen
  • Members
  • 2 266 messages
did you put this in the C:/...../module/core/override or your Documents/...../override?

i would think that it would need to be in your C:/..../override like .mor files for toolset work.

#5
Kilrogg_

Kilrogg_
  • Members
  • 296 messages
I tried both :(

#6
tmp7704

tmp7704
  • Members
  • 11 156 messages
Did you put an underscore in the name of your fix .gda, by chance?

DA seems to determine the base name of the gda you're trying to extend by splitting the name of file on the rightmost _ it can find. So for example if you name your file anim_blacksmith_fix the engine will think you're trying to alter a non-existing 2da table named anim_blacksmith_

Solution for that is to name your file simply anim_blacksmithfix or something like that, the part after the underscore just needs to be unique enough so it doesn't conflict with other possible .gda files but beyond that it doesn't matter.

edit: from the screenshot it seems your name is anim_base_something.gda that would be the culprit -- there is no table named anim_base_, just anim_ as defined in the 2da_base file.

Modifié par tmp7704, 27 mai 2010 - 04:40 .


#7
Kilrogg_

Kilrogg_
  • Members
  • 296 messages
Hmm good point, I'll try that when I get home.



Thanks :)

#8
Kilrogg_

Kilrogg_
  • Members
  • 296 messages
That still didnt work :(



Oh well. No blacksmith ambient behavior for me.

#9
tmp7704

tmp7704
  • Members
  • 11 156 messages
Did you re-export the .gda after renaming the sheet, or just renamed the existing .gda? I saw some comments from devs that the name of sheet in Excel (the name on its tab, not the name of the file) is somehow very important although it's never specified why.

edit: another thing to consider, how exactly are you expanding the ambient behaviour table? There's a possibility it is that .gda not the anim one that is being affected by the underscore thing, and maybe the fix to animation names in the anim_base isn't even needed in the first place?  Looking into the 2da_base your .gda which extends the patterns should be named ambient_anim_patternssomething with the 'something' part allowed to start with _ i think but it shouldn't have any extra one after that.

Modifié par tmp7704, 28 mai 2010 - 12:12 .


#10
Kilrogg_

Kilrogg_
  • Members
  • 296 messages
My extension of ambient_anim_pattern works fine and for the record it does have an extra underscore (and still works). It's named ambient_anim_patterns_lorep1.



The proof that it works is that I added line 132 to it (it stops at 131) and made that new ambient pattern reference a couple of animations from ANIM_base, like the wounded animation, sleeping, etc. Those all played correctly in-game, so it successfully fetched anims from ANIM_base through my ambient_anim_patterns M2DA.



The problem so far is specific to the blacksmith animations set and yes I've tried not renaming them (that is how I ran into this problem :P).



To confirm the problem is that ANIM_base isn't working, I tried replacing the blacksmith animation names in my ANIM_base 2DA with another animation from the same sheet that I know for a fact works, and that still didn't show up in-game.

#11
tmp7704

tmp7704
  • Members
  • 11 156 messages

Kilrogg_ wrote...

The proof that it works is that I added line 132 to it (it stops at 131) and made that new ambient pattern reference a couple of animations from ANIM_base, like the wounded animation, sleeping, etc. Those all played correctly in-game, so it successfully fetched anims from ANIM_base through my ambient_anim_patterns M2DA.

The problem so far is specific to the blacksmith animations set and yes I've tried not renaming them (that is how I ran into this problem :P).

To confirm the problem is that ANIM_base isn't working, I tried replacing the blacksmith animation names in my ANIM_base 2DA with another animation from the same sheet that I know for a fact works, and that still didn't show up in-game.

Just to verify it further, what happens if you try to replace not the blacksmith animation in the anim_base but one of these other animations you have confirmed to work? Do the working animations change into the other working animations you supply instead, or do they remain as they originally were?

This is pretty curious problem overall because the Toolset has the 'blackmith' pose which can be set for dialogue and cutscenes and it actually works as one would expect, so if things are somehow affected by error in the anim_base then it seems to be rather isolated.

#12
DahliaLynn

DahliaLynn
  • Members
  • 1 387 messages
Though this thread is ages old, I still see no solution.

I'm currently experiencing the same problem. I would like to add mh.wi_sit_ex2 as a sitting animation to the ambient_ ai 2DA. Though it exists as an animation resource in the Cutscene editor, it is not found in ANIM_base.xls.    For this,  I need to add it to the ANIM_base.xls, then reference it in my M2DA ambient_ai snippet. Only it doesn't work.


I've attempted to test various different combinations in a newly added ambient array which references existing animations in ANIM_base.xls and they work fine in game when compiled and tested. My issue is adding an additional animation to ANIM_base in a readable format, then reference it in my new ambient_ai.

My added settings to ANIM_base_test.xls are as follows:

3107 Chair exit version 2 **** 0x04 mh.wi_sit_ex2 **** **** 1 4 0 **** 1

I then reference  id no. 3107 in my ambient.ai_test.xls

Any help would be appreciated.

Modifié par DahliaLynn, 11 février 2013 - 03:27 .


#13
Sunjammer

Sunjammer
  • Members
  • 925 messages
It turns out that what we need is the name of the node in the animation blend tree rather than the name of the animation. To find this we need to open up the appropriate Animation Worksheet (.acb) file, for example, humanoid.acb. We can then search (thankfully the search function does work here) for the name of the animation. When we find the node containing that animation we can then copy the name of the node and insert that into our AMIN_* m2da snippet.

You can download AnimationComposer.rar file from the Single player and core resource source files project. The files are read only so it is a good idea to remove the read only flag (in Windows Explorer) before opening a .acb in the toolset. When you open a .acb file you will likely receive a warning because the toolset cannot find the resource use for the Creature or Placeable Rigs in the database. If you have remove the read only flag you can simply pick another resource from those available in your module's hierarchy.

Modifié par Sunjammer, 11 février 2013 - 09:42 .


#14
DahliaLynn

DahliaLynn
  • Members
  • 1 387 messages
This is an excellent bit of information. Good for anyone reading this thread in the future.

Sadly, while clearly available as an animation resource for the cutscene editor, mh.wi_sit_ex2 is non-existent in any of the animation trees and is the only sit-to-stand animation there is (as opposed to the easily found sit-to-stand-walk left two paces animation) which I cannot use when combining animations together for ambient purposes.

#15
alschemid

alschemid
  • Members
  • 477 messages
Hi Dahlia,

You can create a new node using the animation you want, or attach the animation you want to an exiting node in the appropriate .acb file.

For example, I created a few animations to be used in the dialogue editor as poses in the cinematic tab, to make it work I had to create a new animation worksheet (named pose_something.acb) added the new nodes (blend tree) and attached each new animations (animation stream) to a node, add the appropriate information for them in the inspector, then export->post to local, it will create an .anb file for each node. I had to make an pose_something.gda file in the Label I set the name I would be able to see in the cinematic tab, and in the animation string it is the name of the node used, which is the same as the anb file exported.

I don't know if for the ambient animations you can create a new worksheet for it, as I did for poses, or if you have to use one of the existing ones.

hope it helps somehow... :?

Modifié par alschemid, 12 février 2013 - 01:07 .


#16
DahliaLynn

DahliaLynn
  • Members
  • 1 387 messages
YES! It works! Thank you both Sunjammer and Alschemid.

In order to add mh.wi_sit_ex2 as an ambient animation (however you choose to apply it) I opened humanoid.acb, added an animation stream above the similar sit ->get up animationstreams (for neatness) named it wichair_exit2 (similar to wichair_exit for clarity), designated mh.wi_sit_ex2 as its animation, sent its out node to the main humanoid blendtree, posted to local, added wichair_exit2 to an M2DA ANIM_base snippet, added the new id to my ambient_anim_patterns M2DA snippet, compiled them in the excel processor to create the GDA's and VOILA!

Thank you once again :D

Modifié par DahliaLynn, 15 février 2013 - 09:57 .


#17
alschemid

alschemid
  • Members
  • 477 messages
Yay!! Glad it worked!:wizard:

One thing to keep in mind though is that it will be incompatible with any other mod that changes the humanoid.anb file, if there is any out there.;)

#18
Sunjammer

Sunjammer
  • Members
  • 925 messages
Just brainstorming (i.e. have tested it) but it might be possible to avoid overriding humanoid.anb blend tree.

In theory you could save/export it with another name and then link it to a custom appearance which is identical to the original in every way except for using the custom blend tree. Though scripting you could apply (and later remove) the new appearance at the appropriate moment to enable you to use additional animations.

#19
alschemid

alschemid
  • Members
  • 477 messages
Better yet if someone could make a tool to merge all the custom blend tree from the mods into one .anb file, like FNIS (Fores New Idles in Skyrim) kind of thing.

Modifié par alschemid, 13 avril 2013 - 02:56 .