-
Публикаций
1567 -
Зарегистрирован
-
Посещение
-
Победитель дней
61 -
Отзывы
0%
Тип контента
Профили
Форумы
Загрузки
Магазин
Инструкции
Весь контент Gaikotsu
-
или в свойствах самого моба, т.к. во многих сборках подобный механизм уже заложен
- 2 ответа
-
- 1
-
насчет первого - ожидается числовое значение, а получено пустое, т.е. значение параметра не задано. ну а насчет второго правильно сказали
-
по моему сейчас даже самая задрипанная сборка поддерживает официальный серверный пакет (SendStatus) на отдачу статуса сервера (онлайн, торговцы и т.д.) по внешнему запросу этого пакета
-
не это ли взято за основу - https://github.com/VISTALL/game-updater
-
берешь System.currentTimeMillis() и вперед
-
добавь стату, лимитирующую урон и проверяй ее значение в методах расчета физ/маг урона. если она больше 0 и урон наносится игроку - лимитировать урон в методе до значения указанного в стате. ну а саму стату давать пассивкой/баффом.
-
необязательно разный уровень - просто одинаковый стэктайп у них, вот и не ложатся вместе
-
все просто - сообщение шлется до вызова reduceCurrentHp, так что еще и его копать на эту тему не знаю как в aCis, но в том же овере для этого служит метод displayGiveDamageMessage, обявленный изначально в Creature и который вполне можно переопределить в наследных классах, по аналогии с reduceCurrentHp
-
ну я вобщем-то большей частью прокомментировал предложение Evolution
-
может потому-что реализовывать подобное, одевая что-то принудительно из брони и запрещая при этом одевать что-то еще взамен - это верх маразма? если уж реализовывать, то просто подменой внешнего вида одетой брони/оружия. это легко делается при помощи простейших манипуляций с передаваемыми в CI/UI данными об одетых вещах. правда фиг знает переварит ли корректно такое клиент интерлюда, тот же хф легко это позволяет, и в итоге поулучаем вполне кошерный аналог Shape Shifting (официально введенный нцсофтом начиная с хроник Glory Days метод смены внешнего вида экипировки) пример простейшей реализации в хф - лично я это все запилил за один день, притом большую часть этого времени потратил на "красивости", т.е. на оформление самого сервиса в коммюнити - сама техническая реализация подмены вида и хранения данных о ней делается дай бог за полчаса-час максимум. если в интерлюде и не будет полноценно такое работать, то уж в корявом виде то точно - это когда при подмене будет меняться не только внешний вид, но и название+описание одетого предмета.
-
да... некоторые знают толк в извращениях...
-
---> <table name="#rate">1.02 1.04 1.06 1.08 1.10 1.12 1.14 1.16 1.18 2.0</table> З.Ы. тенденция вопросов удручает...
- 3 ответа
-
- 2
-
или обычные трансформы или же банальный бафф с абнормалом внешнего вида, меняющим вид брони на один из этих трех вариантов скорее всего именно второе, если все скиллы у персонажа остаются.
-
в ошибках вроде все ясно и понятно написано 9901 - как вариант сам скилл некорретно описан 9801 - такого скилла вобше не существует 0 - тут уж смотри указанные предметы, судя по всему зачем-то ид скилла задано со значением 0. а вобще тут экстрасенсов нет хочешь чтобы помогли - выкладывай и проблемный код
-
что мешает изучить парсер этих данных в сервере на тему допустимой структуры? даже если нет исходников, то в таком простом случае и декомил поможет прояснить.
-
правкой dat'ников ты это не решишь - ограничения этого глубже, толи в одном из u-файлов, толи в одной из dll
-
ищи в ядре все что связанно с изменением relation начни с пакета RelationChanged и далее
-
блин, какой-то движок файлохранилища на форуме сделанный через задницу... заливать к себе файлы 50+мб упорно не хочет, а место где они у меня лежали и куда была прямая ссылка на них пока недоступен. и нормальную ссылку внешную вместо файлов задать не дает... вобщем архивы с данными лежат сейчас вот тут, на OneDrive - http://1drv.ms/1OqtHDe
-
в полигоне описываются точки определяюшие область зоны в рестарт пойнт - точки куда воскресит игрока при смерти, если он умер в этой зоне и выбрал "встать в ближайший город"
-
<!-- Summon Lyn Draco / Оседлать Линдрако --> <skill id="19116" levels="1" name="Summon Lyn Draco"> <!-- Mount Lyn Draco. --> <!-- Помогает оседлать Линдрако. --> <set name="icon" val="icon.etc_lind_vehicle" /> <set name="hitTime" val="1000" /> <set name="target" val="SELF" /> <set name="skillType" val="TRANSFORMATION" /> <set name="operateType" val="OP_ACTIVE" /> <set name="isAllowedOnOlympiad" val="false" /> <for> <effect count="1" name="Transformation" time="3600" val="147" /> </for> </skill> <!-- Lind Rider / Линд Всадник --> <transformation id="147" npc_id="13390" is_peace="true"> <skills> <skill id="9210" level="1" /> <!-- Dismount / Слезть с животного --> <skill id="5491" level="1" /> <!-- Decrease Bow/Crossbow Atk. Spd. / Уменьшить Скор. Атк. лука/арбалета. --> </skills> </transformation>
- 2 ответа
-
- 1
-
Название: Данные из карт клиентов High Five/Lindvior/Ertheia/Infinite Odyssey/Helios/Grand Crusade Добавил: Gaikotsu Добавлен: 02 Jan 2016 Категория: Прочее Автор: Gaikotsu Собственно говоря раскуроченные unr-файлы из клиентов High Five, Lindvior, Ertheia, Infinite Odyssey, Helios и Grand Crusade (включая classic/arena версии карт). Могут пригодиться к примеру для выяснения координат дверей в секторе карты (искать по Tag=Mover) или к примеру идентификаторы используемых в секторе эвент-триггеров и в каком месте сектора этот триггер показывается (искать по EventID) и т.д.
-
168 раз скачали
Собственно говоря раскуроченные unr-файлы из клиентов High Five, Lindvior, Ertheia и Infinite Odyssey (включая classic версии карт). Могут пригодиться к примеру для выяснения координат дверей в секторе карты (искать по Tag=Mover) или к примеру идентификаторы используемых в секторе эвент-триггеров и в каком месте сектора этот триггер показывается (искать по EventID) и т.д.Бесплатный
-
скорее всего еще в ядре надо правки делать, если их не делал никто, то по дефолту там обычно жестко зашито что меньше месяца период быть не может.
-
ну я ж не знаю что у тебя за сборка к примеру в сборках на основе феникса/овера елки спавнятся примерно так package events.Christmas; import handler.items.SimpleItemHandler; import java.util.Calendar; import l2p.gameserver.model.Player; import l2p.gameserver.model.World; import l2p.gameserver.model.Zone.ZoneType; import l2p.gameserver.model.instances.NpcInstance; import l2p.gameserver.model.items.ItemInstance; import l2p.gameserver.network.serverpackets.components.SystemMsg; import l2p.gameserver.utils.NpcUtils; public class ChristmasTree extends SimpleItemHandler { private static int[] _itemIds = { 5560, // Christmas Tree 5561 }; // Special Christmas Tree private static int[] _npcIds = { 13006, // Christmas Tree 13007 }; // Special Christmas Tree private static final int _despawnTime = 10 * 60 * 1000; //10 min @Override protected boolean useItemImpl(Player player, ItemInstance item, boolean ctrl) { if (!player.checkNextActionUseTime("cristmasTree", 10000)) { player.sendMessage("Нельзя ставить елки так часто."); return false; } if (player.isInZone(ZoneType.offshore)) { player.sendMessage("Нельзя поставить елку в этом месте."); return false; } int month = Calendar.getInstance().get(Calendar.MONTH); if (month != Calendar.DECEMBER && month != Calendar.JANUARY && month != Calendar.FEBRUARY) { player.sendMessage("Сейчас не зима, призыв елок недоступен."); return false; } if (World.getAroundNpc(player, 100, 200).size() > 0) { player.sendPacket(SystemMsg.YOU_MAY_NOT_SUMMON_FROM_YOUR_CURRENT_LOCATION); return false; } int npcId = 0; int itemId = item.getItemId(); for (int i = 0; i < _itemIds.length; i++) if (_itemIds[i] == itemId) { npcId = _npcIds[i]; break; } if (npcId == 0) return false; if (!useItem(player, item, 1)) return false; NpcInstance npc = NpcUtils.spawnSingle(npcId, player.getLoc(), player.getReflection(), player.isInPeaceZone() ? _despawnTime / 3 : _despawnTime); // АИ вешающее бафф регена устанавливается только для большой елки if (itemId == 5561) { npc.setAI(new ChristmasTreeAI(npc)); npc.getAI().startAITask(); } return true; } @Override public int[] getItemIds() { return _itemIds; } } вот собственно где-то в конце useItemImpl дополнительно запускать еще и таск и впередтак же можно просто в AI елки, если ей задано оно отдельное, добавить нужный код в thinkActive, чтобы с нужным пеприодом делала вызов dropItem для нужного предмета.