Welcome to U.A.C. [O.S.A.]
login / register
Status: Guest
Архивы форума | iddqd.ru
Wolf 3D
ПравилаПравила ПоискПоиск
18+
Тема для новичков. Вопросы по маппингу/моддингу - любые!-2 Пред.  1, 2, 3 ... 17, 18, 19, 20  След.
   Список разделов - Местечко мапперов и моддеров - Тема для новичков. Вопросы по маппингу/моддингу - любые!-2Ответить
АвторСообщение
MelaDoZer
Recruit
Next rank: Marine after 6 points
14

Doom Rate: 2

Posts quality: +12
Ссылка на пост №341 Отправлено: 30.11.19 00:38:33
Не подскажете, как можно изменить урон от демона/зомбимэна на лету с изменением CVAR'ы, на ZScript'е и не заменяя классы? У меня такое только получилось со скоростью и здоровьем. Просто думаю, что так смогу сохранить максимальную совместимость с другими модами (как раз полностью изменённый void атаки зомбимэна ломал у меня игру в Doom 4 Vanilla, например).
Вот мой код:
Скрытый текст:

extend class UnionDoom_Events
{
	//
	//Demon Damage
	//
	int union_old_demon_damage;
	
	void ApplyDamageToDemon(Actor thing)
	{
		switch(union_demon_damage)
		{
			case 0:
			thing.SetDamage(thing.Default.Damage);
			break;
			
			case 1:
			thing.SetDamage(Random(1, 10) * 4);
			break;
			
			case 2:
			thing.SetDamage(Random(1, 8) * 4);
			break;
		}
	}
	
	void ChangeDemonDamage()
 	{
		let   iterator = ThinkerIterator.Create("Demon");
		Actor a;
		
		while (a = Actor(iterator.Next()))
		{
			ApplyDamageToDemon(a);
		}
	}
}


Первым кейсом устанавливаю дефолтное значение, вдруг кто-то будет переписывать класс и урон. Событие вызываю по проверке изменения CVAR'ы в UiTick(). Знаю о DamageFunction(), но не получается её использовать, так как GZDoom ругается на неизвестную функцию (может thing.DamageFunction() писать неверно, на самом деле, кхех). Пока способа не нашёл. Damage тоже не получалось использовать.
WorldThingSpawned() и WorldThingRevived() тоже использую.
zzXenobytEzz
- Corporal -
Next rank: = Corporal = after 20 points
80

Doom Rate: 2

Posts quality: +11
Ссылка на пост №342 Отправлено: 12.12.19 17:25:17
Вопрос: можно ли реализовать отдачу у оружия аля д64 в акторе плеера? Или делать кастомные пухи с таким приколом?
ZZYZX
= Commissar =
Next rank: - UAC Commissar - after 376 pointsМодератор форума
5424

Doom Rate: 1.73

Posts quality: +1589
Ссылка на пост №343 Отправлено: 12.12.19 18:03:36
MelaDoZer пишет:
Не подскажете, как можно изменить урон от демона/зомбимэна на лету с изменением CVAR'ы, на ZScript'е и не заменяя классы?

В хандлерах есть что-то про дамаг
2 2 1
theleo_ua
= Captain =
Next rank: - Major - after 22 points
2618

Doom Rate: 1.83

Posts quality: +395
Ссылка на пост №344 Отправлено: 14.12.19 19:12:07
Представим, что у нас есть оружие А, которое не тратит патроны. И представим, что у нас каждого патрона ноль, а также есть все оружия в инвентаре. В таком случае, при подборе патронов, гздум автоматом сменит на то оружие, которое умеет ими стрелять, и у которого selection order выше

Как сделать так, чтобы наше оружие А никогда не переключалось на другое при подборе патронов?

Если я выставлю оружию А минимальный selection order (ибо чем он меньше, тем выше приоритет), то при стрельбе из других оружий, когда закончатся патроны, оно всегда будет менять на наше оружие А, что неприемлемо

Есть ли какой-то простой способ запрета на автосмену конкретного оружия?

Иными словами, если в руках бензопила, то при подборе пуль/дроби/ракет/энергии не надо чтобы менялось на другие оружия, но если я стреляю из бфж и кончаются патроны, то надо чтобы сменилось например на двустволку, а не на бензопилу
3 1
YURA_111
= Sergeant Major =
Next rank: UAC Sergeant Major after 60 points
620

Doom Rate: 1.98

Posts quality: +104
Ссылка на пост №345 Отправлено: 15.12.19 14:13:34
Может быть " WEAPON.NO_AUTO_SWITCH "
( https://zdoom.org/wiki/Actor_flags )

Рейтинг сообщения: +1, отметил(и): theleo_ua
theleo_ua
= Captain =
Next rank: - Major - after 22 points
2618

Doom Rate: 1.83

Posts quality: +395
Ссылка на пост №346 Отправлено: 15.12.19 15:13:46
YURA_111 пишет:
Может быть " WEAPON.NO_AUTO_SWITCH "
( https://zdoom.org/wiki/Actor_flags )


спасибо за помощь, но уже решилось флагом -WEAPON.WIMPY_WEAPON (отключаем его для тех оружий, которые не хотим менять при подборе патронов)

Оказалось, что для проблемных оружий, которые я использовал, этот флаг был включен
3 1
YURA_111
= Sergeant Major =
Next rank: UAC Sergeant Major after 60 points
620

Doom Rate: 1.98

Posts quality: +104
Ссылка на пост №347 Отправлено: 17.12.19 10:09:21
ZZYZX пишет:
В хандлерах есть что-то про дамаг


MelaDoZer пишет:
Не подскажете, как можно изменить урон от демона/зомбимэна на лету


Не проще просто давать монстру поверап типа такого: "PowerDamage" ??
Несмотря на то, что в вики указано что это для игрока, монстрам тоже можно выдавать и оно работает (я как-то здесь демонстрировал)

Рейтинг сообщения: +1, отметил(и): JSO x
theleo_ua
= Captain =
Next rank: - Major - after 22 points
2618

Doom Rate: 1.83

Posts quality: +395
Ссылка на пост №348 Отправлено: 21.12.19 20:07:22
Народ, помню тут когда-то кидали ссылку, не могу найти: нужна информация по лимитам гздумного ACS, например по максимальной длине массива

И еще: если задать global массив, а синтаксис там такой, что его размерность не указывается, то сколько там будет переменных, и сколько оперативки он займет?
3 1
DOOMGABR
- Warrant Officer -
Next rank: = Warrant Officer = after 68 points
1072

Doom Rate: 1.88

Posts quality: +642
Ссылка на пост №349 Отправлено: 22.12.19 17:04:45
Есть полезный материал по моддингу на DeHackED? С чего начать вообще, человеку, который на низком уровне разбирается в Дикорейте. Хочется сделать мод, совместимый вплоть до DoSBox.
Герр Смертоносец
= Sergeant Major =
Next rank: UAC Sergeant Major after 29 points
651

Doom Rate: 1.5

Posts quality: +420
Ссылка на пост №350 Отправлено: 22.12.19 21:15:45
DOOMGABR пишет:
Есть полезный материал по моддингу на DeHackED? С чего начать вообще, человеку, который на низком уровне разбирается в Дикорейте. Хочется сделать мод, совместимый вплоть до DoSBox.

http://www.aspectsweb.co.uk/dehacked/index.html

Рейтинг сообщения: +1, отметил(и): DOOMGABR
2
DOOMGABR
- Warrant Officer -
Next rank: = Warrant Officer = after 68 points
1072

Doom Rate: 1.88

Posts quality: +642
Ссылка на пост №351 Отправлено: 22.12.19 21:22:24
Герр Смертоносец
спасибо, конечно. что нибудь на русском имеется?
N00b2015
= Master Sergeant =
Next rank: - Sergeant Major - after 42 points
488

Doom Rate: 2.18

Posts quality: +156
Ссылка на пост №352 Отправлено: 22.12.19 23:15:59
У меня фундаментальный вопрос по картостроению в GZDoom. Наверняка он здесь задавался (может, даже мной :shock:), но вразумительного ответа на него я сейчас не знаю, почему его и задаю.
Есть карта в формате UDMF. Есть желание построить многоэтажное помещение, в котором этажи соединяются секторными порталами (пишу сразу: полностью перейти на 3D-полы вариант никоим образом не рассматривается, это будет каша из секторов, см. один из туториалов на вики — порталы мне нужны не только для производительности, но и для собственного удобства :x), и, думаю, понятно, как именно: лестница из секторов (или тех же 3D-полов, кстати) "пропускается" через порталы в полу и в потолке, и всё замечательно работает.
А теперь по существу — мне нужны лифты. Если пассажирские лифты я ещё могу реализовать с помощью TeleportInSector, то грузовые возвращают меня к извечной проблеме движка Doom — псевдотрёхмерности. Я хочу сделать грузовой лифт как открытую платформу, перемещающуюся между заданными этажами, чтобы игрок мог видеть, что он перемещается (в пассажирском можно заблокировать обзор дверями, здесь это будет выглядеть по-идиотски). Если сделать очень высокий сектор-шахту, то непонятно, как потом к нему присоединять связанные порталами этажи (лайндефными порталами? Но ведь они работают по всей своей высоте...); если сделать на каждом этаже по куску шахты лифта, то потом не пустишь платформу через них. У модели будут проблемы с коллизиями (они мне не подходят и по другим причинам). Можно ли как-нибудь обойти ограничения?

DOOMGABR
На русском вряд ли сейчас найдёшь подобные гайды. Не говорю, что их не было, просто сейчас дехакед у нас используется (в основном) теми, кто с ним знаком лет десять уж точно (а новоприбывшие, видя ограничения языка, возвращаются к здуму). Могу посоветовать программу WHackEd4, у неё достаточно простой и понятный интерфейс (там сразу всё на виду).
Ещё, когда почитаешь гайды, можешь поковырять дехакеды из относительно новых мегавадов (например, TNT: Revilution — там есть турели, Doom Zero — есть лостсоул из альфы, а у пулемётчика изменён звук стрельбы), посмотреть, как там всё сделано, какая структура у текстового дехакеда. Однако это скорее теория.

Рейтинг сообщения: +1, отметил(и): DOOMGABR
1 1
ZZYZX
= Commissar =
Next rank: - UAC Commissar - after 376 pointsМодератор форума
5424

Doom Rate: 1.73

Posts quality: +1589
Ссылка на пост №353 Отправлено: 23.12.19 03:39:15
N00b2015
Сделай как в дюке. Перекрытие высотой с думера, во время прохождения перекрытия телепорт.
Нижняя часть перекрытия показывает верхний сектор порталом. Верхняя нижний.
Возможно можно проще, мне пара чёрных магий в голову пришла.
Попробую нарисовать тестовый уровень.

Самый простой вариант выглядит так:
https://www.mediafire.com/file/dalr9wye7b1nbeo/3dliftexample.wad/file
(зайти на платформу и нажать use)

Даже попробовал туда импа поставить. Он удивился, но исправно съездил вверх-вниз.

Я ещё думал о варианте когда внутри лифта 3-4 портала находится чтобы делать сложные формы со слопами. Но передумал. На ночь глядя не хочется таким заниматься )

Рейтинг сообщения: +1, отметил(и): N00b2015
2 2 1
cybermind
Chief Petty Officer
Next rank: - Warrant Officer - after 19 points
1021

Doom Rate: 1.96

Posts quality: +152
Ссылка на пост №354 Отправлено: 23.12.19 06:45:09
DOOMGABR
Есть такой, видимо, про него уже успели все забыть: http://iddqd.ru/utils?find=%CC%E0%ED%F3%E0%EB%3A+%CA%E0%EA+%E4%E5%EB%E0%F2%FC+%EC%EE%E4%FB

Рейтинг сообщения: +2, отметил(и): N00b2015, DOOMGABR
1 1 1
N00b2015
= Master Sergeant =
Next rank: - Sergeant Major - after 42 points
488

Doom Rate: 2.18

Posts quality: +156
Ссылка на пост №355 Отправлено: 23.12.19 08:55:14
ZZYZX
Большое спасибо! Мне вполне хватит "простого варианта". Это действительно похоже на Duke/Blood :x Так, кстати, (достаточно) нетрудно поставить на лифт панель управления и какие-нибудь ящики, сделав Sector_SetLink (а вот как сделать лайндефное ограждение?.. попробую для него тоже использовать 3D-пол).
Я вот только не понимаю, почему высоты у портальных секторов не 128, зачем они перекрываются по вертикали?
1 1
ZZYZX
= Commissar =
Next rank: - UAC Commissar - after 376 pointsМодератор форума
5424

Doom Rate: 1.73

Posts quality: +1589
Ссылка на пост №356 Отправлено: 23.12.19 09:30:13
N00b2015
Потому что не отображается нижняя текстура лифта при доезжании его до верха (т.к. он уходит в пол верхнего сектора этой текстурой)
Из-за этого сделан зазор в один пиксель, чтобы доезжая до верха лифт выезжал из пола и соответственно его нижняя текстура отрисовывалась.

Рейтинг сообщения: +1, отметил(и): VladGuardian
2 2 1
theleo_ua
= Captain =
Next rank: - Major - after 22 points
2618

Doom Rate: 1.83

Posts quality: +395
Ссылка на пост №357 Отправлено: 25.12.19 00:43:51
в гздуме есть такая штука для отражения снарядов - Bounce:

https://zdoom.org/wiki/Actor_states#Bounce
https://zdoom.org/wiki/Actor_flags#Bouncing
https://zdoom.org/wiki/Actor_properties#BounceType

но если снаряд сделать с вот таким кодом:

Скрытый текст:


BounceType Doom
BounceFactor 1.0
WallBounceFactor 1.0

+BOUNCEONWALLS
+BOUNCEONFLOORS
+BOUNCEONCEILINGS
+CANBOUNCEWATER
-DONTBOUNCEONSKY

BounceCount 5



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

Как сделать, чтобы отраженные от ересираха/кентавра снаряды такого плана гарантированно дамажили игрока при попадании? Что конкретно у снаряда отвечает за то, кого в данный момент игры он будет дамажить? И если есть много разных способов решения проблемы - какой самый простой?

Интересует либо декорейт/ацс либо зскрипт/ацс

И второй вопрос: BounceCount 5 значит что снаряд 5 раз отражается от стен/пола/потолка/и т д, и на 6-й раз взрывается. Как сделать так, чтобы при отражении от ересираха/кентавра, счетчик "уже прозошедших" отскоков обнулялся? Т.е. если например снаряд отскочил от стенки 4 раза, и на 5-й раз попал в щит кентавра, то после кентавра он еще мог 5 раз удариться об стенку, и только после этого взрывался? Ну кроме случаев, если он попал в игрока раньше
3 1
DOOMGABR
- Warrant Officer -
Next rank: = Warrant Officer = after 68 points
1072

Doom Rate: 1.88

Posts quality: +642
Ссылка на пост №358 Отправлено: 27.12.19 16:04:54
Как изменить ванильную дум палитру, чтобы она работала на всех портах?
N00b2015
= Master Sergeant =
Next rank: - Sergeant Major - after 42 points
488

Doom Rate: 2.18

Posts quality: +156
Ссылка на пост №359 Отправлено: 27.12.19 16:43:04
theleo_ua
Я бы попробовал ALLOWBOUNCEONACTORS (без BOUNCEONACTORS). Хотя, наверное, я ответил слишком поздно.
DOOMGABR
Палитру — это вроде того, как в некоторых вадах (ZPack вроде, торменторовские какие-то) синий заменяется на более мягкий голубой? Тогда нужно в свой вад скопировать PLAYPAL (это первый ламп что в doom.wad, что в doom2.wad), изменить его, как нужно (с помощью слейда и/или экспортировав как png и обработав в графическом редакторе). Затем нужно перестроить COLORMAP (правая кнопка мыши по PLAYPAL; Palette; Generate Colormaps). Если что, zdoom не использует COLORMAP, это нужно для более "ванильных" портов.
1 1
DOOMGABR
- Warrant Officer -
Next rank: = Warrant Officer = after 68 points
1072

Doom Rate: 1.88

Posts quality: +642
Ссылка на пост №360 Отправлено: 27.12.19 20:42:27
N00b2015 пишет:
Палитру — это вроде того, как в некоторых вадах (ZPack вроде, торменторовские какие-то) синий заменяется на более мягкий голубой?

Именно. Спасибо, понял!
Страница 18 из 20Перейти наверх Пред.  1, 2, 3 ... 17, 18, 19, 20  След.
   Список разделов - Местечко мапперов и моддеров - Тема для новичков. Вопросы по маппингу/моддингу - любые!-2