Перейти к содержанию
Asterios

11222-11431


Abaddon

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

Опубликовано

Стабильность:

Исправлена проблема приводившая к ненормально высоким лагам на эвентах TvT и Last Hero

Значительная оптимизация кода, исправляющая подвисание игрока после убийства моба

Система авторестарта логина при потере соединения с геймом

Исправление проблемы нестабильности логина на онлайне 2к+

Скиллы:

Анимация паралича

Фикс рассчета МП на танцы/песни

Реализован Shadow Step, Painkiller, Vampiric Mist, Servitor Barrier

Корректно работают массовые суррендеры

Switch и подобные могут сбивать каст и таргет

Массовые скиллы саммона можно использовать без цели

Psycho Symphony, Demonic Blade Dance и Poison Blade Dance наносят немного дамага

Исправление всех скиллов типа NegateEffects, Bleed и Poison

При одевании вещи со скиллом задержка использования не больше 20 секунд

Скиллы инкрустации тоже не все можно использовать сразу после одевания

Петы:

Вещи надетые на пета при следующем вызове наденутся вновь

Фикс использования петами банок

Фикс анализа петом потребности в баффе

Осады:

Реализация новых фортов:  Southern, Narsell, Basin, White Sands, Floran, Cloud Mountain, Tanor, Monastic, Borderland

Корректное отображение времени владения крепостью

Исправлена кнопка Approve в осадах

Разное:

Эпик боссы еще сильнее

Любой лайфстоун можно вставить в любую вещь

Удаление чужих кубиков при заходе на олимпиаду

Конфиг на отображение поиска пути

Исправлен Dimensional Rift

Реализован квест Good Work's Reward

Переписан дроп с тыкв, теперь есть смысл брать большие

Фикс сообщения реюза Wondrous Cubic

В Руне, Годдарте и Шуттгарте меняют куски кубиков

Фикс прокачки SA

Клыки тиранозавров падают только с тиранозавров

Мультиселл обмена рыбы на пруфы безналоговый

Ночь начинается с 0 часов и кончается в 6

Опубликовано

Переписан дроп с тыкв, теперь есть смысл брать большие

дааа я знал! я знал что с ними что-то не так!!! поэтому и копил нектары)

кстати можно поподробнее о влиянии удачи на дроп с тыкв?

Опубликовано

Switch и подобные могут сбивать каст и таргет

Петы:

Вещи надетые на пета при следующем вызове наденутся вновь

Фикс использования петами банок

Фикс анализа петом потребности в баффе

за это спасибо большое )

Разное:

....

Исправлен Dimensional Rift

....

теперь мобы не агрятся со всей комнаты?

Опубликовано

Стабильность:

Система авторестарта логина при потере соединения с геймом

У меня вчера с вечера и по сегодняшнее утро неполучается войти в игру. Симтомы такие: При выборе персонажа появляется окно загрузски, после слышны шумы мира(чайки орут, море шумит). 2 - 3 минуты так продолжается и потом появляется место где я должен быть + сообщение: вас дисконектит. пинг шикарнейший, ниодного пакета не пропало, трасировка не хромает. Брадмаузер не работает, нод вроде не блочит. Я может быть не один такой, но прошлую мою тему удалили через 3 минуты...

Может объясните чего сделали то?

пысы: утром сразу после рестарта сумел пробиться на 1 минуту, далее снова дисконект и всё...

Опубликовано
теперь мобы не агрятся со всей комнаты?
нет, теперь мобов там очень много
У меня вчера с вечера и по сегодняшнее утро неполучается войти в игру.
это у тебя проблемы какие-то
Опубликовано

Есть кстати ещё одна проблемка с агром...когда я Ппшкой бафаюсь, а кто то где то вне зоны моей видимости бьёт моба, этот моб агрится на баф...радиус агра великоват по моему...

Опубликовано

Есть кстати ещё одна проблемка с агром...когда я Ппшкой бафаюсь, а кто то где то вне зоны моей видимости бьёт моба, этот моб агрится на баф...радиус агра великоват по моему...

Это срабатывает, если ты в агролисте этого моба, и расстояние менее 2000. Все правильно.

Опубликовано

кстати не совсем так: тока появившейся моб сагрился на БД который танцевал, причем он небыл в моей пати. а моба пинал я...

Опубликовано

кстати не совсем так: тока появившейся моб сагрился на БД который танцевал, причем он небыл в моей пати. а моба пинал я...

Такого не может быть.

						for(L2NpcInstance monster : target.getHateList().keySet())
if(monster != null && !monster.isDead() && monster.isInRange(this, 2000) && monster.getAI().getIntention() == CtrlIntention.AI_INTENTION_ATTACK)
if(!skill.isHandler() && monster.ParalizeOnAttack(_owner))
{
if(Config.PARALIZE_ON_RAID_DIFF)
ParalizeMe(monster);
return;
}
else if(monster.hasAI())
{
monster.getAI().notifyEvent(CtrlEvent.EVT_SEE_SPELL, skill, this);
monster.getAI().notifyEvent(CtrlEvent.EVT_AGGRESSION, this, aggro);
}[/code]

Перебираются только присутствующие а агролисте. В агролист можно было попасть и другим способом, например моб был агрессивный.

Опубликовано

Это срабатывает, если ты в агролисте этого моба, и расстояние менее 2000. Все правильно.

Как я могу попасть в агролист моба если я его ППшкой уж точно не била...и если я бью моба обычно перед бафом я его добиваю...так что это явно не то

Ладно бы он агрился если рядом стоял, а то прибегает непонятно откуда =( и дерёца =(

Опубликовано

Баф тоже генерирует аггро. Если твои бафы имеют отношение к сопартийцу, который бьет моба в радиусе меньше 2000, будет приоритетное агро на тебя.

Поправь, если что-то не совпадает.

Не совпадает то что я бафаю свою гному исключительно когда она сидит на попе и никого не бьёт

Опубликовано

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

Опубликовано

Такого не может быть.

						for(L2NpcInstance monster : target.getHateList().keySet())

							if(monster != null && !monster.isDead() && monster.isInRange(this, 2000) && monster.getAI().getIntention() == CtrlIntention.AI_INTENTION_ATTACK)

								if(!skill.isHandler() && monster.ParalizeOnAttack(_owner))

								{

									if(Config.PARALIZE_ON_RAID_DIFF)

										ParalizeMe(monster);

									return;

								}

								else if(monster.hasAI())

								{

									monster.getAI().notifyEvent(CtrlEvent.EVT_SEE_SPELL, skill, this);

									monster.getAI().notifyEvent(CtrlEvent.EVT_AGGRESSION, this, aggro);

								}

Перебираются только присутствующие а агролисте. В агролист можно было попасть и другим способом, например моб был агрессивный.

Ну что-то понимаю в коде, но не всё.

Начнем с первого иф:

если (дальше определение условий) монстр не приравнен к классу нулл, монстр не труп(в вовке баги были в скритах, можно было и труп сагрить), монстр с рангом в 2000(хотя я писал =< 2000, но на каждую игру свой язык), и монстр что -то там сравнивает(как я понял - ИИ атаки).

так вот: смущает первое условие: monster != null

Разве не так должно быть: !monster == null ?

Опубликовано

Разве не так должно быть: !monster == null ?

И все-таки, лучше жевать :)

Неужели вы думаете, что написав несколько миллионов строчек кода, мы не знаем таких простых вещей? :D

Опубликовано

но дык: одно равно - присвоение, 2 знака равно - сравнение. Специфики языка незнаю, но всёже интересно) если нет 0 то почему?

Опубликовано

ещё можно monster == !null

А клоню я к тому, что когда я програмил, был спецэфический компилятор, где шаг влево, шаг вправо - хватает за яйца, орет и отказывается компилить. А компиляторы по С++ могут ошибку и не заметить. Я первый раз вижу чтоб писали знак отрицания перед знаком присвоения. Т.к. я повторюсь что у каждой игры свой язык програмирования - я незнаю тонкостей. Вот и спрашиваю. В спорах рождается истина, а не в жевании...

Опубликовано

ясность процесса какраз и зависет от коректности кода.

Ведь нельзя же понять как работает двигатель машины смотря на капот. Надо разобрать, понять принцип :)

Опубликовано
ещё можно monster == !null

Нельзя. Хватит уже уродовать java синтаксис (он же С/С++ синтаксис).

А клоню я к тому, что когда я програмил, был спецэфический компилятор, где шаг влево, шаг вправо - хватает за яйца, орет и отказывается компилить. А компиляторы по С++ могут ошибку и не заметить.

Java компилятор (как и любой другой нормальный) пошлет куда подальше если синтаксис неверный.

Более того, мы пишем в IDE, которая еще до компиляции предупреждает обо всех возможных ошибках, и даже указывает на неоптимальный код.

Я первый раз вижу чтоб писали знак отрицания перед знаком присвоения.

Ни разу не видел Java, C/C++, PHP ? :o

Опубликовано

видел, С++. Даже писал скрипты) Я вроде уже писал, что писал скрипты к игре Готика. Так что маленькое представление всёже имею.

Опубликовано

Это квест на вторую профу? Там надо вроде 3кк заплатить. :)

Это значит, что профы а деньги отменили?

Скоро отменим. Скорее всего.

Опубликовано

я и не спорю, но в данном случае мы имеем дело со скриптами :)

В данном случае скриптов в сервере вообще нет, все написано на чистой java. А это НЕ скрипты.

Опубликовано

Тогда это вот к чему относится:

instance Ukritie_1(C_INFO)

{

npc = vlk_506_bern;

nr = 1;

condition = Ukritie_1_condition;

information = Ukritie_1_info;

important = 0;

permanent = 0;

description = "Что вы тут делаете?";

};

Func int Ukritie_1_condition()

{

if (npc_GetDistToWP(vlk_506_bern,"OW_PATH_192") <= 300) && (!npc_knowsinfo(hero,ukritie_2))

{

return 1;

};

};

func void Ukritie_1_info()

{

ai_output(other,self,"Ukritie_1_1"); //Что вы тут делаете?

ai_output(self,other,"Ukritie_1_2"); //Тихо ты, не привлекай внимание других...

ai_output(self,other,"Ukritie_1_3"); //Мы здесь все любим поговорить о былых временах... Но мало кто может их оценить...

ai_output(self,other,"Ukritie_1_4"); //Многие тут без надежды на будущие... Они все СЛОМЛЕНЫ!

ai_output(other,self,"Ukritie_1_5"); //Ты о чем?

ai_output(self,other,"Ukritie_1_6"); //О-о-о... Я заговорился с тобой... А ведь мы вовсе не знакомы...

ukritie = TRUE;

};

instance znakomctvo(C_INFO)

{

npc = vlk_506_bern;

nr = 1;

condition = znakomctvo_condition;

information = znakomctvo_info;

important = 0;

permanent = 0;

description = "Может быть тогда есть смысл познакомиться?";

};

func int znakomctvo_condition()

{

if (ukritie == true) && (znakomstvo == false)

{

return 1;

};

};

func void znakomctvo_info()

{

ai_output(other,self,"znakomstvo_1"); //Может быть тогда есть смысл познакомиться?

ai_output(self,other,"znakomstvo_2"); //Меня зовут Берн, но имя мое тебе многого не скажет...

znakomstvo = TRUE;

ai_stopprocessinfos(self);

};

Небольшой отрывок моей писанины... А то уже совсем запутали, скрипты иль не скрипты писал?)

Ну а раз то джава - значит возможно я зря спорил, язык другой и тонкости свои есть...

Опубликовано

Чёт вы не туда ушли.

ППшки и БДшки не забывайте про мобов, которые реагируют на использование магии. Хоть сам себя хиляй в радиусе такого моба - он сагрится на тебя.

Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

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