L2J Mobius IT Classic Fix Drop\Spoil - Exp\Sp

Zion [🌿]

Друг форума
Участник
Сообщения
163
Розыгрыши
0
Репутация
14
Реакции
63
Баллы
973
Хроники
  1. Interlude
Сборка
L2jMobius Interlude Classic
Сидел, дорабатывал это дело для себя, но решил поделиться!

Написал скрипт для переноса параметров мобов (drop, spoil, Exp, SP) из "Lucera 3" (компилятор взят с общего доступа) в L2J Mobius Interlude Classic. Пролистав несколько XML-файлов, не нашел параметров типа "Категории", поэтому расчет шанса дропа был адаптирован без учета этой переменной, с использованием стандартного официального шанса.

Зачем это понадобилось?
Все просто: на многих мобах вообще не был прописан дроп или значения получаемого Exp и SP. Хотелось привести это в порядок.


P.S. Если кто-то знает, как в Mobius прописываются категории, дайте знать в этой теме. Я доработаю скрипт и выложу обновленные XML-файлы.

СКАЧАТЬ

ПАРОЛЬ
 
P.S. Дроп который не должен быть в интерлюде (косяки оставленые мобиусом) я не вырезал, так что нужна доработка!

пример 1734132017469.webp

Но эту проблему можно быстренько решить ручками, по вырезав ненужный дроп через nodepad++ или же банальной заменой спавна мобов, ибо этих мобов и не должно быть в интерлюде, а в тех мобах которые должны быть, дроп в файлах которых я выложил исправлен.
 

P.S. Если кто-то знает, как в Mobius прописываются категории, дайте знать в этой теме. Я доработаю скрипт и выложу обновленные XML-файлы.
XML:
                            <xs:element name="dropLists" minOccurs="0" maxOccurs="1">
                                <xs:complexType>
                                    <xs:sequence>
                                        <xs:element name="drop" minOccurs="0">
                                            <xs:complexType>
                                                <xs:sequence>
                                                    <xs:element name="item" maxOccurs="unbounded" minOccurs="0">
                                                        <xs:complexType>
                                                            <xs:simpleContent>
                                                                <xs:extension base="xs:string">
                                                                    <xs:attribute type="xs:int" name="id" use="required"/>
                                                                    <xs:attribute type="xs:long" name="min" use="required"/>
                                                                    <xs:attribute type="xs:long" name="max" use="required"/>
                                                                    <xs:attribute type="xs:double" name="chance" use="required"/>
                                                                </xs:extension>
                                                            </xs:simpleContent>
                                                        </xs:complexType>
                                                    </xs:element>
                                                    <xs:element name="group" maxOccurs="unbounded" minOccurs="0">
                                                        <xs:complexType>
                                                            <xs:sequence>
                                                                <xs:element name="item" maxOccurs="unbounded" minOccurs="0">
                                                                    <xs:complexType>
                                                                        <xs:simpleContent>
                                                                            <xs:extension base="xs:string">
                                                                                <xs:attribute type="xs:int" name="id" use="required"/>
                                                                                <xs:attribute type="xs:long" name="min" use="required"/>
                                                                                <xs:attribute type="xs:long" name="max" use="required"/>
                                                                                <xs:attribute type="xs:double" name="chance" use="required"/>
                                                                            </xs:extension>
                                                                        </xs:simpleContent>
                                                                    </xs:complexType>
                                                                </xs:element>
                                                            </xs:sequence>
                                                            <xs:attribute type="xs:double" name="chance" use="optional"/>
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:sequence>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="spoil" minOccurs="0">
                                            <xs:complexType>
                                                <xs:sequence>
                                                    <xs:element name="item" maxOccurs="unbounded" minOccurs="0">
                                                        <xs:complexType>
                                                            <xs:simpleContent>
                                                                <xs:extension base="xs:string">
                                                                    <xs:attribute type="xs:int" name="id" use="optional"/>
                                                                    <xs:attribute type="xs:long" name="min" use="optional"/>
                                                                    <xs:attribute type="xs:long" name="max" use="optional"/>
                                                                    <xs:attribute type="xs:double" name="chance" use="optional"/>
                                                                </xs:extension>
                                                            </xs:simpleContent>
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:sequence>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="lucky" minOccurs="0">
                                            <xs:complexType>
                                                <xs:sequence>
                                                    <xs:element name="item" maxOccurs="unbounded" minOccurs="0">
                                                        <xs:complexType>
                                                            <xs:simpleContent>
                                                                <xs:extension base="xs:string">
                                                                    <xs:attribute type="xs:int" name="id" use="optional"/>
                                                                    <xs:attribute type="xs:long" name="min" use="optional"/>
                                                                    <xs:attribute type="xs:long" name="max" use="optional"/>
                                                                    <xs:attribute type="xs:double" name="chance" use="optional"/>
                                                                </xs:extension>
                                                            </xs:simpleContent>
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:sequence>
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:sequence>
                                </xs:complexType>
                            </xs:element>
 
XML:
                            <xs:element name="dropLists" minOccurs="0" maxOccurs="1">
                                <xs:complexType>
                                    <xs:sequence>
                                        <xs:element name="drop" minOccurs="0">
                                            <xs:complexType>
                                                <xs:sequence>
                                                    <xs:element name="item" maxOccurs="unbounded" minOccurs="0">
                                                        <xs:complexType>
                                                            <xs:simpleContent>
                                                                <xs:extension base="xs:string">
                                                                    <xs:attribute type="xs:int" name="id" use="required"/>
                                                                    <xs:attribute type="xs:long" name="min" use="required"/>
                                                                    <xs:attribute type="xs:long" name="max" use="required"/>
                                                                    <xs:attribute type="xs:double" name="chance" use="required"/>
                                                                </xs:extension>
                                                            </xs:simpleContent>
                                                        </xs:complexType>
                                                    </xs:element>
                                                    <xs:element name="group" maxOccurs="unbounded" minOccurs="0">
                                                        <xs:complexType>
                                                            <xs:sequence>
                                                                <xs:element name="item" maxOccurs="unbounded" minOccurs="0">
                                                                    <xs:complexType>
                                                                        <xs:simpleContent>
                                                                            <xs:extension base="xs:string">
                                                                                <xs:attribute type="xs:int" name="id" use="required"/>
                                                                                <xs:attribute type="xs:long" name="min" use="required"/>
                                                                                <xs:attribute type="xs:long" name="max" use="required"/>
                                                                                <xs:attribute type="xs:double" name="chance" use="required"/>
                                                                            </xs:extension>
                                                                        </xs:simpleContent>
                                                                    </xs:complexType>
                                                                </xs:element>
                                                            </xs:sequence>
                                                            <xs:attribute type="xs:double" name="chance" use="optional"/>
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:sequence>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="spoil" minOccurs="0">
                                            <xs:complexType>
                                                <xs:sequence>
                                                    <xs:element name="item" maxOccurs="unbounded" minOccurs="0">
                                                        <xs:complexType>
                                                            <xs:simpleContent>
                                                                <xs:extension base="xs:string">
                                                                    <xs:attribute type="xs:int" name="id" use="optional"/>
                                                                    <xs:attribute type="xs:long" name="min" use="optional"/>
                                                                    <xs:attribute type="xs:long" name="max" use="optional"/>
                                                                    <xs:attribute type="xs:double" name="chance" use="optional"/>
                                                                </xs:extension>
                                                            </xs:simpleContent>
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:sequence>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="lucky" minOccurs="0">
                                            <xs:complexType>
                                                <xs:sequence>
                                                    <xs:element name="item" maxOccurs="unbounded" minOccurs="0">
                                                        <xs:complexType>
                                                            <xs:simpleContent>
                                                                <xs:extension base="xs:string">
                                                                    <xs:attribute type="xs:int" name="id" use="optional"/>
                                                                    <xs:attribute type="xs:long" name="min" use="optional"/>
                                                                    <xs:attribute type="xs:long" name="max" use="optional"/>
                                                                    <xs:attribute type="xs:double" name="chance" use="optional"/>
                                                                </xs:extension>
                                                            </xs:simpleContent>
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:sequence>
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:sequence>
                                </xs:complexType>
                            </xs:element>

спасибо, чуть позже обновлю скрипт и выложу новую версию дропа.
 
  • Мне нравится
Реакции: Bankir

    Bankir

    Баллов: 5
    И скрипт за одно выложи)

спасибо, чуть позже обновлю скрипт и выложу новую версию дропа.

а у мобиуса идет проверка на то, чтобы сумма шансов в группе была 100% ровно, или у него плавающий сумарный процент в группе? у люцеры насколько помню - идет проверка на 100%. Могут быть разные принципы создания групп дропа и их проверки, и они между собой не стакаются
 
а у мобиуса идет проверка на то, чтобы сумма шансов в группе была 100% ровно, или у него плавающий сумарный процент в группе? у люцеры насколько помню - идет проверка на 100%. Могут быть разные принципы создания групп дропа и их проверки, и они между собой не стакаются
Сурс мобиуса - в шаре, как и репозиторий в доступе, смотри и изучай "не хочу".
 
Сурс мобиуса - в шаре, как и репозиторий в доступе, смотри и изучай "не хочу".
ну эт надо не мне, а автору. если ты знаешь уже и ковырялся - мог бы ответить. мне в это Г лезть не интересно. опять же, если есть сурс - я бы переписал расчет шанса взяв из акиса. У него есть обратная совместимость с другой методикой рассчета. а ПТСовская методика на другом типе рассчета не заработает. И проще править дроп по "неПТСной" методике.
 
ну эт надо не мне, а автору. если ты знаешь уже и ковырялся - мог бы ответить. мне в это Г лезть не интересно. опять же, если есть сурс - я бы переписал расчет шанса взяв из акиса. У него есть обратная совместимость с другой методикой рассчета. а ПТСовская методика на другом типе рассчета не заработает. И проще править дроп по "неПТСной" методике.
Он переписан у меня, то что у Мобиуса (и еще 90%) - не возможно использовать, реализация для C1, С2.
Даже посмотрев в любой слитый ПТС, можно определиться что система дропа не на столько убогая должна быть.
 
Он переписан у меня, то что у Мобиуса (и еще 90%) - не возможно использовать, реализация для C1, С2.
Даже посмотрев в любой слитый ПТС, можно определиться что система дропа не на столько убогая должна быть.
Из твоей формулиррвки однозначно не ясно, убоготое то что у мобиуса, или то что и в птс. Так как по мне и то что в птс- убого. Ну точнее переусложнено для оптимизации. Это имеет смысл, когда у тебя есть все тулзы дополнителтные разработчика. А для простых админов фришек это лишняя головная боль и балансировка процентов всех айтемов в группе и шанса группы при изменении всего лишь одного айтема из группы.
А в чем отличия моделей дропа с1 и поздних хроник?
 
Bankir, не знал, что у мобиуса и дроп написан скажем так "не идеально"...Хотя меня всегда удивляли странные шансы дропа на различных выборках... где шанс указан в 70%, на выборке в 50 мобов - получалось примерно такое значение, потом делал вторую выборку в 50 мобов и уже ловил реальный шанс в 30%....
 
Из твоей формулиррвки однозначно не ясно, убоготое то что у мобиуса, или то что и в птс. Так как по мне и то что в птс- убого. Ну точнее переусложнено для оптимизации. Это имеет смысл, когда у тебя есть все тулзы дополнителтные разработчика. А для простых админов фришек это лишняя головная боль и балансировка процентов всех айтемов в группе и шанса группы при изменении всего лишь одного айтема из группы.
А в чем отличия моделей дропа с1 и поздних хроник?
Оффтоп:

Рас уж ты работал с ПТС - да там очень "Хитромудро", и завязано на многих системах/расчетах.

В чем разниц от С1 и выше - да много в чем, к примеру наличие или отсутствие дополнительных групп (т.е. все в одной и имеют свой уникальный шанс, без общего расчета в 100%), есть время, когда был упор в 100% для общей группы, пришло время - когда каждый итем имеет уникальный шанс, а группа/дроп лист общая(ий).
Ивент дроп - он может быть на уровне скриптов или сразу ити в дроп листах.

Крч, возьми слитую птс Essence и посмотри что там может быть (хотя уже и этот дроп обновили), добавили несколько новых систем связных с дропом или открытием чело либо.
 
Назад
Сверху Снизу