MC Toolkit

Руководства / Строительство и ресурсы

Выход рецепта округляется вверх, поэтому стоимость крафта — это не просто умножение

Из бумаги получается 3 штуки за крафт. Если нужно 4, придётся потратить 6 сахарного тростника, и останется 2 лишние бумаги. Так происходит на каждом уровне дерева рецептов, и отходы накапливаются вниз по цепочке.

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

Правило

craftsNeeded = ceil(needed / makes)
produced     = craftsNeeded × makes
leftover     = produced − needed

makes — это выход рецепта. Бумага — makes: 3 из 3 сахарного тростника. Значит:

нужно бумагикрафтовсахарный тростникостаток бумаги
1132
3130
4262
6260

Одна бумага стоит столько же, сколько три. Четыре стоят столько же, сколько шесть. Функция стоимости — это лестница, а не прямая, и каждая ступенька, на которую ты только что перешагнул, бьёт по тебе обратно.

Это накапливается вниз по дереву

Округление вверх применяется на каждом уровне, а не один раз в конце. Книга — это 3 бумаги и 1 кожа; бумага — 3 за крафт из сахарного тростника. Значит, на одну книгу нужен ровно один крафт бумаги — 3 сахарного тростника, без отходов.

На две книги нужно 6 бумаги, то есть 2 крафта, всё ещё чисто. Но сдвинь любое количество в дереве с границы партии — и округление на этом уровне передаётся как большая потребность всему, что ниже, что в свою очередь тоже округляется вверх. Глубокие деревья накапливают это, и итог может превысить наивное quantity × unit cost с большим отрывом, хотя каждый отдельный шаг выглядит правильным.

Это единственная причина, по которой стоит иметь калькулятор стоимости, а не считать самому: арифметика проста, а вот учёт — нет.

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

У некоторых предметов есть больше одного способа изготовления, и калькулятор позволяет переключаться:

  • Железный слиток — плавка в печи или переплавка в плавильной печи. Оба потребляют 1 рудное железо и дают 1, так что выбор — это скорость и топливо, а не материалы.
  • Золотой слиток — та же пара с той же эквивалентностью.
  • Палка — два по-настоящему разных рецепта, поэтому именно на ней инструмент демонстрирует переключение.

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

Где дерево останавливается

Пятнадцать предметов считаются сырыми листьями — развёртка останавливается на них, а не идёт дальше:

дубовое бревно · булыжник · рудное железо · рудное золото · алмаз · редстоуновая пыль · песок · звезда Незера · обсидиан · незеритовый лом · сахарный тростник · кожа · бамбук · шерсть · нить

Два из них заслуживают примечания. Незеритовый лом — это на самом деле переплавленные древние обломки, и для простоты он считается сырьём — так что стоимость незерита будет занижена на один шаг плавки за каждый лом. А дубовое бревно заменяет «любое бревно», поэтому дерево не разветвляется на десять пород дерева (и два стебля Незера), которые ведут себя одинаково.

Знать, где дерево упирается в дно, так же важно, как и само дерево: стоимость в «сырье» имеет смысл, только когда знаешь, какие материалы расчёт считает сырьём.

Калькулятор дерева крафта →

Другие руководства

Смотреть все →