ImportBot Posted March 9, 2015 Author Share Posted March 9, 2015 Originally Posted by PapaCharlie9*: how can i make a special custom message for each person that comes loads? like i have this guy named bunny, i would like it to say BOING BOING bunny is loading in. and a different message for another admin.It is not possible, with Insane Limits, to send a message when a player is loading in. The best you can do is send a message when they spawn for the first time. How many people? If it is 5 or less, you can make one limit for each person like this: Create a limit to evaluate OnJoin, call it "Load message for XXX", where XXX is the player's name. Set first_check to this Expression: Code: (player.Name == "XXX")Set Action to Say and fill in the message you want to send. Use %p_n% in the message and it will be replaced with the player's name, for example: say_message: BOING BOING %p_n% is loading in. ----------------------------- If it is more than 5, you'll have to make a dictionary. Do NOT use Action for the messages, add them directly to the code, using the: names["XXX"] = "MESSAGE"; pattern. Create a limit to evaluate OnJoin, call it "Load message everyone". Set first_check to this Code: Code: Dictionary<String,String> names = new Dictionary<String,String>(); // names["XXX"] = "MESSAGE"; names["bunny"] = "BOING BOING bunny is loading in"; names["dufus"] = "Say hello to dufus!"; names["XaYbZc"] = "ATTENTION! XzYbZc is loading in!"; names["Joe"] = "Look out, here comes Joe!"; names["Mary"] = "I didn't know Mary still plays BF4_"; names["Tom"] = "Watch your back, Tom the knife king is coming!"; // Add more names here the same way if (names.ContainsKey(player.Name)) { plugin.SendGlobalMessage(names[player.Name]); } return false; * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 9, 2015 Author Share Posted March 9, 2015 Originally Posted by PapaCharlie9*: My sincere apologies if i make you angry but i think i can remove my squad deathmatch from the maplist.Irony that makes me LMAO will never make me angry. I mean, don't you think the risk was kind of high that the limit code I wrote for you would also be something you would not enjoy using? * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 9, 2015 Author Share Posted March 9, 2015 Originally Posted by moacco07*: Not with a 5 minute time limit, no. You can prevent them from using those weapons for the whole round using the Loadout Enforcer plugin: myrcon.net/.../on-spawn-loadout-enforcer-for-infantryvehicles-adkatslrt I don't think it has time limits as an option, though. Maybe if combined with AdKats? Ask on that thread. You can alternatively punish players after they use such weapons, for the first 5 minutes. What exactly is the abuse with Javelin/Stinger on Rush? Can't get any aircraft or rafts to land? Create a limit to evaluate OnKill, call it to "NS: No Jave/Sting for 5 mins". Set first_check to this Code: Code: // Skip maps that are not XP2 (Naval Strike) on Rush if (!server.MapFileName.ToUpper().StartsWith("XP2") || !server.Gamemode.ToUpper().Contains("RUSH")) return false; // Skip if more than 5 minutes into this round if (server.TimeRound > (5*60)) return false; // Punish Javelin or Stinger kills if (kill.Weapon == "U_FGM148" || kill.Weapon == "U_FIM92") { String msg = ": Do not use Javelin or Stinger for first 5 minutes of round!"; plugin.SendGlobalMessage(killer.Name + msg); plugin.KickPlayerWithMessage(killer.Name, msg); } return false;I set it to kick the offending player. You could kill instead, but they would probably ignore. This is the best you can do with Insane Limits.Hi PC9, Could you add like first time use = kill, second = kick and third time = tban 15mins? * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 10, 2015 Author Share Posted March 10, 2015 Originally Posted by PapaCharlie9*: Hi PC9, Could you add like first time use = kill, second = kick and third time = tban 15mins? Replace first_check with this: Code: // Skip maps that are not XP2 (Naval Strike) on Rush if (!server.MapFileName.ToUpper().StartsWith("XP2") || !server.Gamemode.ToUpper().Contains("RUSH")) return false; // Skip if more than 5 minutes into this round if (server.TimeRound > (5*60)) return false; // Punish Javelin or Stinger kills if (kill.Weapon == "U_FGM148" || kill.Weapon == "U_FIM92") { String msg = "Do not use Javelin or Stinger for first 5 minutes of round!"; plugin.SendGlobalMessage(killer.Name + ": " + msg); String key = "NoFair"; int count = 1; if (killer.Data.issetInt(key)) count = killer.Data.getInt(key); else killer.Data.setInt(key, count); if (count == 1) { plugin.KillPlayer(killer.Name, 1); } else if (count == 2) { plugin.KickPlayerWithMessage(killer.Name, msg); } else if (count > 2) { plugin.EABanPlayerWithMessage(EABanType.Name, EABanDuration.Temporary, killer.Name, 15, msg); } killer.Data.setInt(key, count + 1); } return false; * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 11, 2015 Author Share Posted March 11, 2015 Originally Posted by moacco07*: Replace first_check with this: Code: // Skip maps that are not XP2 (Naval Strike) on Rush if (!server.MapFileName.ToUpper().StartsWith("XP2") || !server.Gamemode.ToUpper().Contains("RUSH")) return false; // Skip if more than 5 minutes into this round if (server.TimeRound > (5*60)) return false; // Punish Javelin or Stinger kills if (kill.Weapon == "U_FGM148" || kill.Weapon == "U_FIM92") { String msg = "Do not use Javelin or Stinger for first 5 minutes of round!"; plugin.SendGlobalMessage(killer.Name + ": " + msg); String key = "NoFair"; int count = 1; if (killer.Data.issetInt(key)) count = killer.Data.getInt(key); else killer.Data.setInt(key, count); if (count == 1) { plugin.KillPlayer(killer.Name, 1); } else if (count == 2) { plugin.KickPlayerWithMessage(killer.Name, msg); } else if (count > 2) { plugin.EABanPlayerWithMessage(EABanType.Name, EABanDuration.Temporary, killer.Name, 15, msg); } killer.Data.setInt(key, count + 1); } return false; I will test it out and report back if there's any issues. Thanks PC9. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 11, 2015 Author Share Posted March 11, 2015 Originally Posted by Fonta*: Hi guys, We're using this code on our server to skip the waiting between rounds. I'm wondering if this code can be changed so it doesn't go to the next map when the round restarts. Per example: When we're starting the server and there are 4 players, the map restarts, after loading it goes to the next map. So you get a double loading of a map. Code: // Delayed Skip Round Thread ender = new Thread( new ThreadStart( delegate { try { int iDelay = 10; // Delay in seconds Thread.Sleep(iDelay * 1000); plugin.ServerCommand("mapList.runNextRound"); } catch (Exception e) { plugin.ConsoleException(e.ToString()); } } ) ); ender.Name = "RoundEnder"; ender.Start(); return false;I was thinking of putting something which checks the amount of players, if it's less than 6, don't do anything.But how should that be done? * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 11, 2015 Author Share Posted March 11, 2015 Originally Posted by PapaCharlie9*: Hi guys, We're using this code on our server to skip the waiting between rounds. I'm wondering if this code can be changed so it doesn't go to the next map when the round restarts. Per example: When we're starting the server and there are 4 players, the map restarts, after loading it goes to the next map. So you get a double loading of a map. Code: // Delayed Skip Round Thread ender = new Thread( new ThreadStart( delegate { try { int iDelay = 10; // Delay in seconds Thread.Sleep(iDelay * 1000); plugin.ServerCommand("mapList.runNextRound"); } catch (Exception e) { plugin.ConsoleException(e.ToString()); } } ) ); ender.Name = "RoundEnder"; ender.Start(); return false;I was thinking of putting something which checks the amount of players, if it's less than 6, don't do anything.But how should that be done? At the very beginning, first lines, add this: Code: if (server.PlayerCount < 6) return false; * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 11, 2015 Author Share Posted March 11, 2015 Originally Posted by Fonta*: That easy? Wow. Thanks! * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 12, 2015 Author Share Posted March 12, 2015 Originally Posted by LCARSx64*: Hi guys, We're using this code on our server to skip the waiting between rounds. I'm wondering if this code can be changed so it doesn't go to the next map when the round restarts. Per example: When we're starting the server and there are 4 players, the map restarts, after loading it goes to the next map. So you get a double loading of a map. Code: // Delayed Skip Round Thread ender = new Thread( new ThreadStart( delegate { try { int iDelay = 10; // Delay in seconds Thread.Sleep(iDelay * 1000); plugin.ServerCommand("mapList.runNextRound"); } catch (Exception e) { plugin.ConsoleException(e.ToString()); } } ) ); ender.Name = "RoundEnder"; ender.Start(); return false;I was thinking of putting something which checks the amount of players, if it's less than 6, don't do anything.But how should that be done? At the very beginning, first lines, add this: Code: if (server.PlayerCount < 6) return false; As Papa has said, those 2 lines will work ... but the following version also includes a bear trap (again per Papa's suggestion) to help prevent multiple threads being created.Code: // Delayed Skip Round String flag = "_DSR_BT_"; if (server.PlayerCount < 6) return false; Thread ender = new Thread( new ThreadStart( delegate { try { lock (plugin) { if (plugin.Data.issetBool(flag)) return; plugin.Data.setBool(flag, true); } int iDelay = 9; // Delay in seconds Thread.Sleep(iDelay * 1000); plugin.ServerCommand("mapList.runNextRound"); } catch (Exception e) { plugin.ConsoleException(e.ToString()); } finally { lock (plugin) { if (plugin.Data.issetBool(flag)) plugin.Data.unsetBool(flag); } } } ) ); ender.Name = "RoundEnder"; ender.Start(); return false; * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 12, 2015 Author Share Posted March 12, 2015 Originally Posted by droopie*: wait, theres a way to play without the need of 4 players_! and what kills me is having hardcore being forced to have an idle kicker. wish there was some way to trick the system and reset the idle timer. none of these i have asked in other threads but insane limits is my favorite plugin lol * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 12, 2015 Author Share Posted March 12, 2015 Originally Posted by ColColonCleaner*: wait, theres a way to play without the need of 4 players_! and what kills me is having hardcore being forced to have an idle kicker. wish there was some way to trick the system and reset the idle timer. none of these i have asked in other threads but insane limits is my favorite plugin lol 1. There is no way to bypass the 4 player requirement to start a round. This is to prevent stat padding. 2. If hardcore is not included in the 22% population minimum for idle kick that is a larger issue. However i'm sure others would have noticed this issue if that were the case, please discuss with others running hardcore servers. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 18, 2015 Author Share Posted March 18, 2015 Originally Posted by moacco07*: Hello PC9, Can you create limit for on/off weapons during in-game with timers involved? Just type on and it run for mins(editable) and off automatically when timer is over. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 18, 2015 Author Share Posted March 18, 2015 Originally Posted by PapaCharlie9*: Hello PC9, Can you create limit for on/off weapons during in-game with timers involved? Just type on and it run for mins(editable) and off automatically when timer is over. First, check out the On-Spawn Loadout Enforcer plugin. That is the ultimate on/off weapons plugin. If that doesn't work for, you'll have to come back here and explain exactly what you mean by on/off weapons. Kick? Ban? Warn then Kill? * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 18, 2015 Author Share Posted March 18, 2015 Originally Posted by DER_M4DE*: Hello. I wanted to ask if there is a code for a Ping-Limit . Thank You sry for my bad English * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 18, 2015 Author Share Posted March 18, 2015 Originally Posted by 1teacherr1*: Heelo, it is possible to disable 'parachute' and force surface spawn on beacon on maps when normally you would spawn in air? Or just completely removing parachuting when falling from height. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 19, 2015 Author Share Posted March 19, 2015 Originally Posted by moacco07*: First, check out the On-Spawn Loadout Enforcer plugin. That is the ultimate on/off weapons plugin. If that doesn't work for, you'll have to come back here and explain exactly what you mean by on/off weapons. Kick? Ban? Warn then Kill? Hi PC9, I will check out the On-Spawn Loadout Enforcer plugin first. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 19, 2015 Author Share Posted March 19, 2015 Originally Posted by moacco07*: Originally Posted by PapaCharlie9 First, check out the On-Spawn Loadout Enforcer plugin. That is the ultimate on/off weapons plugin. If that doesn't work for, you'll have to come back here and explain exactly what you mean by on/off weapons. Kick? Ban? Warn then Kill? Hi PC9, I will check out the On-Spawn Loadout Enforcer plugin first. Hi PC9, Have you seen the BF4 challenge (Europe VS USA) where they have 1 min to use only knife only and once 1min is up, continue normally throughout the round. Layout something like this. - Round start - At any time during the round, admin only need to type 1 command something like !weapon on (only specific weapon of admin choice to be played with timer) - Once time's up, it will automatically off (!weapon on command) and continue the rest of the round normally. specific weapon of admin choice - can be edited Timer - can be edited with punishment if players disrespect the rule (1 = kill, 2= kick 3= tban 10mins) * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 19, 2015 Author Share Posted March 19, 2015 Originally Posted by PapaCharlie9*: Hello. I wanted to ask if there is a code for a Ping-Limit . Thank You sry for my bad English Use this plugin, it is better for ping limiting: showthread....-13)-June-2014* * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 19, 2015 Author Share Posted March 19, 2015 Originally Posted by PapaCharlie9*: Heelo, it is possible to disable 'parachute' and force surface spawn on beacon on maps when normally you would spawn in air? Or just completely removing parachuting when falling from height.No, that is not possible, as far as I know. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 19, 2015 Author Share Posted March 19, 2015 Originally Posted by ColColonCleaner*: No, that is not possible, as far as I know.Only way is to disable spawn beacons completely. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 19, 2015 Author Share Posted March 19, 2015 Originally Posted by knownchild*: I am in need of a simple script to display a message asking players to be patient while the server populates when the server has less than 4 people, i've noticed that people will enter the server and quickly leave while im waiting on my clan members to join. any help would be much appriciated * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 20, 2015 Author Share Posted March 20, 2015 Originally Posted by 1teacherr1*: Only way is to disable spawn beacons completely.I see, thanks. Well i have few more questions so I'll just ask here - IMPORTANT! - EVERY QUEStION IS ABOUT RUSH MODE. -Thanks to Your work with AdKats LRT we can enable/disable specific item, but how can I set limits to specific item? For example I'd like to set the limit of ALL LMG'S currently used by attacking team to 3. -Next question about beacons, its possible to set the beacon limit to the whole squad? Ex. In Alpha squad there are 3 recon class, and only one beacon can be placed at once, when someone would try place second one it gets auto-destroyed without any act on a player. -What about making limits at all such as: -Set maximum limit to Assault/Tech/Support/Recon per team -Following the limits above - set the limits within the squads Ex. each squad can have only (2x assault, 1x tech, 1x support, 1x recon) If squad class limits are possible to create the team limits are useless, I'm asking just in case if squad limits are not available. -Again according to squad class limits - how about creating the weapon limits within the squads. Ex. If squad can have only 1x tech and 1x recon only one DMR can be used. -6 squad limits per team - 60Slot server -> 30v30 -> 6squads with 5players per team. -There are always 6 squads in the team (Alfa Bravo Charlie Delta Echo Foxtrot) even if they are empty, first player who join X squad is first leader -How about adding the 'cooldown' between specific vehicle usage? Ex. Player spawn as tank driver he can use it unlimited untill he die. After death he need to wait X seconds to use tank (driver) again, but he is still able to spawn as soldier/other types of vehicles. Its imporatant with 'types' of vehicles, beacuse on few maps there are multiple spawns of the same tank. I just want to deal with people camping on thing every game over and over again. -Completely disabling specific spawn Ex. Attacking team got 2 tank spawns, I'd like to remove one from that map phase (rush). I only mean disabling existing spawns, i doubt its even possible to add/edit new vehicle spawns so I'm not even asking. To be clear what i mean: Stage 1 - attackers have Two tanks spawns, on Stage 2 - its only one. I'd like to set 1-tank limit for Stage-1 and remove/disable spawn for tank completely in Stage 2. -Force the specific vehicle get destroyed when current stage dont have available spawn for that vehicle. There is 1-Tank spawn Stage-1, but in Stage-2 you cant spawn tank at all - but still its possible to use already spawned tank. -This is a little bit more complicated but I'll try to explain it best. Using AdKats lets say I have two roles - Default Guest | and | Regular Player. Now - can I create specific limits to that role? I'm not talking about commands usage but about ingame weapons. I mean exactly the same what AdKats LRT allow to do but not globally, only for that specific role. Ex. Player join server for the first time and by default he binded with Default Guest role. He is not able to spawn with XXX items (sniper rifle for example) when his role will be changed to 'Regular Player' now he will be unable to spawn with that XXX item. (According to limits that I've asked before, he still would be affected by team/squad limits.) For now that is all what I remind to ask. In few cases the whole question is depend from answer so I'm aware it can be kinda hard to understand what I mean. Also english is not my first language so the construction of my sentences might be dizzy somewhere, so please if something is not clear enough let me know and I will try to correct myself. I'm working on creating something completely new and fresh for BF4 gameplay so any help with my questions is highly appreciated. EDIT: Found the answer to questions below. -Forcing squads to be public * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 20, 2015 Author Share Posted March 20, 2015 Originally Posted by PapaCharlie9*: I am in need of a simple script to display a message asking players to be patient while the server populates when the server has less than 4 people, i've noticed that people will enter the server and quickly leave while im waiting on my clan members to join. any help would be much appriciated "to display a message" -- when to display it? How often? What is the message? Yell or chat or both? * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 21, 2015 Author Share Posted March 21, 2015 Originally Posted by knownchild*: "to display a message" -- when to display it? How often? What is the message? Yell or chat or both?dispaly on join, every 200 sec, Message "Please stick around in the server, we are starting it up right now , (chat) thank you * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 22, 2015 Author Share Posted March 22, 2015 Originally Posted by LCARSx64*: dispaly on join, every 200 sec, Message "Please stick around in the server, we are starting it up right now , (chat) thank you The following will do what you want. This limit will basically do nothing once the number of players reaches 4 and it will start messaging again once the player count drops to 3 or less. NOTE: This limit requires the Insane Limits Timed Messaging System v2.0 (ILTMS) Core, ...* for details. Request Patience On Low Player Count Create a new limit to evaluate OnJoin. Set action to None. Set first_check to this Code: Code: // Request Patience On Low Player Count - Limit 1 of 1 // v1.0 - OnJoin - first_check // // REQUIRES INSANE LIMITS TIMED MESSAGING SYSTEM (ILTMS)!!! // Queue<Dictionary<String, Object>> _Queue = null; Dictionary<String, Object> myMsgBlock = null; List<int> myRepeats = null; List<Object> myADel = null; List<Object> myParams = null; Action<Object> Callback = delegate(Object _Infos) { List<Object> _Data = null; ServerInfoInterface _Server = null; PlayerInfoInterface _Player = null; String pName = ""; if (_Infos != null) { _Data = (List<Object>)_Infos; if (_Data != null) { _Server = (ServerInfoInterface)_Data[0]; pName = Convert.ToString(_Data[1]); if (_Server != null && pName != "") { if (_Server.PlayerCount < 4) { _Player = plugin.GetPlayer(pName, false); if (_Player != null) { pName = _Player.Name; plugin.SendPlayerMessage(pName, "Please stick around in the server, we are starting it up right now."); } } } } } }; if (plugin.Data.issetObject("_ILTMS_THREAD_") && plugin.Data.issetObject("_ILTMS_QUEUE_") && plugin.Data.issetBool("_ILTMS_FLAG_")) { if (plugin.Data.getBool("_ILTMS_FLAG_")) { _Queue = (Queue<Dictionary<String, Object>>) plugin.Data.getObject("_ILTMS_QUEUE_"); } } if (_Queue == null) return false; if (server.PlayerCount < 4) plugin.SendPlayerMessage(player.Name, "Welcome " + player.Name + ", please stick around in the server, we are starting it up right now."); myRepeats = new List<int>(); myRepeats.Add(-1); myRepeats.Add(0); myParams = new List<Object>(); myParams.Add(server); myParams.Add(player.Name); myADel = new List<Object>(); myADel.Add(Callback); myADel.Add(myParams); myMsgBlock = new Dictionary<String, Object>(); myMsgBlock.Add("time", 200); myMsgBlock.Add("loop", myRepeats); myMsgBlock.Add("adel", myADel); lock (_Queue) { _Queue.Enqueue(myMsgBlock); Monitor.Pulse(_Queue); } return false; End of post! * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 24, 2015 Author Share Posted March 24, 2015 Originally Posted by knownchild*: Thank you soo much, giving it a shot now * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 25, 2015 Author Share Posted March 25, 2015 Originally Posted by Talzac*: Hi, I want to have a script that on server interval 10 minutes change the map to next map on the list if the server have 2 players or less online. Then I can have the server change the map and perhaps make it more appealing if the current map do not draw enough people. This should be easy done with adkats command for next map in combination with code for insane limits? But I do not have enough experience to make this work. Can someone help with a script for this? It is for BFHL. Thanks. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 25, 2015 Author Share Posted March 25, 2015 Originally Posted by PapaCharlie9*: Hi, I want to have a script that on server interval 10 minutes change the map to next map on the list if the server have 2 players or less online. Then I can have the server change the map and perhaps make it more appealing if the current map do not draw enough people. This should be easy done with adkats command for next map in combination with code for insane limits? But I do not have enough experience to make this work. Can someone help with a script for this? It is for BFHL. Thanks. BFHL is not yet supported by Insane Limits. You use it at your own risk. Once support is working, the limit is simple. No need for AdKats. Create a limit to evaluate OnIntervalServer, set the interval to 600 (10 minutes as seconds), name it "Changer". Set first_check to this code: Code: if (server.PlayerCount > 2) return false; plugin.SendGlobalMessage("Changing maps while waiting for more players ..."); plugin.ServerCommand("mapList.runNextRound"); return false;Note that this advances the round, not necessarily the map. If you run with 2 rounds per map, it will take 20 minutes to change to the next map. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 25, 2015 Author Share Posted March 25, 2015 Originally Posted by Talzac*: Thanks, I will take my chances, if is so easy code that I think that it will work with BFHL aslo * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted March 31, 2015 Author Share Posted March 31, 2015 Originally Posted by Talzac*: Hi How can I check a chat for the command !p and not the word !punish? I want this scenario: Player types in !punish then every thing is fine and the plugin will punish when the player types in !p insane limits should ask the player: did you mean !punish? The player should be able to respond with !y or !n or !yes or !no and then it should send the player punish command if !y or !yes If the player types in punish it should also punish and reset the yes function. This is because I want the player to type the whole word punish or confirm because the !p is used to lightly and also the team killer should have a bit time to apologize and the !p is to fast so even thou they are sorry they do not have the time to apologize. Thanks. * Restored post. It could be that the author is no longer active. Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.