Справедливости ради, с 4.2 появились довольно интересные штуки: A_AttachLight и A_SoundPitch, и, что куда более интереснее появился саунд питч как таковой. В зскрипте тоже вроде появилась парочка функций.
А меня печалит что как перешли на OpenAL и проблемы со звуком в Гоззе остаются. Я имею ввиду уровень громкости сзади игрока - он очень низкий. То есть перед глазами все звуки нормальные, строго слева и справа - тоже нормально. Но стоит отворачиваться от них сильнее и они резко становятся тише. Вопиющий момент когда например подойти вплотную к зомби и повернуться к нему спиной - звуки его атак будет слишно заметно хуже.
А вот на рабочем ноутбуке у меня стоит еще GZDoom 1.8.10 и там со звуком все нормально.
В новых гоззах перестал корректно работать код посоха из инквизитора3д (сам код был позаимствован в свое время из какого-то мода на Блад-тематику).
Раньше альт-атака вызывала череду последующих атак, как это прописано в коде. Теперь - только первый снаряд, который взрывается при попадании в цель, но не производит остальных акторов, как записано в его коде. Причины такого изменения поведения кода мне не понятны, т.к. еще в версии 4-1-3 все работало корректно.
Сам код здесь:
Скрытый текст:
//---------------SkullStaffAltShots-----------------------//
ACTOR SkullStaffAltShot1
{
Radius 6
Height 10
Speed 16
Damage (4*(ACS_ExecuteWithResult(814,0,0,0))+random(1,8)) //EDIT THIS!!
damagetype FireStaff
+NOBLOCKMAP
+NOGRAVITY
+DROPOFF
+MISSILE
+NOTELEPORT
+SEEKERMISSILE
+RIPPER
+BLOODLESSIMPACT
// +FIREDAMAGE
+DOOMBOUNCE
+NOWALLBOUNCESND
+NOEXPLODEFLOOR
SeeSound "weapons/skullstaffshot2"
DeathSound "weapons/skullstaffexplode2"
// ExplosionDamage 96 //EDIT THIS!!
// ExplosionRadius 128 //EDIT THIS!!
RenderStyle Add
Alpha 1.0
States
{
Spawn:
SKSS CCDDEE 1 Bright A_SeekerMissile(5,8)
SKSS F 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS FFGGHH 1 Bright A_SeekerMissile(5,8)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack2",1,0,0)
SKSS C 1 Bright A_SetTranslucent(0.8)
SKSS C 1 Bright A_SetTranslucent(0.6)
SKSS D 1 Bright A_SetTranslucent(0.4)
SKSS D 1 Bright A_SetTranslucent(0.2)
SKSS D 1 Bright A_SetTranslucent(0.1)
Stop
Death:
SKSE A 5 Bright A_Explode(3*ACS_ExecuteWithResult(814,0,0,0),4*ACS_ExecuteWithResult(814,0,0,0))
SKSE BCDEFGH 5 Bright
Stop
}
}
ACTOR SkullStaffAltAttack1
{
Radius 1
Height 2
+ISMONSTER
+FRIENDLY
+NOGRAVITY
+NOCLIP
RenderStyle None
Obituary "%o was burned by a Lich Staff Fireball."
States
{
Spawn:
SKSS A 0 A_Look
See:
SKSS A 0 A_Chase
Missile:
SKSS A 0 A_FaceTarget
SKSS A 1 A_SpawnProjectile("SkullStaffAltShot2",0,0,0)
Stop
}
}
ACTOR SkullStaffAltShot2
{
Radius 4
Height 8
Speed 23
Damage (0.5*ACS_ExecuteWithResult(814,0,0,0)+random(1,8)) //EDIT THIS!!
damagetype FireStaff
Scale 0.4
+NOBLOCKMAP
+NOGRAVITY
+DROPOFF
+MISSILE
+NOTELEPORT
+SEEKERMISSILE
// +FIREDAMAGE
SeeSound "weapons/skullstaffshot1"
DeathSound "weapons/skullstaffexplode1"
// ExplosionDamage 24 //EDIT THIS!!
// ExplosionRadius 48 //EDIT THIS!!
RenderStyle Add
Alpha 0.9
States
{
Spawn:
SKSS A 1 Bright A_BishopMissileWeave
SKSS A 1 Bright A_SeekerMissile(12,15)
SKSS B 1 Bright A_BishopMissileWeave
SKSS B 1 Bright A_SeekerMissile(12,15)
Loop
Death:
SKSE A 0 A_SetTranslucent(1,1)
SKSE A 4 Bright A_Explode(ACS_ExecuteWithResult(814,0,0,0),2*ACS_ExecuteWithResult(814,0,0,0))
SKSE BCDEFGH 4 Bright
Stop
}
}
ACTOR SkullStaffAltAttack2
{
Radius 1
Height 2
+ISMONSTER
+FRIENDLY
+NOGRAVITY
+NOCLIP
+CANPUSHWALLS
RenderStyle None
Obituary "%o was burned by a Skull Staff Fireball."
States
{
Spawn:
SKSS A 0 A_Look
See:
SKSS A 0 A_Chase
Missile:
SKSS A 0 A_FaceTarget
SKSS A 1 A_SpawnProjectile("SkullStaffAltShot3",0,0,0)
Stop
}
}
ACTOR SkullStaffAltShot3 : SkullStaffAltShot1
{
States
{
Spawn:
SKSS CCDDEE 1 Bright A_SeekerMissile(5,8)
SKSS F 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS FFGGHH 1 Bright A_SeekerMissile(5,8)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack3",1,0,0)
SKSS C 1 Bright A_SetTranslucent(0.8)
SKSS C 1 Bright A_SetTranslucent(0.6)
SKSS D 1 Bright A_SetTranslucent(0.4)
SKSS D 1 Bright A_SetTranslucent(0.2)
SKSS D 1 Bright A_SetTranslucent(0.1)
Stop
}
}
ACTOR SkullStaffAltAttack3 : SkullStaffAltAttack2
{
States
{
Spawn:
SKSS A 0 A_Look
See:
SKSS A 0 A_Chase
Missile:
SKSS A 0 A_FaceTarget
SKSS A 1 A_SpawnProjectile("SkullStaffAltShot4",0,0,0)
Stop
}
}
ACTOR SkullStaffAltShot4 : SkullStaffAltShot1
{
States
{
Spawn:
SKSS CCDDEE 1 Bright A_SeekerMissile(5,8)
SKSS F 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS FFGGHH 1 Bright A_SeekerMissile(5,8)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack4",1,0,0)
SKSS C 1 Bright A_SetTranslucent(0.8)
SKSS C 1 Bright A_SetTranslucent(0.6)
SKSS D 1 Bright A_SetTranslucent(0.4)
SKSS D 1 Bright A_SetTranslucent(0.2)
SKSS D 1 Bright A_SetTranslucent(0.1)
Stop
}
}
ACTOR SkullStaffAltAttack4 : SkullStaffAltAttack2
{
States
{
Spawn:
SKSS A 0 A_Look
See:
SKSS A 0 A_Chase
Missile:
SKSS A 0 A_FaceTarget
SKSS A 1 A_SpawnProjectile("SkullStaffAltShot5",0,0,0)
Stop
}
}
ACTOR SkullStaffAltShot5 : SkullStaffAltShot1
{
States
{
Spawn:
SKSS CCDDEE 1 Bright A_SeekerMissile(5,8)
SKSS F 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS FFGGHH 1 Bright A_SeekerMissile(5,8)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack5",1,0,0)
SKSS C 1 Bright A_SetTranslucent(0.8)
SKSS C 1 Bright A_SetTranslucent(0.6)
SKSS D 1 Bright A_SetTranslucent(0.4)
SKSS D 1 Bright A_SetTranslucent(0.2)
SKSS D 1 Bright A_SetTranslucent(0.1)
Stop
}
}
ACTOR SkullStaffAltAttack5 : SkullStaffAltAttack2
{
States
{
Spawn:
SKSS A 0 A_Look
See:
SKSS A 0 A_Chase
Missile:
SKSS A 0 A_FaceTarget
SKSS A 1 A_SpawnProjectile("SkullStaffAltShot6",0,0,0)
Stop
}
}
ACTOR SkullStaffAltShot6 : SkullStaffAltShot1
{
States
{
Spawn:
SKSS CCDDEE 1 Bright A_SeekerMissile(5,8)
SKSS F 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS FFGGHH 1 Bright A_SeekerMissile(5,8)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack6",1,0,0)
SKSS C 1 Bright A_SetTranslucent(0.8)
SKSS C 1 Bright A_SetTranslucent(0.6)
SKSS D 1 Bright A_SetTranslucent(0.4)
SKSS D 1 Bright A_SetTranslucent(0.2)
SKSS D 1 Bright A_SetTranslucent(0.1)
Stop
}
}
ACTOR SkullStaffAltAttack6 : SkullStaffAltAttack2
{
States
{
Spawn:
SKSS A 0 A_Look
See:
SKSS A 0 A_Chase
Missile:
SKSS A 0 A_FaceTarget
SKSS A 1 A_SpawnProjectile("SkullStaffAltShot7",0,0,0)
Stop
}
}
ACTOR SkullStaffAltShot7 : SkullStaffAltShot1
{
States
{
Spawn:
SKSS CCDDEE 1 Bright A_SeekerMissile(5,8)
SKSS F 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS FFGGHH 1 Bright A_SeekerMissile(5,8)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack7",1,0,0)
SKSS C 1 Bright A_SetTranslucent(0.8)
SKSS C 1 Bright A_SetTranslucent(0.6)
SKSS D 1 Bright A_SetTranslucent(0.4)
SKSS D 1 Bright A_SetTranslucent(0.2)
SKSS D 1 Bright A_SetTranslucent(0.1)
Stop
}
}
ACTOR SkullStaffAltAttack7 : SkullStaffAltAttack2
{
States
{
Spawn:
SKSS A 0 A_Look
See:
SKSS A 0 A_Chase
Missile:
SKSS A 0 A_FaceTarget
SKSS A 1 A_SpawnProjectile("SkullStaffAltShot8",0,0,0)
Stop
}
}
ACTOR SkullStaffAltShot8 : SkullStaffAltShot1
{
States
{
Spawn:
SKSS CCDDEE 1 Bright A_SeekerMissile(5,8)
SKSS F 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS FFGGHH 1 Bright A_SeekerMissile(5,8)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack8",1,0,0)
SKSS C 1 Bright A_SetTranslucent(0.8)
SKSS C 1 Bright A_SetTranslucent(0.6)
SKSS D 1 Bright A_SetTranslucent(0.4)
SKSS D 1 Bright A_SetTranslucent(0.2)
SKSS D 1 Bright A_SetTranslucent(0.1)
Stop
}
}
ACTOR SkullStaffAltAttack8 : SkullStaffAltAttack2
{
States
{
Spawn:
SKSS A 0 A_Look
See:
SKSS A 0 A_Chase
Missile:
SKSS A 0 A_FaceTarget
SKSS A 1 A_SpawnProjectile("SkullStaffAltShot9",0,0,0)
Stop
}
}
ACTOR SkullStaffAltShot9 : SkullStaffAltShot1
{
States
{
Spawn:
SKSS CCDDEE 1 Bright A_SeekerMissile(5,8)
SKSS F 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS FFGGHH 1 Bright A_SeekerMissile(5,8)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack9",1,0,0)
SKSS C 1 Bright A_SetTranslucent(0.8)
SKSS C 1 Bright A_SetTranslucent(0.6)
SKSS D 1 Bright A_SetTranslucent(0.4)
SKSS D 1 Bright A_SetTranslucent(0.2)
SKSS D 1 Bright A_SetTranslucent(0.1)
Stop
}
}
ACTOR SkullStaffAltAttack9 : SkullStaffAltAttack2
{
States
{
Spawn:
SKSS A 0 A_Look
See:
SKSS A 0 A_Chase
Missile:
SKSS A 0 A_FaceTarget
SKSS A 1 A_SpawnProjectile("SkullStaffAltShot10",0,0,0)
Stop
}
}
ACTOR SkullStaffAltShot10 : SkullStaffAltShot1
{
States
{
Spawn:
SKSS CCDDEE 1 Bright A_SeekerMissile(5,8)
SKSS F 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS FFGGHH 1 Bright A_SeekerMissile(5,8)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack10",1,0,0)
SKSS C 1 Bright A_SetTranslucent(0.8)
SKSS C 1 Bright A_SetTranslucent(0.6)
SKSS D 1 Bright A_SetTranslucent(0.4)
SKSS D 1 Bright A_SetTranslucent(0.2)
SKSS D 1 Bright A_SetTranslucent(0.1)
Stop
}
}
ACTOR SkullStaffAltAttack10 : SkullStaffAltAttack2
{
States
{
Spawn:
SKSS A 0 A_Look
See:
SKSS A 0 A_Chase
Missile:
SKSS A 0 A_FaceTarget
SKSS A 1 A_SpawnProjectile("SkullStaffAltShot11",0,0,0)
Stop
}
}
ACTOR SkullStaffAltShot11 : SkullStaffAltShot1
{
States
{
Spawn:
SKSS CCDDEE 1 Bright A_SeekerMissile(5,8)
SKSS F 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS FFGGHH 1 Bright A_SeekerMissile(5,8)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack11",1,0,0)
SKSS C 1 Bright A_SetTranslucent(0.8)
SKSS C 1 Bright A_SetTranslucent(0.6)
SKSS D 1 Bright A_SetTranslucent(0.4)
SKSS D 1 Bright A_SetTranslucent(0.2)
SKSS D 1 Bright A_SetTranslucent(0.1)
Stop
}
}
ACTOR SkullStaffAltAttack11 : SkullStaffAltAttack2
{
States
{
Spawn:
SKSS A 0 A_Look
See:
SKSS A 0 A_Chase
Missile:
SKSS A 0 A_FaceTarget
SKSS A 1 A_SpawnProjectile("SkullStaffAltShot12",0,0,0)
Stop
}
}
ACTOR SkullStaffAltShot12 : SkullStaffAltShot1
{
States
{
Spawn:
SKSS CCDDEE 1 Bright A_SeekerMissile(5,8)
SKSS F 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS FFGGHH 1 Bright A_SeekerMissile(5,8)
SKSS C 0 A_SpawnItem("SkullStaffAltAttack1",1,0,0)
SKSS C 1 Bright A_SetTranslucent(0.8)
SKSS C 1 Bright A_SetTranslucent(0.6)
SKSS D 1 Bright A_SetTranslucent(0.4)
SKSS D 1 Bright A_SetTranslucent(0.2)
SKSS D 1 Bright A_SetTranslucent(0.1)
Stop
}
}
Void Weaver Заменил, но результат тот же. Причем пока основной шар не долетел до цели, видно, что из него идет пара выстрелов меньшими шарами, т.е. что-то все ж спавнится и стреляет, но как только главный шар ударяется о цель, то все, никаких больше спавнов нет.
Какое-то изменение механики движка произошло, а вот какое - нужно разбираться.
Для сравнения можно запустить Инквизитор3д на старых гздумах (хотя бы 4-1-3) и на новом, и пострелять альт-атакой посоха - разница визуально (и по дамагу) будет заметна. В старых версиях шар (или спавны от него) некоторое время крутился вокруг цели, обстреливая ее очередями мелких шаров.
Не знаю, причем тут Ripper-флаг, т.к. проблема решилась добавлением +BOUNCEONACTORS актору SkullStaffAltShot1. Если же убрать флаг RIPPER, то урон ослабляется, снаряд крутится дольше, но повреждает в итоге меньше. Т.к. наличие Ripper усиливает урон, значит эти флаги вполне сочетаются у данного актора.
Заодно убрал лишние флаги и заменил спаунитемы на спаунитемЭксы с НОЧЕКПОЗИШН. В кодах снарядов вместо нулей проставил единички. Не знаю, повлияли ли эти действия каким-то образом, без +BOUNCEONACTORS эффекта не было.
всем привет, такая проблема, при запуске GZDoom/QZDoom даёт выбор wad-файла, после выбора файла выдаёт ошибку: script error, "gzdoom.pk3:reverbs.txt" line 4: SC_GetFloat: Bad numeric constant "0.890"
что делать?
Добавлено спустя 9 минут 31 секунду:
решил проблему запуском через терминал, но вылезли другие проблемы: нет звука, мобы в чёрных квадратах и тд
что с этим делать если не секрет
Может попробуешь QZDoom? У меня однажды рипнулся GZDoom и переустановка не помогала. Я перешел на QZDoom и нормально было. Потом когда что-то отлегло в ПК и GZDoom ожил, вернулся на него.
вылезли другие проблемы: нет звука, мобы в чёрных квадратах и тд что с этим делать если не секрет
Тут нет телепатов, для начала стоило бы обрисовать конфиг твоей специфической системы (Rapsberry Pi (какая модель?), Debian), версию порта и в каком именно ваде эти проблемы возникают. А также хотя бы один скрин проблемы если она имеет какое-то графическое проявление.
Если выше описанное проявляется просто при запуске IWAD, то:
1) чёрные квадраты - это типичная трабла неподходящих видеодрайверов для текущей версии порта.
2) отсутствие звука - аналогично, скорее всего проблема в дровах.
3) какое такое "и тд"? Это принципиально.