Регистрация    Вход    Форум    Поиск    FAQ

Список форумов » Маппинг и моддинг в doom




Начать новую тему Ответить на тему  [ Сообщений: 31 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 29 июл 2011, 10:49 
Не в сети
ПЕРВЫЙ СЕРЖАНТ (2 ЗВЕЗДЫ)
ПЕРВЫЙ СЕРЖАНТ (2 ЗВЕЗДЫ)
Аватара пользователя

Зарегистрирован: 03 июл 2011, 16:43
Сообщения: 948
Откуда: Россия, Омск
Медали: 4
Медаль хорошему модератору (1) Самый активный форумчанен (1) Вебмастер (1)
Вклад в развитие этого форума (1)
Любимый порт: Речной
Любимое оружие: МБР РС-12М2 "Тополь-М"
-ILOK- TRANE писал(а):
Давай только не будем начинать тут эту ахнею, хорошо? Лучшеб написал чё нить по делу.

Да! я не по делу пишу! да! я всегда всякую бредятину пишу! да!!! я такой, сякой!!! да! достали все!!! особенно ты!
я обиделся...... у меня и так всё хреново, всем пока!





Просьба не надо кипятиться! Скаладин

_________________
Зам.Клан-Лидера

Изображение


Вернуться к началу 
 Профиль  
 
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 29 июл 2011, 10:50 
Не в сети
ГЛАВНЫЙ ПРАПОРЩИК 2
ГЛАВНЫЙ ПРАПОРЩИК 2
Аватара пользователя

Зарегистрирован: 02 июл 2011, 20:37
Сообщения: 1919
Откуда: Самара
Медали: 4
Хороший администратор (1) За хорошую дуэльную мапу (1) Самый активный форумчанен (1)
Вебмастер (1)
Любимый порт: gzdoom
Любимое оружие: Двухстволка и бфг9000
Любимые карты в Duel32: SSL2, judas, oblivx, shoot, king, moo, dwango-map07
-ILOK- TRANE писал(а):
погляди la-world, там как раз есть фишка с ракетами

Я в Zpack видел эти фишки, надо будет посмотреть...

_________________
Клан-Лидер


Вернуться к началу 
 Профиль  
 
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 29 июл 2011, 10:54 
Не в сети
СЕРЖАНТ (2 ЗВЕЗДЫ)
СЕРЖАНТ (2 ЗВЕЗДЫ)
Аватара пользователя

Зарегистрирован: 03 июл 2011, 09:13
Сообщения: 298
Медали: 4
Полезное сообщение (2) За хороший проект в маппинге (1) За хороший мод для DOOM (1)
Любимый порт: GZDOOM, SKULLTAG
Любимое оружие: ССГ, Плазмаган
Любимые карты в Duel32: Нет таких, не больно люблю дуэли. Я больше люблю кооператив.
-ILOK- GenesisOmega не буду разводить холивар, но лучше не будем писать всякую фигню друг другу, ок? Всё заканчиваем этот трёп и возвращаемся к теме, а то начался офтоп)

_________________
TRANE


Вернуться к началу 
 Профиль  
 
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 29 июл 2011, 10:56 
Не в сети
ГЛАВНЫЙ ПРАПОРЩИК 2
ГЛАВНЫЙ ПРАПОРЩИК 2
Аватара пользователя

Зарегистрирован: 02 июл 2011, 20:37
Сообщения: 1919
Откуда: Самара
Медали: 4
Хороший администратор (1) За хорошую дуэльную мапу (1) Самый активный форумчанен (1)
Вебмастер (1)
Любимый порт: gzdoom
Любимое оружие: Двухстволка и бфг9000
Любимые карты в Duel32: SSL2, judas, oblivx, shoot, king, moo, dwango-map07
-ILOK- TRANE
Ну так как посмотреть мн в зпарке скрипт этот?

_________________
Клан-Лидер


Вернуться к началу 
 Профиль  
 
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 29 июл 2011, 11:03 
Не в сети
СЕРЖАНТ (2 ЗВЕЗДЫ)
СЕРЖАНТ (2 ЗВЕЗДЫ)
Аватара пользователя

Зарегистрирован: 03 июл 2011, 09:13
Сообщения: 298
Медали: 4
Полезное сообщение (2) За хороший проект в маппинге (1) За хороший мод для DOOM (1)
Любимый порт: GZDOOM, SKULLTAG
Любимое оружие: ССГ, Плазмаган
Любимые карты в Duel32: Нет таких, не больно люблю дуэли. Я больше люблю кооператив.
скрипт надо извлечь из вада и раскомпилировать(он по идее скомпилированный должен быть, хотя бывает и иначе), а далее проискивать по координатам(где ракеты вылетают, думаю в думбилдере места должны быть как нить помечены). Далее дело техники - методом научного тыка правишь код спавна ракет в нужных местах(или лучше основываясь на этом скрипте, пишешь свой). Да и ещё раз говорю - я ещё не постиг АЦ пока что, так что всё растолковать не смогу(пока скриптить именно под мапу не пробовал)

-- 5 месяцев 9 дней 8 часов 45 секунд --

Долго думал о том, что же написать в уроке про декорейт.
Многим на ум приходит попытка запилить свои собственные оружия, монстров и т.п. Все естесно сталкиваются с проблемой не понимания основ и примитивов. Для интереса я попытаюсь объяснить как я понимаю вообще декорейт. Мб это поможет начинающим понять основы и поможет не запутаться.

Первым делом надо запомнить 2 очень хороших сайта - гугл и здум-вики. Так же в инете есть "декорейт для чайников", небольшой справочник на русском. Для чего это? - это поможет потом в отыскивании нужных инструкций(команд, опкодов, как угодно можно назвать).

Чтоже такое декорейт - говорят разные вещи, но я скажу как понимаю я - язык, который отдаёт отдаёт сильно ЛУА скриптами. Отличие этого языка к примеру от того же АЦС - его не нужно компилировать. Компиляция происходит непосредственно уже в самой игре, а если говорить ещё точнее - то при запуске(да да, окошечко там вылазит где и т.п.). Это в свою очередь помогает извлекать грубые ошибки.

Стоит запомнить одну вещь - в игре любой предмет\игрок\дерево\монстр\оружие - это "АКТОР".
Конструкция любого оружия\вещи\монстра примерно такова:

ACTOR "Название актора" : "Тип актора"
{
Параметры\флаги
{
Код самого актора. Часто говорят, что тут стейты, я называю их потоками.
}
}

Последние две скобки завершающие.

Собственно на счёт имени актора - вроде как на имя игра никак не реагирует, т.е. регистр букв(строчные или заглавные) может быть абсолютно любой. На счёт кол-ва символов в имени я не помню, но советую не использовать больно длинные имена.

Собсна в типе актора прописывается для чего этот актор и что он делает.
У монстров тип не указывается. У оружий\инвенторий и подобных фентифлюшек всё это указывается. Т.е. нельзя игроку выдать оружие, если там не указано, что это оружие.
Так же на месте типа может указываться на чём актор будет основываться. Об этом будет немного по позже.

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

У монстров\оружий\инвенторий\ потоки разные - не думайте в оружии использовать потоки от монстра например, игра просто начнёт тупить или выдаст ошибку при компиляции.

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

Пистолет, начнём пожалуй.
ACTOR Pistol : DoomWeapon 5010
{
Game Doom
Weapon.SelectionOrder 1900
Weapon.AmmoUse 1
Weapon.AmmoGive 20
Weapon.AmmoType "Clip"
Obituary "$OB_MPPISTOL"
+WEAPON.WIMPY_WEAPON
Inventory.Pickupmessage "$PICKUP_PISTOL_DROPPED"
Tag "$TAG_PISTOL"
States
{
Ready:
PISG A 1 A_WeaponReady
Loop
Deselect:
PISG A 1 A_Lower
Loop
Select:
PISG A 1 A_Raise
Loop
Fire:
PISG A 4
PISG B 6 A_FirePistol
PISG C 4
PISG B 5 A_ReFire
Goto Ready
Flash:
PISF A 7 Bright A_Light1
Goto LightDone
PISF A 7 Bright A_Light1
Goto LightDone
Spawn:
PIST A -1
Stop
}
}

Начнём с самой первой строки.
ACTOR Pistol : DoomWeapon 5010
ACTOR - актор
Pistol - имя актора оружия, в данном случае это пистолет, название его актора.
DoomWeapon - тип, вообще я хочу заметить одну вещь, что это зашитый в движок тип и он указывает непосредственно, что это думовское оружие. Когда будете пробывать создать своё оружие, указывайте просто Weapon во избежании ошибок.
5010 - на это число не обращаем внимание, это тоже стандартное число, пробитое в движке. Нахрена оно, я так и не понял. Если вздумаете брать для модифицирования актор какого либо оружия из gzdoom.pk3, то удаляйте сразу же подобные вещи.

Далее у нас идут параметры оружия.
Game Doom - указывает, что оружия для игры дум, как мы помним, есть ещё херетик и т.п.
Weapon.SelectionOrder 1900 - это параметр автоматического выбора оружия. Приориет выставляет. Обычно к примеру в думе тот же рокетланчер выбирается самым последним, если патронов нет - собсна этот параметр и делает подобную фишку.
Weapon.AmmoUse 1 - сколько патронов юзает оружие при выстреле
Weapon.AmmoGive 20 - сколько патронов даётся при подборе оружия. Я не знаю зачем тут онное значение, ведь пистолета грубо говоря в думе в открытом виде не найти. Он заранее в руках игрока.
Weapon.AmmoType "Clip" - какой тип патронов использует данное оружие. В данном случае пистолетные патроны.
Obituary "$OB_MPPISTOL" - тут у нас надпись, вроде при смерти игрока от данного оружия выльется данная мессага. Состоит из двух частей $OB_MP и PISTOL. $OB_MP - точно не помню, что это, но там фиксированное слово. Работает это в мультиплеере.
+WEAPON.WIMPY_WEAPON - это указывает игре на то, что оружие слабое. Если например патронов на шотгане нет, то при подборе этих самых патроновигра автоматом переключит на сам шотган.
Inventory.Pickupmessage "$PICKUP_PISTOL_DROPPED" - пишет на экране мессагу(сообщение), о том, что подобрано данное оружие. Сюда можно тупо прописать что то своё.
Tag "$TAG_PISTOL" - индивидуальный таг оружия.

И так вот мы приблизились к концу, к потокам или как их ещё называют - стейтам оружия.
States - стейты(потоки)
{
Ready: - тут у нас пишется то, что будет происходить на экране, когда оружие уже выбрано.
PISG A 1 A_WeaponReady
PISG - название спрайта пистолета.
A - кадр, который висит в данный момент на экране. О кадрах я напишу по ниже.
1 - скорость проигрывания кадра, ещё их называют тиками.
A_WeaponReady - инструкция, которая говорит, что оружие в данный момент находится в неактивном состоянии. Кстати говоря если этой инструкции не будет в данном потоке, то оружие всегда будет в том месте, в котором вы его назначили. Т.е. при хотьбе\беге оно не будет двигаться ни при каких условиях. Обычно если вы не делаете чего то необычного, то данную инструкцию надо ставить в своём оружии, дабы оно нормально реагировало на бег) Но кстати говоря движение оружия при беге\хотьбе можно поменять, как и поведение камеры.
Loop - повторять, это что то типа конца данного потока, говорит повторять его без конца.
Deselect: - поток, который отвечает за убирание оружия, за тот момент, когда оружие убирается и выбирается другое.
PISG A 1 A_Lower
PISG A 1 - как я писал выше, название спрайта, кадр и скорость проигрывания.
A_Lower - Это что то типа автоматического убирания оружия из полезрения, т.е. говорит оружию плавно спускаться вниз, при достижении минимальной точки невидимости сразу же выбирается другое оружие.
Loop - как и писалось выше, повторять выполнение кода
Select: - данный поток, отвечает за то, что происходит на экране, когда данное оружие выбирается.
PISG A 1 A_Raise
PISG A 1 - как я писал выше, название спрайта, кадр и скорость проигрывания.
A_Raise - медленно поднимает оружие вверх, до нужного момента(а если говорить точнее - офсета). Тоже автоматическое, как и в deselect A_Lower
Loop - повторять
Fire: - самое интересное место, поток, который отвечает за стрельбу данного оружия.
PISG A 4 - как я писал выше, название спрайта, кадр и скорость проигрывания.
PISG B 6 A_FirePistol
PISG B 6 - как я писал выше, название спрайта, кадр и скорость проигрывания.
A_FirePistol - инструкция, зашитая в движок дума, говорит выстрелить 1 простой пулей с определённым разбросом. Если буду писать другой урок, то расскажу, как задать свой разброс, свой тип пуль и т.п.)
PISG C 4 - как я писал выше, название спрайта, кадр и скорость проигрывания.
PISG B 5 A_ReFire
PISG B 5 - как я писал выше, название спрайта, кадр и скорость проигрывания.
A_ReFire - эта инструкция говорит выполнять код выстрела заного, если зажата клавиша выстрела(ну или так часто нажимается). Для альтфаира такая инструкция тоже работает.
Goto Ready - после выстрела игра автоматически переходит в поток готовности оружия.
Flash: - этот поток особый, работает он по особому, одновременно с потоком Fire. Наверняка когда просмотривали спрайты пистолета, вы замечали, что у него есть отдельные спрайты выстрела. Вот собственно эта штука и происходит тут. Совмещает спрайты простого выстрела и спрайты огня.
PISF A 7 Bright A_Light1
PISF A 7 - как я писал выше, название спрайта, кадр и скорость проигрывания.
Bright - это означает, что при вопроизведении данного кадра, он засветится как сам, так и будет ещё непосредственно свет на уровне. Типа свет от выстрелов(точнее иммитация)
A_Light1 - это я не помню что, но вроде бы тоже зашитая в движок инструкция, относящаяся к пистолету.
Goto LightDone - закончить совмещение.
PISF A 7 Bright A_Light1
Goto LightDone
- тут тоже самое, что и выше.
Spawn: - показывает то, как выглядит пистолет в самой игре, как валяется на уровне. Ну это технически говоря конечно.
PIST A -1 - как я писал выше, название спрайта, кадр и скорость проигрывания, но тут я хочу заметить, что -1 говорит игре, что спрайт показывается не 1 раз, а постоянно.
Stop - обозначает остановить.
}
}

И так в конец напишу одну вещь на счёт кадров, чтобы наконец стало понятно, что да как, зачем и почему именно в таком виде.

Возьмём название спрайта нашего пистолета
PISGA0 - у него особая конструкция. PISG - это название, A - это название кадра, а 0 обозначает, что у спрайта нет сторон и он одноразовый. Так же наверное вы заметите, что такое и у монстров и остальных оружий.
PISG A 1 - теперь сравним и то и это)
Надеюсь сходство видно и мне не придётся рассказывать об этом ещё раз)

Так вот на счёт названий и кадров.
У всех спрайтов предметов\монстров\игрока\оружий название спрайта всего 4 символа. Замечу так же, что это правило стоит усвоить при подготовке своих спрайтов. Сначала идёт название из 4-х символов(даже можно совать числа), потом название кадра и потом угол поворота(одноразовость, для оружий нужно ставить нули, ибо сторон то у него нет на экране).
Углы поворота можно поставить даже предметам в игре, которое разбросано на карте. Многие замечали, что у монстры нарисованы с разных ракурсов, такое можно сделать и у предметов. Достаточно нарисовать предмет с разных ракурсов и поставить углы повотора в названии.
Для примера я возьму названия спрайтов пинки:
SARGA1
SARGA2A8
SARGA3A7
SARGA4A6
SARGA5
Цифры обозначают угол поворота спрайта. Это тоже стоит усвоить. Угол поворота можно ставить обратный(т.е. не A2A8, а A8A2 и т.п.), если у вас случайно спрайты находятся в реверсе, а переделывать лень.
Так же замечу ещё одну вещь - можно нарисовать монстра не только с 5 ракурсов, но и с 8, как например у чаинганнера:
CPOSA1
CPOSA2
CPOSA3
CPOSA4
CPOSA5
CPOSA6
CPOSA7
CPOSA8
Тут названия немного другие, но суть осталась та же. Кстати фишка с обратными ракурсами прёт тоже здесь.

Думаю на этом можно пока остановиться. Комментим, засираем, оцениваем, поливаем говном мои говноуроки и т.п., вообщем как обычно))))


Вложения:
SWbk.rar [1.44 Мб]
Скачиваний: 195

_________________
TRANE
Вернуться к началу 
 Профиль  
 
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 25 янв 2012, 19:49 
Не в сети
ШТАБ-СЕРЖАНТ
ШТАБ-СЕРЖАНТ
Аватара пользователя

Зарегистрирован: 12 июл 2011, 13:08
Сообщения: 377
Медали: 2
Самый активный форумчанен (1) Другие выдающиеся моды и игры (1)
Любимый порт: Зандронум
Любимое оружие: двухстволочка,рэйлган,бензопила >: )
оооооооооооооооо крутая статья =)

_________________
Изображение


Вернуться к началу 
 Профиль  
 
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 30 янв 2012, 16:02 
Не в сети
ГЛАВНЫЙ ПРАПОРЩИК 2
ГЛАВНЫЙ ПРАПОРЩИК 2
Аватара пользователя

Зарегистрирован: 02 июл 2011, 20:37
Сообщения: 1919
Откуда: Самара
Медали: 4
Хороший администратор (1) За хорошую дуэльную мапу (1) Самый активный форумчанен (1)
Вебмастер (1)
Любимый порт: gzdoom
Любимое оружие: Двухстволка и бфг9000
Любимые карты в Duel32: SSL2, judas, oblivx, shoot, king, moo, dwango-map07
STaker писал(а):
оооооооооооооооо крутая статья

Статья полезная, а не крутая, обязательно кому-нибудь она пригодиться, я уверен

_________________
Клан-Лидер


Вернуться к началу 
 Профиль  
 
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 31 янв 2012, 14:51 
Не в сети
ПЕРВЫЙ СЕРЖАНТ (2 ЗВЕЗДЫ)
ПЕРВЫЙ СЕРЖАНТ (2 ЗВЕЗДЫ)
Аватара пользователя

Зарегистрирован: 03 июл 2011, 16:43
Сообщения: 948
Откуда: Россия, Омск
Медали: 4
Медаль хорошему модератору (1) Самый активный форумчанен (1) Вебмастер (1)
Вклад в развитие этого форума (1)
Любимый порт: Речной
Любимое оружие: МБР РС-12М2 "Тополь-М"
Skaladin
Мне к примеру пригодиться ))

_________________
Зам.Клан-Лидера

Изображение


Вернуться к началу 
 Профиль  
 
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 01 фев 2012, 11:23 
Не в сети
ГЛАВНЫЙ ПРАПОРЩИК 2
ГЛАВНЫЙ ПРАПОРЩИК 2
Аватара пользователя

Зарегистрирован: 02 июл 2011, 20:37
Сообщения: 1919
Откуда: Самара
Медали: 4
Хороший администратор (1) За хорошую дуэльную мапу (1) Самый активный форумчанен (1)
Вебмастер (1)
Любимый порт: gzdoom
Любимое оружие: Двухстволка и бфг9000
Любимые карты в Duel32: SSL2, judas, oblivx, shoot, king, moo, dwango-map07
GhosTDoomer
А так же начинающим новичкам по декорейту

_________________
Клан-Лидер


Вернуться к началу 
 Профиль  
 
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 04 фев 2012, 07:45 
Не в сети
СЕРЖАНТ (2 ЗВЕЗДЫ)
СЕРЖАНТ (2 ЗВЕЗДЫ)
Аватара пользователя

Зарегистрирован: 03 июл 2011, 09:13
Сообщения: 298
Медали: 4
Полезное сообщение (2) За хороший проект в маппинге (1) За хороший мод для DOOM (1)
Любимый порт: GZDOOM, SKULLTAG
Любимое оружие: ССГ, Плазмаган
Любимые карты в Duel32: Нет таких, не больно люблю дуэли. Я больше люблю кооператив.
Такс народ, пишите что ещё расписать по декору. На досуге я собираюсь написать статейку про думовского зомбаря.

_________________
TRANE


Вернуться к началу 
 Профиль  
 
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 24 мар 2012, 12:53 
Не в сети
ГЛАВНЫЙ ПРАПОРЩИК 2
ГЛАВНЫЙ ПРАПОРЩИК 2
Аватара пользователя

Зарегистрирован: 02 июл 2011, 20:37
Сообщения: 1919
Откуда: Самара
Медали: 4
Хороший администратор (1) За хорошую дуэльную мапу (1) Самый активный форумчанен (1)
Вебмастер (1)
Любимый порт: gzdoom
Любимое оружие: Двухстволка и бфг9000
Любимые карты в Duel32: SSL2, judas, oblivx, shoot, king, moo, dwango-map07
-ILOK- TRANE
Как увеличить ближний бой у рыцаря ада? MeleeDamage не помогает :-<

_________________
Клан-Лидер


Вернуться к началу 
 Профиль  
 
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 24 мар 2012, 16:40 
Не в сети
СЕРЖАНТ (2 ЗВЕЗДЫ)
СЕРЖАНТ (2 ЗВЕЗДЫ)
Аватара пользователя

Зарегистрирован: 03 июл 2011, 09:13
Сообщения: 298
Медали: 4
Полезное сообщение (2) За хороший проект в маппинге (1) За хороший мод для DOOM (1)
Любимый порт: GZDOOM, SKULLTAG
Любимое оружие: ССГ, Плазмаган
Любимые карты в Duel32: Нет таких, не больно люблю дуэли. Я больше люблю кооператив.
Ну в игре есть соответствующая инструкция. Ах лана, вот те код)
ACTOR HellKnight : BaronOfHell 69
{
Game Doom
SpawnID 113
Health 500
-BOSSDEATH
SeeSound "knight/sight"
ActiveSound "knight/active"
PainSound "knight/pain"
DeathSound "knight/death"
HitObituary "$OB_KNIGHTHIT"
Obituary "$OB_KNIGHT"
States
{
Spawn:
BOS2 AB 10 A_Look
Loop
See:
BOS2 AABBCCDD 3 A_Chase
Loop
Melee:
Missile:
BOS2 EF 8 A_FaceTarget
BOS2 G 8 A_BruisAttack
Goto See
Pain:
BOS2 H 2
BOS2 H 2 A_Pain
Goto See
Death:
BOS2 I 8
BOS2 J 8 A_Scream
BOS2 K 8
BOS2 L 8 A_NoBlocking
BOS2 MN 8
BOS2 O -1
Stop
Raise:
BOS2 O 8
BOS2 NMLKJI 8
Goto See
}
}



Стандартный код рыцаря ада, собсна копнём чуть глубже.
У монстра есть стандартная зашитая в движок инструкция A_BruisAttack, поэтому в потоке mellee тупо ни чё нет, точнее при переходе в этот поток, игра сразу переходит в поток Missile. Mellee означает милийную или ближную атаку, а Missile обозначает атаку файрболлом. Зачем это объяснение, а за тем, что нам придётся таки переписать эти два потока под себя. Собсна правленый код:
ACTOR HellKnight : BaronOfHell
{
Game Doom
SpawnID 113
Health 500
-BOSSDEATH
SeeSound "knight/sight"
ActiveSound "knight/active"
PainSound "knight/pain"
DeathSound "knight/death"
HitObituary "$OB_KNIGHTHIT"
Obituary "$OB_KNIGHT"
States
{
Spawn:
BOS2 AB 10 A_Look
Loop
See:
BOS2 AABBCCDD 3 A_Chase
Loop
Melee:
BOS2 EF 8 A_FaceTarget
BOS2 G 8 A_CustomMeleeAttack(6)
Goto See
Missile:
BOS2 EF 8 A_FaceTarget
BOS2 G 8 A_CustomMissile("BaronBall")
Goto See
Pain:
BOS2 H 2
BOS2 H 2 A_Pain
Goto See
Death:
BOS2 I 8
BOS2 J 8 A_Scream
BOS2 K 8
BOS2 L 8 A_NoBlocking
BOS2 MN 8
BOS2 O -1
Stop
Raise:
BOS2 O 8
BOS2 NMLKJI 8
Goto See
}
}


Собсна что же я сделал, я в поток Melee добавил инструкцию A_CustomMeleeAttack(6), а в поток Missile добавил A_CustomMissile("BaronBall"). Первая инструкция обозначает удар в ближнем бою.
У этой инструкции есть ещё параметры, а именно:

A_CustomMeleeAttack ( ущерб,"звук попадания", "звук промаха", "дамаг тип", будет ли кровоточить актор при попадании)
ущерб - число, означает ущерб, который получаешь при попадании по тебе.
"звук попадания" - звук попадания, это звук, который будет звучать, когда по тебе попадают. Пишется звук так же в ковычках
"звук промаха" - звук, который воспроизведётся при промохе(если по тебе не попали, но монстр атаковал) Пишется тоже в кавычках
"дамаг тип" - это специальный параметр. Например ты захотел, чтобы у тебя монстр вырывал сердце при смерти, собсна этот параметр это и делает, указывает конкретный тип атаки, на сколько помню, сюда так же можно забить тип "пуфов" свой. Если не собираешься делать что то особенное - не юзай. Тоже в ковычках
будет ли кровоточить актор при попадании - так и расшифровывается как написано, чуть не забыл, тут пишется число, на сколько помню 1 это да, а 0 это нет.
Пример:
A_CustomMeleeAttack(30, "hiting", "hitingFail", "Mydamage", 1), думаю расшифровывать не нужно)

Так собсна A_CustomMissile("BaronBall")
Эта инструкция говорит выстрелить монстру 1 проджектайлом(снарядом), в нашем случае фаирболлом барона. Да да, рыцарь ада и барон юзают один и тот же фаирболл.
Так и под конец ещё кое что. Заменяем нашего нового рыцаря ада, на того, который был.

Actor NewHellKnight : HellKnight replaces HellKnight
{
States
{
Melee:
BOS2 EF 8 A_FaceTarget
BOS2 G 8 A_CustomMeleeAttack(6)
Goto See
Missile:
BOS2 EF 8 A_FaceTarget
BOS2 G 8 A_CustomMissile("BaronBall")
Goto See
}
}

Этот код упрощёный и одновременно изменённый, так же заменяет оригинального рыцаря ада, на нового.
Небольшая расшифровочка:
Actor NewHellKnight : HellKnight replaces HellKnight - Тут мы создаём нового рыцаря ада, который основывается на старом(Actor NewHellKnight : HellKnight) и заменяем обычного рыцаря на нового(replaces HellKnight). Почему создаём, а не редачим? Чтобы потом мы в дальнейшем не удивлялись почему у нас игра при компиляции в окошке выдаёт варнинг, а потом в процессе тупит.
Нижние строки взяты из нашего модифленого рыцаря ада. Надо всего 2 потока, т.к. у нас монстр не нулячий, а именно основан, то игра автоматически берёт параметры и код сразу из двух мест.
Ну и ответ на твой вопрос в конце концов, тебе нужно редачить инструкцию A_CustomMeleeAttack, добавляешь по желанию в неё нужные тебе звуки(звук попадания, звук промаха) и урон. Кстати под конец, урон можно сделать рандомным, если хочется чего то необычного. Достаточно в уроне прописать вот так - random(число1, число2), число1 и число2 задают диапазон рандома, т.е. если будет например random(4, 10), то игра будет автоматически брать случайное число в диапазоне 4-10. Дерзай.
Собственно всё. Если чё не понятно, задавай вопросы.

_________________
TRANE


Вернуться к началу 
 Профиль  
 
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 24 мар 2012, 17:54 
Не в сети
ГЛАВНЫЙ ПРАПОРЩИК 2
ГЛАВНЫЙ ПРАПОРЩИК 2
Аватара пользователя

Зарегистрирован: 02 июл 2011, 20:37
Сообщения: 1919
Откуда: Самара
Медали: 4
Хороший администратор (1) За хорошую дуэльную мапу (1) Самый активный форумчанен (1)
Вебмастер (1)
Любимый порт: gzdoom
Любимое оружие: Двухстволка и бфг9000
Любимые карты в Duel32: SSL2, judas, oblivx, shoot, king, moo, dwango-map07
-ILOK- TRANE
Ну я уже сам разобрался, ну попробую по твоему методу еще =)

_________________
Клан-Лидер


Вернуться к началу 
 Профиль  
 
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 10 ноя 2016, 15:02 
Не в сети
ПЕРВЫЙ СЕРЖАНТ (2 ЗВЕЗДЫ)
ПЕРВЫЙ СЕРЖАНТ (2 ЗВЕЗДЫ)
Аватара пользователя

Зарегистрирован: 03 июл 2011, 16:43
Сообщения: 948
Откуда: Россия, Омск
Медали: 4
Медаль хорошему модератору (1) Самый активный форумчанен (1) Вебмастер (1)
Вклад в развитие этого форума (1)
Любимый порт: Речной
Любимое оружие: МБР РС-12М2 "Тополь-М"
Вот я и вытащил искры из LOS.pk3 все знают ЛОСя ;-{} а я вытащил искры от туда и запихнул в отдельный wad файл)) видео где я показал и рассказал всё, и два вада
sparks.wad - там только искры, а на MAP01.wad там только карта, запускаем сразу два вада и будет счастье)) ну или через гздумбилдер как на видео я запускал)



Вложения:
MAP01.wad [12.95 Кб]
Скачиваний: 146
Sparks.wad [82.51 Кб]
Скачиваний: 137

_________________
Зам.Клан-Лидера

Изображение
Вернуться к началу 
 Профиль  
 
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 10 ноя 2016, 17:31 
Не в сети
ГЛАВНЫЙ ПРАПОРЩИК 2
ГЛАВНЫЙ ПРАПОРЩИК 2
Аватара пользователя

Зарегистрирован: 02 июл 2011, 20:37
Сообщения: 1919
Откуда: Самара
Медали: 4
Хороший администратор (1) За хорошую дуэльную мапу (1) Самый активный форумчанен (1)
Вебмастер (1)
Любимый порт: gzdoom
Любимое оружие: Двухстволка и бфг9000
Любимые карты в Duel32: SSL2, judas, oblivx, shoot, king, moo, dwango-map07
GhosTDoomer
Да это полезный туриал, особенно для любителей гозовских баз :D Казалось бы искорки, а сколько пришлось перерыть папок и декорейтов и спрайтов :''''-

_________________
Клан-Лидер


Вернуться к началу 
 Профиль  
 
 Заголовок сообщения: Re: скриптинг и всё что с ним связано(DECORATE и т.п.)
 Новое сообщение Добавлено: 10 ноя 2016, 17:34 
Не в сети
ПЕРВЫЙ СЕРЖАНТ (2 ЗВЕЗДЫ)
ПЕРВЫЙ СЕРЖАНТ (2 ЗВЕЗДЫ)
Аватара пользователя

Зарегистрирован: 03 июл 2011, 16:43
Сообщения: 948
Откуда: Россия, Омск
Медали: 4
Медаль хорошему модератору (1) Самый активный форумчанен (1) Вебмастер (1)
Вклад в развитие этого форума (1)
Любимый порт: Речной
Любимое оружие: МБР РС-12М2 "Тополь-М"
Skaladin
так главное теперь не нужно заморачиваться со скриптами что бы искры сделать, они декорейтом теперь идут, просто вставил на карту и работает!)

_________________
Зам.Клан-Лидера

Изображение


Вернуться к началу 
 Профиль  
 
Показать сообщения за:  Поле сортировки  
 
Начать новую тему Ответить на тему  [ Сообщений: 31 ]  На страницу 1, 2  След.

Список форумов » Маппинг и моддинг в doom


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

 
 

 
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron

Рекомендую создать свой форум бесплатно на http://4admins.ru

Русская поддержка phpBB