Beam welding with shims and wedges, and plate welding with shims and wedges along with polygon plate packing.

Joined
Feb 28, 2020
Messages
13
#1
This is an extension, but also separate from my previous beam suggestion. The problem not handled in that one was how to handle plating that didn't fit the regular multiples of 12/24 cm. This suggestion includes discussion to "solve" that problem.

I had time to talk to one of the developers about what limits unique parts and found that all parts have to be precomputed with voxels and fractures which costs memory. Adding new parts that both voxelize and fracture is expensive. This explains why for instance the plate dimensions for reference isn't complete:
platesizes2.png

Note: I was already told the current building system works and there were no planned changes. (They have a list of priority items). I say this just to keep expectations realistic. Also some of these topics below have been brought up on Discord by multiple builders, so I'm mostly centralizing some of them.

Beam Welding with Shims and Wedges

In order to keep unique part count low a shim or wedge would be a "fake part" - one that doesn't fracture or voxelize when damaged. It either transfers damage to adjacent beams/plates or takes damage and disappears when broken. That said these parts are small (less than 12 cm) so the idea is visually they don't matter much or detract from the damage system. (If there is a complexity cost associated perhaps they could cost two parts to limit their usage).

Beam shims could be placed between any two close beams. The player could select two aligned beam ends and connect them seamlessly as shown in the first example. In addition any two beams on the same plane the player could select a beam end and a beam surface and construct a beam shim between them extending the beam end to join the beam surface. This option would only be available for distances less than 24 cm.
starbasebeamshim.png

Beam wedges would be placed between two angled beams on the same plane as in the image below. A player would select both ends and then apply the operation which would create a wedge filling the gap creating a seamless welded beam. (This would only work on angles less than 90 degrees).
beamwedges.png

The player would be able to set the join operation for the wedge from miter, in the first example, to bevel, in the second example if the beams share an edge. If the beams are not touching then their face would attempt to extend and miter as shown below.
beamwedge2.png


Plate Welding with Shims and Wedges

The idea of plate welding isn't new (and has been thought about by the developers), but just to recap, it would allow plates to weld to other plates and to beams removing the need to bolt them.

Plate shims function identically to beam shims. It allows you to select the side faces of a plate and then either another plate side or beam face and extend to it less than 12 cm. (Give or take).
plateshim.png

Plate wedges function similarly as beams. As long as the plates are angled on the same plane then selecting two side faces would extend them and miter. In the example below the two green plates are extended to seamlessly fill the corner.
platewedges.png

An example of a ship that could use various techniques described above would be Kap's ship that he posted to Discord. It shows a design where the beams are welded. (Yes, you can weld beams at angles). The above changes would both clean up welding aesthetics and also remove brackets where shims would replace them. The plating wedges would fill all the gaps.
kap.png


Polygon Plate Packing

So currently builders must manually drag plates in to fill larger regions. If you want to fill say a 260x285 cm area with plates the player must manually decide which plates to use. (Implementing an algorithm to automatically choose plates to fill a rectangle is not a controversial feature). This problem becomes much more difficult in the current system if the region is instead an arbitrary polygon. Designs where this problem comes up has led many builders to throw in the towel and stick to more box-like designs. (Which I'd argue is limiting the potential of ships we could be seeing). (I won't be mentioning the triangle plates for the below examples as they handle a few cases, but not for general polygons).

This suggestion might be kind of out there, but the main idea is automatic plating with any polygon along with "fake part" border parts. Two examples are below.
platebinning.png

starbasengon2.png

Essentially the player has two polygon regions that they've defined and they want to quickly fill the area with panels seamlessly. The system would support selecting beams/panel sides to define the region or they could fill a closed region by extending an already placed plate. The player would be given the choice to place a starting plate on the plane or choose a face normal (from a beam or plate) and the editor would generate a filled pattern sticking to a 12x12 cm grid in the same orientation. (My example isn't perfect, it's just a quick mock-up). (This is a variant of rectangle bin-packing for those curious). Other than the plates being generated, a "fake part" border would be generated as well. This could be done as multiple parts.

I mention this polygon packing because it works to solve other edge cases like joining arbitrary plates at an angle. In the crude image below the builder wants to create a corner piece. If the game doesn't have a part for this then they might have to try two or more triangle plates and get it close enough. If instead the system lets players select both sides and extend then the above system generates two triangles, fills as much of the area with plates, and then generates fake parts to fill the diagonal edge.
extendingangledplates.png

A secondary bevel fill option, rather than extending the side, would give the below output. (So the player would select both sides then choose either miter or bevel for the join).
angledplate2.png

This pattern could be applied to many plate configurations to create seamless plating and cover a whole ship.

Conclusion
This was longer than I expected, but the basic idea is "fake parts" could be a possible solution (if the engine can support them) to skin a ship completely with panels and remove gaps in beams and plating. It allows ship builders to get much more creative with angles without having to dread certain plating configurations that create gaps. It also allows more seamless curved plating designs that exist in a lot of sci-fi concept art for hulls.

I imagine there are still edge cases in plating that could slip through the cracks even with this. Off the top of my head plating designs where more than 2 plates meet possibly. (It's solvable, but the development might not be worth the effort).

Any other approaches or thoughts?
 

Attachments

Joined
Aug 15, 2020
Messages
3
#2
+1 from me, I think this is a truly excellent idea. Especially after the recent update removed the possibility of 5-degree welds.
 

MoneylooJr

Learned-to-turn-off-magboots endo
Joined
Aug 13, 2020
Messages
48
#3
I'm not sure how doable this would be in game, but I would absolutely love to see it in regardless. The restrictive rectangle-only beams and plating is one of my main problems with the ship building in SB. Just look at ships like the Nebulon-B/Einstien's Demon, or really any ship that tries to have a genuinely rounded shape/shapes, and you'll see what I mean.
 

Kodey

Well-known endo
Joined
Jun 13, 2020
Messages
94
#4
This would be unbelievably useful on ships like this, without having ugly gaps in between each plate. I’d also hope the devs would add more freedom for our angles, something more like blender
 

Hunter

Learned-to-sprint endo
Joined
May 23, 2021
Messages
23
#6
Excellent idea. Now that welding is basically the only way, it would be nice for the devs to implement a QoL feature after EA hits.
 
Top