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: Feb 2020

Version: SRB2 Rating: (3 votes - 3.60 average)
Released: 12-25-2019 Last Update: 02-17-2020 Installs: 3
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, 72 views)
File Type: lua mmt_settings - v4.0.lua (6.7 KB, 24 views)

Screenshots

Click image for larger version

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

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

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

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

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

Click image for larger version

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

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

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

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

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

Click image for larger version

Name:	srb20093.gif
Views:	126
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-13-2020   #62
carlrev
 
carlrev's Avatar
Default

Is replacing Eggman with new Egg-Robo sprites when fighting all bosses as Knuckles possible?
__________________
Uhh...
carlrev is offline   Reply With Quote
Old 01-14-2020   #63
Apollyon Woman
Homestuck Trash
 
Apollyon Woman's Avatar
Default

Does this actually order a pizza?
Apollyon Woman is offline   Reply With Quote
Old 01-14-2020   #64
glaber
Emblem Radar Ready
 
glaber's Avatar
Default

Quote:
Originally Posted by carlrev View Post
Is replacing Eggman with new Egg-Robo sprites when fighting all bosses as Knuckles possible?
make the sprites and a lua to check for knuckles and it should be
__________________
Welcome to my Dimension
glaber is offline   Reply With Quote
Old 01-19-2020   #65
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

At last, v1.2 is now out!
Not many changes this time, but it comes with two commands, supermusic and totalrings; supermusic allows you to disable the super form's music, playing the stage music instead, and totalrings displays how many rings the stage has in total when viewing the scoreboard HUD (the one that shows your emblems, emeralds, and tokens in singleplayer).
__________________
--------------
raboot.jpeg
--------------
birbhorse is offline   Reply With Quote
Old 01-20-2020   #66
carlrev
 
carlrev's Avatar
Default

How about playing the Blue Sphere "perfect" SFX at the exact moment it says " "X" can now be Super "X" ", and make it the actual Super button we choose to be on the Special Stage results screen?
__________________
Uhh...

Last edited by carlrev; 4 Weeks Ago at 05:04 AM.
carlrev is offline   Reply With Quote
Old 01-20-2020   #67
Pyrakid Wolfo
Default

Uh...why? You could just not use it. I mean, I don't think disabling Super Sonic's flight would be of any practical use. There's no reason to disable Super Sonic's flight. I mean I guess they could add a console command that does that. The only reason I think anyone would want this, is because you couldn't fly in the classic games, outside of certain bosses, and cutscenes.

This is called "Many Minor Tweaks", this doesn't really seem like a tweak to me but okay.
Pyrakid Wolfo is offline   Reply With Quote
Old 01-20-2020   #68
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

I'm going to take a nap after this. Version 2.0 is now out!
Not much new is added to this, however a buttload of changes have occured, because I've rewritten basically every part of this script!
This massive overhaul fixes some long standing issues, and optimizes the code to a huge degree (the filesize is down by a couple kilobytes on the PK3 side, but the Lua file itself shrunk by 26.6 KB!)
Stuff like tailsball, superkey, etc. has been condensed down, so now not as many arguments are needed, and mmthelp now displays the commands in pages, ala sourcemod's help command!
There's other things such as all the player-side commands now being ran inside of a MobjThinker instead of a ThinkFrame hook, ergo allowing for better multiplayer compatibility without needing jank workarounds.

There's lots of other many minor changes I've made to this, not all of which I was able to document because I'm a silly and forget to document stuff sometimes. Enjoy this update!
__________________
--------------
raboot.jpeg
--------------

Last edited by birbhorse; 01-20-2020 at 01:00 PM. Reason: minor clarification
birbhorse is offline   Reply With Quote
Old 01-20-2020   #69
Pyrakid Wolfo
Default

When I press spin while flying with Tailsball set to jump, spin, or bop... well he just flies down as if it was off. Does this work with the x64 build? Should I be using opengl. There's NO reason why this shouldn't work. I doubt using the normal build would fix this problem either. /shrug
Pyrakid Wolfo is offline   Reply With Quote
Old 4 Weeks Ago   #70
carlrev
 
carlrev's Avatar
Default

Can you please fix the total ring counter? There's an instance where when you restart a level, the ring total goes up by the same amount.

Ex: 453 rings on load, 906 on restart, then 1359...
__________________
Uhh...
carlrev is offline   Reply With Quote
Old 4 Weeks Ago   #71
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

Shoot, you're right. I'll fix it up in the next update, I forgot to re-add the mapload hook that changes this to 0 when the map loads.

EDIT: Done, it's been released as bugfix A.
Quote:
Originally Posted by carlrev View Post
Can you please fix the total ring counter? There's an instance where when you restart a level, the ring total goes up by the same amount.

Ex: 453 rings on load, 906 on restart, then 1359...
__________________
--------------
raboot.jpeg
--------------

Last edited by birbhorse; 4 Weeks Ago at 02:10 AM.
birbhorse is offline   Reply With Quote
Old 4 Weeks Ago   #72
Pyrakid Wolfo
Default

Another bug, when adding Tailsbop you cannot fly after *jumping* on an enemy. Just *jumping*, not dropping. (I can't drop when flying for some reason). But yeah, I can activate flight, but it acts like bop as in you cant fly up or anything. I still dunno why tailsball jump/spin/bop doesnt work.
Pyrakid Wolfo is offline   Reply With Quote
Old 4 Weeks Ago   #73
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

It seems you are really the only person to have this issue. I have yet to figure out how to compile 64-bit SRB2 for Windows, and that's the only other variable that is not similar between us, so...maybe just use regular 32-bit SRB2?

There's literally no reason to use the 64-bit version anyways, it's not like SRB2 even comes close to using 2GB of RAM.

Quote:
Originally Posted by Pyrakid Wolfo View Post
Another bug, when adding Tailsbop you cannot fly after *jumping* on an enemy. Just *jumping*, not dropping. (I can't drop when flying for some reason). But yeah, I can activate flight, but it acts like bop as in you cant fly up or anything. I still dunno why tailsball jump/spin/bop doesnt work.
__________________
--------------
raboot.jpeg
--------------
birbhorse is offline   Reply With Quote
Old 4 Weeks Ago   #74
SCOTT0852
 
SCOTT0852's Avatar
Default

Quote:
Originally Posted by birbhorse View Post
I have yet to figure out how to compile 64-bit SRB2 for Windows
https://www.jameds.org/SRB2/compile/ helped me with that, you'll probably find it useful too. I'm using 64-bit and OpenGL, but for me all the tailsball settings just do nothing and pressing shift makes Tails descend just like vanilla.
__________________
Trans rights!
SCOTT0852 is offline   Reply With Quote
Old 4 Weeks Ago   #75
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

I have spent many, many hours to get the 64-bit version to work. ...to finally realize that the problem I had was that I had the wrong DLL files. If only the game gave SOME form of output telling me that was the issue. Or heck, if people told me that I needed those DLL files to begin with, ugh.

Anyways, back to the point, I tested it with many different compiled 64-bit versions, and all of them worked successfully, on a blank slate save, no custom config set up, just everything default. So I still have no clue why tailsball isn't working for y'all.

Here's to hoping SRB2 2.2.1 fixes whatever's going on with your end that's causing this, since it sure isn't showing up on mine.

EDIT: You should also try a blank slate installation to see if that gets it working for you too. If so, uh, then maybe something's going on in your config that's causing this issue, and if it is, I'd like to know what's goin on with that.
Quote:
Originally Posted by SCOTT0852 View Post
https://www.jameds.org/SRB2/compile/ helped me with that, you'll probably find it useful too. I'm using 64-bit and OpenGL, but for me all the tailsball settings just do nothing and pressing shift makes Tails descend just like vanilla.
__________________
--------------
raboot.jpeg
--------------

Last edited by birbhorse; 4 Weeks Ago at 11:17 AM.
birbhorse is offline   Reply With Quote
Old 4 Weeks Ago   #76
Pyrakid Wolfo
Default

Also, even in 32bit problem still consists. Also with bop, I cannot fly with tails when falling at all. If i'm falling flight won't work. And that i can't drop using the spin button while flying. :shrug:
Clarification if needed: If I jump, and I start going down, flight is disabled.
Pyrakid Wolfo is offline   Reply With Quote
Old 4 Weeks Ago   #77
carlrev
 
carlrev's Avatar
Default

Also, you should fix the ring total's presence as it's not supposed to be during Special Stages, MP Special Stages and bosses.
__________________
Uhh...
carlrev is offline   Reply With Quote
Old 4 Weeks Ago   #78
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

New update time again! v2.1 introduces mainly bug fixes, but I've added something that I've been wanting for a long while, skincolor for singleplayer modes! It's not ordinarily possible to set your own skincolor in single player for whatever reason, so this command will substitute that. Wish there was a way to make it work like a menu, but alas, lua is only so powerful.

I also condensed down the code used to detect when to put the player into the super form down by a whooole lot, and this should make it more compatible with custom characters, although I can't say I've tried yet. It does however make things less buggy and janky. Speaking of...

There's a buttload of fixes, including yet more changes to tailsball, which will probably not work for the few people who are experiencing issues with it, but I'm hoping that this will finally solve their issues. I have however fixed it so that tailsball works when jump is being held, so that's something. I've also fixed a bunch of stuff in relation to afktoggle, so that should be working properly now. And there's a few more bugfixes here and there.

Enjoy!
__________________
--------------
raboot.jpeg
--------------
birbhorse is offline   Reply With Quote
Old 4 Weeks Ago   #79
carlrev
 
carlrev's Avatar
Default

I know this has been a bit repetitive of me to as this, but, can you try again to alter the Super Sonic prompt in the NiGHTS stages results to say "Press jump, press [insert superkey here] instead of always spin" when you have all the emeralds?
__________________
Uhh...
carlrev is offline   Reply With Quote
Old 4 Weeks Ago   #80
carlrev
 
carlrev's Avatar
Default

I think the "everysuper" command could benefit from a few changes.

For instance, when "everysuper" is <off>, characters who couldn't go Super in the normal game don't do it then, except if it was enabled in a modified S_SKIN of a certain character. Like Tails, for example. If I were to turn the command off, Tails would not go Super unless I enabled it so in a modified S_SKIN of Tails.

Then, if "everysuper" was <disabled>, then no one would go Super, regardless of S_SKIN modification.
__________________
Uhh...
carlrev is offline   Reply With Quote
Old 4 Weeks Ago   #81
birbhorse
local eevee petter
 
birbhorse's Avatar
Default

If I haven't said it before, I'll say it now, I do not think it's possible to modify that text with lua, that would require hardcoding which it outside the needs of this mod.

Quote:
Originally Posted by carlrev View Post
I know this has been a bit repetitive of me to as this, but, can you try again to alter the Super Sonic prompt in the NiGHTS stages results to say "Press jump, press [insert superkey here] instead of always spin" when you have all the emeralds?
...that's exactly how it works though? When set to on, everyone can go super. When set to off, only characters that can normally use super forms can go super (sonic, metal sonic, and custom characters that can do that). And when set to disabled, nobody can go super.

If you mean if you modified it so that Tails can go super via a SOC of some kind, well...that should still work, if it doesn't, maybe the loading order is causing some issues.

Quote:
Originally Posted by carlrev View Post
I think the "everysuper" command could benefit from a few changes.

For instance, when "everysuper" is <off>, characters who couldn't go Super in the normal game don't do it then, except if it was enabled in a modified S_SKIN of a certain character. Like Tails, for example. If I were to turn the command off, Tails would not go Super unless I enabled it so in a modified S_SKIN of Tails.

Then, if "everysuper" was <disabled>, then no one would go Super, regardless of S_SKIN modification.
__________________
--------------
raboot.jpeg
--------------
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 11:48 PM.


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