Jump to content
Sign in to follow this  
ImportBot

Insane Punisher

Recommended Posts

Originally Posted by micovery*:

 

Installation

 

Put InsanePunisher.cs source file in the Plugins/BFBC2 directory (and read the plugin documentation).

 

Download: Attachment 1884

 

Description

 

This plugin is designed to discourage soldiers from base raping, base camping, and team killing.

It has been tested on both Rush and Conquest modes. It allows victims of such incidents to take action against their killer. The possible actions are "punish" (admin kill), "forgive", and "votekick". The actions are taken by typing them as an in-game command. Only victims of rule violations, are allowed to take action.

 

Map Zones

 

In order to set up this plugin, you should designate the base areas and the base defense areas in the battle map. Designating defense areas is not required but recommended. If you do not want to define these zones, you can use the default zone definitions provided in the settings file by setting the variable "default_zones" to true. Default zones are provided only for conquest mode. If you use your own map zones, these do not take effect immediately. Custom zones are detected the first time someone dies or kills in it. To view the list of zones for the current map use the !zones command.

 

US_BASE / RU_BASE / NVA_BASE

 

This zone is used mainly for designating spawn areas. Soldiers are not allowed to shoot into

this zone, or out from it unless they are in a defense zone. Air vehicles and ground vehicles are always allowed to shoot out from the base.

 

US_DEFENSE / RU_DEFENSE / NVA_DEFENSE

 

This zone is used mainly for designating base defense areas such as Anti-Air and Stationary AT guns.

Soldiers cannot be punished for killing from this area. Also, soldiers cannot be punished for killing an

enemy that is in a defense area(unless they already trespassed into the base). Note that defense zones should be inside or at least overlap with

the base of the same team.

 

Rules of Engagement - Punishable Incidents

 

  • == base boundary[/*:m:qt36hr4f]
  • --- defense boundary [/*:m:qt36hr4f]

Code:

Base Raping                                  Base Raping         
(enemy shoots into base)              (enemy trespasses and shoots into defense)
===========================                  ===========================
#          |              #                  #          |     o        #
#          |              #                  #    o<----|-----+>       #
#          |              #                  #   /|\    |     /\       #
#          |              #                  #    /\    |              #
#-----------              #           o      #-----------              #
#     o <-----------------#-----------+>     #                         #
#    /|\                  #           /\     #                         #
#    /\                   #                  #                         #
===========================                  ===========================
Code:
Base Raping                                     Base Camping         
(enemy trespasses into base)               (soldier shoots enemy from base)
===========================                  ===========================
#                         #                  #          |              #
#                         #                  #          |              #
#                         #                  #          |              #
#                         #                  #          |              #
#            o            #                  #-----------              #
#     o <----+>           #                  #    o                    #    \o/
#    /|\     /\           #                  #    <+-------------------#-- > |
#    /\                   #                  #    /\                   #    /\
===========================                  ===========================
Code:
Team Killing
(inside or outside base)  

===========================
#                         #
#      o      \o_         #
#      \+-->  /           #
#      /\   //            # 
#                         #    o      \o_
#                         #    \+-->  /
#                         #    /\   //
#                         #
===========================
Rules of Engagement - Non-Punishable Incidents

 

Code:

    Base Defense                                  Base Defense  
(soldier shoots enemy from defense)           (soldier shoots enemy trespasser)
==========================#                  ===========================
#          |              #                  #          |              #
#    o     |              #                  #          |              #   
#   <+-----|--------------#---------> o      #          |              #    
#   /\     |              #          /|\     #          |              #    
#-----------              #           /\     #-----------              #           
#                         #                  #    o            \o/     #    
#                         #                  #    <+--------- > |      #
#                         #                  #    /\           /\      #
===========================                  ===========================
Code:
Attack on Defense 
(enemy shoots into defense from outside base)
===========================
#          |              #     o 
#    o<----|--------------#-----+>
#   /|\    |              #     /\
#   /\     |              #
#-----------              #
#                         #
#                         #
#                         #
===========================
Settings

 

  • max_kick_votes

    (integer > 0) - maximum number of votes that a soldier can receive before being kicked.

    e.g if max_votes = 3, soldier is kicked that the 4th vote.

    [/*:m:qt36hr4f]

  • max_ban_votes

    (integer > 0) - maximum number of votes that a soldier can receive before being banned.

    e.g if max_votes = 3, soldier is banned that the 4th vote.

    [/*:m:qt36hr4f]

  • ban_minutes

    (integer > 0) - number of minutes to ban a player after being vote banned (bans are made by guid)

    e.g if max_votes = 3, soldier is banned that the 4th vote.

    [/*:m:qt36hr4f]

  • debug_mode

    true - shows debugging information whenever kill/death happens in a base zone

    false - no debugging information shown

    When debug mode is enabled, players in the admins_list see debug messages.

    The debug messages shows all information related to events that happen inside the bases.

    The format is as follows:

    (EVENT CATEGORY): [TEAM][email protected](Trespass%) [TEAM][email protected](Trespass%)

    [/*:m:qt36hr4f]

  • base_percent

    (float >= 0) - percent of overlap between base zone and solider location

    Soldier's location is approximated by a circle of 10 meter radius.

    This is basically a measure of how far the solider is into the zone.

    For example if you set it to 50%, it means that at least half of the circle has to overlap

    with the base zone for the soldier to be considered inside.

    [/*:m:qt36hr4f]

  • def_percent

    (float >= 0) - percent of overlap between defense zone and soldier location

    This is the equivalent of base_percent , but for defense zones.

    [/*:m:qt36hr4f]

  • yell_rape_kill

    (integer >= 0 ) - number of seconds to yell at killer and victim after base rape violation

    [/*:m:qt36hr4f]

  • yell_camp_kill

    (integer >= 0) - number of seconds to yell at killer and victim after base camping violation

    [/*:m:qt36hr4f]

  • yell_team_kill

    (integer >= 0) - number of seconds to yell at killer and victim after team kill violation

    [/*:m:qt36hr4f]

  • say_team_kill

    true - inform killer and victim (in chat box) of team kill violation

    false - do not inform killer or victim of team kill violation

    [/*:m:qt36hr4f]

  • say_rape_kill

    true - inform killer and victim (in chat box) of base raping violation

    false - do not inform killer or victim of base raping violation

    [/*:m:qt36hr4f]

  • say_camp_kill

    true - inform killer and victim (in chat box) of team base camping violation

    false - do not inform killer or victim of base camping violation

    [/*:m:qt36hr4f]

  • punish_rape_kill

    true - allows victim to punish the base raper

    false - forbids victim from punishing the base raper

    [/*:m:qt36hr4f]

  • punish_camp_kill

    true - allows victim to punish the base camper

    false - forbids victim from punishing the base camper

    [/*:m:qt36hr4f]

  • punish_team_kill

    true - allows victim to punish the team killer

    false - forbids victim from punishing the team killer

    [/*:m:qt36hr4f]

  • forgive_rape_kill

    true - allows victim to forgive the base raper

    false - forbids victim from forgiving the base raper

    [/*:m:qt36hr4f]

  • forgive_camp_kill

    true - allows victim to forgive the base camper

    false - forbids victim from forgiving the base camper

    [/*:m:qt36hr4f]

  • forgive_team_kill

    true - allows victim to forgive the team killer

    false - forbids victim from forgiving the team killer

    [/*:m:qt36hr4f]

  • kick_rape_kill

    true - allows victim to vote kick against the base raper

    false - forbids victim from vote kicking the base raper

    [/*:m:qt36hr4f]

  • kick_camp_kill

    true - allows victim to vote kick against the base camper

    false - forbids victim from vote kicking the base camper

    [/*:m:qt36hr4f]

  • kick_team_kill

    true - allows victim to vote kick against the team killer

    false - forbids victim from vote kicking the team killer

    [/*:m:qt36hr4f]

  • ban_rape_kill

    true - allows victim to vote ban against the base raper

    false - forbids victim from vote banning the base raper

    [/*:m:qt36hr4f]

  • ban_camp_kill

    true - allows victim to vote ban against the base camper

    false - forbids victim from vote banning the base camper

    [/*:m:qt36hr4f]

  • ban_team_kill

    true - allows victim to vote ban against the team killer

    false - forbids victim from vote banning the team killer

    [/*:m:qt36hr4f]

  • mock_suicide

    true - server mocks the soldier that suicided (private message)

    false- no message sent on suicide

    [/*:m:qt36hr4f]

  • slap_player

    true - allows soldiers to slap each other with a big smelly tuna fish

    false - forbids soldiers from slapping each other

    [/*:m:qt36hr4f]

  • insult_player

    true - allows soldiers to insult each other, random insult is sent privately

    false - forbids soldiers from insulting each other

    [/*:m:qt36hr4f]

  • default_zones

    true - ignores battle map zones, and uses the default zones from the settings file

    false - ignores zones from settings file, and uses zones from the battle map

    [/*:m:qt36hr4f]

  • admin_list

    (string) - comma separated list of soldiers that are allowed to modify/view plugin settings while

    in-game.

    [/*:m:qt36hr4f]

  • clan_whitelist

    (string) - comma separated list of clans that have immunity against punish, kick, and ban.

    [/*:m:qt36hr4f]

  • player_whitelist

    (string) - comma separated list of soldiers that have immunity against punish, kick, and ban.

    [/*:m:qt36hr4f]

  • ban_type

    GUID - ban players by EA GUID

    Name - ban players by EA soldier name

    IPAddress - ban players by IP Address

    [/*:m:qt36hr4f]

  • ban_duration

    Permanent - ban indefinitely

    Round - ban until the end of the current round

    Temporary - ban temporarily (you need to set ban_minutes as well)

    [/*:m:qt36hr4f]

  • ban_minutes

    (integer > 0) - Number of minutes to ban a player after being vote banned

    [/*:m:qt36hr4f]

Advanced Settings

 

Do not use these settings if you are just beginign to learn how to use this plugin. These are the settings that used to be in the InsanePunisher.cfg file prior to version 0.0.0.8

  • auto_punish_max

    (interger >= 0) - maximum number of punishments that a player can receive before being auto kicked

    For example, if the value of auto_punish_max is 3, the player will be kicked on the 4th punishment received

    If the value is 0, it means it's that auto kick is disabled.

    [/*:m:qt36hr4f]

  • auto_punish_rape_kill

    true - base raper is automatically punished, and victim is not allowed to take any action

    false - base raper is not automatically punished

    [/*:m:qt36hr4f]

  • auto_punish_team_kill

    true - team killer is automatically punished, and victim is not allowed to take any action

    false - team killer is not automatically punished

    [/*:m:qt36hr4f]

  • auto_punish_camp_kill

    true - base camper is automatically punished, and victim is not allowed to take any action

    false - bae camper is not automatically punished

    Note that when auto_punish_* settings are enabled, then the corresponding setting punish_* is ignored.

    [/*:m:qt36hr4f]

  • use_map_list

    true - only maps that are on the map_list are used by the plugin

    false - ignores the maps in the map_list

    [/*:m:qt36hr4f]

  • map_list

    (StringList) - list of maps that are used exclusively when use_map_list is enabled

    Supported maps are:

    [list:qt36hr4f]

  • cq_panama_canal

    [/*:m:qt36hr4f]

  • cq_laguna_alta

    [/*:m:qt36hr4f]

  • cq_atacama_desert

    [/*:m:qt36hr4f]

  • cq_arica_harbor

    [/*:m:qt36hr4f]

  • cq_white_pass

    [/*:m:qt36hr4f]

  • cq_nelson_bay

    [/*:m:qt36hr4f]

  • cq_laguna_presa

    [/*:m:qt36hr4f]

  • cq_port_valdez

    [/*:m:qt36hr4f]

  • cq_harvest_day

    [/*:m:qt36hr4f]

  • cq_oasis

    [/*:m:qt36hr4f]

  • cq_heavy_metal

    [/*:m:qt36hr4f]

  • cq_vantage_point

    [/*:m:qt36hr4f]

  • cq_hill_1337

    [/*:m:qt36hr4f]

  • cq_cao_son_temple

    [/*:m:qt36hr4f]

  • cq_phu_bai_valley

    [/*:m:qt36hr4f]

  • gr_valparaiso

    [/*:m:qt36hr4f]

  • gr_isla_inocentes

    [/*:m:qt36hr4f]

  • gr_arica_harbor

    [/*:m:qt36hr4f]

  • gr_white_pass

    [/*:m:qt36hr4f]

  • gr_nelson_bay

    [/*:m:qt36hr4f]

  • gr_laguna_presa

    [/*:m:qt36hr4f]

  • gr_port_valdez

    [/*:m:qt36hr4f]

  • gr_atacama_desert

    [/*:m:qt36hr4f]

  • gr_harvest_day

    [/*:m:qt36hr4f]

  • gr_oasis

    [/*:m:qt36hr4f]

  • gr_cold_war

    [/*:m:qt36hr4f]

  • gr_vantage_point

    [/*:m:qt36hr4f]

  • gr_hill_137

    [/*:m:qt36hr4f]

  • gr_cao_son_temple

    [/*:m:qt36hr4f]

  • gr_phu_bai_valley

    [/*:m:qt36hr4f]

All supported maps are included by default in the list, if you wish to selectively enable the plugin for certain maps then enable use_map_list and leave only the ones you wish in the map_list

[/*:m:qt36hr4f][*]slap_msg_list

(StringList) - list of messages used for the !slap command

[/*:m:qt36hr4f][*]mock_msg_list

(StringList) - list of messages used to mock a player after suicide

[/*:m:qt36hr4f][*]insult_msg_list

(StringList) - list of messages used for the !insult command

[/*:m:qt36hr4f][*]rape_kill_warn_list

(StringList) - ordered list of warning messages that are sent to base rapers after a violation.

[/*:m:qt36hr4f][*]team_kill_warn_list

(StringList) - ordered list of warning messages that are sent to team killers after a violation.

[/*:m:qt36hr4f][*]camp_kill_warn_list

(StringList) - ordered list of warning messages that are sent to base campers after a violation.

 

Note that the order of the messages in the warning lists is relevant.

The first message is sent when the first violation happends.

The second message is sent when the second violation happens, and so on.

[/*:m:qt36hr4f][/list:mad::qt36hr4f]

 

Public In-Game Commands

 

In-game commands are messages typed into the game chat box, which have special meaning to the

plugin. Commands must start with one of the following characters: !,@, or /. This plugin interprets the

following commands:

 

  • !punish [name-substring]

    This is the main command, and most fun of all. It allows victims to punish (kill) soldiers who violated the rules of engagement. If "!punish" is used without specifying the soldier name, then the last aggressor with ROE violation (against the victim) is punished. Punishments cannot be stacked. For example, if an aggressor team kills a victim twice, then the victim can only punish the aggressor once. However, punishments by different victims are stackable. For example, if an aggressor team kills two victims, and both decide to punish him, then the aggressor is punished twice consecutively. Note that if an aggressor is dead, punishments are queued and applied on re-spawn.

    [/*:m:qt36hr4f]

  • !votekick [name-substring]

    This is a lesser used command, but still powerful. It allows victims to cast votes against soldiers who violated the rules of engagement. If "!vote" is used without specifying the soldier name, then the last aggressor with ROE violation (against the victim) is voted against. Votes are stackable. For example, if an aggressor team kills a victim twice, he can vote once against the aggressor, with two votes being cast. When a victim casts a vote against an aggressor, all other victims of that aggressor, who have not taken action, are reminded to vote. This is similar to a traditional votekick, with the difference that only victims of the aggressor are allowed to vote.

    [/*:m:qt36hr4f]

  • !forgive [name-substring]

    This is a command of camaraderie. It allows victims to forgive soldiers who violated the rules of engagement. When forgiving, the victim waives the right to take action against the aggressor for all previous ROE violatons. This command is mostly used by soldiers forgiving teammates afer an accidental team kill.

    [/*:m:qt36hr4f]

  • !slap [name-substring]

    This command is just for fun. It allows soldiers to slap each other publicly. The type of slap is chosen randomly from the settings file.

    [/*:m:qt36hr4f]

  • !insult [name-substring]

    This is another useless, but fun command. It allows soldiers to privately insult each other. The pre-defined insults in the settings file are mostly jokingly insults. Insults are chosen at random.

    [/*:m:qt36hr4f]

  • !mystats

    This is a statistics command. It allows a soldier to view his rules of engagement violations, such as team killing, base raping, and base camping. It displays the name of the victims, together with the total and pending violations against each victim. Pending violations are those for which the victim has not yet taken action.

    [/*:m:qt36hr4f]

Admin In-Game Commands

 

These are the commands that only soldiers in the "admin_list" are allowed to execute. Reply messages generated by admin commands are sent only to the admin who executed the command.

 

  • !settings

    This command prints the values of all plugin variables on the chat box.

    [/*:m:qt36hr4f]

  • !set {variable} {value}

    This command is used for setting the value of this plugin's variables. If you omit the value, "true" is assumed.

    [/*:m:qt36hr4f]

  • !get {variable}

    This command prints the value of the specified variable.

    [/*:m:qt36hr4f]

  • !enable {variable-substring, variable-substring, ...}

    This command is a shortcut for enabling (setting to "true") multiple variables at the same time.

    For example, the following command:

    !enable punish

    results in all variables that contain the word "punish" being set to "true" e.g. punish_rape_kill, punish_camp_kill, and punish_team_kill

    [/*:m:qt36hr4f]

  • !disable {variable-substring, variable-substring, ...}

    This command is a shortcut for disabling (setting to "false") multiple variables at the same time.

    For example, the following command:

    !disable punish

    results in all variables that contain the word "punish" being set to "false" e.g. punish_rape_kill, punish_camp_kill, and punish_team_kill

    [/*:m:qt36hr4f]

  • !stats [name-substring]

    This command is used for obtaining statistics about soldiers rules of engagement violations.

    If no name is specified, it prints a summary of all soldiers' ROE violations on the chat box.

    If a name is specified, it prints a detailed report of that soldier's ROE violations. (similar to !mystats command)

    [/*:m:qt36hr4f]

  • !zones

    This is a debugging command. It shows the list of zones active for the current map. It is useful when using custom map zones, to help you see the zones that have been detected.

    [/*:m:qt36hr4f]

 

Conquest Default Map Zones

 

Posted ImagePosted Image

Atacama US base, Atacama RU base

 

Posted ImagePosted Image

Laguna Presa US base, Laguna Presa RU base

 

Posted ImagePosted Image

Port Valdez US base, Port Valdez RU base

 

Posted ImagePosted Image

Panama Canal US base, Panama Canal RU base

 

Posted ImagePosted Image

Arica Harbor US base, Arica Harbor RU base

 

Posted ImagePosted Image

Laguna Alta US base, Laguna Alta RU base

 

Posted ImagePosted Image

Nelson Bay US base, Nelson Bay RU base

 

Posted ImagePosted Image

White Pass US base, White Pass RU base

 

Posted ImagePosted Image

Heavy Metal US base, Heavy Metal RU base

 

Posted ImagePosted Image

Harvest Day US base, Harvest Day RU base

 

Posted ImagePosted Image

Oasis US base, Oasis RU base

 

Posted ImagePosted Image

Phu Bai Valley US base, Phu Bai Valley NVA base

 

Posted ImagePosted Image

Hill 137 US base, Hill 137 NVA base

 

Posted ImagePosted Image

Cao Son Temple US base, Cao Son Temple NVA base

 

Posted ImagePosted Image

Vantage Point US base, Vantage Point NVA base

 

Posted ImagePosted Image

Operation Hastings US base, Operation Hastings NVA base

 

 

Rush Default Map Zones

 

Posted ImagePosted Image

Atacama US base, Laguna Presa US base

 

Posted ImagePosted Image

Port Valdez RU base, Nelson bay RU base

 

Posted ImagePosted Image

White Pass US base, Arica Harbor US base

 

Posted ImagePosted Image

Isla Inocentes US base, Valparaiso US base

 

Posted ImagePosted Image

Oasis US base, Coldwar RU base

 

Posted Image

Harvest Day US base

 

Posted ImagePosted Image

Phu Bai Valley US base, Hill 137 US base

 

Posted ImagePosted Image

Vantage Point NVA base, Cao Son Temple US base

 

Posted Image

Operation Hastings US base

 

Other Notes

 

I wrote this plugin mainly as an exercise for me to learn C#, so don't expect the code to be elegant or the most efficient. Finally, thanks to the Insane Gamers Asylum for allowing me to test the plugin on ~IgA~ servers, and to Phogue for PRoCon.

 

Change Log

  • 0.0.1.0

    - fixed defect where players in whitelist were auto-punishable by other players in whitelist

    [/*:m:qt36hr4f]

  • 0.0.1.0

    - remove variable "advanced_mode" (Advanced Settings menu will always be visible now)

    - added variable "auto_punish_max" for for enabling auto kicking after X punishments

    - added default zones for Operation Hastings (Rush & Conquest)

    - added variable reset_map_list to for re-populating the map_list

    - changed logic so that players with immunity can also punish others with immunity

     

    Release Notes:

    If you are using the map list feature, you will need to either do a map list reset, or

    manually add the new map names to it:

     

    gr_operation_hastings

    cq_operation_hastings

     

    [/*:m:qt36hr4f]

  • 0.0.0.9

    - changed plugin structure to use Plugin API 2.0

    - added support for Conquest & Rush BCBC2: Vietnam maps (except Hastings)

    - added support for two new map zone tags NVA_BASE, NVA_DEFENSE

    - added new variables use_map_list, and map_list for selectively choosing maps

    - updated weapons/vehicles for BFBC2:Vietnam

    - updated documentation with screenshots of BFBC2:Vietnam default map zones

    - fixed bug where if auto_punish_* was enabled, other punish_* settings were still being honored

     

    [/*:m:qt36hr4f]

  • 0.0.0.8

    - removed config file InsanePunisher.cfg ... no longer needed

    - complete re-design of the settings GUI

    - modified installation instructions

    - added "auto_punish_*" varaibles

    - modified message for cases when "auto_punish_*" is enabled

    - added "*_warn_list" variables

    - added "slap_msg_list", "mock_msg_list", "insult_msg_list"

    - added variables "ban_duration" and "ban_type"

    - added "advanced_mode" variable

    - fixed bug with players having immunity if clan_whitelist was empty

    - fixed documentation bugs and updated documentation

    [/*:m:qt36hr4f]

  • 0.0.0.7

    - fixed typo in message when player casts multiple votes to kick or ban

    - added base and defense zones for remaining Oasis, and Harvest Day (Conquest)

    - added base and defense zones for Oasis, Harvest Day, and Cold War (Rush)

    [/*:m:qt36hr4f]

  • 0.0.0.6

    - skipped version 0.0.0.5 to keep up with the PRoCon packages

    - renamed variables vote_camp_kill, vote_team_kill, vote_rape_kill to kick_camp_kill, kick_team_kill, and kick_rape_kill

    - added variables ban_camp_kill, ban_team_kill, ban_rape_kill, and ban_minutes

    - added command !voteban

    - added variables clan_whitelist, player_whitelist

    - added RU_BASE, and US_BASE zones for Heavy Metal conquest

    [/*:m:qt36hr4f]

  • 0.0.0.4

    - Fix bug with admin list only allowing one name

    - Reduced Arica Harbor default US_BASE zone

    - Expanded the default RU_BASE in Laguna Alta to include train bridge (100%)

    - Put back re-calibrated Rush default zones (please report any defects in zone detection)

    [/*:m:qt36hr4f]

  • 0.0.0.3

    - added new plugin variables for yelling at players when a violation occurs

    - added baser_percent, and def_perecent plugin variables (see details in the Settings section)

    - added "debug_mode" variable

    - renamed "warn_*" plugin variables to "say_*"

    - updated rules of engagement to not allow trespasser to kill soldier in defense zone

    - removed default zones for Rush, and re-calibrated Conquest zones

    - Changed PIP (Point-In-Polygon) algorithm to use ray casting Instead of PRoCon's trespass percentage

    [/*:m:qt36hr4f]

  • 0.0.0.2

    - added plugin variable "settings_file" for specifying the location of the settings file

    - added function to cleanup the loaded settings when plugin is disabled

    - removed forgotten debugging code that was counting a suicide inside the base as base camping

    - changed installation instructions

     

    [/*:m:qt36hr4f]

  • 0.0.0.1 - original release[/*:m:qt36hr4f]

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

Share this post


Link to post

Originally Posted by HelloKitty*:

 

That sounds interesting so far. I got 1 question left at this time about the zones: Is the "defense" zone a part of the "base" zone or the other way around? [[base]defense] or [[defense]base] ?

 

EDIT: forget it. Acloser look to your pics says all... :mad:ops:

 

Will test it!


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

Share this post


Link to post

Originally Posted by AngelFireDK*:

 

as I understand it defence are those areas where people are allowed to shoot in and out like AA guns from base where you would allowe these to be taken out and they are allowed to shoot out like atacame dessert or you would like the sniper tower in arica to be used so sniper can shoot out and they are also allowed to be taken out.


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

Share this post


Link to post

Originally Posted by micovery*:

 

as I understand it defence are those areas where people are allowed to shoot in and out like AA guns from base where you would allowe these to be taken out and they are allowed to shoot out like atacame dessert or you would like the sniper tower in arica to be used so sniper can shoot out and they are also allowed to be taken out.

That is correct, defense zones are areas inside the base where punishing and votekicking rules don't apply.

When someone makes a kill from a defense zone. The killer, and the victim are both sent private messages eg:

 

defended the base from

or

died honorably defending the base from

 

These messages are hard coded, if you want an option to modify them or turn them off, I can put that in.

 

The reason why the defense zone should be inside the base is because if it's is outside, it does not do anything. The defense rules are only applied to the areas where base and defense zones overlap.

 

The first time someone is killed or kills from a defense zone, the plugin caches it, in order to remember it. Then, the next time similar incident happens, it checks if it's inside a defense zone or not.

 

Finally, the default_zones provided have defense zones for all conquest maps. For example in Atacama, on the US side, the AA and AT in the back are marked as defense zones, and in the RU side, the AA on the back, and the AT on the front are defense zones.


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

Share this post


Link to post

Originally Posted by AngelFireDK*:

 

just a suggestion would it be possible to get you to code an option if you wanna the warning in say or yell. 90% of our players didn't notice the punish option in say when they got baseraped.

 

so if I set up a RU defence in ru base then in the defence zone ru can take out enemys that enter that part of their base. But enemy taking RU out in that defence area will still get baserape warning?

 

think you forgot one AT/AA on each side one more in the back of RU on one infront of US base


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

Share this post


Link to post

Originally Posted by micovery*:

 

if I set up a RU defence in ru base then in the defence zone ru can take out enemys that enter that part of their base. But enemy taking RU out in that defence area will still get baserape warning?

It does not matter who kills who, as long as the RU soldier is inside an RU_DEFENSE zone, neither killer or victim can get punished. (regardless of whether the US soldier trespassed or not).

 

One improvement to the current behavior would be:

If the US soldier trespassed into RU_BASE to kill the guy who is inside RU_DEFENSE he can get punished (he should not be going into the enemy base anyway)

 

This only would apply to infantry. Helicopters should be allowed to trespass into the base to kill someone in a defense zone. They usually trespass while doing bombing-dives to kill soldiers in the AAs.

 

just a suggestion would it be possible to get you to code an option if you wanna the warning in say or yell. 90% of our players didn't notice the punish option in say when they got baseraped.

I will add an option to yell or say for each of the incidents type (base raping/base camping/team killing).

 

think you forgot one AT/AA on each side one more in the back of RU on one infront of US base

Yep, I will add those to the default zones. Let me know if there are other places that need to be added, of if a default zone is too small or too wide. I know for fact that the base zones in Laguna Presa (conquest), are a bit too big. (players keep complaining about it, specially snipers).

 

You can always define your own zones in the battle map in the mean-time while I add the new ones. Just turn set "default_zones" to "false", and create the zones you need.


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

Share this post


Link to post

Originally Posted by AngelFireDK*:

 

only atascame we use your mapzones because of the aa/at guns otherwise we use our own zones. Actually on laguna presa ours are a little bit bigger and we don't get any complains.


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

Share this post


Link to post

Originally Posted by AngelFireDK*:

 

we just tried it out for 2 days and got big problems people getting baserape or basecamping warnings when not any where near the base, but shooting people at the flag zones. Including myself.

 

Never got that issue with custom warning builder and with excat same zones.


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

Share this post


Link to post

Originally Posted by micovery*:

 

Which maps did you try it on? Did you use the default zones? Or your own zones?


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

Share this post


Link to post

Originally Posted by AngelFireDK*:

 

first day with yours, next day with ours and both days people got baserape or basecamping warning at flag zones. Maps we tried arica habor, atacama dessert, pnama canal, laguna presa.

 

With customwarnning builder everything works just fine.


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

Share this post


Link to post

Originally Posted by micovery*:

 

I have added the changes you requested. 1. yelling, 2. make punishable killing soldier in defense zone while already trespassing base, 3. debugging info printed.

 

I found multiple logic mistakes in the 0.0.0.2 version, where I was not taking the trespass percentage into account correctly. Now you can modify those percentages to your liking. You can turn on debug_mode, and suicide in different locations to see whether or not the zones are being detected correctly.

 

Something that you have to take into account is that with Custom Warning Generator, shooting into the base from outside, does not count as base raping... you have to be inside the area (I believe). With this plugin cross border shooting is punishable unless you are killing someone in a defense zone.

 

Try it out when u have a chance, and provide feedback, to help fix issues. Thanks!

 

For immediate feedback, add me on steam: ~IgA~micovery


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

Share this post


Link to post

Originally Posted by AngelFireDK*:

 

with customwarning builder it is baserape shooting from outside, since you can set diffrent values over how long distance it will count as baserape. currently ours are set to 1000m.

 

I will tryout you updated plugin friday.

 

sorry don't use steam haven't used it for ages after I stoped playing cs.


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

Share this post


Link to post

Originally Posted by AngelFireDK*:

 

just a suggestion when making sucide in RU base at closed sapwnpoint to Ait it says 75%. The spawpoint at the train it says 92,5%. under the bridge it says 100%. maybe it should be a bit bigger the zone so all sapwnpoints is 100% inside.

 

Futhermore the base of US in arica should probally be a little bit futher back so it dosn't include hills. but ends at the gate and the walls. I don't know about you but we have players camping with sniper just a couple of metes from the walls of US base behind stones. Etither that or setup defence zones.

 

a bug: when adding more that one admin to the admin list the debug or admin commands dosen't work an ex. whern I type in my Nick and the next line my co. leader it shows up as AngelFireDKStynX.

 

But so far the zones seems to react as they should. have been ruing around on arica doing suicide with debug on.


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

Share this post


Link to post

Originally Posted by AngelFireDK*:

 

ok seems to run fine today. But would really like to be able to add more than one admin in the adminlist atm if adding more than one, then the admin commands and such dosen't work and list all admin as one long nick.


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

Share this post


Link to post

Originally Posted by micovery*:

 

What is the string you are putting in the admins list? Are you separating the names with commas ? I'll try to fix the bug later today, and upload it.


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

Share this post


Link to post

Originally Posted by AngelFireDK*:

 

no put one on each line. I'll try with the comma part and see if that works


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

Share this post


Link to post

Originally Posted by SinBad-OTF*:

 

1. Not sure why you removed the default zones in RUSH, they were working just fine on our server.

2. Using custom zones, when I type !zones, it says no zones loaded. It showed it once, now it doesn't at all and I believe I have it all set correctly.

2. Did you remove the 'automatic' kill ?

 

//SinBad


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

Share this post


Link to post

Originally Posted by AngelFireDK*:

 

The adminlist doesn't work as it should when more than one in there. Have also tried as suggested with commas. But it dosen't write it to the configfile and resets to first admin in the list. When just adding one it chages and write to the config file, just not when 2 or more in the list.


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

Share this post


Link to post

Originally Posted by micovery*:

 

Hey I was able to reproduce it, and fixed it yesterday. Indeed it was only allowing one admin on the list. (unless you set it in-game).

 

I have also made the zone changes you suggested for Arica, and Laguna Alta (under train bridge). Finally I added the re-calibrated rush default zones.

 

I just haven't uploaded the new version yet, as it was being tested on IgA servers. Normally, I leave it testing for a couple of days to catch major bugs before uploading it.

 

Look for 0.0.0.4 release tonight, the changes will be there.


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

Share this post


Link to post

Originally Posted by AngelFireDK*:

 

sounds great looking forward to try it out.


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

Share this post


Link to post

Originally Posted by SinBad-OTF*:

 

Installed the new version 0.0.0.4 but it says 0.0.0.3 still. Verified the date/time stamp to be 04 October. ?

 

//SinBad


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

Share this post


Link to post

Originally Posted by micovery*:

 

Opps, did not update version string in the code :lol: The actual code changes for 0.0.0.4 are there though, just the incorrect version string. Good thing you noticed, otherwise it would have gone from 0.0.0.3 to 0.0.0.5 directly jaja. Will fix the version number and re-upload.

 

Also, has anyone tried the default Rush zones? I am asking because I did not test them extensively. I just made sure that there no places that were blatantly wrong.

 

(EDIT: already uploaded with fixed version string)


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

Share this post


Link to post

Originally Posted by AngelFireDK*:

 

The RU base on Arica needs to be bigger. Ex one of the spawn points are outside the zone. the first house you stumble upon on the left you sometimes sawn behind and that is atm outside the zone it should be the only spawnpoint that far away ahead compared to the other sapwnpoints.


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

Share this post


Link to post

Originally Posted by micovery*:

 

Can you take a screenhost and highlight/draw over the areas you suggest should be part of the RU base in Arica.

 

Additionally, what about the bridge area? Should the entire bridge length be considered RU base?


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

Share this post


Link to post

Originally Posted by AngelFireDK*:

 

here is the house marked with red square. Sometimes you spawn behind that house. Sometimes you also spawn infront of the first train wagon. So I would probally dawn the line so it includes all trains and that should also include the house if you drawn the line from the train to the left.

 

yes I would probally include the whole bridge, incl trains and under the bridge. Sometimes ppl do wait for the atv to spawn under bidge and have seen US sniper camping in the big building besides the RU base and ppl are easy targets if the whole base isn't protected.


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

Share this post


Link to post

Originally Posted by Kraxus187*:

 

I had this plugin installed on our server over this last weekend and it only half works.

 

I have base rape and base camping both set to "true" for punishing and base zones set to "default".

(We have team damage and voting off as default so these are irrelevant)

I did have base zones set previously, as I had the Basic Mapzone plugin running but these have been deleted so as not to cause any kind of coflict.

 

The plugin is clearly running as it identifies the punish/slap/insults commands but :

 

base rape / base camp response is that this punishment cannot happen until the named player rapes/camps...even though the death was clearly inside the base zone but not in a defense zone.

 

insult/slap response is "the server does not know any insults" or "slaps" as the case may be.

 

Any help would be appreciated.


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

Share this post


Link to post

Originally Posted by micovery*:

 

Please reply responding to the following questions, so it's easier for me to help you:

 

What version of the plugin are you using?

What version of ProCon are you using?

Did you get the plugin through ProCon packages, or did you download and install it manually?

Did you try enabling debugging mode, what outputs did you see in the chat box?

Did you try using the !zones command?


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

Share this post


Link to post

Originally Posted by Kraxus187*:

 

Okay..I know what the problem is and am getting in touch with my host guy to fix it...

 

the "settings_file" line is set by default to the file location YOU used ... "C:/Documents and Settings\Junior\Desktop\New Folder\Configs\InsanePunisher.cfg"... instead of just looking for Configs/InsanePunisher.cfg (in relation to the exe) which it shows in the Plugin Settings Window on the layer Control.

 

I set it up locally (on my machine) to test it and this fixed it so I just have to get him to reset it in relation to his file structure.

I'll post when I know if this fixes it.

 

 

*EDIT*

 

yepp..that fixed it...works fine now.


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

Share this post


Link to post

Originally Posted by micovery*:

 

That's good! I am glad you got it working.

Please keep reporting any problems you see related to this plugin on this thread, I appreciate it.

 

As to the path for the config file, the plugin internally tries to get the current working directory like this:

 

Code:

settings_file = Directory.GetCurrentDirectory() + @"\" + settings_file;
Normally, in Windows you go to the directory where the binary is, and double click on it, so the current directory is the same as the directory where the process was started. However, if you start the process from a different directory (through console), I think you will get a different CWD. Also, if ProCon internally calls SetCurrentDirectory, and does not restore it back, then it will show a different CWD.

 

I come from a Linux background, all these are assumptions based on the POSIX getcwd, and chdir functions.

Ideally I would want something like C's argv[0], which is the actual path to the process's binary.

I do not know what is the C# equivalent of argv[0]. I'll search around msdn, and see what's available.


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

Share this post


Link to post

Originally Posted by Phogue*:

 

I do not know what is the C# equivalent of argv[0]. I'll search around msdn, and see what's available.

SetCurrentDirectory is never called within procon, it gets confusing if you start making minor exceptions everywhere. But it does not matter because the plugins are loaded in another appdomain and have the base directory of /Plugins/

 

AppDomain.CurrentDomain.BaseDirectory will get the working directory without the assembly name, similar to argv[0].

Code:

settings_file = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, settings_file);

* 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
Sign in to follow this  
  • Our picks

    • I wanted I let you know that I am starting to build out the foundation for the hosting services that I talked about here. The pricing model I was originally going for wasn't going to be suitable for how I want to build it. So instead I decided to offer each service as it's own product instead of a package deal. In the future, hopefully, I will be able to do this and offer discounts to those that choose it.

      Here is how the pricing is laid out for each service as well as information about each. This is as of 7/12/2020.

      Single MySQL database (up to 30 GB) is $10 USD per month.



      If you go over the 30 GB usage for the database then each additional gigabyte is charged at $0.10 USD each billing cycle. If you're under 30GB you don't need to worry about this.


      Databases are replicated across 3 zones (regions) for redundancy. One (1) on the east coast of the USA, One (1) in Frankfurt, and One (1) in Singapore. Depending on the demand, this would grow to more regions.


      Databases will also be backed up daily and retained for 7 days.




      Procon Layer will be $2 USD per month.


      Each layer will only allow one (1) game server connection. The reason behind this is for performance.


      Each layer will also come with all available plugins installed by default. This is to help facilitate faster deployments and get you up and running quickly.


      Each layer will automatically restart if Procon crashes. 


      Each layer will also automatically restart daily at midnight to make sure it stays in tip-top shape.


      Custom plugins can be installed by submitting a support ticket.




      Battlefield Admin Control Panel (BFACP) will be $5 USD per month


      As I am still working on building version 3 of the software, I will be installing the last version I did. Once I complete version 3 it will automatically be upgraded for you.





      All these services will be managed by me so you don't have to worry about the technical side of things to get up and going.

      If you would like to see how much it would cost for the services, I made a calculator that you can use. It can be found here https://ezrcon.com/calculator.html

       
      • 10 replies
    • I have pushed out a new minor release which updates the geodata pull (flags in the playerlisting). This should be way more accurate now. As always, please let me know if any problems show up.

       
      • 6 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.