Jump to content
ImportBot

Currency v3.0.1.1: Bounties & Mugging! (Updated: 06/06/2012)

Recommended Posts

Originally Posted by Athlon*:

 

Description

 

This plugin is a Mod of the fine work done by blactionhero on his ...*.

 

Currency adds an in-game form of currency to your server(s). It works together or separately across all of your BF3 servers. It stores player's balances in a MySQL database on a server that you specify (more on this below).

 

Currency can be earned by players in different ways that you specify, such as:

 

- Spending a specified amount of time playing on your server.

- Killing someone.

- Getting a headshot.

- Killing with specific weapons that you choose.

- Killing someone who has a bounty on their head.

- Mugging someone with a weapon that you specify, stealing a % of their Currency that you choose.

 

Each Currency earning method can be enabled and disabled on-the-fly. Most methods have announcements associated with them that you can edit or turn off. Players can also type @quiet (the default) to turn off all player-specific spam caused by these announcements.

 

People can use their Currency to put bounties on each other, and to buy items that you create. You can create as many items as you like, which will automatically show up in Currency's shop menu (by default, players can type @shop to access the shop menu). Items can do many things an admin can do. Each item can perform multiple actions when bought. These actions (such as kill or nuke) can affect specific or randomly chosen players, squads or teams. For more information and some item examples scroll down to the items section.

 

Installation Instructions:

 

Currency requires a MySQL database for storing player's balances, and is fully compatible with XpKiller's ...* - you can use the same database for both!

 

Setting up a MySQL database is simple: if you need instructions on what to do, or have no idea what MySQL means, see the great ...* blactionhero ...*.

 

Step 1: Gather your MySQL database info. Confused? ...*

 

Step 2: Extract Currency.cs to your ...\PRoCon\Plugins\BF3\ directory.

 

Step 3: In the PRoCon Tools/Options/Plugins Tab, add your MySQL server and check the box.

 

Step 4: Restart PRoCon.

 

Step 5: Configure Currency with your MySQL database info, then check its checkbox in PRoCon to enable it. If you get an error, make sure you entered all the MySQL info correctly then disable/re-enable Currency!

 

 

 

 

Configuration:

 

The sections below explain the options available to you in the Plugin's Settings tab. All of the following options EXCEPT for the 'MySQL Server Config' section can be changed on the fly without restarting PRoCon or Currency.

 

 

 

 

General Options:

 

For options that require you to edit a 'String[] Array', make sure that you click the '...' on the far-right of that option's line. Editing the value without clicking the '...' will NOT save the changes!

 

Rename Currency to:

If you'd like Currency to refer to itself as something else, enter it here. Most of the spam that Currency sends will have this text contained in it. For example, we use =WH= Bucks.

 

Currency symbol:

If you want to change the Currency symbol, enter a new one here. Again, we use =WH= Bucks. You may use different text or a symbol such as $ here. It does not have to be the same as the text you enter in Rename Currency. This is used in numerous Currency spams and menus.

 

Show plugin console spam?

Change this to No if you want to disable plugin console spam. Currency spams the plugin console when people mug each other, buy items, get paid from payroll, etc. Note: This option is currently disabled and set to Yes. You cannot change it to No. The console shows only important Currency activity. The text in the console is not the same as what appears in-game.

 

Main menu chat trigger:

Set the word that players type to access Currency's main menu. By default, players can type '@currency' to access the menu. Note: Due to BF3's limited in-game Chat capability, it is recommended you do not share this command with anyone. You may even wish to change it to something no one will guess and use.

 

Main menu header:

Click the '...' button to add your own header text to Currency's main menu. Whatever you put here will show up above the default menu text. Delete all of the text if you don't want to add a custom header.

 

Shop menu chat trigger:

Set the word that players type to access Currency's shop menu. By default, players can type '@shop' to access the shop menu. This is where all the items you create below are listed so that players know what they can buy, how much it will cost, etc. Note: Due to BF3's limited in-game Chat capability, it is recommended you do not share this command with anyone. You may even wish to change it to something no one will guess and use.

 

Shop menu header:

Click the '...' button to add a custom header text to Currency's shop menu. This is the same principle as the main menu header, but this one is for the shop.

 

Check balance chat trigger:

Set the word that players type to check their Currency balance. By default, they can type '@balance' to check their own balance.

 

Toggle notifications chat trigger:

Set the word that players type to hide player-specific Currency spam. By default, people can type '@quiet' to hide much of the spam that Currency sends. Everyone in the server must see messages that are sent to all, no matter what.

 

Grant admins special privileges?

Set to Yes to allow admins to check, add, and remove player's Currency. The commands for each are configured next if this is set to Yes.

 

Admin check player's balance command:

Set the word that admins type to check a specific player's balance. To check Athlon646464's balance, by default an admin could type '@checkbalance Athlon646464' or '@checkbalance ath'.

 

Admin add Currency command:

Set the word that admins type to add Currency to a specific player's account. By default, '@addcc Athlon646464 5000' or '@addcc ath 5000' would add 5000 Currency to Athlon646464's account.

 

Admin remove Currency command:

Set the word that admins type to remove Currency from a specific player's account. By default, '@removecc Athlon646464 6250' or '@removecc ath 6250' would remove 6250 Currency from Athlon646464's account.

 

Eliminate collection for TK? New in v3.0.1.1

If you do not want a player to collect a Bounty or to collect for a Mugging when they Teamkill, set this to 'Yes'. Setting this to 'No' will continue to allow players to TK and collect Bounties and to collect for Mugging - a huge temptation when a teammate's back is turned.

 

 

 

 

MySQL Server Config:

 

If you don't know what the stuff below means, ...*

 

If you're running XpKiller's ...*, you can use the same information here that you used to configure that. Currency will not interfere or conflict.

 

Hostname/IP:

Enter the hostname or IP of your MySQL server. For example: '192.168.1.10', 'www.freesql.org', or 'localhost'

 

Database Name:

Enter the name of the database you want to use. You either chose this name previously, or your MySQL hosting company provided it. Example: 'procon', 'currency', 'whateveryoumadeit'

 

UserName:

Enter the username you want to connect to the MySQL server as. You either chose this previously, or your MySQL hosting company provided it. Example: 'procon, 'currency', 'tofu', 'whateveryoumadeit'

 

Password:

Enter the password associated with the username from above. You wrote it down somewhere, remember?

 

Currency will automatically create your MySQL database if it doesn't exist.

 

 

 

 

Payroll Config:

 

Payroll pays the people who play on your server for consecutive time spent connected. You can set the amount of time someone has to stay connected to get paid, as well as the amount that they get paid for being on your server that long.

 

Enable payroll?

Switch this to Yes to enable payroll, unlocking the options below.

 

Payroll frequency (in minutes):

Set how many consecutive minutes players must play on your server to get paid. By default this is set to 30 minutes.

 

Payroll amount:

Set how much Currency your players get paid via payroll. The default is 500. Using default options, players will be paid 500 for every 30 minutes they stay connected. Pick whatever seems good to you - this can always be changed on the fly.

 

Message sent to player when paid:

Set the message that is whispered to players when they get paid via payroll. By default, this is: 'Payroll - You just got paid %amount CC$!' The text '%amount' will be automatically replaced by the payroll amount you chose above. You may want to at least change CC$ to the text you entered for your Currency symbol above.

 

 

 

 

Kills and Deaths:

 

In this section you can decide if and how much a player gets paid for each kill, headshot, or kill with a specific weapon, and whether or not any Currency is taken away from players each time they die. This is completely separate from mugging.

 

Pay for kills?

Disabled by default, set this to Yes if you want players to receive Currency each time they get a kill.

 

Amount paid per kill:

If you set 'Pay for kills_' above to Yes, then how much Currency do your players get paid for each kill?

 

Deduct for deaths?

Disabled by default, set this to Yes to if you want to remove Currency from player's accounts for dying.

 

Amount deducted per death:

If you set 'Deduct for deaths_' to Yes, then how much Currency do you want players to lose each time they die?

 

Pay bonus for headshots?

Disabled by default, set this to Yes if you want to pay players for headshots.

 

Bonus paid per headshot:

If you set 'Pay bonus for headshots_' to Yes, then how much Currency do you want players to receive for each headshot?

 

Pay for kills with specific weapons?

Disabled by default, set this to Yes if you want to pay players a certain amount of Currency for each kill they get with a weapon you choose. You can set up multiple weapons, each with a different payoff value.

 

Select a weapon and enter its kill value below:

Click this field then click the down arrow and choose a gun that you want players to get paid for killing with.

 

Enter selected weapon's kill value, then select Add below:

How much Currency do you want people to get for each kill with the weapon you selected above?

 

Add or remove selected weapon and kill value to or from list?

When you select Add, the weapon you selected and its kill value will be live! To remove a weapon, select Remove with the proper weapon selected above. Otherwise, delete the line that contains the weapon in the String[] Array below.

 

List of weapons and corresponding Currency values:

Each weapon you added via the 3 fields above this will show up, alongside its value, in this String[] Array. Click the '...' to edit the kill value of the listed weapons.

 

 

 

 

Bounties:

 

This section explains the settings related to AutoBounties and PlayerBounties.

 

AutoBounties are bounties that are automatically placed on player's heads for achieving a specified killstreak. For instance, you can configure Currency to put a 25 Currency bounty on someone's head if they get 10 kills in a row, then 5 more for each additional kill. The first person to kill the player with the bounty on his head claims the bounty!

 

PlayerBounties are bounties that players place on each other. By default, typing '@addbounty powerbits 500' or '@addbounty pow 500' will put a 500 Currency bounty on powerbits' head. The first person to kill powerbits would get the bounty.

 

AutoBounties and PlayerBounties can be used together. The bounties will simply stack and the person to kill the mark will get the AutoBounty amount plus the PlayerBounty amount. By default, players can type '@bountyboard' for a list of players and their bounties.

 

Command used to display the Bounty Board:

Set the word that players type to view the bounty board. The bounty board is a list of players with bounties, and their respective bounty amounts. By default, typing '@bountyboard' will show the board.

 

Enable automatic bounties?

Set this to Yes if you want players to have bounties automatically put on their heads if they get a certain number of kills without dying.

 

AutoBounty: Number of kills needed to start bounty:

Set the number of kills that a player must get, without dying, for a bounty to be automatically placed on his head.

 

AutoBounty: Starting bounty amount:

Set the amount of Currency that autobounties start at.

 

AutoBounty: Amount added to bounty for additional kills:

Set the amount of Currency to add to a player's bounty for each kill he gets AFTER an autobounty has been posted on their head.

 

AutoBounty: Message sent when a bounty is posted:

This is the message that will be displayed when an autobounty is posted. The text '%amount' will be automatically replaced by the 'Starting bounty amount', '%killer' will automatically be replaced by the mark's playername, and '%streak' will be replaced by the 'Number of kills needed to start bounty'. Delete all the text in this field if you don't want a message to be sent when an autobounty is posted.

 

AutoBounty: Message sent when a bounty is collected:

This message will be displayed when a player claims a bounty. The text '%amount' will be automatically replaced by the victim's bounty at time-of-death, '%killer' will be replaced by the killer's playername, '%victim' will be replaced by the victim's playername, and '%streak' will be replaced by the victim's now-broken kill streak. If you also have playerbounties enabled below, you will want to clear either this field, or the playerbounty 'Message sent when a bounty is collected' field to prevent double spamming.

 

AutoBounty: Send messages to everyone?

Set this to Yes to have the messages above sent to everyone in the server. Setting this to No will ensure that only the killer and victim receive autobounty messages.

 

AutoBounty: Say the messages above?

Set this to Yes if you want the above messages to be 'said'. Messages that are 'said' are displayed in the chatbox.

 

AutoBounty: Yell the messages above?

Set this to Yes if you want the above messages to be 'yelled'. Messages that are 'yelled' are displayed in big letters in the lower middle of the screen.

 

AutoBounty: Yell them for how long (seconds)?

Set this to the number of seconds that you want yelled messages to be displayed.

 

Enable player-made bounties?

Set this to Yes if you want players to be able to use their Currency to place bounties on other player's heads.

 

PlayerBounty: Command players use to add bounties:

Set the word that players type to place a bounty on another player's head. By default, if this is set to Yes then players can type '@addbounty slekkas 500' or '@addbounty slek 500' to put a 500 Currency bounty on slekkas'.

 

PlayerBounty: Message sent when a bounty is posted:

This is the message that will be displayed when a playerbounty is posted. The text '%poster' will be automatically replaced by the poster's playername, '%amount' will be replaced by the amount that the poster put on the target's head, and the text '%target' will be replaced by the target's playername. Delete all of the text in this field if you don't want a message to be sent when an autobounty is posted.

 

PlayerBounty: Message sent when a bounty is collected:

This message will be displayed when a player claims a bounty. The text '%killer' will be replaced by the killer's playername, '%victim' will be replaced by the victim's playername, and '%amount' will be automatically replaced by the victim's bounty at time-of-death. If you also have autobounties enabled above, you will want to clear either this field, or the autobounty 'Message sent when a bounty is collected' field to prevent double spamming.

 

PlayerBounty: Send messages to everyone?

Set this to Yes to have the above playerbounty messages sent to everyone on the server. Setting this to No will ensure that only the killer/poster and victim/target receive playerbounty messages.

 

PlayerBounty: Say the messages?

Set this to Yes if you want the above playerbounty messages to be 'said'. Messages that are 'said' are displayed in the chatbox.

 

PlayerBounty: Yell the messages?

Set this to Yes if you want the above playerbounty messages to be 'yelled'. Messages that are 'yelled' are displayed in big letters in the lower middle of the screen.

 

PlayerBounty: Yell messages for how long (seconds)?

Set this to the number of seconds that you want yelled messages to be displayed.

 

 

 

 

Mugging:

 

This section explains settings related to mugging. Mugging happens when a player kills someone using a weapon that you have chosen to be a mugging weapon, stealing a specified percentage of the victim's Currency.

 

Enable mugging?

Set this to Yes if you want players to be able to steal Currency from each other by using specific weapons, such as the knife.

 

Percentage of victim's Currency stolen when mugged:

Set the percentage of the mugging victim's Currency that is stolen by the mugger. For example if the victim has 1000 Currency, this field is set to 5, and the victim gets mugged, the mugger will receive 50 Currency from the victim.

 

Limit the amount of Currency that can be stolen per mugging?

Set this to Yes if you want to limit the amount of Currency that can be stolen per mugging.

 

Maximum amount of Currency that can be stolen:

Set the maximum amount of Currency that can be stolen per mugging. For example if the victim has 1000 Currency, the 'Percentage of victim's Currency stolen when mugged' is set to 5, and this field is set to 25, the mugger will only steal 25 Currency instead of 50.

 

Message sent to everyone when someone is mugged:

This is the message that is sent to all players on the server when someone is mugged. The text '%killer' will automatically be replaced by the killer's playername, '%victim' will be replaced by the victim's playername, and '%amount' will be replaced by the amount that was stolen.

 

Say the message above?

Set this to Yes if you want the 'Message sent to everyone when someone is mugged' to be said. Messages that are 'said' will show up in the chatbox.

 

Yell the message above?

Set this to Yes if you want the above message to be yelled instead of said. Messages that are 'yelled' are displayed in big letters in the lower middle of the screen.

 

Yell message for how long (seconds)?

If you have 'Yell the message above_' set to Yes, set this field to the number of seconds that you want the 'Message sent to everyone when someone is mugged' to be yelled.

 

Select a mugging weapon:

Select this field and click the down arrow to open a list of weapons to choose from. Select a weapon that players can mug one another with.

 

Add or remove selected weapon to or from the list?

Click this field and select Add or Remove to add or remove the weapon currently selected in the 'Select a mugging weapon' field to the list of mugging weapons. For example if you have 'Knife' selected, and choose Add, the 'Knife' will then be considered a mugging weapon. Note: It is recommended you do not choose Roadkill as a Mugging weapon at this time. Roadkill is bugged in this version. Currency will Mug ANYONE who dies in a vehicle if you choose Roadkill as a Mugging weapon.

 

List of mugging weapons:

Select this field and click the '...' button to view or manually edit your list of mugging weapons. You MUST click the '...' button to edit this field, otherwise your changes won't stick!

 

 

 

 

Shop Config:

 

This section explains item creation and editing. Players can only spend their Currency on two types of things: putting bounties on people and the items you create below.

 

Each item you create can perform any number of commands. Many ingame command available to admins can be added to an item. If an item is to perform an action on a player chosen by the buyer, the second word the buyer speaks must be the target's playername or the first few letters of it. For example, if a kill item is created and assigned the Buy Command '@kill' then the buyer must specify who to kill, like this: '@kill SUPERSTAR' or '@kill super'.

 

The actions that items perform are added one-at-a-time via the 'Add a console command to run when bought' field below, and can then be tweaked by selecting the 'List of console commands for Item...' field and clicking the '...' button on the right side. Read this entire section for specific info on each type of command and how to configure them. If you have a question on how to create an item you have in mind, feel free to ask.

 

Number of items:

This is the number of items that your players can spend Currency on. Set this to 1 to configure your first item, then set it to 2 to add a new blank item, etc. WARNING: Setting this lower than the current amount of configured items will delete the highest numbered item! Its configuration WILL NOT BE SAVED if you delete it!

 

Shop Config: Item X

Each item has its own settings, defined by you below.

 

Name:

Set the item's name in this field. This appears here, in the ingame shop menu, and in the plugin console if you have plugin spam enabled.

 

Enabled:

If set to Yes, this item will appear in the shop menu and will trigger in-game. By default, players can access the shop menu by typing '@shop'. Setting this to No will disable this item: It will disappear from the shop menu and its buy command won't trigger in-game.

 

Cost:

Set the amount of Currency a player must spend to buy this item. Take into consideration the amount of Currency players are earning via payroll, mugging, and bounties. Things like tempbans should probably cost more than slays.

 

Buy Command:

Set the word that a player must type to buy this item. The Buy Command must not have spaces in it. For example '@donkeypunch' is valid but '@donkey punch' is not. Buy Commands are case insensitive, so it doesn't matter if you use upper or lowercase letters.

 

Description:

This description text will be displayed next to the item's name, cost, and buy command in the shop menu. You should provide a short description of the item, showing an example or proper syntax. For example: '@reserve [playername] buys playername a reserve slot.' Note: If you are not allowing a Main Menu or a Shop Menu by hiding them, then you may leave this setting as is.

 

Add console command to run when bought:

Select this field, then click the down arrow to display a list of console command templates. Click on one to add it to the 'List of console commands for Item X' below. These commands are performed in the order they are added and should be edited via the String[] Array below.

 

List of console commands for Item X:

Adding a console command above will create a 1-line template in this field. Click '...' to view or edit the command lines. The commands in this field will be run in the order they appear. Do NOT use any commas in your custom messages!

 

Say, %buyer just bought an item!

The Say command will send all text after the first comma to everyone on the server. Do not use commas in your message! The text '%buyer' will automatically be replaced by the buyer's playername, '%target' will be replaced by the playername best matching the second word the buyer typed, '%amount' will be replaced by the item's cost, and '%balance' will be replaced by the buyer's Currency balance.

 

- Syntax: Say, [message]

- Ingame syntax: @buycommand

- Text replacement: %buyer, %target, %amount, %balance

 

- Example: 'Say, %buyer just bought an item for %amount Currency and has %balance Currency left!'

-- If I buy this item, the item's cost is 100 Currency, and I have 4900 Currency left, the following would be written to the ingame chat box for all to see: 'Athlon646464 just bought an item for 100 Currency and has 4900 Currency left!'

 

Yell, 5, %buyer just bought an item!

Messages that are 'yelled' are displayed in big letters in the lower middle of the screen. The '5' represents the number of seconds that you want the message to appear on everyone's screen. 'Yell' acts almost the same as 'Say', except you must specify a yell duration.

 

- Syntax: Yell, [seconds], [message]

- Ingame syntax: @buycommand

- Text replacement: %buyer, %target, %amount, %balance

 

- Example: 'Yell, 3, %buyer just bought an item for %amount Currency and has %balance Currency left!'

-- If player 911jaydee bought this item for 500 Currency, and has 5000 Currency left, the following text would be yelled to everyone for 3 seconds: '911jaydee just bought an item for 500 Currency and has 5000 Currency left!'

 

Growl and Whisper

Growl and Whisper are left over from the original code. It is recommended you do not use these commands at this time.

 

Move

The Move command moves players to different teams and squads.

 

- Syntax: Move

- Ingame syntax (to move player to opposite team): @buycommand [playername]

- Ingame syntax (to move player to specific team): @buycommand [playername] [uS/RU]

- Ingame syntax (to move player to specific squad): @buycommand [playername] [uS/RU] [Alpha/Bravo/...]

 

- Example: 'Move'

-- If players type this item's Buy Command and then a target's name, the target will be moved to the opposite team. If the player specifies a team and a squad (US Alpha, RU Charlie, US Hotel, etc.) after the target's name, the target will be moved to that specific team and squad.

 

Mute, Player, 5, Minutes

The Mute command mutes a player for a pre-specified amount of time.

 

- Syntax: Mute, [buyer/Player], [NUMBER], [seconds/Minutes/Hours/Days/Weeks/Months]

- Ingame syntax (for an item to mute the buyer): @buycommand

- Ingame syntax (for an item to mute a player or the target): @buycommand [playername]

 

- Example: 'Mute, Player, 1, Hours'

-- If MrsDirtReynolds typed '@buycommand GIGeranium' or '@buycommand gig', GIGeranium would be muted for one hour.

 

Voice

The Voice command removes a player from PRoCon's text moderation list. It does not give them 'Voice status', but it will remove a mute.

 

- Syntax: Voice

- Ingame syntax: @buycommand [playername]

 

- Example: 'Voice'

-- Typing '@buycommand Cmeregirl' or '@buycommand cmere' would remove Cmeregirl from the text moderation list, clearing a mute if one exists.

 

Kick, Player, Replace this text with the kick reason.

The Kick command kicks a player, the buyer, or a random player. You may specify the kick message, or you can force the buyer to write a message.

 

- Syntax (if using a pre-defined message): Kick, [buyer/Player/Random], [message]

- Syntax (if using a player-defined message): Kick, [buyer/Player/Random]

- Ingame syntax (if using a pre-defined message): @buycommand [playername]

- Ingame syntax (if using a player-defined message): @buycommand [playername] [message]

 

- Example 1: 'Kick, Buyer, Blam!'

-- If a player typed '@buycommand', he would be kicked from the server for reason 'Blam!'.

 

- Example 2: 'Kick, Player'

-- If a player typed '@buycommand -rTuro Get lost!' or '@buycommand -r Get lost!', player -rTuro would be kicked from the server for reason 'Get lost!'.

 

- Example 3: 'Kick, Random, You just got nailed!'

-- Someone typing '@buycommand' would kick a random player from the server for reason 'You just got nailed!'.

 

Kill, Player

The Kill command slays a player, the buyer, or a random player. The buyer must specify a playername after the Buy Command.

 

- Syntax: Kill, [buyer/Player/Random]

- Ingame syntax: @buycommand [playername]

 

- Example 1: 'Kill, Random'

-- If Adonnis typed '@buycommand', a random player would be killed.

 

- Example 2: 'Kill, Player'

-- If 911jaydee typed '@buycommand CapnAhab', the server would kill CapnAhab.

 

Nuke, Squad, %buyer just nuked your squad!

The Nuke command will slay everyone on a specified or random squad or team, then send each slain player a message that you define. In said message, the text '%buyer' will automatically be replaced with the buyer's playername.

 

- Syntax: Nuke, [Team/Squad/Random], [message]

- Ingame syntax (if nuking a team): @buycommand [uS/RU]

- Ingame syntax (if nuking a squad): @buycommand [uS/RU] [Alpha/Bravo/...]

- Ingame syntax (if nuking a random squad): @buycommand

- Text replacement: %buyer

 

- Example 1: 'Nuke, Team, %buyer just nuked your team! Oh snap!'

-- If SniperAngel typed '@buycommand ru', the entire Russian team would be slain and would receive the message 'SniperAngel just nuked your team! Oh snap!'.

 

- Example 2: 'Nuke, Squad, Your squad was nuked by %buyer!'

-- If Spike typed '@buycommand us charlie', the Charlie squad on the US team would be slain, receiving the message 'Your squad was nuked by Spike!'.

 

- Example 3: 'Nuke, Random, Your squad was randomly nuked by %buyer's ICBM!'

-- If Donkeybox typed '@buycommand', a random squad would be nuked. Each member on the random squad would then receive the message 'Your squad was randomly nuked by %buyer's ICBM!'

 

TempBan, Player, 5, Hours, Replace this text with the ban reason.

The TempBan command will temporarily ban a character for a pre-specified amount of time. The ban reason can be specified here in the item's configuration, or you can force the player to write a message. If you put the text '%buyer' in the message, it will automatically be replaced by the buyer's playername.

 

- Syntax (using pre-specified message): TempBan, [buyer/Player], [NUMBER], [seconds/Minutes/Hours/...], [message]

- Syntax (using player-defined message): TempBan, [buyer/Player], [NUMBER], [seconds/Minutes/Hours/...]

- Ingame syntax (using pre-specified message): @buycommand [playername]

- Ingame syntax (using player-specified message): @buycommand [playername] [message]

- Text replacement: %buyer

 

- Example 1: 'TempBan, Buyer, 5, Minutes, You mad!'

-- If a player typed '@buycommand', he would be banned from the server for 5 minutes for reason 'You mad!'.

 

- Example 2: 'TempBan, Player, 2, Hours, %buyer banned you for 2 hours!'

-- If player Leonarderp typed '@buycommand blas' or '@buycommand blaster81', blaster81 would be banned from the server for 2 hours for reason 'Leonarderp banned you for 2 hours!'

 

- Example 3: 'TempBan, Player, 3, Months'

-- If a player typed '@buycommand shorterbususmc See you next season!', player shorterbususmc would be banned for three months for reason 'See you next season!'.

 

PermBan, Player, Replace this text with the ban reason.

The PermBan command will permanently ban a player. The ban reason can be specified here in the item's configuration, or you can force the player to write a message. If you put the text '%buyer' in the message, it will automatically be replaced by the buyer's playername.

 

- Syntax (using pre-specified message): PermBan, [buyer/Player], [message]

- Syntax (using player-defined message): PermBan, [buyer/Player]

- Ingame syntax (using pre-specified message): @buycommand [playername]

- Ingame syntax (using player-specified message): @buycommand [playername] [message]

- Text replacement: %buyer

 

- Example 1: 'PermBan, Buyer, You have permbanned yourself! Why!_'

-- If a player typed '@buycommand', he would be banned from the server permanently for reason 'You have permbanned yourself! Why!_'.

 

- Example 2: 'PermBan, Player, %buyer banned you for good!'

-- If player VietGuy typed '@buycommand mrs' or '@buycommand MrsDirtReynolds', player MrsDirtReynolds would be banned from the server forever for reason 'VietGuy banned you for good!'

 

- Example 3: 'PermBan, Player'

-- If ChocolateMilkman typed '@buycommand MrsDirtReynolds Stop harassing me!' or '@buycommand mrs Stop harassing me!', player MrsDirtReynolds would be banned forever for reason 'Stop harassing me!'.

 

UnBan

The UnBan command will unban the player specified after the @buycommand. It will not check spelling, nor the banlist, so the buyer needs to make sure his spelling is right-on.

 

- Syntax: UnBan

- Ingame syntax: @buycommand [exact playername]

 

- Example: 'UnBan'

-- If player winstonsmoker typed '@buycommand -rTuro', player -rTuro would be removed from the server's ban list.

 

RestartRound

This command restarts the current round.

 

- Syntax: RestartRound

- Ingame syntax: @buycommand

 

- Example: 'RestartRound'

-- Typing '@buycommand' in game would restart the current round.

 

NextLevel

The NextLevel command runs the next level in PRoCon's maplist.

 

- Syntax: NextLevel

- Ingame syntax: @buycommand

 

- Example: 'NextLevel'

-- To leave the current level immediately and start the next, a player could type '@buycommand'.

 

ReserveAdd, Player, 60, Minutes

The ReserveAdd command adds the player specified after @buycommand, or the buyer, to the reserve list. This means that if your server is full, someone will be kicked to allow the target a slot. A player wanting to add a friend to the reserve list can type his whole name, or the first few letters of it. If the beginning of said friend's name is the same as another player's and it contains spaces, the '&' character should be used in place of each space.

 

- Syntax: ReserveAdd, [buyer/Player], [NUMBER], [Minutes/Hours/Days/Weeks/Months]

- Ingame syntax (if set to buyer): @buycommand

- Ingame syntax (if set to player): @buycommand [playername]

- Text replacement: &

 

- Example 1: 'ReserveAdd, Buyer, 1, Months'

-- If ChocolateMilkman typed '@buycommand', he would be added to the reserve list for one month.

 

- Example 2: 'ReserveAdd, Player, 2, Weeks'

-- If Leonarderp typed '@buycommand blac' or '@buycommand blactionhero', I would be added to the server's reserve list for two weeks.

 

ReserveRemove, Player

This command removes a player specified after the @buycommand, or the buyer, from the reserve list.

 

- Syntax (if set to buyer): ReserveRemove, Buyer

- Syntax (if set to player): ReserveRemove, Player

- Ingame syntax (if set to buyer): @buycommand

- Ingame syntax (if set to player): @buycommand [playername]

 

- Example 1: 'ReserveRemove, Buyer'

-- If a player typed '@buycommand', his reserve slot would be removed.

 

- Example 2: 'ReserveRemove, Player'

-- If a player typed '@buycommand MrSplattman' or '@buycommand mrsplat', player MrSplattman's reserve slot would be removed.

 

Important!

Almost every 'Buyer' can be replaced with 'Player', but then the buyer -must- specify the first few letters of a player name right after the @buycommand! For example, if you make an item with a kick command, '@kick' does nothing, but '@kick RatedR27' kicks player RatedR27. '@kick rate' would also work.

 

Again, when editing an item's 'List of console commands for Item X' field you need to watch the commas! No line should end with a comma. Never add more commas than the default template uses; you will only delete commas if that item's syntax specifically shows less commas.

 

 

 

 

Support:

 

Got MySQL questions? ...*

 

If you have any questions about this plugin, post them here in this thread. I'll do my best to help you.

 

 

 

 

Credits and Acknowledgement:

 

Original Acknowledgement as posted by blactionhero:

 

*************************

 

Currency is my second C# project. Chat Trigger Auto-Responder was my first. I learned to write plugins by reading what other Phogue.net community members had written. Currency was originally called CREAM CASH and was to only be available on my community's servers, but I decided to write a customizable version for everyone to use. Many different plugins contributed to the making of Currency, though my largest acknowledgment must go to Dere011.

 

Dere011 wrote FrequentPlayerPoints, which is basically a shell of a plugin that contains SQL code to do some neat things. The SQL code in Currency was taken almost verbatim from Dere011's FrequentPlayerPoints. Thank you Dere! Without your work, it would've taken me forever to figure out how to save the Currency data! (Currency's SQL has been re-written and no longer uses Dere011's template, but it took his code to get this project started!)

 

AdminAlerts by Lorax74 is what taught me to create classes and perform actions on them. Without AdminAlerts, there

would be no items in Currency! Thank you, Lorax!

 

KillTracker by HeliMagnet provided me with a perfect example of how to give a user a list of weapons to choose from to perform further actions with. Thanks Heli!

 

Many thanks to micovery and XpKiller for helping me learn the language(s)! These guys are great.

 

A huge thanks to Phogue for developing and releasing PRoCon free of charge for the BFBC2/Vietnam/MoH communities!

 

*************************

 

My words (Athlon):

 

I must say up front that I have limited knowledge when it comes to MySQL stuff. Our Procon Layer is running 24/7 on a clan member's extra computer along with our databases. It works flawlessly for us. I followed the fine tutorial for setting up our databases as referenced here many times. Your mileage may vary. If you have database issues I will do my best to help, but I may need help form this community for your MySQL questions.

 

As for the plugin itself - it's still a work in progress. I should be able to answer most any question you may have about it.

 

 

 

 

Known Bugs/Limitations:

 

(1) The setting Show plugin console spam? is currently disabled and set to Yes. You cannot change it to No. (The console shows only important Currency activity, and the text in the console is not the same as what appears in-game.)

 

(2) It is recommended you do not choose Roadkill as a Mugging weapon at this time. Roadkill is bugged in this version. Currency will Mug ANYONE who dies in a vehicle if you choose Roadkill as a Mugging weapon.

 

 

 

 

To-do List:

 

- Add a TK function where @punish (or !punish - your choice) will take Currency from a player, @forgive (or !forgive) will do nothing

- Clean up and delete the leftover BFBC2 specific stuff.

- Add this Setup Info to the plugin's 'Details' tab

- Add Headshot as a Mugging Option

- Add the ability to define a particular weapon required for a Mugging

- Fix '$' in the wrong place

 

 

 

 

Changelog:

 

v3.0.1.1 (June 6, 2012)

- Added ability to change TK setting

- More 'under the hood' fixes

v3.0.1.0 (June 4, 2012)

- Eliminated Currency Collection for Teamkills

v3.0.0.1 Initial BF3 Release to All (June 3, 2012)

- More 'under the hood' fixes

v3.0.0.0 BF3 Evaluation Release for the Developers Here (May 27, 2012)

- Code updated for BF3

v2.04 Final Release for BFBC2 (Dec. 30, 2010)

 

 

 

 

Download Latest Version Here

 

Attached Files:


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Athlon*:

 

Examples & Recommended Setup

 

Here are some screen shots showing how we have Currency set up on one of our servers.

 

We've chosen to call our Currency =WH= Bucks. Of course, you may call yours anything you like.

 

(1) Notice that we've changed most of our commands to start with '!' instead of '@'. We've found that most players are more used to '!'.

 

Also - Our database is on the same machine as our Procon Layer. YMMV.

 

Posted Image

 

 

(2) Notice 'Autobounty: Message sent when a bounty is collected:' is intentionally left blank. This is because 'Playerbounty: Message sent when a bounty is collected:' is populated. If you put a message in both places when allowing 'Player-Made Bounties', Currency will double spam both messages when a Bounty is collected.

 

Posted Image

 

 

(3) Note: It is recommended you do not choose Roadkill as a Mugging weapon at this time. Roadkill is bugged in this version. Currency will Mug ANYONE who dies in a vehicle if you choose Roadkill as a Mugging weapon.

 

Posted Image

 

 

(4) We actually have 19 items players can buy with our Currency. Here a few so you can get the idea. Most of the others are additional taunts players can buy for 100 =WH= Bucks.

 

Posted Image

 

Attached Files:


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ronin*:

 

n1 ty ima try it tomorrow or when you post a link for the dl :smile:


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Bl1ndy*:

 

Could you add Headshot as a mugging weapon?


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Athlon*:

 

Could you add Headshot as a mugging weapon?

I'll add it to the to-do list.

 

I will say, however, that on our servers there is already a lot of Mugging going on. We have it set to Knife/Melee/Defib only. It's made knife kills very popular!

 

I'm thinking Headshots will create nearly non-stop mugging, but I'll add it if I can.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Bl1ndy*:

 

The thing is, we run a bolt action sniper only server. Kinda hard to mug then when there aint no knives :biggrin:


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Athlon*:

 

The thing is, we run a bolt action sniper only server. Kinda hard to mug then when there aint no knives :biggrin:

Ahhh - got it!

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Bl1ndy*:

 

When are you releasing it?


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Athlon*:

 

When are you releasing it?

When I have permission from 'blactionhero', the original BFBC2 developer of the plugin, or from a Mod here who lets me release it. I've PM'd 'blactionhero' and I'm waiting for a response. Phil is also in the process of reviewing my code.

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Athlon*:

 

Permission granted!

 

v3.0.0.1 released for download.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Phil_K*:

 

Hi.

 

I've moved the thread to the Plugins main forum.

Plugin seems okay. :smile:

 

Greets

Phil.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Athlon*:

 

Hi.

 

I've moved the thread to the Plugins main forum.

Plugin seems okay. :smile:

 

Greets

Phil.

Thank you Phil!

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Athlon*:

 

New Version! v3.0.1.1

 

Added:

 

Eliminate collection for TK?

If you do not want a player to collect a Bounty or to collect for a Mugging when they Teamkill, set this to 'Yes'. Setting this to 'No' will continue to allow players to TK and collect Bounties and to collect for Mugging - a huge temptation when a teammate's back is turned.

 

Download from 1st post.

 

Enjoy!


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ronin*:

 

Hi getting this error i have the latest odbc installed but will check again

 

Code:

[18:30:13 96] [COLOR=""]Currency error: System.NullReferenceException: Object reference not set to an instance of an object.
   at System.Data.Odbc.OdbcDataReader.Read()
   at PRoConEvents.Currency.CheckAccountByName(String strSoldierName)

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Athlon*:

 

Hi getting this error i have the latest odbc installed but will check again

 

Code:

[18:30:13 96] [COLOR=""]Currency error: System.NullReferenceException: Object reference not set to an instance of an object.
   at System.Data.Odbc.OdbcDataReader.Read()
   at PRoConEvents.Currency.CheckAccountByName(String strSoldierName)
All I can suggest quickly is that you should re-check your MySql settings.

 

Are you using the 'BF3 Chat, GUID, Stats and Mapstats Logger' plugin?


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by KTwo*:

 

Do the reserve slots work? It doesn't seem like it adds the player to the reserve list in anyway.

 

By the way, thanks for the plugin.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Bl1ndy*:

 

Do the reserve slots work? It doesn't seem like it adds the player to the reserve list in anyway.

 

By the way, thanks for the plugin.

Would indeed be nice if reservedSlotsList.add would be supported.

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Athlon*:

 

Do the reserve slots work? It doesn't seem like it adds the player to the reserve list in anyway.

 

By the way, thanks for the plugin.

You are welcome. We have great fun with it on our servers.

 

Reserve slots should be working. I tested the feature weeks ago and all was fine. We don't use them on our server any more because our VIP's have them anyway, and 'publics' seemed to find it too complicated to use. They do start 'buying' stuff though. :biggrin: We have some scrolling announcements telling them what is available and what the command is.

 

Example (partial Spambot listing):

 

Type !rules, !stats or !bucks in chat for info

=WH= Bucks explained at warhawksclan.com - see how many you have and learn how to spend them!

!beer playername buys you a beer for 8 =WH= Bucks

!ammo playername buys you an AMMO Taunt for 100 =WH= Bucks

 

The next release is close to being ready for release. The feature to turn console spam on and off has been fixed, and we're about 80% done with testing @punish & @forgive for TK's.

 

Stay tuned!


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Athlon*:

 

Would indeed be nice if reservedSlotsList.add would be supported.

It doesn't work for you? If not, what happens when you add the item 'ReserveAdd' to to the 'String[] Array'? Please post your settings for that item and I'll have a look.

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Bl1ndy*:

 

It seems to use the BC2 command (ReserveAdd, Player, 60, Minutes) to add players to the reserved slot instead of the new BF3 command.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Bl1ndy*:

 

I've edited the code and it now succesfully adds players to the reserved slot list but it no longer removes theyre currency when they bought it :sad:


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by KTwo*:

 

I don't even see anything post to the console. Just plugin spam saying XXX purchased a reserved slot.

 

On a side note, I think it would be fun if you could specify a weapon when you place a bounty (e.g. !abounty KTwo 100 melee). Also a continuous bounty which is a normal bounty split over his next X deaths would be cool (e.g. !abounty KTwo 100 5 [which is 20 per death for the next 5 days]).


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by KTwo*:

 

I've edited the code and it now succesfully adds players to the reserved slot list but it no longer removes theyre currency when they bought it :sad:

Insight into what commands you had to change and what you changed them too would be nice :ohmy:. I went through and changed all of the currency labels to be in the front of the numbers instead of behind so I am comfortable changing a bit of the code. (I wanted it to say $10 instead of 10 $).

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Athlon*:

 

I've edited the code and it now succesfully adds players to the reserved slot list but it no longer removes theyre currency when they bought it :sad:

Thanks for the heads up. It should be fixed in the next release.

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Athlon*:

 

Insight into what commands you had to change and what you changed them too would be nice :ohmy:. I went through and changed all of the currency labels to be in the front of the numbers instead of behind so I am comfortable changing a bit of the code. (I wanted it to say $10 instead of 10 $).

It may have been easier to name the currency something rather than continuing to use $'s. We use =WH= Bucks for example. See the first page here for my examples of how we do it. Although you certainly can, there would be no need to go into the code. Also, you'll have to do that every time you download a new update.

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by KTwo*:

 

It may have been easier to name the currency something rather than continuing to use $'s. We use =WH= Bucks for example. See the first page here for my examples of how we do it. Although you certainly can, there would be no need to go into the code. Also, you'll have to do that every time you download a new update.

Oh yeah, it would have been loads easier, but I thought it was simpler for the players to understand if just $10 is displayed (shorter too). It is kind of reminiscent of CS I suppose. Perhaps you can just include that in the next release? lol I will help code/test it if you would like. Either way, I will continue to make changes to the code on future updates to keep it that way.

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Athlon*:

 

Oh yeah, it would have been loads easier, but I thought it was simpler for the players to understand if just $10 is displayed (shorter too). It is kind of reminiscent of CS I suppose. Perhaps you can just include that in the next release? lol I will help code/test it if you would like. Either way, I will continue to make changes to the code on future updates to keep it that way.

I'll put it on the to do list......

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by KTwo*:

 

On a side note, I think it would be fun if you could specify a weapon when you place a bounty (e.g. !abounty KTwo 100 melee). Also a continuous bounty which is a normal bounty split over his next X deaths would be cool (e.g. !abounty KTwo 100 5 [which is 20 per death for the next 5 days]).

Oops, meant "next 5 deaths", not days. :tongue:

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Sponge*:

 

Have installed the mod and love it but was wondering where are the bounties stored from what I can tell does not look like the database ?

 

A few features I would love to see is the weapon you need to use to claim the bounty (would like the bounty to be claimed only with a knife kill)

 

Storing the bounty in the database will allow me to program up a cron job adding a bounty to the server

 

Also how long the bounty lasts (The clan said would be awesome for the entire month a member has a bounty on their head)


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Athlon*:

 

Have installed the mod and love it but was wondering where are the bounties stored from what I can tell does not look like the database ?

 

A few features I would love to see is the weapon you need to use to claim the bounty (would like the bounty to be claimed only with a knife kill)

 

Storing the bounty in the database will allow me to program up a cron job adding a bounty to the server

 

Also how long the bounty lasts (The clan said would be awesome for the entire month a member has a bounty on their head)

Hello - Glad you like the plugin.

 

Bounties are not stored anywhere. They do last until the server or your Procon Layer is restarted however, so they carry over to the next rounds until collected, or you restart your server or your Procon Layer.

 

We are currently working on and testing punishing and forgiving. It should be ready for release fairly soon.

 

We have fixed the console spam that was stuck 'On' so you can turn it 'Off' if you want.

We have fixed the '$' being in the wrong place.

We are about 90% certain we have reserved slots working.

We are about 75% done with punishing/forgiving.

 

When either reserved slots or punishing/forgiving are working for sure I will release an update.

 

I like your idea about a bounty for a certain weapon. It has been added to our To-Do list. KTwo also suggested that idea, and we like it.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Our picks

    • Hello everyone,

      @maxdralle had a friend of his look into the bug and they submitted a fix for the Insane Limits issue. I will be doing a release candidate on Thursday 5/14/2020 to have a couple more testers try it out and report back any new problems. He reports that all plugins still work with that modification. I will reply to this topic with the RC zip. After about a week, if no issues are reported I will offically push this as the lastest version.

      Related thread below.

       
      • 12 replies
    • Hi All!

      MyRCON now has an official Battlefield 2 server. If you have Battlefield 2 then join up on our server and enjoy the classic battlefield. This server is located on the east coast in Canada.

      Server runs all the maps that were in the game as of the final patch.

      If you want to get in on the fun you'll need to use BF2Hub. You can find out how to get it from here. https://www.bf2hub.com/home/players.php

      Here is a link to the server page.

      https://www.bf2hub.com/server/158.69.35.124:16567/

      To download the two patches, I have uploaded them to our download section.

       
      • 0 replies
    • Hi All,

      So I've been thinking about doing something like this for a while but I always talked myself out of it. I want to get some feedback on this idea and how many would think about using it if it was offered.

      In the past I know how hard it was for some users to get a MySQL database going and running the BFACP (since it's a bit requirement heavy in some cases). What I would be doing is offering to manage both of these for you.

      If enough interest was shown in something like this I would definitely think about doing it. Of course, I also know the risks I would be taking in something like this, but to list what I would be offering I guess is this.

      MySQL Hosting


      Daily backups of the database to a remote site & option to download it yourself.


      No limit on how big your database can be (within reason).




      BFACP Hosting (If running AdKats on your layers)


      This would run the newest version (v3.0)


      Will still be available to run on your own hardware


      Will have extra features that are not available for an open source setup (still need to think of good things )


      Able to use your own domain name with the proper DNS setup.




      Both Above



      Please let me know what you think of this idea and vote in the poll. Again not confirming anything like this will happen but if I get enough interest from the community for something like this then please let me know.

      Disclaimer: This will NOT be something affiliated with MyRCON but will be ran through it in terms of a payment processor.
      • 11 replies
×
×
  • Create New...

Important Information

Please review our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.