powered_by.png, 1 kB
Главная arrow TES 4 Обливион arrow Модмейкерам arrow Правила плагиностроениея (специально для TES4 Oblivion)
Правила плагиностроениея (специально для TES4 Oblivion) PDF Печать E-mail
Рейтинг: / 4
ХудшаяЛучшая 
Автор Дмитрий   
19.10.2007 г.

Перевод http://cs.elderscrolls.com/constwiki/index.php/Category:About_Modding_Etiquette

===== Создание плагинов =====

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

===== Совместимость =====

Не вносите изменения в объекты, если Ваш мод не требует таких изменений. Это может быть изменение содержимого контейнера, изменение различных параметров объекта, наложение скриптов на предмет, изменение магического эффекта и т.п. Внесение изменений наподобие этих повлечет за собой изменение всех предметов данного типа в игре. Чтобы избежать этого, скопируйте уже существующий объект под новым ID и вносите необходимые изменения уже в новый предмет.

Не засоряйте свой мод! Информацию о том, как почистить свой мод, Вы можете найти здесь: http://cs.elderscrolls.com/constwiki/index.php/Mod_Cleaning_Tutorial (на англ. языке).

Следите за чистотой диалогов в TES CS. О том, как почистить диалоги, можно узнать тут: http://cs.elderscrolls.com/constwiki/index.php/Unclean_Dialogue (на англ. языке).

Не создавайте таких диалогов, которые добавляют темы или приветствия всем NPC в игре. Другой плагиностроитель может создать такого NPC, который ничего не должен знать о событиях, происходящих в Вашем плагине.

Никогда не выбирайте "Recompile all" в редакторе скриптов TES CS. Эта процедура добавит все скрипты из всех задействованных на данный момент плагинов и мастер-файлов в Ваш плагин, при этом заметно увеличив его в размерах. Вдобавок ко всему, после этого Ваш плагин может конфликтовать с другими плагинами.

Записывайте все изменения Вашего мода в описании самого мода, а также в соответствующем разделе в ReadMe.

===== Предотвращение ошибок =====

Не изменяйте ничего в ячейке (3,3)! Из-за ошибок в игре, в том случае, когда игрок запустит Ваш мод с наличием в нем изменений в этой ячейке и попадет в нее, все указатели на карте местности, включая самого игрока, исчезнут. Удаление любых изменений в ячейке (3,3) из Вашего мода устранит эту проблему.

===== Эффективность =====

Не помешает создавать новые объекты с включенной опцией "Reference persist". Такие объекты будут всегда находиться в памяти.

Выберите "No low level processing" для персонажей (монстров или NPC, включая мертвых и отправленных в "disable"), которые никогда не покидают данную ячейку. Обработка на низком уровне обрабатывает их скрипты и искусственный интеллект (AI) каждые 5 секунд или около того, даже если игрок находится далеко от них. Поэтому такую обработку целесообразно отключить.

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

Пишите как можно более производительные скрипты. В том случае, когда одновременно работает очень много скриптов, они могу завершить приложение, т.е. игра "вылетит". Тщательно проверяйте, действительно ли Ваши скрипты запускаются тогда и только тогда, когда это необходимо.

Старайтесь избегать использование блоков "GameMode". Например, если можно вместо них использовать "OnLoad", используйте.

Если все, что делает скрипт, это включение или отключение объектов, предусмотрите эти операции из другого внешнего скрипта.

Используйте быстрые выходы из блока "GameMode", когда это возможно. Иными словами, не позволяйте скрипту проходить через несколько конструкций, делая одну единственную проверку. Все остальные конструкции и операции должны быть вне этого блока.

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

Избегайте использование "PlaceAtMe" для создания новых копий объекта, когда можно просто использовать "MoveTo" на уже существующем объекте. Очевидно, размещенные объекты никогда не удалятся из игрового мира, и достаточное их использование может значительно увеличить размеры сохраненных игр. Например, ранние версии плагина "Harvest Flora" имели такой существенный недостаток.

===== Подготовка плагина к выходу =====

Включите в Ваш проект подробное описание в файле ReadMe. Хорошее ReadMe содержит описание характеристик мода, любых возможных ошибок, технические вопросы и ответы на них, списки изменений существующих объектов и возможных источников конфликта с другими модами, а также контактную информацию. Создание ReadMe в виде простого текстового файла гарантирует то, что все будут иметь возможность его прочитать. Для того чтобы избежать перезаписывания Вашего ReadMe другим, присвойте ему уникальное имя, например, "Имя_Вашего_плагина - ReadMe!".

Обозначьте незаконченный мод как альфа- или бета-релиз. Незаконченный мод может включать те баги, которые Вы не смогли устранить, или те ошибки, которые Вы еще не успели исправить.

© 2007 Werewolf

 
Рейтинг ролевых ресурсов - ТОП 100 RPGWORLD Рейтинг@Mail.ru Palantir

Page Rank
© 2008 GAMENET RUSSIAN - Русский Игровой Портал
Joomla! - свободное программное обеспечение, распространяемое по лицензии GNU/GPL.
Русская локализация © 2005-2008 Joom.Ru - Русский Дом Joomla!
Страница сгенерирована за 0.035729 секунд