Super Experimental Seedbot

A forum dedicated to Team Fortress 2
Post Reply
belak
Villun
Villun
Posts: 330
Joined: Sun Apr 01, 2012 12:51 am
Location: Bellevue, WA

Games Played

Ville Awards

belak51’s avatar
Loading…

Super Experimental Seedbot

Post by belak » Tue Aug 26, 2014 8:07 pm

So, those of you who know me well might know that I am in computer science for a living. For those of you who didn't know that, now you do. Anyway, spawned from a few random successful seeds of TV7 (and a few failed ones), I started thinking about how we currently do seeding... it's essentially the same message sent out to a bunch of people... people who have signed up in a random thread somewhere which was eventually updated, causing updates to be sent out on random occasions.

So, here is my solution, the Ville Seed Organizer. It's a bot which connects to Steam and listens for messages from anyone designated as a seeder. Anyone can friend it to get updates and even set notification settings.

http://steamcommunity.com/id/VilleSeedOrganizer

Code can be found at https://bitbucket.org/belak/seedbot for anyone interested.

If you friend the bot, you will automagically be set up to get updates from it. The default settings are only when you're online, or in a game. By default, it will not message you if you are away, or busy. There is also a whitelist/blacklist of games. For instance, if you regularly play l4d2 and don't want to be interrupted, you can set the list type to blacklist and add app 550 to the list.

Also, right now there is a very limited list of seeders and admins. If you're interested in access, please let me know.

So, here we go... commands for everyone:

Code: Select all

!set property value
This allows you to set the settings, as explained below

!get property
This will show you the value of that property.

!unset property
This will reset the setting back to the default.
Admin commands

Code: Select all

!setuser steamid property value
Works similar to !set but takes a user to modify. It should accept most forms of Steam ID, but not the profile page name.
Seeder commands

Code: Select all

!seed message
This sends out a message to everyone who should get a message based on their settings

!seedip ip_list message
This will send a message to everyone currently on an ip in the list. Note that there are a few aliases set up, which I can get you if you want them.

!seednotip ip_list message
This will send a message to everyone currently not on an ip in the list.
Settings

Code: Select all

seeder and admin are properties only admins of the bot can set.

notify_when
This is a comma-separated list of when you want to be notified. The possible values are:
online
in_game
away
busy

app_list_type
app_list_type is one of the following properties. It is used to determine if you are in_game.
off: The app_list will not be used. If you are in any game, and have in_game set you will get messages.
blacklist: app_list acts as a blacklist. If you are playing a game and in one of the apps listed, you will not get a message. If you are in anything else, you will.
whitelist: app_list acts as a whitelist. If you are playing a game and in one of the apps listed, you will get a message. If you are in anything else, you will not.

app_list
app_list is a comma-separated list of Steam App IDs. How they are used depends on the app_list_type property.
I have a few more finishing touches, but it should be mostly done. Also, while I'm finishing it up, there may be some extra test messages as fair warning.

If you have any questions or ideas, even saying how silly of an idea you think it is and that it will never catch on... I'll listen to all of them... just make a post or message me on Steam.
Last edited by belak on Wed Aug 27, 2014 1:02 pm, edited 1 time in total.

Larry
Villun
Villun
Posts: 1471
Joined: Thu Jul 14, 2011 12:48 pm
Location: Phoenix

Games Played

Ville Awards

Re: Super Experimental Seedbot

Post by Larry » Tue Aug 26, 2014 9:05 pm

Wow. that's pretty neat.
Image
Thanks to Seagreens for the spiffy banner!
VIEW CONTENT:
RIP Mr. Laptop 5/21/13
USAHB-Team Hand Brake 2012 Villy-Stuff
#HL3 TVC '13
FAIL Warpath Cup 2012-Proud to FAIL
Heck's Kitchen 2011

ADevilishPotato
Server Ops
Server Ops
User avatar
Posts: 5248
Joined: Sat Jan 22, 2011 11:42 am
Location: Where my feet are

Games Played

Ville Awards

Re: Super Experimental Seedbot

Post by ADevilishPotato » Wed Aug 27, 2014 1:06 am

+1 internets!

:clap: :clap: :clap:
WARPATH Cup '12- [WARPATH] We are running past all the heavies
The Ville Cup '12- (DYD) Dirty Dan's Double D's
Dust Bowl loves Warpath '13- (CD-i) Chokepoints and Demomen- international (Champions!)
The Ville Cup '13- [T^5] Tuber's Truly Terrifying Tator Tots
The Ville Cup '14- GCI_ Guild of Calamitous Intent

CoyoteCreed
Villun
Villun
User avatar
Posts: 894
Joined: Sat Feb 11, 2012 11:59 pm
Location: California

Games Played

Ville Awards

<eVa> Coyote’s avatar
Loading…

Re: Super Experimental Seedbot

Post by CoyoteCreed » Wed Aug 27, 2014 1:17 am

This is admirable.
Image
Banner by some other Villun

Warpath Cup '12 | Inner Children Unleashed | Champions
Villympics '12 | ACME Villympic Team (Captain) | Champions
VC '12 | Solis Tanquam
D<3W '13 | SOBAD
VC '13 | Ville Cuppin' Cakes (Captain)
VC '14 | Carpetbaggers | Champions

eVa

Inner
Server Admin
Server Admin
Posts: 1475
Joined: Fri Dec 17, 2010 10:38 pm
Location: North Carolina

Games Played

Ville Awards

=USV= Inner’s avatar
Loading…

Re: Super Experimental Seedbot

Post by Inner » Wed Aug 27, 2014 1:56 am

This is very close to genius work sir. Well done. Now if you could add a checkbox/pushbutton interface to it.... :)

I just friended a bot, and I liked it.

belak
Villun
Villun
Posts: 330
Joined: Sun Apr 01, 2012 12:51 am
Location: Bellevue, WA

Games Played

Ville Awards

belak51’s avatar
Loading…

Re: Super Experimental Seedbot

Post by belak » Wed Aug 27, 2014 2:48 am

A web interface for it might be possible (and it's a good idea), but it's a ways off... Actually, I'll add an feature request issue for that.

The Domer
Server Admin
Server Admin
User avatar
Posts: 2885
Joined: Mon Feb 01, 2010 10:09 pm
Location: Ontario

Games Played

Ville Awards

Domer’s avatar
Loading…

Re: Super Experimental Seedbot

Post by The Domer » Wed Aug 27, 2014 6:20 am

Cool beans. You are essentially making black_and_blue and ADeviloshPotato useless around here! In all seriousness, this is a super cool project

belak
Villun
Villun
Posts: 330
Joined: Sun Apr 01, 2012 12:51 am
Location: Bellevue, WA

Games Played

Ville Awards

belak51’s avatar
Loading…

Re: Super Experimental Seedbot

Post by belak » Wed Aug 27, 2014 10:24 am

The Domer wrote:Cool beans. You are essentially making black_and_blue and ADeviloshPotato useless around here! In all seriousness, this is a super cool project
Hah, I hope not! They're too useful to be replaced by something like this. Besides, the bot still needs someone to essentially pilot it! Hopefull this will just make their jobs easier.
Last edited by belak on Wed Aug 27, 2014 1:13 pm, edited 1 time in total.

c4ridw3n
Villun
Villun
Posts: 1061
Joined: Sun Feb 23, 2014 5:20 pm
Location: Bay Area

Games Played

Ville Awards

c4ridw3n’s avatar
Loading…

Re: Super Experimental Seedbot

Post by c4ridw3n » Wed Aug 27, 2014 11:04 am

You are my hero. This is so cool.
Image

Quandary
Villun
Villun
User avatar
Posts: 103
Joined: Fri Jul 19, 2013 11:02 am
Location: Redmond, WA

Games Played

Ville Awards

quandary’s avatar
Loading…

Re: Super Experimental Seedbot

Post by Quandary » Wed Aug 27, 2014 12:28 pm

If I might suggest some sort of access control?

I presume that the code is living on a machine you own; maybe just a local whitelist file. Or being a member of a private/approved-only membership Steam group. Something, anything to prevent tom/dick/harry/kilaak from annoying us to the point of unfriending Mr. Roboto. :)

(Jerks on the Internet? Spamming us? What is this crazy talk I'm spouting?! ;))

Edit:

Having a look at the code, it appears that Ye Bot does have a local whitelist -- I presume you're the only person with "admin" privileges on the bot, so by extension, anybody who wants to seed will need to check in with you to get the appropriate "seeder" flag set.

I assumed that no access control was present, given that there were no "talk to me" instructions in the original post. My bad. :)

Kujako
Villun
Villun
User avatar
Posts: 26
Joined: Fri May 22, 2009 11:55 pm
Kujako’s avatar
Loading…

Re: Super Experimental Seedbot

Post by Kujako » Wed Aug 27, 2014 12:55 pm

And all I get to write is really dull business software...

belak
Villun
Villun
Posts: 330
Joined: Sun Apr 01, 2012 12:51 am
Location: Bellevue, WA

Games Played

Ville Awards

belak51’s avatar
Loading…

Re: Super Experimental Seedbot

Post by belak » Wed Aug 27, 2014 1:01 pm

Quandary wrote:Having a look at the code, it appears that Ye Bot does have a local whitelist.
Yes. One of the first things I built in. Conveniently enough, Steam IDs are unique (and come with any incoming message), so you can just use those to make sure a person is who they say they are. Right now, I think me, black_and_blue, and Potato are admins.

I'll update the main post.

On a side note, I'll hopefully get a chance to migrate to something I can use across multiple frameworks... I don't know if I'd be comfortable writing the web interface in node as well, since it really isn't one of my strong suits.
Kujako wrote:And all I get to write is really dull business software...
One of the reasons I have so many side projects. :P

EDIT: Just fixed a bug with unset. It should work now.
EDIT 2: Something else is broken with setting variables... though I don't log commands so if anyone runs into these it would help if you could send me what caused it.
EDIT 3: Thanks to quandary for fixing a number of bugs!

Post Reply

Who is online

Users browsing this forum: Google [Bot] and 21 guests