Author Topic: Warcraft 3 host bot  (Read 2199 times)

riffruff

  • Sr. Members
  • Jr. Member
  • **
  • Posts: 94
    • View Profile
Warcraft 3 host bot
« on: February 02, 2009, 04:13:30 PM »
For those of you that play Warcraft 3, R77 has setup a host bot.

This was no easy task!  It took Hero, Vector, and I roughly 3 hours to compile, configure, and run.

The bot is hosted on my server, having a 100 mbit connection.  Hero and I have used it a bit and had no lag thus far.  I'd like to allow anyone to use the bot within R77.  I do NOT want someone to create a bot with commands to send to the host bot, allowing for you to let your friends use the bot.  The server does have a bandwidth limit, and I don't want to many people using the bot, and hitting my bandwidth limit.

To get access, I must give you access.  No one else can give access!  Don't ask Hero or Vector for access -- they can't do it!
If you want a map to be on the bot that isn't currently, post here with a link to the map file.  For those knowing a lot about the host bot, I don't want the CFG file -- I want the w3x file.
Current maps on the bot...
  • dota6.59b
  • dota6.59
  • enfos
To have the bot load a map, use the command !map <mapname>

Reserved slots are another feature on the bot!
Quote
Each game has a list of reserved players.
The list always starts out empty when starting a new game.
You can use the !hold command to add players to the list.
When a player joins the game the bot considers them to be a reserved player if any one of the following is true:

1.) If it finds the player in the list.
2.) If the player is a root admin on any defined realm.
3.) If the player is an admin on any defined realm.
4.) If the player is the game owner.

Note that you do not need to be spoof checked to be considered a reserved player because you can't spoof check before joining the game.
If the player is considered a reserved player they will be given preference when choosing a slot in the following ways:

1.) If an open slot is found they will join that slot.
2.) If a closed slot is found they will join that slot.
3.) If a slot occupied by a non-reserved player is found that player will be kicked and the reserved player will join that slot.

Additionally, if the player is the game owner they will be guaranteed a slot in the following way:

4.) The player in the lowest numbered slot will be kicked and the game owner will join that slot.
5.) The computer in slot 0 (the first slot) will be kicked and the game owner will join that slot.

And lastly, a command list!
Quote
In battle.net (via local chat or whisper at any time):

!addadmin <name>         add a new admin to the database for this realm
!addban <name> [reason]  add a new ban to the database for this realm
!announce <sec> <msg>    set the announce message (the bot will print <msg> every <sec> seconds in the lobby), use "off" to disable the announce message
!autohost <m> <p> <n>    auto host up to <m> games, auto starting when <p> players have joined, with name <n>, use "off" to disable auto hosting
!autostart <players>     auto start the game when the specified number of players have joined, use "off" to disable auto start
!ban                     alias to !addban
!channel <name>          change battle.net channel
!checkadmin <name>       check if a user is an admin on this realm
!checkban <name>         check if a user is banned on this realm
!close <number> ...      close slot
!closeall                close all open slots
!countadmins             display the total number of admins for this realm
!countbans               display the total number of bans for this realm
!deladmin <name>         remove an admin from the database for this realm
!delban <name>           remove a ban from the database for all realms
!disable                 disable creation of new games
!enable                  enable creation of new games
!end <number>            end the specified game in progress (disconnect everyone)
!exit [force]            shutdown ghost++, optionally add [force] to skip checks
!getclan                 refresh the internal copy of the clan members list
!getfriends              refresh the internal copy of the friends list
!getgame <number>        display information about a game in progress
!getgames                display information about all games
!hold <name> ...         hold a slot for someone
!hostsg <name>           host a saved game
!load <filename>         load a config file (for changing maps), leave blank to see current map - the ".cfg" is automatically appended to the filename
!loadsg <filename>       load a saved game
!map <filename>          alias to !load
!open <number> ...       open slot
!openall                 open all closed slots
!priv <name>             host private game
!privby <owner> <name>   host private game by another player (gives <owner> access to admin commands in the game lobby and in the game)
!pub <name>              host public game
!pubby <owner> <name>    host public game by another player (gives <owner> access to admin commands in the game lobby and in the game)
!quit [force]            alias to !exit
!say <text>              send <text> to battle.net as a chat command
!saygame <number> <text> send <text> to the specified game in progress
!saygames <text>         send <text> to all games
!sp                      shuffle players
!start [force]           start game, optionally add [force] to skip checks
!stats [name]            display basic player statistics, optionally add [name] to display statistics for another player (can be used by non admins)
!statsdota [name]        display DotA player statistics, optionally add [name] to display statistics for another player (can be used by non admins)
!swap <n1> <n2>          swap slots
!unban                   alias to !delban
!unhost                  unhost game in lobby
!version                 display version information (can be used by non admins)

In game lobby:

!a                      alias to !abort
!abort                  abort countdown
!addban <name> <reason> add a new ban to the database (it tries to do a partial match)
!announce <sec> <msg>   set the announce message (the bot will print <msg> every <sec> seconds), leave blank or "off" to disable the announce message
!autostart <players>    auto start the game when the specified number of players have joined, leave blank or "off" to disable auto start
!autosave <on/off>      enable or disable autosaving
!ban                    alias to !addban
!check <name>           check a user's status (leave blank to check your own status)
!checkban <name>        check if a user is banned on any realm
!checkme                check your own status (can be used by non admins, sends a private message visible only to the user)
!close <number> ...     close slot
!closeall               close all open slots
!comp <slot> <skill>    create a computer in slot <slot> of skill <skill> (skill is 0 for easy, 1 for normal, 2 for insane)
!compcolour <s> <c>     change a computer's colour in slot <s> to <c> (c goes from 1 to 12)
!comphandicap <s> <h>   change a computer's handicap in slot <s> to <h> (h is 50, 60, 70, 80, 90, or 100)
!comprace <s> <r>       change a computer's race in slot <s> to <r> (r is "human", "orc", "night elf", "undead", or "random")
!compteam <s> <t>       change a computer's team in slot <s> to <t> (t goes from 1 to # of teams)
!dl <name>              alias to !download
!download <name>        allow a user to start downloading the map (only used with conditional map downloads, it tries to do a partial match)
!from                   display the country each player is from
!hold <name> ...        hold a slot for someone
!kick <name>            kick a player (it tries to do a partial match)
!latency <number>       set game latency (50-500), leave blank to see current latency
!lock                   lock the game so only the game owner can run commands
!mute <name>            mute a player (it tries to do a partial match)
!open <number> ...      open slot
!openall                open all closed slots
!owner [name]           set game owner to yourself, optionally add [name] to set game owner to someone else
!ping [number]          ping players, optionally add [number] to kick players with ping above [number]
!priv <name>            rehost as private game
!pub <name>             rehost as public game
!refresh <on/off>       enable or disable refresh messages
!sendlan <ip> [port]    send a fake LAN message to IP address <ip> and port [port], default port is 6112 if not specified
!sp                     shuffle players
!start [force]          start game, optionally add [force] to skip checks
!stats [name]           display basic player statistics, optionally add [name] to display statistics for another player (can be used by non admins)
!statsdota [name]       display DotA player statistics, optionally add [name] to display statistics for another player (can be used by non admins)
!swap <n1> <n2>         swap slots
!synclimit <number>     set sync limit for the lag screen (10-10000), leave blank to see current sync limit
!unhost                 unhost game
!unlock                 unlock the game
!unmute <name>          unmute a player (it tries to do a partial match)
!version                display version information (can be used by non admins, sends a private message visible only to the user)
!virtualhost <name>     change the virtual host name
!votecancel             cancel a votekick
!votekick <name>        start a votekick (it tries to do a partial match, can be used by non admins)
!yes                    register a vote in the votekick (can be used by non admins)

In game:

!addban <name> <reason> add a new ban to the database (it tries to do a partial match)
!autosave <on/off>      enable or disable autosaving
!ban                    alias to !addban
!banlast <reason>       ban the last leaver
!check <name>           check a user's status (leave blank to check your own status)
!checkban <name>        check if a user is banned on any realm
!checkme                check your own status (can be used by non admins, sends a private message visible only to the user)
!drop                   drop all lagging players
!end                    end the game (disconnect everyone)
!from                   display the country each player is from
!kick <name>            kick a player (it tries to do a partial match)
!latency <number>       set game latency (50-500), leave blank to see current latency
!lock                   lock the game so only the game owner can run commands
!mute <name>            mute a player (it tries to do a partial match)
!muteall                mute global chat (allied and private chat still works)
!owner [name]           set game owner to yourself, optionally add [name] to set game owner to someone else
!ping                   ping players
!stats [name]           display basic player statistics, optionally add [name] to display statistics for another player (can be used by non admins)
!statsdota [name]       display DotA player statistics, optionally add [name] to display statistics for another player (can be used by non admins)
!synclimit <number>     set sync limit for the lag screen (10-10000), leave blank to see current sync limit
!unlock                 unlock the game
!unmute <name>          unmute a player (it tries to do a partial match)
!unmuteall              unmute global chat
!version                display version information (can be used by non admins, sends a private message visible only to the user)
!votecancel             cancel a votekick
!votekick <name>        start a votekick (it tries to do a partial match, can be used by non admins)
!yes                    register a vote in the votekick (can be used by non admins)

de80

  • Sr. Members
  • Full Member
  • ***
  • Posts: 148
    • View Profile
Warcraft 3 host bot
« Reply #1 on: February 02, 2009, 07:11:00 PM »
I have the same thing i am hosting it for shadow if you would like to use it we could work something out, and also it only took me 5-10 min...
[div align=\'center\']New To VBS World trying to learn.
 [/div]

DarkMage2303

  • Global Moderators
  • Newbie
  • *
  • Posts: 41
    • View Profile
Warcraft 3 host bot
« Reply #2 on: February 03, 2009, 12:11:37 AM »
Quote
enfos
Only good map you have

Vector

  • Administrator
  • Hero Member
  • *****
  • Posts: 550
    • View Profile
    • http://clanmage.phost.ws
Warcraft 3 host bot
« Reply #3 on: February 03, 2009, 11:35:38 AM »
Quote from: de80
I have the same thing i am hosting it for shadow if you would like to use it we could work something out, and also it only took me 5-10 min...
He was using linux, which is a bit more complicated to install than windows.
I am an Unofficial StealthBot Technician, an Unofficial StealthBot scripter, among other things. See my about page for more info.

Quote from: ArticWolve
Sorry I went down. Had internet problems with a cracker-jack-licensed driver hitting my internet pole (about 8 of them fell) and drooping my phone and electricity. Sorry ><

Rev77.net Plugins Manager

Proud host of Vector.no-ip.info | VectorJBLS.no-ip.org Status: [img]http://rev77.net/ServerCheck/check.asp?query=check&server=VectorJBLS.no-ip.org_status.png\" border=\"0\" class=\"linked-image\" /]

Shito-Ryu Karate-Do Genbu-Kai Rank: 8th Kyu (White belt, one stripe)

Rev77.Net Remote Support (Double-Click my name only if you were told to)

If the above link doesn't work, or if you use Vista, try this alternate link.

Noob ~Vector

riffruff

  • Sr. Members
  • Jr. Member
  • **
  • Posts: 94
    • View Profile
Warcraft 3 host bot
« Reply #4 on: February 03, 2009, 12:04:18 PM »
Quote from: Vector
Quote from: de80
I have the same thing i am hosting it for shadow if you would like to use it we could work something out, and also it only took me 5-10 min...
He was using linux, which is a bit more complicated to install than windows.
And it's a server, so it's stripped down from what most linux users would be used to.

de80

  • Sr. Members
  • Full Member
  • ***
  • Posts: 148
    • View Profile
Warcraft 3 host bot
« Reply #5 on: February 03, 2009, 02:16:44 PM »
O i see i used windos
[div align=\'center\']New To VBS World trying to learn.
 [/div]

Austin

  • Newbie
  • *
  • Posts: 29
    • View Profile
Warcraft 3 host bot
« Reply #6 on: February 05, 2009, 12:13:10 PM »
You using GHost++ ?
[img]http://i65.photobucket.com/albums/h217/Austin_Austin4/DERMA1Sig.jpg\" border=\"0\" class=\"linked-image\" /]
Quote
Longest word with no repeated letter:
dermatoglyphics
SUPP??
-Sig is large 0.o -Ace

DarkMage2303

  • Global Moderators
  • Newbie
  • *
  • Posts: 41
    • View Profile
Warcraft 3 host bot
« Reply #7 on: February 05, 2009, 03:05:50 PM »
Using ghost you can link battle.net games (east/west/euro/asia) with games on private servers, a know a server that banned the use of hosting bots for that reason.

Interesting

riffruff

  • Sr. Members
  • Jr. Member
  • **
  • Posts: 94
    • View Profile
Warcraft 3 host bot
« Reply #8 on: February 05, 2009, 06:05:32 PM »
Yea...I'm going to set it up to connect to my PvPGN server sometime so that when I have friends over we can all play online...

Hero

  • Administrator
  • Hero Member
  • *****
  • Posts: 502
    • View Profile
    • http://rev7.net
Warcraft 3 host bot
« Reply #9 on: February 15, 2009, 01:56:38 PM »
yeah, i love that feature.
Hero
AKA: HeroAssasin and Mike
- - - - -  - - -
Visit Clan R77
- - - - -  - - -
Please do not PM me with random questions. That is what I made these forums for.

Noob ~Vector

Power

  • Newbie
  • *
  • Posts: 40
    • View Profile
Warcraft 3 host bot
« Reply #10 on: February 16, 2009, 04:42:11 PM »
Quote
The bot is hosted on my server, having a 100 mbit connection.

Your 3dg one?
Look at that, I had to mess up your signature just to answer you...

Yes, it was a joke ~Vector

Hale_

  • Global Moderators
  • Full Member
  • ***
  • Posts: 205
    • View Profile
    • http://
Warcraft 3 host bot
« Reply #11 on: February 17, 2009, 10:13:05 AM »
This will work well for another clan that I am in. Seeing as they have a host bot too. How many games max can you host on it?
You noobs don't got the skillz tha killz.
Quote
[07:00:10 PM] <Hale_> Does no one talk in here?
[07:00:23 PM] <qazwsxedc> we talk in emotes
[07:00:25 PM] <qazwsxedc> use /me.
[07:00:29 PM] <Hale_ >
[07:00:29 PM] Hale_ was banned by TDAHelper (Emotes are not allowed).
[07:00:29 PM] TDAHelper kicked you out of the channel!

riffruff

  • Sr. Members
  • Jr. Member
  • **
  • Posts: 94
    • View Profile
Warcraft 3 host bot
« Reply #12 on: February 17, 2009, 11:58:12 AM »
Quote from: Power
Quote
The bot is hosted on my server, having a 100 mbit connection.

Your 3dg one?
No -- This is on Linux, not Windows.

Quote from: Hale_
This will work well for another clan that I am in. Seeing as they have a host bot too. How many games max can you host on it?
I have it set to 5 currently, although I can easily increase it.

Hale_

  • Global Moderators
  • Full Member
  • ***
  • Posts: 205
    • View Profile
    • http://
Warcraft 3 host bot
« Reply #13 on: February 18, 2009, 02:46:29 PM »
I figured you could. Was just wondering the max. Ty
You noobs don't got the skillz tha killz.
Quote
[07:00:10 PM] <Hale_> Does no one talk in here?
[07:00:23 PM] <qazwsxedc> we talk in emotes
[07:00:25 PM] <qazwsxedc> use /me.
[07:00:29 PM] <Hale_ >
[07:00:29 PM] Hale_ was banned by TDAHelper (Emotes are not allowed).
[07:00:29 PM] TDAHelper kicked you out of the channel!

Austin

  • Newbie
  • *
  • Posts: 29
    • View Profile
Warcraft 3 host bot
« Reply #14 on: February 24, 2009, 07:49:43 AM »
Depends what ur internet connection upload speed is. >.<
[img]http://i65.photobucket.com/albums/h217/Austin_Austin4/DERMA1Sig.jpg\" border=\"0\" class=\"linked-image\" /]
Quote
Longest word with no repeated letter:
dermatoglyphics
SUPP??
-Sig is large 0.o -Ace