b3, comment l'utiliser ?

Tout ce qui concerne la configuration et l'administration des serveurs.
Rendez-vous dans Outils de communication & communautaires pour la conception de sites Internet.
Avatar du membre
Kenairod
Messages : 39
Enregistré le : 07 sept. 2008, 19:33
Localisation : Montpellier

b3, comment l'utiliser ?

Message par Kenairod » 20 juin 2009, 17:40

Bonjour, je viens d'installer b3 mais j'ai quelques problemes, deja, lance-t-on b3 ou le serveur urt en premier. J'ai essaye dans les deux sens mais toujours rien ne se passe sur mon serveur, voici mon server.cfg :

Code : Tout sélectionner

//Example config. Note that everything behind // is ignored by the game
//Try to keep cvar-values as short as possible. Otherwise you might get "info string length exceeded" errors on your server

//*** Administrator Info, shows in some gamebrowsers ***
sets " Admin" "Kenairod" //Uses a space in front so it shows up at the top of the properties list

//*** Server Name and Daily Message ***
set sv_hostname "-=TT=- Les Tueurs de Tortues" //Your servername here
set g_motd "Bienvenue sur le serveur officiel de la team francaise -=TT=-" //Your message of the day here, it is displayed while connecting
set sv_joinmessage "^1Bons ^0frags ^1a ^0tous !" //Your joinmessage here, it is displayed when the game is joined

//*** General Game Settings ***
set sv_maxclients "8" //max clientslots available on the server, using more than 16 is not advised. It can cause lag and most maps are not built for it. Going over 24 can cause nasty bugs.
set g_maxGameClients "3" //max clients that can actually join the game. Other clients are forced to spectate. 0=all
set sv_privateClients "0" //Amount of private slots. This amount of slots will be reserved for players who enter the right privatepassword
set g_gametype "3" //0=FreeForAll, 3=TeamDeathMatch, 4=Team Survivor, 5=Follow the Leader, 6=Capture and Hold, 7=Capture The Flag, 8=Bombmode
sets sv_dlURL "ut.sdz.fr" //Sets the address for auto-downloading. Auto-download only works on ioUrbanTerror-clients, not quake3-clients. The client will try to download <sv_dlURL>/q3ut4/mapname.pk3. So if your server is running ut4_coolmap and sv_dlURL is set to 'yoursite.com/maps', make sure the maps is hosted at http://www.yoursite.com/maps/q3ut4/ut4_coolmap.pk3. Leaving this set 'urbanterror.net' will make it use a map mirror with the most common maps on it. If you got your own hosting, please us that though, to save bandwith.


//*** Passwords ***
set rconpassword "qwerty" //Password to control the server remotely using rcon.
set sv_privatePassword "qwerty" //password for private slots
set g_password "" //password for the server. Nothing = public

//*** Limits/times ***
set timelimit "20" //time in minutes before map is over, 0=never
set fraglimit "50" //amount of points to be scored before map is over, 0=never
set capturelimit "0" //amount of flagcaps before map is over, 0=never
set g_warmup "15" //time in seconds before game starts when changed to a new map. Gives slower computers time to load before game starts

//*** Respawning *** (FFA, TDM, CAH, CTF)
set g_respawnDelay "8" //seconds before respawn, ignored when g_waverespawns is 1
set g_forcerespawn "20" //seconds before respawn is forced, even when plater did not press fire
set g_waverespawns "0" //use waverespawns, meaning everybody in a team respawns at the same time
set g_bluewave "15" //seconds between blue waverespawns, ignored when g_waverespawns is 0
set g_redwave "15" //seconds between red waverespawns, ignored when g_waverespawns is 0
set g_respawnProtection "2" //amount of seconds a spawning players is protected from damage

//*** Rules ***
set g_deadchat "1" //Determines if alive players can see dead players message. 0=living players can not see dead players chat 1=living players see only team-messages from dead teammembers 2=living players also see normal chats from dead players
set g_antiwarp "1" //enable or disable antiwarp. This option smooths the movement of warping players (warping is caused by a crappy connection, for instance when torrenting during playing). The warping player will experience stutters when this is enabled
set g_antiwarptol "50" //tolerance of the antiwarp. Higher = more tolerant. 50=default
set g_gear "0" //bitmask that decides which votes are allowed and which not. Check http://www.urbanterror.net/gear_calc.html to find the correct number
set g_allowvote "536871039" //bitmask that decides which votes are allowed and which not. Check http://www.urbanterror.net/allowvote_calc.html to find the correct number
set g_failedvotetime "30" //time in seconds before someone can call another vote after another has failed
set g_followstrict "1" //1=no haunting of enemies when dead
set sv_floodprotect "1" //1=stops clients from spamming many chatlines

//*** Matchmode ***
set g_matchmode "0" //matchmode is for matchplay. Features timeouts and ready-commands
set g_timeouts "3" //ammount of timeouts that a team can do per map
set g_timeoutlength "240" //length of the timeout
set g_pauselength "0" //length of a pause. This can only be done by rcon. 0=indefinatly

//*** Team Game Settings ***
set g_friendlyFire "0" //0=no friendlyfire 1=friendlyfire on, kick after too many TK's 2=friendlyfire on, no kicks
set g_maxteamkills "3" //amount of TK's before you get kicked when friendlyfire is 1
set g_teamkillsforgettime "300" //amount of seconds before TK's are forgotten
set g_teamautojoin "0" //force players to autojoin on connect, instead of letting them spec untill they join themselves
set g_teamForceBalance "0" //if on, you can't join a team when it has more players then the other
set g_maintainTeam "1" //when switching maps, players will stay in their team
set g_teamnamered "Terroristes de la mort qui tue" //name for the red team, nothing = Red Dragons
set g_teamnameblue "Anti-Terroristes de la mort qui tue" //name for the red team, nothing = SWAT
set g_swaproles "1" //When map is over, play it again with the teams swapped (recommended for bombmode). After that, change map. 0=change map immediatly when map is over, no swapping of teams

//*** Team Survivor/Bombmode/Follow the Leader Specific Settings ***
set g_maxrounds "0" //number of rounds before map is over, 0=never
set g_RoundTime "3" //maximum minutes a round can take
set g_survivorrule "0" //0=teams don't get a point when time is up before everyone is dead. 1=team with most players left gets point
set g_suddendeath "1" //when map is over and both teams have same amount of points, add another round
set g_bombdefusetime "10" //seconds it takes to defuse bomb
set g_bombexplodetime "50" //seconds before bomb goes off after planting

//*** Capture the flag Specific Settings ***
set g_flagreturntime "30" //if a flag is dropped, return it after this amount of seconds
set g_hotpotato "10" //when both flags are taken, they will explode after this amount of minutes

//*** Advanced settings *** Dont change, unless you know what you are doing
set sv_strictauth "0" //1=check for valid cdkey, this means ioUrbanTerror players will not be able to join
set sv_pure "1" //dont let players load modified pk3-files
set sv_maxRate "0" //maximum traffic per second the server will send per client. 25000 or 0 = max
set sv_timeout "180" //time in seconds before player with a interupted connection will be kicked
set g_inactivity "100000000" //time in seconds before a non-moving player will be kicked

//*** Master Servers *** Servers the server will report to if 'dedicated' is set to 2. When set to 1, it doesn't report.
set sv_master1 "" //This one will be set automatically by the game-engine, so just leave it blank
set sv_master2 "master.urbanterror.net"
set sv_master3 "master2.urbanterror.net"
set sv_master4 "master.quake3arena.com"
set sv_master5 ""


//*** Other Settings ***
set g_armbands "1" //determines the behaviour of the armbandcolor (also shows on playerlist and minimap). 0=player's choice, set with cg_rgb 1=Based on teamcolor (red or blue) 2=assigned by server (random)
set sv_maxping "0" //max ping a client may have when connecting to the server
set sv_minping "0" //min ping a client may have when connecting to the server
set g_allowchat "2" //0= no chatting at all 1=teamchats only 2=all chats
set g_log "games.log" //name of the logfile. Empty ("") means no log. Log will be in the q3ut4 folder in windows. Linux uses ~/.q3a/q3ut4
set g_logsync "2" //enables/disables direct writing to the log file instead of buffered
set g_loghits "1" //log every single hit. Creates very big logs
set g_logroll "0" //create new log every now and then, instead of always using the same one
set logfile "1" //additional logging in seperate qconsole.log file. 1=buffered, 2=synced
set g_cahtime "60" //Interval in seconds of awarding points for flags in Capture and Hold gamemode

//*** Map Rotation ***
set g_mapcycle "mapcycle.txt" //name of mapcycle-file, located in q3ut4 directory
map ut4_casa //what map to start with

//*** Anti Cheat ***
//pb_sv_enable //to enable PB, remove the // at the beginning of this line (only works when using Quake 3 Arena, not ioUrbanTerror)
set sv_battleye "0" //Keep this disabled, BattlEye is dead

//*** Trucs ajoutes personnellement ***
set sv_allowDownload "1" //Permet aux joueur de charger les fichiers manquant sur le serveur avant la connexion
Et mon b3.xml :

Code : Tout sélectionner

<configuration>
	<settings name="b3">
		<set name="parser">iourt41</set>
		<set name="database">mysql://B3:qwerty@localhost/b3</set>
		<set name="bot_name">b3</set>
		<set name="bot_prefix">^0(^2b3^0)^7:</set>
		<set name="time_format">%I:%M%p %Z %m/%d/%y</set>
		<set name="time_zone">CST</set>
		<!-- 9 = verbose, 10 = debug, 21 = bot, 22 = console -->
		<set name="log_level">9</set>
		<set name="logfile">b3.log</set>
	</settings>
	<settings name="server">
		<set name="rcon_password">qwerty</set>
		<set name="port">27960</set>
		<set name="game_log">/home/dorian/.q3a/q3ut4/games.log</set>
		<set name="public_ip">lestueursdetortues.homeip.net</set>
		<set name="rcon_ip">192.168.1.14</set>
		<set name="punkbuster">off</set>
	</settings>
	<settings name="messages">
       		<set name="kicked_by">%s^7 a ete kicke par %s^7 %s</set>
       		<set name="kicked">%s^7 a ete kicke %s</set>
      		<set name="banned_by">%s^7 a ete banni par %s^7 %s</set>
       		<set name="banned">%s^7 a ete banni %s</set>
       		<set name="temp_banned_by">%s^7 a ete temporairement banni par %s^7 raison: %s^7 %s</set>
       		<set name="temp_banned">%s^7 a ete temporairement banni par %s^7 raison: %s^7 %s</set>
        	<set name="unbanned_by">%s^7 a ete debanni %s^7 %s</set>
       		<set name="unbanned">%s^7 a ete debanni %s</set>
   	</settings>
	<settings name="plugins">
		<set name="external_dir">@b3/extplugins</set>
	</settings>
	<plugins>
		<plugin name="censor" priority="1" config="@b3/conf/plugin_censor.xml"/>
		<plugin name="spamcontrol" priority="2" config="@b3/conf/plugin_spamcontrol.xml"/>
		<plugin name="admin" priority="3" config="@b3/conf/plugin_admin.xml"/>
		<plugin name="tk" priority="4" config="@b3/conf/plugin_tk.xml"/>
		<plugin name="stats" priority="5" config="@b3/conf/plugin_stats.xml"/>
		<plugin name="pingwatch" priority="6" config="@b3/conf/plugin_pingwatch.xml"/>
		<plugin name="adv" priority="7" config="@b3/conf/plugin_adv.xml"/>
		<plugin name="status" priority="8" config="@b3/conf/plugin_status.xml"/>
		<plugin name="welcome" priority="9" config="@b3/conf/plugin_welcome.xml"/>
		<plugin name="ctime" priority="10" config="@b3/extplugins/conf/plugin_ctime.xml"/>
		<plugin name="xlrstats" priority="11" config="@b3/extplugins/conf/xlrstats.xml"/>
		<plugin name="poweradminurt" priority="12" config="@b3/extplugins/conf/poweradminurt.xml"/>
		<plugin name="headshotsurt" priority="13" config="@b3/extplugins/conf/headshots.xml"/>
		<plugin name="topkiller" priority="14" config="@b3/extplugins/conf/plugin_topkiller.xml"/>

<!-- 
	This plugin will require an extra login password from your higher admins. You
	can use this if you are concerned about people accidentally gaining admin rights
	because of non-unique guids in Cod2.
	For Cod1 and Cod:UO this is less of a concern, because they can use the 
	Punkbuster IDs.
		<plugin name="login" priority="12" config="@b3/conf/plugin_login.xml"/>
-->		
		
<!-- 
	This is a non-standard plugin, and quite resource heavy. Please take a look in the 
	B3 forums (look for XLR Extensions) for more information before enabling this.
	Extra database tables are necessary.
		<plugin name="xlrstats" priority="13" config="@b3/extplugins/conf/xlrstats.xml"/>
-->
	</plugins>
</configuration>
J'ai une adresse IP non fixe c'est pour ca que je met un DNS DynDNS qui se met a jour automatiquement via la livebox.

Et lorsque je lance b3 la console me renvoie des fois :

Code : Tout sélectionner

Starting www.BigBrotherBot.com (b3) v1.1.4b [posix] (Astridaria)
Using config file /home/b3/conf/b3.xml
Redirect all output to b3.log
et d'autres fois ca, et dans ces cas la, je recommence j'usqu'a avoir le message du dessus.

Code : Tout sélectionner

Starting www.BigBrotherBot.com (b3) v1.1.4b [posix] (Astridaria)
Using config file /home/b3/conf/b3.xml
Redirect all output to b3.log
Unhandled exception in thread started by 
Error in sys.excepthook:

Original exception was:
En esperant que mon probleme ne soit pas trops complique, sincerement Kenairod.
Modifié en dernier par Kenairod le 19 nov. 2013, 21:08, modifié 2 fois.

Avatar du membre
Foxyfox
Responsable de branche
Responsable de branche
Messages : 1933
Enregistré le : 13 févr. 2008, 00:30
Localisation : Reims

Message par Foxyfox » 20 juin 2009, 18:08

Les logs? b3.log
Ce qui ne me tue pas me rend plus fort

Avatar du membre
Kenairod
Messages : 39
Enregistré le : 07 sept. 2008, 19:33
Localisation : Montpellier

Message par Kenairod » 20 juin 2009, 18:20

En voici 3 :

Le premier :

Code : Tout sélectionner

090620 17:36:05	BOT    	Starting Iourt41Parser server for 90.41.115.167:27960
090620 17:36:05	BOT    	--------------------------------------------
090620 17:36:05	BOT    	Attempting to connect to database mysql://B3:******@localhost/b3...
090620 17:36:05	ERROR	Database connection failed, working in remote mode: (1044, "Access denied for user 'B3'@'%' to database 'b3'") - [('/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/storage.py', 190, 'connect', 'self.db = self.getConnection()'), ('/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/storage.py', 149, 'getConnection', "return MySQLdb.connect(host=self.dsnDict['host'], user=self.dsnDict['user'], passwd=self.dsnDict['password'], db=self.dsnDict['path'][1:])"), ('/var/lib/python-support/python2.5/MySQLdb/__init__.py', 74, 'Connect', 'return Connection(*args, **kwargs)'), ('/var/lib/python-support/python2.5/MySQLdb/connections.py', 170, '__init__', 'super(Connection, self).__init__(*args, **kwargs2)')]
090620 17:36:05	BOT    	Game log /home/dorian/.q3a/q3ut4/games.log
090620 17:36:05	BOT    	Starting bot reading file /home/dorian/.q3a/q3ut4/games.log
090620 17:36:05	BOT    	Loading Plugin #1 censor [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_censor.xml]
090620 17:36:05	BOT    	CensorPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_censor.xml for CensorPlugin
090620 17:36:05	DEBUG	Register Event: Stop Process: CensorPlugin
090620 17:36:05	DEBUG	Register Event: Program Exit: CensorPlugin
090620 17:36:05	BOT    	Plugin censor (2.1.0 - ThorN) loaded
090620 17:36:05	BOT    	Loading Plugin #2 spamcontrol [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_spamcontrol.xml]
090620 17:36:05	BOT    	SpamcontrolPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_spamcontrol.xml for SpamcontrolPlugin
090620 17:36:05	DEBUG	Register Event: Stop Process: SpamcontrolPlugin
090620 17:36:05	DEBUG	Register Event: Program Exit: SpamcontrolPlugin
090620 17:36:05	BOT    	Plugin spamcontrol (1.1.2 - ThorN) loaded
090620 17:36:05	BOT    	Loading Plugin #3 admin [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_admin.xml]
090620 17:36:05	BOT    	AdminPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_admin.xml for AdminPlugin
090620 17:36:05	DEBUG	Register Event: Stop Process: AdminPlugin
090620 17:36:05	DEBUG	Register Event: Program Exit: AdminPlugin
090620 17:36:05	BOT    	Plugin admin (1.3.4b0 - ThorN) loaded
090620 17:36:05	BOT    	Loading Plugin #4 tk [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_tk.xml]
090620 17:36:05	BOT    	TkPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_tk.xml for TkPlugin
090620 17:36:05	DEBUG	TkPlugin: tk max level is 40
090620 17:36:05	DEBUG	Register Event: Stop Process: TkPlugin
090620 17:36:05	DEBUG	Register Event: Program Exit: TkPlugin
090620 17:36:05	BOT    	Plugin tk (1.1.6b0 - ThorN) loaded
090620 17:36:05	BOT    	Loading Plugin #5 stats [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_stats.xml]
090620 17:36:05	BOT    	StatsPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_stats.xml for StatsPlugin
090620 17:36:05	DEBUG	AdminPlugin: Command "mapstats (mstats)" registered with cmd_mapstats for level (1, 100)
090620 17:36:05	DEBUG	AdminPlugin: Command "testscore (ts)" registered with cmd_testscore for level (1, 100)
090620 17:36:05	DEBUG	AdminPlugin: Command "topstats (tstats)" registered with cmd_topstats for level (9, 100)
090620 17:36:05	DEBUG	Register Event: Stop Process: StatsPlugin
090620 17:36:05	DEBUG	Register Event: Program Exit: StatsPlugin
090620 17:36:05	BOT    	Plugin stats (1.2.3 - ThorN) loaded
090620 17:36:05	BOT    	Loading Plugin #6 pingwatch [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_pingwatch.xml]
090620 17:36:05	BOT    	PingwatchPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_pingwatch.xml for PingwatchPlugin
090620 17:36:05	VERBOSE	Added crontab <bound method PingwatchPlugin.check of <b3.plugins.pingwatch.PingwatchPlugin instance at 0xa1d878c>> (169708588) - [0, 30]s -1m -1h -1d -1M -1DOW
090620 17:36:05	DEBUG	Register Event: Stop Process: PingwatchPlugin
090620 17:36:05	DEBUG	Register Event: Program Exit: PingwatchPlugin
090620 17:36:05	BOT    	Plugin pingwatch (1.1.4 - ThorN) loaded
090620 17:36:05	BOT    	Loading Plugin #7 adv [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_adv.xml]
090620 17:36:05	BOT    	AdvPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_adv.xml for AdvPlugin
090620 17:36:05	VERBOSE	Added crontab <bound method AdvPlugin.adv of <b3.plugins.adv.AdvPlugin instance at 0xa1e13cc>> (169745324) - 0s [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58]m -1h -1d -1M -1DOW
090620 17:36:05	DEBUG	Register Event: Stop Process: AdvPlugin
090620 17:36:05	DEBUG	Register Event: Program Exit: AdvPlugin
090620 17:36:05	BOT    	Plugin adv (1.1.3 - ThorN) loaded
090620 17:36:05	BOT    	Loading Plugin #8 status [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_status.xml]
090620 17:36:05	BOT    	StatusPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_status.xml for StatusPlugin
090620 17:36:05	VERBOSE	Added crontab <bound method StatusPlugin.update of <b3.plugins.status.StatusPlugin instance at 0xa1e6a8c>> (169995436) - [0]s -1m -1h -1d -1M -1DOW
090620 17:36:05	DEBUG	Register Event: Stop Process: StatusPlugin
090620 17:36:05	DEBUG	Register Event: Program Exit: StatusPlugin
090620 17:36:05	BOT    	Plugin status (1.2.6 - ThorN) loaded
090620 17:36:05	BOT    	Loading Plugin #9 welcome [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_welcome.xml]
090620 17:36:05	BOT    	WelcomePlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_welcome.xml for WelcomePlugin
090620 17:36:05	DEBUG	Register Event: Stop Process: WelcomePlugin
090620 17:36:05	DEBUG	Register Event: Program Exit: WelcomePlugin
090620 17:36:05	BOT    	Plugin welcome (1.0.6 - ThorN) loaded
090620 17:36:05	BOT    	Loading Plugin #10 ctime [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/extplugins/conf/plugin_ctime.xml]
090620 17:36:05	INFO	Could not find built in plugin ctime, trying external plugin directories.
No module named ctime
090620 17:36:05	CRITICAL	Error loading plugin: No module named ctime
Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/parser.py", line 330, in loadPlugins
    pluginModule = self.pluginImport(p)
  File "/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/parser.py", line 352, in pluginImport
    fp, pathname, description = imp.find_module(name, [self.config.getpath('plugins', 'external_dir')])
ImportError: No module named ctime
Le deuxieme :

Code : Tout sélectionner

090620 17:35:55	BOT    	Starting Iourt41Parser server for 90.41.115.167:27960
090620 17:35:55	BOT    	--------------------------------------------
090620 17:35:55	BOT    	Attempting to connect to database mysql://B3:******@localhost/b3...
090620 17:35:55	ERROR	Database connection failed, working in remote mode: (1044, "Access denied for user 'B3'@'%' to database 'b3'") - [('/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/storage.py', 190, 'connect', 'self.db = self.getConnection()'), ('/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/storage.py', 149, 'getConnection', "return MySQLdb.connect(host=self.dsnDict['host'], user=self.dsnDict['user'], passwd=self.dsnDict['password'], db=self.dsnDict['path'][1:])"), ('/var/lib/python-support/python2.5/MySQLdb/__init__.py', 74, 'Connect', 'return Connection(*args, **kwargs)'), ('/var/lib/python-support/python2.5/MySQLdb/connections.py', 170, '__init__', 'super(Connection, self).__init__(*args, **kwargs2)')]
090620 17:35:55	BOT    	Game log /home/dorian/.q3a/q3ut4/games.log
090620 17:35:55	BOT    	Starting bot reading file /home/dorian/.q3a/q3ut4/games.log
090620 17:35:55	BOT    	Loading Plugin #1 censor [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_censor.xml]
090620 17:35:55	BOT    	CensorPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_censor.xml for CensorPlugin
090620 17:35:55	DEBUG	Register Event: Stop Process: CensorPlugin
090620 17:35:55	DEBUG	Register Event: Program Exit: CensorPlugin
090620 17:35:55	BOT    	Plugin censor (2.1.0 - ThorN) loaded
090620 17:35:55	BOT    	Loading Plugin #2 spamcontrol [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_spamcontrol.xml]
090620 17:35:55	BOT    	SpamcontrolPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_spamcontrol.xml for SpamcontrolPlugin
090620 17:35:55	DEBUG	Register Event: Stop Process: SpamcontrolPlugin
090620 17:35:55	DEBUG	Register Event: Program Exit: SpamcontrolPlugin
090620 17:35:55	BOT    	Plugin spamcontrol (1.1.2 - ThorN) loaded
090620 17:35:55	BOT    	Loading Plugin #3 admin [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_admin.xml]
090620 17:35:55	BOT    	AdminPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_admin.xml for AdminPlugin
090620 17:35:55	DEBUG	Register Event: Stop Process: AdminPlugin
090620 17:35:55	DEBUG	Register Event: Program Exit: AdminPlugin
090620 17:35:55	BOT    	Plugin admin (1.3.4b0 - ThorN) loaded
090620 17:35:55	BOT    	Loading Plugin #4 tk [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_tk.xml]
090620 17:35:55	BOT    	TkPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_tk.xml for TkPlugin
090620 17:35:55	DEBUG	TkPlugin: tk max level is 40
090620 17:35:55	DEBUG	Register Event: Stop Process: TkPlugin
090620 17:35:55	DEBUG	Register Event: Program Exit: TkPlugin
090620 17:35:55	BOT    	Plugin tk (1.1.6b0 - ThorN) loaded
090620 17:35:55	BOT    	Loading Plugin #5 stats [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_stats.xml]
090620 17:35:55	BOT    	StatsPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_stats.xml for StatsPlugin
090620 17:35:55	DEBUG	AdminPlugin: Command "mapstats (mstats)" registered with cmd_mapstats for level (1, 100)
090620 17:35:55	DEBUG	AdminPlugin: Command "testscore (ts)" registered with cmd_testscore for level (1, 100)
090620 17:35:55	DEBUG	AdminPlugin: Command "topstats (tstats)" registered with cmd_topstats for level (9, 100)
090620 17:35:55	DEBUG	Register Event: Stop Process: StatsPlugin
090620 17:35:55	DEBUG	Register Event: Program Exit: StatsPlugin
090620 17:35:55	BOT    	Plugin stats (1.2.3 - ThorN) loaded
090620 17:35:55	BOT    	Loading Plugin #6 pingwatch [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_pingwatch.xml]
090620 17:35:55	BOT    	PingwatchPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_pingwatch.xml for PingwatchPlugin
090620 17:35:55	VERBOSE	Added crontab <bound method PingwatchPlugin.check of <b3.plugins.pingwatch.PingwatchPlugin instance at 0x890378c>> (143670316) - [0, 30]s -1m -1h -1d -1M -1DOW
090620 17:35:55	DEBUG	Register Event: Stop Process: PingwatchPlugin
090620 17:35:55	DEBUG	Register Event: Program Exit: PingwatchPlugin
090620 17:35:55	BOT    	Plugin pingwatch (1.1.4 - ThorN) loaded
090620 17:35:55	BOT    	Loading Plugin #7 adv [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_adv.xml]
090620 17:35:55	BOT    	AdvPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_adv.xml for AdvPlugin
090620 17:35:55	VERBOSE	Added crontab <bound method AdvPlugin.adv of <b3.plugins.adv.AdvPlugin instance at 0x890c3cc>> (143707052) - 0s [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58]m -1h -1d -1M -1DOW
090620 17:35:55	DEBUG	Register Event: Stop Process: AdvPlugin
090620 17:35:55	DEBUG	Register Event: Program Exit: AdvPlugin
090620 17:35:55	BOT    	Plugin adv (1.1.3 - ThorN) loaded
090620 17:35:55	BOT    	Loading Plugin #8 status [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_status.xml]
090620 17:35:55	BOT    	StatusPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_status.xml for StatusPlugin
090620 17:35:55	VERBOSE	Added crontab <bound method StatusPlugin.update of <b3.plugins.status.StatusPlugin instance at 0x8911a8c>> (143957164) - [0]s -1m -1h -1d -1M -1DOW
090620 17:35:55	DEBUG	Register Event: Stop Process: StatusPlugin
090620 17:35:55	DEBUG	Register Event: Program Exit: StatusPlugin
090620 17:35:55	BOT    	Plugin status (1.2.6 - ThorN) loaded
090620 17:35:55	BOT    	Loading Plugin #9 welcome [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_welcome.xml]
090620 17:35:55	BOT    	WelcomePlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_welcome.xml for WelcomePlugin
090620 17:35:55	DEBUG	Register Event: Stop Process: WelcomePlugin
090620 17:35:55	DEBUG	Register Event: Program Exit: WelcomePlugin
090620 17:35:55	BOT    	Plugin welcome (1.0.6 - ThorN) loaded
090620 17:35:55	BOT    	Loading Plugin #10 ctime [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/extplugins/conf/plugin_ctime.xml]
090620 17:35:55	INFO	Could not find built in plugin ctime, trying external plugin directories.
No module named ctime
090620 17:35:55	CRITICAL	Error loading plugin: No module named ctime
Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/parser.py", line 330, in loadPlugins
    pluginModule = self.pluginImport(p)
  File "/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/parser.py", line 352, in pluginImport
    fp, pathname, description = imp.find_module(name, [self.config.getpath('plugins', 'external_dir')])
ImportError: No module named ctime
Le troisieme :

Code : Tout sélectionner

090620 17:18:23	BOT    	Starting Iourt41Parser server for 90.41.115.167:27960
090620 17:18:23	BOT    	--------------------------------------------
090620 17:18:23	BOT    	Attempting to connect to database mysql://B3:******@localhost/b3...
090620 17:18:23	ERROR	Database connection failed, working in remote mode: (1044, "Access denied for user 'B3'@'%' to database 'b3'") - [('/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/storage.py', 190, 'connect', 'self.db = self.getConnection()'), ('/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/storage.py', 149, 'getConnection', "return MySQLdb.connect(host=self.dsnDict['host'], user=self.dsnDict['user'], passwd=self.dsnDict['password'], db=self.dsnDict['path'][1:])"), ('/var/lib/python-support/python2.5/MySQLdb/__init__.py', 74, 'Connect', 'return Connection(*args, **kwargs)'), ('/var/lib/python-support/python2.5/MySQLdb/connections.py', 170, '__init__', 'super(Connection, self).__init__(*args, **kwargs2)')]
090620 17:18:23	BOT    	Game log /home/dorian/.q3a/q3ut4/games.log
090620 17:18:23	BOT    	Starting bot reading file /home/dorian/.q3a/q3ut4/games.log
090620 17:18:23	BOT    	Loading Plugin #1 censor [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_censor.xml]
090620 17:18:23	BOT    	CensorPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_censor.xml for CensorPlugin
090620 17:18:23	DEBUG	Register Event: Stop Process: CensorPlugin
090620 17:18:23	DEBUG	Register Event: Program Exit: CensorPlugin
090620 17:18:23	BOT    	Plugin censor (2.1.0 - ThorN) loaded
090620 17:18:23	BOT    	Loading Plugin #2 spamcontrol [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_spamcontrol.xml]
090620 17:18:23	BOT    	SpamcontrolPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_spamcontrol.xml for SpamcontrolPlugin
090620 17:18:23	DEBUG	Register Event: Stop Process: SpamcontrolPlugin
090620 17:18:23	DEBUG	Register Event: Program Exit: SpamcontrolPlugin
090620 17:18:23	BOT    	Plugin spamcontrol (1.1.2 - ThorN) loaded
090620 17:18:23	BOT    	Loading Plugin #3 admin [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_admin.xml]
090620 17:18:23	BOT    	AdminPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_admin.xml for AdminPlugin
090620 17:18:23	DEBUG	Register Event: Stop Process: AdminPlugin
090620 17:18:23	DEBUG	Register Event: Program Exit: AdminPlugin
090620 17:18:23	BOT    	Plugin admin (1.3.4b0 - ThorN) loaded
090620 17:18:23	BOT    	Loading Plugin #4 tk [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_tk.xml]
090620 17:18:23	BOT    	TkPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_tk.xml for TkPlugin
090620 17:18:23	DEBUG	TkPlugin: tk max level is 40
090620 17:18:23	DEBUG	Register Event: Stop Process: TkPlugin
090620 17:18:23	DEBUG	Register Event: Program Exit: TkPlugin
090620 17:18:23	BOT    	Plugin tk (1.1.6b0 - ThorN) loaded
090620 17:18:23	BOT    	Loading Plugin #5 stats [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_stats.xml]
090620 17:18:23	BOT    	StatsPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_stats.xml for StatsPlugin
090620 17:18:23	DEBUG	AdminPlugin: Command "mapstats (mstats)" registered with cmd_mapstats for level (1, 100)
090620 17:18:23	DEBUG	AdminPlugin: Command "testscore (ts)" registered with cmd_testscore for level (1, 100)
090620 17:18:23	DEBUG	AdminPlugin: Command "topstats (tstats)" registered with cmd_topstats for level (9, 100)
090620 17:18:23	DEBUG	Register Event: Stop Process: StatsPlugin
090620 17:18:23	DEBUG	Register Event: Program Exit: StatsPlugin
090620 17:18:23	BOT    	Plugin stats (1.2.3 - ThorN) loaded
090620 17:18:23	BOT    	Loading Plugin #6 pingwatch [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_pingwatch.xml]
090620 17:18:23	BOT    	PingwatchPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_pingwatch.xml for PingwatchPlugin
090620 17:18:23	VERBOSE	Added crontab <bound method PingwatchPlugin.check of <b3.plugins.pingwatch.PingwatchPlugin instance at 0x8afa78c>> (145730604) - [0, 30]s -1m -1h -1d -1M -1DOW
090620 17:18:23	DEBUG	Register Event: Stop Process: PingwatchPlugin
090620 17:18:23	DEBUG	Register Event: Program Exit: PingwatchPlugin
090620 17:18:23	BOT    	Plugin pingwatch (1.1.4 - ThorN) loaded
090620 17:18:23	BOT    	Loading Plugin #7 adv [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_adv.xml]
090620 17:18:23	BOT    	AdvPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_adv.xml for AdvPlugin
090620 17:18:23	VERBOSE	Added crontab <bound method AdvPlugin.adv of <b3.plugins.adv.AdvPlugin instance at 0x8b033cc>> (145767340) - 0s [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58]m -1h -1d -1M -1DOW
090620 17:18:23	DEBUG	Register Event: Stop Process: AdvPlugin
090620 17:18:23	DEBUG	Register Event: Program Exit: AdvPlugin
090620 17:18:23	BOT    	Plugin adv (1.1.3 - ThorN) loaded
090620 17:18:23	BOT    	Loading Plugin #8 status [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_status.xml]
090620 17:18:23	BOT    	StatusPlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_status.xml for StatusPlugin
090620 17:18:23	VERBOSE	Added crontab <bound method StatusPlugin.update of <b3.plugins.status.StatusPlugin instance at 0x8b08a8c>> (146017452) - [0]s -1m -1h -1d -1M -1DOW
090620 17:18:23	DEBUG	Register Event: Stop Process: StatusPlugin
090620 17:18:23	DEBUG	Register Event: Program Exit: StatusPlugin
090620 17:18:23	BOT    	Plugin status (1.2.6 - ThorN) loaded
090620 17:18:23	BOT    	Loading Plugin #9 welcome [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_welcome.xml]
090620 17:18:23	BOT    	WelcomePlugin: Loading config /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/conf/plugin_welcome.xml for WelcomePlugin
090620 17:18:23	DEBUG	Register Event: Stop Process: WelcomePlugin
090620 17:18:23	DEBUG	Register Event: Program Exit: WelcomePlugin
090620 17:18:23	BOT    	Plugin welcome (1.0.6 - ThorN) loaded
090620 17:18:23	BOT    	Loading Plugin #10 ctime [/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/extplugins/conf/plugin_ctime.xml]
090620 17:18:23	INFO	Could not find built in plugin ctime, trying external plugin directories.
No module named ctime
090620 17:18:23	CRITICAL	Error loading plugin: No module named ctime
Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/parser.py", line 330, in loadPlugins
    pluginModule = self.pluginImport(p)
  File "/usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/parser.py", line 352, in pluginImport
    fp, pathname, description = imp.find_module(name, [self.config.getpath('plugins', 'external_dir')])
ImportError: No module named ctime
Voila :D

Avatar du membre
Foxyfox
Responsable de branche
Responsable de branche
Messages : 1933
Enregistré le : 13 févr. 2008, 00:30
Localisation : Reims

Message par Foxyfox » 20 juin 2009, 18:30

Lis tes logs!
CRITICAL Error loading plugin: No module named ctime
Ce qui ne me tue pas me rend plus fort

Avatar du membre
Courgette
Messages : 850
Enregistré le : 22 déc. 2007, 02:05
Localisation : Rennes

Message par Courgette » 20 juin 2009, 18:33

dans le zip de xlrstats V2, tu trouveras le plugin ctime.
Aussi t'as un problème avec ta base de données mysql. As-tu créé l'utilisateur, la base et les tables comme indiqué dans la doc ?

Avatar du membre
Kenairod
Messages : 39
Enregistré le : 07 sept. 2008, 19:33
Localisation : Montpellier

Message par Kenairod » 20 juin 2009, 18:49

Foxyfox a écrit :Lis tes logs!
CRITICAL Error loading plugin: No module named ctime
Peut-etre n'empeche que ctime il y est :P
Courgette a écrit :As-tu créé l'utilisateur, la base et les tables comme indiqué dans la doc ?
J'ai cree un utilisateur nomme B3 avec les bases : B3 et information_schema
La base B3 contient les tables :
* Afficher aliases
* Afficher clients
* Afficher ctime
* Afficher groups
* Afficher penalties
* Afficher xlr_bodyparts
* Afficher xlr_mapstats
* Afficher xlr_opponents
* Afficher xlr_playerbody
* Afficher xlr_playermaps
* Afficher xlr_playerstats
* Afficher xlr_weaponstats
* Afficher xlr_weaponusage

et la base information_schema contient les tables :


* Afficher CHARACTER_SETS
* Afficher COLLATIONS
* Afficher COLLATION_CHARACTER_SET_APPLICABILITY
* Afficher COLUMNS
* Afficher COLUMN_PRIVILEGES
* Afficher KEY_COLUMN_USAGE
* Afficher PROFILING
* Afficher ROUTINES
* Afficher SCHEMATA
* Afficher SCHEMA_PRIVILEGES
* Afficher STATISTICS
* Afficher TABLES
* Afficher TABLE_CONSTRAINTS
* Afficher TABLE_PRIVILEGES
* Afficher TRIGGERS
* Afficher USER_PRIVILEGES
* Afficher VIEWS

Voila, merci :)
Modifié en dernier par Kenairod le 20 juin 2009, 18:49, modifié 1 fois.

Avatar du membre
Ssxz
Messages : 3310
Enregistré le : 21 août 2008, 18:36
Localisation : Bretagne

Message par Ssxz » 20 juin 2009, 18:50

osef de informations_shemas c'est une table de base de mysql, sinon ta base b3 est ok ;)
Modifié en dernier par Ssxz le 20 juin 2009, 19:07, modifié 1 fois.
- Follow me on Twitter!
- RB Maintenance & Technique

Avatar du membre
Kenairod
Messages : 39
Enregistré le : 07 sept. 2008, 19:33
Localisation : Montpellier

Message par Kenairod » 20 juin 2009, 18:53

:rolleyes: J'ettais pas sur :D
Desole, me tapez pas
=D

Barbatos
Développement & Maintenance UrT France
Messages : 5056
Enregistré le : 30 déc. 2008, 23:10

Message par Barbatos » 20 juin 2009, 21:08

T'as créé l'user BDD de b3 ? Et t'es sûr que l'user / pass de la bdd de l'user b3 correspondent bien à ce que tu renseignes dans les fichiers de config ?
<MajkiFajki> Carmack compared to you is a vegetable
Twitter

Avatar du membre
Courgette
Messages : 850
Enregistré le : 22 déc. 2007, 02:05
Localisation : Rennes

Message par Courgette » 21 juin 2009, 01:55

Code : Tout sélectionner

CRITICAL    Error loading plugin: No module named ctime
Ca veut dire ce que ça veut dire : le fichier ctime.py ,n'est pas dans le répertoire extplugins de B3.

pour

Code : Tout sélectionner

ERROR    Database connection failed, working in remote mode: (1044, "Access denied for user 'B3'@'%' to database 'b3'")
Apparemment tu as installé B3 sur une machine différente de celle où se trouve mysql. Dans ce cas assure toi que l'utilisateur B3 que tu as créé dans mysql a bien le droit de se connecter à partir d'une machine distante (contrairement à uniquement à partir de localhost)

Avatar du membre
Kenairod
Messages : 39
Enregistré le : 07 sept. 2008, 19:33
Localisation : Montpellier

Message par Kenairod » 21 juin 2009, 08:22

Barbatos a écrit :T'as créé l'user BDD de b3 ? Et t'es sûr que l'user / pass de la bdd de l'user b3 correspondent bien à ce que tu renseignes dans les fichiers de config ?
La seul erreur que j'ai pue commettre c'est de ne pas remplir tous les champs correspondants au mot de passe.
Courgette a écrit :Ca veut dire ce que ça veut dire : le fichier ctime.py ,n'est pas dans le répertoire extplugins de B3.
Pouratant il y etait, mais je viens de la remettre par precotion.
Courgette a écrit :Apparemment tu as installé B3 sur une machine différente de celle où se trouve mysql. Dans ce cas assure toi que l'utilisateur B3 que tu as créé dans mysql a bien le droit de se connecter à partir d'une machine distante (contrairement à uniquement à partir de localhost)
Non, mysql est installe sur le meme ordi d'ailleur j'arrive a acceder a xlrstats en local (si vous voulez savoirpourquoi que en local c'est ici)

EDIT : L'erreur de connexion a la BDD etait de ma faute car j'avais ecrit que le nom de la base etait b3 au lieu de B3 dans la realite. Par contre j'ai remis le fichier ctime.py dans /home/b3/extplugins mais cela ne marche toujours pas, voici son contenu :

Code : Tout sélectionner

__version__ = '1.0.5'
__author__  = 'Anubis'

import b3, threading
import b3.events
import b3.plugin
import time
from b3 import clients
import datetime
import b3.cron

class TimeStats:
    came = None
    left = None 
    client = None

#--------------------------------------------------------------------------------------------------
class CtimePlugin(b3.plugin.Plugin):
    _clients = {} 
    _cronTab = None
    _max_age_in_days = 31
    _hours = 5
    _minutes = 0

    def onStartup(self):
        self.registerEvent(b3.events.EVT_CLIENT_AUTH)
        self.registerEvent(b3.events.EVT_CLIENT_DISCONNECT)
        self.query = self.console.storage.query
        tzName = self.console.config.get('b3', 'time_zone').upper()
        tzOffest = b3.timezones.timezones[tzName]
        hoursGMT = (self._hours - tzOffest)%24
        self.debug("%02d:%02d %s => %02d:%02d UTC" % (self._hours, self._minutes, tzName, hoursGMT, self._minutes))
        self.info('everyday at %2d:%2d %s, connection info older than %s days will be deleted'%(self._hours, self._minutes, tzName, self._max_age_in_days))
        self._cronTab = b3.cron.PluginCronTab(self, self.purge, 0, self._minutes, hoursGMT, '*', '*', '*')
        self.console.cron + self._cronTab

    #def onLoadConfig(self):
        #self._welcomeFlags = self.config.getint('settings', 'flags')
        #self._newbConnections = self.config.getint('settings', 'newb_connections')

    def purge(self):
        if not self._max_age_in_days or self._max_age_in_days == 0:
            self.warning('max_age is invalid [%s]'%self._max_age_in_days)
            return False

        self.info('purge of connection info older than %s days ...'%self._max_age_in_days)
        q = "DELETE FROM ctime WHERE came < %i"%(self.console.time() - (self._max_age_in_days*24*60*60))
        self.debug("CTIME QUERY: " + q)
        cursor = self.console.storage.query(q)
    
    def onEvent(self, event):
        if event.type == b3.events.EVT_CLIENT_AUTH:
            if  not event.client or 
                not event.client.id or 
                event.client.cid == None or 
                not event.client.connected or 
                event.client.pbid == 'WORLD':
                return
            
            self.update_time_stats_connected(event.client)
            
        elif event.type == b3.events.EVT_CLIENT_DISCONNECT:
            self.update_time_stats_exit(event.data)

    def update_time_stats_connected(self, client):
        if (self._clients.has_key(client.cid)):
            self.debug("CTIME CONNECTED: Client exist! : " + str(client.cid));
            tmpts = self._clients[client.cid]
            if(tmpts.client.guid == client.guid):
                self.debug("CTIME RECONNECTED: Player " + client.exactName + " connected again, but playing since: " + str(tmpts.came))
                return
            else:
                del self._clients[client.cid]
        
        ts = TimeStats()
        ts.client = client
        ts.came = datetime.datetime.now()
        self._clients[client.cid] = ts
        self.debug("CTIME CONNECTED: Player " + client.exactName + " started playing at: " + str(ts.came))

    def formatTD(self, td):
        hours = td // 3600
        minutes = (td % 3600) // 60
        seconds = td % 60
        return '%s:%s:%s' % (hours, minutes, seconds) 
  
    def update_time_stats_exit(self, clientid):
        self.debug("CTIME LEFT:")
        if (self._clients.has_key(clientid)):
            ts = self._clients[clientid]
            # Sometimes PB in cod4 returns 31 character guids, we need to dump them. Lets look ahead and do this for the whole codseries.
            if(self.console.gameName[:3] == 'cod' and self.console.PunkBuster and len(ts.client.guid) != 32):
                pass
            else:
                ts.left = datetime.datetime.now()
                diff = (int(time.mktime(ts.left.timetuple())) - int(time.mktime(ts.came.timetuple())))
                
                self.debug("CTIME LEFT: Player:" + str(ts.client.exactName) + " played this time: " + str(diff) + " sec")
                self.debug("CTIME LEFT: Player:" + str(ts.client.exactName) + " played this time: " + self.formatTD(diff))
                #INSERT INTO `ctime` (`guid`, `came`, `left`) VALUES ("6fcc4f6d9d8eb8d8457fd72d38bb1ed2", 1198187868, 1226081506)
                q = 'INSERT INTO ctime (guid, came, gone, nick) VALUES ("%s", "%s", "%s", "%s")' % (ts.client.guid, int(time.mktime(ts.came.timetuple())), int(time.mktime(ts.left.timetuple())), ts.client.name)
                self.query(q)
                
            self._clients[clientid].left = None
            self._clients[clientid].came = None
            self._clients[clientid].client = None
                
            del self._clients[clientid]
           
        else:
            self.debug("CTIME LEFT: Player " + str(clientid) + " var not set!")
Modifié en dernier par Kenairod le 21 juin 2009, 08:56, modifié 1 fois.

Barbatos
Développement & Maintenance UrT France
Messages : 5056
Enregistré le : 30 déc. 2008, 23:10

Message par Barbatos » 21 juin 2009, 10:13

Ce n'est pas dans /home/b3/plugins/ qu'il faut le mettre ?
<MajkiFajki> Carmack compared to you is a vegetable
Twitter

Avatar du membre
Kenairod
Messages : 39
Enregistré le : 07 sept. 2008, 19:33
Localisation : Montpellier

Message par Kenairod » 21 juin 2009, 10:16

Barbatos a écrit :Ce n'est pas dans /home/b3/plugins/ qu'il faut le mettre ?
Erf, moi j'ai mis tous (ou presque) mes .py dans /home/b3/extplugins, il faut pas ?

Avatar du membre
Foxyfox
Responsable de branche
Responsable de branche
Messages : 1933
Enregistré le : 13 févr. 2008, 00:30
Localisation : Reims

Message par Foxyfox » 21 juin 2009, 10:20

Moi je dirai dans /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/extplugins ou /usr/lib/python2.5/site-packages/b3-1.1.4b-py2.5.egg/b3/plugins
Modifié en dernier par Foxyfox le 21 juin 2009, 10:23, modifié 1 fois.
Ce qui ne me tue pas me rend plus fort

Avatar du membre
Kenairod
Messages : 39
Enregistré le : 07 sept. 2008, 19:33
Localisation : Montpellier

Message par Kenairod » 21 juin 2009, 13:54

Toi tu les mets ou pour que ca marche ? :D

Répondre