Автор |
Сообщение |
zer0 - Lance Corporal -
| 189 |
|
Отправлено: 08.11.07 13:24:42 |
|
|
dukenator
ты кое-что напутал. В Thing_Hate три параметра, и оно должно иметь вид вроде Thing_Hate(0,777,1) (тид ненавидящего, тид ненавидимого, тип ненависти). Также и в Thing_ChangeTID параметров два, а не один (старый тид, новый тид). В противном случае гоззо ругается, что проставлены не все параметры. Я пробовал сделать зомби Thing_Hate(0,777,3) и объекту Thing_ChangeTID(0,777), но на объект им было глубоко наплевать. Таг, между прочим, можно прописать в самом объекте tag tagname, но это не помогло. |
|
|
| |
dukenator UAC Sergeant Major
| 704 |
|
Отправлено: 08.11.07 16:18:13 |
|
|
zer0
Мда, это геморный способ...
...А че такое тип ненависти? |
|
|
| |
zer0 - Lance Corporal -
| 189 |
|
|
| |
Nil - Lance Corporal -
| 179 |
|
Отправлено: 08.11.07 22:18:59 |
|
|
Вообщем, у меня получилось создать оружие, которое создаёт голограммы, на которые нападают монстры( у этой фигни 1 жизнь, её любой снаряд аннигилирует. Правда, получается, что эту фигню можно в качастве щита юзать ). сайчас пытаюсь разобратся, почему их нельзя убить в ближней атаке, как разберусь, выложу DEHACKED и скрипты.
----
Кажется, не лечится. Ну... муожно представить, что пинки черезвычайно тупы и готовы грызть воздух с утра до вечера(кстати, иногда они её "cъедают", то это происходит сразу - или съедят, или нет. Кстати, какой радиус у игрока? и можно ли поразить в ближнем бою не SOLID объекты?
---
Нет, дело не в высоте и не в радиусе - я все параметры правильно выставил. Может, кто знает, почему пинки не могут прожевать голограмму? |
|
|
| |
zer0 - Lance Corporal -
| 189 |
|
Отправлено: 08.11.07 23:17:05 |
|
|
Nil
лично я в дехакеде не работал, да и хотел сделать это без помощи скриптов. И свою голограмму я собирался сделать бессмертной и -SOLID, но с ограничением на создание одной штуки. До сих пор не придумал как. Они ее игнорируют, хотя таг объекта у вещи и Thing_hate у монстра проставлены верно... Я думал, что они не станут атаковать объекты custominventory. Пробовал сделать его Playerpawn или +ismonster, но разницы нет... |
|
|
| |
Nil - Lance Corporal -
| 179 |
|
Отправлено: 08.11.07 23:21:43 |
|
|
zer0, сори. Я, кажется, написал DEHACKED? а ведь хотел DECORATE Естейственно, декорейт. скрипт есть, даже 2, плюс 1 глобальная переменная. сейчас ещё покопаюсь, если сделаю так, чтобы мне самому понравится, то выложу.
---
Пока отлаживал, заметил, как 2 пинки съели кибера повторили мой рекорд с запиливанием бензопилой мегапаука
---
Вот как у меня :
СКРИПТЫ(ACS Scripts)
//константа
#define MAXMONSTERID 12
//Глобальная переменная
int monsters[MAXMONSTERID];
//скрипт иницализации
script 19 OPEN
{
int i;
for(i=0;i<=MAXMONSTERID;i++)
monsters[i]=103+i;
//bind your monsters here
monsters[MAXMONSTERID-1]=0;
}
//рабочее тело
script 20 (void)
{
int i;
for(i=0;i<MAXMONSTERID;i++)
if(monsters[i]>=0)
Thing_hate(monsters[i],101,0);
}
|
ДЕКОРЕЙТ(DECORATE)
ACTOR holodoomer
{
Height 52
Radius 16
Health 3
Damage 100
RENDERSTYLE "Translucent"
Alpha 0.4
+Shootable +IsMonster +Friendly
states
{
Spawn:
PLAY A 0 A_GetHurt
PLAY A 50 A_Look
PLAY A 0 A_Jump(32,Death)
Loop
See:
PLAY A 0 Thing_ChangeTID(0,101)
PLAY A 0 ACS_Execute(20,0,0,0,0)
PLAY A 50 A_Chase("Missile")
PLAY A 0 A_Jump(32,Death)
Loop
Missile:
PLAY A 50 A_FaceTarget
Goto See
Death:
PLAY A 10 A_SpawnItem("TeleportFog",0,0,0)
Stop
}
}
ACTOR HoloCannon : Weapon 12347
{
//$category Weapons
OBITUARY "%o chewed on %k's fist."
Weapon.SelectionOrder 3600
Inventory.PickupSound "misc/w_pkup"
Inventory.Icon "HOLOA0"
Weapon.AmmoType Cell
Weapon.AmmoGive 20
Weapon.AmmoUse 10
+WEAPON.NOALERT
states
{
Spawn:
HOLG A -1
Stop
Ready:
HOLO A 2 A_WeaponReady
Loop
DeSelect:
HOLO A 1 A_Lower
Loop
Select:
HOLO A 1 A_Raise
Loop
Fire:
HOLO B 10 A_SpawnItem("HoloDoomer",40,0,1,1)
HOLO C 50
HOLO B 5 A_Refire
Goto Ready
}
} |
КЕЙКОНФ(KEYCONF)
weaponsection Halos
addslotdefault 1 HoloCannon |
Всё
нужны текстуры
HOLOA HOLOB HOLOC - Пушка в руках(У меня это был пульт с антенной)
HOLGA - Пушка не земле
Монстрам должны быть приставлены таги от 103 до 111. вроде и 0 годится, но что-то игогда барахлит(или вообще не работает - я ещё не до конца разобрался) Делается это в редакторе конечно, это некоторое неудобство, но всё же довольно практично(лично меня не утруждает выделить всех монстров на карте и дать им один таг, или несколько, если необходимо. Если нужны какие-то особые таги, а не 103-111, то допишите их в 19 скрипте)
Есть ли мнения по этому способу? вроде неплохо работает |
|
|
| |
zer0 - Lance Corporal -
| 189 |
|
Отправлено: 09.11.07 10:26:42 |
|
|
Епт... в скрипте ничего не понял, и принципа работы пока что тоже... нее, я думаю, эту идею я отложу до какого-нибудь другого мода. Пока научусь сам в этом разбираться. |
|
|
| |
dukenator UAC Sergeant Major
| 704 |
|
Отправлено: 09.11.07 12:31:20 |
|
|
Nil : | PLAY A 50 A_Chase("Missile") |
Разве у A_Chase есть параметры ?
...Вот и слушай теперь Def Leppard - от жизни отстать не долго... |
|
|
| |
Nil - Lance Corporal -
| 179 |
|
Отправлено: 09.11.07 12:47:26 |
|
|
dukenator, вроде нет. Можно смело убирать параметры нужны, когда атак больше 2, и есть недефолтные. |
|
|
| |
zer0 - Lance Corporal -
| 189 |
|
Отправлено: 09.11.07 14:37:27 |
|
|
Nil
а можешь на словах объяснить, что именно в этом скрипте заставляет монстров атаковать holodoomer? |
|
|
| |
Nil - Lance Corporal -
| 179 |
|
Отправлено: 09.11.07 16:23:21 |
|
|
zer0, заставляет Thing_Hate, но фишка в том, что нужен TID holodoomer'а и TID монстра. Tid holodoomer'а я меняю в декорейте. Но, оказывается, монстры с TID=0 не хотят работать с thing_hate. Есть идея, по которой можно это всё стандартизировать, т.е. Сделать вад, который при подключении сделает всех монстров восприимчивыми к holocannon. для этого надо всех монстров заменить на производные, которые при респауне вызывают скрипт. В скрипте проверяется, есть ли у них таг, если нет, то назначается 103, если несть, то этот таг добавляется к дополнительным и они тоже становятся восприимчивыми. Это не сложно, но конкретно мне не нужно. Может, и сделаю на досуге.
Сейчас же это приходится делать вручную, т.е. в редакторе ставить всем монстрам 103 таг. или 104-110. если нужны друге, то надо изменить 19 скрипт, добавив в него нужные строчки. |
|
|
| |
zer0 - Lance Corporal -
| 189 |
|
Отправлено: 09.11.07 17:55:51 |
|
|
Я не совсем это имел в виду... Я и через декорейт назначал зомби таг, голограмме таг и вставлял Thing_hate в первый фреймо сиквенса See у зомби. Но они все равно не реагировали на голограмму. И что надо сделать, чтобы это произошло, я так и не понял... |
|
|
| |
Nil - Lance Corporal -
| 179 |
|
Отправлено: 09.11.07 18:34:21 |
|
|
zer0, а хрен его знает Я это добро целый день колупал. Но не вижу смысла делать эти объекты с самого начала уровня - тогда враги ообще не будут атаковать игрока. Точнне, будут это делать в моменты "отвлечения", которые бывают редко(раз в 10 секунд примерно, да и то не факт, что отвлекутся) |
|
|
| |
zer0 - Lance Corporal -
| 189 |
|
Отправлено: 10.11.07 00:23:40 |
|
|
Nil
будут или не будут - это вопрос другой, и это зависит от типа ненависти. Если не ошибаюсь, 3-й тип дает монстру команду атаковать указанную цель + игроков. Вопрос в том, как заставить их вообще обращать на нее внимание. Я не могу сказать, что ничего не добился. Добился одной мелочи: то и дело, собираясь атаковать, зомби не всегда стреляют в игрока, а начинают дергаться и тыкать стволом в другие стороны. Правда все равно не в сторону голограммы. Но в этом что-то есть... |
|
|
| |
Nil - Lance Corporal -
| 179 |
|
Отправлено: 10.11.07 00:34:31 |
|
|
zer0, ты поставил слишком маленькую задержку после вызова Thing_hate. |
|
|
| |
zer0 - Lance Corporal -
| 189 |
|
Отправлено: 10.11.07 11:32:47 |
|
|
Nil
а какая тут может быть нужда в задержке, я не совсем понимаю? Я поставил вызов Thing_Hate один раз во фрейм с нулевой длительностью в начале See. Затем во всех местах анимации зомби заменил goto See на goto See+1, чтобы эта строчка не вызывалась повторно. И о какой задержке идет речь? Кстати, пробовал привязывать его и к Spawn, и другие моменты варьировал - результат не улучшался. |
|
|
| |
Nil - Lance Corporal -
| 179 |
|
Отправлено: 10.11.07 13:17:12 |
|
|
zer0, видишь у меня стоят циферки 50? пока их не было, его нифига не атаковали. это всё, что я смогу сказать. |
|
|
| |
zer0 - Lance Corporal -
| 189 |
|
Отправлено: 10.11.07 23:27:37 |
|
|
Где именно? во фрейме missile? если честно, никак не могу понять, зачем оно нужно. И зачем вообще ему missile... |
|
|
| |
Nil - Lance Corporal -
| 179 |
|
Отправлено: 10.11.07 23:54:07 |
|
|
zer0, чтобы поворачиватся лицом ко врагу если честно, я взял кусок кода змбимена и удалил ненужное, добавил нужное. ещё вопросы есть? |
|
|
| |
Nil - Lance Corporal -
| 179 |
|
Отправлено: 13.11.07 15:10:34 |
|
|
Вад с пушкой. Чтобы её получить, наберите idkfa
или вставте ресурсы вада в ваш мод. на новых врагов не действует, на врагов, наследованных от обычных - хз, не проверял.
Из минусов - что-то они больно быстро стараются к этой голограмме подойти, пропуская некоторые кадры анимации и прыгая на метр вперёд. но это не очень заметно и быстро привыкаешь.
http://timkanil1.narod.ru/Files/HOLOCANNON.wad |
|
|
| |
dukenator UAC Sergeant Major
| 704 |
|
Отправлено: 20.11.07 14:43:40 |
|
|
Возник вот у меня вопрос...
Как можно сделать, чтобы для каждого класса игрока на мапе встречалось именно его оружие?
(как в Кексене) |
|
|
| |
Guest = Warrant Officer =
| 1028 |
|
Отправлено: 20.11.07 19:36:16 |
|
|
Непосредственно в Хексене встроен фильтр по классам навроде думовского фильтра по сложности; если же речь идет о классах игроков в Думе, то как вариант можно сделать спавнер, который в зависимости от типа игрока спавнит то или иное. В спавнер встроить "распознавалку", для чего потребуется АЦС.
В принципе навскидку есть и другие подходы, но их еще проверять надо. |
|
|
| |
dukenator UAC Sergeant Major
| 704 |
|
Отправлено: 21.11.07 05:09:45 |
|
|
Guest : | спавнер, который в зависимости от типа игрока спавнит то или иное. В спавнер встроить "распознавалку", для чего потребуется АЦС. |
Можешь примеры привести? |
|
|
| |
Guest = Warrant Officer =
| 1028 |
|
Отправлено: 21.11.07 09:54:58 |
|
|
dukenator : | Можешь примеры привести? |
Да идея там простая - каждому классу дается уникальный инвентори (или свое количество специнвентори - что-то типа кода), скрипт из тела спавнера проверяет у игрока наличие-отсутствия этого дела, и если да, дает специнвентори уже самому спавнеру для работы джамперов. Короче, глянь в ТА, там эта схема применялась, правда несколько в другом контексте. |
|
|
| |
ii92 Recruit
| 8 |
|
Отправлено: 22.11.07 22:09:48 |
|
|
последняя дата обновления www.costja.narod.ru - 16.03.07!
Вопрос: это конец или будет продолжение? |
|
|
| |
zer0 - Lance Corporal -
| 189 |
|
Отправлено: 24.11.07 13:05:21 |
|
|
Нуждаюсь в совете. Можно ли сделать так, чтобы анимация select/deselect проскакивала мгновенно, и не было паузы между сменами оружия? |
|
|
| |
dukenator UAC Sergeant Major
| 704 |
|
Отправлено: 24.11.07 13:12:51 |
|
|
zer0
Легко, делай так:
Select:
WEAP AAAAAAAAAAAAAAAA 0 A_Raise
WEAP A 1 A_Raise
Loop
Deselect:
WEAP AAAAAAAAAAAAAAAA 0 A_Lower
WEAP A 1 A_Lower
Loop |
|
|
| |
zer0 - Lance Corporal -
| 189 |
|
Отправлено: 24.11.07 13:53:00 |
|
|
dukenator, что-то я не все понял... во-первых, почему куча A, если используется только один фрейм, или это просто для примера?
Во-вторых, как это:
WEAP A 1 0 A_Raise
откуда взялись два числа? 0_о |
|
|
| |
dukenator UAC Sergeant Major
| 704 |
|
Отправлено: 24.11.07 13:54:10 |
|
|
zer0
Исправил...Вот так. |
|
|
| |
zer0 - Lance Corporal -
| 189 |
|
Отправлено: 24.11.07 15:24:45 |
|
|
Спасибо, работает |
|
|
| |