Перейти к содержанию
Авторизация  
boVer

Осада: тп + даты + замок

Рекомендуемые сообщения

Доброго времени суток. Сборка ПВ интерлюд. Находил подобные темы на форуме, но к решению проблемы ничего не привело.
Сразу напишу - ответы по типу "удали сборку" и тд оставьте при себе пожалуйста.
Теперь суть проблемы:
1. Как отключить запрет телепорта в осаждаемый город? Перелопатил все конфиги - уже глаза болят вычитывать, никак не найду.
2. Как сделать осаду только одного замка?
3. Как сделать осаду этого замка каждый день? 

Заранее спасибо за ответы.

Изменено пользователем boVer
  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
29 минут назад, boVer сказал:

Доброго времени суток. Сборка ПВ интерлюд. Находил подобные темы на форуме, но к решению проблемы ничего не привело.
Сразу напишу - ответы по типу "удали сборку" и тд оставьте при себе пожалуйста.
Теперь суть проблемы:
1. Как отключить запрет телепорта в осаждаемый город? Перелопатил все конфиги - уже глаза болят вычитывать, никак не найду.
2. Как сделать осаду только одного замка?
3. Как сделать осаду этого замка каждый день? 

Заранее спасибо за ответы.

1.В ядре ищи.

2.В sql отруби ненужные замки

3. Конфиг, или если нету то ядро.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
59 минут назад, boVer сказал:

Доброго времени суток. Сборка ПВ интерлюд. Находил подобные темы на форуме, но к решению проблемы ничего не привело.
Сразу напишу - ответы по типу "удали сборку" и тд оставьте при себе пожалуйста.
Теперь суть проблемы:
1. Как отключить запрет телепорта в осаждаемый город? Перелопатил все конфиги - уже глаза болят вычитывать, никак не найду.
2. Как сделать осаду только одного замка?
3. Как сделать осаду этого замка каждый день? 

Заранее спасибо за ответы

 

1. Конфиг есть на это.

2. Убрать нпц везде для регистрации кроме Адена.

3. Только ядро, конфиг не поможет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, boVer сказал:

Доброго времени суток. Сборка ПВ интерлюд. Находил подобные темы на форуме, но к решению проблемы ничего не привело.
Сразу напишу - ответы по типу "удали сборку" и тд оставьте при себе пожалуйста.
Теперь суть проблемы:
1. Как отключить запрет телепорта в осаждаемый город? Перелопатил все конфиги - уже глаза болят вычитывать, никак не найду.
2. Как сделать осаду только одного замка?
3. Как сделать осаду этого замка каждый день? 

Заранее спасибо за ответы.

1. В конфигах скорей всего нету, тут как вариант сделать нубл тп или сделай тп методом как нубл. Оно находится, и правится вот здесь /data/scripts/teleports/noble.java - для нубла разрешен телепорт.
2. Все остальные замки в базе данных сделай даты год 2022.
3. Только ручками каждый день выставлять период осады. Или же как вариант попробовать: 
конфиг custom.cfg - ставишь интервал 1 день. Остальные замки выставляешь на 2022 или 2025 год, по идее один замок будет каждый день работать.

#Интервал осад, дни
SiegeInterval = 14


Описал варианты решения без того чтобы лезть в ядро.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

самое главное  что регнуться можно за 24 часа до начала осады как это решить  без  ядра  хз  кроме как регить самому кланы

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
29 минут назад, sniper сказал:

самое главное  что регнуться можно за 24 часа до начала осады как это решить  без  ядра  хз  кроме как регить самому кланы

Сторонним скриптом сделать рег, например. Другой вопрос - зачем так извращаться, если в ядре проще сделать. ) 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

были бы исходы  я бы не писал  сюда

это каким стороним на  AI или ява можно?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, Rolo сказал:

Сторонним скриптом сделать рег, например. Другой вопрос - зачем так извращаться, если в ядре проще сделать. ) 

Подскажите, куда смотреть в исходах. Буду очень благодарен

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, sniper сказал:

были бы исходы  я бы не писал  сюда

это каким стороним на  AI или ява можно?

В виде жесткого костыля можно скрипт на джаве накидать, который будет регать клан на осаду замка, а не через диалог с обычным манагером. 
Другой вопрос в том, как у Вас организована осада каждый день? Там все так же сутки на регистрацию? Обычно-то регистрация за сутки закрывается, и если никто не регнулся - осада отменяется вовсе, а если она каждый день, то... ) В общем, я бы с выяснения этого момента начал, а как регать в обход манагера - дело пятое. 

 

 

21 минуту назад, boVer сказал:

Подскажите, куда смотреть в исходах. Буду очень благодарен

Вот здесь боюсь ошибиться, и не стану говорить уверенно, не колупался там, но вероятно стоит глянуть как минимум: 
pwsoft\src\net\sf\l2j\gameserver\model\entity\Castle.java
pwsoft\src\net\sf\l2j\gameserver\instancemanager\SiegeManager.java

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
10 часов назад, Rolo сказал:

В виде жесткого костыля можно скрипт на джаве накидать, который будет регать клан на осаду замка, а не через диалог с обычным манагером. 
Другой вопрос в том, как у Вас организована осада каждый день? Там все так же сутки на регистрацию? Обычно-то регистрация за сутки закрывается, и если никто не регнулся - осада отменяется вовсе, а если она каждый день, то... ) В общем, я бы с выяснения этого момента начал, а как регать в обход манагера - дело пятое. 

 

 

Вот здесь боюсь ошибиться, и не стану говорить уверенно, не колупался там, но вероятно стоит глянуть как минимум: 
pwsoft\src\net\sf\l2j\gameserver\model\entity\Castle.java
pwsoft\src\net\sf\l2j\gameserver\instancemanager\SiegeManager.java

Проблему с регистрацией решил, изменил в исходинике Siege.java. 
При изменении даты осады, и попытке сделать осаду каждый день появилась новая штука - после замены ядра осада идет весь день, если ее остановить, то след. осада ставиться на число - через неделю от текущего.
Ниже кусок кода исходника
 

_siegeDayOfWeek = rs.getInt("siegeDayOfWeek");
                if (_siegeDayOfWeek < 1 || _siegeDayOfWeek > 7) {
                    //_siegeDayOfWeek = 7;
                    //_siegeDayOfWeek = _siegeDate.get(Calendar.DAY_OF_WEEK);
                    Calendar Day = Calendar.getInstance();
                    int NextDaySiege = Day.get(Calendar.DAY_OF_WEEK);
                    _siegeDayOfWeek = NextDaySiege;
                }

 

Изменено пользователем boVer
  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
4 часа назад, boVer сказал:

Проблему с регистрацией решил, изменил в исходинике Siege.java. 
При изменении даты осады, и попытке сделать осаду каждый день появилась новая штука - после замены ядра осада идет весь день, если ее остановить, то след. осада ставиться на число - через неделю от текущего.
Ниже кусок кода исходника
 


_siegeDayOfWeek = rs.getInt("siegeDayOfWeek");
                if (_siegeDayOfWeek < 1 || _siegeDayOfWeek > 7) {
                    //_siegeDayOfWeek = 7;
                    //_siegeDayOfWeek = _siegeDate.get(Calendar.DAY_OF_WEEK);
                    Calendar Day = Calendar.getInstance();
                    int NextDaySiege = Day.get(Calendar.DAY_OF_WEEK);
                    _siegeDayOfWeek = NextDaySiege;
                }

 

Приведенный Вами кусок кода в целом не юзабильный на таком концепте, ибо он пытается определить день недели, когда будет следующая осада, а Вам такое не актуально уже. Зная ПВ софт, там кучу подвыдных камней на каждом шагу нарыть можно, я этот вопрос не колупал, и что-то советовать конкретное боюсь. :D

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

попробуй скомпилить изменив

и посмотреть на результат

//_siegeDayOfWeek = 7; на 
//_siegeDayOfWeek = 1;

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
21 минуту назад, sniper сказал:

попробуй скомпилить изменив

и посмотреть на результат


//_siegeDayOfWeek = 7; на 

//_siegeDayOfWeek = 1;

Изменив закомментированные строки?  :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...