Jump to content

Insane Limits - Examples


ImportBot

Recommended Posts

Originally Posted by Mootart*:

 

Here is the final code for @shownext:

Code:

/* BF3 friendly map names, including B2K */
	Dictionary<String, String> Maps = new Dictionary<String, String>();
	Maps.Add("MP_001", "Grand Bazaar");
	Maps.Add("MP_003", "Teheran Highway");
	Maps.Add("MP_007", "Caspian Border");
	Maps.Add("MP_011", "Seine Crossing");
	Maps.Add("MP_012", "Operation Firestorm");
	Maps.Add("MP_013", "Damavand Peak");
	Maps.Add("MP_017", "Noshahr Canals");
	Maps.Add("MP_018", "Kharg Island");
	Maps.Add("MP_Subway", "Operation Metro");
	Maps.Add("XP1_001", "Strike At Karkand");
	Maps.Add("XP1_002", "Gulf of Oman");
	Maps.Add("XP1_003", "Sharqi Peninsula");
	Maps.Add("XP1_004", "Wake Island");

/* BF3 friendly game modes, including B2K */
	Dictionary<String, String> Modes = new Dictionary<String, String>();    
	Modes.Add("ConquestLarge0", "Conquest");
	Modes.Add("ConquestSmall0", "Conquest");
	Modes.Add("ConquestSmall1", "Conquest Assault");
	Modes.Add("RushLarge0", "Rush");
	Modes.Add("SquadRush0", "Squad Rush");
	Modes.Add("SquadDeathMatch0", "Squad Deathmatch");
	Modes.Add("TeamDeathMatch0", "Team Deathmatch");
    
plugin.ConsoleWrite(plugin.R("%p_n% wants to know the next map"));

if (Maps.ContainsKey(server.NextMapFileName) && Modes.ContainsKey(server.NextGamemode))
{	plugin.SendGlobalMessage( "The next map is " + Maps[server.NextMapFileName] + " on " + Modes[server.NextGamemode]);
	plugin.SendGlobalMessage( "The current round is " + (server.CurrentRound+1) + " of " + server.TotalRounds);
	
if (server.NextMapFileName == "MP_Subway")
	plugin.SendGlobalMessage( Maps[server.NextMapFileName] + " will have 2 rounds " );
	
if (server.NextMapFileName == "MP_001")
	plugin.SendGlobalMessage( Maps[server.NextMapFileName] + " will have 2 rounds " );	}

 

How do you set this? first check to expression? and evaluation onroundover? please let use know thank you so much for this

* Restored post. It could be that the author is no longer active.
Link to comment
  • Replies 1.4k
  • Created
  • Last Reply

Originally Posted by HexaCanon*:

 

Here is the final code for @shownext:

Code:

/* BF3 friendly map names, including B2K */
	Dictionary<String, String> Maps = new Dictionary<String, String>();
	Maps.Add("MP_001", "Grand Bazaar");
	Maps.Add("MP_003", "Teheran Highway");
	Maps.Add("MP_007", "Caspian Border");
	Maps.Add("MP_011", "Seine Crossing");
	Maps.Add("MP_012", "Operation Firestorm");
	Maps.Add("MP_013", "Damavand Peak");
	Maps.Add("MP_017", "Noshahr Canals");
	Maps.Add("MP_018", "Kharg Island");
	Maps.Add("MP_Subway", "Operation Metro");
	Maps.Add("XP1_001", "Strike At Karkand");
	Maps.Add("XP1_002", "Gulf of Oman");
	Maps.Add("XP1_003", "Sharqi Peninsula");
	Maps.Add("XP1_004", "Wake Island");

/* BF3 friendly game modes, including B2K */
	Dictionary<String, String> Modes = new Dictionary<String, String>();    
	Modes.Add("ConquestLarge0", "Conquest");
	Modes.Add("ConquestSmall0", "Conquest");
	Modes.Add("ConquestSmall1", "Conquest Assault");
	Modes.Add("RushLarge0", "Rush");
	Modes.Add("SquadRush0", "Squad Rush");
	Modes.Add("SquadDeathMatch0", "Squad Deathmatch");
	Modes.Add("TeamDeathMatch0", "Team Deathmatch");
    
plugin.ConsoleWrite(plugin.R("%p_n% wants to know the next map"));

if (Maps.ContainsKey(server.NextMapFileName) && Modes.ContainsKey(server.NextGamemode))
{	plugin.SendGlobalMessage( "The next map is " + Maps[server.NextMapFileName] + " on " + Modes[server.NextGamemode]);
	plugin.SendGlobalMessage( "The current round is " + (server.CurrentRound+1) + " of " + server.TotalRounds);
	
if (server.NextMapFileName == "MP_Subway")
	plugin.SendGlobalMessage( Maps[server.NextMapFileName] + " will have 2 rounds " );
	
if (server.NextMapFileName == "MP_001")
	plugin.SendGlobalMessage( Maps[server.NextMapFileName] + " will have 2 rounds " );	}
How do you set this? first check to expression? and evaluation onroundover? please let use know thank you so much for this
myrcon.net/...insane-limits-examples#entry18480
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Mootart*:

 

This limit will check for how many times a player made non-kife kills. On the first kill, it will send a warning on chat, on the second kill, it will kick the player.

 

 

Set limit to evaluate OnKill, set action to None

 

Set first_check to this Expression:

 

Code:

! Regex.Match(kill.Weapon, @"(Melee|Knife)", RegexOptions.IgnoreCase).Success
Set second_check to this Code:

 

Code:

double count = limit.Activations(player.Name);

     if (count == 1)
         plugin.SendGlobalMessage(plugin.R("%p_n%, this is a knife only server, do not use %w_n% again! Next time kick"));
     else if (count > 1)
         plugin.KickPlayerWithMessage(player.Name, plugin.R("%p_n%, kicked you for using %w_n% on knife only server"));
     
     return false;
Please Correct me if im wrong.

 

! Regex.Match(kill.Weapon, @"(Melee|Knife)", RegexOptions.IgnoreCase).Success && server.MapFileName == "MP_011" && Regex.Match(server.Gamemode,@"(TeamDeathMatch0)", RegexOptions.IgnoreCase).Success

 

i just want knife only on mp011 map on tdm match.

i dont know if i do it right!

 

thanks for the help!

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

Originally Posted by HexaCanon*:

 

it is correct but put brackets so you don't negate the whole expression

 

Code:

(!Regex.Match(kill.Weapon, @"(Melee|Knife)", RegexOptions.IgnoreCase).Success) && (server.MapFileName == "MP_011") && (Regex.Match(server.Gamemode,@"(TeamDeathMatch0)", RegexOptions.IgnoreCase).Success)
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Bl1ndy*:

 

This example uses two limits, one to announce admin's when they join, the other to provide an in-game command that allows players to ask for a list of admins with !adminlist. Requires 0.0.0.7 or later. Note: These examples compiled successfully, but I didn't try them to see if they worked.

 

Preparation

 

Set use_custom_lists to True and create a new list with these parameters:

 

Code:

name = admins
       data = name1, name2, name3, ...
Note: The names in the list must be spelled exactly as the soldier name of the player, without a tag. If the name is some crazy l337|

 

Admin Announcer Limit

 

Create a new limit to evaluate OnJoin and set action to Say

 

Set first_check to this Expression:

 

Code:

( plugin.isInList(player.Name, "admins") )
Leave second_check Disabled.

 

Set these action specific parameters:

 

Code:

say_message: Admin %p_fn% has just joined!
      say_audience: All
      say_delay: 60
There's a minimum of about a minute between the join and spawn, depending on how much load-out and squad changing the player does, so wait 60 seconds before issuing the say so that they can see the greeting too.

 

In-Game Admin List Command

 

Create a new limit to evaluate OnAnyChat and set action to None

 

Set first_check to this Expression:

 

Code:

( plugin.IsInGameCommand(player.LastChat) )
Set second_check to this Code:

 

Code:

/* Extract the command */
String command = plugin.ExtractInGameCommand(player.LastChat);

/* Sanity check the command */
if (null == command || command.Length == 0)
    return false;

/* Parse the command */
if (Regex.Match(command, "adminlist", RegexOptions.IgnoreCase).Success) {
    String adminList = "Admins: ";
    bool found = false;
    List<PlayerInfoInterface> players = new List<PlayerInfoInterface>();
    players.AddRange(team1.players);
    players.AddRange(team2.players);
    if (team3.players.Count > 0)
        players.AddRange(team3.players);
    if (team4.players.Count > 0)
        players.AddRange(team4.players);

    foreach (PlayerInfoInterface p in players) {
        if (plugin.isInList(p.Name, "admins")) {
            if (found)
               adminList = adminList + ", " + p.Name;
            else
               adminList = adminList + p.Name;
            found = true;
        }
    }
    if (found)
        plugin.SendSquadMessage(player.TeamId, player.SquadId, adminList);
}

return false;
For the example list of admins given above, the chat output will look like this:

 

Admins: name1, name2, name3

I did everything exactly like it's written here but still i see: Admin %p_fn% has joined the game. Instead of Admin Bl1ndy has joined the game. Any ideas?
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Mootart*:

 

I did everything exactly like it's written here but still i see: Admin %p_fn% has joined the game. Instead of Admin Bl1ndy has joined the game. Any ideas?

change the red one with %p_n%

 

Edit:

Set these action specific parameters:

say_message: Admin %p_fn% has just joined!

say_audience: All

say_delay: 60

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

Originally Posted by Mootart*:

 

it is correct but put brackets so you don't negate the whole expression

 

Code:

(!Regex.Match(kill.Weapon, @"(Melee|Knife)", RegexOptions.IgnoreCase).Success) && (server.MapFileName == "MP_011") && (Regex.Match(server.Gamemode,@"(TeamDeathMatch0)", RegexOptions.IgnoreCase).Success)
thanks mate for the quick reply.. will check it out and will let you know if have any issue about it.

 

Cheers

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

Originally Posted by Singh400*:

 

sir but i was looking for like it will automatically display the info next map. if the round is nearly finish.

...* is what you are looking for.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PapaCharlie9*:

 

I did everything exactly like it's written here but still i see: Admin %p_fn% has joined the game. Instead of Admin Bl1ndy has joined the game. Any ideas?

There seems to be a bug with Insane Limits. Occasionally the replacements fail. Try changing %p_fn% to %p_n% to see if that helps and let me know what happens.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Bl1ndy*:

 

There seems to be a bug with Insane Limits. Occasionally the replacements fail. Try changing %p_fn% to %p_n% to see if that helps and let me know what happens.

Working.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Damien720*:

 

is there a way to copy my limits from one PC to a 2nd with out rewriting them?

 

i see a file called (InsaneLimits_216.xxx.xxx.101_2xx00) is that my file i need to use to copy?

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

Originally Posted by Singh400*:

 

is there a way to copy my limits from one PC to a 2nd with out rewriting them?

 

i see a file called (InsaneLimits_216.xxx.xxx.101_2xx00) is that my file i need to use to copy?

Yes, just copy that file. And rename it if need be.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Mootart*:

 

Guys would this work? Using ...* & ...* as a template.

 

I'm trying to announce map and gamemode near the end of the round.

 

Set first_check to this Expression:

 

Code:

( team1.RemainTicketsPercent < 10 || team2.RemainTicketsPercent < 10 )
Set second_check to this Code:

 

Code:

if (limit.Activations() > 2)
        return false;

/* BF3 friendly map names, including B2K */
    Dictionary<String, String> Maps = new Dictionary<String, String>();
    Maps.Add("MP_001", "Grand Bazaar");
    Maps.Add("MP_003", "Teheran Highway");
    Maps.Add("MP_007", "Caspian Border");
    Maps.Add("MP_011", "Seine Crossing");
    Maps.Add("MP_012", "Operation Firestorm");
    Maps.Add("MP_013", "Damavand Peak");
    Maps.Add("MP_017", "Noshahr Canals");
    Maps.Add("MP_018", "Kharg Island");
    Maps.Add("MP_Subway", "Operation Metro");
    Maps.Add("XP1_001", "Strike At Karkand");
    Maps.Add("XP1_002", "Gulf of Oman");
    Maps.Add("XP1_003", "Sharqi Peninsula");
    Maps.Add("XP1_004", "Wake Island");
    
    /* BF3 friendly game modes, including B2K */
    Dictionary<String, String> Modes = new Dictionary<String, String>();    
    Modes.Add("ConquestLarge0", "Conquest64");
    Modes.Add("ConquestSmall0", "Conquest");
    Modes.Add("ConquestSmall1", "Conquest Assault");
    Modes.Add("RushLarge0", "Rush");
    Modes.Add("SquadRush0", "Squad Rush");
    Modes.Add("SquadDeathMatch0", "Squad Deathmatch");
    Modes.Add("TeamDeathMatch0", "Team Deathmatch");
    
    if (Maps.ContainsKey(server.NextMapFileName) && Modes.ContainsKey(server.NextGamemode))
        plugin.SendGlobalMessage( " The next map will be " + Maps[server.NextMapFileName]+ " on " + Modes[server.NextGamemode] );
yes this one but what should i set on the evaluation?
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Matt-One*:

 

Hello,

i have the limit for kill/kick/ban people when they use RPG or other weapon on infantry, i set this on subway but i would like to add other maps, here is the limit :

 

Code:

Regex.Match(kill.Weapon, @"smaw|rpg|m320", RegexOptions.IgnoreCase).Success && server.MapFileName.StartsWith("MP_Subway")
but if i add more maps :

 

Code:

Regex.Match(kill.Weapon, @"smaw|rpg|m320", RegexOptions.IgnoreCase).Success && server.MapFileName.StartsWith("MP_Subway|MP_001|MP_011")
the limit stop to work in all the maps don't kicking anybody...how can i do it?

 

Thank u.

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

Originally Posted by Singh400*:

 

yes this one but what should i set on the evaluation?

Sorry. The settings are:-

 

Set limit evaluation to OnSpawn, Set action to None.

 

Hello,

i have the limit for kill/kick/ban people when they use RPG or other weapon on infantry, i set this on subway but i would like to add other maps, here is the limit :

 

Code:

Regex.Match(kill.Weapon, @"smaw|rpg|m320", RegexOptions.IgnoreCase).Success && server.MapFileName.StartsWith("MP_Subway")
but if i add more maps :

 

Code:

Regex.Match(kill.Weapon, @"smaw|rpg|m320", RegexOptions.IgnoreCase).Success && server.MapFileName.StartsWith("MP_Subway|MP_001|MP_011")
the limit stop to work in all the maps don't kicking anybody...how can i do it?

 

Thank u.

I don't think you are using the OR clause correctly. I think it needs to be || instead of just one |. Try this:-

 

Code:

Regex.Match(kill.Weapon, @"smaw|rpg|m320", RegexOptions.IgnoreCase).Success && server.MapFileName.StartsWith("MP_Subway[b]||[/b]MP_001[b]||[/b]MP_011")
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PapaCharlie9*:

 

I don't think you are using the OR clause correctly. I think it needs to be || instead of just one |. Try this:-

 

Code:

Regex.Match(kill.Weapon, @"smaw|rpg|m320", RegexOptions.IgnoreCase).Success && server.MapFileName.StartsWith("MP_Subway[b]||[/b]MP_001[b]||[/b]MP_011")
Good guess and if that had been an if clause you would be dead right.

 

The pattern aaa|bbb|ccc only makes sense in a Regex.Match function call. In general, any time you want to match against more than one pattern and you want to do it in one line of code, use Regex.Match. There's an example in the same line of code above, for the weapons. Just mimic the weapon Regex.Match with maps names (although I corrected the weapons patterns to use proper best practices syntax of (_:aaa|bbb|ccc)):

 

Code:

Regex.Match(kill.Weapon, @"(_:smaw|rpg|m320)", RegexOptions.IgnoreCase).Success && Regex.Match(server.MapFileName, @"(_:MP_Subway|MP_001|MP_011)", RegexOptions.IgnoreCase).Success)
The function xxx.yyy.StartsWith("pattern") is only good for exactly one pattern.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Mootart*:

 

Sorry. The settings are:-

 

Set limit evaluation to OnSpawn, Set action to None.

yeah i set it to spawn but it was flooding the chat box. can't be like 15% ticket will show next map mode and next on 10% show again and next is 5% something like this...

 

thanks for you time mate..

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

Originally Posted by Singh400*:

 

Good guess and if that had been an if clause you would be dead right.

 

The pattern aaa|bbb|ccc only makes sense in a Regex.Match function call. In general, any time you want to match against more than one pattern and you want to do it in one line of code, use Regex.Match. There's an example in the same line of code above, for the weapons. Just mimic the weapon Regex.Match with maps names (although I corrected the weapons patterns to use proper best practices syntax of (_:aaa|bbb|ccc)):

 

Code:

Regex.Match(kill.Weapon, @"(_:smaw|rpg|m320)", RegexOptions.IgnoreCase).Success && Regex.Match(server.MapFileName, @"(_:MP_Subway|MP_001|MP_011)", RegexOptions.IgnoreCase).Success)
The function xxx.yyy.StartsWith("pattern") is only good for exactly one pattern.
Ah crap, worth a try though :biggrin:

 

yeah i set it to spawn but it was flooding the chat box. can't be like 15% ticket will show next map mode and next on 10% show again and next is 5% something like this...

 

thanks for you time mate..

Just change the values as needed. And make sure to include the line:-

 

Code:

if (limit.Activations() > 2)
        return false;
To prevent the limit from spamming constantly.

 

Is it possible to kick or restrict people from using a mortar? Fed up of people camping in spawn for the whole round using a mortar.

I don't think so. Mortar is classed as a vehicle in game. And as such all vehicle report DEATH as the method of dying.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by LtMatt81*:

 

I don't think so. Mortar is classed as a vehicle in game. And as such all vehicle report DEATH as the method of dying.

Urgh, thats unfortunate. That means id have to manually enforce it which would occupy some time.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by ICE-JoseyWalez*:

 

Hello!

 

I'm trying to get my hardcore server to stay hardcore rather than custom in battlelog after implementing your 'Disable Vehicles Based on Player Count'. Previously this was, well almost impossible, until you uploaded V0.0.0.4.

 

Rather than explaining the entire problem, I will ask you this. Is it possible to disable my Limit#1 if say my Limit#3 asked it to? If so, how could I code this? Brief example of what I mean in my poorly written code... OnRoundOver, Limit_1_state = disabled.

 

Can anyone help on this? The desired effect is to make sure vehicle spawn is set to true once a round has ended so the server stays listed as hardcore in battlelog, but currently my Limit#1 which disables vehicles if player count is less than 8 is interfering, so is there anyway to disable my Limit#1 when a round end, and re-enable it once the round starts again?

I have not found a way to disable the vehicles without going custom, but I have found a way to slow them down, just set the respawn time way up... youll get vehicles but they spawn so far apart you might as well not have them. We use the ultimate map manager and made a custom hard core preset for maps with 16 people or less vehicles spawn at 600%
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Matt-One*:

 

Good guess and if that had been an if clause you would be dead right.

 

The pattern aaa|bbb|ccc only makes sense in a Regex.Match function call. In general, any time you want to match against more than one pattern and you want to do it in one line of code, use Regex.Match. There's an example in the same line of code above, for the weapons. Just mimic the weapon Regex.Match with maps names (although I corrected the weapons patterns to use proper best practices syntax of (_:aaa|bbb|ccc)):

 

Code:

Regex.Match(kill.Weapon, @"(_:smaw|rpg|m320)", RegexOptions.IgnoreCase).Success && Regex.Match(server.MapFileName, @"(_:MP_Subway|MP_001|MP_011)", RegexOptions.IgnoreCase).Success)
The function xxx.yyy.StartsWith("pattern") is only good for exactly one pattern.
Thank u it work good, i have one more problem using this code :

 

Code:

if (limit.Data.issetBool(player.Name))
  {
     plugin.SendGlobalMessage(plugin.R("%p_n% has been banned for using %w_n%, after a kick!"));
     plugin.PBBanPlayerWithMessage(PBBanDuration.Temporary, player.Name, 15, plugin.R("%p_n% you have been banned for 15 minutes for using %w_n% 3 times"));
     limit.Data.unsetBool(player.Name);
  }
  
  int count = (int) limit.Activations(player.Name);
   
  if (count == 1)
  {
      plugin.SendGlobalMessage(plugin.R("%p_n% do not use %w_n%!"));
      plugin.KillPlayer(player.Name);
  }
  else if (count == 2)
  {
     plugin.SendGlobalMessage(plugin.R("%p_n% has been kicked for using %w_n%"));
     plugin.KickPlayerWithMessage(player.Name, plugin.R("%p_n% you have been kicked for using %w_n%"));
     
     if (!limit.Data.issetBool(player.Name))
         limit.Data.setBool(player.Name, true);
  }
I would like to ban people with EAban not PBGUID, so i tried to change PBBanPlayerWithMessage(PBBanDuration. WITH EABanPlayerWithMessage(EABanDuration. etc.. but i got an error :

 

[15:06:42 39] [insane Limits] ERROR: 1 error compiling Expression

[15:06:42 39] [insane Limits] ERROR: (CS1501, line: 38, column: 18): No overload for method 'EABanPlayerWithMessage' takes '4' arguments

 

Thank you for the help :smile:

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

Originally Posted by Singh400*:

 

Thank u it work good, i have one more problem using this code :

 

Code:

if (limit.Data.issetBool(player.Name))
  {
     plugin.SendGlobalMessage(plugin.R("%p_n% has been banned for using %w_n%, after a kick!"));
     plugin.PBBanPlayerWithMessage(PBBanDuration.Temporary, player.Name, 15, plugin.R("%p_n% you have been banned for 15 minutes for using %w_n% 3 times"));
     limit.Data.unsetBool(player.Name);
  }
  
  int count = (int) limit.Activations(player.Name);
   
  if (count == 1)
  {
      plugin.SendGlobalMessage(plugin.R("%p_n% do not use %w_n%!"));
      plugin.KillPlayer(player.Name);
  }
  else if (count == 2)
  {
     plugin.SendGlobalMessage(plugin.R("%p_n% has been kicked for using %w_n%"));
     plugin.KickPlayerWithMessage(player.Name, plugin.R("%p_n% you have been kicked for using %w_n%"));
     
     if (!limit.Data.issetBool(player.Name))
         limit.Data.setBool(player.Name, true);
  }
I would like to ban people with EAban not PBGUID, so i tried to change PBBanPlayerWithMessage(PBBanDuration. WITH EABanPlayerWithMessage(EABanDuration. etc.. but i got an error :

 

[15:06:42 39] [insane Limits] ERROR: 1 error compiling Expression

[15:06:42 39] [insane Limits] ERROR: (CS1501, line: 38, column: 18): No overload for method 'EABanPlayerWithMessage' takes '4' arguments

 

Thank you for the help :smile:

Try this:-

 

Code:

if (limit.Data.issetBool(player.Name))
  {
     plugin.SendGlobalMessage(plugin.R("%p_n% has been banned for using %w_n%, after a kick!"));
     plugin.EABanPlayerWithMessage(EABanType.Name, EABanDuration.Temporary, player.Name, 15, plugin.R("%p_n% you have been banned for 60 minutes for using %w_n% 3 times"));
     limit.Data.unsetBool(player.Name);
  }
  
  int count = (int) limit.Activations(player.Name);
   
  if (count == 1)
  {
      plugin.SendGlobalMessage(plugin.R("%p_n% do not use %w_n%!"));
      plugin.KillPlayer(player.Name);
  }
  else if (count == 2)
  {
     plugin.SendGlobalMessage(plugin.R("%p_n% has been kicked for using %w_n%"));
     plugin.KickPlayerWithMessage(player.Name, plugin.R("%p_n% you have been kicked for using %w_n%"));
     
     if (!limit.Data.issetBool(player.Name))
         limit.Data.setBool(player.Name, true);
  }
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Rucki*:

 

Hi,

one new idea. :ohmy:

 

I´ll try to explain.

On Rush Grand Bazar the tank spawns only at the last 2 coms.

Because there is a tank, we cant forbidde RPG/SMAW the hole map.

 

But maybe the admintool can track at wich position the attackers are.

 

Example:

75 tickets for the attackers.

74

73...and so on.

If attackers have 75 tickets again (they have 2 coms), comcounter count +1 (comcounter 1)

So i know, the attackers have owned com a and b at the first position.

 

If attackers have 75 tickets again, comcounter count +1 (comcounter 2)

The attackers have owned com a and b at the second position.

 

If comcounter >=3, the last coms are reached.

Now RPG/SMAW/M320 must be allowed. Because there is a tank.

 

 

Other way without fixed tickets:

Read tickets from attacker on intervall.

If tickets are >than last read tickets, comcounter +1

 

 

 

The short version:

If mapmode is rush and mapname Bazaar, warn/kill for RPG/SMAW/M320

If mapmode is rush and mapname Bazaar and comcounter is >=3 do nothing.

 

Hope for your help. :ohmy:

Regards!

Rucki

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

Originally Posted by Rucki*:

 

I'm not sure we can track MCOMs,

I dont know it, nobody has done it until now. :ohmy:

I think it should work with tracking tickets from the attacker team.

But I cant code it. :sad:

 

the best work around would be to make Grand Bazaar infantry only.

This is the easiest solution; beause that I do not like it. :P

 

Regards!

Rucki

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

Originally Posted by AssassinX*:

 

any way to Make it mute certain words on chat?

 

Also i want to make sure the words specified don't make it to the general public... this way no one will know what they were saying it will just automute them and let them know they have been muted for 1 min...

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

Originally Posted by d00kiejones*:

 

Is there any way to make the rules on request delay between messages? Something like:

 

Rules.Add("some silly rule");

sleep()

Rules.Add("another silly rule")

 

Thanks in advance and yes I'm new at this :smile:

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

Originally Posted by d00kiejones*:

 

Have been searching for nearly an hour, is there a way to have a limit only on one map? I want to kill player for road kill on metro to stop MAV killers but not on other maps as they have vehicles.

 

Thanks in advance.

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

Archived

This topic is now archived and is closed to further 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.