Seperating Hat from Model

Anyone able to explain to me how one would go about and remove a hat from a model and be able to use it on a different model? A it might be a little too much if the basecolor file includes the hat but the models where the hat is a different material file is one that I am wanting to try removing. Thanks in advance.

Depends. Some units have the hat as a separate model that’s attached to the main one. So it’s a matter of just defining the hat in the animfile and directing to the right place.

However, other times the hat is part of the main model, such as with most TAD units and artillery, in which case… you’re all outta luck. You can technically do it by editing the model and separating it, but that’s about as easy as just making the hat model from scratch.

The first step is to identify which kind of model you’re wanting to modify, there are a few types: those with hats built into their model (Royal Musketeer), those with hats added as a separate model attachment (Musketeer), and those that aren’t rigged to properly support hat attachments (John Black). Anything with an added hat attachment can freely change hats, though not all hats will fit as it were as there’s roughly two sizes of hat where the larger one (typically off Musketeer type models) can work across multiple models while the smaller ones may clip through models (also typically Musketeer types). There are also Artillery unit hats and Cavalry unit hats that may not properly sit on Infantry and vice versa.

For example, the State Militia model in the back here has a cavalry hat that ends up hanging off the side of his head, and the Regulars in front of him have a hat that clips through them.

The game has hats set up two different ways. One codes them as an attachment directly in the animfile, such as cowboy_rider.xml while others like musketeer.xml attach a _hats.xml file. Mimic one of those formats for your modded animfile and all you have to do is enter in the GR2 file address for the hats you want to use where appropriate i.e. units\infantry_ranged\carolean\carolean_age4_hat and make sure it’s properly attached in the animfile’s ModelComp section.

<attachment>hat2
  <component>hat2
    <assetreference type="GrannyModel">
	 <file>units\spc\outlaws\outlaw_rider_hat_us</file>
    </assetreference>
  </component>
  <anim>Idle<component>hat2</component>
  </anim>
</attachment>

<component>ModelComp
  <assetreference type="GrannyModel">
	<file>units\spc\outlaws\outlaw_rider_us</file>
  </assetreference>
  <attach (Don't ask me why it censored this) ="hat2"	     
          frombone="bone_hat"
	      tobone="HEAD"
	      syncanims="0"/>
</component>

You can test whether the hats will work on the model(s) by coding an animfile’s Tech logic so that None tests hat 1, Veteran is hat 2, Guard is hat 3, Imperial is hat 4 etc. so you can test multiple hats quickly. You can also do Variation logic like in regular.xml if you want to test multiple models/hats instead of one per Tech.

3 Likes

So if it is a hat that is part of the G2 model then it is about as easy to build the hat from scratch?