Code Monkey home page Code Monkey logo

ghostplusplus's People

Contributors

ankurdedania avatar emmeran avatar josko avatar perennate avatar zephyrix avatar

Watchers

 avatar

ghostplusplus's Issues

View Players in a specific game

!gameplayers <game number>
!gameinfo <gamenumber> <playername>

IE
<Admin>: !getgames
<Bot>: There is no game in the lobby and there are 2/10 other games in progress.
<Admin>: !gameplayers 2
<Bot>: Current active players: Team 1: UberNoob, D3str0yer, LuLzIwin | Team 2: 
R4mp4ge, 
HueyDuffin, U-looz
<Bot>: Inactive players: Team 1: RawrThaDoggeh | Team 2: LolarSk4tez
<Admin>: !gameinfo 2 RawrThaDoggeh
<Bot>: Player Status: 15 Kills | 6 Deaths , Left the game voluntarily at 
20:37m, banned by admin 
<UberNoob>because <leaver>
<Admin>: !gameinfo 2 LolarSk4tez
<Bot>: Player Status: 5 Kills | 11 Deaths , Left the game voluntarily at 29:56m

Inactive players would be people that left the game.



Original issue reported on code.google.com by [email protected] on 4 Nov 2008 at 3:33

Cannot compile on Leopard

What steps will reproduce the problem?
1. gmake on bncutil
2.
3.

What is the expected output? What do you see instead?
It should compile, instead it gives me an error when linking:
Undefined symbols:
  "_main", referenced from:
      start in crt1.10.5.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
gmake: *** [libbncsutil.so] Error 1


What version of the product are you using? On what operating system?
11.01, on Leopard on PowerPC 64

Please provide any additional information below.
I installed with port gmp, gmake and latest XCode, modified the LDFLAGS and
putted the right path to gmp library, but it gives me this error. 

Original issue reported on code.google.com by [email protected] on 10 Dec 2008 at 4:57

Command Spam

Someone thought it was smart and set up a flood bot that would spam the
hostbots !statsdota, Well when you have flood bots spamming 100 commands,
the ghost bots ends up disconnecting for flooding. It would be great if you
could disable commands by config or some kind of flood protection maybe.

Note: I did a recompile on the bot to disable these commands.


Original issue reported on code.google.com by [email protected] on 23 Jul 2009 at 12:17

Kick spoofed nicks support!

Need support for kick of the spoofed nicks in game lobby of pub games..
In ghost.cfg config file..., require some variable, like 
bot_spoofkicks = 1\0 ...
This is very important feature for me... 
Thanks

Original issue reported on code.google.com by [email protected] on 29 Jul 2009 at 2:54

Rehash

Maybe make a /rehash function that's reload ghost.cfg ?

Original issue reported on code.google.com by [email protected] on 9 Jul 2009 at 7:33

Create a repository

I think you would really spread your bot, 
if you could easy install it from a repository.
(Or make a rmp / deb file.)

bye, fuubah

Original issue reported on code.google.com by [email protected] on 4 Aug 2009 at 10:36

Enhanced player statistics

Id really love to have opportunity to add some sort of points to certain
players (or mark), because you can ban a player, but he changes his
nickname and you again have to play with the same noob.
Id love to be able to "mark" good players, so when I type some sort of
command a message will popup (like PING or FROM commands) with names and
"marks" assigned to players... it would be good to be able to mark good
players so you could choose whether you want to play with that player or not...

anyway, the program is great! Keep working on it

Original issue reported on code.google.com by [email protected] on 25 Dec 2008 at 9:41

Can't compile on Linux

On versions after r148, the following error appears:

bnet.cpp: In member function 'void
CBNET::ProcessChatEvent(CIncomingChatEvent*)':
bnet.cpp:1529: error: 'class
boost::filesystem::basic_directory_entry<boost::filesystem::basic_path<std::basi
c_string<char,
std::char_traits<char>, std::allocator<char> >,
boost::filesystem::path_traits> >' has no member named 'filename'
bnet.cpp:1547: error: 'class
boost::filesystem::basic_directory_entry<boost::filesystem::basic_path<std::basi
c_string<char,
std::char_traits<char>, std::allocator<char> >,
boost::filesystem::path_traits> >' has no member named 'filename'
bnet.cpp:1549: error: 'class
boost::filesystem::basic_directory_entry<boost::filesystem::basic_path<std::basi
c_string<char,
std::char_traits<char>, std::allocator<char> >,
boost::filesystem::path_traits> >' has no member named 'filename'
bnet.cpp:1557: error: 'struct boost::filesystem::path' has no member named
'filename'
bnet.cpp:1750: error: 'class
boost::filesystem::basic_directory_entry<boost::filesystem::basic_path<std::basi
c_string<char,
std::char_traits<char>, std::allocator<char> >,
boost::filesystem::path_traits> >' has no member named 'filename'
bnet.cpp:1768: error: 'class
boost::filesystem::basic_directory_entry<boost::filesystem::basic_path<std::basi
c_string<char,
std::char_traits<char>, std::allocator<char> >,
boost::filesystem::path_traits> >' has no member named 'filename'
bnet.cpp:1770: error: 'class
boost::filesystem::basic_directory_entry<boost::filesystem::basic_path<std::basi
c_string<char,
std::char_traits<char>, std::allocator<char> >,
boost::filesystem::path_traits> >' has no member named 'filename'
bnet.cpp:1778: error: 'struct boost::filesystem::path' has no member named
'filename'

Original issue reported on code.google.com by [email protected] on 3 Jun 2009 at 7:55

RoC

Why we cant create Reign of chaos?
Plz i wanna know how to create games for roc.
IT ISNT A WASTE OF TIME, THX.

Original issue reported on code.google.com by [email protected] on 26 Jul 2009 at 10:02

CDN Support

Can a CDN support be added. Content Distribution system.
Instead of downloading the map from the server, it would download it from a
url something like http://cdnserver/map/%name%

figure this would save bandwidth on some servers, or help reduce the impact
on games that are currently up

Original issue reported on code.google.com by [email protected] on 5 Sep 2009 at 3:20

not broadcasting lan games correctly

GHost Version: 15.
System: Debian x64

Hey, I'm trying to get ghost++ working on my dedicated debian box.
My idea was to manage the games using the admin game provided by ghost and
I thought I should be able to access it using a vpn (openvpn).
Im using a tap device which should transfer _any_ packages. (Playing with
another peer using that vpn works)

The problem is that ghost doesn't broadcast the game correclty. If I leave
udp_broadcasttarget blank, wireshark doesn't see antyhing at the remote
machine, if I change it to 10.0.0.255 (which represents one of the 3
ipranges I'm using with vpn) all I get is an arp request (screen attached)
Needless to say that warcraft 3 doesn't see the game.
If I change the ip to my specific ip, in this case 10.0.0.6, it works, but
just for me and no one else in the vpn.

I tried to fix it by myself, but the patches supplied in the forum are, as
far a I know, already included in the v 15 release (with small changes).

I basically think that this is a kinda simple problem, but im not enough
into c++ to find the error myself.



Original issue reported on code.google.com by [email protected] on 18 Sep 2009 at 10:12

Attachments:

W3MMD Standard

The W3MMD standard leaves much to be desired as it only seems to have one 
field of "score" with which to store data.  Perhaps it can store 10 
propritary numbers with different info for each custom map.  I will use 
Battle tanks in my example of what I'd like to see tracked.    

kills   (int)
deaths  (int)  
won/loss (bool)
average weapon range (int between 500 and 1300)
tank chosen  (maybe a string of numbers)   ex.  (03121719)  means (light 
tank, heavy tank, sky forttress, titan)

I would like to see ghost gain a !statsall command so you could see that 
skill level and leaver percentage of all players.  It would also use this 
data in automatic matchmaking in this fashion.  1st - kick any player with 
less that 50% stay ratio (perhaps this would be configerable in 
ghost.cfg).  2nd Put top two players, based on kill ratio*wins, in slots 
1,6.  3rd - take rank 3,4 players and put them in slots 2,7.  Continue 
this patter until you have players with no stats and leave them alone.  I 
will post this on Ghost++'s site.  

Here are some examples as to why my skill formula might work out.  

Joe is a feeder.  He's played 25 games and his kill ratio for all of them 
is 10/100.  However his teams were always good and he managed to win 20 of 
the 25 games.  

JoeAFeeder
Kills 10
Deaths 100
Wins  20
Losses 5

Joe's Skill would be .1 * 20 = 2.

IRElite is a great player.  He's played 25 games as well and his kill 
ratio is 200/50.  IR likes to play public games on the light forces and 
his team always seems to have lots of feeders giving his 5 wins and 20 
losses.  But that doesn't change the fact that he is a great player.  

IRElite's Skill would be 4 * 5 = 20.

IExplode is an average player who likes to exploade and tends to break 
even on kill radio 100/100.  Sometimes his opponents know how to use tp 
breakers and sometimes they don't so his team only wins 50% of the time.  

IExplode's Skill would be 1 * 13 = 13.  

Original issue reported on code.google.com by [email protected] on 9 Aug 2009 at 10:14

Computer Slot bug

use !comp <slot with player> <number more than 2>
player will be kicked and slot will be with "Unknown" nickname
after it next player replace "Unknown" and slots aren't updating till 
"Unknown" will be kicked

Original issue reported on code.google.com by [email protected] on 12 Sep 2009 at 6:37

Make spoofchecks only check potential admins

I use my bot together with several friends some of whom have non-english wc3 
installs, so they 
are 
not auto-spoofchecked upon joining by the bot because it doesn't interpret 
localized versions of 
the "your friend [...] has joined a game [...]". While that is also something 
that should be fixed, 
this 
ticket is about a change in handling the bot_spoofchecks config value.
I'd like to add an option to bot_spoofchecks, which would result in 3 options:

bot_spoofchecks = 0     unchanged, no automatic spoofchecking
bot_spoofchecks = 1     unchanged, automatic spoofchecking for all players
bot_spoofchecks = 2     new option, only auto-spoofcheck potential admins

I'd like to add this so my admins can issue commands without having to manually 
spoofcheck but 
not spoofcheck everyone because that adds up to the bnet-queue and slows other 
commands to 
bnet (and I don't really care about people spoofing their names).

Original issue reported on code.google.com by [email protected] on 3 Sep 2009 at 8:01

Suggestion: Adding bans in game lobby

Sometimes I would like to ban people in the lobby for certain reasons such
as already being banned on XML lists or being assholes, etc. It would be
nice if you can simply do !addban NAME and simply add it instead of saying
MATCH NOT FOUND.

Thanks!

Original issue reported on code.google.com by [email protected] on 1 Nov 2008 at 10:44

bnls multi server support with failover

I'd like for GHost++ to support failover bnls reconnections to other bnls
servers based on a distributed and maintained list that came with the software.

This list would have all the active bnls server definitions and could
easily be maintained.

When a bnls server goes down, the bot will lose its connection repeatedly
to battle.net should warden be active and could cause temporary bans. If
GHost++ could detect a down bnls server, it could move on to the next one
and connect to it halting the repeated connection attempts.

I think the only ghost.cfg variable that should be left and needed is maybe
the cookie number for each bnet_connection subset.

Thanks for this great bot and any discussion over this issue would be
appreciated.

Original issue reported on code.google.com by [email protected] on 7 Sep 2009 at 3:30

Cfg value to make ban reasons compulsory

There are quite a few admins who make bans based on insufficient reasons,
so it would be helpful if there was an option to make the ban reason
compulsory, so that it may be easier to review bans.

Original issue reported on code.google.com by [email protected] on 5 Nov 2008 at 5:14

MYSQL field name causing problems

Field "left" in Gameplayers causese problems since it's a reserved word.  
You can't do this for instance.  "select left from gamplayers"  because it 
thinks left is a command rather than a field.  I recommend chaning the 
name of this field for future releases.  

Original issue reported on code.google.com by [email protected] on 11 Aug 2009 at 6:53

Replay stitcher bug

replay before load and replay after load have different random seeds
so after stitching complete replay differs from the game
before load:
seed:23827500
after load:
seed:24236015
complete replay:
seed:23827500

well maybe problem isn't in random seed, but bug occurs

replays:
http://www.sendspace.com/file/5buwzh

savegame if needed:
http://www.sendspace.com/file/rvbrv9

Original issue reported on code.google.com by [email protected] on 14 Sep 2009 at 5:09

Tiered admin access

5- Root Admin ( More than 1 Allowed)
4- Elite Admin
3- Base Admin
2- Experience User
1- Basic User (access to !getgames and !getgame <#>)

Each level having specific commands available to them, as well as, being able 
to configure at which 
level those commands are available.
Also being able to enable/disable commands on a user basis. For example, an 
Elite admin #1 that 
has access to all commands except !unban while Elite admin #2 has access to 
!ban , but not !unban.



Original issue reported on code.google.com by [email protected] on 3 Nov 2008 at 11:45

Log file

make it deleteable by ghost itselves or make in cfg max size for it

Original issue reported on code.google.com by [email protected] on 21 Jun 2009 at 11:51

Synchronize

I noticed that if you have 2 ghost sharing the same myself db, it doesn't
synchronize the admins across two ghost bots. Only way to have it so its
synchronized is if both bots are started. Other stuff likes stats works
fine. Thumbs up on that :).

It's not need to have something to check for changes, but a command maybe
like !refreshdb, or !syncadmin, or !reloadadmins would be nice.


Original issue reported on code.google.com by [email protected] on 18 Jul 2009 at 4:21

Manual enabling of saving replays in game lobby & a Warn System

The saving replays feature is definitely a great addition, but i find that
i don't want all games hosted on the bot to automatically have the replays
saved for them.Is it possible to add a manual command to enable the saving
of a replay for a specific game. IE: !savereplay <File Name>

Also a command to enable or disable autosaving via battle.net chat and
whispers. IE: !autoreplay [on|off]
This would be helpful for when I don't have access to the bot config files
and need games being hosted to be able to save their replays according to
their importance.

I find that when pubbing i get alot of leavers. I like to give people a
second chance but have no way of actively tracking if a person is a repeat
offender of leaving if they do it continuously, at least not an efficient one.
A nice addition would be a warn system. A configurable enable/disable
entry, as well as, a threshold in the ghost.cfg file.

IE:
bot_warnsystem = [0/1] ;Incase people dont want to use a warn system and
like the regular banning system, disabled by default
bot_warncount = #

The number would represent the total number of warns a player can recieve
before being banned altogether. Where if In-game or in the channel you can do
!warn <playername> <reason>
When the total number of warns reaches the Warn Count threshold it
automatically adds the user to the banlist for excessive warns.
When warning it should output just like a ban and if possible whisper the
person saying "You have been given 1 warning for [leaving]. You have 1
total warning"<--Not completely necessary but definitely a bonus, but only
applies when doing the !warnlast command. The "for [leaving]" would only be
applied to the message if there was a reason given when the command was issued.
Also when using !unban it should erase all the associated warns with that
player.

A few other commands that would help:

!checkwarns <playername> Displays the amount of warns a specific player has.
!warninfo <playername> <#> Would display information about a warn the
player has, If a warn has no reason specified it would output, "No reason
given"
!delwarn <playername> <#> Would erase all warns for that player or a
specific warn. Number is optional
!unwarn <playername> <#> Alias to !delwarn
!warnlast <reason> Would warn the last player that left the game for the
specified reason.Useable only in-game. Entry is optional.

And add !checkwarns to the output of the !check command so that it displays
"Has # warns."

Thanks

Original issue reported on code.google.com by [email protected] on 11 Nov 2008 at 3:04

Custom Motd, GameLoad, GameStart

in the map.cfg define custom motd, gameload, game start

motd = blah blah \n line 2 \n line 3
gameload = Welcome \n another line
gameended... etc

Original issue reported on code.google.com by [email protected] on 23 Sep 2009 at 4:57

Ghost Config Distribution

In distribution of new ghost versions, please rename ghost.cfg to
ghost.cfg.dist

Reason:
I figure when people overwrite old files, the config doesn't get
overwritten. Also when ghost launches and only sees ghost.cfg.dist, it
would automatically rename it, or make a copy of it as ghost.cfg for people
with a new installation.


Original issue reported on code.google.com by [email protected] on 5 Sep 2009 at 3:18

CreateThread() for general use.

I am currently using PlaySound() to inform events such as game is hosted/
full/started/over. Only problem is spikes to other running game(s). Replay 
section already has "todotodo: put this in a thread". Is this going to be 
implemented in near future? Could I just copy boost method used in 
CGHostDBMySQL?


Original issue reported on code.google.com by [email protected] on 17 Aug 2009 at 10:24

Bot ID value to Config value

I suggest that you add the botid value to ghost.cfg file, that way when you 
have multiple bots to add data into mysql database, you can easily distinct 
what data was added by which bot.

Original issue reported on code.google.com by [email protected] on 4 Aug 2009 at 6:07

Re-connect o MySQL database

Sometimes ghost loses connection with DB. Is it possible to create 
function of reconnection to db if it happenes?


Original issue reported on code.google.com by [email protected] on 5 Jul 2009 at 11:13

Kick by slot in game lobby

I can use !kick command by nick only... or some words by match
Need add feature to kick by slot... for ex. !kick #1 or !kick #6 etc...
For example, how it works with !close !open commands...

Original issue reported on code.google.com by [email protected] on 29 Jul 2009 at 2:44

linux compiling issues

What steps will reproduce the problem?
1. Attempt to compile on linux (using ubuntu 9.04)

What version of the product are you using? On what operating system?
13.0, Ubuntu 9.04

Please provide any additional information below.

First of all, warden would not compile without adding:
#include <string.h>
to the warden.cpp file. It gets memcpy and memset errors.

There are also more libraries not mentioned in the wiki compiling
instructions it can't find to install bncsutil and StormLib. I had to
install libboost-dev and libmysqlclient-dev. I'm not sure if it's meant to
use the ones included in the zip and the Makefile has problems or if the
extra packages were just missed in the wiki. I'm not very good with makefiles.

It would be nice if the linux executable was included in the zip. I'm not
sure how many users want to deal with installing a bunch of extra packages
and then linking the .so files from bncsutil and stormlib to execute the
program.

Original issue reported on code.google.com by [email protected] on 16 May 2009 at 11:35

Linux File generation mapcfgs\common.j != mapcfgs\\common.j

Ghost++ Revision 224
Running Ubuntu 9.04

[GHOST] loading MPQ file [/home/sdownie/ghost/War3Patch.mpq]
[GHOST] extracting Scripts\common.j from MPQ file to [mapcfgs\common.j]
[GHOST] extracting Scripts\blizzard.j from MPQ file to [mapcfgs\blizzard.j]
[CONFIG] loading file [mapcfgs\dota.cfg]
[MAP] loading MPQ file [maps\dota.w3x]

It is actually creating the files in the root ghost folder
- mapcfgs\\common.j
- mapcfgs\\blizzard.j

It is looking for the map and map config file
- mapcfgs\\dota.cfg
- maps\\dota.w3x

I just moved the map cfg and the map to this location.  When I get a chance
I will look further into the issue

Original issue reported on code.google.com by [email protected] on 7 Aug 2009 at 1:09

Yeah, another blizzard patch...

Updating my version from 24 to 25 in ghost.cfg got me connected to uswest 
for a little bit, but it's broken again.  Flipping Blizzard.  

Original issue reported on code.google.com by [email protected] on 26 Aug 2009 at 5:14

High Ping after updating to SVN version

What steps will reproduce the problem?
Try to host game.. Even alone I have 500 ping

What is the expected output? What do you see instead?
!ping me 500 others 400~-800 ping.. 

What version of the product are you using? On what operating system?

102 revision svn pvpng

Please provide any additional information below.

GhostOne and Ghost 12 Seems to work O.K.
+I did costumizations.. added some simple commands hided mysql 
passwords....
I use very slow hosting mysql .. but i hardly believe that this is the 
issue...
What should I edit ? :D

Original issue reported on code.google.com by [email protected] on 17 Apr 2009 at 6:30

AutoSave

AutoSave doesnt seem to create a saved game in the savegames folder on
linux on version 15.0

Original issue reported on code.google.com by [email protected] on 21 Sep 2009 at 8:30

Doesn't have map the map and there is no local copy of the map to send

What steps will reproduce the problem?
1. Download version 14.1 on a Vista 32bit system
2. Set admin game to 1 and set an admin password
3. Run Ghost
4. Attempt to join the admin game on the local lan
5. Error in subject occurs and doesn't let you in.  

What is the expected output? What do you see instead?
Used to be working great in version 13.3.  I tried the tanks config that 
was working and also the wormwar file.  Then I commented out all the map 
data in the config file that ghost can auto caculate.  It's really strange 
because it finds the cfg file, then find the w3x file and successfully 
caculates all the map parameters, then tells me I have the wrong version 
and that it doesn't have a local copy to send me.

What version of the product are you using? On what operating system?
14.1 on a Vista32

Picture of command line output attached.

Original issue reported on code.google.com by [email protected] on 5 Aug 2009 at 2:37

Attachments:

Whispering through lan.

Kind of how LC handles it you type /w playername and the bot relays it for 
you, which right now the bot cant do to my knowledge.

Original issue reported on code.google.com by [email protected] on 22 Nov 2008 at 7:09

Able to !ping and !from whilst in-game and other misc functions

Allowing the admin to !ping and !from all players and being able to !ping 
<playername> and !from 
<playername> specific players.

The auto-lock and !lock/!unlock work great but commands outside the game, for 
example in the 
channel and through b.net, can still affect the game. Mainly the !end command. 
Is it possible to 
make it so that if someone sends the !end command it will ask all players 
in-game if they would 
like to end the game and if the majority say !yes then it ends the game and if 
!no then to reject the 
command for 10 minutes and restrict the player issuing the command from issuing 
the same 
command to that game again. 

Also allowing multiple game owners so that more than one admin can send 
commands within a 
game while restricting other admins from sending commands within that game. 
And/Or locking 
games to specific admins.IE: !lock <admin name> and !unlock <admin name>

Original issue reported on code.google.com by [email protected] on 4 Nov 2008 at 3:30

Enhancement

One problem that I have with my bot is that people are always asking me 
what my bot can host. I don't know much about programing, but would there 
be a way to have a command such as -getmaps that would display the name of 
all the .cfg files in the mapcfg folder? Or if that would be longer than 
255 characters add commands such as -getmaps 1 and -getmaps 2 That would 
display a list of maps up to 255 characters.

Original issue reported on code.google.com by [email protected] on 3 May 2009 at 11:25

Announce colors and Bot personality.

I attempted to use color codes to the !announce command but was 
unsuccessful.  It's is possible to add this or am I doing it wrong.  

Also, I'd like to talk as the bot.  I think it'd be fun to have 
conversations with people as the bot.  Helps to pass the time while the 
game fills.  

Lastly, I want to program a personality into my bot.  One method would be 
to allow a !chat command that would accept phrases as a parameters.  For 
instance !chat Who's your daddy?  Bot->Icono.  Silly I know, but shouldn't 
be too hard to impliment.  


Original issue reported on code.google.com by [email protected] on 8 Aug 2009 at 12:43

PvPGN Private Games

Currently GHost++ determines whether to immediately send an ENTERCHAT after
creating a private game by the value of the custom hash type.

Please add a config entry to control that behaviour specifically.

Original issue reported on code.google.com by [email protected] on 30 Jan 2009 at 11:59

Recording replays

Possible add the ability a Ghost to recording replayes?
Consider that this very necessary function.

Original issue reported on code.google.com by [email protected] on 9 Nov 2008 at 2:44

Aborting countdown when a new player is trying to join the game

The situation: some players if they get kicked from the game become highly 
annoying 
by trying to join the game again and when admin wants to start the game bot 
aborting the countdown.

Could you please add the additional condition to do not cancel the countdown 
when a 
player is trying to join the game (i suppose that you need to fix 
CBaseGame::EventPlayerJoined method) and there are no currently available slots?

Thanks in advance!


Original issue reported on code.google.com by alex.dymov on 1 Dec 2008 at 6:35

join command

is it possible to make a join command, something like enter the channel 
and just type !join and bot will conect u to the game (private or pub, may 
be !join priv\pub)

Original issue reported on code.google.com by [email protected] on 17 Aug 2009 at 3:07

Don't use specific Boost version in Makefile

Makes things easier for everyone, since not everyone has that specific
version of Boost.
Patch:

Index: Makefile
===================================================================
--- Makefile    (revision 107)
+++ Makefile    (working copy)
@@ -4,7 +4,7 @@
 CC = gcc
 DFLAGS = -DGHOST_MYSQL
 OFLAGS = -O3
-LFLAGS = -L. -L../bncsutil/src/bncsutil/ -L../StormLib/stormlib/
-lbncsutil -lpthread -ldl -lz -lStorm -lrt -lmysqlclient_r
-lboost_date_time-gcc41-mt-1_38 -lboost_thread-gcc41-mt-1_38
+LFLAGS = -L. -L../bncsutil/src/bncsutil/ -L../StormLib/stormlib/
-lbncsutil -lpthread -ldl -lz -lStorm -lrt -lmysqlclient_r
-lboost_date_time-mt -lboost_thread-mt
 CFLAGS =

 ifeq ($(SYSTEM),Darwin)

Original issue reported on code.google.com by [email protected] on 20 Apr 2009 at 3:38

Add |r after nicks on !ping

When you use !ping and then try to view chat logs (F12) - text after 
colored nick will be colored. If nick color was black - you can't see 
text. Simply add |r after each nick to fix it.

Original issue reported on code.google.com by [email protected] on 7 Aug 2009 at 4:51

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.