Nezdeshniy

Требуется разработать дополнительный функкционал в eAthena

2 сообщения в этой теме

Уважаемые коллеги. Буду краток.

Исходные данные: eAthena 15266

Место: src+conf

Требуется: разработать функционал, предоставляющий следующие возможности:

1. Зависимость получаемого опыта персонажем от разницы между его уровнем и уровнем убиваемого монстра (должно работать на гильдию, пати, соло, проработать все возможные варианты)

2. Зависимость получаемого опыта персонажем от цепочки одинаковых убитых монстров с указанием интервала между убийствами + возможность вывода персонажу на экран сообщения о "killstreak"

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

3. Зависимость получаемого опыта персонажем при моментальном убийстве монстра (1 удар, 1 заклинание) - связь с первым и вторым пунктами обязательна, настройка в процентном увеличении от 0 до N процентов для компенсации первого пункта и возможного буста второго пункта.

 

Я понимаю что возможно не все понятно изложил. Соответственно в личку жду цену, время, вопросы. Отвечать буду долго. Заказ валидный, я полностью заинтересованв его выполнении. Спасибо.

0

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


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

Набросала тут скрипт для еА, пункт 2, к сожалению, только в /npc умею =) Собственно, можно привязать любые переменные мобы/время/награда/проверка на класс игрока и т.д. Можно здесь же прописать проверку на лвл скилла, который будет увеличивать награду.

-	script	MobDeathBonusExpCount	-1,{
end;

OnNPCKillEvent:
if(mb_id == killedrid && timesec > gettimetick(2))
	{
	set mdcount,mdcount+1;
if(mdcount > 4 && timesec > gettimetick(2))
	{
	dispbottom "[ server name ] : Bonus +20% (+"+getmonsterinfo(killedrid,3)/5+") exp for killing 5 "+getmonsterinfo(killedrid,0)+" in a row for 10 seconds.";
	getexp getmonsterinfo(killedrid,3)/5,getmonsterinfo(killedrid,4)/5;
	set mdcount,0;
	set timesec,gettimetick(2);
	end;
	}
end;
}
if(mb_id != killedrid)
	{
	set mb_id,killedrid;
	set timesec,gettimetick(2) + 10;
	set mdcount,1;
	end;
	}
set mb_id,killedrid;
set timesec,gettimetick(2) + 10;
set mdcount,1;
end;
}

 

Изменено пользователем KeLLyPrinCes$
0

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


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

Создайте аккаунт или войдите для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас