Page 1 of 33

Springie the AutoHost

Posted: 06 Nov 2006, 21:35
by Licho
NOTE: This branch of springies has been deprecated. New springie has no GUI and is optimized for server use, hosting great number of autohosts and spawning more at demand. If you wish to use this version, get it from http://code.google.com/p/summerspring/


Springie is a standalone windows/linux application (made in C#)

Image

Key features:
=========
- designed to provide stable server which can run without supervision
- key abilities are votable (voteforce, votekick, votemap)
- can run without spring and without maps/mods
- ability to listen to commands from spring and to relay chat between game and lobby
- includes automatic map/mod discovery and update
- presets concept allows server owner to define sets of changes to spring settings and players can vote for preset to apply those changes
- everything is configurable using GUI. Each command can be assigned rights level and places where it works (for example you can set springie to listen to commands directly from game, or from some channels)
- springie autohosts can upload data to central stats gathering site
- has several minor abilities which should streamline using (for example automatically kicks unsynced people, automatically opens game when game ends or people left server, provides maplink for every new joiner, all filtering - like maps, users is done using multiple case insensitive substrings)
- updates itself automatically


NOTE: This branch of springies has been deprecated. New springie has no GUI and is optimized for server use, hosting great number of autohosts and spawning more at demand. If you wish to use this version, get it from http://code.google.com/p/summerspring/

Current version 1.38
==============

mirror 2) http://springie.licho.eu/springie.zip (binary)

Latest source code:
http://trac.caspring.org/browser/trunk/tools/Springie


What do you need to run it
=================
1) windows with .NET framework 2.0 or Mono installed ( http://www.microsoft.com/downloads/deta ... laylang=en )

2) download springie and read readme.txt

3) create a new accout for springie and ask moderator to give it a bot flag (this prevents you from getting banned for flooding)

4) get latest spring dedicated server (maintainer is Auswaschbar)

5) run springie.exe

Notes
====
- You don't need any super connection. Any ADSL will do. Traffic generated by hosting is really small. You don't need a very powerfull CPU either.

- Make sure you use port open at your firewall (or forwarded port if behind NAT). Always run a test game with other person before leaving server on.

Posted: 06 Nov 2006, 22:04
by Comp1337
This looks really good. The unlock when empty-function seems nice, the current servers become locked down quickly..

Posted: 06 Nov 2006, 22:37
by Neddie
Could you include documentation for defining admins and possible levels of authority?

Posted: 06 Nov 2006, 22:45
by PicassoCT
Fantastic, fast and for free! Hurray..


Man, i can see the direct & indirect Threads about "Mods not having open Games" leave this Board - all of them. Never again to return...
Now we only have a Advertising Problem left -

Oh, me is running away to see the first Auto-Server awaking. Spring-Time - :-)

By the way - has it a invite Function, to call for pepz not beeing Busy ?

Posted: 06 Nov 2006, 22:56
by Licho
I can add invite easilly, but I'm too afraid of spam :)

Rights work in similar way like in altaric. All commands have "level" (configurable) and places they listen to (mosten listen to PM and battle chat).

Players are assigned some default level, and their level is check with level of every command. Admins are people who are given higher than default rights level.

I'm also considering simple authentification
!auth login password PM command which would log you as some admin in case you have different nickname

Posted: 07 Nov 2006, 00:28
by Dragon45
For an automated rights system - how about the bot keeps track of how many games you play on the server, hours, etc, and gradually increases your rights with time, as it determines you are 'trustworthy'?

Posted: 07 Nov 2006, 00:39
by pintle
then people like me would be granted control :shock:

Posted: 07 Nov 2006, 01:14
by Felix the Cat
Licho,

One issue I noted is that !votekick requires too many votes. We had 9 players in a server and tried to use !votekick, and Springie said that 9 votes were required to kick... unless the player we were trying to kick (for having a 600MHz CPU) voted to kick himself, we would never have been able to kick him.

Also, it would be nice if !lock and !unlock required some level of admin access. Maybe level 2? Currently they seem to be spammed around a lot by terribly impatient people who want to play RIGHT THE F*CK NOW, even if the game has 3 players in it.

Posted: 07 Nov 2006, 03:40
by Licho
9 people??
Kick needs 66% of all on server including spectators. There were probably 12 people total.
I can change thos ratios though.

I like the idea with automatic rights growing over time. I think I will implement it.

And regarding locking ... I don't know solution for it. Either it can be off, and then you will get troubles with too many people joining or it will be allowed and some tards might abuse it a bit.

Posted: 07 Nov 2006, 03:51
by Licho
Those commands added:
!balance
!rehost
!voterehost

- added automatic unknown sync status kicker

Posted: 07 Nov 2006, 07:13
by danzel
Awesome work Licho, played on this server last night :)

Posted: 07 Nov 2006, 07:45
by Argh
Wow, this sounds great- exactly what I've been wanting! I'll definitely run this with some of the lesser-known mods when you've put out a release :-D

Posted: 07 Nov 2006, 08:02
by danzel
Looks like its getting dupe messages atm:

[7:55:41 p.m.] <danzel> !listmaps comet
[7:55:42 p.m.] <Springie> Comet Catcher Remake-v02.smf
[7:55:42 p.m.] <Springie> Green Comet Basic.smf
[7:55:42 p.m.] <Springie> Comet Catcher Remake-v02.smf
[7:55:42 p.m.] <Springie> Green Comet Basic.smf

!maplist
[7:55:26 p.m.] <Springie> Sorry, I don't know command 'maplist'
[7:55:26 p.m.] <Springie> Sorry, I don't know command 'maplist'

[8:01:01 p.m.] <danzel> !vote 2
[8:01:01 p.m.] * Springie option 1: 0 votes of 2 required
[8:01:01 p.m.] * Springie option 2: 1 votes of 2 required
[8:01:01 p.m.] * Springie option 1: 0 votes of 2 required
[8:01:01 p.m.] * Springie option 2: 1 votes of 2 required
[8:01:13 p.m.] <[SmuG]Nixa> !vote 2
[8:01:14 p.m.] * Springie option 1: 0 votes of 2 required
[8:01:14 p.m.] * Springie option 2: 2 votes of 2 required
[8:01:14 p.m.] * Springie not enough votes, map stays

etc.

Posted: 07 Nov 2006, 08:11
by Felix the Cat
Licho wrote:9 people??
Kick needs 66% of all on server including spectators. There were probably 12 people total.
I can change thos ratios though.

I like the idea with automatic rights growing over time. I think I will implement it.

And regarding locking ... I don't know solution for it. Either it can be off, and then you will get troubles with too many people joining or it will be allowed and some tards might abuse it a bit.
Sorry Licho, but there were 9 players on the server plus Springy as a spectator, and the kick said it required 9 votes for.

Unless that number in the kick voting message means the number of total players? In which case it's somewhat misleading.

Posted: 07 Nov 2006, 08:31
by jellyman
I had a mostly good experience with it last night. Although did have a problem with a player unlocking the game. We were trying for a 4 vs 4 on Crossing, and he unlocked it a couple times to let a 9th player in.

My idea is an autolock feature where there is a set number of active players set for the game. The game will be unlocked if you have less, and locked the instant you get the required number. The set number of players can be changed by a vote.

Also had a case of other players spamming alot. Not sure if it is worth considering autokick if there is excessive spam. But only if this happens regularly, and not just on rare occasions.

Posted: 07 Nov 2006, 11:52
by Licho
danzel wrote:Looks like its getting dupe messages atm:

[7:55:41 p.m.] <danzel> !listmaps comet
[7:55:42 p.m.] <Springie> Comet Catcher Remake-v02.smf
[7:55:42 p.m.] <Springie> Green Comet Basic.smf
[7:55:42 p.m.] <Springie> Comet Catcher Remake-v02.smf
[7:55:42 p.m.] <Springie> Green Comet Basic.smf

!maplist
[7:55:26 p.m.] <Springie> Sorry, I don't know command 'maplist'
[7:55:26 p.m.] <Springie> Sorry, I don't know command 'maplist'

[8:01:01 p.m.] <danzel> !vote 2
[8:01:01 p.m.] * Springie option 1: 0 votes of 2 required
[8:01:01 p.m.] * Springie option 2: 1 votes of 2 required
[8:01:01 p.m.] * Springie option 1: 0 votes of 2 required
[8:01:01 p.m.] * Springie option 2: 1 votes of 2 required
[8:01:13 p.m.] <[SmuG]Nixa> !vote 2
[8:01:14 p.m.] * Springie option 1: 0 votes of 2 required
[8:01:14 p.m.] * Springie option 2: 2 votes of 2 required
[8:01:14 p.m.] * Springie not enough votes, map stays

etc.
Yeah, thanx for finding this, this is because someone made rehost and it's a bit bugged and then does everything 2x :)

Posted: 07 Nov 2006, 19:46
by Licho
Heelp, could someone please contact betalord or other lobby server admin???

It autobanned me for spamming (my IP) so I cannot host or play :((

That's what you get if you try to run too many servers from same IP ..

Posted: 07 Nov 2006, 20:57
by LordMatt
Unbanned.

Posted: 07 Nov 2006, 21:07
by Licho
Thx a lot good lord!

Posted: 09 Nov 2006, 06:00
by Licho
Version 0.75
---------------
- fixed lobby spam bugs

- added command throttling (each command now has preset value how often can it be used)

- improved filtering for maps, mods and users. It first attempts to find exact match. And listmaps or listmods shows numbers and you can use these numbers instead of text (!votemap 50) and such.

- added !setlevel command for setting user rights

- improved spring control hacks - springie now minimizes and then hides spring window completely. It also increases spring priority. As a result host now runs at nearly 0% but pings are better because of higher priority. You can also play and host on the same machine without problems.