Сайт Doom Power
 ПоискПоиск ВходВход
Маппинг в Doom 3 Пред.  1, 2, 3, 4, 5, 6, 7, 8, 9  След.
   Список разделов - Doom 3 - Маппинг в Doom 3
АвторСообщение
c4tnt
= Corporal =
Next rank: - Lance Corporal - after 28 points
182

Doom Rate: 1.92
Сообщение Отправлено: 06.07.09 19:19:56

Можно, только там со стеклом проблемы были вроде. А как без дверей, все же выпадать будут?
Dragon
= 1st Lieutenant =
Next rank: - 2nd Lieutenant - after 94 points
1346

Doom Rate: 1.49
Сообщение Отправлено: 06.07.09 19:27:57

c4tnt :
А как без дверей, все же выпадать будут?

а внутри пусто. Но разве что одинокий зомби.
+поезд то старый Smile
c4tnt
= Corporal =
Next rank: - Lance Corporal - after 28 points
182

Doom Rate: 1.92
Сообщение Отправлено: 07.07.09 02:41:18

В общем вот минималистический пример поезда:

http://c4tnt.ucoz.ru/load/21-1-0-39

Просто поезд, двигающийся по кольцу и останавливающийся на двух станциях.
Dragon
= 1st Lieutenant =
Next rank: - 2nd Lieutenant - after 94 points
1346

Doom Rate: 1.49
Сообщение Отправлено: 07.07.09 18:27:00

c4tnt
спасибо! А можно сделать что бы поезд взорвался? Или чтобы врезался в стенку и деформировался?
c4tnt
= Corporal =
Next rank: - Lance Corporal - after 28 points
182

Doom Rate: 1.92
Сообщение Отправлено: 07.07.09 18:41:38

Можно, но нормально это получится только в движковом ролике - поучаствовать самому в крушении поезда не получится. В думе там, где поезд взрывался просто меняли модель поезда на модель разрушенного поезда, так же заменялся шлюз и рельс. Заменить одну модель на другую довольно просто - нужно создать два экземпляра модели (func_static), одна нормальная, а вторая - разбитая. У разбитой ставится поле "hide" "1". В нужный момент в скрипте нужно удалить первую модель и показать вторую. Можно прикрыть это эффектом взрыва или просто темнотой.
Archi
Lieutenant Colonel
Next rank: Lieutenant Colonel after 23 points
2187

Doom Rate: 1.68
Сообщение Отправлено: 07.07.09 18:41:51

в 3д максе можешь сделать анимацию деформации. Или выключил свет и переодень модель.
1 1
Bruiser
= Corporal =
Next rank: - Lance Corporal - after 34 points
176

Doom Rate: 2.00
Сообщение Отправлено: 08.07.09 19:01:41

Подскажите пожалуйста, как можно заставить дверь открываться вверх или вниз
c4tnt
= Corporal =
Next rank: - Lance Corporal - after 28 points
182

Doom Rate: 1.92
Сообщение Отправлено: 08.07.09 19:05:28

Выбрать для двери направление UP или DOWN. Кнопки для этого находятся в свойствах объекта (E)
Если редактор не думовский: "movedir" "-1" вверх, "movedir" "-2" вниз.
Bruiser
= Corporal =
Next rank: - Lance Corporal - after 34 points
176

Doom Rate: 2.00
Сообщение Отправлено: 08.07.09 19:13:00

c4tnt, спасибо. А можно сделать, чтобы дверь закрывалась, несмотря на то, что гг стоит в проеме?
c4tnt
= Corporal =
Next rank: - Lance Corporal - after 28 points
182

Doom Rate: 1.92
Сообщение Отправлено: 08.07.09 19:38:34

С последствиями для него:
"dmg" "10" - чем больше число, тем больше последствия для игрока.
"crusher" "1"

Без последствий - поставить target_lock ("locked" "1") и соединить его с дверью. Если этот таргет затриггерить - дверь закроется при первой возможности и будет заблокирована, пока её не разблокируют таким же target_lock, но с "locked" "0"
Bruiser
= Corporal =
Next rank: - Lance Corporal - after 34 points
176

Doom Rate: 2.00
Сообщение Отправлено: 10.07.09 17:12:30

Как можно сделать выключатель для вызова лифта?
c4tnt
= Corporal =
Next rank: - Lance Corporal - after 28 points
182

Doom Rate: 1.92
Сообщение Отправлено: 10.07.09 17:22:56

Поставить GUI-шник gui\doors\elevatorcall...
Соединить GUI с лифтом и указать у GUI параметры:

gui_parm1 = 2= верхний этаж, 1= нижний этаж
gui_parm2 = 1= level1 to level2, or 2= level2 to level3
gui_parm3 = название верхнего этажа
gui_parm4 = название нижнего этажа.

gui_parm5 - делает GUI повреждённым. 1 = опасность пожара, 2 = ошибка панели, 3 = хз, 4 = недостаточно энергии.
Bruiser
= Corporal =
Next rank: - Lance Corporal - after 34 points
176

Doom Rate: 2.00
Сообщение Отправлено: 13.07.09 09:06:58

Скажите пожалуйста как можно сделать телепорт для монстров и как сделать, чтобы trigger_hurt не отнимал у демонов здоровье
c4tnt
= Corporal =
Next rank: - Lance Corporal - after 28 points
182

Doom Rate: 1.92
Сообщение Отправлено: 14.07.09 03:08:04

Скриптом, других вариантов нет.
Bruiser
= Corporal =
Next rank: - Lance Corporal - after 34 points
176

Doom Rate: 2.00
Сообщение Отправлено: 16.07.09 09:45:40

1.Как можно сделать, чтобы в тот момент когда фанк мувер достигал конца сплайна, то сразу "телепортировался" на его начало?
2. Как поместить определенный кусок скрипта в цикл?
Archi
Lieutenant Colonel
Next rank: Lieutenant Colonel after 23 points
2187

Doom Rate: 1.68
Сообщение Отправлено: 16.07.09 10:04:36

1. Повтор цикла.
2. Руками Smile впиши его между знаков {}.
1 1
Bruiser
= Corporal =
Next rank: - Lance Corporal - after 34 points
176

Doom Rate: 2.00
Сообщение Отправлено: 16.07.09 10:22:19

Archi :
Руками Smile впиши его между знаков {}.

Дак все скрипты так написаны Smile . Я имел в виду как сделать, чтобы кусок скрипта бесконечно выполнялся.
Archi :
1. Повтор цикла.

Не пойдойдет. Мне нужно, чтобы один и тот же фанк мувер двигался сначала по 1 сплайну, потом по 2 и т.д и был эффект, что если браш забинденный на сплайн касался земли, то исчезал.
Archi
Lieutenant Colonel
Next rank: Lieutenant Colonel after 23 points
2187

Doom Rate: 1.68
Сообщение Отправлено: 16.07.09 10:35:19

Bruiser :
Дак все скрипты так написаны Smile . Я имел в виду как сделать, чтобы кусок скрипта бесконечно выполнялся.

А!
while(1)
{
скриптЪ.
}
Bruiser :
Не пойдойдет. Мне нужно, чтобы один и тот же фанк мувер двигался сначала по 1 сплайну, потом по 2 и т.д и был эффект, что если браш забинденный на сплайн касался земли, то исчезал.

то что я только что сказал. Smile
1 1
Bruiser
= Corporal =
Next rank: - Lance Corporal - after 34 points
176

Doom Rate: 2.00
Сообщение Отправлено: 16.07.09 13:57:04

Archi, че-то не получается бесконечный цикл в скрипте. В консоли пишет: line 124 expected ";" found while. Вот кусок скрипта:
void OrderedSpawn()
while(1)
{
randomspawn($spawner1);
sys.wait(5);
randomspawn($spawner2);
}
c4tnt
= Corporal =
Next rank: - Lance Corporal - after 28 points
182

Doom Rate: 1.92
Сообщение Отправлено: 16.07.09 14:07:24

void OrderedSpawn()
{
while(1)
{
randomspawn($spawner1);
sys.wait(5);
randomspawn($spawner2);
}
}

Но лучше так:

void OrderedSpawn()
{
while(!(!$spawner1)) && !(!$spawner2)))
{
randomspawn($spawner1);
sys.wait(5);
randomspawn($spawner2);
}
}


!(!$spawner1)) - проверка на существование объекта.
Иначе если снесёшь оба спавнера - будет совсем пустой и ненужный цикл.


Как можно сделать, чтобы в тот момент когда фанк мувер достигал конца сплайна, то сразу "телепортировался" на его начало?


Просто нужно подождать, пока объект пройдёт по первому сплайну до конца:

sys.waitFor($объект);

И стартовать его по второму сплайну - на начало сплайна объект переберётся сам:

$объект.startSpline($объект_с_нужным_сплайном);

Ещё может понадобиться команда $объект.removeInitialSplineAngles(); если объект движется по сплайну не под тем углом.

И ещё немного подробностей на тему:

как можно сделать телепорт для монстров и как сделать, чтобы trigger_hurt не отнимал у демонов здоровье


В триггерах есть такой непонятный триггер, как trigger_touch. Он всегда работает со скриптовой функцией, причём функция имеет нестандартный вид:

void func_name(entity some_entity)
{
}

Так вот, что он делает? Триггер проверяет каждый кадр свои внутренности на наличие объектов, и для каждого объекта, который попал внутрь, вызывает указанную функцию скрипта. Параметром у этой функции как раз является объект.

После этого в скрипте неплохо было бы профильтровать объекты, например так:

void func_name(entity someentity)
{
string class = someentity.getKey("spawnclass");

if (class = "idAI")
{
//Попалось что-то живое
return;
}
if (class == "idAFEntity_Generic")
{
//Попался трупешник
return;
}
if (class == "idPlayer")
{
//Думера зохавали!
return;
}
if (class == "idProjectile")
{
//Можно ли остановить пулю?
//Быстрые проджектайлы триггер может и не поймать.
return;
}
}

Спавнкласс любого интересного объекта можно посмотреть в соответствующем def файле в поле "spawnclass" соответственно. Ну а сделать из скрипта с объектом можно всё, что угодно.
Bruiser
= Corporal =
Next rank: - Lance Corporal - after 34 points
176

Doom Rate: 2.00
Сообщение Отправлено: 16.07.09 18:27:03

c4tnt, спасибо. Сейчас гляну...
Кстати двигать трупака по воздуху обязательно через скрипт? Можно же наверное просто его забиндить к фанк муверу
Ещё кое-что:можно ли чтобы на фанк дверь оставались следы от пуль и крови монстров?
c4tnt
= Corporal =
Next rank: - Lance Corporal - after 28 points
182

Doom Rate: 1.92
Сообщение Отправлено: 16.07.09 18:39:34

Так вроде остаются же?


Кстати двигать трупака по воздуху обязательно через скрипт? Можно же наверное просто его забиндить к фанк муверу

Можно, но только по одному сплайну.

Кстати, вот тут: http://c4tnt.ucoz.ru/forum/32-64-1 есть ещё свободные места. One monster для Doom3. Может кто присоединится.
Bruiser
= Corporal =
Next rank: - Lance Corporal - after 34 points
176

Doom Rate: 2.00
Сообщение Отправлено: 16.07.09 18:47:55

c4tnt :
Так вроде остаются же?

Нет. Кстати у меня ещё карта не запускается пишет-line 124 func_mover_1 unknown value
Вот скрипт:
void test()
{
$func_mover_1.startSpline( $route1);
sys.waitFor($func_mover_1);
func_mover_1.startSpline( $route2);
}
c4tnt
= Corporal =
Next rank: - Lance Corporal - after 28 points
182

Doom Rate: 1.92
Сообщение Отправлено: 16.07.09 18:50:06

А у тебя на карте func_mover_1 вообще присутствует?
Bruiser
= Corporal =
Next rank: - Lance Corporal - after 34 points
176

Doom Rate: 2.00
Сообщение Отправлено: 16.07.09 18:51:42

Да. И до того как я поставил 2 функ статик со сплайном все работало
c4tnt
= Corporal =
Next rank: - Lance Corporal - after 28 points
182

Doom Rate: 1.92
Сообщение Отправлено: 16.07.09 18:53:51

А там знак $ пропущен в последней строке. Дум он такой - без баксов не работает
Bruiser
= Corporal =
Next rank: - Lance Corporal - after 34 points
176

Doom Rate: 2.00
Сообщение Отправлено: 17.07.09 12:10:27

1. Что означает ключ dmg в свойствах фанк ротейтинг? 2.Можно ли сделать, чтобы карта не тряслась при ходьбе макубусов, рыцарей и баронов ада?
G-Man
= Sergeant =
Next rank: - Master Sergeant - after 49 points
451

Doom Rate: 0.97
Сообщение Отправлено: 17.07.09 12:12:31

Баронов ада в Doom 3 нет. Есть только хеллнайты.
1
Bruiser
= Corporal =
Next rank: - Lance Corporal - after 34 points
176

Doom Rate: 2.00
Сообщение Отправлено: 17.07.09 12:15:05

G-Man :
Баронов ада в Doom 3 нет

G-Man скачай этот мод http://doom3.filefront.com/file/Doom3_Demon_Expansion_Pack;71076 и будут Surprised
Archi
Lieutenant Colonel
Next rank: Lieutenant Colonel after 23 points
2187

Doom Rate: 1.68
Сообщение Отправлено: 17.07.09 13:07:11

Bruiser
меняй сандсеквиенсы. Там есть какая то функция, отвечающая за тряску.
1 1
Страница 7 из 9Перейти наверх Пред.  1, 2, 3, 4, 5, 6, 7, 8, 9  След.
   Список разделов - Doom 3 - Маппинг в Doom 3