29 апреля 2010 г.

L4D 2 vocalize commands

В Blogger В Twitter В Живой Журнал Во ВКонтакте В Одноклассники В Я.ру В Мой Мир В LiveInternet В Facebook
Видимо снова работает!
использование нестандартных голосовых команд в Left4dead 2 после обновления 19 февраля 2010
Как вы наверное уже знаете, Valve после обновления 19 февраля 2010 не дает использовать команду vocalize в Left4dead 2. То-есть теперь уже нельзя произносить любые фразы, кроме стандартных. Теперь вы будете видеть ошибки типа "server is enforcing consistency for radialmenu.txt". Но все-таки есть способ это обойти.
Итак, разберемся пошагово что же нужно делать для того, чтобы получить такое меню.
Шаг 1. Создание директорий и файлов
(Заметте, если у вас есть старый файл radialmenu.txt в папке C:\Program Files\Steam\steamapps\common\left 4 dead 2\left4dead2\scripts, его нужно будет удалить)  
Если хотите, можете пропустить этот шаг и скачать готовую структруру папок и файлов, которую создал FittersGuy. Вы можете просто распаковать этот архив по адресу "C:\Program Files\Steam\steamapps\common\left 4 dead 2\left4dead2\addons\".
Первым шагом будет создание файла radialmenu.txt. Во-первых, откройте любимый текстовый редактор (например notepad++) и сохраните пустой документ как "radialmenu.txt". Важной частью файла radialmenu.txt является его структура. По умолчанию файл radialmenu.txt выглядит так:

"RadialMenu"
{
 //--------------------------------------------------------------
 "Orders,Survivor,Alive"
 {
  "Center"
  {
   "command" "vocalize smartlook"
   "text"  "#L4D_rosetta_look"
  }
  "North"
  {
   "command" "vocalize PlayerMoveOn"
   "text"  "#L4D_rosetta_letsgo"
  }
  "NorthEast"
  {
   "command" "vocalize PlayerLeadOn"
   "text"  "#L4D_rosetta_youtakelead"
  } 
  "East"
  {
   "command" "vocalize PlayerHurryUp"
   "text"  "#L4D_rosetta_hurry"
  } 
  "SouthEast"
  {
   "command" "vocalize PlayerNiceJob"
   "text"  "#L4D_rosetta_nicejob"
  } 
  "South"
  {
   "command" "vocalize PlayerWaitHere"
   "text"  "#L4D_rosetta_waithere"
  }
  "SouthWest"
  {
   "command" "vocalize PlayerToTheRescue"
   "text"  "#L4D_rosetta_totherescue"
  }
  "West"
  {
   "command" "vocalize PlayerWarnCareful"
   "text"  "#L4D_rosetta_becareful"
  }
  "NorthWest"
  {
   "command" "vocalize PlayerImWithYou"
   "text"  "#L4D_rosetta_withyou"
  } 
 }
 //--------------------------------------------------------------
 "QA,Survivor,Alive"
 {
  "Center"
  {
   "command" "vocalize PlayerAskReady"
   "text"  "#L4D_rosetta_ready"
  }
  "North"
  {
   "command" "vocalize PlayerLaugh"
   "text"  "#L4D_rosetta_laugh"
  }
  "NorthEast"
  {
   "command" "vocalize PlayerTaunt"
   "text"  "#L4D_rosetta_taunt"
  }

  "East"
  {
   "command" "vocalize PlayerNegative"
   "text"  "#L4D_rosetta_negative"
  }
  "SouthEast"
  {
   "command" "vocalize PlayerNo"
   "text"  "#L4D_rosetta_no"
  }
  "South"
  {
   "command" "vocalize PlayerSorry"
   "text"  "#L4D_rosetta_sorry"
  }
  "SouthWest"
  {
   "command" "vocalize PlayerYes"
   "text"  "#L4D_rosetta_yes"
  }
  "West"
  {
   "command" "vocalize PlayerHurrah"
   "text"  "#L4D_rosetta_hurrah"
  }
  "NorthWest"
  {
   "command" "vocalize PlayerThanks"
   "text"  "#L4D_rosetta_thankyou"
  }
 }
 
 //--------------------------------------------------------------
 "Orders,Zombie,Alive"
 {
  "Center"
  {
   "command" "vocalize PlayerZombieTaunt"
   "label"  "#L4D_rosetta_grrrr"
  }
 }

 //--------------------------------------------------------------
 "QA,Zombie,Alive"
 {
  "Center"
  {
   "command" "vocalize PlayerZombieTaunt"
   "text"  "#L4D_rosetta_grrrr"
  }
 }

 //--------------------------------------------------------------
 "Alerts,Zombie,Alive"
 {
  "Center"
  {
   "command" "vocalize PlayerZombieTaunt"
   "text"  "#L4D_rosetta_grrrr"
  }
 }

}
      
   

Советую оставить этот файл в таком же виде, а снизу перед последней фигурной скобкой просто  добавить свои меню (их может быть несколько, например для каждого персонажа свое).
Снизу дается пример своего меню. Можно скопировать его изменив значения [NAME], [command] и [displayed text] на свои значения, где [NAME] = имя меню, vocalize [command] = команда vocalize, [displayed text] = отображаемый текст меню (например, "Внимание!").


//--------------------------------------------------------------
   "[NAME],Survivor,Alive"
 {
  "Center"
  {
   "command" "vocalize [command1]"
   "text"  "[what text is displayed on the radial menu wheel for command1, user friendly]"
  }
  "North"
  {
   "command" "vocalize [command2]"
   "text"  "[what text is displayed on the radial menu wheel for command2, user friendly]"
  }
  "NorthEast"
  {
   "command" "vocalize [command3]"
   "text"  "[what text is displayed on the radial menu wheel for command3, user friendly]"
  }

  "East"
  {
   "command" "vocalize [command4]"
   "text"  "[what text is displayed on the radial menu wheel for command4, user friendly]"
  }
  "SouthEast"
  {
   "command" "vocalize [command5]"
   "text"  "[what text is displayed on the radial menu wheel for command5, user friendly]"
  }
  "South"
  {
   "command" "vocalize [command6]"
   "text"  "[what text is displayed on the radial menu wheel for command6, user friendly]"
  }
  "SouthWest"
  {
   "command" "vocalize [command7]"
   "text"  "[what text is displayed on the radial menu wheel for command7, user friendly]"
  }
  "West"
  {
   "command" "vocalize [command8]"
   "text"  "[what text is displayed on the radial menu wheel for command8, user friendly]"
  }
  "NorthWest"
  {
   "command" "vocalize [command9]"
   "text"  "[what is displayed for command9, user friendly]"
  }
 }
    //--------------------------------------------------------------

Изменив значения на собственные можно добавить и другие меню таким образом. Главное чтобы синтаксис меню не менялся.
Теперь поместите ново созданный radialmenu.txt в папку C:\Program Files\Steam\steamapps\common\left 4 dead 2\left4dead2\addons\radialmenu\scripts\ (все папки необходимо создать).
Создайте файл addoninfo.txt и поместите его в C:\Program Files\Steam\steamapps\common\left 4 dead 2\left4dead2\addons\radialmenu\ . Содержание этого файла должно быть примерно следующим:
// The addoninfo.txt file is a metadata file that is required by all Source Engine Add-ons.

"AddonInfo"
{
   addonSteamAppID 550 // 500 is the app ID for Left 4 Dead, 550 for Left 4 Dead 2
   addontitle "Dead Line 2" // Add-on title that shows up in Add-ons list. ~20 chars max
   addonversion 1.0 // Add-on version.
   addontagline "Catch the last subway... out of hell... Again!" // Add-on tagline or wrap-up- a short    description. ~100 chars max
   addonauthor "Valve" // Name/alias of the author
   addonSteamGroupName "deadline2add-on" // (Optional) Steam group related to the add-on. We use this to construct a URL to the group page.
   addonauthorSteamID "YasserMalaika" // (Optional) Steam ID of author. We use this to construct a URL to the author's page.
   addonContent_Campaign 1 //This addon provides muliple connected maps with a finale
   addonURL0 "http://media.steampowered.com/apps/513/deadline2.html" //An html home page for the add-on that includes a download link.

   // short description that appears in the Add-on list screen...
   addonDescription "Survivors must escape on a subway train in this short tutorial example campaign. Get source files and tools for creating your own campaigns by downloading the Left 4 Dead 2 Authoring tools SDK, which is available under the 'Tools' tab in Steam."

   // Authors can add localized descriptions here. (Not yet supported)
   addonDescription_FR "Les survivants doivent s'échapper en métro dans cette carte du tutoriel. Obtenez les fichiers et les outils pour créer vos propres cartes en chargeant les outils de création SDK Left 4 Dead 2 qui sont disponibles sous l'onglet "Outils" sur Steam."

}
"AddonInfo"
{
    addonSteamAppID 550 // 550 is the app ID for Left 4 Dead 2
    addontitle "Name"
    addonversion "3"
    addontagline "" // short description
    addonauthor "person"
    addonSteamGroupName "group"
    addonauthorSteamID "$"
    addonContent_Campaign 1 // if its a campaign or
            // or addonContent_Survival 1
            // or addonContent_Scavenge 1
           // or addonContent_Versus 1 // etc...
   addonURL0 "l" // where people can download your VPK
   addonDescription "This is a example file, sample for a Left 4 Dead II Addon System"
   addonContent_Script 0 // Has Scripts
   addonContent_Music 0 // Has Custom Music
   addonContent_Sound 0 // Has Custom Sound
   addonContent_prop 1 // This Add-on provides new props,
   addonContent_Prefab 0 // Provides new prefabs
   addonContent_BackgroundMovie 0 // Provides a replacement for the background movie.
   addonContent_Survivor 0 // Provides a new survivor model. 0=false, 1=true, String in quotes if replaces specific single character, i.e. "Coach"
              // eg addonContent_Survivor "rochelle" works fine, no number.
   addonContent_BossInfected 0 // Provides a new boss infected model. Break these out?
   addonContent_CommonInfected 0 // Provides a new common infected model  
   Content_WeaponModel 0 // Provides a new appearance to existing weapons, but does not change  their function
   Content_weapon 0 // provides new weapons or new zombie killing functionality, i.e. guns, explosives, booby traps, hot tar,
   addonContent_Skin 0 // 0 if no new skin textures for existing models. 1 if multiple skin pack. String in quotes if specific single skin
   addonContent_Spray 0 // Provides new sprays.
   addonContent_Map 0 // Add-on provides a standalone map
}

Шаг 2. Создание VPK
 Далее Вам нужно найти на своем компьютере файл vpk.exe. Теоретически файл должен находиться в C:\Program Files\Steam\steamapps\common\left 4 dead 2\bin\, но даже при установленном addon support я его там не нашел. Этот файл есть в папке от игры L4D1, и находится он в C:\Program Files\Steam\steamapps\common\left 4 dead\bin\. Надеюсь первая часть игры у Вас тоже есть.
Теперь вам нужно просто перетащить папку radialmenu, созданную вами раньше (она должна содержать scripts\radialmenu.txt) на файл vpk.exe. И в вашей папке с L4D 2 (C:\Program Files\Steam\steamapps\common\left 4 dead 2\left4dead2\addons\) теперь должен появиться файл radialmenu.vpk.  

Шаг 3. Выключаем дополнение 
Как странно это не звучит, но мы должны загрузить L4D2, перейти в Дополнительно -> Дополнения и ВЫКЛЮЧИТЬ это дополнение.
Похоже сейчас после патчей все работает с включенным дополнением. Так что шаг 3 - проверить, включено ли дополнение

Шаг 4. Биндим меню на кнопки 
Следующим шагом будет создание файла autoexec.cfg чтобы прибиндить наше меню на новые кнопки. Сильно углубляться не буду в это дело. Просто расскажу порядок действий. Заходим в папку C:\Program Files\Steam\steamapps\common\left 4 dead 2\left4dead2\cfg, и создаем файл autoexec.cfg. (Если у вас уже есть такой файл, просто открываем его)
Добавляем в файл alias'ы (ссылки на команды).

 alias [name] "[command]", где [name] = имя ссылки, а [command] = команда(ы), что будут выполняться.

Например,
alias +customMenu "+mouse_menu MyMenu"
alias -customMenu "-mouse_menu"
, где MyMenu - название Вашего меню из файла radialmenu.txt

После мы прибиндим наши алиасы на кнопки таким образом:
 bind "[KEY]" "+customMenu"

Примерно то, что должно у нас получиться в файле:

alias +menuOrders "+mouse_menu Orders"
alias -menuOrders "-mouse_menu"
alias +menuQA "+mouse_menu QA"
alias -menuQA "-mouse_menu"
alias +customMenu "+mouse_menu MyMenu"
alias -customMenu "-mouse_menu"

bind z "+menuOrders"
bind x "+menuQA"
bind v "+customMenu"
 
Теперерь при нажатии кнопок Z, X и V мы получим наши радиальные меню.
Вот и все.
Для тех, кто в этом понимает больше добавлю: можно делать меню для каждого персонажа отдельно и прописывать наши бинды и алиасы в отдельных файлах (например, Ellis.cfg, Rochelle.cfg etc.). А в файле autoexec.cfg прибиндить на кнопки загрузку нужных файлов.
Например,
 bind F5 "exec Rochelle"
а в файле Rochelle.cfg 
 alias +menuFunny "+mouse_menu Ro"
 alias -menuFunny "-mouse_menu"
 bind v "+menuFunny"
в итоге на кнопке V мы получаем меню с названием Ro.

Если наш VPK все-таки не заработал (инфа устаревшая, нет возможности проверить)

Ну бывает и такое на самом деле.
1. Проверяем правильность всех файлов.
2. Удалите VPK из папки addons. Запустите L4D2 и войдите в кампанию, выйдите и закройтте L4D2, переместите vpk обратно в папку addons. Попробуй еще раз.
3. Говорят, что вместо пункта 2 можно подредактировать Steam\steamapps\common\left 4 dead 2\left4dead2\addonlist.txt и изменить строку, содержащую "radialmenu.vpk" на "radialmenu.vpk" "1". Сам не пробовал, но может помочь. И не забудьте ВЫключить дополнения в меню L4D2.
4. Мне помогает след. вариант. Перед выходом из игры я ВКЛЮЧАЮ аддон. А после нового входа ВЫКЛЮЧАЮ его. И все работает. 

Материалы взяты с блога FitterBlog . Огромная благоданость FittersGuy за его работу

Команды vocalize можно взять на сайте FittersBlog здесь, и отдельно по каждому персонажу здесь, здесь, здесь и вот здесь.
На данный  момент этот блог недоступен, поэтому спер команды в другом месте. Вот они


Comments
2 Comments

2 коммент.:

Related Posts Plugin for WordPress, Blogger...