ImportBot Posted July 6, 2014 Author Share Posted July 6, 2014 Originally Posted by HARDCOREBF*: thats very odd , i download def , uploaded to /config , restarted procon . hmm * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 7, 2014 Author Share Posted July 7, 2014 Originally Posted by w262035635*: HI, PapaCharlie9 Is there a code for the tips to the taskbar? For example, when a player join the server in the taskbar prompt "" XX "" Join Server Or when someone uses XX weapons in the taskbar prompt "" XX "" use "" YY "" Weapons * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 7, 2014 Author Share Posted July 7, 2014 Originally Posted by LCARSx64*: thats very odd , i download def , uploaded to /config , restarted procon . hmmWhen you say you restarted PRoCon, do you mean your PRoCon client or layer? Because the bf4.def needs to be in your layer's /Configs/ folder and then the layer will need to be restarted. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 7, 2014 Author Share Posted July 7, 2014 Originally Posted by HARDCOREBF*: Yes i mean procon layer / server ... And uploaded to /config Sent from my iPad using Tapatalk * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 7, 2014 Author Share Posted July 7, 2014 Originally Posted by LCARSx64*: Yes i mean procon layer / server ... And uploaded to /config Sent from my iPad using Tapatalk Hmmm, I assume you have ftp access to your layer, try downloading the bf4.def file from the server and checking it. it's possible it's reverted back to an older version. If this is the case, check the procon.cfg file (still in the /Configs/ folder), look for the line:Code: procon.private.options.autoCheckGameConfigsForUpdates Trueand maybe change the True to False, then upload the newest bf4.def again and restart the layer. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 8, 2014 Author Share Posted July 8, 2014 Originally Posted by bigworld12*: hey i just want a timer that ends the current round after x amount of time and start next round . * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 9, 2014 Author Share Posted July 9, 2014 Originally Posted by PapaCharlie9*: HI, PapaCharlie9 Is there a code for the tips to the taskbar? For example, when a player join the server in the taskbar prompt "" XX "" Join Server Or when someone uses XX weapons in the taskbar prompt "" XX "" use "" YY "" Weapons You can use Action TaskbarNotify or you can use this function in first_check or second_check: Code: plugin.SendTaskbarNotification("Short Title", plugin.R("%p_n% used %w_n%!")); * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 9, 2014 Author Share Posted July 9, 2014 Originally Posted by PapaCharlie9*: hey i just want a timer that ends the current round after x amount of time and start next round .I was hoping LCARS would handle this one. Create a limit to evaluate OnRoundStart, call it "Start Timer". Set first_check to this Code: Code: plugin.RoundData.setObject("StartTimer", DateTime.Now); return false;================ Create another limit to evaluate OnSpawn, call it "Check Timer". Set first_check to this Code: Code: double Minutes = 20; // CHANGE: max number of minutes per round. String key = "StartTimer"; if (!plugin.RoundData.issetObject(key)) return false; DateTime last = (DateTime)plugin.RoundData.getObject(key); double elapsed = DateTime.Now.Subtract(last).TotalMinutes; String msg = null; if (elapsed >= Minutes) { msg = "TIME IS UP, ROUND IS OVER!"; plugin.SendGlobalMessage(msg); plugin.SendGlobalYell(msg, 15); int winner = (server.RemainTicketsPercent(1) > server.RemainTicketsPercent(2)) _ 1 : 2; plugin.ServerCommand("mapList.endRound", winner.ToString()); } else if ((elapsed + 5) >= Minutes && (elapsed + 4.75) < Minutes) { msg = "Only 5 minutes left in round!!"; plugin.SendGlobalMessage(msg); plugin.SendGlobalYell(msg, 15); } return false; * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 9, 2014 Author Share Posted July 9, 2014 Originally Posted by bigworld12*: i appreciate what you did but .. it doesn't work this is the code i entered in the 2nd limit ================================================== === double Minutes = 10; // CHANGE: max number of minutes per round. String key = "StartTimer"; if (!plugin.RoundData.issetObject(key)) return false; DateTime last = (DateTime)plugin.RoundData.getObject(key); double elapsed = DateTime.Now.Subtract(last).TotalMinutes; String msg = null; if (elapsed >= Minutes) { msg = "TIME IS UP, ROUND IS OVER!"; plugin.SendGlobalMessage(msg); plugin.SendGlobalYell(msg, 15); int winner = (server.RemainTicketsPercent(1) > server.RemainTicketsPercent(2)) ? 1 : 2; plugin.ServerCommand("mapList.endRound", winner.ToString()); } else if ((elapsed + 5) >= Minutes && (elapsed + 4.75) msg = "Only 5 minutes left in round!!"; plugin.SendGlobalMessage(msg); plugin.SendGlobalYell(msg, 15); } return false; ================================================== ============ i waited for like 40 mins and then ended game ... didn't work even when i type nextlevel command doesn't work * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 10, 2014 Author Share Posted July 10, 2014 Originally Posted by PapaCharlie9*: i appreciate what you did but .. it doesn't work this is the code i entered in the 2nd limit ================================================== === double Minutes = 10; // CHANGE: max number of minutes per round. String key = "StartTimer"; if (!plugin.RoundData.issetObject(key)) return false; DateTime last = (DateTime)plugin.RoundData.getObject(key); double elapsed = DateTime.Now.Subtract(last).TotalMinutes; String msg = null; if (elapsed >= Minutes) { msg = "TIME IS UP, ROUND IS OVER!"; plugin.SendGlobalMessage(msg); plugin.SendGlobalYell(msg, 15); int winner = (server.RemainTicketsPercent(1) > server.RemainTicketsPercent(2)) ? 1 : 2; plugin.ServerCommand("mapList.endRound", winner.ToString()); } else if ((elapsed + 5) >= Minutes && (elapsed + 4.75) msg = "Only 5 minutes left in round!!"; plugin.SendGlobalMessage(msg); plugin.SendGlobalYell(msg, 15); } return false; ================================================== ============ i waited for like 40 mins and then ended game ... didn't work even when i type nextlevel command doesn't work Say more about how you tested it. When in the round was the limit activated? Did you test it over several consecutive rounds (recommended)? How many players were in the server? The limit depends on two things: 1) A normal round start. If you activate it in the middle of a round, it won't work until the next round. 2) Frequent spawning. If there are less than 4 players in the server or not enough spawns, it won't work. You should also check to make sure Insane Limits or the specific limits are not in Virtual mode. They should say Enabled and virtual_mode should be False. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 10, 2014 Author Share Posted July 10, 2014 Originally Posted by LCARSx64*: I was hoping LCARS would handle this one. Haha sorry Papa, I was going to get to it, but I've been flat out the past few weeks trying to start a new business. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 10, 2014 Author Share Posted July 10, 2014 Originally Posted by bigworld12*: Say more about how you tested it. When in the round was the limit activated? Did you test it over several consecutive rounds (recommended)? How many players were in the server? The limit depends on two things: 1) A normal round start. If you activate it in the middle of a round, it won't work until the next round. 2) Frequent spawning. If there are less than 4 players in the server or not enough spawns, it won't work. You should also check to make sure Insane Limits or the specific limits are not in Virtual mode. They should say Enabled and virtual_mode should be False. virtual mode was off first off all the server is unranked and pb off "not many people gonna join it" 1 - I have a server with ticket bleed turned off "means that tickets don't go down by taking flags" 2 - the players can't kill each other "as they have 1 000 000 health" so it's hard for any one to spawn any way 3 - the only way to suicide is by typing "-s" in chat (i made it using watchdog language plugin) 4 - when i tested the server there were 2 players 5 - i tried every thing you say but i think that's because frequent spawn every 2 mins or so all i was thinking off was adding a built in timer in procon it self that doesn't have to check every spawn if the time ended or not . and it just counts the time then end round or change to next level .. so simple if you think about it * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 10, 2014 Author Share Posted July 10, 2014 Originally Posted by LCARSx64*: virtual mode was off first off all the server is unranked and pb off "not many people gonna join it" 1 - I have a server with ticket bleed turned off "means that tickets don't go down by taking flags" 2 - the players can't kill each other "as they have 1 000 000 health" so it's hard for any one to spawn any way 3 - the only way to suicide is by typing "-s" in chat (i made it using watchdog language plugin) 4 - when i tested the server there were 2 players 5 - i tried every thing you say but i think that's because frequent spawn every 2 mins or so all i was thinking off was adding a built in timer in procon it self that doesn't have to check every spawn if the time ended or not . and it just counts the time then end round or change to next level .. so simple if you think about it Here's another possible way of achieving what you're after (NOTE: I haven't tested this but it should work): Timed Round Ender - Limit 1 of 2 Create a new limit to evaluate OnRoundStart. Set action to None. Set first_check to this Code: Code: // Timed Round Ender // v1.0 - OnRoundStart - Limit 1 of 2 // String key_RoundFlag = "tre_Live"; server.Data.setBool(key_RoundFlag, true); return false; Timed Round Ender - Limit 2 of 2 Create a new limit to evaluate OnIntervalServer. Set the evaluation_interval to 60 seconds. Set action to None. Set first_check to this Code (Change the value 30 in the red highlighted line with the desired time in minutes): Code: // Timed Round Ender // v1.0 - OnIntervalServer - Limit 2 of 2 // int iMins = 30; int iCount = 0; int iWinners = 0; String key_RoundFlag = "tre_Live"; String key_MinCount = "tre_Minutes"; String treMsg = "TIME HAS EXPIRED - THE ROUND IS NOW OVER!"; bool isLive = false; // Check if this is a live round, exit if not if (server.Data.issetBool(key_RoundFlag)) isLive = server.Data.getBool(key_RoundFlag); if (!isLive) return false; // Get the timer count and increment it if (server.Data.issetInt(key_MinCount)) iCount = server.Data.getInt(key_MinCount); iCount++; // Check if the given time elasped if (iCount >= iMins) { // Inform players plugin.SendGlobalMessage(treMsg); plugin.SendGlobalYell("\n" + treMsg, 8); // Time has elapsed so end this round if (server.RemainTicketsPercent(1) > server.RemainTicketsPercent(2)) { iWinners = 1; } else { iWinners = 2; } plugin.ServerCommand("mapList.endRound", iWinners.ToString()); // Change the live round flag server.Data.setBool(key_RoundFlag, false); // Reset the timer count iCount = 0; } // Store the timer count server.Data.setInt(key_MinCount, iCount); return false; End of post! * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 10, 2014 Author Share Posted July 10, 2014 Originally Posted by aduh*: We need limit for these rules: - M1014, Saiga12, limited to 1 in a team - Claymores, M320, DAO-12, GP-30, USAS-12, SPAS-12, MK3A1 & MASS 26 are forbidden First punish kill second kick. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 10, 2014 Author Share Posted July 10, 2014 Originally Posted by bigworld12*: Here's another possible way of achieving what you're after (NOTE: I haven't tested this but it should work): Timed Round Ender - Limit 1 of 2 Create a new limit to evaluate OnRoundStart. Set action to None. Set first_check to this Code: Code: // Timed Round Ender // v1.0 - OnRoundStart - Limit 1 of 2 // String key_RoundFlag = "tre_Live"; server.Data.setBool(key_RoundFlag, true); return false; Timed Round Ender - Limit 2 of 2 Create a new limit to evaluate OnIntervalServer. Set the evaluation_interval to 60 seconds. Set action to None. Set first_check to this Code (Change the value 30 in the red highlighted line with the desired time in minutes): Code: // Timed Round Ender // v1.0 - OnIntervalServer - Limit 2 of 2 // int iMins = 30; int iCount = 0; int iWinners = 0; String key_RoundFlag = "tre_Live"; String key_MinCount = "tre_Minutes"; String treMsg = "TIME HAS EXPIRED - THE ROUND IS NOW OVER!"; bool isLive = false; // Check if this is a live round, exit if not if (server.Data.issetBool(key_RoundFlag)) isLive = server.Data.getBool(key_RoundFlag); if (!isLive) return false; // Get the timer count and increment it if (server.Data.issetInt(key_MinCount)) iCount = server.Data.getInt(key_MinCount); iCount++; // Check if the given time elasped if (iCount >= iMins) { // Inform players plugin.SendGlobalMessage(treMsg); plugin.SendGlobalYell("\n" + treMsg); // Time has elapsed so end this round if (server.RemainTicketsPercent(1) > server.RemainTicketsPercent(2)) { iWinners = 1; } else if (server.RemainTicketsPercent(1) < server.RemainTicketsPercent(2)) { iWinners = 2; } plugin.ServerCommand("mapList.endRound", iWinners.ToString()); // Change the live round flag server.Data.setBool(key_RoundFlag, false); // Reset the timer count iCount = 0; } // Store the timer count server.Data.setInt(key_MinCount, iCount); return false; End of post! i have this error in procon plugin log[18:20:44 67] [insane Limits] ERROR: 1 error compiling Code [18:20:44 67] [insane Limits] ERROR: (CS1501, line: 54, column: 17): No overload for method 'SendGlobalYell' takes '1' arguments * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 10, 2014 Author Share Posted July 10, 2014 Originally Posted by LCARSx64*: i have this error in procon plugin log [18:20:44 67] [insane Limits] ERROR: 1 error compiling Code [18:20:44 67] [insane Limits] ERROR: (CS1501, line: 54, column: 17): No overload for method 'SendGlobalYell' takes '1' arguments Oops, for got the time, updated my original post. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 11, 2014 Author Share Posted July 11, 2014 Originally Posted by bigworld12*: Oops, for got the time, updated my original post.it works well now very good and impressive can you please add a small option that informs players before the round end ? like inform players before 5 mins from the round end "or x amount of time" * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 11, 2014 Author Share Posted July 11, 2014 Originally Posted by LCARSx64*: it works well now very good and impressive can you please add a small option that informs players before the round end ? like inform players before 5 mins from the round end "or x amount of time" Here you go, this will give a 5 minute warning that the round will end, again change the value 30 in the red highlighted line to the desired time in minutes (Must be greater than 5 minutes, preferably greater than 10): Change the first_check Code in the OnIntervalServer limit (limit 2 of 2) with this code: Code: // Timed Round Ender // v1.1 - OnIntervalServer - Limit 2 of 2 // int iMins = 30; int iCount = 0; int iWinners = 0; String key_RoundFlag = "tre_Live"; String key_MinCount = "tre_Minutes"; String[] treMsg = { "TIME HAS EXPIRED - THE ROUND IS NOW OVER!", "THIS ROUND WILL END IN 5 MINUTES!" }; bool isLive = false; // Check if this is a live round, exit if not if (server.Data.issetBool(key_RoundFlag)) isLive = server.Data.getBool(key_RoundFlag); if (!isLive) return false; // Get the timer count and increment it if (server.Data.issetInt(key_MinCount)) iCount = server.Data.getInt(key_MinCount); iCount++; // Check timing if (iCount == iMins - 5) { // Give a 5 minute warning of round ending plugin.SendGlobalMessage(treMsg[1]); plugin.SendGlobalYell("\n" + treMsg[1], 8); } else if (iCount >= iMins) { // Check if the given time elasped // Inform players plugin.SendGlobalMessage(treMsg[0]); plugin.SendGlobalYell("\n" + treMsg[0], 8); // Time has elapsed so end this round if (server.RemainTicketsPercent(1) > server.RemainTicketsPercent(2)) { iWinners = 1; } else { iWinners = 2; } plugin.ServerCommand("mapList.endRound", iWinners.ToString()); // Change the live round flag server.Data.setBool(key_RoundFlag, false); // Reset the timer count iCount = 0; } // Store the timer count server.Data.setInt(key_MinCount, iCount); return false; End of post! * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 12, 2014 Author Share Posted July 12, 2014 Originally Posted by PapaCharlie9*: See, I knew LCARS could do it. Just so I'm not completely obsoleted: I believe that just changing my limit 2 from OnSpawn to OnIntervalServer at 10 seconds achieves the same goal. Also, there's a logic error in your limit 2, for the case where RemainTicketsPercent is equal between teams 1 and 2. Just remove the else if and make it an else and all is well. Moral of the story @bigworld: the more detail you give about what you are actually doing up front (unranked, no bleed, infinite health, etc.), the better we can help you. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 12, 2014 Author Share Posted July 12, 2014 Originally Posted by LCARSx64*: See, I knew LCARS could do it. Just so I'm not completely obsoleted: I believe that just changing my limit 2 from OnSpawn to OnIntervalServer at 10 seconds achieves the same goal. Also, there's a logic error in your limit 2, for the case where RemainTicketsPercent is equal between teams 1 and 2. Just remove the else if and make it an else and all is well. Moral of the story @bigworld: the more detail you give about what you are actually doing up front (unranked, no bleed, infinite health, etc.), the better we can help you. Thanks Papa, corrected both the original code and the 5 minute warning version. I did think about that if - else if expression and (obviously wrongly) assumed in the case of a draw the winning TeamId would be 0, however, if this is not the case, how do we end a round as a draw? * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 12, 2014 Author Share Posted July 12, 2014 Originally Posted by w262035635*: HI, PapaCharlie9 I want to hide the code. Avoid being maliciously modified other administrators e.g. Code: limit1_first_check set "expression" limit1_first_expression set "E:/1.TXT" limit2_second_check set "code" limit2_second_code set "E:/2.TXT"or Code: limit1_first_check set "Filename" limit1_first_Filename set "E:/1.TXT"Please tell me if this is possible? * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 13, 2014 Author Share Posted July 13, 2014 Originally Posted by bigworld12*: Here you go, this will give a 5 minute warning that the round will end, again change the value 30 in the red highlighted line to the desired time in minutes (Must be greater than 5 minutes, preferably greater than 10): Change the first_check Code in the OnIntervalServer limit (limit 2 of 2) with this code: Code: // Timed Round Ender // v1.1 - OnIntervalServer - Limit 2 of 2 // int iMins = 30; int iCount = 0; int iWinners = 0; String key_RoundFlag = "tre_Live"; String key_MinCount = "tre_Minutes"; String[] treMsg = { "TIME HAS EXPIRED - THE ROUND IS NOW OVER!", "THIS ROUND WILL END IN 5 MINUTES!" }; bool isLive = false; // Check if this is a live round, exit if not if (server.Data.issetBool(key_RoundFlag)) isLive = server.Data.getBool(key_RoundFlag); if (!isLive) return false; // Get the timer count and increment it if (server.Data.issetInt(key_MinCount)) iCount = server.Data.getInt(key_MinCount); iCount++; // Check timing if (iCount == iMins - 5) { // Give a 5 minute warning of round ending plugin.SendGlobalMessage(treMsg[1]); plugin.SendGlobalYell("\n" + treMsg[1], 8); } else if (iCount >= iMins) { // Check if the given time elasped // Inform players plugin.SendGlobalMessage(treMsg[0]); plugin.SendGlobalYell("\n" + treMsg[0], 8); // Time has elapsed so end this round if (server.RemainTicketsPercent(1) > server.RemainTicketsPercent(2)) { iWinners = 1; } else { iWinners = 2; } plugin.ServerCommand("mapList.endRound", iWinners.ToString()); // Change the live round flag server.Data.setBool(key_RoundFlag, false); // Reset the timer count iCount = 0; } // Store the timer count server.Data.setInt(key_MinCount, iCount); return false; End of post! it's more perfect that i expected man thank you * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 13, 2014 Author Share Posted July 13, 2014 Originally Posted by bigworld12*: See, I knew LCARS could do it. Just so I'm not completely obsoleted: I believe that just changing my limit 2 from OnSpawn to OnIntervalServer at 10 seconds achieves the same goal. Also, there's a logic error in your limit 2, for the case where RemainTicketsPercent is equal between teams 1 and 2. Just remove the else if and make it an else and all is well. Moral of the story @bigworld: the more detail you give about what you are actually doing up front (unranked, no bleed, infinite health, etc.), the better we can help you. i didn't know these information would be helpful as all i wanted was a timer .. but thanks any way * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 13, 2014 Author Share Posted July 13, 2014 Originally Posted by PapaCharlie9*: Thanks Papa, corrected both the original code and the 5 minute warning version. I did think about that if - else if expression and (obviously wrongly) assumed in the case of a draw the winning TeamId would be 0, however, if this is not the case, how do we end a round as a draw? As my friend Ivan says: "Is not possible." * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 13, 2014 Author Share Posted July 13, 2014 Originally Posted by PapaCharlie9*: HI, PapaCharlie9 I want to hide the code. Avoid being maliciously modified other administrators e.g. Code: limit1_first_check set "expression" limit1_first_expression set "E:/1.TXT" limit2_second_check set "code" limit2_second_code set "E:/2.TXT"or Code: limit1_first_check set "Filename" limit1_first_Filename set "E:/1.TXT"Please tell me if this is possible?No, that is not possible. If you have admins on your layer changing stuff, disable Insane Limits on your layer and run it ONLY on your client. DO NOT run it on both layer AND client. In fact, do not run it on more than one instance connected to a game server. EDIT: The safest thing to do is delete InsaneLimits.cs from your layer altogether. Then admins can't re-enable it. * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 14, 2014 Author Share Posted July 14, 2014 Originally Posted by BriDawg*: Anyone know of any way to pull the currently used maplist name from Ultimate Map Manager in Insane Limits by chance? * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted July 15, 2014 Author Share Posted July 15, 2014 Originally Posted by LCARSx64*: I put this here because it's a more appropriate place. This limit restarts the round when the server is empty. Restart Round When Server Empty Create a new limit to evaluate OnLeave. Set action to None. Set first_check to this Code: Code: // Restart Round When Server Empty // v1.0 - OnLeave - Limit 1 of 1 // // Make sure the server is empty if (server.PlayerCount != 0) return false; // Restart the round plugin.ServerCommand("mapList.restartRound"); return false; End of post! * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted August 6, 2014 Author Share Posted August 6, 2014 Originally Posted by tarreltje*: Looking for a limit that monitors the levels / mode on my server, and put the info into a txt file. something like this: Zavod 311 Domination Total players Players joined Players leaved Maby a time stamp also when the round started, so that the info wouldnt overright it selfves, since you have different players during the day EDIT: Ive got it already with proconrulz, so its not needed anymore!!! * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted August 7, 2014 Author Share Posted August 7, 2014 Originally Posted by LCARSx64*: Looking for a limit that monitors the levels / mode on my server, and put the info into a txt file. something like this: Zavod 311 Domination Total players Players joined Players leaved Maby a time stamp also when the round started, so that the info wouldnt overright it selfves, since you have different players during the day I could write this but you do realize that the outputted text file is going to get very big, very fast, right? * Restored post. It could be that the author is no longer active. Link to comment
ImportBot Posted August 7, 2014 Author Share Posted August 7, 2014 Originally Posted by tarreltje*: I could write this but you do realize that the outputted text file is going to get very big, very fast, right?Not needed anymore!! Im already doing it with proconrulz. Ive made it so, that it is only 1 line of text for each round ! * 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.