Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Период олимпиады
#1
У меня не знаю как настроено но 1 ого числа не дают хиро. Где настройть период олимпиады- что бы 1 ого числа хиро давали ? =_=

Добавлено через 3 часа 53 минуты
Help Guys!!
Ответ
#2
а меня из - за химии могут к сессии не допустить. Что делать? а.
PS. на будующее говорите хоть что у вас за сборка, старая ли. мб на ней вообще хиро не реализовано и тд тп. невозможно ответить на ваш вопрос не зная ничего.
Ответ
#3
Вот типа так нада Smile) какраз мне нада тоже ...

Сборка Gracia Final СКАЗКА

Подскажите пожайлуста ...Как зделать чтобы хиро выдавалося каждую неделю по понедельникам ???
[Изображение: fa00553fe148.jpg]
Ответ
#4
Попробую объяснить примитивный способ, которым сам пользуюсь, не знаю подойдет ли для твоей сборки.
Суть такова - у меня в базе есть табличка Olympiad_data, в ней соответственно столбец Olympiad_end, там ставится число что-то вроде 1308510200000 (как выяснил опытным путем - это количество милисекунд от 01.01.1970, хз что за дата и почему она берется как отсчет Smile ) .
Чтобы вычислить, к примеру время 00:00 между воскресеньем и понедельником, я взял дату осады 20:00 этого воскресенья (она тоже в таблицах пишется таким же громадным числом например 1306915200000), затем прибавил к ней 4 часа (это 14400000 милисек) и при выключенном сервере заменил свое число в столбике Olympiad_end с 1308510200000 на 1306929600000.
Ну и теперь, каждый раз после обновления героев, я просто прибавляю к этому числу 1306929600000 7 дней (т.е. 604800000 milis) и вписываю в этот столбик при выключенном серве.


Для удобства можно сделать автоматический скрипт, но я сам тока учусь всему этому и еще руки не дошли. Но представляю это себе примерно так:
Сперва нужно создать новую табличку, например Oly_dates со столбиком Date, куда будет записываться прошлое число смены героев, чтобы каждый раз его не записывать вручную:
CREATE TABLE `Oly_dates` (
`date` int(20) NOT NULL default '0',
PRIMARY KEY (`date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `Oly_dates` VALUES ('1306929600000');
Затем сделать скрипт (тут я уже не ручаюсь за написанное, пишу чтобы знающие люди подсказали и доработали мою идею, если найдут время Smile , т.к. пишу по аналогии с другим скриптом и сам не все понимаю) :
$result = mysql_query("SELECT MAX(`date`)+604800000 AS `id` FROM `Oly_dates`");
$row = mysql_fetch_assoc($result);
$newdate = $row['id'];
mysql_query("UPDATE `Olympiad_data` SET `Olympiad_end` = ".$newdate." ;");
mysql_query("INSERT INTO `Oly_dates` (`date`) VALUES ('".$newdate."')");

В итоге по задумке дата olympiad_end в табличке olympiad_data должна замениться на прошлую+неделя и продублироваться в табличку oly_dates, чтобы потом уже к ней, как последней, прибавлять опять неделю.

То что выделено жирным шрифтом проверил лично, работало на сборках L2jserver и подобных, за остальные не ручаюсь, прошу отписаться разбирающихся в подобных вещах людей и по-возможности помочь реализовать.
Ответ
#5
Дело в том что система олимпа написана и работает через одно местоSmile
Геройство выдается 1 числа в 12 или 13 часов дня(я непомню уже точно - давно исправил), причем автоматически, а не через столб.
Ответ
#6
А вот насчет выдачи геройства (именно выдачи, а не конца олимпа) - там же в таблице Olympiad_data есть столбец Validation_end, дак вот это число выставляется само автоматически сразу после окончания периода (о нем написал выше) и зависит от конфига Olympiad.properties, обычно валидация стоит 24 часа, т.е. к Olympiad_end прибавляется 24часа (т.е. 86400000 мсек) автоматом после окончания периода и результат заносится в Validation_end (собсно время выдачи геройства и обнуления очков для нового периода) .
Я сам поставил в конфигах время валидации 5 минут, т.е. олимп тока кончается и через 5 минут уже герои обновляются Smile , минус тока в том, что если в эти 5 минут не заскринил для себя очки, то уже не уСПеешь ) .
Ответ
#7
linliss Написал:Дело в том что система олимпа написана и работает через одно местоSmile
Геройство выдается 1 числа в 12 или 13 часов дня(я непомню уже точно - давно исправил), причем автоматически, а не через столб.

Не подскажите как сделали чтоб через столб брать геройства? А не автоматом как стоит?
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  настройка олимпиады хф vakisdasi 0 1,408 10-16-2019, 06:09 PM
Последний пост: vakisdasi
  Помогите с настройкой олимпиады jackdanie1s 7 2,028 07-25-2013, 01:45 AM
Последний пост: Foru
  Период олимпиады halaymoon 11 3,350 11-06-2012, 08:00 AM
Последний пост: Zubastic
  Запуск олимпиады Rebillion duhnochi 3 3,795 08-01-2012, 12:04 PM
Последний пост: Visor
  как остановить олимпиад период PaperMan 3 1,408 08-01-2012, 07:32 AM
Последний пост: uzola
  квадраты олимпиады High Five PaperMan 1 1,499 07-27-2012, 06:42 PM
Последний пост: Visor
  Проблема с обнуление статистики Олимпиады после каждого рестарта fear22 5 2,474 03-30-2012, 09:30 PM
Последний пост: fear22
  Просмотр олимпиады High Five MarshalRotar 12 5,409 07-16-2011, 06:25 PM
Последний пост: LineOFWar
  Период и дата осады на l2jserver mimita 5 4,344 03-12-2010, 09:17 PM
Последний пост: jiuo
  Мануал как изменять время олимпиады FlooderaS 0 1,846 07-10-2009, 08:48 AM
Последний пост: FlooderaS

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)