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

Скорость атаки в PvP

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

Доброго времен суток! 

Суть проблемы: на сборке lostworld, убрал лимит скорости физ атаки в 1500 и задержку перед ударами в 333 мс в Creature.doAttack(), в результате по мобам/NPC скорость атаки соответствует ожиданиям, а вот в PvP осталась задержка примерно в 333 мс. Никак не могу найти, где это происходит. При чем по ПК скорость атаки также без ограничения.

Изменено пользователем Calm
  • Upvote 1

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


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

Ну где же все гуру over-lostworlda? Неужто никто не в курсе, где запрятан этот костыль?

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


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

Ну где же все гуру over-lostworlda? Неужто никто не в курсе, где запрятан этот костыль?

Просто людям лень искать) а так пробейте методы\переменные с названием force

  • Upvote 1

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


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

Это не костыль.

Creature.doAttack() вообще не нужно его трогать, верни.

Изменено пользователем Transcend

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


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

В 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 задержка остается. Где еще может скрываться задержка для пвп? Вроде все перерыл. Странная сборка какая-то)

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


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

В 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
	}
Изменено пользователем zGosu

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


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

 

Эта часть кода не отвечает за скорость атаки. Это на подобии анти-спама. Если коротко, то кнопку атаки ты можешь нажимать не чаще чем раз в 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);

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

Изменено пользователем Calm

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


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

Это общий расчет атак спида, если тут менять константу, то у мобов в том числе атак спид меняется. Так что это не то. Делал изначально именно тут 50 мс, гремлины начинали бить по 10-15 ударов в секунду с их обычными статами.

 

 

За лимит атак спида отвечает это:

В Creature.doAttack(): 
int sAtk = Math.max(calculateAttackDelay(), Config.DELAY_ATACK_TIME_MIN);

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

Задержка  у оружия ещё есть, чекните, мейби проблема там.

Creature > doAttack

Изменено пользователем Khrome

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


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

Доброго времен суток! 

Суть проблемы: на сборке lostworld, убрал лимит скорости физ атаки в 1500 и задержку перед ударами в 333 мс в Creature.doAttack(), в результате по мобам/NPC скорость атаки соответствует ожиданиям, а вот в PvP осталась задержка примерно в 333 мс. Никак не могу найти, где это происходит. При чем по ПК скорость атаки также без ограничения.

Доброго. Судя по всему, проверка в Creature.doAttack() идет такая же как и в пвп. Если проверку в Creature.doAttack() взять и прогнать в поиске по всему исходнику? Или поискать все что связано с временем когда персонаж находится в пвп.

Изменено пользователем Lovely

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


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

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

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

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

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

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

Войти

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

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

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

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

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