SRB2 Message Board  

Go Back   SRB2 Message Board > Sonic Robo Blast 2 > Releases > Lua

Reply
 
Thread Tools
MMT (Many Minor Tweaks) -- v4.1 Details »»
MMT (Many Minor Tweaks) -- v4.1
Version: 4.1, by birbhorse (local eevee petter) birbhorse is offline
Developer Last Online: Jul 2020

Version: SRB2 Rating: (4 votes - 4.00 average)
Released: 12-25-2019 Last Update: 02-17-2020 Favourites: 6
Scripts Re-Useable Content

Welcome to...
MMT (Many Minor Tweaks)!

This mod includes a whole bunch of minor tweaks that can be toggled via command line! Things including tailsball (which replaces tails' descent using spin to curl him up into a ball), superkey (which lets you change what key is used to turn super), and more! It also includes my previous lua script, Cancelable Super Form, now with the ability to change which key is used!

You can use "mmthelp" in-game to view what commands are available, and a brief description of what they do.
Do note that the list changes if you enter multiplayer, due to there being commands that work only in multiplayer, and ones that only work in singleplayer!

List of commands, taken from mmthelp:
Spoiler:

-- The Good Stuff --
  • mmthelp <num>: Lists all the available commands, by using the second argument as a page number.
  • superkey <value/off>: Changes key used to transform into character's super form. If disabled, all code relating to this is disabled.
    Options: off, weaponnext, weaponprev, attack/ringtoss, use/spin, camleft, camright, tossflag, firenormal/ringtossnormal, custom1, custom2, custom3
  • cancelsuper <value/off> : When the key set is pressed, the player is taken out of their super form.
    Options: off, weaponnext, weaponprev, attack/ringtoss, use/spin, camleft, camright, tossflag, firenormal/ringtossnormal, custom1, custom2, custom3
  • skincolor: <value/default>: Changes the player's skin color, used for single player modes.
  • supermusic <on/off>: Toggles the super form's music.
  • dropdash <on/off>: Enables the Drop Dash for Sonic. Notice: Disables superhover when turned on.
-- The Minor Tweaks --
  • recurl <on/off>: Allows the player to curl up into a ball after using a spring, tornado, etc.
  • supertrail <on/off>: Leaves behind a more noticeable trail when the player is in their super form.
  • totalrings <on/off>: Displays total amount of rings in level in the scoreboard hud.
  • supershield <on/off>: Allows shields to be shown when the player is in their super form.
  • tokentorings <on/off>: If all chaos emeralds are collected, player is granted 50 rings instead of a continue.
  • preserveshield <on/off>: Preserves shield upon completion of level, allowing you to keep the shield in the next map load.
  • musicfade <on/off>: Fades music out when crossing the goalpost.
  • infinitelives <on/off>: Allows for infinite lives in singleplayer. (singleplayer only, duh)
  • scorecontinues <on/off>: When enabled, after reaching above 25,000 points in a level, the player is granted a continue. (singleplayer only)
-- Other Tweaks --
  • tailsball <jump/spin/bop/off>: Tails turns into a ball instead of descending when using the spin key in flight.
  • everysuper <on/off/disable>: Allows every character to go super. If set to off, only vanilla super characters can go super. If disabled, nobody can go super.
  • instantrespawn <on/off>: Respawns the player instantly when they die, 0 wait time. (Co-op/singleplayer only)
  • classicsuper <on/off>: Jumping will automatically turn you super when the player is elligble to do so.
  • classicshields <on/off>: Changes all SRB2 Monitors to their S3K equivalents.
  • classicspecialstage <on/off>: Replaces emerald tokens with the ability to enter the special stage if the player clears w/ 50 rings.
  • superhover <on/off>: Toggles whether or not Super Sonic can use the hover ability.
-- Netplay, Admin, Misc. Stuff --
  • mmtdebugger <on/off>: enables various debugging tools, used for both MMT and for other developers to use.
    Extra options: enablehud, disablehud; enableprint, disableprint
    If using the HUD functionality, pressing Custom 2 will toggle debug information regarding player stuff, such as player.mo.state and player.pflags values.
  • banskin: <value>: Adds skin to a banlist, prohibiting players from selecting them.
  • unbanskin: <value/all>: removes skin from ban list, allowing usage of them again. Specify "all" to remove all from the banlist.
  • toggleafk <on/off>/<15-90/disabletimer>: sets the player into an AFK mode; alternate argument is used as an automatic timer to be put AFK.
    Options: options: on, off, disabletimer, exitdisable, exitenable, number between 10 and 90
  • charability <CA1> <CA2>: Changes the player's main ability, and secondary ability. (admins only)
    Options: fly, glide, homing, swim, doublejump, float, slowfall, telekinesis, fallswitch, jumpboost, airdrill, jumpthok, bounce, twinspin
    Secondary options: spindash, gunslinger, melee
  • mmtdefaults: changes everything related to MMT back to default variables.
  • orderpizza+: -size <value> -address <value> -toppings <value>: order a pizza!
-- ???????? --
  • orderpizza: -size <value> -address <value> -toppings <value>: order an ordinary pizza!

There will be many more features in the future, my current plans are listed out in the lua script itself if you're interested.

Don't be afraid to bug report in the replies, even if you find like, a hundred of them! Even with real bugs--actually don't, that's off-topic unfortunately. If you do bug report, please provide what other addons you had on, if you were in multiplayer, and provide each step you did so I can diagnose the problem easier. Saying "x does not work" and leaving it at that is not helpful.
I do also accept suggestions, however this does not mean I will include them for any number of reasons.

CHANGELOG:
Spoiler:

v4.1
  • Added 2.2.2 features; mainly R_GetColorByName and R_GetNameByColor. BE SURE TO UPDATE TO SRB2 v2.2.2!
  • Added pw_justlaunched, another 2.2.2 feature, to mmtdebugger's many list of variables.
  • totalrings will not show up in stages with 0 rings.
  • Removed notice when enabling superhover; this was a leftover from when older code was ued and it bugged things out.
  • Hopefully fixed bug where dropdash caused resynch issues.
v4.0
  • New functions that v2.2.1 introduced has been added in. If you haven't updated SRB2 to v2.2.1, be sure to do that, this script will NOT function in v2.2.0!
  • New tweak: supershield! This allows the shield to be rendered when the player goes super; I always found it off that the shield didn't render while super, so I made this.
  • The ordinary orderpizza command now responds to the size value. The bigger the pizza, the faster it is, you best watch out.
  • Gave Tailsball a unique sound effect.
  • Finally added closed captions to the sound effects.
  • Buffed dropdash's speed again. To counter-act this a bit, the momentum speed bonus for the drop dash has been nerfed.
  • New function used for stuff like skincolor and the button commands for superkey/cancelsuper; the code has been massively reduced, and will now accept any of the constant values SRB2 has; meaning if an SRB2 update adds any new skincolors or button commands, they'll be automatically accepted by this script.
  • superkey/cancelsuper works a bit better now, a new exception has been added to ensure you weren't holding the spin key while on the ground.
  • Removed debugging text that *might* have appeared when using super trail.
  • Huge rewrite to handling how multiplayer/singleplayer stuff is handled, it's now much more efficient in how things are handled and detected.
  • Fixed superhover not being disabled when turning it off in multiplayer.
  • Fixed charability not changing the names provided on command input if you changed skin mid-level.
  • Fixed recurl being able to be used on special stages; didn't cause any conflicts of note, but it did play the spin sfx when leaving a special stage while holding spin down.
  • Fixed scorecontinues erroring out when set to on in a special stage.
  • Fixed Metal Sonic being able to use recurl after using their float ability.
  • Fixed orderpizza being able to kill the player multiple times.
v3.1
  • Made compatible with SRB2 v2.2.1. In the future, this will no longer work with v2.2.0, so be sure to update when it's time!
    The reason for this is that the script will use the new "PlayerThink" feature. Why? Because yes.
  • Added special exception for tailsball and recurl to not work on the Eggpack character.
  • Fixed mmtdefaults not working on the latest two tweaks added recently.
  • Fixed tailsball being used on player bots (e.g. sonic & tails mode in singleplayer)
  • Fixed scorecontinues working in special stages, when that's not nessecary.
  • Finally fixed supertrail, now tails, metal sonic, and any other character with a follow item will now have the correct amount of ghosting effects in place.
  • Made recurl only work on characters that can spindash.
  • Of note: This is compatible with the previous verison of mmtsettings, there's no need to update it.
Unfortunately due to how lua scripting is set up, any changes made via command line can not be saved at the moment. If you wish to make the changes permanent, rename the file and make your changes to the variables found at the top of the document!

Known problems/bugs:
Spoiler:
  • Players in AFK mode can be carried around.
If you're a mod maker and you wish to detect if this mod is loaded...
You can check for the presence and value of "mmtVersion", for this is a value that's been put in _G. Do something like this:
Spoiler:
Code:
if mmtVersion
--your code here, ofc you can optionally do "else" for your own code
end

What is "mmt_settings.lua"?
Spoiler:
This is something that allows you to change MMT's settings before it's loaded! Due to constraints given to SRB2's Lua Scripting, it is not possible to save changes made to custom console variables.

However, using this script, it is possible to change the settings upon loading MMT! Just download the file, plop it into your text editor of choice, and read the instructions at the top. Make sure to keep it up to date with the latest version of MMT, otherwise it won't work!

Do note that you do not need to download this for MMT to function, it's just a supplemental file used for ease of life!
WARNING
This addon has not been tested when hosting a game via the in-game multiplayer menu. Previous versions have experienced errant issues, such as tailsball causing the host player to react when other players use it.
It is highly recommended that you a dedicated server by opening the program via -dedicated, so that scripting conflicts like this do not occur!

Download Now

File Type: pk3 VL_ManyMinorTweaks-v4.1.pk3 (149.3 KB, 594 views)
File Type: lua mmt_settings - v4.0.lua (6.7 KB, 285 views)

Screenshots

Click image for larger version

Name:	tailsball.gif
Views:	703
Size:	6.13 MB
ID:	24293   Click image for larger version

Name:	everysuper and cancelsuper.gif
Views:	577
Size:	7.25 MB
ID:	24294   Click image for larger version

Name:	preserveshield.gif
Views:	553
Size:	2.06 MB
ID:	24295   Click image for larger version

Name:	tokentorings.gif
Views:	477
Size:	1.70 MB
ID:	24829   Click image for larger version

Name:	tailsball bop.gif
Views:	393
Size:	6.55 MB
ID:	25095  

Click image for larger version

Name:	banskin.png
Views:	612
Size:	105.5 KB
ID:	25097   Click image for larger version

Name:	toggleafk.jpg
Views:	470
Size:	122.0 KB
ID:	25255   Click image for larger version

Name:	totalrings.png
Views:	441
Size:	651.7 KB
ID:	25682   Click image for larger version

Name:	supertrail.jpg
Views:	410
Size:	142.5 KB
ID:	26016   Click image for larger version

Name:	recurl.gif
Views:	319
Size:	4.91 MB
ID:	26124  

Click image for larger version

Name:	srb20093.gif
Views:	331
Size:	4.13 MB
ID:	26253  

Show Your Support

  • The author of this addon has given explicit permission for its content to be re-used and/or reproduced.

Comments
Old 01-02-2020   #22
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

I went out of my way to redownload an entirely fresh installation of SRB2 just to test it out with no other config getting in the way. It works for me, so I'm honestly not sure what's going on with you. What's your spin key bound to?

Quote:
Originally Posted by Pyrakid Wolfo View Post
Singleplayer, enabled midgame. No other addons. Pressing spin or any other button doesnt do tailsball

---------- Post added at 11:28 PM ---------- Previous post was at 11:20 PM ----------

doesnt work if i enable it during the title screen either
__________________
--------------
raboot.jpeg
--------------
birbhorse is offline   Reply With Quote
Old 01-02-2020   #23
Pyrakid Wolfo
 
Pyrakid Wolfo's Avatar
Default

The X Button on my controller
Pyrakid Wolfo is offline   Reply With Quote
Old 01-02-2020   #24
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

I went ahead and tested a controller with this, and that still seems to work, even when bound to the X button. Mind sending me your config file via PMs?
Quote:
Originally Posted by Pyrakid Wolfo View Post
The X Button on my controller
__________________
--------------
raboot.jpeg
--------------
birbhorse is offline   Reply With Quote
Old 01-02-2020   #25
Pyrakid Wolfo
 
Pyrakid Wolfo's Avatar
Default

Tails descends so i doubt its a button config problem tho
Pyrakid Wolfo is offline   Reply With Quote
Old 01-02-2020   #26
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

Well...I don't know what else to do; every part of the script is working as intended. The only other thing I can think of is if you're doing it in local (same screen) co-op, since I haven't tried that yet, or if you're on another platform other than Windows and there's somehow a source code bug preventing this from working, like the unofficial Switch port or something.

EDIT: Okay, I found one thing that causes it to not work, and it's if you enable the addon via Pandora's Box while mid-session. If you did it that way, it doesn't work. That is the only thing I have been able to find that breaks it, in which exiting and going back into a level fixes this.

Quote:
Originally Posted by Pyrakid Wolfo View Post
Tails descends so i doubt its a button config problem tho
__________________
--------------
raboot.jpeg
--------------

Last edited by birbhorse; 01-02-2020 at 01:41 AM.
birbhorse is offline   Reply With Quote
Old 01-02-2020   #27
Pyrakid Wolfo
 
Pyrakid Wolfo's Avatar
Default

Pandora's Box? What's that. Im literally just pressing spin while flying in greenflower zone singleplayer, nothing else. /shrug
Pyrakid Wolfo is offline   Reply With Quote
Old 01-03-2020   #28
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

Version 0.6 is now released! This includes a new command, classicsuper, which lets you transform into super sonic just by jumping, much like how Sonic 2 did it!

Superkey can also be disabled now, which will help fix compatibility with mods like the Classic.wad mod found in the lua section. Oh and, preserveshield now carries over from act 2 to act 3, this wasn't happening before due a fault in the detection of what stage you're in.

Enjoy!
__________________
--------------
raboot.jpeg
--------------
birbhorse is offline   Reply With Quote
Old 01-03-2020   #29
glaber
Emblem Radar Ready
 
glaber's Avatar
Default

Awww, everysuper was removed? Why are there still gifs showing it in though?

also what was every super suppose to do? as far as I can figure it was suppose to allow everyone to go super as the Name implies and not just those who have a super state.
__________________
Welcome to my Dimension

Last edited by glaber; 01-03-2020 at 02:43 PM.
glaber is offline   Reply With Quote
Old 01-03-2020   #30
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

It just allowed everyone to go super. Due to how the superkey works, it can't work that way anymore, cuz now everyone is allowed to go super by default; the replacement for disabling the functionality now is disablesuper. I'm not sure how to read a character's default character flags (other than maybe using the ironically named super function), so that's how it works for now.
Quote:
Originally Posted by glaber View Post
Awww, everysuper was removed? Why are there still gifs showing it in though?

also what was every super suppose to do? as far as I can figure it was suppose to allow everyone to go super as the Name implies and not just those who have a super state.
EDIT: Now that this is a requested feature (even if it is by one person), I went ahead and found a way to detect the player's super flag at the start of the area, ergo I'll find a way to introduce everysuper once more.

---------- Post added at 03:15 PM ---------- Previous post was at 01:46 PM ----------

Sorry for what's technically a double post, but it's here, v0.7 is now out!
This was a bigger update than expected, jam-packed full of bug fixes! It also adds a new command, viewbobbing, which lets you disable the bobbing in first-person view! Also everysuper is now back, replacing disablesuper (though you can still disable all super character's abilities if you want). Unfortunately, banskin is currently disabled due to synching issues found with it (which has always been present), it should be re-enabled by the next update hopefully!

Incidentally, I rewrote some of tailsball's code, so maybe this will fix it for the people who were saying it wasn't working for them, but I'm not sure since I have yet to replicate their issue.

Enjoy!
__________________
--------------
raboot.jpeg
--------------

Last edited by birbhorse; 01-03-2020 at 07:08 PM.
birbhorse is offline   Reply With Quote
Old 01-03-2020   #31
PencilVoid
Circuit Enthusiast
 
PencilVoid's Avatar
Default

The effect of your viewbobbing command can already be accomplished by typing "movebob 0" into the console. I'd forgive you for not knowing this however, I haven't seen it documented anywhere.
__________________
Discord: PencilVoid#4223; Twitter: @pencilvoid / @pencilvoid_art; Pillowfort: PencilVoid
PSO2 ID: 14909977; Username: PencilVoid

May I interest you in the Church of Audie?
PencilVoid is offline   Reply With Quote
Old 01-03-2020   #32
Pyrakid Wolfo
 
Pyrakid Wolfo's Avatar
Default

Tailsball now works for me. I don't know why it didn't in the first place tho :/. Anyway I can't fly, drop, land on an enemy, and resume flight. Maybe that's intentional, but it would be cool to be able to resume flight after dropping on an enemy to get some height and speed.
Pyrakid Wolfo is offline   Reply With Quote
Old 01-03-2020   #33
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

Ahh, yeah I didn't see a lick of info about it on the wiki, besides how viewbobbing is calculated. I'll remove it in the next update then, thanks for the info.

Quote:
Originally Posted by PencilVoid View Post
The effect of your viewbobbing command can already be accomplished by typing "movebob 0" into the console. I'd forgive you for not knowing this however, I haven't seen it documented anywhere.
__________________
--------------
raboot.jpeg
--------------
birbhorse is offline   Reply With Quote
Old 01-04-2020   #34
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

v0.8 is now out! With it, out goes the viewbobbing command (since it's already a part of the game), in comes the return of banskin (since it now functions correctly), and a new command, classicspecialstage enters the ring! This command removes all the emerald tokens, replacing it's functionality by letting you enter the special stage when you finish the stage with 50 rings!

And as per usual, buttload of bugfixes has been implemented!
__________________
--------------
raboot.jpeg
--------------
birbhorse is offline   Reply With Quote
Old 01-04-2020   #35
Pyrakid Wolfo
 
Pyrakid Wolfo's Avatar
Default

Or SONIC3 Special Stage, where you go into a special stage when you get the token. As it encourages exploration. The tokens are just an easier version to program as it doesnt have to remember location, rings, shield, etc.
Also you did remove "remember shield" from NiGHTS and MP Special Stages right? Cause getting EVERYTHING in a 100 MILE RADIUS with Attraction Shield feels like cheating and I *never* want to use it. It's a free rainbow A i guess, if you don't want to earn anything using your own skill. Since Sonic 2, you've been able to get multiple chaos emeralds in one stage, which makes it a double plus. I doubt you'd be able to hide a "big ring" under that bridge in gfz2. So try some new locations I guess, thats if you can. Big Rings don't really fit in the token locations, so I doubt they'd be added. They'd have to be in different locations, and thats if it can be programmed anyway. z

Last edited by Pyrakid Wolfo; 01-04-2020 at 10:50 PM.
Pyrakid Wolfo is offline   Reply With Quote
Old 01-05-2020   #36
Pyrakid Wolfo
 
Pyrakid Wolfo's Avatar
Default

actually tailsball doesnt work, idk why
z
Pyrakid Wolfo is offline   Reply With Quote
Old 01-05-2020   #37
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

Another day, another update. We're slowly approaching the 1.0 release, but for now, we have v0.9!

With this comes not new commands, but refinements of old(-ish). Most prominently, tailsball and tokentorings have new custom sounds! As such this is now bundled in a .pk3 file. Tailsball also received a new mode, which I dub "bop mode", for it lets you have some form of flight again after boppin' an enemy on their head! It's not full flight, but it does let you glide on over a lot easier after doing so, allowing easy chaining of enemy hits!

On top of all of that, banskin has received a number of new tweaks to make it work better, for one thing it now shows a HUD display instead of spamming the console for the player to change their skin. It also now no longer allows players to ringsling/flag throw, just for incase the skin was banned mid-session. And finally, instead of playing the skidding sound, it plays an error sound when choosing a banned skin.

Here's to hoping I can get 1.0 to have some nice and spicy features!
__________________
--------------
raboot.jpeg
--------------
birbhorse is offline   Reply With Quote
Old 01-05-2020   #38
Pyrakid Wolfo
 
Pyrakid Wolfo's Avatar
Default

Well, when I use the Attraction Shield's "Homing Attack", I can combo into fly... unless thats normal. Tailsball still doesnt work idk why.z
Pyrakid Wolfo is offline   Reply With Quote
Old 01-05-2020   #39
SD2CSemiFinalVersion
Kid or Squid? :shrug:
 
SD2CSemiFinalVersion's Avatar
Default

I don't know if this has been noted at all yet but for some strange reason the super cancel key stays as spin even when using the command to change it. Unfortunately I wasn't able to replicate what happened to me earlier, where the super transformation kept spazzing out and I didn't get to go super. I know the gif below doesn't look like it shows, but in vanilla gameplay, Amy can use the spin button during a jump to use her hammer as well and I had used it due to the super cancel key even when it was changed to toss flag via the command. Oh and pressing toss flag didn't work either.
__________________
Peck. ...That's about it, really. :shrug:

Last edited by SD2CSemiFinalVersion; 01-05-2020 at 11:17 PM. Reason: Just had to mention that changing the cancel super key didn't work.
SD2CSemiFinalVersion is offline   Reply With Quote
Old 01-06-2020   #40
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

Well dang, yeah cancelsuper(key) doesn't work in multiplayer, idk why, I'll go fix that. However, I wasn't able to replicate your problem with amy, neither in singleplayer or multiplayer.

EDIT: I went ahead and found the state value of amy when she's spinning due to pressing jump in mid-air, I'll make sure to add that in as something to not detect, despite it not being replicable for me.

Quote:
Originally Posted by SD2CSemiFinalVersion View Post
I don't know if this has been noted at all yet but for some strange reason the super cancel key stays as spin even when using the command to change it. Unfortunately I wasn't able to replicate what happened to me earlier, where the super transformation kept spazzing out and I didn't get to go super. I know the gif below doesn't look like it shows, but in vanilla gameplay, Amy can use the spin button during a jump to use her hammer as well and I had used it due to the super cancel key even when it was changed to toss flag via the command. Oh and pressing toss flag didn't work either.
__________________
--------------
raboot.jpeg
--------------

Last edited by birbhorse; 01-06-2020 at 01:39 AM.
birbhorse is offline   Reply With Quote
Old 01-09-2020   #41
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

And now, we've finally arrived at v1.0! Loads of changes, and now everything has been bugfixed so hard that...uh, something.

Two new commands, mmtdefaults, and toggleafk! mmtdefaults sets everything back to default, and toggleafk lets the player be set into an AFK state, where they can't do anything, but nothing can hurt them either.

Bug fixes like cancelsuperkey not working in multiplayer has been resolved, along with long-standing bugs like fademusic going out when not everyone is finished has been resolved too! The code has also been optimized in a lot of areas to not take up that much space.

Enjoy! This should be the last update for the next while!
Do note that from this point forward, bugfixes will be addressed in letter updates, e.g. v1.0B would have bugfixes that this version specifically had, so that we don't go long stretches without fixes.
__________________
--------------
raboot.jpeg
--------------

Last edited by birbhorse; 01-09-2020 at 02:03 AM. Reason: i typo'd toggleafk somehow, fix'd
birbhorse is offline   Reply With Quote
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 03:12 PM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2020, vBulletin Solutions, Inc.