Milkshape & Plugins - Latest/Best versions and where to get them
-
moved to appropriate forum
-
I use (on Vista):
MS3d 1.8.2
CMP Importer 2.7
CMP Exporter 0.3
MAT Exporter 0.1
SUR Exporter 1.1 -
Good post Moonhead.
CMP Exporter
Yes it is v0.3, however the dll is named msCMPExporterv3.dll
Here is the file:-
http://the-starport.net/freelancer/download/singlefile.php?cid=5&lid=1652There are several others but if I remember they are not final versions, and have bugs. This one is not causing me any problems.
Note:- you have to fix the hardpoint orientations because although the exporter aligns them with the surface plane quite nicely, when you view them in HardCMP they appear squashed instead of a cube - just click the Edit button and then retype one of the orientation values and click Validate. If its correct, fine, or you can move it easily. Remember also that HardCMP sometimes makes duplicate hardpoints! So recheck your cmp file in HardCMP after saving it.
ConVexTool
Yes there are two versions.
One of them has no dialog, it just creates the convex shape.
The other one opens a small dialog window where you can put a number. This version allows you to specify how far away from the original shape’s surface you want the new convex shape to be.
Since we want a tight-fitting one, this is not needed and is an extra click I didn’t want. Decide which one you want to use, both produce the same shape.
By the way - you can edit the ConVexTool .dll file and replace the word “_convex” with “_lod1” so your sur parts are named correctly and automatically right away. Just replace the extra letters with whatever code comes after the letter “x” in the original file.
SURExporter
Be sure to use v1.1 and NOT v1.2, because v1.2 is a test version using a different formula and creates more bad surs than v1.2.
-
@about cmp exporter 3:
It’s the “Y” orientation the one that has problems. If value is 0, then np. But for other values, plus is minus and minus is plus. Just delete the “-” if it’s negative or add a minus if it’s positive.
Also the size multiplier doesn’t work fine (actually, I think it doesn’t work :P)
If you import a model and you don’t resize it 100 times bigger (or 92, not sure), instead of a model you’ll have a spot.And coordinates names are different as in MS3D. X, Y, and Z are Y, Z, and X.
-
Hash - do you need a memory rehash? I think you are referring to HardCMP for the X Y and Z axes?
MilkShape and the exporter use the same axes as FL.
And the cmp importer scale is correct.
But there is one bug in CMP Exporter v0.3 that everyone should know about already. It is the scaling (Scale Down).
If you set it to anything other than the default (92), it will not save the new scale, but always exports at 1/92 scale.
To “fix” this you must Save Settings or Load Settings after you change the scale.
In any case, Scale Down = 1 is the same size as FL scale.
In other words 1 MilkShape unit = 1 FL Metre so set Scale Down = 1 and Save Settings before exporting.
Don’t believe me? Import the pilot model and check its size in MS units. Export it with scale Down = 1 as a new model and re-import it.
Also, always export Back-to-Front, not Upside Down.
Note: when you import from 3DS Max and some other modellers the model may be facing into the ground! Easy to correct
-
Thanks for the additions everyone. I’ve updated the main post where necessary and/or possible.
If anyone has anything relevant about Milkshape and its plugins or related tools, please post it in this thread. It might help newbies to get started.
-
Here’s a MAT exporter for 3ds max 9. The source is on the forge if anyone wants to recompile it for another version of max. It should recompile with no problems as far as I know.
http://www.gamefront.com/files/20309717/maxMATExporter.rar
I’ve not really tested it all that much so I don’t know if there’s any problems.
Right now it will do:
the default textures.
Glass opacity and diffuse.
Light Maps <- done by adding the self-illum texture to the self-illum texture slot in max.
and Two Sided textures by clicking the 2 sided texture box int the mat editor.
All should work without having to edit the mat file after.
You may need vcredist_x86 to use it.
-
Well i’ve just had a quick blast with this. I can’t get the sur to register hits from guns. Collision detection seems to be working, i can bump into stuff etc, but if i just sit there and let ships shoot me, they get as far as taking the shields down but no hull damage.
Then tried a sur made with LS’s sur builder and that worked. Either i’m doing something wrong or it’s not quite right yet.
If someone can talk me through how to add hardpoints to the sur using the 1.3 exporter, mucho appreciated
-
Adoxa - what do you mean, too quick? I’ve downloaded it again anyway
What have you added in 1.3 please?
You really are terrible on giving out info, aren’t you! lol
-
Gibbon wrote:
…
If someone can talk me through how to add hardpoints to the sur using the 1.3 exporter, mucho appreciatedThis is for anyone who needs this info, Gibbon already knows much of this.
I don’t know about 1.3 but as it is a progressed 1.1 it should be the same.
NOTE: I am including many hardpoint types for adding to a .cmp, but some are not needed in the .sur file, so be aware that the SUR exporter will ignore the ones it does not need.
In Milkshape make a small pointed triangle (the smaller the better) as a hardpoint, place it where you want it, point it in the direction you want, and name it:
Hp\Fixed\HpMount (NOT HpMount01)
Hp\Fixed\HpEngine01
Hp\Fixed\HpTractor_source (NOT HpTractor_source01)
(note: HpScanner is NOT needed)
Hp\Fixed\HpPilot (NOT HpPilot01)
Hp\Fixed\HpCockpit (NOT HpCockpit01)
Hp\Fixed\HpCockpitEx (NOT HpCockpitEx01)
Hp\Fixed\HpThruster01
Hp\Fixed\HpCM01
Hp\Fixed\HpShield01
Hp\Fixed\HpMine01
Hp\Fixed\HpTorpedo01
Hp\Fixed\HpWeapon01
Hp\Fixed\HpEngineGlow01
Hp\Fixed\HpDockLight01
Hp\Fixed\HpHeadLight or Hp\Fixed\HpHeadLight01, Hp\Fixed\HpHeadLight02, if you have more than 1
Hp\Fixed\HpRunningLight01
Hp\Fixed\HpBayDoor01 (baydoor closed position)
Hp\Fixed\HpBayDoor02 (baydoor open position & cargo ejection point - No more baydoors? I don’t know)
or - cargo ejection trajectory?or
Hp\Revolute\HpTurret01
Hp\Revolute\HpTorpedo01
Hp\Revolute\HpWeapon01Also note the battleship turret naming is special and dependent on size (the exporter will put in a sur part of different size):
Bretonia:
Hp\Revolute\HpTurret_B1_01
Hp\Revolute\HpTurret_B2_01
Hp\Revolute\HpTurret_B3_01
Hp\Revolute\HpTurret_B4_01
Hp\Revolute\HpTurret_BM_01Kusari:
Hp\Revolute\HpTurret_K1_01
Hp\Revolute\HpTurret_K2_01
Hp\Revolute\HpTurret_K3_01
Hp\Revolute\HpTurret_K4_01
Hp\Revolute\HpTurret_K5_01
Hp\Revolute\HpTurret_KM_01Liberty:
Hp\Revolute\HpTurret_L1_01
Hp\Revolute\HpTurret_L2_01
Hp\Revolute\HpTurret_L3_01
Hp\Revolute\HpTurret_L4_01
Hp\Revolute\HpTurret_L5_01
Hp\Revolute\HpTurret_LM_01
Hp\Revolute\HpTurret_LT_01Rheinland:
Hp\Revolute\HpTurret_R1_01
Hp\Revolute\HpTurret_R2_01
Hp\Revolute\HpTurret_R3_01
Hp\Revolute\HpTurret_R4_01
Hp\Revolute\HpTurret_RM_01Order:
Hp\Revolute\HpTurret_O1_01
Hp\Revolute\HpTurret_O2_01
Hp\Revolute\HpTurret_O3_01
Hp\Revolute\HpTurret_O4_01
Hp\Revolute\HpTurret_OM_01Nomad:
Hp\Revolute\Hp_1_01Utility ships:
Hp\Revolute\HpTurret_U1_01
Hp\Revolute\HpTurret_U2_01
Hp\Revolute\HpTurret_U3_01Liners:
Hp\Revolute\HpTurret_Liner_01Prisons:
Hp\Revolute\HpTurret_Prison_01Stations:
Hp\Revolute\HpTurret_S1_01
Hp\Revolute\HpTurret_S2_01For all hardpoints the 01 can be 02 for the second of that type, and so on.
Choose Fixed/Revolute as appropriate, or as you prefer.
You can use the “|” (pipe) character instead of the “”, as you prefer.
Put them all at the end of the Groups tab list, after the ship groups.
Don’t include them in the Groups count when you export.
Note that the 1.1 (and I think also 1.2) exporters used to align the hardpoint’s axes parallel to the ship’s nearest surface, and add it to the nearest ship model group.
Also note:
- HpPilot is where the model pilot mesh will be placed in the ship if it is in the shiparch.ini. - put it out on a wing and see!
- HpCockpit is where the cockpit model and its viewcamera for the cockpit view will be placed in the ship. I’ve not put this out on a wing! I will do some testing and report.
- HpCockpitEx - in vanilla it is placed high and back, but I’ve not been able to see any changes by moving this so I don’t know what it does ior what it mounts. It looks like it should be controlling the external camera view but it does not seem to have any effect. The external camera view is controlled in shiparch.ini
For dockables you can add:
HpDockMountA,
HpDockMountB
etc,HpDockPointA01, HpDockPointA02
HpDockPointB01, HpDockPointB02
etc,
(dock path is from HpDockPointA02 to HpDockPointA01 to HpDockMountA, and ship takes its orientation from the orientation of the hardpoint it is heading to, so if it is going backwards…)HpDockCamA,
HpDockCamB,
etc,HpLaunchCamA,
HpLaunchCamB,
etc.There are also HpFx1, HpFx01, HpExhaust01, many others, and also a lot of Dp hardpoints (Damage points) - too many to mention here.
Please add if you know more.
-
From what Adoxa was telling me, the 1.3 was based on the 1.1 code as he now has that as well.
My understanding of the HpCockpit hardpoint is a bit vague. I’ve never added one from day one as all the information for the cockpit is in the relevant cockpit.ini file. You need HpPilot as that affects the viewpoint from the ship. Maybe if you have a custom cockpit then put one on but i’ve never used one and they’ve always showed up.
-
Not sure but isnt HpCockpitEx used for the cut scenes in single player. Only certain ships have it.
HpEngineGlow is a strange one, EngineGlows are described in lights.ini but they dont do very much, unused effects I suppose
HpBaydoor01 - HpBaydoor02 is the path taken by ejected cargo. Note they cannot be in the same place or it will cause a CTD. Nothing actually to do with the bay doors and their animation
HpCockpit is the point from which cockpit view is taken, if its not set Freelancer defaults to the absolute 0,0,0 center position. you can see this in the old Hogosha CSV mod where the HpCockpit is angled wrongly. Like trying to fly looking out the top of your head. Not easy
-
That’s great, sorry - I misread as 1.2. That is good news, 1.1 made good surs. I will edit my main post, thanks.
Ok I will check on HpCockpit.
If you don’t put in a HpCockpit then the cockpit is still put in but is placed at the Origin (0,0,0).
But no, the HpPilot hardpoint is for the placement of the pilot.cmp model if you add the shiparch.ini entry:
pilot_mesh = generic_pilotIf you don’t put this entry in, the pilot model will not be put in the ship.
It’s not for the view. Put him out on a wing and have a look in the game (turret view), he will be sitting there out in the open, cursing you!
-
Thaddeus wrote:
…
HpEngineGlow is a strange one, EngineGlows are described in lights.ini but they dont do very much, unused effects I supposeNo HpEngineGlowxx do work, they are where you mount the EngineGlow lights - I used them in the Enterprise range in the engine nacelles, they are great.
By the way - Lancer’s Errorchecker called them out as errors.
I’ve edited the main post, let me know if anything is wrong.
-
what do you mean, too quick?
There was a bug in the release version caused by the VC6 optimizer (I only tested that with the importer, not the dumper). There was also a problem in generating the triangle offset for secondary parts.
What have you added in 1.3 please?
Removed orientation (always “back-to-front”) and scale (always 1). Added 3db checkbox to use the “zero” mesh. Fixed some memory leaks. Fixed tag count and bits section scale values. Provide a default file name (although it really only works if you load an .ms3d); allow one to be entered (without having to browse). Still a problem generating the hull (have a look at DATA\SOLAR\DOCKABLE\docking_ringx2_lod.cmp - it misses the bars jutting out from the middle), but that will have to wait till the rewrite (I’ll be using a different algorithm - same one as the ConVexTool).
-
@ ST
You’re quite right of course, HpPilot is for the pilot. What i meant to say was that if you don’t put one in, Lancers error checker throws a fit. Now it shouldn’t because some models come with pilots, only solution is to add the hardpoint and then not add the pilot in the shiparch file where a pilot is already in the model.
Regarding HpCockpit, yes i’ve found it does count the view from 0,0,0 if you don’t add the hardpoint in. Think i’ve just got lazy over the years and i can almost calculate the correct viewpoint with my eyes shut these days from 0,0,0, it’s more a matter of convenience on my part (or lazyness, take your pick).