+ Ответить в теме
Страница 1 из 7 1 2 3 ... ПоследняяПоследняя
Показано с 1 по 10 из 63
  1. #1
    Участник Экспедиции Аватар для Lastor
    Регистрация
    07.01.2014
    Адрес
    Лорея
    Сообщений
    189
    Лучших ответов
    0

    [Приложение]Умный калькулятор себестоимости

    Здравствуйте. Когда игрок начинает заниматься крафтом, перед ним неизбежно встаёт вопрос о себестоимости компонентов и их рентабельности. Что-то рационально купить, а что-то создать самому. И, поскольку ресурсов в игре великое множество, для ведения своей экономики он прибегает к различным вспомогательным средствам. Чаще это таблицы с формулами. У меня их количество исчисляется уже сотнями.
    И появилось у меня непреодолимое желание объединить все свои труды в какую-то целостную систему. Да в таком виде, чтобы они были доступны для восприятия и нанесли человечеству непоправимую пользу. Однако для реализации столь дерзкого плана у меня не хватило ни знаний ни времени, и главным образом умственных способностей моего гуманитарного мозга.
    По сему хочу предложить некое подобие расчетной системы, которая может оказаться полезной.
    Выглядит она примерно так:

    (спойлер, увы, не хочет работать почему-то)

    Находится здесь.

    Принцип довольно прост. Ищет предмет, его компоненты, компоненты компонентов, складывает себестоимости, учитывая различные факторы, которые могут на неё повлиять (например, очки работы или шанс неудачного крафта с получением компенсирующих предметов).
    Наиболее интересным я нахожу то, что она даёт довольно толковые подсказки по выбору того или иного способа крафта, если их несколько.
    Например, как видно на картинке, она рекомендует делать Измельченные лепестки цветов из Кактусов, в то время, как существует более десятка способов получить этот ресурс. При этом, её критерий не только себестоимость. Например, она вам никогда не посоветует делать лекарственный порошок из грибов или фарш из цыплят.
    Довольно много внимания я уделил крафтовой экипировке. Можно прокликать, например от Простого щита до Эрнардского, зная, что проходной будет всегда первым в списке получающихся предметов.

    В общем, Вам желаю приятного просмотра, а себе Ваших комментариев о том чего там моя голова садовая забыла.
    Спасибо за внимание.

  2. #2
    Воин Кириоса
    Регистрация
    02.01.2015
    Сообщений
    91
    Лучших ответов
    0
    Мне понравился комментарий к "Волшебные лепестки" из этого калькулятора ХD
    P.S. В целом задумка неплохая. Многим бы пригодилась.

  3. #3
    Глава Экспедиции Аватар для Tushenka
    Регистрация
    30.08.2013
    Сообщений
    509
    Лучших ответов
    0
    Я так понимаю этот калькулятор делался для реалий 2.9? Многие ресурсы и раньше шли в убыток если делать за семена, но многие жертвовали немного прибылью ради удобства. Но сейчас сажать тот же женьшень пакетами семян, это равнозначно на рубку бревен сажать виноград.. Но в любом случае, автор продолжай развивать калькулятор)
    Угрюмая свинья!!! Не верите?! Так давайте познакомимся поближе!

  4. #4
    Участник Экспедиции Аватар для Lastor
    Регистрация
    07.01.2014
    Адрес
    Лорея
    Сообщений
    189
    Лучших ответов
    0
    Цитата Сообщение от Tushenka Посмотреть сообщение
    Я так понимаю этот калькулятор делался для реалий 2.9?
    Показать
    Строго говоря, начинал делаться под реалии 1.2.
    Но механизм его расчетов актуален для текущей версии. В частности о женьшене ему известны все способы его получения, но он рекомендует сажать именно пакеты семян и я с ним согласен, наблюдая текущую цену единицы репутации.

  5. #5
    Творящий историю Аватар для ChuuLi
    Регистрация
    31.10.2014
    Адрес
    Санкт-Петербург
    Сообщений
    955
    Лучших ответов
    6
    Ноукоментс

  6. #6
    Участник Экспедиции Аватар для Lastor
    Регистрация
    07.01.2014
    Адрес
    Лорея
    Сообщений
    189
    Лучших ответов
    0
    Цитата Сообщение от ChuuLi Посмотреть сообщение
    Ноукоментс
    Показать
    Главного, я, к сожалению, не понял. Остальное поправил. Спасибо.

  7. #7
    Аватар для Klounz
    Регистрация
    31.08.2013
    Сообщений
    184
    Лучших ответов
    0
    Допустим болид, цены которые там написаны на детали с твоего серва? или их можно вбить самому?
    :cool:En la gloria Excellent!!!:cool:

  8. #8
    Участник Экспедиции Аватар для Lastor
    Регистрация
    07.01.2014
    Адрес
    Лорея
    Сообщений
    189
    Лучших ответов
    0
    Цитата Сообщение от Klounz Посмотреть сообщение
    Допустим болид, цены которые там написаны на детали с твоего серва? или их можно вбить самому?
    Показать
    Прежде всего следует уточнить, что калькулятор оперирует не столько ценами, сколько совокупностью себестоимостей. За исключением некоторых изначальных ресурсов, себестоимость которых не подлежит расчету. Например, Пыль дельфийского сада. Стоит её изменить, это автоматически повлияет на себестоимость всех ресурсов, где она используется и соответственно на те, что выше по дереву рецептов.
    Я играю на сервере Lorea. Соответственно, эти изначальные цены актуальны для серверов, находящихся в той же группе аукционов: Марли, Гартарейн, Ашьяра, Гленн, Левиафан. Насколько отличается экономика от другой группы мне неизвестно.
    Изменять базовые цены сейчас могут лишь члены моей гильдии, имеющие доступ.
    Это обусловлено следующим:
    1. Изменение любой базовой цены повлияет на всю систему и отразится на всех пользователях.
    2. При изменении базовой цены производится перерасчет всех себестоимостей, что порядочно грузит сервер выполнением моего дилетантского кода.


    В принципе, для того, чтобы выполнить расчеты, используя свои цены (например, посмотреть что будет, если ничего не производя, купить все ресурсы) есть ряд хороших сервисов, выполненных специалистами. Более всех мне нравится http://archeagedatabase.net, который сохраняет все вбитые цены.
    Однако стоит измениться какой-либо базовой цене, вбивай всё заново, ибо уже не актуально. А ресурсов ведь тысячи. Поэтому моя концепция как раз стремится к тому, чтобы было достаточно обновить несколько базовых цен и получить всю картину целиком.
    Я обязательно подумаю над тем, как дать возможность пользователю менять базовые цены без особого ущерба. Главным образом, разумеется, проблема в отсутствии у меня необходимых знаний и опыта.

  9. #9
    Творящий историю Аватар для ChuuLi
    Регистрация
    31.10.2014
    Адрес
    Санкт-Петербург
    Сообщений
    955
    Лучших ответов
    6
    Lastor, не такой он и дилетантский, как вам кажется. Скорей есть ряд нелогичных моментов со стороны оформления и пара косяков в реализации.

    Очевидные вещи:
    - Контент занимает ничтожно малое место по сравнению с пустыми полями по бокам. Отказ от привязки элементов формы к статичному скрину крафтового окна позволит сделать форму, занимающую больше пространства (как следствие фокус внимания будет на форме), избавиться от необходимости в скролингах, даст больше места под описания, позволит заменить вписывание прозрачного текстбокса (который щас не по размеру нарисованной ячейки).
    - Замена "Неведомой корейской хрени" на "Описание отсутствует" либо тупо на пустую строку будет выглядеть приличнее.
    - Стоит заменить механизм поиска. Если человек в строке ввел нужное название, а потом в листинге выбрал предмет, то соответственно можно выводить инфу о предмете. Необходимость нажатия кнопки поиск не очевидна. В такой ситуации кнопку поиск имеет смысл заменить на "Сброс" или вообще отказаться.
    - Тултипы... При широком тултипе текст выровнен по центру и оставляет кучу свободного пространства. Нечитабельно. Так же нет смысла выводить в тултипе стоимость предмета крафта, нагляднее будет разместить эту информацию под спойлером ниже строки "Всего расходов:".
    - Если есть кнопка назад, то должна быть и вперед. Это логично.
    - По какому принципу происходит ценообразование в форме? Если парсинг одной аукционной группы, то информация недостоверна для других. Если происходит парсинг всех аукционов, то возникает вопрос о необходимости поля с выбором сервера (усреднять нельзя ибо это будет ну совсем лажа).
    - Поле над менюшкой вообще не логично ибо занимает пространство, которое можно было бы использовать. Да и сама менюшка занимает слишком много полезного пространства.
    - Какой смысл оценивать непередаваемые предметы? Их скорее надо исключить из себестоимости + ошибка в подсчетах (на примере обсидиановой алебарды все расходы составят 98 голды при сплаве за 90г и стоимости крафта 8г, но никак не получится 102,9г как указано в калькуляторе).
    - Пространство так же можно было бы заполнить полным списком всего, что нужно для крафта до текущего грейда вещи.

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

  10. #10
    Участник Экспедиции Аватар для Lastor
    Регистрация
    07.01.2014
    Адрес
    Лорея
    Сообщений
    189
    Лучших ответов
    0
    Цитата Сообщение от ChuuLi Посмотреть сообщение
    Lastor, не такой он и дилетантский, как вам кажется. Скорей есть ряд нелогичных моментов со стороны оформления и пара косяков в реализации.

    Очевидные вещи:
    - Контент занимает ничтожно малое место по сравнению с пустыми полями по бокам. Отказ от привязки элементов формы к статичному скрину крафтового окна позволит сделать форму, занимающую больше пространства (как следствие фокус внимания будет на форме), избавиться от необходимости в скролингах, даст больше места под описания, позволит заменить вписывание прозрачного текстбокса (который щас не по размеру нарисованной ячейки).
    - Замена "Неведомой корейской хрени" на "Описание отсутствует" либо тупо на пустую строку будет выглядеть приличнее.
    - Стоит заменить механизм поиска. Если человек в строке ввел нужное название, а потом в листинге выбрал предмет, то соответственно можно выводить инфу о предмете. Необходимость нажатия кнопки поиск не очевидна. В такой ситуации кнопку поиск имеет смысл заменить на "Сброс" или вообще отказаться.
    - Тултипы... При широком тултипе текст выровнен по центру и оставляет кучу свободного пространства. Нечитабельно. Так же нет смысла выводить в тултипе стоимость предмета крафта, нагляднее будет разместить эту информацию под спойлером ниже строки "Всего расходов:".
    - Если есть кнопка назад, то должна быть и вперед. Это логично.
    - По какому принципу происходит ценообразование в форме? Если парсинг одной аукционной группы, то информация недостоверна для других. Если происходит парсинг всех аукционов, то возникает вопрос о необходимости поля с выбором сервера (усреднять нельзя ибо это будет ну совсем лажа).
    - Поле над менюшкой вообще не логично ибо занимает пространство, которое можно было бы использовать. Да и сама менюшка занимает слишком много полезного пространства.
    - Какой смысл оценивать непередаваемые предметы? Их скорее надо исключить из себестоимости + ошибка в подсчетах (на примере обсидиановой алебарды все расходы составят 98 голды при сплаве за 90г и стоимости крафта 8г, но никак не получится 102,9г как указано в калькуляторе).
    - Пространство так же можно было бы заполнить полным списком всего, что нужно для крафта до текущего грейда вещи.

    На часть вещей ответы были выше (просто скопипастил то, что писал ранее).
    Теперь по части практической значимости. Если цены реально были вбиты вручную с одного сервера, то для других аукционных групп информация будет иметь довольно большую погрешность. Для большей значимости практичнее было бы использовать парсер по аналогу с аа-stat, который бы раз в несколько часов (а может и раз в день) собирал бы информацию по стоимости начальных ресурсов.
    Для снижения нагрузки на сервер необязательно(а точнее нежелательно) постоянно хранить и пересчитывать себестоимость при каждом изменении цены. Себестоимость должна считаться по конкретному запросу, а в базе имеет смысл хранить только текущую цену начального ресурса (а их довольно ограниченный список). Даже в случае использования sqllite нагрузка будет незначительна.
    Показать
    Большое спасибо, что находите время комментировать и советовать. В меру своих возможностей я постараюсь выполнить ваши рекомендации.
    Стоимость упомянутых персональных предметов я исправил на 1 бронзу. Впрочем, строго говоря, считать их бесплатными тоже не совсем корректно, поскольку не каждый из них легко добыть. Правда, для корректной их оценки потребовалось бы разработать отдельную методику.
    Касательно расчета непосредственно при запросе: Если я верно понял, речь идет о рекурсии. К сожалению, у меня не получилось её реализовать, хотя изначально я пробовал начать именно с неё. Дело в том, что некоторые крафтовые цепочки имеют примерно такой вид: item A => item B => item C => item A. Соответственно он начинает гонять эту цепочку по кругу. Понимаю, что скорее всего способ победить это есть, но он мне неизвестен. И поскольку во всех известных мне калькуляторах эта проблема не решена, мне показалось, что её решение для меня недоступно и я пошел иным путём.

    Очень заманчивая идея - программно анализировать аукцион. Но как это будет рассматриваться с точки зрения правил? У меня есть подозрение, что это было бы не совсем законно...

    О поиске:
    Javascript я совсем не знаю. Я сделал его, используя найденное в сети решение.
    Пока оно в принципе (ура) работает, я боюсь трогать его руками. Я был бы очень признателен, если бы вы подсказали что в нем следует изменить, чтобы при выборе предмета, форма отправила данные. Если, конечно, это не займет у вас много времени.
    Последний раз редактировалось Lastor; 30.11.2016 в 14:06.

+ Ответить в теме
Страница 1 из 7 1 2 3 ... ПоследняяПоследняя

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения