Creating New Creatures/Sprites
Forum rules
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. This forum is archived - please use this set of forums to ask new questions.
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. This forum is archived - please use this set of forums to ask new questions.
You can simply create a new fireball and fire it using A_CustomMissile from your dehacked enemy.
When creating any sprite, remember the lumpname format for the graphics. First comes the unique 4-letter sprite identifier:
XXXX
Next comes the frame letter, which can range from A-Z. Think of a frame as a single animation step for this creature. Which frame is displayed at any given time depends on the current state of the monster and how you've setup its frames in the decorate.
XXXXA
Each frame must have 1, 8, or 16 rotations. The number following the frame letter does two thing -- sets this graphic as the specified rotation for the frame, and tells ZDoom how many frames the graphic will have. If you have only 1 (which will look the same from all sides and will seem to "turn" with you as you move around it -- barrels, corpses, etc), you use the number 0 in the single rotation for this frame. If it's going to have 8, you use the numbers 1-8. If it's going to have 16, you still use 1-8, and then use 9, A, B, C, D, E, F, and G, which will display between the other 8 frames as you rotate around the enemy.
XXXXA2
Another feature of Doom (and therefore ZDoom) is automatic mirroring. Using this, a single graphic can be reversed and used for two frames, saving space in the WAD. To do this, you add an optional extra frame letter and rotation number to the end of the sprite name:
XXXXA2A8
The graphic we just created will display as the XXXX sprite during the A frame when the creature is being seeing from it's front-left or front-right. For one of those, ZDoom will automatically reverse the graphic.
When creating any sprite, remember the lumpname format for the graphics. First comes the unique 4-letter sprite identifier:
XXXX
Next comes the frame letter, which can range from A-Z. Think of a frame as a single animation step for this creature. Which frame is displayed at any given time depends on the current state of the monster and how you've setup its frames in the decorate.
XXXXA
Each frame must have 1, 8, or 16 rotations. The number following the frame letter does two thing -- sets this graphic as the specified rotation for the frame, and tells ZDoom how many frames the graphic will have. If you have only 1 (which will look the same from all sides and will seem to "turn" with you as you move around it -- barrels, corpses, etc), you use the number 0 in the single rotation for this frame. If it's going to have 8, you use the numbers 1-8. If it's going to have 16, you still use 1-8, and then use 9, A, B, C, D, E, F, and G, which will display between the other 8 frames as you rotate around the enemy.
XXXXA2
Another feature of Doom (and therefore ZDoom) is automatic mirroring. Using this, a single graphic can be reversed and used for two frames, saving space in the WAD. To do this, you add an optional extra frame letter and rotation number to the end of the sprite name:
XXXXA2A8
The graphic we just created will display as the XXXX sprite during the A frame when the creature is being seeing from it's front-left or front-right. For one of those, ZDoom will automatically reverse the graphic.
- Shinu-Hazad
- Posts: 30
- Joined: Sat Aug 28, 2004 10:31 pm
Thx hotwax
Thx hotwax...makes alot more sense now.
- Shinu
- Shinu
- Shinu-Hazad
- Posts: 30
- Joined: Sat Aug 28, 2004 10:31 pm
help me out here guys....
help me out here guys...
ACTOR Enra : DoomImp 20608
{
Health 2200
Radius 22
Height 64
Speed 12
PainChance 20
MONSTER
+FLOORCLIP
SeeSound "Grunt/Sight"
AttackSound "Grunt/Attack"
PainSound "Grunt/Pain"
DeathSound "Grunt/Death"
ActiveSound "Grunt/Active"
Obituary "%o was destroyed by an Enra"
HitObituary "%o was mauled by an Enra"
DropItem Medkit
States
{
Spawn:
ENRA AB 10 A_LOOK
LOOP
See:
ENRA AABBCCDD 4 A_CHASE
LOOP
Missile:
ENRA E 10 A_FaceTarget
ENRA F 5 bright A_MissileAttack
Goto See
Pain:
ENRA G 3
ENRA G 3 A_Pain
Goto See
Death:
ENRA H 5
ENRA I 5 A_Scream
ENRA J 5 A_NoBlocking
ENRA K 5
ENRA L -1
Stop
Raise:
ENRA KJIH 5
Goto See
}
}
*/
What i did was i simply recolored an imp so it looked different. I saved the bmp files as Enra (and with the frame labels etc.) so that i could use them in scripting the new monster. However...it doesnt work. whenever i try to run it in zdoom...it says that its missing a string...unexpected end of life or something. I probably did it all wrong...but if you guys could help me out a lil...id really appreciate it.
- Shinu
ACTOR Enra : DoomImp 20608
{
Health 2200
Radius 22
Height 64
Speed 12
PainChance 20
MONSTER
+FLOORCLIP
SeeSound "Grunt/Sight"
AttackSound "Grunt/Attack"
PainSound "Grunt/Pain"
DeathSound "Grunt/Death"
ActiveSound "Grunt/Active"
Obituary "%o was destroyed by an Enra"
HitObituary "%o was mauled by an Enra"
DropItem Medkit
States
{
Spawn:
ENRA AB 10 A_LOOK
LOOP
See:
ENRA AABBCCDD 4 A_CHASE
LOOP
Missile:
ENRA E 10 A_FaceTarget
ENRA F 5 bright A_MissileAttack
Goto See
Pain:
ENRA G 3
ENRA G 3 A_Pain
Goto See
Death:
ENRA H 5
ENRA I 5 A_Scream
ENRA J 5 A_NoBlocking
ENRA K 5
ENRA L -1
Stop
Raise:
ENRA KJIH 5
Goto See
}
}
*/
What i did was i simply recolored an imp so it looked different. I saved the bmp files as Enra (and with the frame labels etc.) so that i could use them in scripting the new monster. However...it doesnt work. whenever i try to run it in zdoom...it says that its missing a string...unexpected end of life or something. I probably did it all wrong...but if you guys could help me out a lil...id really appreciate it.
- Shinu
- Lexus Alyus
- Posts: 4220
- Joined: Tue Jul 15, 2003 5:07 pm
- Location: Nottingham, UK
- Contact:
- Shinu-Hazad
- Posts: 30
- Joined: Sat Aug 28, 2004 10:31 pm
thx
thx...that was part of the problem. The sequence of attack frames was incomplete...needed to specify what the missile was. I aslo changed the id number and made the creature original, rather than inheriting from a "parent". couple questions tho...if ye don mind.
1: Projectiles: if i were to create a custom projectile or even take one and re-edit it, i would include in the monster's scripting by using : ENRA G 6 A_CustomMissile("Projectile name", 0, 0, 0)?
2: How would i make a projectile become a homing missile?
1: Projectiles: if i were to create a custom projectile or even take one and re-edit it, i would include in the monster's scripting by using : ENRA G 6 A_CustomMissile("Projectile name", 0, 0, 0)?
2: How would i make a projectile become a homing missile?
- TheDarkArchon
- Posts: 7656
- Joined: Sat Aug 07, 2004 5:14 am
- Location: Some cold place
- Shinu-Hazad
- Posts: 30
- Joined: Sat Aug 28, 2004 10:31 pm
thx darkarchon
alright, thx darkarchon...btw when do you think the second community project will be complete?
- Shinu-Hazad
- Posts: 30
- Joined: Sat Aug 28, 2004 10:31 pm
hey
ppl,
1: When writing the script for a newly created monster...there is the height and radius. If i were to use an imp for the image of the creature and want to make it double its size...how would i do that? I set the height to like 112 and the radius to 40...but the image remains the same. Only when placed into a wad and played with do the radius and height exist. So, the height works and so does the radius, however the image does not adjust to these commands.
1: When writing the script for a newly created monster...there is the height and radius. If i were to use an imp for the image of the creature and want to make it double its size...how would i do that? I set the height to like 112 and the radius to 40...but the image remains the same. Only when placed into a wad and played with do the radius and height exist. So, the height works and so does the radius, however the image does not adjust to these commands.
