ВНИМАНИЕ! Наша конференция посвящена космической тематике и компьютерным играм. Политические вопросы и происходящие в мире события в данный момент на нашем сайте не обсуждаются!
|
» Новое производство или "Как это считать?" | страница 1 |
 |
Страница 1 из 1 |
|
|
|
Канал EVE Online: «Новое производство или "Как это считать?"» |
|
|
Варсик
545 EGP
    Рейтинг канала: 3(42) Репутация: 117 Сообщения: 4041 Откуда: Москва Зарегистрирован: 22.12.2002
 |
|
Чуть больше года назад CCP выпустило обновление Crius, где переделали индустрию. Где-то пол года эту систему шатало, потом вроде устаканилось. Сегодня я поделюсь информацией о том, как сейчас с этим работать и как считать.
Вместо предисловия
Для начала отвечу на основной вопрос: А почему не использовать готовое. Ответ на это - потому-что. Потому что нет уверенности что оно все работает, потому что нет уверенности что работает правильно. И как это вообще должно работать правильно.
Итак, что вам надо знать прежде чем вообще с этим разбираться...
1) Есть такая штука как Static Data Export (SDE). Это архивчик на 100-200Mb, где лежит вообще вся информация, которую ЦЦП решает дать капуслерам. SDE делится на 2 большие части: MS SQL ([неадекватно]) базы, SQLite базы (O_o) и кучи YAML файлов. Нас сейчас интересует MS SQL база. По этому все дружно качаем MSSQL Express (я пользую 2012), разбираемся как загружать туда базы... У меня сейчас 4 SDE базы там.
2) Есть дополнительная информация, доступная в онлайне. Сейчас это 2 большие части: EVE-Central / EVE-MarketData и CREST.
Для кого я это все пишу
Ну для 2 целей: Закрепить пройденное и добавлять инфу.
Если вы хотите с этим играться, то вам надо знать SQL, понимать что такое Электронные таблицы (Google SpreadSheets) и знать что такое JavaScript. Всего по немножку, а потому с гуглем прокатит если энергии много.
Во всем виноват Fozzie. Всегда
Сначала о грустном. ССП опять решили что-то переделать, в результате чего SDE переходит в YAML. YAML - это [структурированный текстовый формат], но его используют. Я лично пользую SDE от Phoebe и потом проверяю что они ничего не поменяли. "маркер", который можно использовать для понимания - какой SDE использовать: таблица invTypes не должна быть пустой.
Готовимся
Итак, я считаю что у вас есть развернутая SDE и Гуглевский эксель. Оригинальный тут не подойдет, так как будем лепить макросы.
Понеслось. MS SQL ([неадекватно])
Для начала разберемся с тем как вытаскивать необходимую информацию из SQL части (ее мы будем засовывать в [таблицы]).
Вообще конкретно по SDE я рекомендую этот сайт. Он содержит почти все информацию по SDE в почти актуальном состоянии. Но на данный момент нас интересует тут всего 2 таблицы: invTypes и invTypeMaterials.
1) invTypes - Справочник вещей, которые есть или планируются в игре.
нас тут интересуют 2 основных поля:
- typeID: Идентификатор вещи. По нему работают вообще все API.
- typeName: Название вещи (Английское). Чтобы было понятно что это.
Иногда еще удобно использовать groupID. Надо это для внутренних связей, но обычно схожие вещи сгруппированы в одну группу. Не путайте с группой на рынке. Для этого есть merketGroupID.
2) invTypeMaterials - Материалы, необходимые для производства того или иного typeID. Состав:
- typeID: Что получится.
- materialTypeID: Из чего делается.
- quantity: Сколько надо при нулевых навыках.
Сферический запрос в вакууме у нас будет такой:
Код: |
SELECT
m.*, t.typeName, mt.typeName
FROM invTypeMaterials m
LEFT JOIN invTypes t ON
t.typeID = m.typeID
LEFT JOIN invTypes mt ON
mt.typeID = m.materialTypeID
WHERE
t.typeName LIKE 'Survey S%'
ORDER BY
m.typeID, m.materialTypeID |
В нем мы спрашиваем из чего делаются все вещи, который начинаются с SurveyS.
Результатом будет что-то типа:
Код: |
444 34 1111 Survey Scanner I Tritanium
2333 34 1111 Survey Scanner II Tritanium
2333 9840 3 Survey Scanner II Transmitter
2333 9842 5 Survey Scanner II Miniature Electronics
2333 11399 1 Survey Scanner II Morphite
2333 11539 5 Survey Scanner II Nanoelectrical Microprocessor
|
Итак, мы знаем что и из чего делается. Если вы хотите считать более сложные цепочки, то просто вытягивайте промежуточные компоненты последовательно
Google таблицы
Полученные данные надо занести в таблицы (далее в шиты, ибо так короче). Заводим новую книгу и добавляем туда шит "BPMaterialInfo". Это будет информация о том из чего что делается. Сейчас у нас там 5 колонок. Различные ID'шники, количество и названия. Названия там вообще говоря не нужны, но пусть будут. Все отсортировано по ID получаемой вещи. Нам надо там еще как минимум 2 колонки:
- Количество материалов с учетом навыков (derivedAmount)
- Общая стоимость материала (totalCost)
Информация с чертежа
Добавляем новый шит, где у нас будут настройки и статистика по чертежу (BPInfo). Вообще нам там надо 2 показателя: Material Efficiency(ME) и Time Efficiency(TE). ME - для понимания прибыльности. TE - для понимания ISK/месяц.
Итак, там будет следующая структура: typeID, typeName, ME, PE, bpTime, derivedTime, totalCost, jitaBuyCost, jitaSellCost, deltaBuy, deltaSell, ISK/mon. Как вы видите - вся интересующая информация будет тут. Я рекомендую оставить в шапке сторчек до, для всяких настроек (Нам точно понадобятся Industry Advanced Industry, количество линий).
Общая формула для BPMaterialInfo.derivedAmount такова:
Код: |
derivedAmount = amount * (1 - ME) * ( 1 - facilityProductionModifier) |
, где facilityProductionModifier - для станций 0, для большинства ПОС построек - 2%.
Цены. Здравствуй Eve-Central
Теперь нам желательно знать сколько стоит тот или иной товар в Жите (или где вы будете торговать). Тут нам на помощь приходит EVE-Central. Вообще они предоставляют свое API в формате XML и можно использовать ImportXML. не делайте этого. Причина в том, что Гугль перезапрашивает эти цены на каждый чих, таким образом DOS'я Централ. В результате чего вас банят. Правильный подход сделать перезапрос цен по кнопке. Его мы и будем делать.
... Продолжения не будет. Се-ля-ви ...
_________________ WARNING: By reading this post you accept that this post is genius.
Последний раз редактировалось: AnrDaemon (23:56 20-08-2015), всего редактировалось 1 раз Последний раз редактировалось: Варсик (20:20 19-08-2015), всего редактировалось 4 раз(а) |
|
|
Dimaxx
1016 EGP
      Рейтинг канала: 3(49) Репутация: 204 Сообщения: 5811 Откуда: Северодвинск Зарегистрирован: 26.06.2002
 |
|
Все уже украдено сделано до нас.
https://www.fuzzwork.co.uk/dump/
Я, честно признаться, оттуда давно ничего не качал, но когда использовал - там было все в любом формате.
_________________ "Если мы не покончим с войной, война покончит с нами." Г. Г. Уэллс |
|
|
|
|
|
Канал EVE Online: «Новое производство или "Как это считать?"» |
|
|