Jump to content

[Insane Limits V0.9.8.0] [0.2.1.1 Reserve Slot for Server Starter]


ImportBot

Recommended Posts

Originally Posted by supermillhouse*:

 

My name is still in the ReservedSlot List, and I don't understand what do you mean by "date" bits. You mean the log/txt file that is made by this plugin?

 

PS: I have accepted your friend request.

Yes, the one that is in the bf4 folder. Delete your name out of it if it is there, the bit just after your name is the date when you were added and and a number between ":" and dates are the number of days you have left and the last date is used by remove from reserve slot limit.

 

 

Sent from my iPad using Tapatalk

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

Originally Posted by kcuestag*:

 

Yes, the one that is in the bf4 folder. Delete your name out of it if it is there, the bit just after your name is the date when you were added and and a number between ":" and dates are the number of days you have left and the last date is used by remove from reserve slot limit.

 

 

Sent from my iPad using Tapatalk

Ok I deleted my name (And date and days left) from that text file, rebooting the layer to see if it helped.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by supermillhouse*:

 

Ok I deleted my name (And date and days left) from that text file, rebooting the layer to see if it helped.

That list contains information of players eligible for a reserve slot, you or your clan or permanently reserved players should never appear in the list, if they do it is probably because of a failed tag fetch. There is not much I can do to stop this, unless you whitelist by player name instead.

 

 

Sent from my iPad using Tapatalk

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

Originally Posted by kcuestag*:

 

That list contains information of players eligible for a reserve slot, you or your clan or permanently reserved players should never appear in the list, if they do it is probably because of a failed tag fetch. There is not much I can do to stop this, unless you whitelist by player name instead.

 

 

Sent from my iPad using Tapatalk

Okay, that worked, thank you!!

 

I'll keep it in mind in case it happens again, thanks for the help!

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

Originally Posted by OddJob001*:

 

Awesome idea for a script.

 

Questions

 

1 - Will the person get a yell immediately after they are added, or only on their next join of the server?

2 - How exactly does this get copied to the reservedlist.txt on the server layer and will it overwrite it or just add to it?

 

 

Edit: Can I change this:

 

//check if server population is more than 4

if ((totaltcount >= 4) && (totaltcount

//if server population is less than 4 then delete temp file if it exists

else if(totaltcount

to this,

//check if server population is more than 1

if ((totaltcount >= 1) && (totaltcount

//if server population is less than 1 then delete temp file if it exists

else if(totaltcount

without other issues?

 

Lastly, is there a way to avoid this:

gives them a potential 5 days on the reserve slot but the slot is not given to them yet.

and make it so they get a reserve slot immediately not if they log in again?

 

Thanks!

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

Originally Posted by supermillhouse*:

 

1 - Will the person get a yell immediately after they are added, or only on their next join of the server?

They get a yell when they are given a slot, so it would be the second time.

 

2 - How exactly does this get copied to the reservedlist.txt on the server layer and will it overwrite it or just add to it?

I'm assuming you mean the game server reserve list, it just adds to it.

Server commands:

plugin.ServerCommand("reservedSlotsList.add", rescount[0]);

plugin.ServerCommand("reservedSlotsList.save");

 

 

//check if server population is more than 4

if ((totaltcount >= 4) && (totaltcount

//if server population is less than 4 then delete temp file if it exists

else if(totaltcount

 

//check if server population is more than 1

if ((totaltcount >= 1) && (totaltcount

//if server population is less than 1 then delete temp file if it exists

else if(totaltcount

Cant see the point in doing this but there should be no problem.

 

get a reserve slot immediately not if they log in again?

This would be a rewrite so it is not quick and easy.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by OddJob001*:

 

I'm assuming you mean the game server reserve list, it just adds to it.

Server commands:

plugin.ServerCommand("reservedSlotsList.add", rescount[0]);

plugin.ServerCommand("reservedSlotsList.save");

Thank you for your answers. This one still baffles me. We have been running this script for about the last day or two. Testing it with enough people that I can see it adding people to the ReserveList_IP_port.txt list. However when I check the actual reserveredslotlist.txt on the server side, it does not see any of these people. Does this script only work for servers that have both procon and the server, but separate them by a layer/port?

 

Our current GSP is NFO, but the Procon layer is with GameServers. So far it does add people that ReserveList_IP from above, but the names never actually get moved over to the server reserved list.

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

Originally Posted by supermillhouse*:

 

If you look in, logs/insane limits/something dump.txt it should contain all the names of the players eligible, if they have been added to the server reserve slot the name should say something like so many days left on the reserve list. If they are not added it will say something about a no show, both should have a day quantity.

 

 

Sent from my iPad using Tapatalk

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

Originally Posted by OddJob001*:

 

If you look in, logs/insane limits/something dump.txt it should contain all the names of the players eligible, if they have been added to the server reserve slot the name should say something like so many days left on the reserve list. If they are not added it will say something about a no show, both should have a day quantity.

 

 

Sent from my iPad using Tapatalk

For whatever reason, people were getting added to the reservelist.txt on the procon layer, after 2 days of helping the server (as expected). But the names from that list didnt get transferred to the reservedlist.txt on the NFO (GSP layer) until the next day. I would guess something on the way of how NFO manages information from Procon. Works exactly how we want it to. Thank you.

 

Cheers.

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

Originally Posted by Tomgun*:

 

yo millhouse, ya reckon you could get this to talk to multibalancer and put there names on the friends list aswell so as an extra gift they dont get balanced if you set up the multibalancer plugin properly

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

Originally Posted by supermillhouse*:

 

yo millhouse, ya reckon you could get this to talk to multibalancer and put there names on the friends list aswell so as an extra gift they dont get balanced if you set up the multibalancer plugin properly

I'm assuming you mean update the multibalancer's whitelist with the reserve slot people from this limit? Just double checking.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by supermillhouse*:

 

yeah that it, it will give them team balance friends list for the 7 days also

this is only possible if I can get this officially implemented

 

check out this post* and later ones.

 

I have modified my copy of insane limits to get it to work but I don't know how safe it is. The limit created would have to manage the entire list, as I don't believe it is possible to read the whitelist, only overwrite it. But this shouldn't be a problem.

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

Originally Posted by Tomgun*:

 

over writing it is fine for now as I have nobody on the friends list so you could put that limit up and state it overwrites the list please

 

great work :smile:

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

Originally Posted by supermillhouse*:

 

over writing it is fine for now as I have nobody on the friends list so you could put that limit up and state it overwrites the list please

 

great work :smile:

I will put the limit up if PC9 update the plugin. If it comes to it I can send you my insane limits mod but I would rather have it done officially.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by supermillhouse*:

 

yo millhouse, ya reckon you could get this to talk to multibalancer and put there names on the friends list aswell so as an extra gift they dont get balanced if you set up the multibalancer plugin properly

This one is likely to go on hold for the time being as there will be no introduction of the required command, and I do understand why. I will keep this idea in mind if I come to a point where I learn C# and go for a new plugin myself.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PapaCharlie9*:

 

There's more than one way to go about this. :smile:

 

Try posting a request in the MULTIbalancer plugin thread for a way for other plugins to call MULTIbalancer and get/set the Whitelist. I've already added a way for plugins to set an end-of-round scramble, so why not this?

 

Then you can use the existing plugin.CallOtherPlugin() function in Insane Limits to call it.

 

I said I wouldn't extend Insane Limits, but I never said I wouldn't extend MULTIbalancer. :smile:

 

Getting info will be complicated. You'll have to provide me with the specification of the plugin to call back. You'll have to set up a function that other plugins can call and then pass the class name and method name. Then we need to agree on the JSON string to pass.

 

Setting is much easier. You just need to call either MULTIbalancer.UpdatePluginData or MULTIbalancer.UpdatePluginJSON with a new property name that I will have to add. Details are in post #2 of the MB thread.

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

Originally Posted by supermillhouse*:

 

There's more than one way to go about this. :smile:

 

Try posting a request in the MULTIbalancer plugin thread for a way for other plugins to call MULTIbalancer and get/set the Whitelist. I've already added a way for plugins to set an end-of-round scramble, so why not this?

 

Then you can use the existing plugin.CallOtherPlugin() function in Insane Limits to call it.

 

I said I wouldn't extend Insane Limits, but I never said I wouldn't extend MULTIbalancer. :smile:

 

Getting info will be complicated. You'll have to provide me with the specification of the plugin to call back. You'll have to set up a function that other plugins can call and then pass the class name and method name. Then we need to agree on the JSON string to pass.

 

Setting is much easier. You just need to call either MULTIbalancer.UpdatePluginData or MULTIbalancer.UpdatePluginJSON with a new property name that I will have to add. Details are in post #2 of the MB thread.

Ok, this will at least get it working for multibalancer.
* Restored post. It could be that the author is no longer active.
Link to comment
  • 3 weeks later...

Originally Posted by ToM666*:

 

Hi guys

 

Could somone modify this code from the "server seeder reserved slot script by supermillhouse*" to send no message on 1st spawn and then the reserved slot message on 2nd spawn only?

 

I have xpkillers stats logger using the current 1st spawn slot.

 

Many Thanks

 

ToM

 

 

Code:

if (limit.Activations(player.Name) > 1) return false;

string path = "Logs/InsaneLimits/GUID.log";
if (!Directory.Exists(Path.GetDirectoryName(path))) Directory.CreateDirectory(Path.GetDirectoryName(path));

plugin.Log(path, plugin.R("[%date% %time%] [%p_ct% - %p_n%]     >>EA GUID:    %p_eg%<<         and         >>PB GUID:     %p_pg%<<     and      >>IP:    %p_ip%<<"));
//The thread code below allows me to delay the reward message on first  spawn because directly below this text is a !rules yell. It then yells  the reward message 5 seconds later

//simple yell to start for type !rules for server rules
plugin.SendPlayerMessage(player.Name, "Type !rules for Server Rules");

// Closure bindings for the delegate
string port = server.Port;
string host = server.Host;
string yellMsg = null;
string dir = "Plugins\\BF4\\ReserveList_" +host+ "_" +port+ ".txt";
if(File.Exists(dir))
  {
  //read names on reserve list
  string namecheck = File.ReadAllText(dir);
  //plugin.ConsoleWrite(namecheck);
  //split names on Reserve list at ", "
  string[] resnames = Regex.Split(namecheck, ", ");
  //check each split name 
  foreach (string resname in resnames)
    {
    //split the name at ":" in to array, 1st is player name, 2nd is date  last updated, 3rd can be ignored, was extra code in second check
    string[] rescount = resname.Split(':');
    if (rescount[0] == player.Name)
      {
      if (plugin.GetReservedSlotsList().Contains(rescount[0]))
        {
        int value = Convert.ToInt32(rescount[2]);
        yellMsg = "You have a reserve slot for helping to start the  server, it will expire in approximately "+value+" day(s) unless you help  again.";
        break;
        }
      }
    }
  }

// Thread delegate

ThreadStart AdminYell = delegate  {
//5 second delay before yelling the reward message
  Thread.Sleep(5*1000);
  plugin.SendPlayerYell(player.Name, yellMsg, 5);
  };

// Main thread code
if (yellMsg != null)
  {
  Thread t = new Thread(AdminYell);
  t.Start();
  Thread.Sleep(10);
  }
return false;
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by ToM666*:

 

Change first line bit

player.Name > 1

to

player.Name != 2

That should work

 

Sent from my GT-N7000 using Tapatalk

Thanks mate.

 

I've made the changes as instructed.

I'll let you know if it works.

 

Best Regards

 

ToM

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

Originally Posted by HARDCOREBF*:

 

hello , loving that limit , but

is anyone have problem , that when player with "reserved spot" connecting , it kicks out few players even server not full , i having this issue . Any idea ?

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

Originally Posted by supermillhouse*:

 

Has nothing to do with the limit. The limit doesn't do any kicking. Your gripe may be with the reserve slot handling. Blame dice/ ea

 

 

Sent from my iPad using Tapatalk

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

Originally Posted by HARDCOREBF*:

 

I see , can anyone share , if someone was using this for a bit ?

Looks like thats whats happening, reserved player joining , several other getting kicked , will tests for several days and report !

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

Originally Posted by Vasyya*:

 

[15:55:05 22] [insane Limits] Thread(settings): Compiling Limit #1 - Add to Res - OnJoin

[15:55:05 28] [insane Limits] Thread(settings): ERROR: 3 errors compiling Code

[15:55:05 28] [insane Limits] Thread(settings): ERROR: (CS0103, line: 172, column: 47): The name 'players' does not exist in the current context

[15:55:05 28] [insane Limits] Thread(settings): ERROR: (CS0103, line: 196, column: 57): The name 'host' does not exist in the current context

[15:55:05 28] [insane Limits] Thread(settings): ERROR: (CS0103, line: 196, column: 68): The name 'port' does not exist in the current context

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

Originally Posted by PapaCharlie9*:

 

[15:55:05 22] [insane Limits] Thread(settings): Compiling Limit #1 - Add to Res - OnJoin

[15:55:05 28] [insane Limits] Thread(settings): ERROR: 3 errors compiling Code

[15:55:05 28] [insane Limits] Thread(settings): ERROR: (CS0103, line: 172, column: 47): The name 'players' does not exist in the current context

[15:55:05 28] [insane Limits] Thread(settings): ERROR: (CS0103, line: 196, column: 57): The name 'host' does not exist in the current context

[15:55:05 28] [insane Limits] Thread(settings): ERROR: (CS0103, line: 196, column: 68): The name 'port' does not exist in the current context

Looks like you didn't copy all the code when you pasted. Just try doing it again. Start over from limit #1 first_check and repaste all the code, then do the same for limit #1 second_check.
* Restored post. It could be that the author is no longer active.
Link to comment
  • 1 month later...

Originally Posted by exxerich*:

 

my server didnt add starters to the reserved slot list...

 

Here my Settings:

 

Screenshot (10).png

 

Here my code:

 

Limit #1

First Check:

 

List players = new List();

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);

 

int RSThresh = 5; //When the player should get a reserve slot, when he has this number of days or more.

int numoftemps = 10; //Number of players to be copied to reserve list

int triggertransfer = 20; //When the players list is copied over

int RSCap = 30; //Max number of reserve slot days

int rewarddays = 5; //Number of days rewarded for helping to start the server once

int totaltcount = server.PlayerCount;

int i = 0;

string port = server.Port;

string host = server.Host;

string dir = "Plugins\\BF4\\TempList_" +host+ "_" +port+ ".txt";

string done = "Plugins\\BF4\\Done_" +host+ "_" +port+ ".txt";

string logdir = "Logs\\InsaneLimits\\ReserveList_" +host+ "_" +port+ "dump_file.txt";

if (!Directory.Exists(Path.GetDirectoryName(logdir))) Directory.CreateDirectory(Path.GetDirectoryName(lo gdir));

 

List listofplayers = new List();

 

foreach (PlayerInfoInterface p in players)

{

listofplayers.Add(p.Name);

}

 

 

//check if server population is more than 4

if ((totaltcount >= 4) && (totaltcount

//if server population is less than 4 then delete temp file if it exists

else if(totaltcount

{

if (File.Exists(dir)) File.Delete(dir);

if (File.Exists(done)) File.Delete(done);

}

//check if server population is more than 10 then transfer to ReserveList

else if((totaltcount > triggertransfer) && (File.Exists(dir)))

{

 

int runcount = 0;

 

if(File.Exists(dir))

{

//read names on temp list

string namecheck = File.ReadAllText(dir);

//split names on temp list at ", "

string[] tempnames = Regex.Split(namecheck, ", ");

//check each split name and add to reserve slot list

foreach (string tempname in tempnames)

{

//split the name at ":" in to array, 1st is player name, 2nd is date last updated

string[] tempcount = tempname.Split(':');

if ((listofplayers.Contains(tempcount[0]) && runcount

{runcount++;

plugin.ConsoleWrite(tempname);

DateTime now = DateTime.Now;

string datestring = now.ToString("d");

 

string dir2 = "Plugins\\BF4\\ReserveList_" +host+ "_" +port+ ".txt";

if(File.Exists(dir2))

{

//read names on reserve list

string resnamecheck = File.ReadAllText(dir2);

plugin.ConsoleWrite(resnamecheck);

//split names on temp list at ", "

string[] resnames = Regex.Split(resnamecheck, ", ");

//finds last entry

string reslastitem = resnames[resnames.Length - 1];

//check each split name that is in the reserve list and updates if it is in the temp list

foreach (string resname in resnames)

{

//split the reserve name at ":" in to array, 1st is player name, 2nd is the last date participated in seeding, 3rd is the number of days reward if he is on the reserve list, 4th is a date used for expiry

//the 4th entry is used to subtract 1 digit a day off of the 3rd entry

string[] rescount = resname.Split(':');

//checks if the reserve name equals the player name in temp

if (rescount[0] == tempcount[0])

{

//stops multiple rewards per day

if(rescount[1] != datestring)

{

//add on the reward

int value = Convert.ToInt32(rescount[2]);

value = value + rewarddays;

//cap the reserve slot days at RSCap

if (value > RSCap) value = RSCap;

//save the new data

string newlist = resnamecheck.Replace(resname, rescount[0]+":"+ datestring +":"+value.ToString()+":"+rescount[3]);

File.WriteAllText(dir2, newlist);

//adds player to reserve slot if the have helped enough and are not on it.

if (value >= RSThresh)

{

if (!plugin.GetReservedSlotsList().Contains(rescount[0]))

{

plugin.ServerCommand("reservedSlotsList.add", rescount[0]);

plugin.ServerCommand("reservedSlotsList.save");

plugin.PRoConChat(rescount[0] + " got added to ReserveSlot successfully with " + value.ToString() + " day(s) remaining.");

plugin.Log(logdir, rescount[0] + " got added to the ReserveSlot successfully with " + value.ToString() + " day(s) remaining.");

}

//message player

plugin.SendPlayerYell(rescount[0], rescount[0] + ": You have been awarded a reserve slot for helping to start the server, it will expire in approximately "+value+" days unless you help again.", 5);

}

}

//notify you that a player tried to help twice or more on a day to start server

else {plugin.ConsoleWrite(rescount[0] + " helped on the same day with no second reward.");}

break;

}

//if not in reserve list adds player and info to end of list.

else if (resname == reslastitem)

{

string newlist = resnamecheck + ", " + tempcount[0] +":" + datestring +":"+ rewarddays +":"+ datestring;

File.WriteAllText(dir2, newlist);

plugin.PRoConChat("New Player," + tempcount[0] + "added to end of the reserve slot list.");

plugin.Log(logdir, "New Player," + tempcount[0] + "added to end of the reserve slot list with " + rewarddays.ToString() + " day(s) remaining.");

}

}

}

//if reserve list doesnt exist, creates list with first entry

else

{

string newlist = "Blank, "+tempcount[0] +":"+ datestring +":"+ rewarddays +":"+ datestring;

File.WriteAllText(dir2, newlist);

plugin.PRoConChat("Reserve slot list created with first player," + tempcount[0] + ".");

plugin.Log(logdir, "Reserve slot list created with first player," + tempcount[0] + ".");

}

}

else if (runcount >= numoftemps)break;

}

}

//deletes temp list after transfer to reserve list

File.Delete(dir);

File.WriteAllText(done, "DONE");

}

 

return false;

 

Limit #1

Second Check:

 

List players = new List();

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);

 

string port = server.Port;

string host = server.Host;

 

foreach (PlayerInfoInterface p in players)

{

// New tag extraction code by PapaCharlie9

String tag = p.Tag;

 

if (String.IsNullOrEmpty(tag)) {

// Maybe they are using [_-=]XXX[=-_]PlayerName[_-=]XXX[=-_] format

Match tm = Regex.Match(p.Name, @"^[=_\-]*([^=_\-]{2,4})[=_\-]");

if (tm.Success) {

tag = tm.Groups[1].Value;

} else {

tm = Regex.Match(p.Name, @"[^=_\-][=_\-]([^=_\-]{2,4})[=_\-]*$");

if (tm.Success) {

tag = tm.Groups[1].Value;

} else {

tag = String.Empty;

}

}

}

 

//This stops your clan members and any other clan friends in the "Res" list being added to the reward and them possibly later getting removed

 

if ((!plugin.isInList(p.Name, "Res")) && (!plugin.isInList(tag, "Res")))

{

string dir = "Plugins\\BF4\\TempList_" +host+ "_" +port+ ".txt";

if(File.Exists(dir))

{

string namecheck = File.ReadAllText(dir);

// plugin.ConsoleWrite(namecheck);

string[] tempnames = Regex.Split(namecheck, ", ");

string templastitem = tempnames[tempnames.Length - 1];

//stops the names being repeatedly entered in to the list every time it runs

foreach (string tempname in tempnames)

{

string[] tempcount = tempname.Split(':');

if (tempcount[0] == p.Name)

{

break;

}

else if (tempname == templastitem)

{

//add new player

plugin.ConsoleWrite("Templist New Player: " + p.FullName);

DateTime now = DateTime.Now;

string datestring = now.ToString("d");

string newlist = namecheck + ", " + p.Name +":" + datestring;

File.WriteAllText(dir, newlist);

}

}

}

else

{

//create new temp file with player

plugin.ConsoleWrite("Tempfile New Player: " + p.FullName);

DateTime now = DateTime.Now;

string datestring = now.ToString("d");

string newlist = "Blank, "+p.Name +":"+ datestring;

File.WriteAllText(dir, newlist);

}

}

}

return false;

 

Limit #2

First Check:

 

int RSOffThresh = 0; //Remove Reserve slot on number of days

int RSDellThresh = -1; //Remove from Reserve list on number of days

 

string port = server.Port;

string host = server.Host;

string dir = "Plugins\\BF4\\ReserveList_" +host+ "_" +port+ ".txt";

if(File.Exists(dir))

{

string namecheck = File.ReadAllText(dir);

plugin.ConsoleWrite(namecheck);

string[] resnames = Regex.Split(namecheck, ", ");

DateTime now = DateTime.Now;

string datestring = now.ToString("d");

foreach (string resname in resnames)

{

if (resname != "Blank")

{

string[] rescount = resname.Split(':');

if (rescount[3] != datestring)

{

int value = Convert.ToInt32(rescount[2]);

value--;

if ((value == RSOffThresh) && (plugin.GetReservedSlotsList().Contains(rescount[0])))

{

plugin.ServerCommand("reservedSlotsList.remove", rescount[0]);

plugin.ServerCommand("reservedSlotsList.save");

plugin.ConsoleWrite(value.ToString());

namecheck = namecheck.Replace(resname, rescount[0]+":"+ rescount[1] +":"+value.ToString()+":"+ datestring);

plugin.ConsoleWrite(namecheck);

File.WriteAllText(dir, namecheck);

}

else if(value

{

plugin.ConsoleWrite(value.ToString());

namecheck = namecheck.Replace(", "+resname, "");

plugin.ConsoleWrite(namecheck);

File.WriteAllText(dir, namecheck);

}

else

{

plugin.ConsoleWrite(value.ToString());

namecheck = namecheck.Replace(resname, rescount[0]+":"+ rescount[1] +":"+value.ToString() +":"+ datestring);

plugin.ConsoleWrite(namecheck);

File.WriteAllText(dir, namecheck);

}

}

}

}

}

return false;

 

Can anyone help me?

* 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.