Deliverer - алгоритм перевозки товаров. (0 viewing)
 | | |
|
TOPIC: Deliverer - алгоритм перевозки товаров.
|
|
Deliverer - алгоритм перевозки товаров. 16 Years, 1 Month ago
|
Karma: 2
|
Всем привет.
Как уже переписывались в переписке в общей теме саппорта, но так, сорри и не понял.
Итак баги/замечания:
- Были установлены параметры Трюма - минимум 60%, максимум 95%. Реально - трюм пустой!
При этом команды по загрузке товара на корабль просто игнорились. Т.е. он прилетал на станцию, стекал ангар, и улетал.
Закинул товаров вручную в трюм корабля, больше 60% - сразу стал загружать из ангара в трюм.
Сорри, но не понял логики.
Поэтому таки прошу прояснить.
- Сделать таки stack all не только в ангаре станций, но и в трюме корабля.
Зачем - поясню:
Есть к примеру следующее задание:
- System1<Tritanium&Mexallon&Pyerite (загружаем три минерала, все сколько есть)
- System2<Tritanium&Mexallon&Pyerite (загружаем три минерала, все сколько есть)
- System3<Tritanium&Mexallon&Pyerite (загружаем три минерала, все сколько есть)
- System4<Tritanium&Mexallon&Pyerite (загружаем три минерала, все сколько есть)
- System5>Tritanium&Mexallon&Pyerite (выгружаем три минерала, все сколько есть)
В результате, после Системы номер четыре имеем в трюме 12 кусков минералов. Если бы собирался один минерал - такого бы наверное не было.
В результате, по прилету в Систему номер 5 из трюма будут выгружены в ангар только по одному куску каждого минерала.
- 3. К сожалению не сильно разобрался пока в управлении алгоритмами, но как понял, принцип работы следующий:
- 1. Старт.
- 2. Вылет в космос, и поиск следующие системы(в случае старта - первой по списку).
- 3. Полет к ней.
- 4. Док на станции.
- 5. Выполнение заданного алгоритма (загрузка, выгрузка, ничего не делаем).
При этом, проверка на полноту трюма, если больше минимального(или максимального) - то не загружаем со станции, или не выгружаем.
- 6. Есть еще системы в задании(или цикл) - то переход на пункт 2.
Предложение:
- 1. Старт.
- 2. Вылет в космос.
- 3. Проверка трюма и выбор следующей системы:
- 4. Если заполнен более максимального значения - то пропускаются все системы, в которых есть только загрузка товаров в трюм.
Если заполнен менее минимального значения, то пропускаются все системы, в которых есть только выгрузка из трюма.
Таким образом - выбрана новая система, не обязательно следующая по списку.
- 4. Полет к ней.
- 5. Док на станции.
- 6. Выполнение заданного алгоритма (загрузка, выгрузка, ничего не делаем).
При этом, проверка на полноту трюма, если больше минимального(или максимального) - то не загружаем со станции, или не выгружаем.
- 7. Есть еще системы в задании(или цикл) - то переход на пункт 2.
Таким образом, допустим у нас есть задание:
- Система1<Тританиум
- Система2<Тританиум
- Система3<Тританиум
- Система4<Тританиум
- Система5>Тританиум
Если у нас допустим в процентах карго на станциях лежит:
- Система1 - 30%
- Система2 - 70%
- Система3 - 100%
- Система4 - 50%.
То в текущем варианте, при использовании цикла, он пролетит по следующему маршруту, пока все не перевезет:
Система1 - Система2 - Система3 - Система4 - Система5 - Система1 - Система2 - Система3 - Система4 - Система5 - Система1 - Система2 - Система3 - Система4 - Система5
При предлагаемом:
Система1 - Система2 - Система3 - Система4 - Система5 - Система1 - Система2 - Система3 - Система4 - Система5 - Система1 - Система2 - Система3 - Система4 - Система5.
При использовании фрейтера - эффективнее. Если я могу такое сам закодить - то прошу подтвердить - попробую.
Как пожелание - работа с ассетами, и тогда еще больше станций можно скипнуть.
- Если товар не помещается в Трюм - то не добил его до полной. Наблюдал один раз. В случае когда загрузка была без указания объема.
|
|
|
|
|
|
|
Deliverer - алгоритм перевозки товаров. 16 Years, 1 Month ago
|
Karma: 855
|
SystemI писал(а):
Итак баги/замечания:[list=1]
[*]Были установлены параметры Трюма - минимум 60%, максимум 95%. Реально - трюм пустой!
При этом команды по загрузке товара на корабль просто игнорились. Т.е. он прилетал на станцию, стекал ангар, и улетал.
Закинул товаров вручную в трюм корабля, больше 60% - сразу стал загружать из ангара в трюм.
Сорри, но не понял логики.
Поэтому таки прошу прояснить.Судя по всему где то вместо ">" стоит "<". Поправлю.
[*]Сделать таки stack all не только в ангаре станций, но и в трюме корабля.
Зачем - поясню:
Есть к примеру следующее задание:
- System1<Tritanium&Mexallon&Pyerite (загружаем три минерала, все сколько есть)
- System2<Tritanium&Mexallon&Pyerite (загружаем три минерала, все сколько есть)
- System3<Tritanium&Mexallon&Pyerite (загружаем три минерала, все сколько есть)
- System4<Tritanium&Mexallon&Pyerite (загружаем три минерала, все сколько есть)
- System5>Tritanium&Mexallon&Pyerite (выгружаем три минерала, все сколько есть)
В результате, после Системы номер четыре имеем в трюме 12 кусков минералов. Если бы собирался один минерал - такого бы наверное не было.
В результате, по прилету в Систему номер 5 из трюма будут выгружены в ангар только по одному куску каждого минерала.Понятно, сделаем. Пока можно сгрузить все командой System5>
[*]3. К сожалению не сильно разобрался пока в управлении алгоритмами, но как понял, принцип работы следующий:
- 1. Старт.
- 2. Вылет в космос, и поиск следующие системы(в случае старта - первой по списку).
- 3. Полет к ней.
- 4. Док на станции.
- 5. Выполнение заданного алгоритма (загрузка, выгрузка, ничего не делаем).
При этом, проверка на полноту трюма, если больше минимального(или максимального) - то не загружаем со станции, или не выгружаем.
- 6. Есть еще системы в задании(или цикл) - то переход на пункт 2.
Предложение:
- 1. Старт.
- 2. Вылет в космос.
- 3. Проверка трюма и выбор следующей системы:
- 4. Если заполнен более максимального значения - то пропускаются все системы, в которых есть только загрузка товаров в трюм.
Если заполнен менее минимального значения, то пропускаются все системы, в которых есть только выгрузка из трюма.
Таким образом - выбрана новая система, не обязательно следующая по списку.
- 4. Полет к ней.
- 5. Док на станции.
- 6. Выполнение заданного алгоритма (загрузка, выгрузка, ничего не делаем).
При этом, проверка на полноту трюма, если больше минимального(или максимального) - то не загружаем со станции, или не выгружаем.
- 7. Есть еще системы в задании(или цикл) - то переход на пункт 2.
Таким образом, допустим у нас есть задание:
- Система1<Тританиум
- Система2<Тританиум
- Система3<Тританиум
- Система4<Тританиум
- Система5>Тританиум
Если у нас допустим в процентах карго на станциях лежит:
- Система1 - 30%
- Система2 - 70%
- Система3 - 100%
- Система4 - 50%.
То в текущем варианте, при использовании цикла, он пролетит по следующему маршруту, пока все не перевезет:
Система1 - Система2 - Система3 - Система4 - Система5 - Система1 - Система2 - Система3 - Система4 - Система5 - Система1 - Система2 - Система3 - Система4 - Система5
При предлагаемом:
Система1 - Система2 - Система3 - Система4 - Система5 - Система1 - Система2 - Система3 - Система4 - Система5 - Система1 - Система2 - Система3 - Система4 - Система5.
При использовании фрейтера - эффективнее. Если я могу такое сам закодить - то прошу подтвердить - попробую.
Как пожелание - работа с ассетами, и тогда еще больше станций можно скипнуть.
[*]Если товар не помещается в Трюм - то не добил его до полной. Наблюдал один раз. В случае когда загрузка была без указания объема.
[/list] Да но только если кто то указывает количество скажем кристаллов отгружаемое со станции 1, то каждый раз при прилете через систему 1 груз оттуда будет забираться повторно. Тут надо какие то дополнительные мозги разрабатывать которые будут думать откуда что бралось и куда сколько везлось. Только так, иначе это будет двойная работа. На данный момент наличием текуших модулей реализовать такой способ перемешения нельзя.
|
|
|
|
|
|
|
Deliverer - алгоритм перевозки товаров. 16 Years, 1 Month ago
|
Karma: 855
|
Может быть самый простой способ дать извозчику право модифицировать путь? Т.е. если был путь Система1 - Система2 - Система3 - Система4 - Система5 в котором Система3 - Система4 не пропускаются, а перекидываются в конец: Система1 - Система2 - Система5 - Система3 - Система4, после чего добавляем систему из маршрута по правилу все что загружено должно быть где то выгружено: Система1 - Система2 - Система5 - Система3 - Система4 - Система5. Плюс задачу наоборот, все что должно быть выгружено надо где то загрузить. Где то так должен работать. 
|
|
|
|
|
|
|
Deliverer - алгоритм перевозки товаров. 16 Years, 1 Month ago
|
Karma: 2
|
Slav2 писал(а):
Может быть самый простой способ дать извозчику право модифицировать путь? Т.е. если был путь Система1 - Система2 - Система3 - Система4 - Система5 в котором Система3 - Система4 не пропускаются, а перекидываются в конец: Система1 - Система2 - Система5 - Система3 - Система4, после чего добавляем систему из маршрута по правилу все что загружено должно быть где то выгружено: Система1 - Система2 - Система5 - Система3 - Система4 - Система5. Плюс задачу наоборот, все что должно быть выгружено надо где то загрузить. Где то так должен работать. 
Ну, так даже лучше. Если возможно.
А по поводу выгрузить все - спасибо, попробую.
А что по-поводу случая, когда количество товара на станции превышает размер трюма? Я явно видел, но ну успел добежать (купал ребенка), что ив переспросил - типа все не влезает, разделять ? И похоже, то ли не дождался ответа, то ли ЕМ нажал нет.
|
|
|
|
|
|
|
Deliverer - алгоритм перевозки товаров. 16 Years, 1 Month ago
|
Karma: 855
|
|
По моему прога нажимает на ОК и должно влезть столько, сколько помещается в трюм.
|
|
|
|
|
|
|
Deliverer - алгоритм перевозки товаров. 16 Years, 1 Month ago
|
Karma: 2
|
|
Slav2 писал(а):
По моему прога нажимает на ОК и должно влезть столько, сколько помещается в трюм.
Точно не нажала ОК, т.к. на станцию выгрузки приехал с неполным трюмом.
|
|
|
|
|
|
|
 | | |
|
|
© Macro Laboratory 2026
All rights reserved!
|