Advertisement
Anonymous_Commander

Ликбез

Jun 24th, 2016
1,892
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.39 KB | None | 0 0
  1. Скрипты
  2. ======================================================================================================================================
  3. Скрипты - сценарии, выполняемые игрой. Движок игры распознаёт различные события (например, OnHit() - актёра стукнули). Скрипты можно привязывать к различным вещам, в том числе и к событиям. События характеризуются частотой, а функции Папируса - скоростью выполнения ( можно почитать тут https://www.reddit.com/r/skyrimmods/comments/4omjly/a_few_script_execution_speed_psas/ и тут http://www.nexusmods.com/skyrim/mods/18825/? ). Различные их комбинации могут повлиять на обработку скриптов. Например, событие OnHit() очень часто происходит во время кулачной драки, поэтому при привязке к нему скрипта движок может быть перегружен в момент драки. Событие OnUpdate() может быть очень жрущим, т.к. вызывается каждые N секунд и может содержать в себе "долгие" функции. Если это событие не успеет выполнится (налезет на следующее такое же) или не будет подчищено с помощью UnregisterForUpdate(), то работа Папируса замедлится, а сохранение раздуется. То, с какими скриптами справится твоя сборка, а с какими - нет, зависит от твоих модов и железа. Ты можешь навернуть хренову гору модов со скриптами, выполняющимися только при определённых условиях и содержащими быстрые функции, и твоя сборка не будет иметь задержек/переполнений стека, а можешь повесить игру одним-единственным модом, скрипт которого плохо написан/часто выполняет очень долгие функции.
  4. ======================================================================================================================================
  5.  
  6. Память
  7. ======================================================================================================================================
  8. Многие новички, установив Скайрим, думают, что он будет работать нормально. ЭТО НЕ ТАК. Беседка запилила очень странный механизм выделения памяти - два блока по 256 мегабайт, заполняющиеся с разной скоростью. Проблема в том, что первый блок может очень быстро переполниться, что приведёт к крашу. SKSE memory patch пытается решить эту проблему путём увеличения размера блоков. Это может отложить краш (в том числе насовсем), но не решает проблему. В Crash Fixes есть опция, позволяющая использовать malloc для выделения памяти. Данная фича избавляет игру от говённого беседкоподхода, но есть риск deadlock'а (взаимной блокировки). Crash Fixes достаточно нов и ещё находится на этапе тестирования, но очень хорош в плане подхода и функционала. Касательно deadlock'ов - сам словил только 2 раза за 10 часов игры (учти, что у меня 8 гигов RAM и без Скайрима они уже используются на 30%, т.к. постоянно активен браузер).
  9. Другая проблема Скайрима - VRAM. Скайрим - 32-битное приложение, поэтому без шаманств больше 3,1 гига он не увидит. ENB, дабы его графические фичи не убивали игру, позволяет использовать больше VRAM и содержит некоторые фиксы (если отключить все графические примочки, то оставшееся будет называться ENBoost). Одна из распространённых ошибок - выставление параметра VideoMemorySizeMb на меньшее значение, чем 3,1 гигабайта. Внимательно читай гайды по настройке либо используй AutodetectVideoMemorySize=true.
  10. Итог: без грамотной настройки внешних хаков в Скайрим НИПАИГРАТЬ, и никто, кроме тебя, их не настроит.
  11. ======================================================================================================================================
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement