-
Публикаций
1567 -
Зарегистрирован
-
Посещение
-
Победитель дней
61 -
Отзывы
0%
Тип контента
Профили
Форумы
Загрузки
Магазин
Инструкции
Весь контент Gaikotsu
-
За показ отвечает одно из полей в пакете UserInfo Смотри там условия для показа - что конкретно у персонажа проверяет для того чтобы показать это - там может быть проверка и не на наличие скилла кристаллизации, а к примеру на наличие скилла крафта.
-
Скажи это тем, кто не имеет статичный ип, коих наверное большинство среди пользователей - мало кто замаорачивается на получение фиксированного белого ип, т.к. у многих провайдеров это является отдельной услугой, зачастую платной.
-
Тут только кусок скриптов от глори если что (треть файлов от полного пака) а для ИО вобще чисто маленькие файлы, которые удалось вытащить с оффа через всем известную дырку, которую нцсофт никак не чешется закрывать, хотя о ней уже известно как минимум со времен С4.
-
Да это древняя дыра с рисованием вещей через определенные методы, вызываемые через байпасы. Вряд ли хотя бы в одной сборке еще они остались - все вроде уже давно должны были их закрыть.
-
там поменять то по сути несколько строк. ТС, смотри в сторону метода checkPvP в Creature и дочерних классах. З.Ы. не уверен что в опене именно так метод называется, но как минимум аналог должен быть - определяющий что за цель атакууется и как раз на результате определения и выдается - надо ли флагаться и т.д.
-
серверный пакет Attack - не слать в нем инфу о том что при ударе использовались соулшоты
-
неужели кто-то на это повелся? обычная вирусная реклама жеж
-
в клиенте необязательно добавлять - работает и без этого. и скрипт инстанса тоже необязателен отдельный - разве что ТС хочет какое-то особое поведение инстанса, но е его уровнем знаний (точнее их отсутствием) это ему не светит, так что можно обойтись банальным ReflectionUtils.enterReflection(player, izId); для взаимодействия с инстансом.
-
кстати да, скилл с ид 5000 и так по идее существует (не помню правда с каких хроник - это атакующий скилл одного из боссов в девастейтед кастл) и если он имеющееся определение не удалил, то возможно банально новое не регистрирует. не знаю как в ловели, но в том же овере при этом громко ругается что дубликат скилла найден.
-
MobSkillAnimGrp
- 3 ответа
-
- 1
-
а ты возьми словарь и переведи "expected an integer" и тоже будет понятно.
-
дык + срубить, вдруг кто плюсанет.
-
пример реализации обработки входа/выхода в зону, если в сборке есть поддержка листенеров package listeners.zones; import l2p.commons.util.Rnd; import l2p.gameserver.enums.Race; import l2p.gameserver.enums.ZoneType; import l2p.gameserver.listener.zone.OnZoneEnterLeaveListener; import l2p.gameserver.model.Creature; import l2p.gameserver.model.Zone; import l2p.gameserver.scripts.ScriptFile; import l2p.gameserver.skills.AbnormalEffect; import l2p.gameserver.utils.ReflectionUtils; /** * При входе в зону воды вешает на игрока случайный абнормал, меняющий внешний вид одетой брони на купальник, а при выходе из зоны убирает его обратно. * Работает для всех кроме расы Артеек - для них нет моделей/текстур купальников. * * @author Gaikotsu */ public class WaterZone implements ScriptFile { private static final AbnormalEffect[] _ae = new AbnormalEffect[] { AbnormalEffect.SHAPE_BIKINI_A, AbnormalEffect.SHAPE_BIKINI_B, AbnormalEffect.SHAPE_BIKINI_C }; private static ZoneListener _zoneListener; @Override public void onLoad() { _zoneListener = new ZoneListener(); for (Zone zone : ReflectionUtils.getZonesByType(ZoneType.water)) zone.addListener(_zoneListener); } @Override public void onReload() {} @Override public void onShutdown() {} public class ZoneListener implements OnZoneEnterLeaveListener { @Override public void onZoneEnter(Zone zone, Creature cha) { if (!cha.isPlayer() || cha.getPlayer().getAppearance().getRace() == Race.ERTHEIA) return; cha.startAbnormalEffect(_ae[Rnd.get(_ae.length)]); } @Override public void onZoneLeave(Zone zone, Creature cha) { if (!cha.isPlayer() || cha.getPlayer().getAppearance().getRace() == Race.ERTHEIA) return; for (AbnormalEffect ae : _ae) cha.stopAbnormalEffect(ae); } } } по аналогии можно сделать обработку наложенных баффов
-
случаем в месте спавна баюма не задана мирная/боевая зона? именно в этом случае во многих сборках боссы начинают пытаться вернуться телепортом на место спавна, а т.к. оно тут же и есть - это телепортирование становится бесконечным. если зона мирная/боевая есть в месте спавна, то проверь в DefaultAI, в методе onEvtThink() если есть что-то типа такого if (actor.isRaid() && (actor.isInPeaceZone() || actor.isInBattleZone() || actor.isInSiegeZone())) { teleportHome(); return; } то вот тебе и причина такого поведения баюма.
- 41 ответ
-
- 1
-
даже сборку не указал. если сборкой поддерживаются листенеры зон, то повесить на зону листенер и в обработке выхода из зоны в этом листенере снимать бафф.
-
DetailStatusWnd -> children -> найти нужные поля и делать с ними что хочется
- 2 ответа
-
- 1
-
ну ты надеюсь юзаешь 64битную яву, ибо на 32битной более 2 гиг не выделить, реально даже меньше, т.к. сама jvm под свои нужды часть выделенной памяти подгребет.
-
collision_height или collisionHeight в свойствах нпс - конкретно название параметра зависит от сборки.
-
очень большая. к примеру на сборке основывающейся на овере, достаточно зарегистрировать глобальный листенер на смерти мобов и выдавать все что необходимо через него, проверяя само собой нужные условия (типа разницы уровней и т.п.).
-
С этим лезть в исходники и править там - уменьшая разные задержки и т.п. между атаками но это чревато глюками в автоатаке и т.п. и к тому же все равно очень быструю атаку/каст не получится адекватно анимировать, не будет клиент справляться и прото не будет показывать анимаци или будет обрывать до завершения.
-
отредактируй NpcName-e.dat - это в нем.
-
Кажется кто-то просто не может в планировщик дергание URL через планировщик винды делается буквально в несколько строчек, в виде вызываемого планировщиком скрипта на jscript или вобще в одну строчку, если в системе есть wget.
-
FuncEnchant в ядре еще придется дорабатывать на тему прибавления других стат при заточке.
- 1 ответ
-
- 1
-
Наверняка более простым путем пошел - эпик биже присвоил отдельную категорию у меня к примеру именно так, в свойствах любой эпик бижи стоит <set name="category" value="EPIC" /> что сильно упрощает работу в плане определения того не является ли вещь эпиком.