Posts: 304
	Threads: 11
	Joined: Oct 2008
	
Reputation: 
0
	 
	
	
		Доброго времени суток!
Подскажите, пожалуйста, возможно ли, осуществить автоматическое удаление аккаунта, если игрок, к примеру, не заходил на сервер определенное кол-во времени?
P.S. Cохранение аккаунта через Dini.
	
	
	
	
		
	
 
 
	
	
	
		
	Posts: 760
	Threads: 25
	Joined: Aug 2009
	
Reputation: 
0
	 
	
	
		Я как то создавал такую тему на павнору, но мне никто не ответил... но, сдесть в релизах лежит мод LVMAX, там это осуществлено =)
	
	
	
	
		
	
 
 
	
	
	
		
	Posts: 203
	Threads: 0
	Joined: Jul 2010
	
Reputation: 
0
	 
	
	
		в файл игрока писать нужно время последнео захода
	
	
	
	
		
	
 
 
	
	
	
		
	Posts: 97
	Threads: 3
	Joined: Oct 2009
	
Reputation: 
0
	 
	
	
		И что потом? Циклом перебирать все файлы игроков (а если их 5000 или более ?) и проверять там параметр даты?
Хотя я другого решения не вижу, но и этот не вариант.
Если сохранять дату последнего входа в одном файле в формате  File|Unixtime ?
Конечно было бы лучше, если бы система аккаунтов была на MySQL, но речь идёт о Dini.
	
	
	
	
		
	
 
 
	
	
	
		
	Posts: 203
	Threads: 0
	Joined: Jul 2010
	
Reputation: 
0
	 
	
	
		угу, можно и сохранять дату последнего входа и в одном файле, но опять же баги обеспечены
	
	
	
	
		
	
 
 
	
	
	
		
	Posts: 262
	Threads: 5
	Joined: Sep 2009
	
Reputation: 
0
	 
	
	
		А как Вы потом собираетесь перебрать все фаилы, которые лежат в папке, если к примеру там будет фаил с ником игрока, т.е Nick1991.ini?
	
	
	
	
		
	
 
 
	
	
	
		
	Posts: 262
	Threads: 5
	Joined: Sep 2009
	
Reputation: 
0
	 
	
	
		Нерационально и убого и символ '|' ставить нельзя, при том, что сам игрок может использовать, как делиметр в своем нике.
	
	
	
	
		
	
 
 
	
	
	
		
	Posts: 1,659
	Threads: 17
	Joined: Sep 2008
	
	
 
	
	
		
Quote:
| 
					Originally Posted by toneysix  Нерационально и убого и символ '|' ставить нельзя, при том, что сам игрок может использовать, как делиметр в своем нике. | 
 С файлами по другому невозможно. Конечно, лучше юзать БД, там с этим гораздо проще.
	
 
	
	
	
		
	
 
 
	
	
	
		
	Posts: 760
	Threads: 25
	Joined: Aug 2009
	
Reputation: 
0
	 
	
	
		а при запуске сервера? открывать файлы players/*.ini и проверять дату последнего захода... хотя как говорили выше акков может быть очень много... ну просто рестарт займет какоето время)))
	
	
	
	
		
	
 
 
	
	
	
		
	Posts: 688
	Threads: 2
	Joined: Oct 2008
	
Reputation: 
0
	 
	
	
		в плагинах что-то для работы с каталогами есть - там должны быть и функции поиска файлов
	
	
	
	
		
	
 
 
	
	
	
		
	Posts: 203
	Threads: 0
	Joined: Jul 2010
	
Reputation: 
0
	 
	
	
		проще всё в одном файле сохранять...
даже если файл будет весить +100кбайт(это уже нихреновое кол-во юзеров), то имхо сервер затратит на его обработку от 2 до 10 секунд...
	
	
	
	
		
	
 
 
	
	
	
		
	Posts: 262
	Threads: 5
	Joined: Sep 2009
	
Reputation: 
0
	 
	
		
		
		
		23.11.2010, 01:26 
(
 Last edited by toneysix; 23/11/2010 at 02:01 AM.
)
	
	 
	
		Kernell по-моему пустые слова пока у тебя дорогои мои, ты сначала сделаи это, чтобы это чётко работало, а потом говори, ибо ты по-моему не сечёшь всеи сути проблемы, которых можно ожидать, лишние проверки на ники и приводят к нерациональности, а ущемление прав игрока тоже не есть хорошо, и как всем известно, любые операции с дисками - это медленные операции, которых лучше избегать. Поэтому мои дорогои про глупость ты не впариваи мне, ну или бабушке впарь она поверит xD
Я бы лучше изменил систему хранения данных, чем делал такие способы, как Kernell, чтобы добавить тормозов на сервер, вы видимо никогда не имели дела с сервером, у которого онлаин > 100, а там придётся учитывать всё, прежде чем реализовывать подобные тормоза.
Aleks10 Ещё лучше, не выспался сегодня? ^^
P.S: Имхо самыи лучшии способ я вижу пока у dimonml, потому что он не затрагивает доп.работу с фаилами и проверками непосредственно при процессе игры, а тем более, на теории не всегда получается так, как должно было работать на практике, таков сэмп и с этим ничего не поделать.
	
	
	
	
		
	
 
 
	
	
	
		
	Posts: 203
	Threads: 0
	Joined: Jul 2010
	
Reputation: 
0
	 
	
	
		без БД и внедрения плагина - способ который я предложил(и кто-то ещё вроде) лучше всего
конечно с БД или плагином можно вообще всё в несколько строк сделать и чтобы всё было быстро
	
	
	
	
		
	
 
 
	
	
	
		
	Posts: 37
	Threads: 2
	Joined: Jun 2007
	
Reputation: 
0
	 
	
	
		а если серьезно то в коде процесс удаления аккаунтов можно разбить на несколько этапов. Т.е. чтобы не сразу все 5000 или больше файлов обрабатывалось. а скажем по 500 файлов каждую минуту, ведь нет такой необходимости за один заход сносить сразу все что надо.
	
	
	
	
		
	
 
 
	
	
	
		
	Posts: 203
	Threads: 0
	Joined: Jul 2010
	
Reputation: 
0
	 
	
	
		да кстате, если надо, могу написать плагин для этого дела...
	
	
	
	
		
	
 
 
	
	
	
		
	Posts: 262
	Threads: 5
	Joined: Sep 2009
	
Reputation: 
0
	 
	
		
		
		
		23.11.2010, 09:15 
(
 Last edited by toneysix; 23/11/2010 at 09:37 AM.
)
	
	 
	
		Зачем нужен плагин, если есть БД, самыи лучшии способ, которыи ничего не затронет - способ dimonml'а, это очевидно, т.е непосредственно при выходе игрока он всё равно обновляет фаил так или иначе, и потом уже командочкои чистим старые фаилы.