Garden of Eden Creation Kit - 2 ч. - один из самых важных отделов нашей Мастерской. Перечень вопросов огромен, проще написать о чём здесь спрашивать нежелательно. Не нужно спрашивать про скрипты, про NifSkope, работу в 3D и графических редакторах.
Смотри свою проблему в Картотеке, Пред тем, как в теме свой вопрос задать, Возможно, там уже и есть ответы, Которые тебе хотелось знать.
Если вместо ГЕККа запускается белый экран - это из-за ENBшного d3d9.dll в папке игры. Если после одного из обновлений винды при попытке редактирования лица перса или попытке открыть любое оружие стала выскакивать вот такая надпись Assert File: C:\projects\fallout3PC\BSShader\BSShaderManager.cpp(пути могут различаться) Line: 1996 После чего ГЕКК сворачивается. Вопрос решатся запуском ГЕКК через основную игровую видюху. Установленная по умолчанию в настройках интегрированная выдаёт такую ошибку.
Изменение репутации для пользователя Graf
GrafOffline
Сообщение №61
написано: 8 октября 2011, 11:47
| Отредактировано: Graf - 8 октября 2011, 11:54
if ( doOnce == 0 ) Set timer to 3 Set doOnce to 1 elseif ( doOnce == 1 ) if timer > 3 set timer to timer - GetSecondsPassed else Player.removeperk 1ACMDPerk showmessage 1ACMDMessagePerkRemove ACMDREF.MoveToMarker ACMDStartMarker ShowMessage 1ACMDMessageRemove Set doOnce to 2 endif endif end
Теперь должно работать.
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
В этом случае компаньон вообще телепортируется только со второго раза. То есть когда я увольняю его, проигрывается анимация и появляются сообщения об увольнении\потере перка, но компаньон остается стоять на месте. После этого я вновь вербую его и увольняю. Вот тут скрипт срабатывает и проигрывается нужная анимация, но опять же, сообщения появляются то до того, как анимация проиграется полностью, то спустя две-три секунды после проигрывания анимации. При этом пока сообщения не появятся, компаньон не исчезнет.
два вопроса: 1. Gameplay Settings можно поменять через Result Script квеста? 2. Я хочу поменять игровые переменные через перки, каким способом это реализовать?
Imperator3, Лдана, попробуй все убрать из результатирующего скрипта, и в квесте поставить такой скрипт:
Code
short doOnce float timer
begin gameMode
if ( doOnce == 0 ) Set timer to 4 Set doOnce to 1
elseif ( doOnce == 1 ) if timer > 1 set timer to timer - GetSecondsPassed
else
ACMDREF.playidle SBGroundGrab set ACMDREF.Waiting to 0 set ACMDREF.CMDHired to 0 set ACMDREF.CMDFired to 1 set ACMDREF.CMDL38 to 0 ACMDREF.SetPlayerTeammate 0 ACMDREF.RemovePerk CompanionSuite ACMDREF.RemoveFromFaction FollowerFaction ACMDREF.SetAV Assistance 0 ACMDREF.ResetAI Startquest 1ACMDSummonQuest Set doOnce to 2
endif elseif ( doOnce == 2 ) if timer > 2 set timer to timer - GetSecondsPassed else ACMDREF.MoveTo ACMDStartMarker Player.removeperk 1ACMDPerk showmessage 1ACMDMessagePerkRemove ACMDREF.MoveToMarker ACMDStartMarker ShowMessage 1ACMDMessageRemove Set doOnce to 3 endif endif end
Добавлено (08.10.2011, 16:15) --------------------------------------------- Fossy, Если сможешь это реализовать через квестовые скрипты, то можно.
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
Graf, В этом случае не работает ничего - ни сообщения, ни анимация, ни исчезновение. Компаньон остается стоять там же, где и стоял. Я снова нанимаю его, увольняю - тот же результат.
Imperator3, Ну тогда у меня к тебе единственное решение. Сделай как реализовано лечение у доктора.
Добавлено (08.10.2011, 16:35) --------------------------------------------- Imperator3, Это должно выглядеть с глобальной переменной, примерно так:
Code
short DoOnce float Timer
BEGIN GameMode
if ( GetAV Variable01 == 1 ) if ( DoOnce== 0 ) disablePlayerControls set Timer to 10 set DoOnce to 1 PlayIdle SBGroundGrab endif
resetai endif
set Timer to ( Timer - GetSecondsPassed )
if ( Timer <= 6 ) && ( DoOnce == 1 ) ACMDREF.MoveToMarker ACMDStartMarker set DoOnce to 2 endif
if ( Timer <= 0 ) enablePlayerControls SetAv Variable01 2 resetai Set DoOnce to 0 endif
END
Убери анимацию проигрования через результативный скрипт, и убери старт квеста. А скрипт повесь на компаньёна. И добавь в результативный скрипт такую строчку
Code
setav variable01 1
.
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
Сколько не редактирую скрипты в гекке, ни разу не появлялось указание строки, в которой ошибка. Видимо, у меня гекк такой глючный.
Он у всех такой - это изначальный баг Вегасовского редактора. Установи глюкоисправитель для ГЕКК (есть тут, на сайте, в Разделе Инструментарий) и тогда будут показываться ошибки в скриптах
Меня интересуют параметры бартера, в частности fbartersellbase - аналога ему в стандартных не нашел...есть эффект на покупку, а вот на продажу не видел.
Gion, Копирую с Wiki ================ Горячие клавиши
Тип скрипта: Квестовый Скрипт требует FOSE.
Помещенный в квест, этот скрипт будет считывать определенный код при нажатии пользо-вателем клавиш клавиатуры. Для более детальной информации по скан-кодам DirectX, кото-рые используются в FOSE, смотрите тему FOSEs Command Docs.
Code
ScriptName HotkeyReleased
short sToggle
BEGIN GameMode If IsKeyPressed 25 != sToggle Set sToggle To sToggle == 0 if sToggle ; клавиша нажата ; выполнение определенных действий при нажатой клавише 'p' - в нашем случае это уменьшение кармы: RewardKarma -650 else ; клавиша отпускается ; выполняются действия, когда клавиша 'p' отпускается, в нашем случае, карма увеличивается RewardKarma 650 endif EndIf END
================
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
Straight, Копирую с wiki ====================Включение света
Тип скрипта (Script Type): Object (Объектный)
Скрипт помещается на активатор, привязанный к источнику света или к родительскому объекту X-Marker, который не должен быть отключен командой Disabled.
Code
ScriptName LightSwitchScript
ref light
BEGIN OnActivate If light == 0 Set light To GetLinkedRef ; определяется источник света EndIf
If light.GetDisabled ; если свет был выключен light.Enable ; свет включается Else ; иначе light.Disable ; свет отключается EndIf Activate ; активация объекта-активатора END
====================
Так же есть урок от Kain'a.
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
И все же.. И вот тут еще вопрос: Реф "нужно привязывать" или "к нему нужно привязывать" лампочку (Под лампочкой надо понимать вот это, я правильно понял?):
Добавлено (10.10.2011, 00:20) --------------------------------------------- Все, разобрался.