1
Лечь в дрейф при отсутствии точки назначения: + и -
Автор
GetNight
, 06 Дек 2016 12:27
Сообщений в теме: 10
#1
Отправлено 06 Декабрь 2016 - 12:27
Рассматриваем нововведение детально:
+1 раньше флот прилетевший и не нашедший полей, быстро заканчивал сотню итераций цикла, вхолостую сжирая топливо
и иногда цикл заканчивался не дома (если корректировал полетник в полете), в этом случае флот падал в дрейф,
маска снималась и его мог спокойно снять пролетающий мимо пират или борг
сейчас он в дрейф ляжет дома
НО
-1 если полет на поле шёл через левые гиперврата, в случае отсутствия поля, корабль застрянет на чужих гипервратах
(а, если не ошибаюсь, генератор полей маскировки соалов не скроет твой флот и он ляжет от причин, описанных в прошлом пункте
как быть?
предлагаю такое решение: команду заменить на другую:
пропустить N команд в случае отсутствия точки назначения
конкретный пример полетника, в котором рассматриваются оба варианта:
1. нагрузить топливо
2. [опционально] гиперпереход на чужие врата1
3. полететь на поле1 (в случае отсутствия пропустить команд: 2)
4. копать
5. отлететь на 1 св. год.
6. полететь на поле2 (в случае отсутствия пропустить команд: 2)
7. копать
8. отлететь на 1 св. год.
9. полететь на поле3 (в случае отсутствия пропустить команд: 1)
10.копать
11. полететь домой
12. выгрузить все
В случае, если поля2 и поля3 не будет полетник будет выглядеть так:
1. нагрузить топливо
2. [опционально] гиперпереход на чужие врата1
3. полететь на поле1 (в случае отсутствия пропустить команд: 2)
4. копать
5. отлететь на 1 св. год.
11. полететь домой
12. выгрузить все
В случае отсутствия всех трех полей так:
1. нагрузить топливо
2. [опционально] гиперпереход на чужие врата1
11. полететь домой
12. выгрузить все
Т.е. останется просто холостой цикл, никто нигде не застрянет
+1 раньше флот прилетевший и не нашедший полей, быстро заканчивал сотню итераций цикла, вхолостую сжирая топливо
и иногда цикл заканчивался не дома (если корректировал полетник в полете), в этом случае флот падал в дрейф,
маска снималась и его мог спокойно снять пролетающий мимо пират или борг
сейчас он в дрейф ляжет дома
НО
-1 если полет на поле шёл через левые гиперврата, в случае отсутствия поля, корабль застрянет на чужих гипервратах
(а, если не ошибаюсь, генератор полей маскировки соалов не скроет твой флот и он ляжет от причин, описанных в прошлом пункте
как быть?
предлагаю такое решение: команду заменить на другую:
пропустить N команд в случае отсутствия точки назначения
конкретный пример полетника, в котором рассматриваются оба варианта:
1. нагрузить топливо
2. [опционально] гиперпереход на чужие врата1
3. полететь на поле1 (в случае отсутствия пропустить команд: 2)
4. копать
5. отлететь на 1 св. год.
6. полететь на поле2 (в случае отсутствия пропустить команд: 2)
7. копать
8. отлететь на 1 св. год.
9. полететь на поле3 (в случае отсутствия пропустить команд: 1)
10.копать
11. полететь домой
12. выгрузить все
В случае, если поля2 и поля3 не будет полетник будет выглядеть так:
1. нагрузить топливо
2. [опционально] гиперпереход на чужие врата1
3. полететь на поле1 (в случае отсутствия пропустить команд: 2)
4. копать
5. отлететь на 1 св. год.
11. полететь домой
12. выгрузить все
В случае отсутствия всех трех полей так:
1. нагрузить топливо
2. [опционально] гиперпереход на чужие врата1
11. полететь домой
12. выгрузить все
Т.е. останется просто холостой цикл, никто нигде не застрянет
#2
Отправлено 06 Декабрь 2016 - 12:34
нужно просто галочку в случае отсутствия места назначения вернутся в место выгрузки)
#3
Отправлено 06 Декабрь 2016 - 12:35
А если тебе нужно дальше лететь? На следующее поле?
Получится что будет пустой цикл с 1 полем, которое исчезло....
Получится что будет пустой цикл с 1 полем, которое исчезло....
#4
Отправлено 06 Декабрь 2016 - 13:08
снять по умолчанию - и норм
#6
Отправлено 06 Декабрь 2016 - 13:31
я не против - ток не думаю что реализуют
было бы круто в плане полетника еще одну метку на команде добавить - конец цикла
есть полетник в 10 команд и цикл 100
в процессе выполнения чето правим по командам и последняя команда последнего цикла уже не та что надо
было бы круто в плане полетника еще одну метку на команде добавить - конец цикла
есть полетник в 10 команд и цикл 100
в процессе выполнения чето правим по командам и последняя команда последнего цикла уже не та что надо
#7
Отправлено 06 Декабрь 2016 - 13:43
Нету в этом смысла, зря сервер только нагружать, если делать, так делать не пропустить команды, а удалить команды включая эту. И нагрузка на сервер меньше будет и игрокам меньше летать в холостую
#8
Отправлено 06 Декабрь 2016 - 13:43
AS10 (06 Декабрь 2016 - 13:31) писал:
было бы круто в плане полетника еще одну метку на команде добавить - конец цикла
есть полетник в 10 команд и цикл 100
в процессе выполнения чето правим по командам и последняя команда последнего цикла уже не та что надо
есть полетник в 10 команд и цикл 100
в процессе выполнения чето правим по командам и последняя команда последнего цикла уже не та что надо
Этот баг знает каждый! Я когда-то предлагал решение... Чтобы каждая команда имела скрытый уникальный идентификатор и по нему корректировалась а не по номеру в полетнике...
Это бы спокойно решило бы данную проблему... но нет.. почему нет? а хз
#9
Отправлено 06 Декабрь 2016 - 13:46
Noob (06 Декабрь 2016 - 13:43) писал:
нету в этом смысла, зря сервер только нагружать, если делать так делать не пропустить команды, а удалить команды включая эту. и нагрузка на сервер меньше будет и игрокам меньше летать в холостую
Т.е. ты считаешь, что полет корабля на несуществующее поле и попытка копать его - нагружает сервер меньше, чем пропуск этих команд?
Я против автоудаления команд, т.к. если они останутся, можно безболезненно изменить поле на другое и он будет продолжать копать новые, т.к. они существуют!
#10
Отправлено 06 Декабрь 2016 - 14:23
GetNight (06 Декабрь 2016 - 13:46) писал:
Т.е. ты считаешь, что полет корабля на несуществующее поле и попытка копать его - нагружает сервер меньше, чем пропуск этих команд?
Я против автоудаления команд, т.к. если они останутся, можно безболезненно изменить поле на другое и он будет продолжать копать новые, т.к. они существуют!
Я против автоудаления команд, т.к. если они останутся, можно безболезненно изменить поле на другое и он будет продолжать копать новые, т.к. они существуют!
Это одинаково по сути будет нагружать сервер. А если таких полей 10 или 20 окажется, их всех безболезненно будешь переименовывать? По моему проще по новой их забить через скрипт полетника
#11
Отправлено 06 Декабрь 2016 - 14:44
Noob (06 Декабрь 2016 - 14:23) писал:
Это одинаково по сути будет нагружать сервер. А если таких полей 10 или 20 окажется, их всех безболезненно будешь переименовывать? По моему проще по новой их забить через скрипт полетника
Мы говорим о бесконечно малой величине. А про 10 или 20 полей... блин, ну реально... Нужно понимать элементарные вещи! Если у меня стоит в полетнике поля Korr:1 Korr:2 Korr:3 Korr:4, я всегда могу поставить Korr:5 Korr:6 Korr:7 Korr:8.
При этом не прерывая цикл! И не ожидая, когда корабль будет на точке отсчета (дома). И это будет гораздо быстрее, чем... чем дождаться прилёта домой, очистить полетник, загрузить полетник скриптом... и... и сделать то же самое, что и я. Браво.
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных