Hamster
#1
без гильдии
могущество: 5163
длань судьбы
гоблин Джеаки
101 уровня
Предлагаю обсудить здесь API для карты: предложения, вопросы и так далее.

Продолжу обсуждение из другой темы:
Hask
С некоторыми оговорками влияние можно высчитывать без парсинга всей карты поклеточно, основываясь только на region-<...>.js
http://i.imgur.com/A1u0KkI.png
Оговорок две:
1) невозможно вычислить принадлежность спорных клеток без дополнительного запроса;
2) не знаю как отсекать огибающее влияние (например Лазурь за Синам-Сиджасом).
Hamster
Не вижу, как оттуда все посчитать. Можно более развернуто?
Hask
#2
без гильдии
могущество: 2897

орк Каргрел
109 уровня
Ой, я слишком долго писал)
Не видел что тема появилась.

Можно перенести пост сюда, а ту тему удалить.



Сообщение изменено
Hamster
#3
без гильдии
могущество: 5163
длань судьбы
гоблин Джеаки
101 уровня
Hask
По совету из темы замков
Влияние городов почти полностью можно вычислить на основе the-tale.org/dcont/map/region-<версия-карты>.js
Всё что надо знать - размер города и его координаты.

Максимальный радиус владений = размер города * 1,25
Влияние для каждой клетки в пределах этого радиуса = размер города / расстояние до клетки в квадрате.
Если для каких-то клеток влияние двух городов равное, то город-владелец для всех спорных клеток выбирается сервером случайным образом.
Помимо этого (отсюда):
Есть дополнительные проверки, которые не позволяют территории, контролируемой одним городом, полностью попасть в окружение другого города.
Примерно можно считать, что при рассмотрении зоны влияния каждого города, он представляется в виде лампочки, а другие города отбрасывают тень, в которой не может быть владений 1-ого города.
Без учёта "алгоритма лампочки" получается примерно так:

Вторую тему можно удалить.
Hamster
#4
без гильдии
могущество: 5163
длань судьбы
гоблин Джеаки
101 уровня
Hask
В общем, это повторное вычисление влияния по полностью не известным алгоритмам. Мне кажется, это не очень хорошо, потому что и алгоритмы могут поменяться, и интерпретировать мы их можем неправильно, и информацией полной не обладать.
Hask
#5
без гильдии
могущество: 2897

орк Каргрел
109 уровня
Hamster
Угу, это попытка считать влияние "как на сервере". Алгоритм может меняться, да, но ничто не мешает периодически проверять его актуальность с помощью заведомо достоверного полного обхода карты. Всё-таки подобный расчёт на клиенте на порядки быстрее 3,5 тысяч запросов на сервер и не требует промежуточных звеньев. Если довести до ума обрезание "теней" влияния, то на мой взгляд будет вполне юзабельно.

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