September 21, 2023, 07:20:21 am

The Gang Garrison 2 Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

NOTICE: Due to a rise in bot activity, new posters need to be approved before posting.

Join the community Discord server!

Pages: [1]

Author Topic: Payload  (Read 3159 times)

BassMakesPaste

  • Full Member
  • ***
  • Karma: 22
  • Offline Offline
  • Posts: 590
Payload
« on: April 01, 2018, 05:47:02 am »

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.
« Last Edit: April 04, 2018, 02:19:50 am by BassMakesPaste »
Logged
Quote
<ThouBot> Thou neighboreth finds nay m'rcy in thou eaye. Thou common-kissing nut-hook.
<BassMakesPaste> nut-hook
<BassMakesPaste> thoubot, what is a nut-hook
<ThouBot> Thou'seth face..
<MrRatermat> OH BURN

PrOF

  • Heroic Member
  • ****
  • Karma: 43
  • Offline Offline
  • Posts: 600
  • Sometimes a dev. Only sometimes
Re: Payload
« Reply #1 on: April 01, 2018, 05:57:10 am »

This is very interesting, I've tried multiple times to port Payload to 2.9 but it was always a nightmare because of radically changed code between updates
Logged

bullets (obviously)

  • Seasoned Member
  • *****
  • Karma: 40
  • Offline Offline
  • Posts: 1962
Re: Payload
« Reply #2 on: April 01, 2018, 10:32:56 am »

logged in just to upvote this
Logged

BassMakesPaste

  • Full Member
  • ***
  • Karma: 22
  • Offline Offline
  • Posts: 590
Re: Payload
« Reply #3 on: April 01, 2018, 02:03:52 pm »

This is very interesting, I've tried multiple times to port Payload to 2.9 but it was always a nightmare because of radically changed code between updates
It's not a port. I gave up on trying to port the old payload mod and just rewrote everything.


Make maps pls.
Logged
Quote
<ThouBot> Thou neighboreth finds nay m'rcy in thou eaye. Thou common-kissing nut-hook.
<BassMakesPaste> nut-hook
<BassMakesPaste> thoubot, what is a nut-hook
<ThouBot> Thou'seth face..
<MrRatermat> OH BURN

PrOF

  • Heroic Member
  • ****
  • Karma: 43
  • Offline Offline
  • Posts: 600
  • Sometimes a dev. Only sometimes
Re: Payload
« Reply #4 on: April 01, 2018, 02:06:49 pm »

This is very interesting, I've tried multiple times to port Payload to 2.9 but it was always a nightmare because of radically changed code between updates
It's not a port. I gave up on trying to port the old payload mod and just rewrote everything.


Make maps pls.
+1
Logged

Spazz

  • Seasoned Member
  • *****
  • Karma: 44
  • Offline Offline
  • Posts: 1933
  • Almost too much seasoning.
Re: Payload
« Reply #5 on: April 01, 2018, 02:53:56 pm »

Anyone downloading the map, please rename to something else, or else you'll likely be slapped with;
Code: [Select]
___________________________________________
FATAL ERROR in
action number 1
of Create Event
for object GameServer:

Error:#Map ggb2_tmp_map is not in maps folder, and it is not a valid internal map.#Shutting down.

Bass has already been notified, but this will happen if the timer runs out in v01;
Code: [Select]
___________________________________________
ERROR in
action number 1
of  Step Event
for object __newobject850:

Error in code at line 27:
               if (PayloadCart.reverse_timer > 0)
                              ^
at position 29: Unknown variable reverse_timer
« Last Edit: April 05, 2018, 01:05:09 am by Spazz »
Logged

<3 Bustatunez

BassMakesPaste

  • Full Member
  • ***
  • Karma: 22
  • Offline Offline
  • Posts: 590
Re: Payload
« Reply #6 on: April 01, 2018, 09:34:59 pm »

 :smiley16:

« Last Edit: April 01, 2018, 09:35:36 pm by BassMakesPaste »
Logged
Quote
<ThouBot> Thou neighboreth finds nay m'rcy in thou eaye. Thou common-kissing nut-hook.
<BassMakesPaste> nut-hook
<BassMakesPaste> thoubot, what is a nut-hook
<ThouBot> Thou'seth face..
<MrRatermat> OH BURN

Kevin Kuntz

  • Heroic Member
  • ****
  • Karma: -58
  • Offline Offline
  • Posts: 712
  • panda took the kids
    • Rav And Kill Bill
Re: Payload
« Reply #7 on: April 02, 2018, 01:00:15 am »

Bigga Betta
Logged
I PEAKED
I PEAKED

Spazz

  • Seasoned Member
  • *****
  • Karma: 44
  • Offline Offline
  • Posts: 1933
  • Almost too much seasoning.
Re: Payload
« Reply #8 on: April 02, 2018, 01:23:02 am »



Now to wait on spoken of updates, no run, will be here when it happens.



Nice silent updates lol


Is that an elevation bug since its rotating? Happens in both directions.



Send help, I'm dying.



This is what happens when you leave me alone to map.
« Last Edit: April 05, 2018, 01:00:25 am by Spazz »
Logged

<3 Bustatunez

Spazz

  • Seasoned Member
  • *****
  • Karma: 44
  • Offline Offline
  • Posts: 1933
  • Almost too much seasoning.
Re: Payload
« Reply #9 on: April 05, 2018, 01:04:10 am »

Merged old posts.

Moving platforms (custom or internal) have a desync bug when completing it's journey from type:2 to the next node. Payload moves as normal, but both types of platform positions (x and Y) will edge away from original location each time the journey is completed.
Logged

<3 Bustatunez

BassMakesPaste

  • Full Member
  • ***
  • Karma: 22
  • Offline Offline
  • Posts: 590
Re: Payload
« Reply #10 on: April 05, 2018, 12:19:12 pm »

Merged old posts.

Moving platforms (custom or internal) have a desync bug when completing it's journey from type:2 to the next node. Payload moves as normal, but both types of platform positions (x and Y) will edge away from original location each time the journey is completed.

I thought I fixed this in v04...

Was the payload continuously pushed or was it stopped or blocked at any point? Also, what speed modifiers were applied?
Logged
Quote
<ThouBot> Thou neighboreth finds nay m'rcy in thou eaye. Thou common-kissing nut-hook.
<BassMakesPaste> nut-hook
<BassMakesPaste> thoubot, what is a nut-hook
<ThouBot> Thou'seth face..
<MrRatermat> OH BURN

Spazz

  • Seasoned Member
  • *****
  • Karma: 44
  • Offline Offline
  • Posts: 1933
  • Almost too much seasoning.
Re: Payload
« Reply #11 on: April 05, 2018, 02:29:45 pm »

Only solo play, no speed modifiers, no blocking. Noticed it on Meow's map immediately but couldn't reproduced it due to latency, except that was at the starting node so it was probably just a game sync bug.(?) So I started up my own map and was able to slowly edge the platform half a screen away by the timer limits.

It can happen to just X or just Y (flat) moving platforms, but it's more noticeable for an X+Y (diagonal) platform as it will violently shake the players screen for a handful of frames and there's a noticeable clipping between the ledge the platform should meet and it's resting point.

Have been using v03, did not noticed the link updated to v04 Will try it out in a sec

[edit] Just tested, same still applies for v04
Includes the (extendable) bugged position when completing the elevator portion


This moves to a rounded 100 gg2 units diagonally.
Code: [Select]
{index:1,nodetype:2,type:PayloadNode,x:1824,y:1438},
{index:2,nodetype:0,oneway:false,type:PayloadNode,x:2424,y:2038},
« Last Edit: April 05, 2018, 02:42:48 pm by Spazz »
Logged

<3 Bustatunez

Skeleton

  • New Member
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 1
Re: Payload
« Reply #12 on: June 05, 2021, 12:58:54 pm »

 :z6:
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.
Logged
Pages: [1]
 

Page created in 0.046 seconds with 36 queries.