[Reusable] LMS (Last Man Standing)

This thread contains content that may be reused, modified, or ported by anyone.
Status
Not open for further replies.
A game mode inspired by Skulltag, now here to annoy/entertain you in SRB2.

Last Man Standing
Or LMS for short

This Lua, when added and then enabled, lets you turn Match into a survival of the fittest, as you have a limited number of lives and a more scarce resource of rings, weapons, and shields.

Goal:
Be the only player left surviving in the round.

How to play:
Once you begin the round, a 10 second gracing period will begin, where you cannot harm other players. Afterwards, all is fair game. Firing rings costs some of your rings, but be aware that the fewer rings you have, the easier it is for your opponent to scoop them all up. When a player is eliminated from the round, everyone left alive earns 500 points, stacking with the 100 points for killing said player. Once there is only one player left, the round ends.

List of included variables:

lms <0-1>
If set to 1, the next time you load a map in Match or Team-Match, it will become a game of Last Man Standing. (Or, Team Last Man Standing) Please turn this on if you want to play LMS!

lms_startlives <1-10>
Defaut: 1 Quite simply, this sets how many lives all players in the game start with at the beginning of the match. You may want to up this value if you enable sudden-death or similar. NOTE: This will only take effect after a map change.

lms_countdown <0-30>
Default: 10 Determines the number of seconds of "warm-up" time before the round actually begins. Set this to 0 if you want the round to begin immediately on map load.

lms_nopity <0-1>
Default: 1 When set to 1, you will only get one pity shield at the beginning of the match. Set this to 0 if you want pity shields to appear again.

lms_activeghosts <0-1>
Default: 0 Modifies the interactivity of ghosts. When set to 0, ghosts may not interact with the collectibles, and cannot have shields or rings. Set this to 1 if you want ghosts to be able to take stuff in the level and have shields and muck up the game.

lms_quietghosts <0-1>
Default: 0 When set to 1, the sound effects of ghost players will be hushed. If your server is filled with many players, and don't like listening to ghost jumps and spins, try enabling it.

lms_softsuddendeath <0-99>
Default: 3 Soft Sudden-Death is a custom rule that causes instant-kills for players who lack a shield. The number value indicated how many minutes until this rule takes effect. Set it to 0 if you want it to start immediately. Set it to 99 if you don't want to see it happen (It'll just take 99 minutes to arrive, more than enough time to finish a round.)

lms_frantic <0-1>
Default: 0 When enabled, this will gradually reduce the amount of invincibility frames your character has after getting hit. Set this to 1 if you want to play with this rule.

Keep in mind that this script may shoot some warnings, but it's still playable. I'll be working on that. Feel free to give suggestions

lms_gamerule <0-3> is a planned feature that will allow you to change how the game behaves. This is not guaranteed.
A custom scoreboard (mostly geared to team-match) to show who is alive and who is a ghost.

Tips:


  • Gang up on the player with a lot of weapons or an attraction shield, as they will often control the endgame with them. As such, weapons and ammo tend to be very dangerous.
  • Cycle the shields often. Having a shield can protect your precious weapon arsenal.
  • Having a few rings is like having one. Most skilled players will be able to scoop up quite a few rings and leave you none behind. Stocking up on a lot of rings means shooting less, but also means you're very safe in case someone makes you spill, and more often than not they will find a more vulnerable player to shoot at.
  • If you want your game to end quicker, add suddendeath. Feel free to try it, especially with several lives.
  • If active ghosts is on, be a troll! Try and wait for the top player to get an important box or an air bubble, and take it before they can, or pop a recycler box to move the weapons round a bit.


Special thanks to all the people who joined my server to give it a test run.

 

Attachments

  • lms-0-2c.lua
    8.6 KB · Views: 420
  • lms-0-3d.lua
    18.7 KB · Views: 482
Last edited:

MellowJacket

The unreliable judge
Judge
Hello! Sorry for leaving this in submissions for a week, I just got around to testing this.

This for the most part works fine, although ghost players being able to collect items leads to potential abuse. As a concept it works fine though. It honestly might be an idea just to force dead players to be spectators rather than ghosts.
 
Last edited:

SonicX8000

Graphic & Sprite Modder.
Judge
While ghosts collecting items can lead to potential abuse... it could have a use... ghost players could haunt the level and begin "hiding" the items so players that are alive can't use them. I recall this being a thing in Bomberman 64 but that might've just been ghost bombermen controlling the alive bombermen.

It could work... but who knows?
 

Chicmunk

🐊𝓕𝐈𝓝𝓓 𝐓𝓗𝐄 𝓒𝓞𝓜𝓟𝓤𝐓𝐄𝓡 𝓡𝓞𝓞𝓜!😜
*Instant response from the sight of this on the MB* THANK YOU BLAZE! ^_^
 

Blast98

Full G-Tag name: Blast9867
I sure remember Last Man Standing. But you know, for the srb2 version, you can set it to be it's unique gamete instead of placing it over Match and perhaps you can also make unique maps for that game type as well which is seen in Skulltag/Zandronum.
 

MK.exe

The one and only!
Kart Krew™️
Contest Winner🏆
make unique maps for that game type as well which is seen in Skulltag/Zandronum.

I like the idea! I feel like i want to make some maps that work with this custom game mode. They would be small and compact so the pacing is fast!
 

Blast98

Full G-Tag name: Blast9867
I like the idea! I feel like i want to make some maps that work with this custom game mode. They would be small and compact so the pacing is fast!

You know, the LMS maps can be in the MAPLx slots since that would fit.
 
Updated to lms-0-2.lua

  • Ghosts now cannot interact with the collectibles, as well as air bubbles. If you want to restore the old behavior where they could pick up weapons and rings, and pop boxes so they can troll the alive, lmsinterghosts is for you, just set it to 1. (This also includes air bubbles, muahaha)
  • I also fixed the error that comes with running into lava before the game starts. You're also completely invulnerable before the countdown, which should have happened before, but you know, bugs!
  • You can now control the pity shield appearing in LMS. Set lmspity to 1 if you want to let the pity shield happen again.
  • Spectators no longer get "eliminated" while not playing.
It honestly might be an idea just to force dead players to be spectators rather than ghosts.

Now, I actually thought about this a while during the making of this, and I did it the way I did for a few reasons, including:

  • Keeping track of score as simply as possible.
  • Letting the eliminated player move and do something to pass the time.
  • Allow the option for them to collect stuff under the noses of the alive (also just for fun!)
  • It shows the impact that the players have on the game by the ghost count gradually increasing.
I just wasn't complete with making it work at the time.

It could work... but who knows?

Ask and you shall receive.

*Instant response from the sight of this on the MB* THANK YOU BLAZE! ^_^

You're welcome!

I sure remember Last Man Standing. But you know, for the srb2 version, you can set it to be it's unique gamete instead of placing it over Match

So far, this isn't do-able with Lua. But you can temporarily disable LMS if you want to play Deathmatch instead! Try lmsenabled 0 in the console.

and perhaps you can also make unique maps for that game type as well which is seen in Skulltag/Zandronum.

Im going to make one. And sure, it'll be in the slot MAPL0

Keep in mind that this is a script built to work on any match level. You're free to make levels designed for it if you feel inspired to do so, though. Maybe I'll add my own.
 
Last edited:
So far, [not having this a Match override thing] isn't do-able with Lua.
Well, you can set a map's type of level to include "custom", and you can check what the currently played game type is with Lua. However, I have no idea what the differences between Match and "custom" style maps are, plus supporting custom Match maps wouldn't work like that, so keeping it for Match maps instead of "custom" maps is probably a good idea.
 

MK.exe

The one and only!
Kart Krew™️
Contest Winner🏆
Blaze The Cat;778850! said:
Keep in mind that this is a script built to work on any match level. You're free to make levels designed for it if you feel inspired to do so, though. Maybe I'll add my own.

Alright. Thats all the confirmation i need. We ,as in me and Blast88, plan to release a version soon. :)
 

Blast98

Full G-Tag name: Blast9867
Updated to lms-0-2.lua

  • Ghosts now cannot interact with the collectibles, as well as air bubbles. If you want to restore the old behavior where they could pick up weapons and rings, and pop boxes so they can troll the alive, lmsinterghosts is for you, just set it to 1. (This also includes air bubbles, muahaha)
  • I also fixed the error that comes with running into lava before the game starts. You're also completely invulnerable before the countdown, which should have happened before, but you know, bugs!
  • You can now control the pity shield appearing in LMS. Set lmspity to 1 if you want to let the pity shield happen again.
  • Spectators no longer get "eliminated" while not playing.


Now, I actually thought about this a while during the making of this, and I did it the way I did for a few reasons, including:

  • Keeping track of score as simply as possible.
  • Letting the eliminated player move and do something to pass the time.
  • Allow the option for them to collect stuff under the noses of the alive (also just for fun!)
  • It shows the impact that the players have on the game by the ghost count gradually increasing.
I just wasn't complete with making it work at the time.



Ask and you shall receive.



You're welcome!



So far, this isn't do-able with Lua. But you can temporarily disable LMS if you want to play Deathmatch instead! Try lmsenabled 0 in the console.





Keep in mind that this is a script built to work on any match level. You're free to make levels designed for it if you feel inspired to do so, though. Maybe I'll add my own.

Perhaps you can add your own maps to the LMS level pack and in the future, making game types unique with lua will most likely get to work probably.
 
Quick fixing to 0.2a due to the nasty ghost bugs and pity shield bugs in the previous version. The script is now finally mostly bug-free

However we discovered that ghosts can interact with alive players in a way that isn't shooting or collecting (Like Tails flying another) And will be a known problem until I find a workaround to it.
 
Last edited:

BASHDUP

Member
For some reason this lua doesn't work at all for me. It doesn't even count how many players are alive and once there all dead the match doesn't even end. Do you have a solution?
 

Fres

Semi-Retired Mapper
For some reason this lua doesn't work at all for me. It doesn't even count how many players are alive and once there all dead the match doesn't even end. Do you have a solution?

When the script's first loaded, its off by default.

lmsenabled <0-1>
If set to 1, and you're in a game of Match, the map will be refreshed, and you can play LMS. If you set it to 0, everything related to LMS will hide, and you can play regular Match.
 

MK.exe

The one and only!
Kart Krew™️
Contest Winner🏆
For some reason this lua doesn't work at all for me. It doesn't even count how many players are alive and once there all dead the match doesn't even end. Do you have a solution?

Were there players in the match?

You need at least more than 1 player in your server to play with this
 
Last edited:
Status
Not open for further replies.

Who is viewing this thread (Total: 1, Members: 0, Guests: 1)

Top