vx13 2 271 Опубликовано: 13 июня, 2018 Этот вопрос был задан в чате:Как посмотреть опыт робота? Так и не понял, апи никакого не нашёл. Нельзя получается? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
vx13 Автор вопроса 2 271 Опубликовано: 13 июня, 2018 (изменено) Робот может накапливать опыт при установленном Апгрейде опыта. Как посмотреть опыт робота? component.experience.level() но бонусы по дефолту она там мизерные дает. нет в ней смысла. Только слот занимает. Попробуй робота просто поставить на коблогенератор, и пусть сутками маслает. Вроде на них игроки прокачивали своих роботов. Высокоуровневый робот может хранить больше энергии (5000 на уровень в дефолтном конфиге). Для робота-шахтёра это очень полезно.Прокачать робота можно скармливая ему зачарованные предметы, которые наловил робот рыболов (метод component.experience.consume()).Небольшая програмка, которая показывет уровень робота и может потреблять зачарованные предметы для увеличения уровня: exp.lua (как refuel.lua для генератора). local component = require("component") local robot = require("robot") local shell = require("shell") local args = shell.parse(...) local function printUsage() print("Usages:") print("exp") print(" Gets the current level.") print("exp <slot>") print(" Tries to consume an enchanted item to add") print(" expierence to the upgrade") print(" from the specified slot.") print("exp all") print(" from all slots.") end if component.isAvailable("experience") then local e = component.experience if #args == 0 then print("Level: "..e.level()) elseif tonumber(args[1]) ~= nil then local slot = tonumber(args[1]) robot.select(slot) io.write("Experience from slot "..slot.."... ") local success, msg = e.consume() if success then print("success.") else print("failed: "..msg) end robot.select(1) elseif string.lower(args[1]) == "all" then io.write("Experience from all slots... ") for i = 1, 16 do robot.select(i) e.consume() end robot.select(1) print("done.") else printUsage() end else print("This program requires the experience upgrade to be installed.") end Изменено 13 июня, 2018 пользователем vx13 4 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Alex 4 683 Опубликовано: 13 июня, 2018 @@vx13 спасибо, отличный гайд. Как раз вчера вопрос был в чате. P.S. Оказывается, что robot.level(): number Получает текущий уровень робота. Дробная часть обозначает текущий прогресс до следующего уровня. Например, если это число 1.5, робот имеет уровень 1, и на 50% достиг второго уровня. Внимание: начиная с версии 1.3 функция устарела. Используйте component.experience.level(), поскольку робот получает очки опыта, только при наличии апгрейда на опыт. (с) вики Ради интереса проверил механику этого агрейда - выяснилось, что роботу до попки, что копать. Хоть руду, хоть коблу. Опыт прибавляется на вскидку одинаково. На кобле даже еще быстрее кач идет, так как робот ее просто банально быстрее ломает. Но самый быстрый кач - на саженце. И инструменты не нужны Но профит от этой прокачки очень сомнительный, как в плане затраты энергии и времени и пользы от прокачанного робота, так и затраты ресурсов сервера. За 1 минуту робот на саженце качнулся на ~0.07-0.08 local component = require("component") local robot = require("robot") local exp = component.experience while true do print(exp.level()) robot.place() robot.swing() os.sleep(0.1) end А вот топор с зачаркой на 5й уровень остроты дал сразу ~1.15 уровня. Так что наверно есть смысл вкачивать кусты опыта тинкерса и чарить деревянные инструменты, и уже их кормить роботу. Ну и очень хороший и бесплатный вариант, как предложил vx13 - кормить роботу зачаренный рыболовный лут-улов. 4 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Этот вопрос был задан в чате:
Как посмотреть опыт робота? Так и не понял, апи никакого не нашёл. Нельзя получается?
Поделиться сообщением
Ссылка на сообщение
Поделиться на других сайтах