Modding help: Snapping items

Is it possible to have objects that are build from pieces ?
As an example:
I want to create columns build from one base + xcolumn parts + a variable headstone. I would like to have them snap together to one column when finished to better move them around.
Other example:
Furniture:
To be very versatile in crafting furniture it would be nice to build them from parts. A table has 3, 4 or more legs in a dozen possible variants. And the table plate could be round, oval or a dozen other forms.
That brought me to the thought:
Can i build the pieces and connect them instead of writing hundreds of recipes ?
And if that is possible the name of the finished furniture could be the connection of the parts.

Has someone a possible solution or the opposite ?

2 Likes

An interesting idea. I’ve not formulated it yet but I’ve seen such examples in other games.

While I think this is not very useful for simple objects (like tables), it would be useful for “scalable” ones - columns from your example, fences, “bunk beds” from my mod etc. In other words, any items that can be intuitively “stacked” together.
We could make this even more useful to make “snapping” toggleable. Like in graphic editors - “chain these items and process them together” or “unchain them and use separately” when we no longer need it.
I haven’t seen such examples is SH mods so far, but I suppose it even would be useful to add such a thing to the core game.

As for constructing new furniture from parts, as in your second example, there is an example from Cube World (in-game voxel editor to add a limited number of resource-based blocks to the weapon to improve its stats), Starbound (draw a custom sign, print it and use a a decor in your constructions) or Planet Explorers (which have an in-game voxel editor for vehicles where you can build them on a block-by-block basis). I believe this is a better way than designing separate parts (like legs and plate). Maybe even the new SH building system that is in development right now can be used for these things as well - it is the same voxels, the same templates, the same resource cost calculation but on a different scale.
However, after noticing some problems with SB, Cube World and Planet Explorers’ take on the topic I can list some possible problems that should be avoided.

  1. Voxel editor in Cube World has a very strict limit on the number of cubes used.
    Normally it is based on the quality of a weapon and is limited to 4-10 blocks. Not nearly enough.
  2. Starbound’s custom signs have many hardcoded limitations used to “cut corners”. For example, a custom sign has no custom icon (although it is quite easy to make it code-wise). And SB’s hardcoded structure gives no room to modded solutions.
  3. Planet Explorers, while lacking in other parts, have a powerful in-game voxel editor. There are several problems with it.
    a) It works strictly from the game and is not available as a standalone application
    You can’t create a car in your spare time, then use it in the game. You must do it from within the game.
    b) The game doesn’t pause while you are using the editor
    Even more ridiculous, it’s common to spend 1+ hour designing your new car, but your character is not protected from starvation, nor is he safe from monster attacks.
    c) Controls and navigation in the editor are not optimal usability-wise
    So you must be in the game, you must watch you char to evade death, but even more so, the system, while powerful, is not very user-friendly and convenient to use.
    To sum up, using the editor quickly becomes torture.

How do I see such a system?

  • Voxel-based (with a scale of, say, 1:10, i.e. 10 times smaller than building voxels)
  • Limited to creating static decorations (at least initially)
  • Autocalculating resource cost and selling value based on voxels
  • Autocreating icons
  • Supporting saving, exporting and sharing templates
  • Comparatively simple and quick to use (no overcomplicated and time-consuming parts)
  • Optionally in the future - supporting different material surfaces (like reflective and non-reflective, transparent, emitting etc.)
  • Maybe based on a separate “designer” profession, or craft level (for example, a woodcutter at lvl 5 may obtain the ability to engineer custom objects - like the currently non-implemented “10000 hours” ability).

All and all, I have doubts about it. The system as it is is quite difficult to implement and time-consuming to create, and I’m not sure it would be very popular to excuse the effort. After all, we have full-scale voxel editors out there. So I would stick to implementing “snapping” technique and leave in-game decor designing util as a low-priority “perspective idea”.

PS. Maybe add “Suggestions” tag to the topic?

Moved to suggestions
@MelOzone
I agree in most of the points and you wrote some ideas i had in the backyard of my brain.
I love the idea using the building manager. You are totally right the scale is ecactly 1:10 so why not use the builder with some limitations to simplyfy it.
As an example chairs, tables and so on get a limited matrix to design them. Than it would be easy to automatically render the png by isometric top right camera. Also the needed iconic qb could be calculated (? Not easy but possible). After designing everything could be saved as a template and traded with other players.
Usable resources and colors are under the same restrictions as in the building manager.

Columns and construction:
Maybe that is totally possible now by adding them as decoration. In the building manager it is not necessary that they clip. Not exactly what i thought of but a good work around.

A possible problem that just popped to mind is that SH hasn’t much “passive” furniture. Tables - yes, but chairs already need some more features to attach to them to enable sitting.
Also autogenerating iconic qb-s (totally forgot about them) does not seem trivial, unlike icons (as the devs pointed out, some fixed-camera autogenerated shots are already used for creating discussion topic images).