The Quest To Spew

More
19 years 6 days ago #14197 by mdvalley
Replied by mdvalley on topic The Quest To Spew
Progress update:

I finished all the main code, and I've started full-scale testing. I’m now bug-squishing. I haven’t tried the “stress test� of the full 240 pods (are there any stations that sell that many at once?), as I’m still troubleshooting it with small numbers.

There seems to be a bug with loading pods where a pod will stop partway between the spewer and the megapod. It’s just an approach order (iAI.GiveApproachOrderAdvanced(minipod, outer, 0, 150, true). Outer is a generated waypoint 1.5k from the megapod’s door.), and it comes unstuck if you wait a while. Fiddling with the numbers might fix it, I'll have to see.

Please Log in or Create an account to join the conversation.

More
19 years 2 days ago #14242 by mdvalley
Replied by mdvalley on topic The Quest To Spew
Basic functionality is in. It successfully loads and unloads pods. For the stress test, I couldn’t find any stations that sell 240 pods. But loading 140 pods went without a stutter (Pentium 4 3.2GHz). It took 7 minutes and 54 seconds.

img502.imageshack.us/my.php?image=podswarm7db.jpg

Buying Pods, or: The Solar System in Miniature.

I filled up on the remaining 100 at another station and went for the selling stress test.

Fifty-one minutes and eight seconds. It took fifty-one minutes and eight seconds to unload 240 pods. Granted, 240 pods is a lot to trade, and it should take a while, but this is ridiculous! The thing is, a pod will not launch until there is a spot on the spewer free. So only 4 can be in transit at a time. And thanks to the collision avoidance code and the size of the freighter, that takes a while. I’m wondering if I should write in the ability for two pods to travel at a time for the spewer (and one will wait for the open spot), or just let it go and say that big ships need a big unload time. For every second taken off the commute, one minute will be saved on the total time.

There’s a bug with the L-Point, too. The megafreighter jumps, the megapods jump, but the minipods don’t. And the game just sits there in director mode waiting for the minipods to leave. Possibly because the minipods are parented to the megapods and not the ship. I can think of two solutions: Parent all the minipods to the ship itself before the jump and parent them back once its done (ugh), or cull the pods before the jump and recreate them afterwards (UGH).

The graphics bug of the pods showing through the megapods at a distance seems trivial in comparison. I could just set the visibility flag on them.

Please Log in or Create an account to join the conversation.

More
19 years 2 days ago #14245 by cambragol
Replied by cambragol on topic The Quest To Spew
Looking very nice Mdvalley! That image is really quite cool, as I have never seen a Mega Transporter with more than a couple of megapods. Unloading sounds quite slow, but hey, realisticly I imagine it would take even longer. In game a 51 minute wait for a pod spewer to clear of a Mega Transporter would be a tad long.

I added a 'Mega Trucking' page to the website, which mirrors this post. Feel free to edit it (and Spewer operations) as you see fit.

Please Log in or Create an account to join the conversation.

More
19 years 2 days ago #14246 by mdvalley
Replied by mdvalley on topic The Quest To Spew
Another web page just for me? You’re too kind. No, really. I’ve been putting off working on it, and now the pressure’s on again.

I’d forgotten to note that I haven’t done anything with the wingman commands yet, but they shouldn’t give too much trouble. The basic load/unload routines are already in. Can you imagine ordering one of those things to drop all cargo? I’ll need to take a screenshot of that when I write it in!

The Epic sell code will still magically remove pods if there is no spewer, but that will wreak havoc on the megafreighter. So tPodUtil will need some amending as well.

My solution to the selling wait time would leave some pods open to the get-it-back-by-piracy exploit (which doesn’t work on tSpewerOps, so don’t try it), so I’ll probably have to change some of that code as well.

The L-Point bug is the doozy. Either solution will be a nightmare to code.

Please Log in or Create an account to join the conversation.

More
19 years 2 days ago #14248 by Joco
Replied by Joco on topic The Quest To Spew
Thinking about the way mini pods are held inside the mega pods and the L-Point bug I would be inclined to store the minipod data as object properties on the mega pod object and cull out the minipods. Only recreate them again when needed.

That will reduce the number of objects in game space plus mean you get rid of the distance and L-point bugs.

Of course I could be talking complete bollocks. :-)

Cheers,
Joco.

Please Log in or Create an account to join the conversation.

More
19 years 16 hours ago #14277 by mdvalley
Replied by mdvalley on topic The Quest To Spew
The problem with culling and recreating these pods is that there’s a lot of data to be stored per pod. Things like what model it was (I plan on amending tPodUtil to create all the possible pod models, not just the big block), its legality, what megapod it was in and where, etc.

I’m going for the “jumping parent� method of storage. It’s not THAT bad to code, I just need to anticipate when the pod will be needed to parent to the ship (anytime it might capsule jump), and when the pod will be parented to the megapod (using the spewer or the wingman commands), and making the appropriate tasks to watch for the transitions.

One more thing: during debugging, I had a little message pop up on the HUD whenever a pod docked showing how much more there is to go. (Seeing as you can’t leave until it hits 0, it is quite an important value). It was a handy little counter, especially on the large loads, so I figure I’ll write in a nicer version for the next incarnation of tSpewerOps.

Please Log in or Create an account to join the conversation.