--------------------- Polite Notice ---------------------
-- YaLB was created by Daniel Astbury (jnz)            --
-- The source is avaliable to anyone, however          --
-- please do not take it can claim it yours.           --
-- Please follow my example and release your own.      --
-----------------------Thank you-------------------------


/**************************************************************************************
*               YaLB - (Yal-B) Stands for Yet Another Lua Bot                         *
*                                                                                     *
* This is YaRR's successor, a bot written totally on the LuaPlugin.                   *
* This serves as the configuration file                                               *
* Configuration is easy, I've setup a sample below for you to follow                  *
* Thanks for downloading Yet Another Lua Bot, enjoy!                                  *
*                                                                                     *
**************************************************************************************/

//This is a comment

/*This is a comment*/

--This is a comment

YaLB
{
	IRC
	{
		Channels
		{
			/*	Using the channel name as a block, 
				Output is the type of channel
					Public means the bot will output restricted messages
					Private means the bot will output all messages
				Password is the channel's password.
			*/
			
			#YaRR
			{
				Output = Public
			}
			#YaRR-Admin
			{
				Output = Private
			}
			#YaLB
			{
				Output = Public
			} 	
		}
		
		
		Host = 
		Port = 6667					--Port
		Nick = YaLB					--Default nickname
		NickServ = 			--NickServ password
	}
	
	Defence_Chance = 50				--Percentage, chance that extra base defences will be enabled.
	Rules = No wall hopping
	Website = www.dcomproductions.com
}

Ranks
{
	Cost
	{
	
		/*********************************************************************************************\
		 *                                       Costs                                               *
		 * This section is for the points calculation.                                               *
		 * I have set the costs for all the standard presets                                         *
		 * This internal formulae will use these values to determine "skill"                         *
		 * This basically means that a low cost character is awarded more points                     *
		 * for killing a high cost character.                                                        *
		 * A high cost preset is awarded less points for killing a low cost preset.                  *
		 * You should make, for example a Nod Buggy lower cost than a Sydney (Personal Ion Cannon)   *
		 * By default it will use the purchase terminal cost.                                        *
		\*********************************************************************************************/
		
		
		CnC_Nod_Harvester = 500
		CnC_GDI_Harvester = 500
		mp_GDI_War_Factory = 3000
		mp_Hand_of_Nod = 3000
		mp_GDI_Barracks = 3000
		mp_GDI_Repair_Bay = 3000
		mp_Nod_Repair_Bay = 3000
		mp_GDI_Refinery = 3000
		mp_Nod_Refinery = 3000
		mp_Nod_Power_Plant = 3000
		mp_GDI_Power_Plant = 3000
		mp_Nod_Com_Center = 3000
		mp_GDI_Com_Center = 3000
		mp_Nod_Airstrip = 3000
		mp_GDI_Advanced_Guard_Tower = 3000
		mp_Nod_Obelisk = 3000
		
	}
	
	/* Damage_CoEfficient and Repair_CoEfficient
	 * This is multiplied by the damage a player does
	 * To calculate the points he is awarded.
	 * For example 1.0 does not change the value.
	 * However, 0.5 halves it and 1.1 adds 10%
	*/ 
	
	
	Damage_CoEfficient = 1.0
	Repair_CoEfficient = 0.5
}


AutoAnnounce
{
	Timeout = 120 /*120 seconds between messages*/
	
	01 = Welcome to my test server, running a bot written in Lua.
	02 = There are no rules, do or say as you wish.
	03 = Strange things randomly happen on this server.
}

Moderators
{
	jnz
	{
		IRCNick = jnz
		cloak = ~
		/*
		*	You can define these permissions yourself
		*	It would be wise to leave them alone unless you know what you're doing
		*	* = Public
		*	P = Permissions
		*	B = Bot
		*	S = Server
		*	N = Network
		*	I = IRC
		*	C = Configuration
		*	L = Lua
		*	M = Moderation
		*	K = Kick
		*/
	}
	Hex
	{
		IRCNick = Hex
		cloak = &
	}
	cnc95fan
	{
		IRCNick = [SG]cnc95fan
		cloak = %
	}

	Cloaks
	{
		/* This basically assigns the command groups to each cloak
		 * tmp = +
		 * half = %
		 * full = @
		 * admin = &
		 * founder = ~
		 * Use any combination you like
		 */

		tmp = K
		half = MNIK
		full = MNIKNB
		admin = PBSNICMK
		founder = PBSNICLMK
	}
}

Commands
{
	test
	{
		group = *
		trigger = !test
		help = Bot will simply reply
	}
	help
	{
		group = *
		trigger = !help;!commands
		help = Lists all commands avaliable to you
	}
	lua
	{
		group = L
		trigger = !lua
		help = Executes raw lua code
	}
	message
	{
		group = +
		trigger = !msg;message
		help = Sends a message from IRC
	}
	gameinfo
	{
		group = *
		trigger = !gi;!gameinfo
		help = Basic infomation about the game.
	}
	vehiclelist
	{	
		group = *
		trigger = !vl;!vehiclelist
		help = Lists all vehicles in game.
	}
	buildinglist
	{
		group = *
		trigger = !bl;!buildinglist
		help = Lists all buildings in game.
	}
	setjoin
	{
		group = *
		trigger = !setjoin
		help = Sets a join message for a player
	}
	seen
	{
		group = *
		trigger = !seen
		help = Displays when the player was last seen
	}
	fds
	{	
		group = S
		trigger = !fds
		help = Sends a command to the server
	}
	gameover
	{
		group = S
		trigger = !gameover
		help = Gameover immidiately, or use xsxm where x is a number.
	}
	forceteamchange
	{
		group = S
		trigger = !ftc
		help = Force a player to change team.
	}
	kill
	{	
		group = S
		trigger = !kill;!k
		help = Kills a player, does not force a gameover.
	}
	time
	{	
		group = *
		trigger = !time
		help = Gets the server's local time
	}
	auth
	{
		group = *
		trigger = !auth;!a
		help = Authorize your nick in-game. 
	}
	playerlist
	{
		group = *
		trigger = !pl
		help = Lists all players in-game.
	}
	addtempmoderator
	{
		group = P
		trigger = !atm
		help = Adds a temporary moderator with limited powers.
	}
	removetempmoderator
	{
		group = P
		trigger = !dtm;!rtm
		help = Demotes a temporary moderator.
	}
	sql 
	{
		group = S
		trigger = !sql
		help = Executes a raw sqlite command. This will display results in a table.
	}
	subnet
	{
		group = N
		trigger = !subnet
		help = Get a player's subnet range.
	}
	ban
	{
		group = M
		trigger = !ban;!b
		help = Ban a player from the game.
	}
	serialban
	{
		group = M
		trigger = !sban;!serialban;!sb
		help = Bans a serial
	}
	deleteban
	{	
		group = M
		trigger = !delban;!dban;!db
		help = Deletes a ban
	}
	baninfomation
	{
		group = M
		trigger = !baninfo;!bi
		help = Gets ban infomation
	}
	ipban
	{
		group = M
		trigger = !ipban
		help = Bans an IP
	}
	rangeban
	{	
		group = M
		trigger = !rban;!rangeban
		help = Bans an IP range
	}
	kick
	{
		group = M
		trigger = !qkick;!kick;!ka
		help = kick and auto-allow the player from the game.
	}
	mute
	{
		group = M
		trigger = !mute
		help = Stop the player using F2, F3 chat and radio commands.
	}
	version
	{
		group = *
		trigger = !version;!bot;!yalb
		help = Gets the bot and Lua version.
	}
	save
	{
		group = C
		trigger = !save
		help = Saves a new defence spawn point.
	}
	logsearch
	{
		group = M
		trigger = !logsearch
		help = Searches the event log for events
	}
	moderators
	{
		group = *
		trigger = !mods;!moderators;!showmods;!sm
		help = Shows the current authorized moderators in-game.
	}
	killme
	{
		group = *
		trigger = !killme;!km
		help = Kills you
	}
	amsg
	{
		group = M
		trigger = !amsg;!adminmessage
		help = Sends an administrator message to everyone in-game
	}
	nextmap
	{
		group = *
		trigger = !nextmap;!next;!n
		help = Get the next map in rotation
	}
	rules
	{
		group = *
		trigger = !rules
		help = Shows the server rules
	}
	website
	{
		group = *
		trigger = !website
		help = Shows the server website
	}
	ping
	{
		group = *
		trigger = !ping
		help = Shows a player's ping if specified. Otherwise shows the average ping for all players.
	}
	refund
	{
		group = M
		trigger = !refund
		help = Refunds a player's credits.
	}
	rehash
	{
		group = B
		trigger = !rehash
		help = Rehashes the bot settings, does not affect IRC.
	}
	donate
	{
		group = *
		trigger = !donate;!d
		help = Donate cash to a team mate.
	}
	rotation
	{
		group = *
		trigger = !rotation;!r
		help = Gets the server map rotation
	}
	tempban
	{
		group = M
		trigger = !tban;tmpban;tempban
		help = Bans a player for a set amount of time.
	}
	addtmpban
	{
		group = M
		trigger = !addtempban;!atban
		help = Adds a time limit to an existing ban
	}
	ppage
	{
		group = I
		trigger = !ppage;!pp
		help = Sends an in-game player a private message
	}
	pinfo
	{
		group = *
		trigger = !pinfo;!pi
		help = Gets specific infomation about a player.
	}
	showpm
	{
		group = M
		trigger = !showpm
		help = Shows a player's private messages at IRC (Private channels only).
	}
	import
	{
		group = S
		trigger = !import
		help = Imports a new IpCountry.csv. Must be located in your server directory.
	}
	getbw
	{
		group = M
		trigger = !getbw
		help = Gets a player's bandwidth setting.
	}
	setbw
	{
		group = M
		trigger = !setbw
		help = Sets a player's bandwidth setting.
	}
	eteam
	{
		group = M
		trigger = !eteam
		help = Evens the teams.
	}
	allow
	{
		group = M
		trigger = !allow
		help = Allows a player back into the server (Does not unban a player)
	}
	setnextmap
	{
		group = M
		trigger = !setnextmap;!setnext;!snm
		help = Sets the next map
	}
	pamsg
	{
		group = M
		trigger = !pamsg
		help = Sends an administrator message to a player.
	}
	tpage
	{
		group = M
		trigger = !tpage
		help = Sends a page to all players on a team.
	}
	scripts
	{
		group = M
		trigger = !scripts
		help = Gets scripts version of all players, or a specific player.
	}
	shun
	{
		group = M
		trigger = !shun
		help = Toggles whether a player is allowed to use bot commands.
	}
	vlimit
	{
		group = M
		trigger = !vlimit
		help = Sets or gets the vehicle limit.
	}
	mlimit
	{
		group = M
		trigger = !mlimit
		help = Sets or gets the mine limit.
	}
	kicklog
	{
		group = M
		trigger = !kicklog
		help = Searches the kick log.
	}
	banlog
	{
		group = M
		trigger = !banlog
		help = Searches the ban log.
	}
	rank
	{
		group = *
		trigger = !rank
		help = Gets a player's rank, uses own name if no one is specified.
	}
	findban
	{
		group = M
		trigger = !findban;!banfind;!banf
		help = Finds a ban.
	}
}



