Новые сообщения Участники Правила Поиск
Модератор форума: freeknik, SLAwww, thecre, RealCrazyMan  
Форум » Serious Sam » Серьёзное редактирование » Помощь по Serious Editor 3+ (Вопросы по редактору карт для Serious Sam HD/3/Fusion)
Помощь по Serious Editor 3+
Bazilikos Среда, 23.11.2016, 21:20 | Сообщение # 2221


Сообщений: 26
Награды: 0
Замечания: 0%
 
Цитата SeriousVovan ()
Всем привет. Хочу сделать одну штуку, но вот не знаю как задействовать ентию телепорта через скрипт. Просто привязать к детектору не хочу, нужно, чтобы ГГ телепортировало в нужную точку в определённый момент, аля через скрипт. Кто знает?


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

-- player : CPlayerPuppetEntity
RunHandled(
function()
WaitForever()
end,
On(Event(.....)),
function(e)
local player = e:GetActivator()
player:Teleport(marker, true)
end)


532
AsDOLG Среда, 23.11.2016, 21:29 | Сообщение # 2222


Сообщений: 360
Награды: 4
Замечания: 0%
 
Bazilikos, не надо пихать RunHandled везде, где только можно. Почему бы не сделать проще:

Код
local eActivated = Wait(Event(...))
local player = eActivated:GetActivator() -- player : CPlayerPuppetEntity

player:Teleport(marker, true)


Bazilikos Четверг, 24.11.2016, 22:05 | Сообщение # 2223


Сообщений: 26
Награды: 0
Замечания: 0%
 
Цитата AsDOLG ()
Bazilikos, не надо пихать RunHandled везде, где только можно. Почему бы не сделать проще:

Здесь ты прав, просто я скопипастил скрипт со своей карты, а там мне RunHandled был очень нужен, для дальнейших действий.


532
ALEX Воскресенье, 04.12.2016, 23:50 | Сообщение # 2224


Сообщений: 106
Награды: 7
Замечания: 0%
 
Ребята скриптеры прошу вашей помощи... я занялся модом и по немногу начал вникать в скриптинг.Но с вашей помощью я закончу со скриптингом быстрее.. Конечно же + от меня за помощь и ваше имя будет в титрах.. :)
Напишите мне в ЛС. кто реально готов помочь. В долгу не останусь я умею делать в редакторе все, кроме хорошего скриптинга.




Gnaar Понедельник, 12.12.2016, 14:35 | Сообщение # 2225


Сообщений: 117
Награды: 7
Замечания: 0%
 
А как сделать снег?

AsDOLG Понедельник, 12.12.2016, 14:59 | Сообщение # 2226


Сообщений: 360
Награды: 4
Замечания: 0%
 
Start45rus, Paticle Effect. Вот настройки из Талоса:

https://images-ext-2.discordapp.net/eyJ1cmw....a5vQaTo
https://images-ext-1.discordapp.net/eyJ1cmw....65JJgT4
https://images-ext-2.discordapp.net/eyJ1cmw....LadqWZQ


Gnaar Вторник, 13.12.2016, 19:31 | Сообщение # 2227


Сообщений: 117
Награды: 7
Замечания: 0%
 
AsDOLG, О спасибо, и ещё вопрос. А как сделать движение губ, рта и вообще мимики персонажей?

AsDOLG Вторник, 13.12.2016, 21:13 | Сообщение # 2228


Сообщений: 360
Награды: 4
Замечания: 0%
 
Start45rus, уух, там что-то связанное с Morph картами моделек и Lypsync анимациями. Я сам не занимался, поэтому не могу сказать. Ищи в оригинальных кат-сценках.

------------------------------------------------------------
Некоторое время спустя...
------------------------------------------------------------

Сообщение отредактировал AsDOLG - Среда, 14.12.2016, 13:00


MentalVader Четверг, 15.12.2016, 17:59 | Сообщение # 2229


Сообщений: 704
Награды: 12
Замечания: 0%
 
Я анимировал лица в Serious Editor 3.5, но анимировать морфы лица там так, чтобы выглядело реалистично, просто нереально. Нужно действительно как-то анимировать за пределами редактора. <_<

https://new.vk.com/mtltycontent
Ar2R-devil-PiNKy Четверг, 15.12.2016, 18:21 | Сообщение # 2230


Creative virtuoso
Сообщений: 3120
Награды: 58
Замечания: 
 
Имеющиеся морфы достаточно фиговые, да.

Мои работы
Gnaar Вторник, 20.12.2016, 18:15 | Сообщение # 2231


Сообщений: 117
Награды: 7
Замечания: 0%
 
Ребят, сколько я не пытался, не получалось изучить скрипт со взглядом игрока на цель. (1 уровень "Лето в Каире" Когда игрока поворачивает на задание которое уничтожится) . Я хочу добавить эту фичу на свою карту а понять как работает скрипт не получается, и так и сяк ну не хочет работать.

AsDOLG Вторник, 20.12.2016, 19:03 | Сообщение # 2232


Сообщений: 360
Награды: 4
Замечания: 0%
 
Это в начало скрипта.
----------------------------------------------------
local eePlayerBorn = Wait(Event(worldInfo.PlayerBorn))
local player = eePlayerBorn:GetBornPlayer()

----------------------------------------------------
Это там, где надо смотреть.
----------------------------------------------------
player:LookAtEntity(entity)

-- entity - собсно энтитя, на которую надо смотреть.

Это будет работать, если уровень синглплеерный. Если нет, то пиши в дискорд, там разберемся.


Gnaar Вторник, 20.12.2016, 20:02 | Сообщение # 2233


Сообщений: 117
Награды: 7
Замечания: 0%
 
AsDOLG, Не получилось, до этого когда пытался выдрать скрипт, слово player подсвечивалось и можно было выбрать команды, а тут что то попытался и нефига.

AsDOLG Вторник, 20.12.2016, 20:28 | Сообщение # 2234


Сообщений: 360
Награды: 4
Замечания: 0%
 
Я просто не приписал список методов к игроку, без этого тоже будет работать. Чтобы это сделать, нужно куда-нибудь ДО использования player написать:
-- player : CPlayerPuppetEntity

Имя класса точно не помню, надеюсь угадал.


Gnaar Вторник, 20.12.2016, 22:27 | Сообщение # 2235


Сообщений: 117
Награды: 7
Замечания: 0%
 
AsDOLG, Ну вот попытался написать скрипт
Wait(Event(DetectorArea001.Activated))
-- player : CPlayerPuppetEntity
local eePlayerBorn = Wait(Event(worldInfo.PlayerBorn))
local player = eePlayerBorn:GetBornPlayer()
player:LookAtEntity(Scream)
Нефига, ну буду дальше изучать этоту фичу


AsDOLG Среда, 21.12.2016, 10:03 | Сообщение # 2236


Сообщений: 360
Награды: 4
Замечания: 0%
 
Да нет же, я сказал добавить фигню с присваиванием игрока в начало скрипта. Ты понимаешь, что написал? Ты сначала ждёшь, пока игрок активирует детектор, а потом ждёшь, пока родится новый игрок. Попробуй так тогда, раз у тебя детектор используется:

Я объясню. Когда мы ждём какого-то события, мы пишем просто Wait(...). Но если мы хотим, мы также можем записать произошедшее событие в переменную, т.е. типа "local eeActivated = Wait(Event(DetectorArea001.Activated))". Здесь мы сразу и ожидаем, и по завершении ожидания записываем событие. Зачем это нужно? Очень просто, события обычно хранят информацию о том, кто их вызвал. Так, в событии PlayerBorn у worldInfo есть функция GetBornPlayer(), возвращающая игрока, появившегося в мире. А в событии Activated детектора есть функция GetActivator(), возвращающая НПС или игрока, активировавшего детектор. Поэтому делаем следующее:
Код

local eeActivated = Wait(Event(DetectorArea001.Activated)) -- player : CPlayerPuppetEntity
local player = eeActivated:GetActivator()
player:LookAtEntity(Scream, 2)


Т.к. у нас есть уже событие с детектором, то колдовать с рождением игрока нам незачем, поэтому забудь, что я писал в предыдущих сообщениях. Здесь и вправду единственная сложность - получить переменную игрока. А, и еще. В функции LookAtEntity() насколько я помню нужно ДВА аргумента. Первый - энтитя, на которую надо смотреть, второй - время, которое нужно смотреть. Поэтому пишем LookAtEntity(Scream, 2). Scream - твоя энтитя (кстати, желательно чтобы это был маркер), 2 - время просмотра. Можешь поменять.
Сообщение отредактировал AsDOLG - Среда, 21.12.2016, 10:07


Gnaar Среда, 21.12.2016, 14:13 | Сообщение # 2237


Сообщений: 117
Награды: 7
Замечания: 0%
 
AsDOLG, О спасибо, заработало. Только не много не понел про переменную "local eeActivated = Wait(Event(DetectorArea001.Activated))"

AsDOLG Среда, 21.12.2016, 16:53 | Сообщение # 2238


Сообщений: 360
Награды: 4
Замечания: 0%
 
Давай тогда вообще всё по полочкам разберём.

Detector - энтитя детектора. С помощью точки мы обращаемся к его событиям. Нам нужно событие Activated, т.е. Detector.Activated. Чтобы обратиться к этой строке, как к событию, а не набору символов, мы используем Event(), т.е. Event(Detector.Activated). А чтобы подождать, пока это событие произойдет, мы используем Wait().
На самом деле Wait() в качестве аргумента просит не событие, а LatentFuncID (если честно, я хз что это значит и как оно расшифровывается, просто прими как данное :D ). Event() преобразует событие в это самое LatentFuncID.

Теперь мы пишем local eeActivated = Wait(Event(Detector.Activated)). Поясняю.
eeActivated - это просто моё название, "eе" означает event, т.е. событие.

Почему мы записываем в переменную само ожидание, а не событие?
Потому что записывать само событие смысла не имеет, т.к. если оно не произошло, то еще не имеет информации о том, кто его вызвал. Поэтому мы записываем ожидание. Благодаря этому сначала наше событие происходит, его данные обновляются, и с такими данными оно записывается в переменную.
После записи, мы забираем данные об активаторе, т.е. используем функцию GetActivator(), которая возвращает нам игрока, зашедшего в детектор.

Возможно, это работает немного (или много) не так, как я описал, но суть одна.

----------------------------------------
Немного времени спустя...
----------------------------------------

Сообщение отредактировал AsDOLG - Среда, 21.12.2016, 19:02


Gnaar Четверг, 22.12.2016, 19:15 | Сообщение # 2239


Сообщений: 117
Награды: 7
Замечания: 0%
 
AsDOLG, О всё понятно, спасибо за помощь ^_^

YANexus Среда, 22.02.2017, 23:47 | Сообщение # 2240

Сообщений: 26
Награды: 0
Замечания: 0%
 
Скопилось пара немного необычных(тупых) вопросов по редактору
1) Симуляция запускается в режиме,при котором видны все ентити
http://image.prntscr.com/image/0fcb28e6ff1345bdb05ff914892587f3.png
как это убрать?

2) В режиме редактирования мира,после выделения объекта и нажатии клавиша ctrl не появляются оси для вращения и перемещения.Они были при первом запуске,но в процессе дальнейшей работы перестали отображаться.Как включить обратно?

Ситуации мягко говоря нестандартные и обычный поиск ничего не дал.Буду благодарен за любую помощь


MentalVader Четверг, 23.02.2017, 10:17 | Сообщение # 2241


Сообщений: 704
Награды: 12
Замечания: 0%
 
Если хочешь решить проблемы с интерфейсом за один шаг - можешь просто удалить папку Sam3_SeriousEditor, которая находится в Steam\steamapps\common\Serious Sam 3\UserData. При этом редактор становится практически в самое первоначальное состояние, так что если ты как-то подстроил редактор под себя, то придется переделывать всё сначала.

https://new.vk.com/mtltycontent
YANexus Пятница, 03.03.2017, 23:34 | Сообщение # 2242

Сообщений: 26
Награды: 0
Замечания: 0%
 
Таки помогло,спасибо.Понять бы еще,что я нажал такое,что привело к этому.Ну,это потом в процессе ясно станет.
Теперь другой вопрос: где-нибудь есть урок по работе с поведениями врагов.В частности нужно изменить/заменить снаряды у некоторых и сделать их разрушаемыми (аки ракеты у красных биомехов).И всякое такое.

Добавлено (03.03.2017, 23:34)
---------------------------------------------
Ладно,вопрос проще: как-то можно изменить размер кисти в paint tool?

MentalVader Пятница, 03.03.2017, 23:58 | Сообщение # 2243


Сообщений: 704
Награды: 12
Замечания: 0%
 
Нажми в Mesh Editor'е Alt+B - это вызовет окошко для изменения кисти.

https://new.vk.com/mtltycontent
YANexus Пятница, 10.03.2017, 16:57 | Сообщение # 2244

Сообщений: 26
Награды: 0
Замечания: 0%
 
Вопрос по снаряду рептилоида (и ему подобных)
Его надо замедлить.
Изменение параметра на скрине и угла разброса привело к тому,что теперь он раскидывает шары далеко от себя и потом они наводятся на игрока.
http://image.prntscr.com/image/a5089c3ad1164571aa61911942977456.png
Это половина того,что мне нужно
Проблема в том,что после этого они летят слишком быстро и параметра,который может их замедлить я не вижу в упор.Кто-нибудь знает где он?

Добавлено (10.03.2017, 16:57)
---------------------------------------------
Ладно,хрен с ним
Вопрос попроще: как контролировать партикл эффект через скрипты?Например нужно,чтобы после смерти опредленного монстра (это я знаю как сделать) в какой-то части карты происходил взрыв/какой либо другой партикл эффект

SeriousVovan Пятница, 10.03.2017, 17:48 | Сообщение # 2245


Сообщений: 251
Награды: 3
Замечания: 0%
 
YANexus, Партикл эффект активируется всего лишь командой "Start". Т.е. ParticleEffect:Start(). И на будущее: возможные допустимые команды для той или иной entity можно посмотреть, введя после самого объекта в скрипте ":". Если entity уже указана, то скрипт предложит допустимые команды для выбранного объекта. Удачи

Я не буду создавать отдельную тему на сайте со списком своих работ. Я просто оставлю ссылку на группу Вконтакте, где вы всегда сможете прочитать свежие новости касательно моих проектов. Клик!
YANexus Суббота, 11.03.2017, 22:07 | Сообщение # 2246

Сообщений: 26
Награды: 0
Замечания: 0%
 
От души,спасибо

Добавлено (11.03.2017, 22:07)
---------------------------------------------
Время дурацких вопросов: может кто объяснить как сделать врага,с моделью патронов/оружия/аптечек,который ничего не будет делать,просто стоять неподвижно и исчезать при смерти?

Gnaar Пятница, 17.03.2017, 13:33 | Сообщение # 2247


Сообщений: 117
Награды: 7
Замечания: 0%
 
YANexus, Я сам сталкивался с этой проблемой, решение. Ctrl + G. Горячие клавиши отключить или включить оси. Зачем это нужно, я не знаю.

YANexus Пятница, 17.03.2017, 15:29 | Сообщение # 2248

Сообщений: 26
Награды: 0
Замечания: 0%
 
С тем уже проблем давно нет
Снова "дурацкий вопрос": реально ли заставить мелкого скорпиона стрелять только по прямой?
В норме при стрельбе он поворачивается за игроком.Надо чтобы после начала стрельбы он замирал и стрелял в одном направлении


Gnaar Пятница, 17.03.2017, 18:27 | Сообщение # 2249


Сообщений: 117
Награды: 7
Замечания: 0%
 
Я хз, вроде такого параметра нет

YANexus Пятница, 17.03.2017, 23:58 | Сообщение # 2250

Сообщений: 26
Награды: 0
Замечания: 0%
 
Ладно,черт с ним(уже фраза паразит)
Вопрос к знатокам скриптинга: можно ли создать statik model который будет сразу разрушаться от попадания из любого оружия и как отследить через скрипт его уничтожение?


Форум » Serious Sam » Серьёзное редактирование » Помощь по Serious Editor 3+ (Вопросы по редактору карт для Serious Sam HD/3/Fusion)
Поиск:

Статистика


Кто сегодня был