GoM,
Ahh ok, so it's fine to weld verts in one group? I hadn't tried welding as the readme states it will make M2TW crash.
Cheers![]()
GoM,
Ahh ok, so it's fine to weld verts in one group? I hadn't tried welding as the readme states it will make M2TW crash.
Cheers![]()
Hi AD1
Yes, but still be careful, I haven't tested it out yet but just by going on how Milkshape stores values internally and in ms3d's, and how we convert to Mesh, I'd just weld vertices that share uv values, remember that the Mesh format is preprocessed to just plug straight into the engine. Of course now that everything is out there, there is always room for intrepid test pilots of new methodsOriginally Posted by AlphaDelta1
![]()
.
If you try it, let us know how it goes.
To easily make sure that you're only working on one group - menu/edit/select all, menu/edit/hide selection and use the tab/groups/hide button to unhide the group you want to work on. You probably already know this but I thought I'd put it in this post in case anybody else wants to try.
Cheers
GrumpyOldMan
I have both a problem and both a solution.
Problem: I wanted to change the helms of the armoured sergeants with a modified version of the byz infantry bacinet.
I followed the instructions, deleted the groups, merge into the converter, etc but while the meshed figure displayed correctly into the converter when I pressed "proceed" the program stuck (probably in an endless loop) as the output file continued to grow endlessly.
I tried to switch the meshes to be merged, no results, same error.
So I exported the modified bacinet in 3ds ascii format, which is just a sequence of verteces and faces, imported it into the armored sergeant mesh, deleted their helms, making sure to copy the "comment" of the helm group (the one where there is the body part, group name and a flag). Assign material to the group, skinned (not very accurate as you'll see in the image, but it was just a test), assign the head_bone, save, convert in mtw2 format et voilà:
This also means that I can use my beloved 3ds to model new stuff and then import it in milkshape and using it with the converter.
Hi RB1
Have you still got the original ms3d files? First question, did you try to copy over one of the original files? The Merge facility shouldn't have let you, but this sounds like the sort of error that comes up if you do copy over them (the Merge facility does a second run over the two files, while it's writing the third).Originally Posted by Re Berengario I
I was discussing with KE how long it would take for people to realise that Milkshape has an extensive import facility as well as just being able to open ms3d filesOriginally Posted by Re Berengario I
![]()
. I'll make this a separate post as well but I'll let you know what somebody over at the Milkshape forums has told me. There is a plugin for 3ds Max that allows you to export figures (eg RTW .CAS) to Valve .SMD format, these can then be imported to Milkshape
![]()
But he's not sure if it works the other way.
Cheers
GrumpyOldMan
Hi All
I've been ferreting around at various forums trying to solve the problem of moving RTW cas files from 3ds Max into the converter. One guy gave me one tip - to export the loaded cas as an .smd file format, apparently this works. However this not without it's own issues as all groups are merged before conversion.
However, there are a large number of game specific plugins for both Max and Milkshape, it's just going to be a matter of finding which works best in retaining groups, vertex assignments, weights etc.
If I hear any further news, I'll post it up.
Cheers
GrumpyOldMan
Hi All
I came across a program that might be handy for the more artistically inclined among us. It's called Tattoo from www.Terabit-Software.co.uk . It's a 3d painter which means you actually texture directly onto the mesh. It does have limitations, you have to convert the group/s to .obj format and it saves textures as .png format, but it does give you the chance to paint in the round.
It's licenceware, if you're using it for private purposes like modding it's free.
Cheers
GrumpyOldMan
Poking around in the siege engines. The texture paths are stored with the
mesh so we need to modify the mesh reading function. Apart from having
to read the data in the the Aztec variant format, (lousy name but that's
what we called it), the final granny strings are like this:
as opposed to a regular unit which looks like this:Code:0 0 0 0 0 0 0 0 0 0 0.00650477409363 1.73901617527 -0.0655624866486 3.33944630623 0 0 0 0 Processing bone strings, number = 8 9 bone_body 0 13 bone_Rwheel01 1 13 bone_Rwheel02 2 13 bone_Lwheel01 3 13 bone_Lwheel02 4 10 bone_winch 5 8 bone_arm 6 9 bone_rock 7 3 0 1 0 19 0 0 0 4 0 0 0 0 0 0 0 1 0 0 0 0 0 39 0 1 4 20 0 0 0 number of chars 15 siegeenginelod0 17 0 0 0 45 siege_engines/textures/siege_catapult.texture 0 0 0 0 50 siege_engines/textures/siege_catapult_bump.texture 51 siege_engines/textures/siege_engine_overlay.texture 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 1 0 0 0 3 0 0 0 18 192 63 0 4 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 9 0 0 0 0 0 0 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 2 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 2 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 2 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 2 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 2 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 2 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 2 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 2 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 38 0 1 0 21 0 0 0 39 0 20 0 0 0 0.678406953812 1.1524848938 0.0618959590793 3.95701169968
In other words, the granny rules for siege weapons are:Code:0 0 0 0 0 0 0 0 0 0 Bounding sphere data: 4 floats 0.484047710896 0.390661180019 0.10376881063 1.71157550812 0 0 0 0 Processing bone strings, number = 26 11 bone_pelvis 0 11 bone_rthigh 1 14 bone_rlowerleg 2 10 bone_rfoot 3 8 bone_abs 4 10 bone_torso 5 9 bone_head 6 8 bone_jaw 7 12 bone_eyebrow 8 14 bone_rclavical 9 14 bone_rupperarm 10 11 bone_relbow 11 10 bone_rhand 12 14 bone_lclavical 13 14 bone_lupperarm 14 11 bone_lelbow 15 10 bone_lhand 16 11 bone_lthigh 17 14 bone_llowerleg 18 10 bone_lfoot 19 13 bone_weapon01 20 11 bone_weapon 20 13 bone_weapon02 21 13 bone_weapon03 22 13 bone_shield01 22 11 bone_shield 22 3 0 1 0 62 0 0 0 4 0 1 0 0 0 0 0 1 0 0 0 0 0 39 0 1 4 63 0 0 0 number of chars 13 characterlod0 17 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 1 0 0 0 3 0 0 0 18 192 63 0 4 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 9 0 0 0 0 0 0 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 2 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 2 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 2 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 2 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 2 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 2 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 2 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 2 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63 0 0 0 0 0 0 0 0 38 0 1 0 64 0 0 0 39 0 63 0 0 0 0.484047710896 0.390661180019 0.10376881063 1.71157550812 Bytecount is now 170031
After the 17 0 0 0 which seems to signal the end of the bone strings section,
if the next int is 0, process as a regular unit. If it is non-zero, its a char count
and look for three path names to find the textures. After the first two path
names, expect a zero int for no good reason (this is granny), then read
the third texture file name. Finally, finish off with the usual grannys to end
the .mesh file.
For people who like file format stuff, raise your hands, anyone?, anyone?
Ok, I like file format stuff, the rules are: if there isn't any texture paths,
you have to have 4 int zeroes, 3 of which mean zero length path names,
and 1 which is just there to be annoying. This rule applies to regular
units. If there is texture data, i.e. for the siege weapons, you
have three ints for specifying path lengths, plus the actual paths, and the 1 zero int to be annoying. After that, you have the usual concluding
granny strings.
For people reading the byte strings: yes, the 0 0 128 63
is the byte code for 1.0 but this doesn't really elucidate things because we
don't know what it's used for.
Anyway:
Where do we put this texture info in the .ms3d format? I would suggest,
but we can think about it, in the material or joint comments section. We
haven't used these yet and they allow unlimited comment lengths for all
the different siege weapon paths. (Each siege weapon has its own skeleton
and unique sets of texture files.)
Yep I still had the original files but I saved the modified meshes with the deleted groups using different names and I saved the merged one using a third different one.Originally Posted by GrumpyOldMan
If you want I can PM you the files for testing purpouse as I solved the problem in an other way merging stuff into milkshape with the import function.
Btw, I used 3ds ASC formart because it's just rough geometry data, other formats, like the OBJ one, add another skeleton or other unnecessary stuff which results in an error inside MTW2.
Hi RBI
PM me the ms3d files that you tried to merge, I'd like to see what is happening.Originally Posted by Re Berengario I
Cheers
GrumpyOldMan
Hi RBI
I'm just guessing but it sounds like the Merge Ms3d was trying to read something that wasn't there, trying to do it's best, it gave you garbage from random memory. Most likely you had inadverdently deleted the skeleton from the helmet ms3d, this would also cause the type of error you described. Both ms3d's in the merge must be set up as valid m2tw mesh groups which means the skeleton must be present in both.Originally Posted by Re Berengario I
Cheers
GrumpyOldMan
Quick question but probably an easy answer (its my first time modding anything ever outside of text files, so please be kind).
After merging the parts that I want, the unit doesnt save as a MS3D file but as a plain old file. This means that I cant convert them back to .Mesh for MTWII. Any solutions?
This seems to be the material part of the file Caliban mentioned in the file format:Originally Posted by KnightErrant
The last bytes in both files could possibly be the rest of the stuff in the material part here, have to admit I dont know what they're for though 1.0 looks like a value some of them would use. As for how to store the texture information, pretty certain the ms3d format should allow you to do this, the unit models are unusual rather than the norm in not having textures specified in the file.Originally Posted by Caliban
Hi T
Well, this one has got me baffled. The way the code is written, there should be no way that the merged file can be written as anything but 'name'.ms3d. Could you do me a favour and go through the process again, keep a note of exactly what you do and see if the result comes out the same. If it does, let me know and we'll organise a transfer of the two original files and the merged file.Originally Posted by Taliferno
Cheers
GrumpyOldMan
Hi T
I went back and checked my code and you're quite right, I didn't put in a check to make sure that the file name had the right suffixOriginally Posted by GrumpyOldMan
![]()
I've uploaded the new zip to http://www.totalwar.org/Downloads/M2...d_beta_1_7.zip I had to put it in the MP_replays area because that's the only M2TW upload link I could find.
Cheers
GrumpyOldMan
Hi All
The previous fix 0.17 worked too well but was adding '.ms3d' to anything that wasn't nailed down.
Another beta has now been uploaded to http://www.totalwar.org/Downloads/M2...d_beta_1_8.zip
Thank you for your attention, guinea pigs and lab rats
Cheers
GrumpyOldMan
Hi RBI
I have never been able to find a lod tool that is not more trouble than the work you saveOriginally Posted by Re Berengario I
.
However, now that we are becoming a large block of Milkshape owners, we can approach Mete (the owner and programmer) to come up with a better solution.![]()
Cheers
GrumpyOldMan
Is there a simply way to make sure M2TW displays one body with one set of arms? I.e I would like body_01 to display with arms_01, body_02 to display with arms_02 etc etc
Cheers
Hi AD1
The only way is to combine the body and arm groups, which means that in the mesh you can only have the combined groups. I'm using a similar method for 17C musketeers with different coloured coats.Originally Posted by AlphaDelta1
In Tab/Groups select the two groups you want combined and hit the regroup button, this will combine the groups and give you a new group with a name like 'regroup 1'. Make sure you edit the group comments so it reflects a body group.
Cheers
GrumpyOldMan
@All,
I hope it is OK that I post these here. I have been working on new helmets and new weapons. I am going to try to get these in game this weekend.
New Burgonet I am working on. Grumpy, I might need you to look at this and help me with the smoothing issue...
New NeoClassical Burgonet with a Greek Crest, complements of RTR's Seluecid Pikemen:
[img=https://img141.imageshack.us/img141/2870/newburgonethvygreekcresjy4.th.png]
New Neoclassical Burgonet with Roman plume, again compliments of RTR's early roman legionary:
[img=https://img143.imageshack.us/img143/2717/newburgonethvyromanplumtx0.th.png]
(@RTR modellers... I am a big fan of your units, I hope you all don't mind me using your parts...)
OK, new weapons... Now I am just getting started and most of you could give a rip about this, but I am a big stickler for detail. What I have changed here are the pike heads. I will also be making new spears, lances and javelins as well.
[img=https://img300.imageshack.us/img300/9599/pike01vx1.th.png]
[img=https://img136.imageshack.us/img136/1742/pike02uc5.th.png]
[img=https://img175.imageshack.us/img175/4267/pike03lg7.th.png]
That's all I have right now. More to come when I can get them in game.
Again, Thanks to Grumpy for his help and thanks to the RTR guys for their exquisite models.
AT
Hi AT
With any bits you chop off RTW figures there will be an issue because of the lower level of detail in RTW. The raw bits would probably work for lods 2 and 3. To make the bits smoother and more curved, you have to work on them in isolation before you've added them to any m2tw groups.Originally Posted by Andromachus Theodoulos
First, after loading the bits, go to Menu/Tools/Smooth Edges and use with the default setting. After Tools/Model Information, this gives you great smooth edges but an outrageous triangle count. Next use Menu/Tools/DirectX Mesh Tools and adjust the number of triangles with the slider until you get something more reasonable. This tool will decrease the number of triangles but wipes out vertex assignments in the process, but since we're working with a raw bit it doesn't matter.
I hope that's what you're after.
Cheers
GrumpyOldMan
@GOM,
Precisely,
Thank you sir for that info.
Sometimes you look under the Tools Menu and it gets a little overwhelming as to what you can use.
Thanks,
AT
Will the bones need to be re-assigned? If so how is that done? I'll give this a try later today and let you know it goes.In Tab/Groups select the two groups you want combined and hit the regroup button, this will combine the groups and give you a new group with a name like 'regroup 1'. Make sure you edit the group comments so it reflects a body group.
One other question; if I lengthen a spear by about 50%, which bounding spear figures (if any) do I need to change?
Cheers and thanks again.
@GOM
I had a problem. Every time I edit a group, eg scale a shield or move it or whatever, then I cannot find them in Texture Coordinate Window. So I cannot remap them. Any way to solve this? Thanks in advance.
Hi Zxiang
You mentioned this before and I couldn't get the problem to happen to me then. I tried scaling, moving and rotating groups in both the figure and attachment material. I just tried it again and I still can't get this error to appear.Originally Posted by zxiang1983
When you go to Texture Coordinate Window (TCW):-
- is the group selected in the main Milkshape window (select again or select all if not sure)?
- when you choose the group from the TCW dropdown is the right texture shown?
- if you are certain that the group is selected, and the right material is shown and the right group is shown in the drop down, what happens when you press the 'Fit Selection' button in the TCW?
Let me know if the problem resurfaces.
Cheers
GrumpyOldMan
@GOM
Problem solved. I just didn't select those groups... so stupid mistake. Thank you very much!
Hi Zxiang
No problems, don't worry about stupid mistakes, that's how I learnt most of what I knowOriginally Posted by zxiang1983
![]()
![]()
![]()
![]()
Cheers
GrumpyOldMan
Hi AD1
Regrouping retains all vertex info - assignments, weights, uv, etc.Originally Posted by AlphaDelta1
With the spear and bounding sphere, I'm not sure on the exact value for your spear but it is the 4th value (we're assuming this is radius) which seems to denote length of weapon. This is an area where we're still experimenting, and I'd like to congratulate you on being one of the first to take the new plane into the sky![]()
![]()
. I'd check the length against a pike and use a proportional 4th value between the original spear, pike and your modified spear. Let us all know how it goes.
Cheers
GrumpyOldMan
I started to work on some early renaissance pieces of armour.
Here some examples:
https://forums.totalwar.org/vb/showthread.php?t=82884
I'll make some experiments to merge them into existing models. Suggestions will be greatly appreciated.
Cheers,
Luciano B
Bookmarks