Anyone else still need a SUR generator?
-
Thanks for looking at this ST. Just to clarify a few points from my end.
1. I’ve been converting models for years, but i’ve been lazy and making them all single group models and using vanilla surs until the sur builder came along.
2. I resize the model in FLMT because when i export them from MS they are normally a bit small for my taste. I now use Lancers sur builder on the resized model, not actually resizing the sur itself with FLMT
3. Which brings me to this point. All the single group models i’ve converted so far don’t have the hardpoints in the surs as all i’ve done is used the sur builder on them. I don’t get crashes. So the next question is, is this specific to multi part surs only where i need to add the hardpoints to the sur itself?
As to the shield bubble, the model is rheinland gunboat size so do i need a shield bubble?
-
1. Oh, OK, I thought you were “au fait” with making break-off parts and stuff.
2. When you export, the exporter scale sits at 1/92 - I model all mine using 1 MS unit to 1 metre, and set the exporter scale to 1 and all is well.
But remember that the cmp exporter has a bug and will not set the new scale unless you Save Settings or Load Settings first!
If you import the pilot model you will see that 1 to 1 is good.
3. You’ve perhaps not tested them in the same way I guess. Sushi also tested my sur but with NPCs vs NPCs and it didn’t fail for him.
I have a battleship station blasting NPCs using the test ships and surs, it can crash within 5 minutes, but usually takes a while but not more than 1 hour to crash. Then using adoxa’s GetCollisions dll we found it was hits on the hardpoints, as we mentioned above.
The problem is it crashes FLServer, not the client. So for a mod server it is an annoying problem. Good thing is we have now identified the cause, and since we deviated from standard FL it is better to go back to standards instead of inventing get-rounds that might cause other problems.
Anyway, if we fix them then there will be no chances of random unidentifiable crashes caused by this problem.
For your model - the vanilla gunboats and bigger ships don’t have shield bubbles (tnis is seen as HpMount, or crc=f00fb9de in the sur file), they are “shrink-wrapped” with just a bounding box. The SUR Exporter v1.1 does this, but Sur Builder does not.
NOTE: Gunships, cruisers, battleships, transports, lifters and trains do not have the shield_link entry in shiparch.ini - so this will not cause the logged hits in GetCollisions that would be logged if there were a shield_link entry.
If you don’t need break-off bits and your models are small with no gaps then single-part cmps and surs are fine, e.g. for your Elite models.
But if you get a good multi-part sur utility that inserts your hardpoints and does everything close to standard surs, wouldn’t you be happier than farting about fixing half-finished utilities?
And there are modders (not me at the moment) who want break-off parts too. And of course the large ships and station models need multiple parts, more than the 18 limit of our current utilities.
That still leaves the wing+weapon sur parts (type 5) which are in standard FL sur files. They must have a purpose so should be included in our surs for full compatibility/compliance.
Sur Builder would be great if it could be updated to do all this since LS already put so much into it.
But now we know more about what is needed, (actually Bejaymac told us all this many, many times years ago but we didn’t understand or didn’t want to do it his way), the other guys here will crack it hopefully. I’m hanging around here to make sure they get harassed into doing it!
-
I’m all for a PRESS HERE FOR A SUR FILE utility, i can’t finish the starlancer ships until there is one. Funny you mention npc v npc test, that’s exactly what i’m in the middle of doing and no crashes, been up for almost an hour now, but you reckon it won’t crash because it’s npc v npc.
I agree plenty of people want models with destructive parts etc and why wouldn’t they? I’m more interested in bases with holes i can fly into and not cheat by using the phantom physics command.
I can wait with everyone else for a form fitting, completely bug free sur making utility, and judging from what’s going on here, hopefully looks like it’s not that far away
-
Hopefully.
Now - we still need a method for surs with holes for docks and fly-through parts. I’ve used the manual method and Sur Splicer on mine successfully by making sur “bricks” aound the hole, each attached to a body part. But I’ve not put in any sur parts for the turrets etc, and hits on these are being logged by GetCollisions.
The Sur Builder might be good for holes, (I don’t know) but we have no way to patch in hardpoints after the sur is generated.
And if we use Sur Splicer the same applies.
It may be possible by exporting the hardpoints with the root group and then using Sur Splicer, but I haven’t tested that yet.
-
hardpoints are not groups. guess any sur attached to those is generally totally different from the usual surs. at least because they don’t attach to vmesh but to points, which are not existant. moreover - the turrets all have their own sur geometry and are destroyed if you hit this, though does it depend in any way on the hardpoint? i doubt…
-
Just be patient ^^ I am nearly finished and the only thing left is polishing for daily use. After I have released you can complain about the errors I did not find More hopefully in the next days…
-
Gibbon wrote:
You pull this off, you too will have earned the FL Modders Hero medal, at least from me. Take your time and get it as right as you can, we can all wait a bit a longerYep, take your time Schmackbolzen, better to get it right so you don’t have me pestering you later! lol
Gisteron - what on earth are you trying to say or ask?? :-?
Take that carrot out of your mouth and try again! :lol:
-
So did anybody encounter this problem when adding additional hardpoints to vanilla ships? As they also don’t have the part in the .sur file.
And could the random crashes I encounter in a mod of mine be also related to this? It only uses unedited vanilla models and surs (Including Battleships, cruisers, gunboats), but with edited, more complex fuses…and these crashes become a lot less when I remove the rh_gunboat, and even more less when I use a instant destruction fuse for the br_gunboat. So I always thought that the fuses were the problem for these, something with effects being played on a hardpoint that does not exist anymore because the part has already shot of or so.
But if I read all the posts here it could also be a poblem with the .sur files, right? Did anybody beside me experience this with the vanilla capships? -
Well i have the slight impression that the crash suppression in getroot (I use a fixed version of Cannons crashcatcher plugin) might catch such crashes. I recently changed the most used NPC Pilot to not attack solars and since then the catched crashes really went down, even as we had over 30 players last Saturday. The problem is, since we have an autoupdater it could well have been something else (even though none of the previous updates within nearly a year changed the amount of catched crashes).
-
Depends on the crash - tell us more - server crash or client crash?
You can isolate your problem very easily…
1. Change the surs for the vanilla ones temporarily.
2. Replace your fuse with the standard one.
3. Test the gunships one at a time by removing the factions in your encounters one at a time. -
A very interesting find…
After adding the HpTurretxx (and other) hpids into the sur file for my base ship, GetCollisions dll did not create the GetCollisions.txt file at all - no log messages!
EDIT:-
[d]And contrary to my earlier post, you CAN insert new hpids into the sur file and extend it. Just be careful not to alter the mesh name following the last hpid entry, and make sure the hpid count is correct (it is hex, so 10=0A, 36=24).[/d][d]So - best to be sure you do add all the relevant Hardpoints - use my list above to see which ones need to be in, so I don’t repeat that here.
[/d]LancerSolurus wrote:
A warning if you are hex editing the HPIDs in, you ARE overwriting important data in the sur file, don’t do it. I would suggest splicing it in.
I have no idea how to “splice in” the hpid’s.
And the table is not at the end on the two files I edited.
So as LS confirms the file will be damaged, it is best to regenerate the sur file using Sur Exporter v1.1 with the hardpoints included. This will also add the sur meshes for the hardpoints.
-
As far as I remember at the beginning is an entry which tells the total size of the sur file. So Freelancer should not load any added Hps to the list unless you change that entry too (could even be two values, would have to look it up).
-
Glad the problem was found, adding in the HPID section hopefully won’t be too difficult. The single part does add them.
The names of the HPs are not a big problem, they are all there in the CMP file including any oddball names (I used non-standard names as well).
A warning if you are hex editing the HPIDs in, you ARE overwriting important data in the sur file, don’t do it. I would suggest splicing it in.
@ Schmackbolzen - I feel for ya, guess you found out there really isn’t any decent code out there for making convex hulls. It’s why I ended up coming up with my own method (which unfortunately still doesn’t work 100% )
-
LancerSolurus wrote:
Glad the problem was found, adding in the HPID section hopefully won’t be too difficult. The single part does add them.So if we use single part sur files from your builder we shouldn’t have a problem?
But the multipart sur files are bolloxed?That’s weird if true, as ST was still getting crashes when using single part sur files from what I recall.
-
You may be right but I don’t think I tried single part surs with Sur Builder, Timmy - I don’t use single-part cmps, I’ve been trying the multi-part surs. Remember the group cube box and triangle tests were all multi-part.
I did make some single-part surs just to help me to isolate the problem of Sur Builder not making sur parts for all ship parts, and it was the same as with multi-part. But I don’t think I ever used them for testing, I don’t like them! lol
In passing, another reason for multi-part ships and surs is that when the ship is destroyed, the groups fly apart when using process = shatter in the explosion (defined in FX\EXPLOSIONS\explosion.ini) called in shiparch.ini.
-
StarTrader wrote:
I can now confirm that single-part surs for the same two ships also fail within 30 minutes.Sad.
Retested yet again with vanilla surs - all runs well for over 3 hours.
Here are the single-part surs if anyone would please test these and the multi-part ones (the ship cmps are the same) I would appreciate the help, it would tell me if the crashes are genuine or if it is indeed my setup.
The only thing I can think to cause this type of crash after a certain amount of time is perhaps large numbers of error messages accumulating in a hidden FL Server log or buffer?
Does anyone know where there is such a log/buffer? I don’t mean C:\FL-Server-errors.log, I know about that one and there is nothing in it.
I’m confused, when I read this I thought you meant you had proved single part were also failing for you.
-
ST, how are you generating these single part surs, with the sur builder or some other way? If they are with the sur builder i find that odd because i don’t have crashes with single group surs made with the utility, ever.
If it’s another method then i’m curious how you make them.
-
Hmm, my memory loss is evidently more serious than I thought. I had forgotten I did that completely. Funny how the mind plays tricks once we’re over 20!!
Gibbon - I’m assuming that I used Sur Builder. I’ve also used the Sur Exporter v1.1 and I’ve also stitched them with Sur Splicer. The result was always the same, they fail during extended testing.
But don’t forget none of my surs had hardpoints.
And this is the problem. Vanilla surs never failed during my tests.
How long have you tested your surs? Half an hour is not enough.
Set up the same test environment that I have - NPCs attacking a heavily-armed base station or base ship, I’ve repeated this many times and the results are always the same.
The base ship uses cannon, missile turrets, and flak turrets. I replaced all with one type one at a time, flak turrets are useless at killing NPCs. Cannons only and missile turrets only both brought on the crashes.
Adoxa’s GetCollisions dll logs bad hits. The last hits at the time of the crashes were always to the thruster or the cm dropper.
Once we put them in (me using Sur Exporter v1.1 to generate a new sur with hardpoints and adoxa by manual insertion of the hpids into the sur file) the crashes stopped and GetCollisions logged only hits to my base ship’s turrets, which also had no sur parts.
I then added the HpTurret hpids to the base ship’s sur and there were no entries logged by GetCollisions for more than two hours of testing.
So the cause and solution are clear.
Keep on testing but test it my way.
I know I’m pedantic. But in fact I want whatever I do to be as good as I can get it.
I want a trouble-free sur so that my mod server does not have intermittent crashes due to these, there will be enough other causes in most mods! lol
-
Right, this is how i do it. Custom system, custom base, all custom ships including capships, fighters and traders. Capships using guns and missiles only. It stays up all day if i want it to.
Custom surs created using the sur builder only, on a duplicate radius setting of 0.1, anything else gives holes on large models. All models are single group with single group surs, no crashes, ever.
This is what i can’t figure out is why myself, and LS for that matter, have no problems. He has custom surs in his mod, some even multipart ones and he doesn’t crash, and neither do i. I’m baffled tbh
I don’t go near the sur splicer as i don’t know how to use it and can’t be bothered learning either, not when i have a tool that for me at least, works fine. I even put in the multipart model i uploaded yesterday and my test server was up all evening without issues, 3+ hours. Those poor little gunboats were getting slaughtered left, right and centre, no errors showing in console or anywhere else i could find, no crashes.
I don’t doubt there is an issue somewhere, just wish i knew where