A TOGAthering of Utilities

[Open Assets] A TOGAthering of Utilities Dr. Watson 32 (1.21b) - MB fix 2

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.
togabox.png

A trio of scripts that provide assistance/information with maps and/or characters.

MapUtils - the map-related third of this pack.​
  • Provides searching functionality for maps for Race, Battle... or maps that have been banished to SinglePlayer. The main search/list function is accessible from other scripts as well. Does it make it a library as well?
    • Standalone, this can write the result to console/log or to a file under luafiles/
    • This also provides the ability to choose maps that have exactly the same zone/sub title if they do not override one another's map slot.
  • Does not hide hellmaps - they're as viewable as ever. Whether you consider this an upside or not, that's up to you.
    • Includes the ability to go to a random hellmap from manual activation. Requires administrative privileges.
  • As the search/list function is exposed to other scripts, should it be overriden, this includes the ability to revert the change to default. Requires administrative privileges.
    • Normal players can still check if the functions have been changed and, if they are, notify the admin/host.
  • Seen or played with tall.lua for SRB2? Delf has given his blessing to have tall.lua included and fixed to work with Kart maps.​
    • Requires administrative privileges to enable/disable and modify scaling value.
    • No longer you are required to restart the game to change a map's vertical scale - simply change the console variable and reload the map. Minimum is 0, can take 0.33 or 1.5 as scale.​
      • Yes, you can shrink maps too!​
    • A couple of things to note before you proceed with scaling maps:​
      • This may cause some maps to either be (almost) unfinishable or cause intense Z-fighting that can trigger an epilepsy/seizure. User discretion is advised!
      • On dedicated servers, please don't forget to disable the map scaling and reset the scale multiplier back to 1. Or do a server restart entirely. Admin/host discretion is advised too!
      • This works best if you're alone. Joining mid-race will cause desyncs for those joining. In addition, SIGSEGVs can occur.​
thetalllake.gif
talltwinkle.gif
  • Access command with maputils or mu.​
    • View the scripts for accepted shorter versions of arguments.​
SkInfo - the character-related third of this pack.​
  • Much like MapUtils, also lets players search for specific characters, whether by name or stat.​
    • Can write to console or file, filename of which will also be done in luafiles/ folder.​
    • Search by name is performed on all currently loaded characters, filtering by their internal names and real names as well.​
    • Search by stat can be done after a search by name, but if you wish to search through all characters, just set the search name as "", then specifying if you want to look for speed, weight or both and supplying the value at the end.​
      • This cannot search for both stats being different, only if their speed and weight are the exact same.​
  • Adds functionality to be able to change to characters searched for. If there's multiple characters that hit the search term, the player can choose between them.​
    • Same procedure follows for allowing those with administrative privileges to toggle on skin restrictions. Instead of having to give forceskin an ID or the internal name, they can search for the desired skin to lock everyone to.​
    • Those without the privileges can still check the forceskin status and, if it's on, information about the skin.​
  • As the two functions are exposed, administrators/hosts can restore the original functions should they be modified by external scripts.​
    • Normal players can still check if the functions have been changed and, if they are, notify the admin/host.​
  • Access command with skinfo or sk.​
    • View the scripts for accepted shorter versions of arguments.​
SOCGen - the final third of the pack relating to SOC stuff of mapheaders.​
  • Takes a "snapshot" of current SOC information of maps and writes it to socgen.txt, writing using the expected SOC structure.
    • By default, only "basic" information is written. However, you can make it write out a more detailed version as well that includes most of the default mapheader_t userdata and its' variables.
  • Built off of MapInfo, this supports searching of maps to list as well.
  • Like MapInfo and SkInfo, this also has modularity. Writing the file will mention loaded plugins.
  • Usage: socgen [race/battle/singleplayer/all] [searchname] [detailed]
    • [race/battle/singleplayer/all] - gametype selection. Alternatively, if plugins is given, it will list plugins loaded.
    • [searchname] - search term that is passed to MapUtils.
    • [detailed] - toggle verbose output.
  • MapUtils:
    • Vertical scaling of maps will cause desyncs for those joining mid-race. This is because the actual scaling occurs when the map loads with the MapLoad hook.
      • Not much I can do here, unfortunately - this is how it is in tall.lua, the script that even caused this to be a thing in the first place.
    • Vertical scaling of maps may cause crashes, so be prepared for a SIGSEGV.
    • Some maps don't use the subtitle, instead having strings in the zone title part of the header and such.
      • v1.11 accounts for this, go use it.
  • SkInfo:
    • Setting or checking your own skin if you are spectating will throw an error instead.
      • Somewhat fixed in v1.2, but please attempt skin-related changes if you're not spectating.
      • Attempting to set a skin for the dedicated server's player will throw an error about the player object being nil.
    • The search/list function may break if all character slots are used up. Oops.
  • I've had Race Rule Limiter lying around for a while - a script that is oriented towards servers that get full fast and have an honor system of sort where a player leaves the server after a certain amount of maps have been played... this script automates that.
    • However, as I did not have any real testing done with this, I'm a bit unsure whether to put it out there - I thought about slipping it in for the v1.11 release, backtracking a while later.
    • The script can automatically count the amount of maps played and, if hitting a certain amount or exceeding it, either be warned or kicked out without much input from the host or an admin.

Please contact me on Discord or here if you have questions, feedback or bugs to report. As this is a first type of a script that I have written, I very much do want to hear from you about your experience with this pack.​
  • Cool!
Reactions: Superjustinbros
Author
TheOneGoofAli
Downloads
794
Views
5,137
First release
Last update
Rating
0.00 star(s) 0 ratings

More resources from TheOneGoofAli

Share this resource

Latest updates

  1. "Open Assets" mode.

    I have been out of practice with Lua coding... and Kart in general. So, I feel like making these...
  2. Dr. Watson 32 / 1.21b - MB fix 2

    SOCGen was referring to a variable that was there at some point, but is just two letters away...
  3. Dr. Watson 32 / 1.21b - MB fix

    ...I have actually forgot to include SOCGen as a separate download for the original 1.21b post...
Back
Top