1. Тут всего слишком много. Можно мне увидеть просто коды?
  2. Как можно убить персонажа другого игрока?
  3. Что делать с дипломатией?
  4. Как создать командой заклинание?
  5. Как создать командой предмет?
  6. Как создать командой квестовый предмет?
  7. Я ввожу команду (вставить требуемое), но она не работает. Почему ?

  • Тут всего слишком много. Можно мне увидеть просто коды?

    Без проблем. Наиболее полезными кодами являются:

  • Как можно убить персонажа другого игрока?

    Есть три различных способа:

    • Воспользоваться одной ошибкой, которая пока что не была исправлена. Необходимо скастить на жертву спелл (лучше сломанный, с большим эффектом), действующий на область - туман, например. Пока спелл не исчез, нужно выйти из игры, вернуться на базу, либо умереть. В этом случае спелл начнет повреждать других персонажей. (Внимание! Вас он также будет повреждать, даже если в нем была руна :Вр.) Этот способ применим только если вы не являетесь сервером.

    • Также можно было бы воспользоваться скриптовой процедурой KillUnit(). Однако опрос о том, следует ли публиковать патч, разрешающий это, решил его судьбу: из 78 проголосовавших почти две трети оказались против. Этот способ применим только на сервере.

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

  • Что делать с дипломатией?

    Функции и процедуры для управления дипломатией позволят вам спокойно ходить среди монстров, не боясь, что на вас нападут, или стравливать их друг с другом.

    Пример:

    Войдите на карту мультиквеста "Сокровища разбойников". Отдайте команду

    SetPlayer(GetLeader(),9)

    Теперь ваш персонаж относится к логическому игроку 9 (не бойтесь, управляете им по-прежнему вы). Что это дает ? Игроку №9 принадлежат монстры, а монстры друг с другом не воюют - теперь на вас не будут обращать внимания, пока вы сами не нападете.

    К северу от входа есть два кабана с идентификаторами 4517 и 4651. Сейчас вы уже можете спокойно за ними наблюдать - они вас не тронут. Если вы хотите определить, кто из них кто, отдайте команды

    CastSpellUnit("healing",0,0,GetObject(4517)) и CastSpellUnit("healing",0,0,GetObject(4651))

    Подсветка лечения покажет вам, какой идентификатор имеет каждый из кабанов. Оба кабана принадлежат игроку №7. Давайте это исправим:

    SetPlayer(GetObject(4517),1) и SetPlayer(GetObject(4651),2)

    Теперь кабан 4517 относится к игроку №1, а 4651 - к игроку №2. Отдайте команду

    SetDiplomacy(2,1,-1)

    Теперь игрок №2 будет считать игрока №1 врагом. Как только кабан 4651 увидит кабана 4517, он бросится его атаковать. Заметьте, что игрок №1 продолжает думать, что игрок №2 его союзник, и кабан 4517 вплоть до первого удара будет мирно пастись.

  • Как создать командой заклинание?

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

    Примеры:

    • GiveUnitSpell ( GetLeader() , "healing" )
      спелл лечения без рун
    • GiveUnitSpell ( GetLeader() , "acid_fog{e2;e2;e2;e2;e2;e2;t2;m1}" )
      спелл кислотного тумана с рунами 6хУ++, Ц++, З-
    • GiveUnitSpell ( GetLeader() , "enlarge{d2;d2;d2;d2}" )
      спелл увеличения размера с рунами 4хВ++

    Следует, однако, помнить, что спелл при этом помещается не в обоз, а в набор активных спеллов, и если последний полон, то ничего не происходит. Есть и другой способ: создать какой-либо предмет, содержащий требуемый спелл, после чего разобрать этот предмет.

  • Как создать командой предмет?

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

    Примеры:

    • GiveItem ( 0 , "bone spear.dragon green bones" )
      копье из кости зеленого дракона
    • GiveItem ( 0 , "crystal crossbow.diamond[weak{it;d2;d2;m2;m2;m2}]" )
      алмазный арбалет с ослаблением
    • GiveItem ( 0 , "material.mithrill" )
      кусок мифрила
    • GiveItem ( 0 , "rune.e2" )
      руна У++

  • Как создать командой квестовый предмет?

    Хотя ценность подобного действия и сомнительна, вы все же можете получить квестовый предмет при помощи команды GiveQuestItem(). Список внутренних имен квестовых предметов находится в этой таблице.

    Пример:

    • GiveQuestItem ( 0 , "goldnugget01" )
    получить Императорскую Печать

    Для того, чтобы избавиться от ненужного квестового предмета, используйте команду EraseQuestItem(). Коды квестовых предметов указаны в той же таблице.

    Пример:

    • EraseQuestItem ( 0 , 66 )
    убрать Императорскую Печать

  • Я ввожу команду (вставить требуемое), но она не работает. Почему ?

    Это действительно частый вопрос. Прежде всего: представленные на сайте консольные и скриптовые команды многократно использовались и проверялись. Кроме того, сами тексты сайта также проверялись не раз, поэтому причина, вероятнее всего, кроется в том, что вы неправильно вводите команду. Я приведу примеры наиболее частых ошибок:

    • Неуказана команда запуска скриптовой процедуры (опущен префикс @):
      FixItems()
      Для того, чтобы выполнить вызов скриптовой процедуры, его необходимо предварить командой вызова @:
      @FixItems()

    • Строковый параметр команды не заключен в кавычки:
      @GiveItem(0,crystal sword.diamond)
      Строковые параметры должны быть записаны в кавычках:
      @GiveItem(0,"crystal sword.diamond")

    • Параметры не записаны в скобках и/или пропущены запятые между параметрами команды:
      @GodMode 0 2
      Между параметрами должны стоять запятые, а сам список параметров нужно заключать в скобки:
      @GodMode(0,2)