Update Quick Start

Kyle Austad 2024-10-05 16:51:01 -06:00
parent 04fddc91fc
commit f8105d2b09

@ -49,4 +49,43 @@ Under the *Details* window, typically on the right of the screen, there is a *De
Once that is finished, that is it! You now have custom attach locations for hardpoints and weapons on your custom ship mesh. If you want to move the logic over to a different pawn rather than using the included one, check out the *Replacing Pawn* section of the documentation.
## Replacing Included Station Mesh
## Replacing Included Station Mesh
Under *ModularShipSystem/Demo/Blueprints* you will find the blueprint *BP_BaseSpaceStation*. The process for the space station is almost identical to the space ship. Swap the static mesh, scale it correctly and then select all of the box collision boxes and move and scale them to their appropriate landing pads on your station mesh.
![](https://git.crabinteractive.com/crabdev/MSSS-Documentation/raw/branch/main/Images/QS10.png)
You will notice that each of the box collisions has a text renderer attached. In the demo this is simply the dock number used to show the player what dock they are docking at. These can easily be removed as well as the ones attached to the station mesh, which are used just for the station name. You can repurpose them if you want.
Next, open the static mesh you are using for the station and open the socket manager. Repeat the same process you did for the ship.
IMPORTANT!!! - The sockets on your station static mesh need to match the names of the box collision they are assigned to. For example if a station has 16 docking locations, each box collision is used to tell when the player overlaps an area in which they can initiate docking and tells the player which box collision they are overlapping with and which socket that box collision will have them dock at.
So if your station has 16 landing pads, it needs 16 sockets and 16 box collisions, one for each landing pad. The names of the box collisions and the sockets need to match. So for landing pad 1 the socket name in the demo files is *Dock1* and the matching box collision is *Dock1*. This way the system knows, when the player overlaps with *Dock1* Box Collision and docks, they should dock at *Dock1* socket on the station mesh.
This is the only real difference between changing the mesh on the ship and the station.
Aside from that, once your sockets are named and positioned, the box collisions are named and positioned, and any text renderers are named and position, switch over to the *Event Graph* of the *BP_BaseSpaceStation*.
![](https://git.crabinteractive.com/crabdev/MSSS-Documentation/raw/branch/main/Images/QS11.png)
In the top commented section of blueprints you will find the logic for mapping docking collisions to their corresponding socket locations. Just make sure a reference of each of your docking box collisions is added to the *Make Array* node. There are 18 by default with the demo files. If you remove some of the docking collisions for a smaller station, delete those box collisions and remove their references from the *Make Array* node. If you add more simply right click the *Make Array* node and click on *Add Pin*. Then click and drag on your new box collision on the left list of components and drag it onto the new pin you just created on the *Make Array* node.
The last thing to do is just register the *On Begin/On End Overlap* events for your box collisions. By default, the 18 that come with the station are already done. So unless you added or removed box collisions you can skip this. If you added/removed box collisions do the following.
![](https://git.crabinteractive.com/crabdev/MSSS-Documentation/raw/branch/main/Images/QS12.png)
If you removed some of the box collisions that came with the kit, simply delete their corresponding *On Component Begin/End Overlap* events from the *Event Graph*
If you added new box collisions (and have ensured they are named to corresponding with their correct docking socket on the station mesh), then click on the newly added component in the list on the left. On the right *Details* menu, clear down at the bottom, there are events. Click on the *On Component Begin Overlap* and the *On Component End Overlap* events to get event nodes for that box collision that will trigger when the player begins and stops overlapping it.
![](https://git.crabinteractive.com/crabdev/MSSS-Documentation/raw/branch/main/Images/QS13.png)
On the left of the *Event Graph* is the *End Overlap* events. Place your newly created event there and copy and paste the *Disallow Player to Dock* Macro node or drag it onto the event graph from the list of macros on the left. From the event node you created, drag from the *Other Actor* pin and connect it to the input pin *Other Overlapping Actor* on the macro node. Then connect the execution pins.
![](https://git.crabinteractive.com/crabdev/MSSS-Documentation/raw/branch/main/Images/QS14.png)
Now for the *Begin Overlap* event you created for your new box collision, copy and paste (or drag from the macro list) the *Allow Player to Dock* and the *Set Docking Socket* macros. Connect the *Other Actor* pin from your event node to the *Other Overlapped Actor* input pins on the two macro nodes, then drag a reference (like you did for the *Make Array* node above) into the event graph and connect it to the input pin *Dock Collision Component* on the *Set Docking Node*
![](https://git.crabinteractive.com/crabdev/MSSS-Documentation/raw/branch/main/Images/QS15.png)
That is it! You should now have your custom station mesh in the blueprint as well as correct docking!