Тема: Java EXP
Показать сообщение отдельно
Непрочитано 20.03.2010, 12:28   #5
Аватар для Shema
Герой

Автор темы (Топик Стартер) Re: Java EXP

Можно посмотреть скрип который идет на получение лута. Там есть значение номер квеста. Вроде если написать что то подобное, то получится что нам нужно.
Если кто знает как написан он, скинте пути к ниму, возможно я сам поковыряю его и чет выйдет.))

Добавлено через 1 час 17 минут
Можно сделать проще :

C:\ae-go\AE-go_GameServer\src\com\aionemu\gameserver\utils\sta ts

public static long calculateSoloExperienceReward(Player player, Creature target)
{
int playerLevel = player.getCommonData().getLevel();
int targetLevel = target.getLevel();

//TODO take baseXP from target object (additional attribute in stats template is needed)
int baseXP = targetLevel * 80;

int xpPercentage = XPRewardEnum.xpRewardFrom(targetLevel - playerLevel);

return (int) Math.floor(baseXP * xpPercentage * player.getRates().getXpRate() / 100);
}

В строке int baseXP = targetLevel * 80; значение "targetLevel * 80" нужно заменить на `exp` параметр который можно будет добавить в дроплист.
DROP TABLE IF EXISTS `droplist`;
CREATE TABLE `droplist` (
`Id` int(11) NOT NULL auto_increment,
`mobId` int(11) NOT NULL default '0',
`itemId` int(11) NOT NULL default '0',
`min` int(11) NOT NULL default '0',
`max` int(11) NOT NULL default '0',
`chance` float NOT NULL default '0',
`quest` int(11) NOT NULL default '0',
`exp` int(11) NOT NULL default '0',
PRIMARY KEY (`Id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of droplist
-- ----------------------------
INSERT INTO `droplist` VALUES ('260175', '210372', '167000230', '1', '1', '0.63', '0', '111',);

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

Последний раз редактировалось Shema; 20.03.2010 в 14:00. Причина: Добавлено сообщение
Shema вне форума Ответить с цитированием