Scales v0.2.8 Garry's Mod Plugin



  • This is how I set up a Garry's Mod Server in puffer panel, it adds a fastdl compiler in the preflight of the plugin and a countdown timer for stopping/restarting the server. Hope you like it.

    NOTE: This doesn't work with docker enabled and requires a nginx server to be set up for the fastdl. I've only tested this on Ubuntu 14.04 and not tested with the other plugins, use at your own risk and make backups before editing any file.

    First you'll need to edit a core file of the Scales for this to work .

    /lib/process.js

    You can download it here or manually edit the file:

    You need to change on line 44 to this

    this.plugin = new Plugin( this.getRootPath(), this.buildPath(), this.config, this );
    

    and on line 949

    self.plugin = new Plugin(self.getRootPath(), self.buildPath(), self.config, self );
    

    then replace line 444-446 to this,

            Logger.verbose(Util.format('Stopping server process (pid: %s) for %s', this.ps.pid, this.config.name));
            this.setStatus(Power.STOPPING);
    
            if ( typeof this.plugin.settings.countdown !== 'undefined' && this.plugin.settings.countdown ) {
                var counter = self.plugin.settings.countdown;
                var interval = setInterval( function() {
                    if ( counter <= 0 ) {
                        clearInterval(interval);
                        self.ps.write( Util.format( self.plugin.settings.say + ' Server is stopping now.\r' ) );
                        self.ps.write( self.plugin.settings.stop + '\r' );
                    }else{
                        self.ps.write( Util.format( '%s Server is stopping in %s seconds.\r', self.plugin.settings.say, counter ) );
                    }
                    counter--;
                }, 1000);
            }else{
                this.ps.write(this.plugin.settings.stop + '\r');
            }
    

    and lastly on line 442 add this :

    var self = this;
    

    Installing the plugin

    Run the following commands in your terminal:

    cd /srv/scales
    wget -O gmod.tar https://dl.dropboxusercontent.com/u/37497632/dev/gmod.tar?dl=1
    tar -xvf gmod.tar
    sudo chmod 755 lib/scripts/install/gmod.sh
    find lib/plugins/gmod/scripts/. -name "*.sh" | xargs chmod 755
    rm gmod.tar
    

    Then go to the PufferPanel Settings and add this plugin:

    Name : GarrysMod
    Plugin Slug : gmod
    Default Startup Command:

    -norestart -game garrysmod -console -ip ${ip} -port ${port} -maxplayers ${players} +map ${map} +gamemode ${gamemode} +rcon_password ${rcon} +servercfgfile ${cfg}
    

    Variables

    ${players} : 20
    The maximum number of players (including bots) that can access a server at once.

    ${map} : gm_construct
    The default map to use in a rotation.

    ${gamemode} : sandbox
    The game mode the server is running on first start.

    ${rcon} : password
    The rcon password.

    ${cfg} : gamemode.cfg
    The configuration file for your server.

    Nginx/Fastdl Setup

    add this to /etc/nginx/sites-available/default

    location /fdl {
       root /home/shared;
       disable_symlinks off;
       autoindex on;
    }
    

    run these commands

    mkdir -p /home/shared/fdl/
    chmod -R 777  /home/shared/
    sudo service nginx restart
    

    The fastdl link will be http://domin.com/fdl/serverip-port/

    Go here for a tutorial on setting fastdl for a Garry's Mod server.



  • Bonjour, bonsoir.
    je peux te contacte pour une question merci.


Log in to reply
 

Looks like your connection to PufferPanel Community was lost, please wait while we try to reconnect.