Jump to content
Sign in to follow this  
boVer

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

Recommended Posts

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

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

Edited by boVer
  • Like 1

Share this post


Link to post
Share on other sites
29 минут назад, boVer сказал:

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

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

1.В ядре ищи.

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

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

Share this post


Link to post
Share on other sites
59 минут назад, boVer сказал:

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

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

 

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

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

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

Share this post


Link to post
Share on other sites
2 часа назад, boVer сказал:

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

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

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

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


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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
29 минут назад, sniper сказал:

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

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

Share this post


Link to post
Share on other sites

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

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

Share this post


Link to post
Share on other sites
2 часа назад, Rolo сказал:

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

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

  • Like 1

Share this post


Link to post
Share on other sites
2 часа назад, sniper сказал:

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

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

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

 

 

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

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

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

Share this post


Link to post
Share on other sites
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;
                }

 

Edited by boVer
  • Like 1

Share this post


Link to post
Share on other sites
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

Share this post


Link to post
Share on other sites

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

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

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

Share this post


Link to post
Share on other sites
21 минуту назад, sniper сказал:

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

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


//_siegeDayOfWeek = 7; на 

//_siegeDayOfWeek = 1;

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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...