Don't Starve вики
Don't Starve вики
2144
страницы
Метки: Визуальный редактор apiedit
м (Откат правок Brig Bell (обсуждение) к версии МаксимБрежо)
Строка 441: Строка 441:
 
{{код|TheWorld:PushEvent("ms_setseason", "winter")}}
 
{{код|TheWorld:PushEvent("ms_setseason", "winter")}}
   
=== Начать осень ===
+
=== Начать весну ===
 
{{код|TheWorld:PushEvent("ms_setseason", "spring")}}
 
{{код|TheWorld:PushEvent("ms_setseason", "spring")}}
   
=== Начать весну ===
+
=== Начать осень ===
 
{{Код|TheWorld:PushEvent("ms_setseason", "autumn")}}
 
{{Код|TheWorld:PushEvent("ms_setseason", "autumn")}}
   

Версия от 09:09, 27 мая 2017

Консоль — это элемент игрового интерфейса, предназначенный для ввода игровых команд. Вызвать консоль можно нажатием тильды "~" (кнопки Ё) на клавиатуре. Её можно закрыть нажатием Ctrl + L. При открытии консоли игровое время "замирает". Была добавлена в обновлении A Little Rain Must Fall. В консоли нельзя писать точка-запятой.

Если вам понадобится ввести команду несколько раз, напишите нужную команду, нажмите Enter, снова откройте консоль и нажмите "стрелку вверх". Команда, введённая вами ранее появится в консоли.

В обновлении The End Is Nigh разработчики заблокировали консоль, но её можно разблокировать.

У пользователей MacOS и Linux консоль включена по умолчанию

Алгоритм: 1.Мои Документы 2.Папка «Klei» 3.settings.ini. Если у вас установлена и Don`t Starve и Don`t Starve Together, то у вас будут 2 папки. Вам нужно открыть именно папку DoNotStarve. Затем откройте файл с помощью блокнота и найдите вот эту строку:

[misc]
     
     ENABLECONSOLE = false

4. Измените строку таким образом:

[misc]
     
     ENABLECONSOLE = true

Теперь консоль должна работать.

Возможности

Dontstarve steam 2013-05-30 16-05-36-885

Консоль открыта

С помощью консоли вы можете:

  • Призвать любое существо.
  • Призвать любую структуру (растения, постройки)
  • Открыть всю карту местности.
  • Стать бессмертным.
  • Всё остальное, предусмотренное разработчиками.

Полный список команд на английском языке вы можете увидеть здесь.

DebugSpawn

Общий вид:

DebugSpawn("заготовка")

Заготовка (Prefab) — название игрового объекта в файлах игры. Список названий заготовок можно посмотреть в статье лист заготовок или на странице объекта или предмета.

DebugSpawn — это директива для «призыва» игровых объектов. Фактически, внутри программы, эта директива является вызовом соответствующей функции, которая принимает как минимум один аргумент. Этим аргументом является строковой литерал. Если введённая строка соответствует одному из предопределённых названий для объектов, то программа создаст новый соответствующий объект в том месте, где находится курсор.

Простые команды

Для того, чтобы использовать семь сокращённых команд, приведённых ниже, НЕОБХОДИМО использовать следующую строчку:

require "consolecommands"

Призыв любого существа или структуры

c_spawn("заготовка",количество)

Изменение процентов здоровья, рассудка и сытости

Примечание: Следует использовать дробные числа, например: 0.9 = 90%.

  • Изменение здоровья:
c_sethealth(Проценты здоровья)
  • Изменение рассудка:
c_setsanity(Проценты рассудка)
  • Изменение сытости:
c_sethunger(Проценты сытости)

Призыв любого предмета в инвентарь

c_give("заготовка",количество)

Призыв материалов для создания предмета в инвентарь

c_mat("заготовка") или c_mats("заготовка") или c_material("заготовка") или c_materials("заготовка")

Режим бога (Бесконечные характеристики)

c_godmode()

Супер режим бога (Бесконечные характеристики + их восстановление)Файл:LogoSW.png

c_supergodmode()

Скорость

c_speed(Скорость)

Обычная - 6. Немного быстрее - 10. Прохождение сквозь стены, объекты и хождение по воде - от 15-ти до 40.

Команды персонажа

Скрыть или показать HUD

 GetPlayer().HUD:Hide()
            GetPlayer().HUD:Show()

Все рецепты и бесплатное создание

GetPlayer().components.builder:GiveAllRecipes()

Изменение максимального числа параметров

  • Изменение максимального здоровья
GetPlayer().components.health:SetMaxHealth(кол-во)
  • Изменение максимальной сытости
GetPlayer().components.hunger:SetMax(количество)
  • Изменение максимального рассудка
GetPlayer().components.sanity:SetMax(количество)

Пауза голода

GetPlayer().components.hunger:Pause(X)

X - выбрать: true - включить. false - выключить.

Умножение урона

GetPlayer().components.combat.damagemultiplier = X

X - выбрать значение: 1-стандартное значение, 100- увеличенное в сто раз (для обычного копья 34 и 3400 единиц урона соответственно).

Превращение Вуди в бобра и обратно (доступно только для Вуди)

GetPlayer().components.beaverness:SetPercent(1)
           GetPlayer().components.beaverness:SetPercent(0)

Команды игрового мира

Перемещение к объекту/животному

c_gonext("заготовка")

Вы перемещаетесь к самому ближайшему такому объекту.

Примечания:

  • Использование данной команды без заготовки, приводит к перемещению игрока в пустоту.
  • Если в Shipwrecked переместиться к объекту на воде без лодки, то персонаж утонет, а если переместиться к объекту на суше в лодке, то лодка сломается, а персонаж выпрыгнет из неё.

Удаление объекта/животного

TheInput:GetWorldEntityUnderMouse():Remove()
            c_select() c_sel():Remove()

Удаляет объект под курсором.Вторая команда используется в выделенных серверах или если не работает 1 команда.Если курсор при этом наведен на Вашего персонажа, игра вылетает.

Открытие карты

GetWorld().​minimap.MiniMap:ShowArea(0,0,0,10000)​

Если команда не работает - проверьте, нет ли вопросительных знаков. Если есть, то уберите их и попробуйте снова.

Пропуск дня

GetClock():MakeNextDay()

Пропуск нескольких дней

for x = 1, 50 do GetClock():MakeNextDay() end

В этом примере пропускается 50 дней. Вместо 50 можно подставить необходимое число.

Настройка времени дня

GetClock():SetSegs(Время дня, вечера, ночи)

Сумма времени должна быть равна 16.

Пропустить фазу дня

GetClock():NextPhase()

Смена сезонов

  • Начать лето
GetSeasonManager():StartSummer()
  • Начать зиму
GetSeasonManager():StartWinter()
GetSeasonManager():StartSpring()
GetSeasonManager():StartAutumn()
GetSeasonManager():StartMild()
GetSeasonManager():StartWet()
GetSeasonManager():StartGreen()
GetSeasonManager():StartDry()

Запуск дождя

GetSeasonManager():StartPrecip()

Остановка дождя

GetSeasonManager():StopPrecip()

Попадание молнией в игрока

GetSeasonManager():DoLightningStrike(Vector3(GetPlayer().Transform:GetWorldPosition()))

Запуск ветра Файл:LogoSW.png

c_hurricane()

Извержение вулкана Файл:LogoSW.png

GetVolcanoManager():StartEruption(smokeduration,ashduration,firerainduration,firerockspersecond)

Начинает извержение вулкана. Продолжительность действий указывается в секундах.

  • smokeduration - продолжительность задымления;
  • ashduration - продолжительность летания пепла;
  • firerainduration - продолжительность метеоритного дождя;
  • firerockspersecond - количество метеоритов в секунду.

Перенос к ближайшему извержению вулкана Файл:LogoSW.png

c_erupt()

Пропускает некоторое количество дней до следующего извержения вулкана.

Расстояние до объекта

print(math.sqrt(GetPlayer():GetDistanceSqToInst(TheInput:GetWorldEntityUnderMouse())))

Выводит в консоли расстояние до объекта, находящегося под курсором.

Количество объектов/животных

c_countprefabs("заготовка")

Выводит в консоли количество объектов/животных в мире.

Команды профиля игрока

Смена персонажа

GetPlayer().prefab = "character"

Меняет текущего персонажа, на ведённого в команде (например для Максвелла это waxwell). Чтобы изменения вступили в силу, требуется сохранить игру и выйти.

Разблокировка персонажей

GetPlayer().profile:UnlockCharacter("willow")
           GetPlayer().profile:Save()
GetPlayer().profile:UnlockCharacter("wolfgang")
           GetPlayer().profile:Save()
GetPlayer().profile:UnlockCharacter("wendy")
           GetPlayer().profile:Save()
  • Разблокировка WX-78
GetPlayer().profile:UnlockCharacter("wx78")
           GetPlayer().profile:Save()
GetPlayer().profile:UnlockCharacter("wickerbottom")
           GetPlayer().profile:Save()
GetPlayer().profile:UnlockCharacter("woodie")
           GetPlayer().profile:Save()
GetPlayer().profile:UnlockCharacter("wes")
           GetPlayer().profile:Save()
GetPlayer().profile:UnlockCharacter("waxwell")
           GetPlayer().profile:Save()
GetPlayer().profile:UnlockCharacter("wigfrid")
           GetPlayer().profile:Save()
GetPlayer().profile:UnlockCharacter("webber")
           GetPlayer().profile:Save()
GetPlayer().profile:UnlockCharacter("walani")
           GetPlayer().profile:Save()
GetPlayer().profile:UnlockCharacter("warly")
           GetPlayer().profile:Save()
GetPlayer().profile:UnlockCharacter("wilbur")
           GetPlayer().profile:Save()
GetPlayer().profile:UnlockCharacter("woodlegs")
           GetPlayer().profile:Save()
  • Разблокировка всех персонажей
GetPlayer().profile:UnlockEverything()

Сохранение настроек профиля

GetPlayer().profile:Save()

Тестовые команды

Такие команды призваны для тестирования тех или иных структур, предметов или существ.

Тестирование руин

c_testruins()

Призывает в инвентарь по 20 брёвен, веток, кремня и травы, 5 лампочек и мазей, мышиную биту, ледяной посох, огненный посох, шипы щупальца, шлем-панцирь, деревянную броню, шахтёрскую каску, фонарь и рюкзак, открывает все рецепты.

Тестирование яда Файл:LogoSW.png

c_testpoison()

Призывает в инвентарь по 20 ядовитых дротиков и отравленных гарпунных ружей (удалено, поэтому в инвентаре не отображаются), 10 супов из мандрагоры, 2 пепла, отравленное копьё, 10 антидотов, камень, ядовитую железу, броню из ракушек. Судя по всему, раньше призывались 3 ядовитых паука-воина, 3 ядовитых змеи, 3 ядовитых лягушки, 3 ядовитых комара, 5 свинов и 5 пауков, но из-за того, что в файле consolecommand.lua перед функциями, призывающими этих существ стоит по 2 тире, они не появляются. Вы можете это исправить, просто убрав тире в файле.

Тестирование обсидиана Файл:LogoSW.png

c_testfire()

Призывает в инвентарь обсидиановые топор, мачете, копьё, броню, 20 обсидиановых гарпунных ружей (удалено, поэтому в инвентаре не отображаются) и создаёт трёх приматов.

Тестирование казана Файл:LogoSW.png

c_testcrockpot()

Призывает в инвентарь по 20 блюдечек, сырой рыбы, водорослей, льда, бананов, веток, мяса, по 10 акульих плавников, жареных кофейных зёрен, масла, 2 кробликов и вобстера, медуза и создаёт 12 казанов вокруг игрока.

Тестирование блюд из казана Файл:LogoSW.png

c_givepreparedfood()

Призывает в инвентарь все блюда, приготовленные в казане.

Тестирование дойдой Файл:LogoSW.png

c_testdoydoy()

Призывает в инвентарь по 2 птичьих ловушки и ягоды и создаёт одну дойдой.

Тестирование клетки Вудлегса Файл:LogoSW.png

c_testcage()

Создаёт клетку Вудлегса под курсором и призывает все 3 ключа от неё в инвентарь.

Тестирование старого колокольчика Файл:Reign of Giants icon.png

c_floats()

Призывает в инвентарь старый колокольчик, рыбу и фонарь.

Тестирование Йаарминога Файл:LogoSW.png

c_octoking()

Создаёт под курсором Йаарминога и призывает в инвентарь по 5 игрушечных лодок, свеч в бутылке от вина, разбитых ААК устройств и по 3 ролла "Калифорния", гамбо из морепродуктов, крем-супов, медузных мороженых, севиче, жаркое, супов из лобстера и обедов из лобстера.

Тестирование Пакима Бэггимса Файл:LogoSW.png

c_packim()

Переносит игрока к рыбьему скелету и призывает в инвентарь 12 рыб и 40 обсидианов.

Тестирование игрового автомата Файл:LogoSW.png

c_playslots()

Переносит игрока к игровому автомату и призывает в инвентарь 30 дублонов.

Тестирование крякена Файл:LogoSW.png

c_kraken()

Призывает крякена.

Призыв посланий в бутылках Файл:LogoSW.png

c_givetreasuremaps()

Призывает в инвентарь все послания в бутылке от всех кладов на карте.

Открытие всех кладов Файл:LogoSW.png

c_revealtreasure()

Открывает на карте все клады.

Создание клада Файл:LogoSW.png

c_spawntreasure("название клада")

Создаёт под курсором клад. Все названия кладов вы можете найти здесь или в файле treasurehunt.lua, где также содержатся названия других сокровищ, например, от игрового автомата, но это не мешает создавать клад с их содержимым.

Don't Starve Together

В DST есть несколько вариантов вашего статуса в игре:

  1. Вы хост.
    • В этом случае вы являетесь админом и можете полноценно пользоваться консолью.
  2. Вы гость.
    • У вас нет прав и вы не можете пользоваться консолью. Есть ограниченное число команд, которые работают на клиентской стороне. Но почти вся ключевая информация обрабатывается на сервере, поэтому читерить не получится.
  3. Вы админ другого сервера. То есть это либо ваш выделенный сервер (с использованием вашего токена), либо чужой сервер/хост, на котором вам выдали права администратора.
    • В этом случае вы также можете пользоваться консолью полноценно. Но консоль работает в двух режимах - "Локальный" и "Удалённый". В первом случае команда будет выполнено локально, словно вы гость. Во втором случае команда будет отправлена на сервер и выполнена там. Режим переключается клавишей Ctrl. "Удалённый" режим указывается слева от консоли фиолетовой надписью. При выполнении "удалённых" команд, информация выводится в лог сервера, а не в лог консоли клиента, в том числе и ошибки синтаксиса или неудачное выполнение.

Супер режим бога

 c_supergodmode()

Также как и c_godmode() делает персонажа неуязвимым, но в добавок повышает все параметры на максимум.

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

Дать супер режим бога другому игроку

c_supergodmode("Имя игрока")

Скорость

 c_speedmult(множитель)

Стандартный бонус скорости 1. 2 делает персонажа в 2 раза быстрее и при 10 или больше, персонаж легко сможет проходить сквозь стены и ходить по воде.

Запрет на предсказание движения

Игра начинает подлагивать, но зато игрок именно там, где показано на экране.

Эту функцию также можно включить в настройках.

ThePlayer:EnableMovementPrediction(false)

Вывести сообщение

c_announce(Текст)

Выводить сообщения периодично

c_announce(Текст, Интервал)

Остановить периодичное выведение сообщений

c_announce()

Сохранить игру

c_save()

Откатить сохранения

При пустом аргументе откатится на 1 сохранение

c_rollback(Число сохранений)

Завершить работу

Сохранение опционально. Поставить в аргумент false, чтобы игра не сохранилась. При пустом аргументе сохраняется

c_shutdown(true/false)

Перезагрузить сервер

Сохранение опционально. Поставить в аргумент false, чтобы игра не сохранилась. При пустом аргументе не сохраняется

c_reset(true/false)

Перегенерировать мир

Старый мир удаляется

c_regenerateworld()

Список активных игроков

c_listplayers()

Список всех игроков

c_listallplayers()

Перемещение игрока

c_move(AllPlayers[number])

Перемещает выбранного игрока на позицию под курсором.

Убить игрока

AllPlayers[number]:PushEvent('death')

Воскресить игрока

AllPlayers[number]:PushEvent('respawnfromghost')

Перемещение к игроку

c_goto(AllPlayers[number])

Удалить персонажа и перейти к экрану выбора

c_despawn(AllPlayers[number])

Открытие карты

Без пещер

TheWorld.minimap.MiniMap:ShowArea (0,0,0,10000)

С пещерами (Данная команда работает с задержкой и может потребоваться повторный ввод)

for k,v in pairs(AllPlayers) do for x=-1600,1600,35 do for y=-1600,1600,35 do v.player_classified.MapExplorer:RevealArea(x,0,y) end end end

Это локальная команда и она не будет работать если вы являетесь клиентом.

Получить объект под курсором

Возможна его модификация. Требуется проверка механизма функции

c_sel()

Исключить пользователя из числа объектов для атаки

Игрока не смогут атаковать другие игроки

c_makeinvisible()

Пропустить единицу времени

LongUpdate(X) или Update(X)

x - число единиц.

Все рецепты и бесплатное создание другому игроку

AllPlayers[numder].components.builder:GiveAllRecipes()

Пропустить день

TheWorld:PushEvent("ms_nextcycle")

Пропустить время

TheWorld.net.components.clock:OnUpdate(16*30*x)

Пропускает х дней. Изменение х, чтобы пропустить несколько дней или части дня (например, 16 * 30 * 4,5 пропустит 4,5 дней) ВНИМАНИЕ: Слишком большие значения могут заморозить игру. (В зависимости от быстродействия компьютера)

Начать лето

TheWorld:PushEvent("ms_setseason", "summer")

Начать зиму

TheWorld:PushEvent("ms_setseason", "winter")

Начать весну

TheWorld:PushEvent("ms_setseason", "spring")

Начать осень

TheWorld:PushEvent("ms_setseason", "autumn")

Начать дождь

TheWorld:PushEvent("ms_forceprecipitation")

Остановить дождь

TheWorld:PushEvent("ms_forceprecipitation", false)

Призвать метеорит

c_spawn("shadowmeteor", x)

x - количество метеоритов.

Удар молнии

TheWorld:PushEvent("ms_sendlightningstrike", ConsoleWorldPosition())

При наличии громоотвода бьёт в него.

Внимание: возможен удар по персонажу.

Примечания

  • Мир и меню: Все команды, даже открытие персонажей работают только при вводе из мира, хоть консоль и можно открыть в главном меню.
  • Открытие карты: Если вы выйдете из игры, то вся открытая с помощью консоли карта, снова станет неисследованной.
  • Режим бога: Режим бога отключится, если вы:
  • Удаление открытых персонажей: В случае, если вы активировали персонажей и хотите их убрать, то перейдите в директория Steam\userdata\[userid]\219740\remote и удалите файл profile. Это удалит настройки профиля, в том числе и открытых персонажей.

Также бесконечный рассудок тратится при призывании Абигейл, раскапывания могил, съедания мяса монстра, впрочем от того, что рассудок тратит моментально. (От захода в темноту рассудок не тратится, например.)