Seems there is no support for setting multiple weapon-emitter points for a ship yet though? All the shots will come out of the center of the ship if I understand correctly?
That's not part of the code I work in, generally, but I believe you're correct: there's only one emission point per model right now.
Yep, right now there's only one emission point, although it wouldn't add any inefficiency to the firing code to add more than one. There are a couple of methods that could be used in order to add multiple firing points, largely based around whether these are vector offsets that get calculated at the time of firing, or if they're transforms that are present all the time.
Personally, since firing is a lot less common than a ship moving (by very definition, practically), that means that probably I just need to make these as vector offsets. There would then need to be an interface for showing said offsets, and when firing it would just multiply by the transform.forward to do the global rotation to get the correct position in space at the time of shooting. I
think that would work, and I've done similar things in the past in other games.
If these firing offsets were tied to specific weapons, that would also be possible, although in most cases I think it would be overkill. The trickiest part is that I don't know what we can make this easily moddable in xml -- I mean, we COULD, but in order to do that we'd have to have a sort of "ship designer" screen in the game itself that shows the ship and shows the little widgets for where offsets are, and so forth.
I suppose that one way to handle that would just be to have steps for loading the ship into the test chamber by itself, and then have some hotkeys for "reload just the visual bits that we'd want to modify in here," such as "places I get shot" and "places I shoot from" and all that. Then you can load in a ship, see it, hit F8 or whatever, and have it reload just the bits in question without doing any form of major reload of EVERYTHING in the game, which would be disastrously overkill and break things during that game session.
Unlike most things that are game-data reloads, that one would probably need to be me setting that up, rather than Keith, because it's going to be super-small and surgical in nature, and intentionally not messing with much of the game state at all beyond things like this. At the moment, probably JUST this.
This isn't super high on my priority list at the moment, but if there's someone who wants to start going in and actually USE this to make the ship firing look cooler... well, that would bump it up the priority chain quite a bit.
I could definitely see the ship firing being a lot more exciting with things like the starships and guardians if they're emitting a bunch of shots from different guns, rather than from their center, so that the shot patterns from them are really different-looking compared to now.
I've just been thinking out loud in this post so far, mainly. I can potentially give some of this work to Pepisolo and Goldenwolf, if they wind up having time, since the audio stuff I was going to toss their way is mostly not going to be tossed their way after all, I think. We do have to be careful only to do this for ships that are already set up with the new painted models, though, because those are getting scaled differently and sometimes shaped differently. I'm not sure where we are on that list at the moment, but I think it's in the ballpark of 80 remaining out of 140 total. That was going faster, but then Blue got shifted to the far zoom icons for a while, and Pepisolo and Goldenwolf have been doing final preparations for the Starward expansion. They're just volunteering their time for AI War 2, so I'm grateful for anything they toss my way, and not about to criticize there.
Anyway... big brain dump, but those are the things that come to mind. Cheers!