Elite Games - Свобода среди звезд!
.
ВНИМАНИЕ!
Наша конференция посвящена космической тематике и компьютерным играм.
Политические вопросы и происходящие в мире события в данный момент на нашем сайте не обсуждаются!

  » Обсуждение модов пилотов ЕГи | страница 16
Конференция предназначена для общения пилотов. Для удобства она разделена на каналы, каждый из которых посвящен определенной игре. Пожалуйста, открывайте темы только в соответствующих каналах и после того, как убедитесь, что данный вопрос не обсуждался ранее.

Поиск | Правила конференции | Фотоальбом | Регистрация | Список пилотов | Профиль | Войти и проверить личные сообщения | Вход

   Страница 16 из 21
На страницу: Пред.  1, 2, 3 ... 15, 16, 17 ... 19, 20, 21  След.    Перейти:   Все страницы
Поиск в этой теме:
Канал X Rebirth » Модовый и скриптовый отсек X Rebirth: «Обсуждение модов пилотов ЕГи»
AlexYar
 1848 EGP


Рейтинг канала: 5(187)
Репутация: 328
Сообщения: 31534

Зарегистрирован: 26.10.2003
eliseeff :
а что такое делает его фикс, чего не делает мой?


Так как мой появился раньше твоего, и твой делался на основе моего - вопрос нужно ставить наоборот. Что делает твой фикс, чего не делает мой. И расписать по пунктам отличия, а так же в описании указать, что AY_BlockSelling нужно отключать.
    Добавлено: 20:59 29-01-2018   
eliseeff
 268 EGP


Рейтинг канала: 6(316)
Репутация: 5
Сообщения: 932

Зарегистрирован: 07.03.2015
AlexYar :
...и твой делался на основе моего...

Кто тебе сказал такую чушь? Плюнь ему в глаза - он ничего не соображает в скриптах. Хы... Лучше сам внутрь посмотри. Это все равно что сказать, мол, "Мерседес" сделан на основе самоката. Колеса же у обоих есть... Ой, не могу!..

AlexYar :
Так как мой появился раньше твоего ... вопрос нужно ставить наоборот. Что делает твой фикс, чего не делает мой. И расписать по пунктам отличия...


Я бы не сказал, что твой вывод так уж железно логичен. Если на руках что-то уже имеется, то нет смысла делать что-то другое, менее функциональное. Но изволь...

Сравнительная таблица функциональности PlayerStationTradersFix и AY_BlockSelling

ФункцияPlayerStationTradersFixAY_BlockSelling
Полный запрет продаж
Есть
Есть
Полный запрет закупок
Есть
Нет
Приоритетность продаж над закупками
Есть
Есть
Приоритетность закупок над продажами
Есть
Нет
Устранение причин блокировки продажи других товаров (при приоритетности продаж), если по одному из них в системе имеется переизбыток
Есть
Нет
Устранение причины практически бесконечного поиска сделок в определенных ситуациях у торговцев, приписанных к складу
Есть
Нет

AlexYar :
...а так же в описании указать, что AY_BlockSelling нужно отключать.

Меа кульпа. Я наивно полагал, что пользователи сами в состоянии сделать соответствующие выводы в уме, без сводных таблиц.

P.S. В настоящее время готовится следующая версия, где будет устранен еще один косяк ванильного скрипта, а также еще немного расширена функциональность торговцев, приписанных к складу.

Последний раз редактировалось: eliseeff (23:36 29-01-2018), всего редактировалось 3 раз(а)
    Добавлено: 22:05 29-01-2018   
Andy_MB
 130 EGP


Рейтинг канала: 4(83)
Репутация: 10
Сообщения: 572
Откуда: Край вселенной, Квазар-1
Зарегистрирован: 13.07.2015
Обновил складского перевзчика v1.05 для тех, кто не пользуется стимом (в стиме уже давно есть 1.05, а про то, что здесь забыл обновить мне напомнили. Каюсь.).
Хотел пояснить про доп. функцию "Заполнение склада"

Функция предназначена, в первую очередь, для заполнения складов вновь построенной станции или простаивающих из-за отсутствия сырья.
Именно для базового заполнения СКЛАДа её рекомендуется использовать 1 раз, чтобы не нарушать экономику станций игрока. Так как кораблик забирает готовую продукцию без оплаты (карман игрока один!). Менеджер может заплакать и попросить оборотных средств! Улыбка
    Добавлено: 13:54 01-02-2018   
AlexYar
 1848 EGP


Рейтинг канала: 5(187)
Репутация: 328
Сообщения: 31534

Зарегистрирован: 26.10.2003
eliseeff :
Это все равно что сказать, мол, "Мерседес" сделан на основе самоката


Придумать новую фару к самокату - не значит придумать новый самокат. А тем более - придумать мерседес Улыбка Хребет как был самокатом со сломанным колесом, так им и останется (в том смысле, что кардинально его улучшить уже нельзя). И конечно я внутрь заглянул первым делом (интересно же).
Никакие баги, вызываемые перекрёстными продажами, твой фикс не фиксит. Он и не может их фиксить, так как они не в том скрипте, который ты правишь (они в ехе). Косвенно они фиксятся только полной блокировкой продаж. Хотя, это можно так же косвенно сделать, запретив продавать только станциям игрока (на баги, которые будут на станциях неписей, игроку пофиг). Расширение официального бага продаж в твоём скрипте есть - это да. Вместе со всеми другими багами, связанными с ним.

Но ты тестируй, тестируй, найдёшь ещё пару сюрпризов Улыбка

Можешь попробовать сделать повторную проверку свободного места на складе станции непосредственно перед разгрузкой, это нивелирует баг с двойной перекрёстной доставкой. Но для этого и другие скрипты придётся править. Ещё можно попробовать сделать проверку параллельным таском или прерыванием в процессе разгрузки на время, затраченное на разгрузку (если оно больше получаса - принудительно прерывать разгрузку). Это косвенно пофиксит баг с зависанием кораблей на разгрузке, который егософт исправить до сих пор не может, хотя и неизвестно, какие ещё баги это может породить..


зыж: Кстати, вставки "xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"" в ai-скрипты необязательны, так как лог на их диффы не ругается (без этих вставок). Ругается на md-скрипты (Error loading MD file).
    Добавлено: 18:14 03-02-2018   
eliseeff
 268 EGP


Рейтинг канала: 6(316)
Репутация: 5
Сообщения: 932

Зарегистрирован: 07.03.2015
AlexYar :
eliseeff :
Это все равно что сказать, мол, "Мерседес" сделан на основе самоката


Придумать новую фару к самокату - не значит придумать новый самокат. А тем более - придумать мерседес Улыбка Хребет как был самокатом со сломанным колесом, так им и останется (в том смысле, что кардинально его улучшить уже нельзя). И конечно я внутрь заглянул первым делом (интересно же).
Никакие баги, вызываемые перекрёстными продажами, твой фикс не фиксит. Он и не может их фиксить, так как они не в том скрипте, который ты правишь (они в ехе). Косвенно они фиксятся только полной блокировкой продаж. Хотя, это можно так же косвенно сделать, запретив продавать только станциям игрока (на баги, которые будут на станциях неписей, игроку пофиг). Расширение официального бага продаж в твоём скрипте есть - это да. Вместе со всеми другими багами, связанными с ним.

Но ты тестируй, тестируй, найдёшь ещё пару сюрпризов Улыбка

Ты меня то ли не слышишь, то ли не слушаешь...

Чтобы сделать что-то на основе чего-то - надо из этой основы что-то взять. Загляни в потроха своего костыля - и ты увидишь, что там брать НЕЧЕГО. А еще загляни в мой первый черновой вариант (который еще до беты) и найди там что-нибудь, хоть отдаленно похожее на твой костыль. Вот когда найдешь - тогда и сможешь сказать, что мой скрипт делался на основе твоего. Подмигиваю Это первое.

Второе: я тебе неоднократно говорил, что я НЕ СОБИРАЛСЯ фиксить перекрестные продажи. Мало того, меня забавляют твои размахивания тряпкой с огромной надписью "СПАСИТЕ-ПОМОГИТЕ!!!" по их поводу. Я уже писал: привезли лишнего - рассосется. Нечего разводить панику.

Есть более серьезные недостатки ванильного скрипта. Я подробно расписывал, почему они возникают, и к чему приводят. Торговец фабрики перестает закупать ресурсы, торговец склада наглухо виснет и бесконечно ищет сделки...

Вот это и правит мой фикс.

AlexYar :
Можешь попробовать сделать повторную проверку свободного места на складе станции непосредственно перед разгрузкой, это нивелирует баг с двойной перекрёстной доставкой. Но для этого и другие скрипты придётся править. Ещё можно попробовать сделать проверку параллельным таском или прерыванием в процессе разгрузки на время, затраченное на разгрузку (если оно больше получаса - принудительно прерывать разгрузку). Это косвенно пофиксит баг с зависанием кораблей на разгрузке, который егософт исправить до сих пор не может, хотя и неизвестно, какие ещё баги это может породить..

Да не собираюсь я править перекрестные продажи. Обратись к Деду Морозу. Улыбка

AlexYar :
зыж: Кстати, вставки "xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"" в ai-скрипты необязательны, так как лог на их диффы не ругается (без этих вставок). Ругается на md-скрипты (Error loading MD file).

Кстати, вставки в паблик вопросов личной переписки - некомильфо. Подмигиваю

* * * * * * * * * * * * * * * * * * *

Upd: Кстати, что-то вспомнил про майнеров, переполняющих складские лимиты в версии 4.30, порылся еще в скриптах. А ведь причина-то нифига не в экзешнике. Я бы, пожалуй, и раньше это дело обнаружил, если бы не пользовался давно уже схемой "1 склад - 1 жидкий ресурс и 1 сухой".

Придется не только делать фикс, но и наполнять какой-нибудь склад несколькими ресурсами для тестирования. С большой долей вероятности фикс скоро будет...

Последний раз редактировалось: eliseeff (19:43 03-02-2018), всего редактировалось 1 раз
    Добавлено: 18:55 03-02-2018   
eliseeff
 268 EGP


Рейтинг канала: 6(316)
Репутация: 5
Сообщения: 932

Зарегистрирован: 07.03.2015
Итак, еще раз о шахтерах, переполняющих склады сверх установленных лимитов. Если мы сравним скрипты mining.ship.station от версий 4.10 и 4.30 - все сразу становится ясно. В 4.30 просто были введены некоторые изменения для шахтеров, приписанных к складам. И в этих изменениях умудрились-таки здорово накосячить.

Кусок первый. Шахтер выбирает ресурс, который он станет сейчас добывать:

 Cкрытый текст   (кликните здесь для просмотра)
Код:
      <do_if value="not $iswarehouse">
        <find_buy_offer buyer="$homebase" multiple="1" result="$buyoffers" wares="$warebasket" tradepartner="this.ship" />

бла-бла-бла

Здесь шахтер, приписанный к станции, НЕ являющейся складом, собирает у своей станции байофферы, чтобы выбрать ресурс, который он будет собирать
      </do_if>
      <do_else> - а это уже альтернативный вариант для шахтеров, приписанных к станции, каковая складом как раз ЯВЛЯЕТСЯ
        <set_value name="$tradewares" exact="$homebase.tradewares.list"/>
        <do_all exact="$tradewares.count" counter="$i">
          <do_if value="not $shoppinglist.indexof.{$tradewares.{$i}} and $warebasket.indexof.{$tradewares.{$i}}">
            <append_to_list name="$shoppinglist" exact="$tradewares.{$i}"/>
          </do_if>
        </do_all>
        <set_value name="$ware" exact="$shoppinglist.random"/>
        <set_value name="$neededAmount" exact="[this.ship.cargo.{$ware}.free, $homebase.cargo.{$ware}.target].min"/>
        <remove_value name="$tradewares"/>
      </do_else>


Что же мы видим? Да то, что складской шахтер на байофферы не смотрит ВООБЩЕ. Он ориентируется на состояние склада, но из-за невнимательности программера при назначении $neededAmount шахтер проверяет не свободное место, а весь объем склада, отведенный для данного ресурса.

Что мы с этого имеем? А то, что шахтер будет всегда пытаться собрать ресурс, если на складе для него отведено место, пусть даже оно десять раз уже этим ресурсом переполнено.

Как лечить? Есть два способа. Первый - сделать так:

<set_value name="$neededAmount" exact="[this.ship.cargo.{$ware}.free, $homebase.cargo.{$ware}.target - $homebase.cargo.{$ware}.count].min"/>

Второй - сделать вот эдак:

<do_if value="not $iswarehouse"> ==> <do_if value="1">

Во втором случае шахтеры складов будут ориентироваться на байофферы точно так же, как и шахтеры, приписанные к фабрикам. В первом - ориентироваться на состояние склада, но уже не на весь отведенный под ресурс объем, а на реально свободное место.

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

Переходим ко второму куску. Тут еще интереснее. Тут шахтеры готовятся разгружаться.

 Cкрытый текст   (кликните здесь для просмотра)
Код:
        <find_buy_offer buyer="$homebase" wares="this.ship.cargo.list" tradepartner="this.ship" result="$resourceoffers" multiple="true" />
        <do_if value="not $iswarehouse and $resourceoffers.count == 0">

бла-бла-бла, если байофферов нет, а наша станция - не склад

        </do_if>
        <do_else>
          <do_if value="$iswarehouse"> а вот это интереснее, ибо это если станция приписки - склад
            <do_all exact="this.ship.cargo.count" counter="$i">
              <set_value name="$tempware" exact="this.ship.cargo.list.{$i}"/>
              <do_if value="$tempware != ware.fuelcells">
                <append_to_list name="$unloadlist" exact="[$tempware, [this.ship.cargo.{$tempware}.count, $homebase.cargo.{$tempware}.target].min]"/>
              </do_if>
            </do_all>
            <remove_value name="$tempware"/>
          </do_if>
          <do_else>
            <do_all counter="$r" exact="$resourceoffers.count">

Красота, да? Есть кто-нибудь, кто не заметил, что при составлении списка для выгрузки шахтер опять смотрит не на свободное место, а на весь отведенный под ресурс объем? И что на байофферы он тоже кашлял?

К чему это ведет? А вот к тому самому переполнению сверх лимитов, т.к. шахтеры складов из-за этой ошибки в скрипте всегда действуют так, как будто склад пуст. Вот и пытаются каждый раз выгрузить абсолютно все, что есть у них в трюме, если это есть в списке товаров склада.

К слову, именно поэтому данный скрипт в ванильной игре 4.30 является основным поставщиком еггогов в дебаглоге, а данный фикс рекомендуется к установке даже тем, кто на каждый ресурс отводит по отдельному складу.

А у нас снова два пути решения. Но вот на этот раз лучше все-таки переправить $homebase.cargo.{$tempware}.target на $homebase.cargo.{$tempware}.target - $homebase.cargo.{$tempware}.count

Вы спросите "почему"? А потому что нам важнее разгрузить шахтера, чем возможно спешащего на разгрузку торгаша. Торгаш свой товар может и распродать. У него для этого в скрипте специально куча строк понаписана. А у шахтера этот ресурс будет валяться в трюме и занимать место, мешая собирать другие ресурсы.

Фикс сделан и успешно протестирован. Скачать его можно (и нужно, ибо см. выше про еггоги в дебаг-логе) вот здесь.

Кстати, вспомнилось, вот отсюда:
AlexYar :
Мы говорим о баге, который зашит глубоко в ехе, из-за которого корабли добывают и выгружают на склад по багованным офферам товар выше лимита склада.

Как видишь, Алекс, никаких багованных офферов. И никакого "глубоко в ехе"... Все мы тут люди-человеки, каковым, как известно, свойственно ошибаться, и ты в этом отношении - не исключение, о чем ты как-то подзабывать стал. Подмигиваю

Последний раз редактировалось: eliseeff (02:36 04-02-2018), всего редактировалось 5 раз(а)
    Добавлено: 01:46 04-02-2018   
eliseeff
 268 EGP


Рейтинг канала: 6(316)
Репутация: 5
Сообщения: 932

Зарегистрирован: 07.03.2015
Продолжается работа над PlayerStationTradersFix и пришло время выхода следующей бета-версии.

Естественно, работа скрипта была улучшена. Что добавилось/улучшилось?

  1. Улучшена эффективность выбора товара для продажи у торговцев, приписанных к складу. У Егософта сортировка селлофферов станции при этом происходила "по релэйтивпрайсу", что в принципе правильно, НО... Когда в игру были добавлены склады игрока, на это следовало сделать корректировку, а Егосы про это забыли. Что из-за этого происходит?

    У обычной станции мы селлофферы сортанули по релэйтивпрайсу (это отношение текущей цены к средней) - и порядок. Если релэйтивпрайс низкий - товара на складе много. Если высокий - товара мало. В первую очередь пытаемся продать тот, у которого релэйтивпрайс низкий.

    Но у склада это не пройдет, потому что все цены мы устанавливаем вручную (если, конечно, не больны на голову или не мутим какую-нибудь чрезвычайно хитрую схему Хы... ). Соответственно, сколько бы товара на складе не было, торгаш всегда будет ориентироваться не на реальное положение дел, а на установленную игроком для товара цену.

    В новой версии торговец перед сортировкой проверяет, не к складу ли он приписан, а если да - сортирует селлофферы не по релэйтивпрайсу, а по стоклевелу (отношению предлагаемого в селлоффере кол-ва к размеру склада, отведенного под данный товар). А поскольку после сортироки по релэйтивпрайсу и по стоклевелу результат надо обрабатывать в разном порядке - потом список реверсируется.

  2. При обработке продаж торговец делает это в два прохода. Первым проходом он "обзванивает" корабли-застройщики (у них приоритет). И только потом, если застройщикам ничего из предлагаемого товара не нужно, переходит к "обзвону" станций. Это занимает время, порой достаточно приличное (вспомним хотя бы дроноварни). Только зачем искать покупателей-КЗ для товаров, которые КЗ не могут купить вообще никаким каком?

    Поэтому введена глобальная переменная, в которой хранится список всех товаров, которые могут покупать застройщики. Если обрабатываемого товара в списке нет - застройщики просто пропускаются.

  3. Введена зависимость времени ожидания между циклами от кол-ва байофферов/селлофферов. Долго думающий торгаш - не очень хорошо, но фризы в игре генерить - тоже не дело, тут AlexYar прав. Так что когда офферов мало - интервалы больше, чем когда офферов много.

  4. Несколько понижена приоритетность первичных ресурсов по сравнению с вторичными. В ванильном скрипте коэффициент установлен так, что первичные ресурсы имеют приоритет аж до тех пор, пока склад не наполнен данным ресурсом на 80%. Многовато. Заменено на 50.

  5. Изменена работа с маркерами "только закупка" и "только продажа". Кстати, в прошлой версии по моему недосмотру маркер "только продажа" не работал, что обнаружилось буквально накануне, благодаря внимательности камрада anDron. Раньше при наличии маркера список байофферов (или селлофферов) станции обнулялся, а теперь он даже не запрашивается, что облегчает работу скрипта.

  6. Прочие мелкие доработки, включая расширение защиты от дурака при наличии нескольких маркеров одновременно и уменьшение в разы количеств ошибок в дебаг-логе из-за перехваченных офферов.


Теперь самое сладкое. Введены два новых маркера - "транзит" и "только транзит". Их назначение - закупка складом игрока товаров с других складов игрока по всей галактике.

Маркеры "транзит" и "только транзит" могут работать только если торговец приписан к Складу. Обнаружив такой маркер у себя в названии, торговец ищет товары, которые его Склад приписки может купить у других Складов, принадлежащих игроку, расположенных по всей галактике. Цена имеет значение. Т.е. транзитник ищет предложения только с ценой не выше установленной на его родной станции. Таким образом вы можете регулировать, где будет закупаться транзитник, а где - нет.

Особо подчеркиваю: транзитник не продает товар другим складам игрока, а исключительно закупает.

При наличии нескольких вариантов транзитник пытается выбрать максимальное кол-во. Если есть несколько предложений, превышающих емкость его желудка трюма - он постарается выбрать ближайший. Т.е. он не обязательно летает в другие кластеры, имейте это в виду.

Вечно больной вопрос - Пространства возможностей, где торгаши с высокой вероятностью могут быть схвачены и... ну, вы поняли. Транзитники проверяют, установлено ли DLC "Форпост Телади". Потом проверяют, является ли их основное назначение торговлей или добычей. и если да - склады игрока в ПВЗ транзитник игнорирует. За одним исключением: если его собственный склад находится в ПВЗ. Если вы приписали к складу в ПВЗ Секвану без дронов-комбайнов или Раханас - тут уж медицина бессильна, и вы маньяк, которому нравится мочить своих копетанофф. Хы... Ну или вам начхать на отношения с Картелем и прочими Арсеналами Угурас, и вы приписали к складу Лирамекрон.

Кстати, пользуясь случаем, еще раз рекомендую свой мод "Минуем ПВЗ".

Различие маркеров "транзит" и "только транзит" в том, что простой транзитник, если не найдет сделок для транзита, постарается поторговать как обычный торгаш, по кластеру склада, к которому приписан. При этом ему можно дополнительно вписать один из маркеров: "продажа", "закупка", "только продажа", "только закупка", которым он будет руководствоваться только при поиске НЕтранзитных сделок. А вот транзитник, который Толька, кроме транзитных сделок не признает ничего. Даже искать не будет.

Кстати, если Тольке-транзитнику вписать еще какой-нибудь маркер, то он его сотрет, матерясь в журнале как недокормленный русский тамагочи - оно вам надо?

И да! Кто играет не на русском - соответствующие маркеры:
transit
transit only


* * * * * * * * * * * * * * * * * * * * * * * *

Еще одна, чисто бета-тестерская фича, введена по идее камрада anDron, которому, пользуясь случаем, еще раз говорю искреннее СПАСИБО за помощь в тестировании.

Мы с ним во вселенной Х товарищи обеспеченные, товаров у нас завались. А иногда хочется посмотреть, как оно будет при "товарном голяке". Чтобы не морочиться с доп. MD-скриптом, я ввел еще два маркера:

обнулятор

обрезатор


Оба маркера чистят склады ВСЕХ станций игрока. Обрезатор потом еще наполняет их случайными кол-вами от 5 до 10 процентов емкости склада. Чтобы не повторялось - маркер тут же удаляется.

Так что прошу любить и жаловать - версия 0.92. И да! Джентльмены, мне очень нужны ваши отзывы, не обязательно положительные. Замеченные недочеты/недостатки/баги/глюки - еще лучше. Кидание тапками приветствуется. Хы...

Последний раз редактировалось: eliseeff (21:56 09-02-2018), всего редактировалось 5 раз(а)
    Добавлено: 19:21 09-02-2018   
harryz
 90 EGP

Репутация: 4
Сообщения: 916

Зарегистрирован: 16.11.2014
eliseeff :

Кстати, пользуясь случаем, еще раз рекомендую свой мод "Минуем ПВЗ".

Фишка интересная, но меня смущает поведение Пеникса, которому так быстрее.
Пеникс будет летать через ПВЗ?

Зы. И как складской перевозчик, его манагер в патруль не поставит?

Последний раз редактировалось: harryz (20:23 09-02-2018), всего редактировалось 3 раз(а)
    Добавлено: 20:17 09-02-2018   
eliseeff
 268 EGP


Рейтинг канала: 6(316)
Репутация: 5
Сообщения: 932

Зарегистрирован: 07.03.2015
harryz :
eliseeff :

Кстати, пользуясь случаем, еще раз рекомендую свой мод "Минуем ПВЗ".

Фишка интересная, но меня смущает поведение Пеникса, которому так быстрее.
Пеникс будет летать через ПВЗ?

Пеникс полетит через ПВЗ - ему не страшно, на него нападать не будут. Улыбка

Если хочешь - я напишу, как изменить скрипт, чтобы ПВЗ миновали независимо от назначения корабля и содержания трюма. Это несложно.

harryz :
Зы. И как складской перевозчик, его манагер в патруль не поставит?

Нет. В патруль его манагер не поставит никаким каком, поскольку у него трюм универсальный. Если, конечно, это именно Пеникс трюмоватиус. Хы...

Upd: А! Свистю! Таки есть вариант, как манагер может поставить Пеникс трюмоватиус в патруль. Для этого Пеникс надо приписать к складу, у которого не назначен НИ ОДИН товар для торговли. Хы...

Последний раз редактировалось: eliseeff (20:39 09-02-2018), всего редактировалось 2 раз(а)
    Добавлено: 20:27 09-02-2018   
eliseeff
 268 EGP


Рейтинг канала: 6(316)
Репутация: 5
Сообщения: 932

Зарегистрирован: 07.03.2015
Обновил версию мода "Минуем ПВЗ" до 1.03. Теперь скрипт универсален и поддерживает все текущие версии, поддерживающие DLC "Форпост Телади".
    Добавлено: 20:53 10-02-2018   
eliseeff
 268 EGP


Рейтинг канала: 6(316)
Репутация: 5
Сообщения: 932

Зарегистрирован: 07.03.2015
Ловите обнову PlayerStationTradersFix! Улыбка

Что сделано в версии 0.93:

  • Все проверки маркеров (кроме бета-тестерских) сведены в одно место (нет-нет, не посланы в одно место, а сведены в одно и то же место скрипта).
    Это позволило свести эти проверки в один цикл и сократить код более чем на 250 строк (!!!).

  • Несколько проапгрейжена работа по бета-тестерским маркерам "обнулятор" и "обрезатор". Обработка товаров складов, ресурсов фабрик, их продукции и промежуточных ресурсов разделены для удобства кастомизации. Добавлены каменты, подсказывающие, где внести нужные изменения. Имея минимальные навыки работы с xml, можно легко скорректировать нужные значения.

  • Возвращена потерянная по моему недостмотру проверка макроса кластера станции приписки транзитника (нужна только маньякам, любящим мочить своих копетанофф или маньякам, любящим заманивать Пениксов Лирамекронами, а потом тоже мочить Ой, не могу!.. ).
    Добавлено: 18:04 11-02-2018   
AlexYar
 1848 EGP


Рейтинг канала: 5(187)
Репутация: 328
Сообщения: 31534

Зарегистрирован: 26.10.2003
eliseeff :
Я уже писал: привезли лишнего - рассосется.


А пока рассасывается - доставка ресурсов на станцию заблокирована, потому что "единственная лирания забита ресурсом, который не может ни разгрузить, ни избавиться от него". Такой вариант ты не рассматривал? Я уже не говорю о баге, когда корабль вообще намертво виснет на разгрузке, и сдёрнуть его можно уже только вручную.

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

eliseeff :
Есть более серьезные недостатки ванильного скрипта. Я подробно расписывал, почему они возникают, и к чему приводят. Торговец фабрики перестает закупать ресурсы, торговец склада наглухо виснет и бесконечно ищет сделки...


Никогда не было таких проблем. Что я делаю не так? Улыбка

eliseeff :
вставки в паблик вопросов личной переписки - некомильфо


Не вижу связи между куском ванильных скриптов и перепиской. Посмотри оригинальные скрипты - там почти везде есть этот кусок. Вставлять его в свои дифы или не вставлять - вопрос лени/рациональности конкретного моддера. Практически, ерроры в логе обычным юзверям по барабану, ибо у них вообще нет лога. Поэтому многие моддеры этот кусок и не вставляют (а не потому, что не знают об этой "фиче"). Кроме того, по этим "ошибкам" в логе наглядно видно, какие md-моды подключены в данный момент.

eliseeff :
Все мы тут люди-человеки


Блаженны верующие Улыбка
    Добавлено: 07:45 12-02-2018   
eliseeff
 268 EGP


Рейтинг канала: 6(316)
Репутация: 5
Сообщения: 932

Зарегистрирован: 07.03.2015
AlexYar :
А пока рассасывается - доставка ресурсов на станцию заблокирована, потому что "единственная лирания забита ресурсом, который не может ни разгрузить, ни избавиться от него". Такой вариант ты не рассматривал?

Представь себе, рассматривал. Но вопросы надо решать последовательно. Отлажу основную часть - возьмусь и за кусок ванильного скрипта, отвечающий за распродажу имеющегося в трюме. Улыбка

AlexYar :
Я уже не говорю о баге, когда корабль вообще намертво виснет на разгрузке, и сдёрнуть его можно уже только вручную.

Правильно не говоришь. Потому что он не имеет отношения к дискуссии и может произойти при любом раскладе. Подмигиваю

AlexYar :
В игре есть резервирование товара, но нет резервирования свободного места. Поэтому при любых продажах (даже самых пофикшенных) от сопутствующих багов никуда не деться. Потому что в одно место товар могут повезти сразу куча кораблей.
Единственная 100% надёжная безбаговая организация доставки ресурсов - от закупок (т.е. полный запрет продаж). Ещё лучше - когда закупающий транспорт у фабрики всего один (по типу ресурса).

Это абсолютно идентично лечению носового кровотечения наложением жгута на шею. Ой, не могу!.. Заодно избавляет от аллергии на тополиный пух.

AlexYar :
eliseeff :
Есть более серьезные недостатки ванильного скрипта. Я подробно расписывал, почему они возникают, и к чему приводят. Торговец фабрики перестает закупать ресурсы, торговец склада наглухо виснет и бесконечно ищет сделки...


Никогда не было таких проблем. Что я делаю не так? Улыбка

Побойся бога, Алекс! Откуда у тебя возьмутся мозоли на пятках, если ты ради своего костыля себе ноги ампутировал? Ой, не могу!..

AlexYar :
Не вижу связи между куском ванильных скриптов и перепиской.

А вот плохо, что тебя мама не научила, что высовываться в окно и орать на всю Ивановскую - неприлично.

Вопросы, поднятые в привате, не следует переносить в паблик. Это неуважение как к собеседнику, так и к окружающим, у которых это может вызвать недоумение, поскольку начала диалога они не видели..

AlexYar :
eliseeff :
Все мы тут люди-человеки


Блаженны верующие Улыбка

Цитата:
Самое верное средство ошибаться — это считать себя непогрешимым.
П. Буаст
    Добавлено: 18:41 12-02-2018   
AlexYar
 1848 EGP


Рейтинг канала: 5(187)
Репутация: 328
Сообщения: 31534

Зарегистрирован: 26.10.2003
eliseeff :
Потому что он не имеет отношения к дискуссии и может произойти при любом раскладе.


После полной блокировки продаж количество багов с зависанием кораблей в доках сокращается на порядки. Что как бы намекает о некоей взаимосвязи.

eliseeff :
Это абсолютно идентично лечению носового кровотечения наложением жгута на шею.


При наложении жгута на шею организм перестаёт функционировать. В моём же решении он начинает функционировать на порядок надёжнее и лучше. Так что твоё сравнение мимо кассы. А вот твои "меры" - ни что иное, как попытка лечить аллергию от тополиного пуха, когда у пациента рак носоглотки. Всё это - мёртвому припарка, т.е. пложение лишних сущностей, значительно увеличивающих количество новых багов и неучтённых новых проблем, тогда как основные старые никуда не деваются и откладываются в долгий ящик.

eliseeff :
Вопросы, поднятые в привате, не следует переносить в паблик.


Какие вопросы-то? Если ты в привате пишешь "египетские пирамиды" - это сразу запрещает мне везде заводить речь о Египте? Логика странная у тебя какая-то. Как будто я написал о каких-то деталях личной жизни твоей Улыбка Если для тебя моддинг хребта - это шибко личное, то так бы и сказал сразу.
    Добавлено: 20:36 12-02-2018   
eliseeff
 268 EGP


Рейтинг канала: 6(316)
Репутация: 5
Сообщения: 932

Зарегистрирован: 07.03.2015
AlexYar :
eliseeff :
Потому что он не имеет отношения к дискуссии и может произойти при любом раскладе.


После полной блокировки продаж количество багов с зависанием кораблей в доках сокращается на порядки. Что как бы намекает о некоей взаимосвязи.

После полного прекращения игры кол-во багов становится нулевым. Что кагбе намекает, что ты опять пропагандируешь лечение мозолей ампутацией ног.

AlexYar :
eliseeff :
Это абсолютно идентично лечению носового кровотечения наложением жгута на шею.


При наложении жгута на шею организм перестаёт функционировать. В моём же решении он начинает функционировать на порядок надёжнее и лучше.

Да, да! Никаких мозолей! Жизнь без ног - на порядок надежнее и лучше! (с) Ой, не могу!..

Это ничего, что ты торговый функционал станций игрока своей ампутацией практически ополовинил, не? Подмигиваю

AlexYar :
Какие вопросы-то? Если ты в привате пишешь "египетские пирамиды" - это сразу запрещает мне везде заводить речь о Египте? Логика странная у тебя какая-то. Как будто я написал о каких-то деталях личной жизни твоей Улыбка Если для тебя моддинг хребта - это шибко личное, то так бы и сказал сразу.

Если собеседник прямо указал тебе, что не желает обсуждать это в паблике - не надо неоднократно дергать его за штанину.

Ничего личного. Просто пытаюсь объяснить тебе довольно элементарные вещи про этику общения. Подмигиваю
    Добавлено: 21:13 12-02-2018   
AlexYar
 1848 EGP


Рейтинг канала: 5(187)
Репутация: 328
Сообщения: 31534

Зарегистрирован: 26.10.2003
eliseeff :
Это ничего, что ты торговый функционал станций игрока своей ампутацией практически ополовинил, не?
Тот функционал, что я оставил, позволяет фабрикам работать эффективнее, чем с багованным ванильным или доработанным багованным твоим функционалом (баги, вызываемые продажами, у тебя всё равно никуда не делись, и резервирование свободного места не появилось, а доставка товаров по всей галактике с сокращением количества прыжков - вообще голимый чит, с которым достижения в хребте ничего не стоят Улыбка).

Последний раз редактировалось: anDron (10:29 15-02-2018), всего редактировалось 1 раз
    Добавлено: 22:04 12-02-2018   
eliseeff
 268 EGP


Рейтинг канала: 6(316)
Репутация: 5
Сообщения: 932

Зарегистрирован: 07.03.2015
Во-первых, никакой доставки по всей галактике. Только закупка. Только складами игрока. И только со складов игрока. Только возможностью межкластерной торговли можно, например, задействовать крупнейший нпс-производитель пшеницы в галактике: Небесные луга в Мальстриме. Иначе они совсем уж бессмысленны. Чисто спортивный интерес. Мои личные лыжи в гамаке.

Во-вторых, "Длинные прыжки" - совсем другой скрипт. В котором я, например, ничего читерского не вижу. Один кластер - один прыжок. В другие кластеры летаем через врата. Думаю, многие, кто играл в предыдущие "иксы", от этих многосерийных прыжков внутри одного кластера не в восторге. Ну а кому не нравится - могут этот мод и не ставить, какие проблемы-то? Улыбка Кстати, тот же расклад по маркеру "транзит". Не нравится - просто не пользуешься...

В-третьих, а при чем здесь "достижения в хребте"?

Последний раз редактировалось: anDron (10:25 15-02-2018), всего редактировалось 2 раз(а)
    Добавлено: 00:31 13-02-2018   
anDron
 545 EGP


Модератор
Рейтинг канала: 4(50)
Репутация: 54
Сообщения: 5572
Откуда: Новосибирск
Зарегистрирован: 27.11.2013
Немного зачистил и подчистил. Советую подчистить, дополнительно, самим (это рекомендация, но... !!!).
Спорьте конструктивно и не приближаясь к 2.6!

А у вас получается не только нарастающее сложение язвительности, но еще и ее [побитное] умножение. Заветы Леопольда - вещь правильная.
    Добавлено: 10:42 15-02-2018   
eliseeff
 268 EGP


Рейтинг канала: 6(316)
Репутация: 5
Сообщения: 932

Зарегистрирован: 07.03.2015
PlayerStationTradersFix версия 0.95 (релиз-кандидат)

Исправлена пара косяков, в редких случаях вызывающих пропуск имеющихся сделок.
Несколько ускорена обработка сделок в некоторых случаях.

В принципе, если в ближайшие дни не всплывет еще каких-нибудь хитрых казусов, версия готова стать релизной. Дальнейшие фичи будут внедряться уже в следующей версии, а эта, судя по всему, вполне готова к употреблению.
    Добавлено: 00:25 18-02-2018   
Andy_MB
 130 EGP


Рейтинг канала: 4(83)
Репутация: 10
Сообщения: 572
Откуда: Край вселенной, Квазар-1
Зарегистрирован: 13.07.2015
Из темы:«Наполняем и исправляем БД X Rebirth»
...думаю, что тут мой ответ будет более уместен.
eliseeff :

Как поступите вы - решать вам и только вам.

Полностью согласен. 2 года назад, после выхода v.4.0, я тоже искал решение (какой-нибудь мод) для "нормальной" работы складов. Но, увы, ничего не нашел.
Пришлось придумывать самому.
Я не стал исправлять ванильные скрипты по 2-м причинам:
1. После обновления игры измененный скрипт может сломаться.
2. Другие модеры тоже могут менять под себя этот-же скрипт => проблемы с совместимостью.
Написал свои скрипты, которые работают исключительно в рамках мода и только для тех кораблей игрока, которые он захочет использовать.
И как я вижу, изменения разработчиков никак не повлияли на работу мода.
 небольшое описание скриптов   (кликните здесь для просмотра)

trade.findandexecutestationtrade.xml - тут объединены 2 скипта (поиск и выполнение). Для корабля игрока, который работает как помощник менеджера. Применяется для базового заполнения ресурсами новой станции игрока и скорейшего запуска её работы. Так-же помогает менеджеру реализовать продукцию (по галактике), когда на неё нет спроса в системе.
transfer.findandexecutewarehousetransfer.xml +
transfer.performplayertraderun.xml - скрипты для передачи товаров между складами игрока, расположенными в разных системах. Это чистая автоматизация рутины игрока по передаче товаров через склады от фабрик игрока в другие системы, где есть спрос на эти товары.
transfer.move.generic.xml - скрипт-бонус, который учитывает скил пилота и позволяет экономить время в пути. А так-же повышает скил пилота при такой однообразной работе.

В последнем обновлении переменную $lasttrade передают в 3 скрипта:
trade.findfreetraderun.xml
trade.findsimpletraderun.xml
trade.findtraderun.xml

Насколько я понимаю, их все нужно поправлять. Я просто не помню в каких случаях - какой скрипт вызывается...
Как Вы у себя сделали? Все 3 поменяли или сделали все три отдельно, а diff-ми изменили только ссылки при их вызове?
    Добавлено: 12:29 22-02-2018   
Канал X Rebirth -> Модовый и скриптовый отсек X Rebirth: «Обсуждение модов пилотов ЕГи»
На страницу: Пред.  1, 2, 3 ... 15, 16, 17 ... 19, 20, 21  След.    Перейти:   Все страницы
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: Практически все, кого я там знаю - мои враги. Или бывшие подруги... (VirusXr866)

  » Обсуждение модов пилотов ЕГи | страница 16
Каналы: Новости | Elite | Elite: Dangerous | Freelancer | Star Citizen | X-Tension/X-BTF | X2: The Threat | X3: Reunion | X3: Terran Conflict | X Rebirth | X4: Foundations | EVE Online | Orbiter | Kerbal Space Program | Evochron | VoidExpanse | Космические Миры | Онлайновые игры | Другие игры | Цифровая дистрибуция | play.elite-games.ru | ЗВ 2: Гражданская война | Творчество | Железо | Игра Мечты | Сайт
   Дизайн Elite Games V5 beta.18