SRB2 Message Board  

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

Reply
 
Thread Tools
Terminal - a netplay enhancement plugin Details »»
Terminal - a netplay enhancement plugin
Version: 1.2, by Wolfy (wolfs) Wolfy is offline
Developer Last Online: Dec 2017

Category: Version: SRB2 Rating: (4 votes - 4.20 average)
Released: 05-29-2014 Last Update: Never Installs: 6
Scripts Re-Useable Content

SRB2 is naturally a real fun game to play online. There's always lots of servers up for it, which is nice. SRB2's netcode kind of makes playing on those servers a little harder though, so that can prompt one to put up a dedicated server as people on the MB like ToBeFree have done. Unfortunately, SRB2's dedicated servers are rather dull due to SRB2's lack of multiple admins and other things that are almost always in dedicated servers for other games. These servers often end up dead despite how much more stable and speedy they are in comparison to the other, user hosted servers, which instead contain active administration. By this logic, dedicated servers are practically useless.

Not anymore.


What we have here is Terminal, a mod dedicated to enhancing netplay overall but designed specifically with dedicated servers in mind. Influenced by mods from other games (primarily SourceMod), Terminal incorporates numerous features that we believe improve SRB2's overall netplay experience.

Features:
  • Voting/Polls - Terminal's largest feature by far is without a doubt its voting system. The system gives the players of the server the ability to call a vote on various predefined subjects, or even their own unique ones! This includes changing the map, kicking players, resetting maps, and also changing gametypes. To make things more customizable, the vote system has plenty of modifiable variables to suit the needs of the server. The vote system allows the users to operate the server independently, which is something dedicated servers have desperately needed for a very long time.
  • Permissions - SRB2 has lacked multiple admins on servers for well over eight years and this is a problem. Typically, two users whom the server host trusts with admin privileges will fight for the @ symbol to the left of their names. Those days are gone. Terminal includes a fully featured permissions system that allows for multiple admins, different levels of control, and specialized permission levels. Just in case you're wondering how much we really did, SRB2's original admin system has been scrapped entirely in Terminal. Professionals have standards.
  • Unique Extras - Okay, admit it. Sometimes you like to screw around on your server. We understand this. And for that very reason, Terminal contains a completely optional Cheat module that allows you access to many singleplayer cheats in multiplayer. But wait - there's more! We have our own neat commands put in there too, ranging from warping commands to displaying the locations of all players on your screen. If you like hosting casual servers, this module is probably something you'd enjoy.
  • Modularity - Terminal has lots of stuff. We understand this. Some people might not want as much of the large quantity of stuff as others may. So for this, Terminal is fully modular. You can select which components specifically you would like to load onto your server such as our cheats, help, and login modules. With this, you can make your server more lightweight while still carrying the benefits of Terminal.
  • Customization - Terminal is a mod that we intend for others to modify, and to make that a bit easier, we have a neat splash screen system in place. An example splash screen wad is included with Terminal that includes three graphics that can be used for an automatic joiner splash screen. The difference between the graphics is the levels of transparency, which are settable in Terminal's scripts. This is especially useful for advertising your dedicated servers(or showing off!)

Instructions:
  • 1. Extract Terminal files to your SRB2 folder
  • 2. Rename "term_logins.ex.txt" to "term_logins.txt" if you want to use the login module
  • 3. Host the server
  • 4. "exec loadall.txt" in the console, or manually load whichever modules you want (make sure to load "Terminal_Core.lua" first)
  • 5. DEDICATED SERVERS ONLY: Execute the "iamtheserver" command in the console.
If you find any issues with hosting, make sure to tell us about them. After Terminal is up and running, you can use "term_help" in the console to bring up a help dialog that will cover basic use of the mod.

Spoiler: Changelog
Changelog:
  • v1.2
    • Use server instead of dediServer, since 2.1.15 has fixes for the former variable on dedicated servers.
    • Fixed showplayers for 2.1.15
    • charability and charability2 commands take lowercase input and allow omitting prefixes
    • destroyallenemies command only iterates through mobjs once
    • Minor changes in commands to prevent errors
  • v1.1
    • Countless fixes to countless features
    • Code has been completely refactored
    • findmap command, get map numbers by inputting level title
    • Players are not renamed to add symbols, PlayerMsg hook is used to make symbols appear next to names instead
    • Terminal_Help.lua has been merged into Core
    • Symbol colors can be changed locally with permissioncolor cvar
    • Moved showplayers command into Core
    • Lots of sanity checks added
    • addflags/removeflags added, simple method for manipulating player flags
    • charability and charability2 commands now accept CA_ and CA2_ constants as inputs
    • runonwater command added
    • destroyallenemies command added
    • spawnobject command added, spawns the given object 100 fracunits in front of the player
    • Polls with custom strings have been separated into the startpoll command
    • Maplists are generated automatically through mapheaderinfo, SRB1 maps are a manual override
    • Terminal_Maplist.lua has been removed
    • Voting, Login, and Cheats scripts will throw errors if Core is not added first
    Detailed changelog showing the locations of these changes can be found here. Revision history can be found on GitHub.
  • v1.0
    Initial Release.


LightDash.org Mirror
GitHub Repository


Notes:
Terminal is a rather large mod, so we've assembled our own temporary documentation for it here. We'll be moving this onto the wiki soon enough, however.

Terminal, while perfectly stable by itself, is meant to be a framework for servers. It is intended for others to modify Terminal to fit the needs of the server and as such, we strongly recommend that before you host a server with a modified branch of Terminal, you prefix any modified scripts or rename them entirely to avoid conflicts with scripts from other servers. As an example of this, I am hosting a 24/7 dedicated Terminal server with my own uniquely modified scripts to fit my (sort of) needs. If you really want, you can connect to this server at lightdash.org and I'll try to get a webpage up for it soon.

Some parts of Terminal can be really (and I mean really, really) dangerous if certain checks are removed. We advise you not to remove them for the sake of your server's security.

Remember, Terminal doesn't make any modifications to the way SRB2's information handling is done. You still shouldn't send sensitive information over SRB2 or expect things like your passwords to be 100% secure. Be careful and don't use any passwords that you use for other services as well.

Feedback is wonderful, we want plenty of it! Also make sure to report the usual stuff like odd tendencies and bugs. If you have any questions to ask or suggestions to push, the best place to ask is our channel, #SRB2Terminal on irc.esper.net.

The full credits for this mod are located in our external documentation link, for those interested. Everyone listed in the co-authors here has made a significant contribution or is an active main developer of the mod.

Terminal is, as previously stated, free to be modified and reused by anyone as long as proper credit is given. Unique server modules based on Terminal are something great that we specifically want to see.


Have fun!

Download Now

File Type: zip Terminal-v1.2.zip (22.0 KB, 797 views)

Screenshots

Click image for larger version

Name:	srb20133.png
Views:	1506
Size:	74.7 KB
ID:	5102   Click image for larger version

Name:	srb20014.jpg
Views:	1879
Size:	183.9 KB
ID:	5103   Click image for larger version

Name:	srb20125.png
Views:	1508
Size:	44.8 KB
ID:	5104   Click image for larger version

Name:	srb20124.png
Views:	1477
Size:	48.3 KB
ID:	5105   Click image for larger version

Name:	srb20132.png
Views:	1264
Size:	53.3 KB
ID:	5106  

Supporters / CoAuthors

Show Your Support

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

Comments
Old 05-29-2014   #2
RedEnchilada
happy, pretty, lovely!
Developer
 
RedEnchilada's Avatar
Default

By the way, to better facilitate Terminal derivation (and also if anyone wants to contribute to the base), we have a GitHub repository available. Changes and new features will most likely show up here between MB release milestones, but in exchange it won't be reliably stable, so please use the MB releases instead if you want a stable experience. (This message will self-destruct once it has been metamorphosed into the OP.)

Lemme also reiterate the importance of feedback. There's a lot of complicated stuff going on in here, especially in systems like logins and voting, so please tell us of any errors you find, especially if they result in removed hooks or similarly bad things.
__________________
Quote:
<@toaster> '"sonic robot explosion 2", the hot new sensation for teens looking for a good time, tempts many children away from god each year'
av src

Last edited by RedEnchilada; 05-30-2014 at 05:48 PM. Reason: lookie at our git thingy
RedEnchilada is offline   Reply With Quote
Old 05-29-2014   #3
SonicX8000
Graphic & Sprite Modder.
Judge
 
SonicX8000's Avatar
Default

Now this is rather something and I can tell that a lot of work was put into this. Welcome to releases.
__________________
GraphicX8000 will return... when I'm actually not lazy with finishing it.
SonicX8000 is offline   Reply With Quote
Old 05-29-2014   #4
Iceman404
Tyler52 Forever
 
Iceman404's Avatar
Default

Goodbye to the days of fighting over servers that play CTF infinitely.
__________________
Kart Krew Workshop Thread
SRB2 Top Down & SRB2 Kart
Iceman404 is offline   Reply With Quote
Old 05-29-2014   #5
Zero_the_artificial
A Weavile Enthusiast
 
Zero_the_artificial's Avatar
Default

...Unless there's a draw.
Also, I gotta say this makes server hosting SO much easier AND cooler. Great work guys.
__________________
Weavile slayed Dragons before it was cool. ᕙ(⌐■ᨎ■)ᕗ
http://steamcommunity.com/groups/TemmieIsGod
Zero_the_artificial is offline   Reply With Quote
Old 05-29-2014   #6
TOGM95
What am I again?
 
TOGM95's Avatar
Default

Oh goody! I lua with server thingys! This is what I was expecting to appear so I could use it. Good Job!
__________________
FNaF happened! (like 5 months!)

And remember:

IT'S ME. (or IT'S HIM whatev.)
TOGM95 is offline   Reply With Quote
Old 05-29-2014   #7
Puppyfaic
*panting sounds*
 
Puppyfaic's Avatar
Default

Ah, nice. You guys finally finished it.
__________________
Quote:
Originally Posted by Frostay
Yeah fuck you too you insufferable twat.
Puppyfaic is offline   Reply With Quote
Old 05-30-2014   #8
speed2411
*Speed-Roid*
 
speed2411's Avatar
Default

Is it possible to add objectplace into the lua? That would make this mod 5x better.
__________________
Listen. I'm *Speed-Roid* Not you. Me! So I really don't want you using my name.

Spoiler:
Clearly, I controlled your mind to make you open this spoiler box. You cant resist my power!! I shall control your mind. ^_^
speed2411 is offline   Reply With Quote
Old 05-30-2014   #9
Steel Titanium
 
Steel Titanium's Avatar
Default

It is possible, but remember that Terminal is a framework, so it can be modified by the user to include objectplace.
Steel Titanium is offline   Reply With Quote
Old 05-30-2014   #10
RedEnchilada
happy, pretty, lovely!
Developer
 
RedEnchilada's Avatar
Default

Quote:
Originally Posted by speed2411 View Post
Is it possible to add objectplace into the lua? That would make this mod 5x better.
It's possible, but it'd be a ton of work and didn't seem important enough to put in for the initial release. It might come in a later version, though.
__________________
Quote:
<@toaster> '"sonic robot explosion 2", the hot new sensation for teens looking for a good time, tempts many children away from god each year'
av src
RedEnchilada is offline   Reply With Quote
Old 05-30-2014   #11
Sapheros
That guy that ports
 
Sapheros's Avatar
Default

Um, yeah, it's kind of embarrassing to ask, how do you execute loadall.txt? The wiki happens to be down and adding the files through a launcher causes an error saying "Command **** already exists"
__________________
Hiyo all! Underground Website
Sapheros is offline   Reply With Quote
Old 05-30-2014   #12
LunarDestroyer
 
LunarDestroyer's Avatar
Default

Use the exec command. It basically works like the addfile command for scripts.
LunarDestroyer is offline   Reply With Quote
Old 05-30-2014   #13
Wolfy
wolfs
Developer
 
Wolfy's Avatar
Default

Quote:
Originally Posted by Duon the Adventurer View Post
Um, yeah, it's kind of embarrassing to ask, how do you execute loadall.txt? The wiki happens to be down and adding the files through a launcher causes an error saying "Command **** already exists"
"exec loadall.txt" in the console. Don't use a launcher because replaced commands break with them, and Terminal replaces lots.
__________________
Quote:
[23:56:36] <SM-MaxX> prisma illya is a gift to this impure earth and a shining beacon for all anime
Wolfy is offline   Reply With Quote
Old 05-30-2014   #14
Sapheros
That guy that ports
 
Sapheros's Avatar
Default

New Problem, now i can't even host without someone joining and crashing my server...
__________________
Hiyo all! Underground Website
Sapheros is offline   Reply With Quote
Old 05-30-2014   #15
dany777
Cute/Kawaii character Lover
 
dany777's Avatar
Default

This will come handy, but i have a problem.

I dont know how to execute the loadall.txt, i tried to do the command addfile loadall.txt, but nothing, i tried using the SRB2 launcher, adding first the core, then the rest, but it says command password already exists
dany777 is offline   Reply With Quote
Old 05-30-2014   #16
Sapheros
That guy that ports
 
Sapheros's Avatar
Default

Quote:
Originally Posted by dany777 View Post
This will come handy, but i have a problem.

I dont know how to execute the loadall.txt, i tried to do the command addfile loadall.txt, but nothing, i tried using the SRB2 launcher, adding first the core, then the rest, but it says command password already exists
We just discussed this earlier, you need to use the command "exec" to add loadfile.txt.
__________________
Hiyo all! Underground Website
Sapheros is offline   Reply With Quote
Old 05-30-2014   #17
pride
 
pride's Avatar
Default

I added an splash screen and that displays me that


__________________
If I write badly it is that my English is bad because I am French

Last edited by pride; 05-30-2014 at 12:41 PM.
pride is offline   Reply With Quote
Old 05-30-2014   #18
RedEnchilada
happy, pretty, lovely!
Developer
 
RedEnchilada's Avatar
Default

Try changing up the order in which files are added. (Core should still be added first, but otherwise the order isn't super-important.) If that doesn't work, post the splash WAD and I'll take a look to see if it might be a problem with the way it's set up.
__________________
Quote:
<@toaster> '"sonic robot explosion 2", the hot new sensation for teens looking for a good time, tempts many children away from god each year'
av src
RedEnchilada is offline   Reply With Quote
Old 05-30-2014   #19
Steel Titanium
 
Steel Titanium's Avatar
Default

Did pride convert his splash to Doom GFX before loading? If he didn't, that's the main cause for the crashing.
Steel Titanium is offline   Reply With Quote
Old 05-30-2014   #20
Sapheros
That guy that ports
 
Sapheros's Avatar
Default

Okay, I have found a problem even worse than the problem before, executing loadall.txt automatically causes the game to crash. All of the files are there. The only thing that might be different is i had a couple of wads on start-up, could that be the case?
__________________
Hiyo all! Underground Website
Sapheros 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 04:50 PM.


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