MSS: Modular Snap System Plugin

Hi. No there is no way yet, but it seems feasible. I need to test some more, if it works okay then I will put an update.

I added ISM/HISM support, new version (1.4.8) submitted and waiting epic’s approval. Docs/Example project also updated, I also added spline example in there.

To make it work you need to add InstancedStaticMeshComponent to source and/or target classes in plugin settings.

You also need to enable “Multi Body Overlap” in the ISM component collision, otherwise the plugin cannot see individual instances.

Hierarchical ISMs also work, you need to add HISM component to source/target lists.

I hope everything works allright :)))

Quick question on the plugin. Is there a reason why for the source and target component classes you use a FSoftClassPath? As opposed to like a TSubclassOf < UActorComponent >?

FSoftClassPath amounts to 2 string compares per item. This could also facilitate an option per entry to allow ChildOf the class to also pass without adding them individually

Hi, I will check that out, honestly I don’t remember right now.

UE5 Compatibility update

UE5 is here but the marketplace doesn’t support it yet (normally only stable versions are supported, no preview or early access).

I made a UE5 compatible version but there is no way for me to upload it. So instead I uploaded an update to 4.26 version which will work with UE5 too, but you need to compile it yourself as a project plugin.

Be aware that UE5 is early access and things can change or break, no warranty! Don’t use for production!

The update changes northing except the UE5 UI compatibility. Nanite meshes are supported because the plugin sees them as regular static meshes. You need to define the sockets and the collision, as usual.

How to compile the plugin for UE5

  1. Make sure you have a recent version of Visual Studio 2019 (v16.4 or greater)! UE5 will not work with older versions. Docs

  2. Install the plugin for UE4.26 (I only modified 4.26, not older versions), the version of the plugin should be 1.4.9

  3. In your project create a folder called “Plugins”

  4. Go to C:\Program Files\Epic Games\UE_4.26\Engine\Plugins\Marketplace and copy the folder called "ModularSnapSystem " into “<Your Project>/Plugins” folder you just created. That’s the source of the plugin. So now you have “<Your Project>/Plugins/ModularSnapSystem”

  5. To be sure that nothing 4.26 related remains in the plugin go to “<Your Project>/Plugins/ModularSnapSystem” and delete “Binaries” and “Intermediate” folders.

  6. Edit “<Your Project>/Plugins/ModularSnapSystem/SnapSystem.uplugin” (it’s a text file) and replace the line

“EngineVersion”: “4.26.0”,

by

“EngineVersion”: “5.0.0”,

  1. Now launch your project. There will be a popup saying “The following modules are missing or built with a different engine version … Would you like to rebuild them now?” Answer “Yes”.
    At this moment the Unreal will launch the Visual studio and try to compile the plugin.

If everything works the project will open and you will have the plugin working. To be sure, open the “Plugins” window and check it’s there and enabled.

1 Like

followed this tutorial and snap points wont show up any more.

Wont show in ue5? It works for me. do you have “show sockets” checked? @IExcelex

Yes show sockets is checked, I tried with a basic box,

@scha

but your box have sockets? also, are you in “game mode” maybe?
if you try it with the test project (link on marketplace page), does it work?
@Atom1k

yes i created the sockets, the issue was it deleted my sockets from ue4 to ue5. but now i am facing a new issue, the sockets wont snap. I forgot to create the snap points on the Cubes btw…

@Atom1k You don’t have a collision defined. Screenshot says: “Num collision primitives : 0”
Check this the docs or at least this video: Getting started with MSS: How to make a snappy cube (with voice) - YouTube

TY so much! I will check this out

1 Like

:coffee: hello Wallenstein, you offered a socket pack in your post, but I don’t see it here, except a link to the Marketplace for the modular cave pack.

I own the cave pack & MSS, just looking for the sockets created…

@scha - the first post in this thread links to these child posts, about 3rd party socket packs, but the child posts don’t seem to have anything.

hi, i just noticed that too. it was a file attached to the post and it seems when they migrated to the new forums they lost all attached files. i hope @anonymous_user_2709d010 still have it

1 Like

Thanks for the reply.

A lot of forum threads are full of holes, where someone posts the solution to some problem, and everyone likes it, but the solution is now missing. :face_with_raised_eyebrow:

Hope it turns up.

Love the plugin - have a question:

If I create an actor bp from a selection of static meshes, then I can snap other static meshes to it.

However, if the “source” is the actor BP, it does not snap to another actorbp?

Thanks for any help

[Update] There is a checkbox for “Snap Attached Too” in the settings that did what I needed

[UpdateUpdate] BTW - When creating a bp from meshes in the scene - you can choose “harvest components” which avoids creating those pesky child actors

We just updated the plugin for UE5.0, the update v1.5.0. should appear on the marketplace soon.

The update is about UE5 compatibility.

Note about ISMs. There is one new interesting feature in UE5, in some cases you can edit instanced static meshes directly in the level: move, duplicate and delete instances as if they are normal actors. We looked if it would be possible to extend mss plugin to snap instances but found that the editor won’t fire the usual “object moved” event in this case. So waiting to see if this is added in later versions.

Hi, unfortunately, I can not install your plugin on the vanilla 5.0 engine. It works on previous versions, (4.26) but when I click “install to Engine - > 5.0” nothing happens. Do you have any info on when I can expect it to work?
Thanks!

Hi, same here. I have no idea, maybe launcher bug? I click on install to engine and it just closes the dialog and nothing happens

ps. now it says Unavailable. I think they have some problems with the marketplace, probably just overloaded.