Hi all.
I was procrastinating over spring break, so I made a payload plugin. I haven't tested it in multiplayer, but it works so far when I play alone. Also, by having it in your plugins folder, it lets you make maps using payload entities. If you're familiar with the payload mod I made in 2015, it functions in a really similar way. However, it is not a port; I wrote this de novo. This means that a few features (freefalls) from the old mod didn't make it into this plugin.
Get Payload here.The idea is that you'll keep this plugin loaded for both playing and making payload maps. So, go ahead and download it and place it in your plugins folder. I've included
a handy accessory plugin that you can use to run it from a subfolder within your plugins folder.
***GGON PROPERTIES FOR PAYLOAD NODES***
index: index number for each node. Starts at 0. (user can't change this)
nodetype: type of node. 0 = standard; 1 = bottom of slope (no cooldown for going backward); 2 = init for elevator (does not rotate cart sprite). Affects the payload path
after where the node is placed, so the bottom of the slope and the starting point for the platform.
cap: is it a capture point? false or true (always true for last node)
oneway: Can the cart go back once it passes this point? true or false (always true for points)
speed_f_mod: Modifier for forward speed on this node (multiplicative).
speed_f_mod: Modifier for reverse speed on this node (multiplicative).
xscale: image_xscale modifier for draw when cart is on this point.
yscale: image_yscale modifier for draw when cart is on this point.
**PAYLOAD PLATFORMS**
If you create a Payload Platform entity, the nearest node with nodetype of 2 will take that platform as its own. Otherwise, each node with a nodetype of 2 will automatically create its own platform. I did this so that you could add your own sprites to payload platforms. However, I also added a default payload platform sprite, so don't worry if you don't have one already.
**GLOBAL SETTINGS***
You can add global metadata that affects all of the nodes on your map:
global_xscale sets the horizontal scaling for the cart on all nodes. It overwrites the individual xscale.
global_yscale sets the vertical scaling for the cart on all nodes. It overwrites the individual yscale.
global_speed sets the speed
multiplier for your cart on all nodes (0.5 makes it move half as fast. Don't put it past 5, because it will break things if it goes too fast.)
The last node will always be a point, no exceptions.
Note: please do not make this serversent yet. It's untested.
Archived versions are attached to the post.