OK.
Thats a lot of improvements !!!!
First series of test with Format 800 as a target :
I tried with
MDL and MDX as sources,
with or without conversion.
All models were processed !!!
First, the options for MDL are perfectly handled in the different situations... wonderful.
All my Ballwings models work perfectly... so great.
I have tried to test as many models as I could (my list has 125 models ^^), they all seemed to work.
I have found 2 exceptions.
First, the Classic Archer model from Reforged (that I attached 6 messages earlier) is empty after the Materials section, same as an Axe Missile (classic) also from Reforged.
I will attach the Axe so that you can have a second classic reforged model to compare.
Note that the version of this archer where I had manually removed Reforged specific fields was converted and optimized perfectly !
Now for the naming, its much better, but I think it should only add suffixes when there is actually a collision. Especially when there is a conversion. Also maybe it isn't necessary to add both suffixes in case of optimization and conversion (in fact conversion is obvious as the extension changes, although I understand that in some cases it could be interesting to differentiate optimized from not optimized, or converted mdx from original mdx, but then if you restrict these suffixes in the event of a collision, it should be just fine.
As a conclusion, the program is just about ready, I believe the problem with classic reforged models should be easy to fix (just copy the reforged fields over as you explained before).
Second series of tests with Format 1000 as target :
With MDL as source and no conversion, with Magos compatible unticked (it should be greyed !) and MDL option ReforgedData was greyed (thats correct because thats the principle of format 1000).
Note that I tried to enable the Magos option (hehe thats a dedicated beta tester !!) and as expected it crashed the program
Again all models but the two I mentioned before went through perfectly, with the exception of the two models mentioned before with the same symptoms.
Here are the errors displayed by the way :
for the Archer :
"Exception: stoi
Exception: Unknown token in Layer: static Emissive
Exception: Unknown token in Layer: static Emissive
Exception: Unknown token in Layer: static Emissive
Exception: Unknown token in Layer: static Emissive
Exception: Unknown token in Geoset: LevelOfDetailName"
for the Axe Missile, just this :
"Exception: stoi'"
I am confident it is just the fact that your program is not expecting these entries to be already there before adding them (although then it should not have caused issues with the Format 800 tests then... anyways I trust you know what's going in ^^
With MDX as source and with conversion, again the option for Magos was not greyed but this time neither was the option for Reforged Data (it should always be there for format 1000).
Now the list did not complete, the program had the infinite loop issue back with the first Flapping Wings model encountered - well you know where the problem is now ^^
Also same issue as other tests with classic archer and axe_missile models, but that was expected.
Most of the models converted to Format 1000 seem to crash Retera's MSRH though. Here is the error :
"
Unknown error occurred:
java.lang.ArrayIndexOutOfBoundsException: 1
at com.hiveworkshop.wc3.mdl.Geoset.parse8ByteSkin(Geoset.java:356)
at com.hiveworkshop.wc3.mdl.Geoset.read(Geoset.java:442)
"
Note :
The Classic Reforged Archer (so format 1000) had no
Skin entries, (nor the version without the
Shader and
LevelOfDetail and s
tatic Emissive that I made manually) and your conversion added "
SkinWeights" entries to the manually edited one.
The Axe_Missile classic Reforged model has no
SkinWeights entries but
Skin entries in the geosets.
This part is confusing for me, I am not yet used to these specific entries, although Retera explained this in some thread that I need to find back.
I am sorry there always seems to be new errors coming to the table, but at least they are caught now rather than later.
This said, you expected difficulties with format conversion from the start, so this is not 100% of a shock.
As far as my selfish case is concerned the tool is functional as the format conversion can be handled by Retera's MSRH (although I heard about some issues somewhere - but I haven't faced such problems yet). The only feature I am now missing is the Hermite and Bezier to Linear (wait did I mention this before ?

) and i'm good to go !!!
Now I trust that you can easily fix the remaining issues with the handling of Format 800, and I believe the headaches will come from Reforged (again, thank you Blizzard :/)
Anyways, I can appreciate the amount of work you have done so far, this is unreal !!!
I am staying tuned !!!