Calm 0 Опубликовано 5 апреля, 2017 (изменено) Доброго времен суток! Суть проблемы: на сборке lostworld, убрал лимит скорости физ атаки в 1500 и задержку перед ударами в 333 мс в Creature.doAttack(), в результате по мобам/NPC скорость атаки соответствует ожиданиям, а вот в PvP осталась задержка примерно в 333 мс. Никак не могу найти, где это происходит. При чем по ПК скорость атаки также без ограничения. Изменено 5 апреля, 2017 пользователем Calm 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Calm 0 Опубликовано 7 апреля, 2017 Ну где же все гуру over-lostworlda? Неужто никто не в курсе, где запрятан этот костыль? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
zGosu 396 Опубликовано 7 апреля, 2017 Ну где же все гуру over-lostworlda? Неужто никто не в курсе, где запрятан этот костыль? Просто людям лень искать) а так пробейте методы\переменные с названием force 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mantra 28 Опубликовано 7 апреля, 2017 (изменено) Это не костыль. Creature.doAttack() вообще не нужно его трогать, верни. Изменено 7 апреля, 2017 пользователем Transcend Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Calm 0 Опубликовано 7 апреля, 2017 В Creature.doAttack(): int sAtk = Math.max(calculateAttackDelay(), Config.DELAY_ATACK_TIME_MIN); - вынес в конфиг задержку, тут было 333, это повлияло на весь атак спид кроме пвп. PlayerAI.Attack(): if(System.currentTimeMillis() - actor.getLastAttackPacket() < 200){ actor.sendActionFailed(); return;} - обнаружил еще это, оно также влияет на атак спид, если ставить 1000, то задержка становится 1000 в пвп именно, если поставить 50, то всеравно по ощущениям около 333 задержка остается. Где еще может скрываться задержка для пвп? Вроде все перерыл. Странная сборка какая-то) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
zGosu 396 Опубликовано 8 апреля, 2017 (изменено) В Creature.doAttack(): int sAtk = Math.max(calculateAttackDelay(), Config.DELAY_ATACK_TIME_MIN); - вынес в конфиг задержку, тут было 333, это повлияло на весь атак спид кроме пвп. PlayerAI.Attack(): if(System.currentTimeMillis() - actor.getLastAttackPacket() < 200){ actor.sendActionFailed(); return; } - обнаружил еще это, оно также влияет на атак спид, если ставить 1000, то задержка становится 1000 в пвп именно, если поставить 50, то всеравно по ощущениям около 333 задержка остается. Где еще может скрываться задержка для пвп? Вроде все перерыл. Странная сборка какая-то) Эта часть кода не отвечает за скорость атаки. Это на подобии анти-спама. Если коротко, то кнопку атаки ты можешь нажимать не чаще чем раз в 0.2 сек. К сожалению я очень мало времени уделял оверским сборкам, но разве не это отвечает за задержку м\у атакой? /** Calculate delay (in milliseconds) before next ATTACK */ public static int calcPAtkSpd(double rate) { return (int) (500000 / rate); // в миллисекундах поэтому 500*1000 } Изменено 8 апреля, 2017 пользователем zGosu Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Calm 0 Опубликовано 8 апреля, 2017 (изменено) Эта часть кода не отвечает за скорость атаки. Это на подобии анти-спама. Если коротко, то кнопку атаки ты можешь нажимать не чаще чем раз в 0.2 сек. К сожалению я очень мало времени уделял оверским сборкам, но разве не это отвечает за задержку м\у атакой? /** Calculate delay (in milliseconds) before next ATTACK */ public static int calcPAtkSpd(double rate) { return (int) (500000 / rate); // в миллисекундах поэтому 500*1000 } Это общий расчет атак спида, если тут менять константу, то у мобов в том числе атак спид меняется. Так что это не то. Делал изначально именно тут 50 мс, гремлины начинали бить по 10-15 ударов в секунду с их обычными статами. За лимит атак спида отвечает это: В Creature.doAttack(): int sAtk = Math.max(calculateAttackDelay(), Config.DELAY_ATACK_TIME_MIN); Но в чем вся проблема - в пвп действует еще какая-то задержка, которую я не могу найти. Изменено 8 апреля, 2017 пользователем Calm Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Khrome 276 Опубликовано 8 апреля, 2017 (изменено) Это общий расчет атак спида, если тут менять константу, то у мобов в том числе атак спид меняется. Так что это не то. Делал изначально именно тут 50 мс, гремлины начинали бить по 10-15 ударов в секунду с их обычными статами. За лимит атак спида отвечает это: В Creature.doAttack(): int sAtk = Math.max(calculateAttackDelay(), Config.DELAY_ATACK_TIME_MIN); Но в чем вся проблема - в пвп действует еще какая-то задержка, которую я не могу найти. Задержка у оружия ещё есть, чекните, мейби проблема там. Creature > doAttack Изменено 8 апреля, 2017 пользователем Khrome Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Lovely 307 Опубликовано 9 апреля, 2017 (изменено) Доброго времен суток! Суть проблемы: на сборке lostworld, убрал лимит скорости физ атаки в 1500 и задержку перед ударами в 333 мс в Creature.doAttack(), в результате по мобам/NPC скорость атаки соответствует ожиданиям, а вот в PvP осталась задержка примерно в 333 мс. Никак не могу найти, где это происходит. При чем по ПК скорость атаки также без ограничения. Доброго. Судя по всему, проверка в Creature.doAttack() идет такая же как и в пвп. Если проверку в Creature.doAttack() взять и прогнать в поиске по всему исходнику? Или поискать все что связано с временем когда персонаж находится в пвп. Изменено 9 апреля, 2017 пользователем Lovely Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты