Перейти к содержимому


Фотография
* * * * - 9 Голосов

Вопросы по плагиностроению

как создать торговца oblivion cs торговец cs как создать торговца oblivion моделирование

  • Авторизуйтесь для ответа в теме

#1201 Ссылка на это сообщение X-command

X-command
  • Следопыт
  • 70 сообщений

Отправлено

Здесь задавать вопросы по плагиностроению для Обливиона.

Тема по Обливиону. Тема по Морровинду тут.


<a href="http://profile.xfire.../xcommand"><img src="http://miniprofile.x...2/xcommand.png" border="0" class="linked-sig-image" /></a>
Сила - способность улыбаться © Белльмере-сан "One Piece"<img src="http://www.kolobok.u...zer/pirate.gif" border="0" class="linked-sig-image" />


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2561

#1202 Ссылка на это сообщение Пакость

Пакость
  • мультЯшко
  • 1 461 сообщений
  •    
Наш автор

Отправлено

Да. Статья конечно информативна, но автора реально заносило в сторону от объекта рассмотрения, что не упрощает восприятие.
А теперь по вопросу:
Если для Oblivion - то почти никак. Движок игры поддерживает только два режима бота NPC (разумные боты) и Creature (животные)
Для NPC модель и скелет тела жёстко фиксированы. Поменять можно только модель головы.
Некоторая универсальность есть только у Creature - тут можно как видимую часть бота привязать любую модель, правда с поправкой: животные не могут экипировать на себя что либо, следовательно, если хочешь, чтоб что-то отображалось - это надо "приварить" к модели тела.
Моменты:
Животные не могут вести диалогов, но, в принципе, посредством OBSE и скриптов можно решить эту проблему
ИИ животных ещё тупее, чем у NPC. Если это для тебя важно - ведут себя они неестественно и заставить их делать что-то конкретное намного сложнее, чем NPC.
А для Skyrim - незнаю.
--------------
Petrovich, Umbakano Jr, спасибо.

#1203 Ссылка на это сообщение Ларьяда

Ларьяда
  • Ветеран
  • 611 сообщений
  •    

Отправлено

Хочу плагин на готовку. Соответственно, сижу и пытаюсь такой сделать.
Предполагается, что у горе-кулинара будет возможность испортить блюдо неправильными ингредиентами. Готовые блюда я хочу запихнуть в раздел зелий, а не ингредиентов - мне кажется, так будет справедливее (от поедания ингредиентов толку чуть). Так вот, дело в следующем. Я хочу, чтобы при употреблении испорченного блюда был шанс (именно шанс!) на негативные последствия (либо подцепить болезнь "Несварение желудка", либо чтобы накладывался временный магический эффект, который можно обозвать "Изжога").
С наложением болезни можно попробовать скрипт в DLS про бритву Хрюна посмотреть - там в конце при поедании сердца гемофилия венценосных накладывалась. Если я разберусь, конечно, в том скрипте... Но надо попробовать. Только там эффект был гарантированный, а мне бы всё-таки шанс хотелось, а не 100% гарантию.
Проще говоря, надо что-то такое: персонаж съедает испорченную пищу (выпивает зелье) - на него действуют какие-то обычные для зелий эффекты плюс скрипт-эффект: шанс в момент употребления получить болезнь или временный магический эффект типа проклятья (т. е. "Развеиванием" не лечится).
Кто-нибудь может подсказать, как это реализовать можно? (Если вообще возможно, конечно.) На какие мне скриптовые команды внимание обратить?


Про наложение болезни - простое AddSpell, как я понимаю. Глянула скрипт в DLS - он маленький и нестрашный (просто магией я пока особо не баловалась). А вот про шанс вопрос остаётся открытым. Буду благодарна за подсказку.


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

Сообщение отредактировал Ларьяда: 10 Июнь 2012 - 17:13


#1204 Ссылка на это сообщение Umbakano Jr

Umbakano Jr
  • Крестный внук

  • 3 967 сообщений
  •    
Наш автор

Отправлено

Хочу плагин на готовку. Соответственно, сижу и пытаюсь такой сделать.

Собственно, кулинария неоднократно реализована в различных модах, например - Millstone Farm
а "болячки" при поедании некачественной еды/воды реализованы, например, здесь - Basic Primary Needs

#1205 Ссылка на это сообщение Пакость

Пакость
  • мультЯшко
  • 1 461 сообщений
  •    
Наш автор

Отправлено

Ларьяда, по поводу шанса: В игре существует скриптовая функция рандомной генерации числа. На её основе можно сгенерить "шанс". Как? - покопайся в базовых игровых скриптах, относящихся к вампиризму - помню в них мне попадплись варианты практической реализации.
Ну или, если дойдёт:
А = Рандом
Если А==хх
...вариант0...
иначеЕсли А==ху
...вариант1...
иначеЕсли А==ух
...вариант3...
конецЕсли

#1206 Ссылка на это сообщение Ларьяда

Ларьяда
  • Ветеран
  • 611 сообщений
  •    

Отправлено

Спасибо. Про рандом уже сама догадалась и сделала - работает.
Ёксель-моксель... Случайно не туда нажала - и всё стёрлось, что я писала в ответе до этого. Вообще другая страница грузиться пошла... Это надо так? Н-да, могу же, когда не хочу...
В общем, плагины на готовку, конечно, есть, но я пытаюсь универсальный сделать, допускающий свободную взаимозаменяемость ингредиентов и не завязанный на строгих рецептах. Хотела ещё сделать, чтобы за один раз не могли в одном и том же котелке получиться два разных блюда и чтобы был лимит на количество порций. Пришлось повырезать - стала скрипт в КС копировать, а он банально не влез. Кто ж знал, что там лимит на количество строк кода.
Попробую всё-таки придумать, как прикрутить обратно те ограничения, от которых пришлось отказаться. Скрипт скомпилировался, тестовый контейнер исправно отбирает ингредиенты и выдаёт взамен блюда, но не нравится мне, что в одном и том же котелке удаётся одновременно сварганить суп (а то и несколько разных), плов, кашу да ещё и компот. Причём в неограниченных количествах.

А с рандомом я по такому принципу сделала:

Begin scripteffectstart

set var to GetRandomPercent
if var> 74
addspell [болячка 1]
endif
set var to getrandompercent
if var > 49
addspell [болячка 2]
endif
End

Как раз и получится, что в первом случае шанс около 25%, а во втором - 50%. И оба эффекта могут наложиться одновременно, а может не наложиться вообще ни одного. То самое, что мне было нужно.
Правда, с болезнями всё прекрасно работает, а вот чтобы просто плохое заклинание наложилось, которое действует столько-то секунд, а потом прекращается - не вышло. В список заклинаний игрока добавилось вместо того, чтобы подействовать. Значит, будут болезни.

#1207 Ссылка на это сообщение theReaper

theReaper
  • Скиталец
  • 33 сообщений

Отправлено

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

scriptname zxMyScriptLifeDetectSpell

short switch 

Begin ScriptEffectStart 

        if (switch == 0)
                player.addspell zxMyLifeDetectAbil
                set switch to 1 
        
        elseif (switch == 1)
                player.removespell zxMyLifeDetectAbil
                set switch to 0
        endif

End

так вот, во время игры, абилка добавляется, но не убирается при повторном кастовании закла, как будто переменная switch так и висит на нуле.
В чем тут ошибка?

#1208 Ссылка на это сообщение Naratzul

Naratzul
  • Авантюрист
  • 186 сообщений

Отправлено

А может лучше так?
scriptname zxMyScriptLifeDetectSpell

Begin ScriptStartEffect
                player.addspell MyLifeDetectAbil  
End

Begin ScriptEffectFinish
                player.removespell MyLifeDetectAbil
end
А нет, не то. Не понял сразу суть скрипта.

У тебя ошибка в скрипте. В первом условии переменная написана неправильно.

Сообщение отредактировал Naratzul: 11 Июнь 2012 - 12:30


#1209 Ссылка на это сообщение theReaper

theReaper
  • Скиталец
  • 33 сообщений

Отправлено

Это я потом вручную писал, в КС все нормально, зайду с компа - отредактирую сообщение.
А что будет, если так, как ты написал, сделать?

#1210 Ссылка на это сообщение Umbakano Jr

Umbakano Jr
  • Крестный внук

  • 3 967 сообщений
  •    
Наш автор

Отправлено

В чем тут ошибка?

В elseif... надо использовать просто else...

#1211 Ссылка на это сообщение theReaper

theReaper
  • Скиталец
  • 33 сообщений

Отправлено

В elseif... надо использовать просто else...

пробовал не помогло, смысл-то тот же будет.

Тут даже такая фишка, что свитч с каджым новым началом скрипта снова становится 0, не знаю почему.

#1212 Ссылка на это сообщение Umbakano Jr

Umbakano Jr
  • Крестный внук

  • 3 967 сообщений
  •    
Наш автор

Отправлено

...
но не убирается при повторном кастовании закла, как будто переменная switch так и висит на нуле.
...

Так и должно быть - каждое кастование вызывает новый экземпляр скрипта, соответственно, заново инициализируется переменная short...

Используй функцию dispel...

#1213 Ссылка на это сообщение theReaper

theReaper
  • Скиталец
  • 33 сообщений

Отправлено

Так и должно быть - каждое кастование вызывает новый экземпляр скрипта, соответственно, заново инициализируется переменная short...

Используй функцию dispel...


что это за функция?
А можно как-нить проверить есть ли определенное заклинание у ГГ?

все, проблему решил, увидел некое сочитание в статейке, такой вот скрипт получился:

scriptname zxMyScriptLifeDetectSpell

Begin ScriptEffectStart 

        if (Removespell zxMyLifeDetectAbil == 0)
                player.addspell zxMyLifeDetectAbil        
        
	else ;if (Removespell zxMyLifeDetectAbil == 1)
                player.removespell zxMyLifeDetectAbil

        endif

End


#1214 Ссылка на это сообщение theReaper

theReaper
  • Скиталец
  • 33 сообщений

Отправлено

Немного странный вопрос: можно ли изменить скорость выполнения скриптов на квесте?
Например, суть такова: есть абилка, которая добавляется при нажатии кнопки <button>, и убирается, когда кнопка отпущенная. Проблема в том, что после нажатии кнопки абилка добавляется только после 2-3х секунд и удаляется, соответственно, тоже с задержкой. Такое ощущение, что скрипт выполняется каждые N-фреймов. Можно ли эту "задержку" как-то убрать?

#1215 Ссылка на это сообщение Пакость

Пакость
  • мультЯшко
  • 1 461 сообщений
  •    
Наш автор

Отправлено

можно. делаешь в управляющем скрипте а-ля player.каст [на себя] спелл. чё-то в этом роде.

theReaper, поставить центральный процессор побыстрее :turned:
Тут относительно стабилизировать время можно только в сторону задержки.

Так что? Держу открытым ворос:
Как скомпилировась скрипт 00DiaryQuest в плагине Players Diary?
Неужели никто не в курсе?

#1216 Ссылка на это сообщение theReaper

theReaper
  • Скиталец
  • 33 сообщений

Отправлено

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

#1217 Ссылка на это сообщение Umbakano Jr

Umbakano Jr
  • Крестный внук

  • 3 967 сообщений
  •    
Наш автор

Отправлено

Немного странный вопрос: можно ли изменить скорость выполнения скриптов на квесте?
...

Специальная переменная fQuestDelayTime
Как использовать - вот пример...

#1218 Ссылка на это сообщение theReaper

theReaper
  • Скиталец
  • 33 сообщений

Отправлено

Специальная переменная fQuestDelayTime
Как использовать - вот пример...


Помогло. Огромное спасибо!)

#1219 Ссылка на это сообщение che_guevaro

che_guevaro
  • Скиталец
  • 39 сообщений

Отправлено

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

#1220 Ссылка на это сообщение Umbakano Jr

Umbakano Jr
  • Крестный внук

  • 3 967 сообщений
  •    
Наш автор

Отправлено

Напомните пожалуйста команду, с помощью которой можно выбрать рандомное число.

Функция GetRandomPercent возвращает случайное число в интервале от 0 до 99 включительно.
Чтобы сгенерировать случайное число в заданном диапазоне между мин. и макс. значениями используйте
следующий синтаксис:
set randVal to min + GetRandomPercent * (max-min) / 99
Источник - OSFM

#1221 Ссылка на это сообщение draOOger

draOOger
  • Министерва

  • 1 149 сообщений
  •    

Отправлено

Не подскажете, как сделать в локации проигрывание своей музыки?
Я знаю, наверняка много было здесь подобных постов, но поискать интернет не позволяет, но очень нужно.
Конопля - тоже дерево, просто ему вырасти не дают...
Logo-tesdiesel.png
draOOger.gif

 





Темы с аналогичным тегами как создать торговца, oblivion cs торговец, cs как создать торговца, oblivion, моделирование

Количество пользователей, читающих эту тему: 33

1 пользователей, 32 гостей, 0 скрытых