Перейти к содержимому

Донат
На хостинг
ISK за переводы
до 75kk за 1000зн.
Хроники EVE
Сборник
Новичкам
Полезная информация
Фотография

Погрешность приварпа


  • Авторизуйтесь для ответа в теме
82 ответов в теме

#61
СтарыйПепелац

СтарыйПепелац

    Clone Grade Ksi

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPip
  • 12436 сообщений
2911
  • Client:Eng

Возьмем точечный, или очень маленький объект, например, врек. Скажем, выпал рандом нам варпать на точку над ним (A = Пи/2, B - ну пусть будет 0). rand[1/2/3 ] пусть будет 2500. Корабль наш тоже примем за точку. Что выходит?

x = x0 + 2500
y = y0 + 2500
z = z0

Во-первых, мы почему-то приварпали не на точку над целью. Во-вторых, мы почему-то приварпали на 3500+ метров к ней. В-третьих, результат почему-то зависит от величины B, хотя зависимость должна падать вместе с cos(A).

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

Итог: формализация НЕОЧЕНЬ. Да и сложно это формализовать, учитывая разный характер варпа на объекты разного типа.

Феня, откуда ты взял 3500+? О_о

Формула описывает функцию сферы с радиусом R(если сложить все в скобках), т.е. любые точки, полученные в результате, будут лежать между сферой структуры и сферой (R структуры + R шипа + 2500). Если принять радиус структуры и шипа за 0, то внутри сферы с радиусом 2500.

Никак 3500 не выходит.

И с углами - то же самое.

П.С, а хотя, я понял, что ты хотел сказть. Гммм... вот отсюда может получится тот самый недолет, о котором Утренний Дерев говорил.

П.П.С. если хочешь совершенно исключить возможность выйти за рамки 2500, берешь rand1/2/3 примерно 1800(чуток меньше).

Сообщение отредактировал СтарыйПепелац: 28 March 2012 - 18:04

  • 0

#62
DarkPhoenix

DarkPhoenix

    Hatred

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPipPip
  • 28794 сообщений
4407
А ты сам подставь числа, которые я описал, и посмотри результат. Ты зачем-то делаешь следующие ошибки:

1) Пытаешься объединить 2 этапа в один (выборка координаты приварпа + вынесение корабля за нее так, чтоб он не наезжал на нее), усложняя формулу. Проще написать 2 отдельных блока с одной случайной компонентой (эти самые 2 угла), чем в один пихать обе
2) Разносишь статическую величину 2500 в 3 отдельно генерируемые случайным образом величины
3) Путаница то ли с углами, то ли с синусами/косинусами в формуле (что, по сути, есть одна и та же ошибка)

То, о чем говорило дерево, не может из этого получаться. Я на тесте подом туда-сюда ко вреку варпал раз 20, никаких 3к+ (как и 2к-) не было. Да и как можно делать такие выводы по формуле, в которой присутствует целая пачка грубых ошибок? :)

П.П.С. если хочешь совершенно исключить возможность выйти за рамки 2500, берешь rand1/2/3 примерно 1800(чуток меньше).

Я не должен этого хотеть, я могу позволить себе вбить на вход все, что придет в голову (в дозволенных рамках, само собой), и формула должна это дело ограничить. Чтобы она делала это - не должно быть rand1/2/3. Там, конечно, может быть есть рандом по дистанции, но в очень небольшом промежутке (и то я сомневаюсь, что он там есть, т.к. по-моему на мои тесты влияли ненулевые размеры целевого объекта). Если ты хочешь этот рандом включить в рассмотренние - то это должна быть одна отдельная рандомная величина, которая увеличивается/уменьшается пачкой правильно расставленных синусов и косинусов, наравне с радиусом корабля, в зависимости от поданных на вход углов.

Сообщение отредактировал DarkPhoenix: 28 March 2012 - 18:17

  • 0

There is a place where the black stars hang
and the strangest eons call that amorphous mass
unknown, immense, ambivalent to all


#63
СтарыйПепелац

СтарыйПепелац

    Clone Grade Ksi

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPip
  • 12436 сообщений
2911
  • Client:Eng

А ты сам подставь числа, которые я описал, и посмотри результат. Ты зачем-то делаешь следующие ошибки:

1) Пытаешься объединить 2 этапа в один (выборка координаты приварпа + вынесение корабля за нее так, чтоб он не наезжал на нее), усложняя формулу. Проще написать 2 отдельных блока с одной случайной компонентой (эти самые 2 угла), чем в один пихать обе
2) Разносишь статическую величину 2500 в 3 отдельно генерируемые случайным образом величины
3) Путаница то ли с углами, то ли с синусами/косинусами в формуле (что, по сути, есть одна и та же ошибка)

То, о чем говорило дерево, не может из этого получаться. Я на тесте подом туда-сюда ко вреку варпал раз 20, никаких 3к+ (как и 2к-) не было. Да и как можно делать такие выводы по формуле, в которой присутствует целая пачка грубых ошибок? :)

Чуть выше я ответил по поводу 2500.

Подставлять в формулу не обязательно 2500. Сделай rand от 3 до 1700, если тебя так заботят критические величины, так ты никогда за 2500 не выскочишь. Я понятия не имею, что там стоит на самом деле, и вообще, как это у них организованно. Но если оперировать сферами, то и исходить надо из формулы сферы. Это проще всего.

Я не должен этого хотеть, я могу позволить себе вбить на вход все, что придет в голову (в дозволенных рамках, само собой), и формула должна это дело ограничить. Чтобы она делала это - не должно быть rand1/2/3. Там, конечно, может быть есть рандом по дистанции, но в очень небольшом промежутке (и то я сомневаюсь, что он там есть, т.к. по-моему на мои тесты влияли ненулевые размеры целевого объекта). Если ты хочешь этот рандом включить в рассмотренние - то это должна быть одна отдельная рандомная величина, которая увеличивается/уменьшается пачкой правильно расставленных синусов и косинусов, наравне с радиусом корабля, в зависимости от поданных на вход углов.

Синусы и косинусы в этой формуле отвечают исключительно за местоположение точки на сфере.

В оригинале формула координат любой произвольной точки сферы выглядит так:

x = x0 + R * sin(A) * cos(B )
y = y0 + R * sin(A) * cos(B )
z = z0 + R * cos(A)

И это не я придумал. Я лишь попытался наиболее простым способом заключить точки приварпа между сферой объекта приварпа и следующей, отстоящей от нее на 2500 метров(учитывая сферу шипа).

Сообщение отредактировал СтарыйПепелац: 28 March 2012 - 18:27

  • 0

#64
DarkPhoenix

DarkPhoenix

    Hatred

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPipPip
  • 28794 сообщений
4407
Бл#.

Выбор координаты для приварпа для неточечных объектов (x, y - горизонтальные координаты, z - вертикальная):

x1 = x0 + (rnd + R) × cos(α) × cos(β)
y1 = y0 + (rnd + R) × sin(α) × cos(β)
z1 = z0 + (rnd + R) × sin(β)

α - случайный угол отклонения в пределах горизонтальной плоскости, от -π до π, 0 лежит на оси x
β - угол отклонения по вертикали, от -π/2 до π/2
R - радиус объекта для приварпа
rnd - случайная величина от 0 до 1, которая, возможно (возможно!) используется при варпе на некоторые объекты, если ее нету - считай она 1

Реальное место приварпа относительно координаты:

x = x1 + (2500 + R) × cos(α) × cos(β)
y = y1 + (2500 + R) × sin(α) × cos(β)
z = z1 + (2500 + R) × sin(β)

α - случайный угол отклонения в пределах горизонтальной плоскости, от -π до π, 0 лежит на оси x
β - угол отклонения по вертикали, от -π/2 до π/2
R - радиус корабля

Подставь 1 в другое, профит.

В оригинале формула координат любой произвольной точки сферы выглядит так:

x = x0 + R * sin(A) * cos(B )
y = y0 + R * sin(A) * cos(B )
z = z0 + R * cos(A)

И это не я придумал. Я лишь попытался наиболее простым способом заключить точки приварпа между сферой объекта приварпа и следующей, отстоящей от нее на 2500 метров(учитывая сферу шипа).

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

Уравнение-то, может быть, выглядит и так, но вот мне странным кажется строчка
z = z0 + R * cos(A)
Максимальное изменение этой координаты должно быть, когда A = п/2, а косинус от п/2 упорно сводит всю эффективность в ноль. Почему? :)

Или использование одинаковых операций над одинаковыми углами при поиске x и y. Такого же не должно быть.

Ну и, в конце концов, ты почему-то пытаешься напялить рандомизацию на 1 сферу. Нет, это не так, рандомизация тут в 2 совершенно разных сферах.

Сообщение отредактировал DarkPhoenix: 28 March 2012 - 18:44

  • 0

There is a place where the black stars hang
and the strangest eons call that amorphous mass
unknown, immense, ambivalent to all


#65
СтарыйПепелац

СтарыйПепелац

    Clone Grade Ksi

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPip
  • 12436 сообщений
2911
  • Client:Eng
Ну и в чем твоя формула отличается от моей? В том, что ты один раз вбросил только одно радномное значение, приплюсованное к радиусу? Да без проблем. Тоже имеет право на жизнь. Если расстояние меду объектами измеряется не от центра сфер, описанных вокруг объекта, о между ближайшими точками этих сфер, то отгораживаться от радиуса шипа не стоит. Включи его в формулу.

По большому счету, мы ищем все возможные точки всех возможных сфер, лежащих между сферой объекта приварпа и сферой с радиусом R1 + 2500 + R2(R1 - радиус станции, R2 - радиус шипа). Только так ты получишь все возможные точки, в которые может приварпать шип.

Уравнение-то, может быть, выглядит и так, но вот мне странным кажется строчка
z = z0 + R * cos(A)

Ничего странного. Граничные значения описывают окружности, лежащие на координатных плоскостях.

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

x1 = x0 + (rnd + R1 + R2) × sin(α) × cos(β)
y1 = y0 + (rnd + R1 + R2) × sin(α) × cos(β)
z1 = z0 + (rnd + R1 + R2) × cos(α)

Сообщение отредактировал СтарыйПепелац: 28 March 2012 - 19:49

  • 0

#66
DarkPhoenix

DarkPhoenix

    Hatred

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPipPip
  • 28794 сообщений
4407

Ну и в чем твоя формула отличается от моей? В том, что ты один раз вбросил только одно радномное значение, приплюсованное к радиусу? Да без проблем. Тоже имеет право на жизнь.

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

По большому счету, мы ищем все возможные точки всех возможных сфер, лежащих между сферой объекта приварпа и сферой с радиусом R1 + 2500 + R2(R1 - радиус станции, R2 - радиус шипа). Только так ты получишь все возможные точки, в которые может приварпать шип.

Нельзя объединять R1 + 2500 + R2. Запятая ставится после R1, в первой части рандома нету. То, что ты написал, жестко задает линию, на которой все это будет рандомиться. А рандом по расстоянию до массивного объекта отсчитывается не от центра объекта, к которому ты варпаешь, а опосредовано, от центра координаты, которая выбрана евой для приварпа. Надеюсь, не нужно объяснять разницу в последствиях?


Ничего странного. Граничные значения описывают окружности, лежащие на координатных плоскостях.

Не понял. Я же тебе привел ситуацию: надо приварпать объект НАД станцией. Для этого выставляем угол, управляющий вертикальным положением точки приварпа, на 90 градусов. В итоге закономерно получаем вертикальное смещение (z) равное нулю. У тебя есть конкретный пример, который иллюстрирует косяк в формуле. Как его что-то может компенсировать - непонятно, ведь z участвует только в этой строке. Зато этот же угол вертикального отклонения в 90 градусов внезапно дает раскрыться на 100% горизонтальным изменениям положения, по x и y.

Плюс тот косяк, что рассчет x и y производится абсолютно одинаково.

Сообщение отредактировал DarkPhoenix: 28 March 2012 - 19:16

  • 0

There is a place where the black stars hang
and the strangest eons call that amorphous mass
unknown, immense, ambivalent to all


#67
СтарыйПепелац

СтарыйПепелац

    Clone Grade Ksi

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPip
  • 12436 сообщений
2911
  • Client:Eng
хух...
Изображение

Красным одозначены точки "идеального" места приварпа и "абсолютного", т.е. в то, которое ты попадешь в конце концов. Расстояние между объектами это то, где написано "<2500". Каким же может быть максимальный радиус сферы, с центром в точке "идеального" места приварпа, т.е. в точке, где прописан объект на который ты варпаешь?

R1 - сфера станции
R2 - сфера шипа

Не понял. Я же тебе привел ситуацию: надо приварпать объект НАД станцией.

Угол относительно оси z будет 0. А cos(0) = 1. Поправь свою формулу. В нижней строчке не sin, а cоs

Сообщение отредактировал СтарыйПепелац: 28 March 2012 - 19:33

  • 0

#68
DarkPhoenix

DarkPhoenix

    Hatred

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPipPip
  • 28794 сообщений
4407
если представить, что ты исправил все косяки тех формул (их идею я понял), то...

Идеальные точки и по тому варианту, что предлагаешь ты, и по тому, что предлагаю я, совпадают. Точнее, в твоем случае их много, в моем случае - одна, и вот эта одна (она же нарисована у тебя на картинке) совпадает.

Разница идет в разбросе точек. Гораздо больше она заметна при приварпе на станцию, у которой эти самые углы фиксированы.

Можешь ради эксперимента встать у житы 4-4 соо стороны периметра да посмотреть за этим.

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

Угол относительно оси z будет 0. А cos(0) = 1. Поправь свою формулу. В нижней строчке не sin, а cоs

У меня все правильно, просто у меня угол считается не от вершины оси z. Если бы я считал от него - я бы задал границу не от -п/2 до п/2, а от 0 до п. Потому что если считать от -п/2 до п/2 и брать за 0 точку на оси z, то нельзя будет покрыть половину сферы. Да и терминологию, используемую мной, я прямо над/под формулами написал.

Сообщение отредактировал DarkPhoenix: 28 March 2012 - 19:53

  • 0

There is a place where the black stars hang
and the strangest eons call that amorphous mass
unknown, immense, ambivalent to all


#69
СтарыйПепелац

СтарыйПепелац

    Clone Grade Ksi

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPip
  • 12436 сообщений
2911
  • Client:Eng

если представить, что ты исправил все косяки тех формул (их идею я понял), то...

Идеальные точки и по тому варианту, что предлагаешь ты, и по тому, что предлагаю я, совпадают.

Разница идет в разбросе точек. Гораздо больше она заметна при приварпе на станцию, у которой эти самые углы фиксированы.

Можешь ради эксперимента встать у житы 4-4 соо стороны периметра да посмотреть за этим.

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

Арррр.....

Я устал, я ухожу...

x1 = x0 + (rnd + R1 + R2) × sin(α) × cos(β)
y1 = y0 + (rnd + R1 + R2) × sin(α) × cos(β)
z1 = z0 + (rnd + R1 + R2) × cos(α)

Вот тебе конечная формула, отличающаяся от начальной только наличием одного rand вместо трех. Идея позаимствована у тебя, она на самом деле красивее, чем 3 разных rand. Разбирайся с этой формулой. Она совершенна универсальна и описывает все возможные варианты, без каких-либо исключений. Как я уже сказал, углы можно изменять задавая ограничения в рандомных значениях α и β. Чтобы не улетать за станцию, или куда-нибудь к "заднему" ее входу. Это достаточно универсально, чтобы не ломать себе голову в плане применения, может вообще задаваться чем-нибудь обратнопропорциональным угловым размерам объекта. Как на картинке.

Изображение
  • 0

#70
DarkPhoenix

DarkPhoenix

    Hatred

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPipPip
  • 28794 сообщений
4407
Нет, не катит :)

1) В рассчете x и y опять же используется sin(α) × cos(β) и sin(α) × cos(β), как будто это одна и та же ось (или же у тебя α в одном случае имеет одно значение, в другом другое, тоже самое для β)
2) Она допускает наличие множества точек в 2500 м от докренжа станции при приварпе к ней, моя допускает только одну
3) Все та же разница в статистике при подаче кучи случайных вариантов на вход
0) На картинке плоскость, хотя должна быть часть поверхности сферы (опционально - объемная от 2 сфер с разными диаметрами) :D

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

Сообщение отредактировал DarkPhoenix: 28 March 2012 - 20:14

  • 0

There is a place where the black stars hang
and the strangest eons call that amorphous mass
unknown, immense, ambivalent to all


#71
Hlad

Hlad

    победив дракона, сам становишься драконом

  • EVE-RU Team
  • 35977 сообщений
13739
  • EVE Ingame:Mdaemon
  • Corp:Very Industrial Corp
  • Ally:X.I.X
  • Client:Eng
Народ. вы с геометрией забыли тот факт, что речь идет о компьютерах. Чтобы с расстояния в 100 А.Е. попадать с точностью до метра, нужно иметь 64-х битные переменные, описывающие расстояния.
Сомневаюсь, что это так, поэтому ваша геометрия выглядит как-то иначе
  • 0

#72
СтарыйПепелац

СтарыйПепелац

    Clone Grade Ksi

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPip
  • 12436 сообщений
2911
  • Client:Eng
Я тут лежал ночью, бессонницей страдал, овец считал, и как-то незаметно свернул на эту задачку. И нашел изящное ее решение. Ну-ка, прежде чем я его выложу, расскажи мне в виде алгоритма, без формул, как ты видишь себе решение задачи.

А по поводу формулы множества точек сферы спорить бесполезно, ты еще попытайся теорему пифагора оспорить. (:

Сообщение отредактировал СтарыйПепелац: 29 March 2012 - 3:31

  • 0

#73
AveN Revenge

AveN Revenge

    Clone Grade Eta

  • Tech III Pilots
  • PipPipPipPip
  • 767 сообщений
142
  • EVE Ingame:AveN Revenge
  • EVE Alt:AveN Divine
  • Corp:.CGB.
  • Ally:Happy Cartel
  • Channel:CGB Recrut
  • Client:Eng

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

Что касается "механики от ГМа", то попроси его указать материалы, с которыми можно ознакомиться для лучшего понимания механики варпа EVE.


А вот в петиции попросит мануал по механике варпа и поделистя с нами, я надеюсь.


По просил :) вот что ответили:

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


Жаль я не еврей, тут явно по еврейски нужно разговаривать :)
  • 0

Вкладываешь в корпорацию душу, заботишься о мемберах, обласкиваешь вниманием, а они раз и уходят. Подло.

Join - Carebear Group of Bishkek
AveN.gif

#74
Утреннее Дерево

Утреннее Дерево

    ПЯТНИЦА каждый день!

  • Tech III Pilots
  • PipPipPipPipPipPip
  • 4806 сообщений
1470
  • Client:Eng

По просил :) вот что ответили:



Жаль я не еврей, тут явно по еврейски нужно разговаривать :)

Пиши им, что игроками найдена ошибка в формуле приварпа и основные выдержки текущей дискуссии - пусть попробуют отвертеться от вразумительного ответа. :ninja:
  • 0
«История учит тому, что она ничему не учит, но жестоко наказывает тех, кто ее не знает».

#75
DarkPhoenix

DarkPhoenix

    Hatred

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPipPip
  • 28794 сообщений
4407

А по поводу формулы множества точек сферы спорить бесполезно, ты еще попытайся теорему пифагора оспорить. (:

Я же написал, что я формулу множества точек поверхности сферы не помню, поэтому выводил ее на своей терминологии, где угол A и B были постоянными при рассчете и x, и y, и z, а у тебя, видимо, считались от направления оси. Но!

x = x0 + r * sin(A) * cos(B )
y = y0 + r * sin(A) * cos(B )
z = z0 + r * cos(A)

где
x0, y0, z0 - кординаты "идеальной" точки приварпа(она же - центр сферы структуры)
А - рандомальный угол от -Пи/2 до Пи/2
В - рандомальный угол от 0 до 2Пи
r - радиус сферы (это я для простоты срезал до только радиуса)

1) Если у тебя эти углы не считались от направления оси, а якобы должны быть статичными - формула неправильная. Потому что в этом случае любая точка должна быть в r от центра, а у тебя, например, при r = 2500, A = п/6, B = 3/2п, выходит смещение по x 0, по y 0, по z 2165 c небольшим, итого 2165. Что, не такая уж и сфера выходит, если расстояние до ее поверхности не равно радиусу? :)
2) Если у тебя углы считались от направления оси, то из-за максимально возможного отклонения угла A от оси Z всего на 90 градусов у тебя остается непокрытой нижняя часть сферы.

То есть ошибка есть независимо от терминологии. А моя формула верная, но в другой координатной сетке с другими плоскостями, на которых крутятся углы, и с другими нулевыми точками.

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

Варпаем на объект
1) Рандомно выбирается луч от центра объекта, на котором будет лежать "точная" координата приварпа (в случае со станцией он всегда указывает на точку отварпа)
2) На пересечении этого луча с поверхностью сферы объекта выбирается "точная" координата приварпа
3) От точной координаты приварпа рандомно выбирается луч
4) Реальная точка приварпа в 2500м от точной координаты, и она лежит на луче из п3

Как-то так, +/- погрешности на тип данных, хранящий координаты.

Кстати, на тему статичности этой дистанции в 2500 метров, можешь проверить сам:
1) Вставляешь лг номад и EM-706 (6% агилы имп)
2) Выбрасываешь 2 джета в 200 км друг от друга (именно их потому что они очень маленькие)
3) Варпаешь между ними

Из 30-40 варпов все были в промежутке 2450-2500 (ну конт видимо все-таки имеет свой небольшой радиус), пара чуть выходили за 2500, не больше 20 метров. И чем больше объект - тем больше допускается разброс "вниз". От врека ретрибы, например, 2200-2500. Если диаметр (не радиус) объекта 2500, то уже возможен приварп в 0 - в том случае, если эти рандомные лучи из пунктов 1 и 3 будут анти-коллинеарными.

пс Это я пробовал у солнца. В 60 ау от него разброс на глаз чуть больше, но именно на глаз - достаточного количества статистики у меня нету.
ппс Судя по вики, у тебя в поиске координаты y надо поменять косинус на синус

Сообщение отредактировал DarkPhoenix: 30 March 2012 - 0:21

  • 0

There is a place where the black stars hang
and the strangest eons call that amorphous mass
unknown, immense, ambivalent to all


#76
glkudr

glkudr

    Clone Grade Kappa

  • Tech III Pilots
  • PipPipPipPipPip
  • 3708 сообщений
714
  • EVE Ingame:GlKudr
  • Corp:Space Cleaners
  • Ally:exBSoD
  • Client:Eng
Скажите лучше, дамажит ли смарта, если цель еще не вышла из варпа, но уже в радиусе действия?
  • 0

#77
Hlad

Hlad

    победив дракона, сам становишься драконом

  • EVE-RU Team
  • 35977 сообщений
13739
  • EVE Ingame:Mdaemon
  • Corp:Very Industrial Corp
  • Ally:X.I.X
  • Client:Eng

Как-то так, +/- погрешности на тип данных, хранящий координаты.

там погрешности в несколько сотен километров должны быть на 32-х битных переменных.
Я бы предположил, что варп делится на три этапа:
1. полет в начальном гриде
2. полет в собственном гриде варпа
3. полет в гриде прибытия.
Соответственно, в начальном гриде и в конечном гриде прокладывается прямая между точкой входа в грид, и материальной точкой, обозначающей координаты пункта назначения. Плюс - в конечном гриде вычисляется булевая переменная, показывающая, перелет будет, или недолет. А вот сам разлет на +/-2500 метров считается для грида варпа.
  • 0

#78
DarkPhoenix

DarkPhoenix

    Hatred

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPipPip
  • 28794 сообщений
4407

там погрешности в несколько сотен километров должны быть на 32-х битных переменных.

Это уже неправильно. Такие данные в single-precision хранить крайне нелогично. Еще можно вспомнить, что в питоне нету single-precision вообще, все его флоаты - это как минимум double-precision, оно же 64 бита. Так что как минимум 64 бита и используется, возможно, даже, quad-precision (128 бит). Когда-то в окне редактирования буки были видны координаты, там это было отлично заметно.

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

Или не упускаешь, но думаешь, что определяется расстояние и направления для варпа от исходной точки, а не просто целевая координата, задаваемая от центра системы (практически всегда это звезда).

Ну и старый лог на эту тему:

Entity: stuff goes wonky if you go really far out
Entity: (much farther than you can ever go without using hacks)
Entity: insystem coords are all in meters. double floats remain accurate enough for the small sphere in which you can play :P
Entity: 160 million AU out, stuff all snaps to a single plane, or even a line or point, depending on your relative position from the star
Entity: because at those distances, the doubles no longer have enough accuracy to show stuff at different positions
Entity: even further out and you may not even be able to see anything anymore because the minimum distance between 2 distinct points exceeds a grid bubble :P


Что, в общем-то, логично - чем ближе к началу координат, тем точнее позиционирование.

Сообщение отредактировал DarkPhoenix: 30 March 2012 - 0:55

  • 0

There is a place where the black stars hang
and the strangest eons call that amorphous mass
unknown, immense, ambivalent to all


#79
Утреннее Дерево

Утреннее Дерево

    ПЯТНИЦА каждый день!

  • Tech III Pilots
  • PipPipPipPipPipPip
  • 4806 сообщений
1470
  • Client:Eng

Что, в общем-то, логично - чем ближе к началу координат, тем точнее позиционирование.

Говоря про варп на станцию и ворота, получается, что чем больше расстояние между стартовой точкой и воротами/станцией, тем на большее расстояние от сферы взаимодействия прилетает корабль и для того, чтобы исключить риски, на объекты нужны переварпывать с максимально близкой дистанции как то ближайшая планета/луна для станции или подварп спота для гейтов (пережёг капы, если рядом нет стационарных объектов и заранее сделанных букмарок)?
И уточняющий вопрос для гейтов: чем больше размер ворот, тем меньше погрешность приварпа при увеличении расстояния прямого варпа?
  • 0
«История учит тому, что она ничему не учит, но жестоко наказывает тех, кто ее не знает».

#80
DarkPhoenix

DarkPhoenix

    Hatred

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPipPip
  • 28794 сообщений
4407

Говоря про варп на станцию и ворота, получается, что чем больше расстояние между стартовой точкой и воротами/станцией, тем на большее расстояние от сферы взаимодействия прилетает корабль и для того, чтобы исключить риски, на объекты нужны переварпывать с максимально близкой дистанции как то ближайшая планета/луна для станции или подварп спота для гейтов (пережёг капы, если рядом нет стационарных объектов и заранее сделанных букмарок)?
И уточняющий вопрос для гейтов: чем больше размер ворот, тем меньше погрешность приварпа при увеличении расстояния прямого варпа?

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

Сообщение отредактировал DarkPhoenix: 30 March 2012 - 10:06

  • 0

There is a place where the black stars hang
and the strangest eons call that amorphous mass
unknown, immense, ambivalent to all





1 посетителей читают тему

0 members, 1 guests, 0 anonymous users