Welcome to U.A.C. [O.S.A.]
login / register
Status: Guest
Архивы форума | iddqd.ru
Wolf 3D
ПравилаПравила ПоискПоиск
18+
Создание монстра в Doom'e Пред.  1, 2, 3 ... 15, 16, 17 ... 19, 20, 21  След.
   Список разделов - Флуд и устаревшие темы - Создание монстра в Doom'eОтветить
АвторСообщение
nprotect
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 97 points
1343

Doom Rate: 2.45

Ссылка на пост №301 Отправлено: 28.01.09 17:00:42
Archi:
Ну я ашипся. Но делай лучше так:

Actor ZombieManSpawner : RandomSpawner 6001 {
DropItem "Clip"
DropItem ""
DropItem "Zombieman" }


в этом случае по идее либо будут спавниться патроны, либо ничего, либо зомби. ща проверю
1 2 1
Phosgene
= UAC Gunner =
Next rank: - Corporal - after 20 points
60

Doom Rate: 1.84

Ссылка на пост №302 Отправлено: 28.01.09 17:01:53
nprotect
Это нужно создавать новый wad, копировать в него все мои wadы, создавать в wadе ламп и туда писать это?
Я правильно понял?
krovopijca
Гость

Ссылка на пост №303 Отправлено: 28.01.09 17:03:16
Вот так будет спавниться один из трех типов зомби.
Actor CustomZombieSpawner : RandomSpawner replaces ZombieMan 
{ 
DropItem 150 "ZombieMan" 
DropItem 100 "ShotgunGuy" 
DropItem 50 "ChaingunGuy" 
}
nprotect
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 97 points
1343

Doom Rate: 2.45

Ссылка на пост №304 Отправлено: 28.01.09 17:06:57
Phosgene
можно отдельно вадники подключать. несколько :) но лучше все в один, удобнее как-то.

проверил код.

Actor ZombieManSpawner : RandomSpawner replaces ZombieMan
{
DropItem "Clip"
DropItem "DoomImp"
DropItem "Zombieman"
}


вот так прекрасно работает. все зомби заменяются рандомно опять же на зомби, импа или патроны. как повезет. на МАП01 из дум2.вад вместо двух зомбей что-то интересное выпадает :)


а так нельзя:

DropItem ""

пишет, что актор "" не найден. оно и понятно :)

Добавлено спустя 21 секунду:

krovopijca:
DropItem 150 "ZombieMan"
DropItem 100 "ShotgunGuy"
DropItem 50 "ChaingunGuy"

старый синтаксис, не катит. в последних версиях ошибку выдает. и в 1-1-06, и в 1-1-04 гздума.

надо по-новому: http://zdoom.org/wiki/Classes:RandomSpawner :)
1 2 1
Phosgene
= UAC Gunner =
Next rank: - Corporal - after 20 points
60

Doom Rate: 1.84

Ссылка на пост №305 Отправлено: 28.01.09 17:08:49
Сейчас обмозгую и проверю. Спасибо. Напишу что получится.
nprotect
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 97 points
1343

Doom Rate: 2.45

Ссылка на пост №306 Отправлено: 28.01.09 17:18:11
так значиццо, мяу разобрался с новым синтаксисом:


DropItem "ZombieMan" 255 50
DropItem "DoomImp" 255 50
DropItem "HellKnight" 128 20
DropItem "BaronOfHell" 64 10


вторая цифра - шанс спавна одного из четырех акторов. то есть складываем: 50+50+20+10=130, и зомби будет спавниться с вероятностью: 50/130 = 38%. имп тоже 38%. хеллнайт: 20/130=15%. барон: 10/130= 7.5%.

а первая цифра означает, что допустим если выбрался зомби, то он будет спавниться всегда, так как стоит 255.

если выбрался имп, тоже всегда. если выбрался хеллнайт, то только в 50% случаев. а барон будет спавниться в 25% случаев, если даже ему повезет и он выбрался.

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

Добавлено спустя 7 минут 41 секунду:
________________________________________________________________


и кстати еще один момент. если мы заменяем зомбимена на рандомспавнер, и В СПИСКЕ спавна есть зомбимен, то это не есть хорошо.

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

на здум вики из этой ситуации выходят созданием копии зомбимена:

actor ZombieMan2 : ZombieMan {}

actor ZombieReplacer : RandomSpawner replaces ZombieMan
{
DropItem "ZombieMan2" 255 3
DropItem "ShotgunGuy" 255 1
}


и таким образом, он сможет спавниться наравне с остальными :)
1 2 1
Phosgene
= UAC Gunner =
Next rank: - Corporal - after 20 points
60

Doom Rate: 1.84

Ссылка на пост №307 Отправлено: 28.01.09 17:41:45
Ничего не вышло. Скопировал в один wad файлы из монстров RapidFireTrooper, RocketZombie, PlasmaZombie, создал новый ламп, в него вписал:

Actor ZombieManSpawner : RandomSpawner replaces ZombieMan
{
DropItem "RapidFireTrooper"
DropItem "RocketZombie"
DropItem "PlasmaZombie"
}

Зомбиманы так и остались зомбиманами, ни кто из них не изменился. У меня GZDoom 1.1.06.
nprotect
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 97 points
1343

Doom Rate: 2.45

Ссылка на пост №308 Отправлено: 28.01.09 17:43:20
Phosgene
скинь вадник в личку, посмотрю :)

а то будет как в соседней теме - запихнули декорейт между маркерами спрайтов, и долго удивлялись почему нифига не получается. и код правильный главное был сначала
1 2 1
Phosgene
= UAC Gunner =
Next rank: - Corporal - after 20 points
60

Doom Rate: 1.84

Ссылка на пост №309 Отправлено: 28.01.09 17:47:27
nprotect
А как его скинуть?
krovopijca
Гость

Ссылка на пост №310 Отправлено: 28.01.09 17:56:04
Пытался написать код спавна через jump.
Зомби так и остаются зомби:

Actor ZombieManCopy : ZombieMan replaces ZombieMan
{}
Actor CustomZombieSpawner replaces ZombieMan
{
states
{
spawn:
  TNT1 A 0 A_Jump(250, 2)
  TNT1 A 0 A_SpawnItem("ZombieManCopy",0,0,0)
  goto death
  TNT1 A 0 A_SpawnItem("ChaingunGuy",0,0,0)
  goto death
death:
  TNT1 A 0
  stop
}
}
nprotect
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 97 points
1343

Doom Rate: 2.45

Ссылка на пост №311 Отправлено: 28.01.09 21:54:25
krovopijca
так тоже можно. но если из большого числа итемов надо выбирать, через dropitem явно удобнее
1 2 1
Archi]ASTS[
= Commissar =
Next rank: - UAC Commissar - after 395 points
5405

Doom Rate: 1.9

Posts quality: +61
Ссылка на пост №312 Отправлено: 29.01.09 16:28:45
Ну это уже понятно :) Спасибо всем за такую хорошую информацию!
ЗЫ тут
DropItem "" 

Должен был быть Шотган :) Но он почемуто на вывелся, хотя я писал :)
1 2 1
vlr66
- Corporal -
Next rank: = Corporal = after 12 points
88

Doom Rate: 1.96

Posts quality: +3
Ссылка на пост №313 Отправлено: 11.05.09 14:18:08
Уважаемые, помогите решить проблему. Вот пример нового монстра. Fatso заменяется на mancubus из doom3. Где и что тут нужно прописать, чтобы стены на 7 карте в doom2 опустились. В декорейте для чайников в самом конце об этом написано, но для меня пока сложновато. Пожалуйста, тыкните пальцем (т.е. пропишите что нужно). У меня гозо 1.2.01


actor THE-MANCUBUS replaces Fatso 67
{
spawnid 157
obituary "%o was squashed by a THE-MANCUBUS."
health 1400
radius 50
height 70
mass 10000
speed 6
scale 0.65
painchance 80
seesound "fatso/sight"
painsound "fatso/pain"
deathsound "fatso/death"
activesound "fatso/active"
MONSTER
+FLOORCLIP
states
{
Spawn:
MAN2 A 4 A_Look
loop
See:
MAN8 ABCD 3 A_Chase
MAN8 D 0 A_Hoof
MAN8 EFGHIJKL 3 A_Chase
MAN8 L 0 A_Hoof
MAN8 M 3
loop
Melee:
MAN4 A 1 A_FaceTarget
MAN4 BCDEFGHIJKLMNOP 1
REVM H 0 A_SkelWhoosh
REVM H 0 A_FaceTarget
REVM H 0 A_SkelFist
MAN4 QRSTUVWXYZ 1
MAN5 AB 1
Goto See
Missile:
MAN6 A 1 A_FaceTarget
MAN6 BCDEGHI 1
MAN6 J 0 A_PLAYSOUND("MANFIRE")
MAN6 J 1 Bright A_CustomMissile("MANCUBUSBALL",45,5,1)
MAN6 J 1 Bright A_CustomMissile("MANCUBUSBALL",45,5,1)
MAN6 KLMNOPQR 1
MAN6 J 0 A_PLAYSOUND("MANFIRE")
MAN6 S 1 Bright A_CustomMissile("MANCUBUSBALL",45,5,1)
MAN6 S 1 Bright A_CustomMissile("MANCUBUSBALL",45,5,1)
MAN6 TUVWXYZGEDCBA 1
goto See
Pain:
MAN3 A 1
MAN3 B 1 A_Pain
MAN3 CDEFGHIJKLMNOP 1
goto SEE
Death:
MAN4 A 3
MAN4 B 3 A_Scream
MAN4 C 3 A_NoBlocking
MAN4 DEFGHIJKLMNOP 3
MAN4 Q 2
stop
Raise:
MAN4 PONMLKJIHGFEDCBA 1
goto See
}
}
1
Часовщик
= Corporal =
Next rank: - Lance Corporal - after 13 points
117

Doom Rate: 3.41

Ссылка на пост №314 Отправлено: 11.05.09 15:37:35
сделай родного манкубуса безвредным, неосязаемым, невидимым и нещитаемым. спонь его рядом с новым жирдяем. и с помощью команды А_киллчилдрен у нового манкубуса убивай этого. все будет пахать.
или попробуй приравнять нового манкубуса с старым

actor THE-MANCUBUS replaces Fatso : Fatso
{
...
}

не проверял, но поидее должно пахать.
1
vlr66
- Corporal -
Next rank: = Corporal = after 12 points
88

Doom Rate: 1.96

Posts quality: +3
Ссылка на пост №315 Отправлено: 11.05.09 15:47:39
<сделай родного манкубуса безвредным, неосязаемым, невидимым и нещитаемым...
Я про это уже читал в "декорейте для чайников", но как и где прописать, пока для меня сложно. Поэтому и выложил полный пример. А подменить новые параметры под старого пробовал, не помогло.
1
Часовщик
= Corporal =
Next rank: - Lance Corporal - after 13 points
117

Doom Rate: 3.41

Ссылка на пост №316 Отправлено: 11.05.09 16:24:45
посмотри главу про флаги. в общем старый манкубус должен быть:
альфа 1.0
-ОСЯЗАЕМЫЙ
-ЩИТАЕМЫЙ
+ДРУЖЕЛЮБНЫЙ
у него в стэйте атаки не должно быть атаки (простите за тафтологию) иначе он замочет своего родителя.
вообще я точно этого не изучал. попробуй посмотреть на вики код манкубуса (фэтсо) и замени в нём то что хочешь.
1
Dragon
= Sergeant Major =
Next rank: UAC Sergeant Major after 14 points
666

Doom Rate: 2.12

Posts quality: +4
Ссылка на пост №317 Отправлено: 11.05.09 17:22:16
Часовщик:
actor THE-MANCUBUS replaces Fatso : Fatso { ... }

Мдя.
actor THE-MANCUBUS : Fatso replaces Fatso
1
vlr66
- Corporal -
Next rank: = Corporal = after 12 points
88

Doom Rate: 1.96

Posts quality: +3
Ссылка на пост №318 Отправлено: 11.05.09 17:33:18
Что тут нужно подправить или удалить? (если можно, подправьте и выложите)

actor Fatso 67
{
spawnid 112
obituary "%o was squashed by a mancubus."
health 600
radius 48
height 64
mass 1000
speed 8
painchance 80
seesound "fatso/sight"
painsound "fatso/pain"
deathsound "fatso/death"
activesound "fatso/active"
MONSTER
+FLOORCLIP
states
{
Spawn:
FATT AB 15 A_Look
loop
See:
FATT AABBCCDDEEFF 4 A_Chase
loop
Missile:
FATT G 20 A_FatRaise
FATT H 10 bright A_FatAttack1 // See FatShot
FATT IG 5 A_FaceTarget
FATT H 10 bright A_FatAttack2
FATT IG 5 A_FaceTarget
FATT H 10 bright A_FatAttack3
FATT IG 5 A_FaceTarget
goto See
Pain:
FATT J 3
FATT J 3 A_Pain
goto See
Death:
FATT K 6
FATT L 6 A_Scream
FATT M 6 A_NoBlocking
FATT NOPQRS 6
FATT T -1 A_BossDeath
stop
Raise:
FATT RQPONMLK 5
goto See
}
}
1
nprotect
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 97 points
1343

Doom Rate: 2.45

Ссылка на пост №319 Отправлено: 11.05.09 18:02:58
Часовщик:
альфа 1.0 -ОСЯЗАЕМЫЙ -ЩИТАЕМЫЙ +ДРУЖЕЛЮБНЫЙ

может скорее альфа 0? раз он невидмым должен быть

либо просто
renderstyle none



vlr66
"-ОСЯЗАЕМЫЙ" это -SOLID
"-ЩИТАЕМЫЙ" это -COUNTKILL
"+ДРУЖЕЛЮБНЫЙ" это +FRIENDLY

это и добавляешь в код. почитать про синтаксис можно тут:
http://zdoom.org/wiki/DECORATE

все флаги:
http://zdoom.org/wiki/Actor_flags

Добавлено спустя 3 минуты 11 секунд:

правда, я не совсем понял, зачем friendly флаг. можно же просто +DORMANT написать
1 2 1
Часовщик
= Corporal =
Next rank: - Lance Corporal - after 13 points
117

Doom Rate: 3.41

Ссылка на пост №320 Отправлено: 11.05.09 18:09:56
Dragon:
Мдя.

nprotect:
может скорее альфа 0?

ну ашипся я, простите.
1
Страница 16 из 21Перейти наверх Пред.  1, 2, 3 ... 15, 16, 17 ... 19, 20, 21  След.
   Список разделов - Флуд и устаревшие темы - Создание монстра в Doom'e