[UPDATE] ZScriptification, F through N
- Ghastly
- Topic Author
- Administrator
- Posts: 33
https://www.dropbox.com/s/9uqcongibfryymf/ZScriptification-Beastiary-FthroughN.zip?dl=0
As before, please make sure things work the way they're supposed to and it doesn't complain about deprecated things (I think I got them all). Everything should work the same as before, except for:
- Flamer Zombie: Fixed a broken association with its dynamic lights and ogg'd its sounds.
- Zombie Scientist 4: Just a note, it uses (0.1)*Random(-3, 3) in projectile pitch which doesn't actually work, I believe. It should probably be changed to FRandom, but I left it as is because I'm not 100% sure about it.
- Freezer Zombie: Commented out the Freezer drop, fixed a broken dynamic light association and converted sounds to ogg. For some reason, the sprites don't want to convert to png.
- Grell: I asked Xaser if he wanted to switch from an A_RadiusGive hack and he said yes. I made this change to the old Decorate as well, and left the A_RadiusGive version as a comment.
- Hell Apprentice: The tracer attack now transfers pointers to the trail, so obituary works correctly. Also tracked down the missing SmithGhost1 actor and added it.
- Hellsmith: Like with the Apprentice, tracer attacks now transfer pointers to the trails, and also removed the extraneous SmithGhost1 actor.
- Inferno: I put together this routine for its death state so it doesn't disappear until its projectiles are gone, so obituaries from its death projectiles work properly.
- Mauler Demon: Changed it so the first A_Chase can't jump to Missile state. There's a small chance it could trip the infinite-loop detection if it jumps back and forth from Missile to See and back.
- Medusa: Original method I used for freezing a player (spawning a solid but non-shootable actor inside him) doesn't work anymore, so it now gives a 0.0 speed powerup. I fixed both the Decorate and ZScript versions.
Please Log in or Create an account to join the conversation.
- ajogames
- Shotgunner
- Posts: 2
Ghastly wrote: Fallen, Female Scientist, Flamer Zombie, Fleshspawn, Flesh Wizard, Former Scientists 1 and 2, Freezer Zombie, Fusion Spider, Ghoul, Grell, Guardian Cube, Hangman, Hazmat Zombie, Hectebus, Helemental, Hell Apprentice, Hellion, Hell's Fury, Hellsmith, Hell Warrior, Hierophant, Inferno, Karasawa Zombie, Lord of Heresy, Machine Gun Zombie, Mauler Demon, Medusa, Minigunner, Nightmare and Nightshade.
https://www.dropbox.com/s/9uqcongibfryymf/ZScriptification-Beastiary-FthroughN.zip?dl=0
As before, please make sure things work the way they're supposed to and it doesn't complain about deprecated things (I think I got them all). Everything should work the same as before, except for:
- Flamer Zombie: Fixed a broken association with its dynamic lights and ogg'd its sounds.
- Zombie Scientist 4: Just a note, it uses (0.1)*Random(-3, 3) in projectile pitch which doesn't actually work, I believe. It should probably be changed to FRandom, but I left it as is because I'm not 100% sure about it.
- Freezer Zombie: Commented out the Freezer drop, fixed a broken dynamic light association and converted sounds to ogg. For some reason, the sprites don't want to convert to png.
- Grell: I asked Xaser if he wanted to switch from an A_RadiusGive hack and he said yes. I made this change to the old Decorate as well, and left the A_RadiusGive version as a comment.
- Hell Apprentice: The tracer attack now transfers pointers to the trail, so obituary works correctly. Also tracked down the missing SmithGhost1 actor and added it.
- Hellsmith: Like with the Apprentice, tracer attacks now transfer pointers to the trails, and also removed the extraneous SmithGhost1 actor.
- Inferno: I put together this routine for its death state so it doesn't disappear until its projectiles are gone, so obituaries from its death projectiles work properly.
- Mauler Demon: Changed it so the first A_Chase can't jump to Missile state. There's a small chance it could trip the infinite-loop detection if it jumps back and forth from Missile to See and back.
- Medusa: Original method I used for freezing a player (spawning a solid but non-shootable actor inside him) doesn't work anymore, so it now gives a 0.0 speed powerup. I fixed both the Decorate and ZScript versions.
I was playing Doom 2 using ZDoom and I wanted to spawn a Helemental, So I hit the "`" button and typed "summonfriend helemental" but everytime I do so, it keeps saying "unknown class "Helemental" " so Zdoom doesn't know it's class name, and in order to use the summon/summonfriend command, you need to type in the class name of the monster you want to spawn right after you type either summon or summonfriend
So what is Helemental's Class Name?
Please Log in or Create an account to join the conversation.
- Ghastly
- Topic Author
- Administrator
- Posts: 33
Please Log in or Create an account to join the conversation.
- ajogames
- Shotgunner
- Posts: 2
There's a useful tool in ZDoom Executor called "WAD Identifier" I used it to Identify the WAD Helemental.wad to see if there was anything wrong with the wad file, but there wasn't any issues,
Please Log in or Create an account to join the conversation.
- Blue Shadow
- Administrator
- Posts: 1129
Please Log in or Create an account to join the conversation.
- Blue Shadow
- Administrator
- Posts: 1129
- On start-up, this gets logged:
Code:Brightmap 'BMFALNM0' not found in texture 'FALNM0'
Fleshspawn
- Line 14: MissileType isn't needed, so it can be removed.
ZombieScientist, ZombieScientist2
- The "fem/*" sound definitions in SNDINFO should probably be removed, since they aren't used anywhere.
Ghoul
- Warnings about deprecated stuff:
Code:Ghoul.zip:ghoul.wad:ZSCRIPT, line 20: Deprecated flag 'DONTHURTSPECIES' used 1 warnings while compiling Ghoul.zip:ghoul.wad:ZSCRIPT Script warning, "Ghoul.zip:ghoul.wad:ZSCRIPT" line 48: Call to deprecated function A_CustomMissile Script warning, "Ghoul.zip:ghoul.wad:ZSCRIPT" line 48: Accessing deprecated function A_CustomMissile - deprecated since 2.3.0 Script warning, "Ghoul.zip:ghoul.wad:ZSCRIPT" line 49: Call to deprecated function A_CustomMissile Script warning, "Ghoul.zip:ghoul.wad:ZSCRIPT" line 49: Accessing deprecated function A_CustomMissile - deprecated since 2.3.0 Script warning, "Ghoul.zip:ghoul.wad:ZSCRIPT" line 58: Call to deprecated function A_CustomMissile Script warning, "Ghoul.zip:ghoul.wad:ZSCRIPT" line 58: Accessing deprecated function A_CustomMissile - deprecated since 2.3.0 Script warning, "Ghoul.zip:ghoul.wad:ZSCRIPT" line 94: Call to deprecated function A_CustomMissile Script warning, "Ghoul.zip:ghoul.wad:ZSCRIPT" line 94: Accessing deprecated function A_CustomMissile - deprecated since 2.3.0 Script warning, "Ghoul.zip:ghoul.wad:ZSCRIPT" line 96: Call to deprecated function A_CustomMissile Script warning, "Ghoul.zip:ghoul.wad:ZSCRIPT" line 96: Accessing deprecated function A_CustomMissile - deprecated since 2.3.0
Grell
- Due to giving the "slow down" item to the wrong actor pointer, the monster's projectile lost the ability to slow you down.
HazmatZombie
- There is no ZScript code to review. You must have mistakenly included the unmodified version.
HellApprentice
- Line 15 and 21: MeleeDamage and MeleeSound aren't needed, so they can be removed.
Hellsmith
- Line 566: the flag passed to A_SpawnItemEx is SXF_CLIENTSIDE, but in the DECORATE code, it's SXF_ABSOLUTEVELOCITY (bit flag = .
Inferno
- Line 56: the state's frame is 'J' in the DECORATE code while in ZScript it was changed to 'I'.
Medusa
- MeleeDamage and MeleeSound aren't needed, so they can be removed (both DECORATE and ZScript).
- Line 41 (DECORATE):
Code:Goto Missile+3Code:MEDU A 0 A_Jump(96, "Gaze")
- Line 67 (ZScript):
Code:if( CheckIfCloser(target, 384) && !Random(0, 2) ) //1 in 3 is not *quite* 96/256, but close enough for me.Code:Random() < 96
Nightmare
- MeleeSound isn't needed, so is can be removed.
Leaving it as it is should be fine. It picks an integer and multiplies it by a float which results in a float.Ghastly wrote: Zombie Scientist 4: Just a note, it uses (0.1)*Random(-3, 3) in projectile pitch which doesn't actually work, I believe. It should probably be changed to FRandom, but I left it as is because I'm not 100% sure about it.
You could make the monster stay after death instead of disappearing, and set the DONTGIB flag on it, so that it doesn't turn into a pile of gibs if it died under a crusher or a closing door.Inferno: I put together this routine for its death state so it doesn't disappear until its projectiles are gone, so obituaries from its death projectiles work properly.
Here's a different approach if you're interested. The benefit is that the monster doesn't interrupt its walking animation needlessly if its target is out of range:Mauler Demon: Changed it so the first A_Chase can't jump to Missile state. There's a small chance it could trip the infinite-loop detection if it jumps back and forth from Missile to See and back.
Please Log in or Create an account to join the conversation.
- Ghastly
- Topic Author
- Administrator
- Posts: 33
Ah! I didn't think of that! I have a few other things that should probably be redone with that.Blue Shadow wrote: Here's a different approach if you're interested.
Please Log in or Create an account to join the conversation.
- Ghastly
- Topic Author
- Administrator
- Posts: 33
Actually, I think I did it all in one shot while it was inside the zip and then clicked no by mistake when Winrar asked if I wanted to actually modify it. Whoops.Blue Shadow wrote: HazmatZombie: There is no ZScript code to review. You must have mistakenly included the unmodified version.
I removed SXF_AbsoluteVelocity because the actor being spawned wasn't given any velocity, so the flag wasn't even really being used. The actor itself was just a trail that didn't do anything, gameplay-wise, so I client-sided it as well.Hellsmith: Line 566: the flag passed to A_SpawnItemEx is SXF_CLIENTSIDE, but in the DECORATE code, it's SXF_ABSOLUTEVELOCITY (bit flag = .
Ah! Thanks! That is really, really good to know!Random() < 96
Yeah, but I'd also like to leave this as an example. If you think I should just make it stay, though, I'll do that.You could make the monster stay after death instead of disappearing, and set the DONTGIB flag on it, so that it doesn't turn into a pile of gibs if it died under a crusher or a closing door.
Please Log in or Create an account to join the conversation.
- Blue Shadow
- Administrator
- Posts: 1129
Admittedly, I didn't pay attention to the fact that it was spawned without velocity. My bad.Ghastly wrote: I removed SXF_AbsoluteVelocity because the actor being spawned wasn't given any velocity, so the flag wasn't even really being used. The actor itself was just a trail that didn't do anything, gameplay-wise, so I client-sided it as well.
It's okay, then. It can be left as it is.Yeah, but I'd also like to leave this as an example. If you think I should just make it stay, though, I'll do that.
Please Log in or Create an account to join the conversation.
- Blue Shadow
- Administrator
- Posts: 1129
Please Log in or Create an account to join the conversation.