-
Публикаций
129 -
Зарегистрирован
-
Посещение
-
Победитель дней
1 -
Отзывы
0%
Тип контента
Профили
Форумы
Загрузки
Магазин
Инструкции
Весь контент L2jTeam
-
Хотя такое возможно, может просто не указал в переменных))
-
Если прошёл, значит все рейдбоссы стали 80 уровня, суть нужно было изложить нам сразу.
-
Добро, так как под многие защиты, есть исходники клиентских файлов, что-нибудь состряпаем!
-
Что за ошибка? Какая сборка? Какая защита?
-
Да тут вообще отдельный разговор, запускает, не установив необходимый софт, да ещё и хватило наглости создать тему...
-
Значит нет в таблице NPC, монстров с типом L2GrandBoss
-
А ГС не отображал что защита активна?
-
идея Ищу Начинающего Скриптера Для Развития На Интересном Проекте
тема ответил L2jTeam в теме Обсуждения
Отправьте свои контакты мне в ЛС, есть предложения. И порадовало: -
UPDATE npc SET level=80 WHERE type=L2GrandBoss;
-
Да таких тем десяток, причём за эту неделю, поиск не для вас...
-
У меня так реализовано, сделайте под L2jserver: package l2jTeam.gs.handler.voicecommands.impl; import java.text.NumberFormat; import java.util.Locale; import l2jTeam.gs.configuration; import l2jTeam.gs.data.htm.HtmCache; import l2jTeam.gs.handler.voicecommands.IVoicedCommandHandler; import l2jTeam.gs.models.Creature; import l2jTeam.gs.models.Player; import l2jTeam.gs.models.base.Element; import l2jTeam.gs.models.items.ItemInstance; import l2jTeam.gs.network.serverpackets.NpcHtmlMessage; import l2jTeam.gs.stats.Formulas; import l2jTeam.gs.stats.Stats; import l2jTeam.gs.templates.item.WeaponTemplate.WeaponType; import l2jTeam.gs.utils.Strings; import org.apache.commons.lang3.text.StrBuilder; public class WhoAmI implements IVoicedCommandHandler { private final String[] _commandList = new String[] { "stats", "statistics" }; @Override public String[] getVoicedCommandList() { return _commandList; } @Override public boolean useVoicedCommand(String command, Player player, String args) { Creature target = null; double hpRegen = Formulas.calcHpRegen(player); double cpRegen = Formulas.calcCpRegen(player); double mpRegen = Formulas.calcMpRegen(player); double hpDrain = player.calcStat(Stats.ABSORB_DAMAGE_PERCENT, 0., target, null); double mpDrain = player.calcStat(Stats.ABSORB_DAMAGEMP_PERCENT, 0., target, null); double hpGain = player.calcStat(Stats.HEAL_EFFECTIVNESS, 100., target, null); double mpGain = player.calcStat(Stats.MANAHEAL_EFFECTIVNESS, 100., target, null); double critPerc = 2 * player.calcStat(Stats.CRITICAL_DAMAGE, target, null); double critStatic = player.calcStat(Stats.CRITICAL_DAMAGE_STATIC, target, null); double mCritRate = player.calcStat(Stats.MCRITICAL_RATE, target, null); double blowRate = player.calcStat(Stats.FATALBLOW_RATE, target, null); ItemInstance shld = player.getSecondaryWeaponInstance(); boolean shield = shld != null && shld.getItemType() == WeaponType.NONE; double shieldDef = shield ? player.calcStat(Stats.SHIELD_DEFENCE, player.getTemplate().baseShldDef, target, null) : 0.; double shieldRate = shield ? player.calcStat(Stats.SHIELD_RATE, target, null) : 0.; double xpRate = configuration.RATE_XP * player.getBonus().getRateXp(); double spRate = configuration.RATE_SP * player.getBonus().getRateSp(); double dropRate = configuration.RATE_DROP_ITEMS * player.getBonus().getDropItems(); double adenaRate = configuration.RATE_DROP_ADENA * player.getBonus().getDropAdena(); double spoilRate = configuration.RATE_DROP_SPOIL * player.getBonus().getDropSpoil(); double fireResist = player.calcStat(Element.FIRE.getDefence(), 0., target, null); double windResist = player.calcStat(Element.WIND.getDefence(), 0., target, null); double waterResist = player.calcStat(Element.WATER.getDefence(), 0., target, null); double earthResist = player.calcStat(Element.EARTH.getDefence(), 0., target, null); double holyResist = player.calcStat(Element.HOLY.getDefence(), 0., target, null); double unholyResist = player.calcStat(Element.UNHOLY.getDefence(), 0., target, null); double bleedPower = player.calcStat(Stats.BLEED_POWER, target, null); double bleedResist = player.calcStat(Stats.BLEED_RESIST, target, null); double poisonPower = player.calcStat(Stats.POISON_POWER, target, null); double poisonResist = player.calcStat(Stats.POISON_RESIST, target, null); double stunPower = player.calcStat(Stats.STUN_POWER, target, null); double stunResist = player.calcStat(Stats.STUN_RESIST, target, null); double rootPower = player.calcStat(Stats.ROOT_POWER, target, null); double rootResist = player.calcStat(Stats.ROOT_RESIST, target, null); double sleepPower = player.calcStat(Stats.SLEEP_POWER, target, null); double sleepResist = player.calcStat(Stats.SLEEP_RESIST, target, null); double paralyzePower = player.calcStat(Stats.PARALYZE_POWER, target, null); double paralyzeResist = player.calcStat(Stats.PARALYZE_RESIST, target, null); double mentalPower = player.calcStat(Stats.MENTAL_POWER, target, null); double mentalResist = player.calcStat(Stats.MENTAL_RESIST, target, null); double debuffPower = player.calcStat(Stats.DEBUFF_POWER, target, null); double debuffResist = player.calcStat(Stats.DEBUFF_RESIST, target, null); double cancelPower = player.calcStat(Stats.CANCEL_POWER, target, null); double cancelResist = player.calcStat(Stats.CANCEL_RESIST, target, null); double swordResist = 100. - player.calcStat(Stats.SWORD_WPN_VULNERABILITY, target, null); double dualResist = 100. - player.calcStat(Stats.DUAL_WPN_VULNERABILITY, target, null); double bluntResist = 100. - player.calcStat(Stats.BLUNT_WPN_VULNERABILITY, target, null); double daggerResist = 100. - player.calcStat(Stats.DAGGER_WPN_VULNERABILITY, target, null); double bowResist = 100. - player.calcStat(Stats.BOW_WPN_VULNERABILITY, target, null); double crossbowResist = 100. - player.calcStat(Stats.CROSSBOW_WPN_VULNERABILITY, target, null); double poleResist = 100. - player.calcStat(Stats.POLE_WPN_VULNERABILITY, target, null); double fistResist = 100. - player.calcStat(Stats.FIST_WPN_VULNERABILITY, target, null); double critChanceResist = 100. - player.calcStat(Stats.CRIT_CHANCE_RECEPTIVE, target, null); double critDamResistStatic = player.calcStat(Stats.CRIT_DAMAGE_RECEPTIVE, target, null); double critDamResist = 100. - 100 * (player.calcStat(Stats.CRIT_DAMAGE_RECEPTIVE, 1., target, null) - critDamResistStatic); String dialog = HtmCache.getInstance().getNotNull("command/whoami.htm", player); NumberFormat df = NumberFormat.getInstance(Locale.ENGLISH); df.setMaximumFractionDigits(1); df.setMinimumFractionDigits(1); StrBuilder sb = new StrBuilder(dialog); sb.replaceFirst("%hpRegen%", df.format(hpRegen)); sb.replaceFirst("%cpRegen%", df.format(cpRegen)); sb.replaceFirst("%mpRegen%", df.format(mpRegen)); sb.replaceFirst("%hpDrain%", df.format(hpDrain)); sb.replaceFirst("%mpDrain%", df.format(mpDrain)); sb.replaceFirst("%hpGain%", df.format(hpGain)); sb.replaceFirst("%mpGain%", df.format(mpGain)); sb.replaceFirst("%critPerc%", df.format(critPerc)); sb.replaceFirst("%critStatic%", df.format(critStatic)); sb.replaceFirst("%mCritRate%", df.format(mCritRate)); sb.replaceFirst("%blowRate%", df.format(blowRate)); sb.replaceFirst("%shieldDef%", df.format(shieldDef)); sb.replaceFirst("%shieldRate%", df.format(shieldRate)); if(configuration.show_rates) { sb.replaceFirst("%xpRate%", df.format(xpRate)); sb.replaceFirst("%spRate%", df.format(spRate)); sb.replaceFirst("%dropRate%", df.format(dropRate)); sb.replaceFirst("%adenaRate%", df.format(adenaRate)); sb.replaceFirst("%spoilRate%", df.format(spoilRate)); } sb.replaceFirst("%fireResist%", df.format(fireResist)); sb.replaceFirst("%windResist%", df.format(windResist)); sb.replaceFirst("%waterResist%", df.format(waterResist)); sb.replaceFirst("%earthResist%", df.format(earthResist)); sb.replaceFirst("%holyResist%", df.format(holyResist)); sb.replaceFirst("%darkResist%", df.format(unholyResist)); sb.replaceFirst("%bleedPower%", df.format(bleedPower)); sb.replaceFirst("%bleedResist%", df.format(bleedResist)); sb.replaceFirst("%poisonPower%", df.format(poisonPower)); sb.replaceFirst("%poisonResist%", df.format(poisonResist)); sb.replaceFirst("%stunPower%", df.format(stunPower)); sb.replaceFirst("%stunResist%", df.format(stunResist)); sb.replaceFirst("%rootPower%", df.format(rootPower)); sb.replaceFirst("%rootResist%", df.format(rootResist)); sb.replaceFirst("%sleepPower%", df.format(sleepPower)); sb.replaceFirst("%sleepResist%", df.format(sleepResist)); sb.replaceFirst("%paralyzePower%", df.format(paralyzePower)); sb.replaceFirst("%paralyzeResist%", df.format(paralyzeResist)); sb.replaceFirst("%mentalPower%", df.format(mentalPower)); sb.replaceFirst("%mentalResist%", df.format(mentalResist)); sb.replaceFirst("%debuffPower%", df.format(debuffPower)); sb.replaceFirst("%debuffResist%", df.format(debuffResist)); sb.replaceFirst("%cancelPower%", df.format(cancelPower)); sb.replaceFirst("%cancelResist%", df.format(cancelResist)); sb.replaceFirst("%swordResist%", df.format(swordResist)); sb.replaceFirst("%dualResist%", df.format(dualResist)); sb.replaceFirst("%bluntResist%", df.format(bluntResist)); sb.replaceFirst("%daggerResist%", df.format(daggerResist)); sb.replaceFirst("%bowResist%", df.format(bowResist)); sb.replaceFirst("%crossbowResist%", df.format(crossbowResist)); sb.replaceFirst("%fistResist%", df.format(fistResist)); sb.replaceFirst("%poleResist%", df.format(poleResist)); sb.replaceFirst("%critChanceResist%", df.format(critChanceResist)); sb.replaceFirst("%critDamResist%", df.format(critDamResist)); NpcHtmlMessage msg = new NpcHtmlMessage(0); msg.setHtml(Strings.bbParse(sb.toString())); player.sendPacket(msg); return true; } }
-
в датапаке whoami.htm, добавить статы какие нужны, проверить в ядре, их вывод.
-
Что тут актуального? Пишите какие проблемы??? Для всего остального есть раздел МАНУАЛЫ
-
У меня только 300 ревизия, https://yadi.sk/d/dg7Wg8Abbvk3E
-
Пользуйтесь! p.s. Не забудьте поменять импорты. Christmas.rar
- 3 ответа
-
- 1
-
Ваша сборка тоже подходит для SW13, просто напросто поменяйте тип шифра пароля, в панели управления сайтом.
-
Попробуйте эту базу, исправил. sql.rar
-
Потому что некоторые базы содержат ошибки, например файл voteus.sql: INSERT INTO `spawnlist` (`id`, `location`, `count`, `npc_templateid`, `locx`, `locy`, `locz`, `randomx`, `randomy`, `heading`, `respawn_delay`, `loc_id`, `periodOfDay`) VALUES (335728, '', 1, 30006, 82718, 149312, -3466, 0, 0, 7261, 60, 0, 0); INSERT INTO `walker_routes` (`route_id`, `npc_id`, `move_point`, `chatText`, `move_x`, `move_y`, `move_z`, `delay`, `running`) VALUES (43, 30006, 1, 'Hello ! l2scoria dev.team !', 82718, 149312, -3471, 10, 1), (43, 30006, 2, 'Hello ! l2scoria dev.team !', 82713, 147899, -3471, 10, 1), (43, 30006, 3, 'Hello ! l2scoria dev.team !', 81153, 147904, -3471, 10, 1), (43, 30006, 4, 'Hello ! l2scoria dev.team !', 81158, 149316, -3471, 10, 1); Проверьте каждый файлы на наличие ошибок в ручную, но в целом база заливается без проблем и работоспособна.
-
Если с текстурами в photoshop работать
-
1. На системе Linux, при хорошей оптимизации, 500 человек свободно 2. \gameserver\data\scripts\quests\_510_AClansReputation (Там есть параметр, отвечающий за кол-во репутации) 3. Утилита L2Tool, утилита l2decrypt, плагин Photoshop для работы с файлами DDS, редактор UnrealEngine2 Editor.
- 3 ответа
-
- 2
-
Ну именно балансом заниматься как раз тогда, когда сможете не один тестировать, а пока занять себя другими направлениями настроек, займитесь доработкой магазинов.
-
Лексическая ошибка в строке 1, столбец 1 А на будущее https://translate.google.ru/#en/ru/ (не реклама)
-
Если шмот даёт мега статы, то другое дело, и тестить обязательно с кем-то, желательно оба с руками, в 2 окна это не есть хорошо...