Resource icon
What permissions do you give others to modify and/or maintain your submission?
Modify: YES - Maintain: YES - I give permission for my entire submission to be modified by others or used in their own work. I give permission for my entire submission to be maintained by others as well.
LIGHTO TOOL BOX

tools for mappers

All of those scripts are meant to help mappers figure out their ideas with something else than what the base game offers, be to add flair or make it easier on the mapper to make less complex geometry/setups,, like using wind of speed pad fofs to movep layers in the air, or not having something to disallow player general interactions for sake of a cool map set piece, all is needed to do is follow the instructions!

the tools are:


Dashrings

namespace : LTB_dashrings

kart0001.png


Dash Rings! A option for air mobility with a little extra when touching a diagonal or horizontal dashring, upon landing (assuming you didnt bounce a wall or somehow got hurt) players will slide for a second to maintain the speed acquired mid-air and avoid the ground speed cap


1705113953472.png


this is how you'll see in the editor

Note that all of them are green, because their color change in-game , and to save object and sprite slots, all of the four different power tiers shares the same sprites.


the power tier is from the weakest to the strongest : grey - > yellow - > red - > blue


Flags are very self explanatory:

1705113976435.png


centralize : will center the player in the dashring, vertically and horizontally (depends on the type)

keep speed : will use the current player speed, it wont go below a minimum speed to have some propulsion

add speed : will add the dashring speed in the players current speed, it stacks up

1705113994858.png


the speed field (or parameter field, as default), controls how strong the dashring will be, thus changing its color depending on the power, ranging from 0 to 15

pack the contents of the pk3 into yours, if you using wad format, change the name of the lua file for LUA_LBDR


Alternate Dash Panels (Dash Pads / Zippers)

namespace : LTB_dashpads

kart0017.gif


It may seem odd to have this in the package since the base game already has the feature, but this script contains a lot of options that the vanilla counterpart doesnt it, like offering a option to use low friction to offer wall bouncyness, or difficulty to control for having a high speed as a trade off, or cover more road naturally

by default, the vanilla ones uses the sector effect 1280 (Speed Pad) and the linedef action/type 4 (Speed Pad Parameters), for the alternative ones, the sector effect is not needed, instead, is needed to run a lua function from a linedef trigger

a simple setup os required for these to work

this is a linedef trigger, the right liendef is using the action/type 399 (Level Load)
1705114133516.png

and the bottom one is using the action/type 443 (Call Lua Function) , and the front textures has the function name on it

1705518040036.png


LTB_ALTDSHPAD


skipping this is not optional, without this the script wont work on your map, thats to prevent the script to work on maps where it shouldnt.

there are some basic rules when using those to make sure it has a solid conveyance

to being with, it should use one of the flats/textures provided in the pk3, so by just seeing the floor, people will know whats to come, and use the colors accordingly following the powert tier (grey to blue, blue being the strongest), and slope the front and the back of the dash pads, so theyre more visible and at last, scroll the floor texture forwards to give the visual feedback of how strong it is.

1705114367354.png

(visual refference)

the basics to work are:

a sector with a tag (IT DOESNT NEED ANY SECTOR EFFECT, but can have any if desired)

and a linedef with action/type 4 (Speed Pad Parameter) tagged to the desired sector

all of the linedef flags will make it behave different, pay attention to this because there is a lot and is easy to mess up


Upper Unpegged : will stop an yvertical momentum the player has (useuful fof FOF speed pads)
Lower Unpegged : FOF top/bottom (depends on the gravity flip)
Slope Skew: will make the player face the angle of the speed pad, note this will try to account for drifting so speed pad ramps wont throw people off the angle it should when trying to drift store
Not Climbable : will make players have less friction, thus making them slide, this is controlled by the liendef texture's horizontal and vertical offsets. the horizontal controlling how much it will slide in percentage, 50% is more or less slipery, 10% being VERY and 90% not much difference, the default is 64% (if you keep the field at 0), the vertical offset defines how long the effect will ladt, in TICRATE, which means 35 is equal one second, you can do 35*7 for 7 seconds and on, the default is 4 seconds (if you keep the field at 0)
No Midtexture Skew : if the player is already moving faster than the speed pad, nothing will happen
Peg Midtexture : the speed pad force will use the base speed + the current player speed, is additive
Solid Midtexture (no teleport to center): this is the same as the vanilla ones, it wont teleport the player to the center of the speed pad
Repeat Midtexture (force spinign frame): for SRB2Kart this goes unused, this script however, it will only work if the player is going faster than the speed pad force
no sonic : no sound will be played, neither the character voice clip
no tails: it wont display the image trails

with all that, it gives more flexibility when mapping set pieces and can help to travel long straight roads faster

pack the contents of the pk3 into yours, if you using wad format, change the name of the lua file for LUA_LBDP


Items Gumballs

namespace : LTB_gumballs

"item gumballs?"

item Gumballs! you know, sonic 3 bonus stage????

kart0045.gif


those are item pickups, you know, like this but it has more visual flair and some optional changes as well to not act entirely as a dropped item

kart0003.png


each item uses its own color, and item icon in front of the gumball, some items shares colors, others have special effect, like blinking, pulsating or emit particles to make sure theyre readable from afar and players can figure which item it may be

kart0019.gif


they have gravity, and bounce up few times when touching the ground (also the ceiling too), get affected by slopes, they can transfer their momentum to other gumballs upon collision and solid moving objects can do the same as well

kart0021.gif


when a player collects touches one, they will be stored in the item slot, if it happens that the player touches another gumball that is not the same item type curently in the itemslot, they will be swaped, the current item in the item slot will be dropped as a item gumball

by default, all vanilla items are supported. When XitemLib comes to play, it does supports it as well, by default, its sampler pack, Master Emerald, TF2 Teleporter, Checker Wrecker and Blue Spring. If a item is not supported it will use defaults so it wont break, if you want your item added, contact me!

1705186941488.png


this is how they are on the editor, the Spawner type is a special type that will be further described later

1705186961496.png


by default, the angle field defines the item type to spawn, leaving at 0 will spawn a random item type at map start

No Physics : as it says, it wont move or interact with anything at all, only players to be collected

No Respawn : coleticting it causes ir to be gone forever, being a one time pickup, note that by default, those will always respawn, unless specified

Spawner : is a special type, when this flag is selected, this specific gumball will be turned into a spawner that will spawn other gumballs in a specified time period.

when using the Spawner type, the item type to be defined will be in the Paramater field, instead of the angle field, the angle field defines the cooldown, if the parameter is left as 0, it will spawn random types every time, else it will only spawn one type, the gumball will be also intangible and invisible only serving the purpose of spawnng other gumballs

pack the contents of the pk3 into yours, if you using wad format, change the name of the lua file for LUA_LBGB


Item Block

namespace: LTB_itemblock

1705187257787.png


When the item slot is locked players wont be able to use neither deploy items in their item slot, good to keep map set pieces under control or avoid exploits that requires items,
the red cross indicates the block alongside with sounds when getting the item slot locked/freed or trying to use ut

it only requires one linedef trigger to call a lua function and a flag of the liendef to be cheked to be turned on/off

by running a linedef trigger to call a lua function (linedef action/type 443), and using the linedef flag [8]Not Climbable to turn it on/off (check it to turn it on)
and use the name LTB_ITMBLCSTCH on the texture fields
1705187367513.png


some advices when using this

Make big trigger sectors so players cannot miss by driving around or going too fast, you must ALWAYS use one trigger to turn it on and other one to turn it off, pay atention to the checkpoints as well (so someone dont exploit it)

pack the contents of the pk3 into yours, if you using wad format, change the name of the lua file for LUA_LBIB


Player Intangibility

namespace: LTB_intagible

kart0023.gif


This makes players intangible, for those that arent familliar with this term, it makes like a ghost, visible but nothing can touch them, items, solid objects, level hazads, other players and when under the effect, they will blink fast

the exception being ONLY, springs ,item boxes and dashrings (things that maps/game requires to work)

with this, mappers can make setpieces and nobody will break the sequence by hitting someone else, or getting hurt or colliding with something midway

everytime it is activated, the Hyuudoro sound effect will be heard, for unadvised players

like the item block, this one uses a linedef trigger to call a lua fnction that turns on/off the effect


by running a linedef trigger to call a lua function (linedef action/type 443), and using the linedef flag [8]Not Climbable to turn it on/off (check it to turn it on)
and use the name LTB_INTANGPLR on the texture fields
1705187225345.png


some advices when using this

Make big trigger sectors so players cannot miss by driving around or going too fast, you must ALWAYS use one trigger to turn it on and other one to turn it off, pay atention to the checkpoints as well (so someone dont exploit it)

pack the contents of the pk3 into yours, if you using wad format, change the name of the lua file for LUA_LBIT

Egg Barrier

namespace: LTB_eggbarrier

kart0024.gif


Egg Barriers, keeps a path closes until someone opens it up, doing so, will keep it open for a desired amount of time, beeping to let players know and use a different beep in the last three seconds plus some extra leniency on the final second
this is intended to be used in turns where its easy to skip through offroad or anywhere else you dont want players to navigate that easily through with boost items

all of them can be turned off by a button on the map (with a linedef trigger) being up to the mapper on how to do so

as many other stuff , this uses linedef trigger to call a specific lua function, then turn off a specific pair of gates

1705192321104.png


thats the biew on the editor, to make a setup is fairly simple, you need at least two of them, sharing the same ID (angles in increments of 360, like checkpoints) and one of them, ONE, having the not master flag checked.

the pole that is the master one (dont have the no master flag checked) must point towards the pole that has the flag checked, or else it wont work

with that the visual part is done, an aparent egg barrier is placed down in the map

to be able to block players physicaly, it needs some extra steps, fortunately most of it is semi automatic.

to have players to get blocked physically, all that needs to be done is to place a solid invisible FOF in the map, and mark the Not Climbable flag of the FOF control linedef.

something morei mprotant is that, the objects themselves MUST BE inside the sector the FOF is located , like this:

1705192625268.png


to turn off a Egg barrier, a lua function has to be called with al inedef trigger,
a function named
LTB_EGGBARR, other fields of the liendef controls what the function does
1705192732929.png



1705192853442.png

the linedef tag picks which set of egg barriers to affect, is the ID (the number that increments every 360 degrees in the editor) of them, remember that more than 2 barriers can have the same ID, all of them will be affected no matter what

1705192869531.png

the texture horizontal offset controls for how long a barrier will be turned off until it turns on again, by default (leaving it at zero), will be 6 seconds, kep in mind this uses the TICRATE format, so 35 is equal one second, so 35*6 is 6 seconds

what this function does is tell the barriers to do something, in tha tcase stop shooting laser beams and move the solid invisible FOF out of the way

flags are very self explanatory
1705193083291.png


not master : has the purpose to tell that this pole is only meant to be used to form pairs, it wont control anything but is necessary to make it work

not solid : will m ake the poles intangible, so players and other objects can pass through them

invisible : makes both of them invisible, meaning it wont be seen, good to use another objects or level geometry as decoration

fun fact, you can have one single non master pole to be connected to several other at same time, and it still works!
kart0025.gif


here a visual representation of what happens under the hood

kart0027.gif


worth mentioning this works for sloped FOFS, but only SECTOR SLOPPED ONES

pack the contents of the pk3 into yours, if you using wad format, change the name of the lua file for LUA_LBEB

Zipline
namespace: LTB_ziplines

kart0029.gif


this gif may sound misleading but it is what it is, Ziplines! Make players move between points like it is in a grindrail or a zipline

to start "riding it" players (or other objects) must move forward the start/end at a minimum speed and at a similar angle of the zipline, their previous speed will be used to travel through the zipline and its possible to go backwards as well, if someone fails to travel and starts going backwards, they will be given a helping hand to make it out of it, if two objects bounce in the zipline, momentum will be carried over (depends on both objects speeds/trajectory), players damaged on the zipline will be flung forward with high speed, at the end, the horizontal and vertical speed will be kept and players will be flung off like it went out of a simple ramp

not only players can ride those, in fact a very specific list of objects, those are:
- Jawz
- Orbinaut
- Eggman Item
- Checker Wrecker
- Minecart (from community resources)
- Empty Kart (from community resources)
- Random Item (from community resources)
- Item Gumballs

and also, those same shootable item, when throw while riding the zipline, will follow it if the player is aligned to it

kart0092.gif


visual example of speed being carried over and kept after exiting the zipline

kart0088.gif


this is the view on the editor
1705196645622.png

the whole zipline is split in segments, each one containing two points, the start and the end.
See as this

- Each Zipline is a GROUP of SEGMENTS
- each SEGMENT has a PAIR of points (end - start)
-each Zipline GROUP has a unique ID with the PAIRS having a sequential ID that follows the orher of the zipline)

there are TWO IDS
1 - the zipline ID (increments by 1 every 360 degrees)
2 - the point ID (increments by 1 normally)

Example:
Zipline of ID 1, has 6 points, each point will use the zipline ID, and each point will have a increasing ID, starting from 0 and increasing ONE by each one.

visual example
1705197093173.png


it has to be done this way so the script can discern with points are connected, and where the zipline start/end or else every point would be connected into a single zipline

the flags does the following
1705197251273.png


no gavity force : will make the zipline speed be constant, no increase or decrease depending on the vertical angle
pogo spring effect : this will will give players the pogo spring effect upon exiting the zipline
hang from top : will make players do exactly what it says, like ziplines does normally

there is a linedef trigger to help manage ziplines between maps for desired tastes, run a liendef trigger to call a lua function, called
LTB_ZIPLINE
1705197669207.png


to being with, the linedef flags

Not Climbable : will connect the poitns with the visual colored sparkles (purelly visual)
No Midtexture Skew : Will make both angle of entrance from front/behind be the same (74 degrees)

Peg Midtexture : will make obligatory to object be o nthe ground to start riding a zipline

Solid midtezture : will make objects unable to enter a zipline from points that arent the start/end of it

by default, is easier to enter a zipline goind forward than going backwards (inthe end of it) to make it less frustrating and objects can enter the zipline from any point, but has to be moving in a certain angle (doesnt have to be 100% precise) so sometimes in very situational cases, people may get to ride a zipline from a middle points, in case someone wants to avoid this, the options are there

now to the textures offsets
1705198051136.png

the front side ones will define the minimum and maximum speed of all ziplines, in fracunits, of course (so normal digits like 1, 2 ,3 ,4 so 24 speed is 24 speed in game, i recommend you trying values there)

the back side is a bit different

the texture horizontal offset, will define the VERTICAL offset objects will have from the zipline adding vertical extra space

the vertical offset will define the color of the sparkles that connects each point
if left as 0, a scheming will be used that changes colors based on the distance of the segments, grey being very short and pruple being very large, going from grey - yellow - red - pink - purple

leaving at -1 it will use a random color (ach individual sparkle) betwen 1 and 145 (any of the game skin colors)

with anything else besides 0 and -1 using the corresponding skincolor number

items like, eggman items, random items will use their vertical momentum when falling straight down in a zipline point so there can be done a setup to make them fall and move alongside the zipline easily

Wind sectors can speed up/slow down objects on the zipline. When a object goes throught a upwards wind fof, the speed increase, when it is a downwards fof, it decreases, no matter the zipline vertical angle with the lenght of the wind linedef setting the strenght of the push

kart0085.gif

kart0084.gif

example of upwards wind being used, note how it makes go reverse when going down, because it adds up to the speed.

pack the contents of the pk3 into yours, if you using wad format, change the name of the lua file for LUA_LBZL

worth note that all of those are prone to receive updates/changes/fixes or have features removed and it is the MAPPER REPONSABILITY to keep its content updated and adapt to updates/changes down the road

that said, I'm always open to suggestions, critique and feedback and PLEASE, if you see something weird that you think it shouldnt happen or that it is clearly a bug , contact me! lighto97 on discord or here in the MB

Included in the zipline attached, there are the tools and the test maps so mappers can have a refference of how do things.
  • 1705114144686.png
    1705114144686.png
    4.9 KB · Views: 80
  • kart0090.gif
    kart0090.gif
    721.7 KB · Views: 77
Author
Lighto
Downloads
200
Views
1,002
Extension type
zip
File size
101.8 KB
MD5 Hash
0444375faa1f58b0632e7ef8c476bb3d
First release
Last update

More resources from Lighto

Share this resource

Back
Top