Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • 0
CannibalKane

Weapon doesn't exist

Question

So I'm making a mega wad with a ton of new weapons, and decided to start with melee. I tried making a baseball bat called the "Radbat" and followed 3 different YouTube tutorials, only to be met with gut-wrenching disappointment when I got the errors fixed. It's stuck as this stupid error texture when in game. Not only that, but I can't pick it up. I wrote it to overwrite the chainsaw in it's own separate character class for the future weapons, but I did everything I possibly could. Tutorials, forums, the wiki, and not one thing mentions what this is. What am I doing wrong and how do I fix it.

 

 

 

ACTOR Radrider: DoomPlayer {
Player.weaponslot 1, fist, Radbat
Player.weaponslot 2, pistol
player.weaponslot 3, shotgun, supershotgun
player.weaponslot 4, chaingun
player.weaponslot 5, rocketlauncher
player.weaponslot 6, plasmarifle
player.weaponslot 7, BFG9000
}

actor Radbat : weapon Replaces chainsaw 20000 {
weapon.selectionorder 75

inventory.pickupsound "weapon/getradbat"
inventory.pickupmessage "Now this is Rad"

states 
{
spawn:
LRBT A -1
stop

select:
RBTI A 1 A_raise
loop

deselect:
RBTI A 1 A_lower
loop

Ready:
RBTI ABC 4 A_WeaponReady
Loop

fire:
RBTS ABCD 4

goto BatSwing

BatSwing:
RBTS A 4
RBTS B 4
RBTS C 4
RBTS D 4 A_punch
RBTS D 4 A_playsound ("weapon/swingbat",CHAN_WEAPON, 0.7)
RBTS C 4
RBTS B 4
RBTS A 4 A_ReFire("BatSwing")
Goto Ready
}
}

Help1.JPG

HELP2.png

Share this post


Link to post

16 answers to this question

Recommended Posts

  • 1
2 hours ago, CannibalKane said:

Don't need to be rude. This is my first time doing weapons but here 

-snip-

 

If you open DOOM.WAD or DOOM2.WAD, you will notice that sprites generally use the following convention for their names: XXXXYZ

 

where XXXX is four characters that denote what sprite set an individual sprite belongs to (this is not a strict requirement, just a convenience)

Y is a letter (OR [, \, or ]), and denotes what frame that sprite is for that set (again, purely a convenience, but it's good practice)

Z is either 0 (denotes a sprite with no angle that always faces the player, like most pickups and decorations), or a number between 1 and 8 (denotes what angle the sprite is at) (this one is less negotiable)

 

All this to say, if we look at the weapon sprites in Doom 2

Spoiler

image.png

we will see that each one has "0" at the very end, which all of your sprites lack. Try fixing that and see if it takes care of things.

 

edit: Also, try renaming "SS_START" to just "S_START".

Share this post


Link to post
  • 2

I would check that all the sprites for the "radbat" have the right names(ex. the initial pickup sprite(under "spawn:" in the DECORATE file) would

be named 'LRBTA0');
Doom ports will often prevent actors from showing up in the game(besides as that error symbol) if everything isn't named correctly.
Also, Doom's Chainsaw already has an internal Editor Number(2005), so using the 'replace' method and giving it an additional

Editor Number(20000) is probably confusing the game.
I would remove the 'replaces' from the 'radbat' and have it stand separate.
Finally, Actor 'radbat' needs a "Weapon.SlotNumber 1" added to it or the player can't select it.

Share this post


Link to post
  • 0
3 hours ago, horselessheadsman said:

Finally, Actor 'radbat' needs a "Weapon.SlotNumber 1" added to it or the player can't select it.

 

This would be true if it were intended as a standalone resource like you'd see on Realm667. But as shown in CannibalKane's post, there is a custom player pawn defined with the 'Radbat' marked as a slot 1 weapon, which removes the need to specify "Weapon.SlotNumber" in the weapon's own code.

Share this post


Link to post
  • 0
4 hours ago, horselessheadsman said:

I would check that all the sprites for the "radbat" have the right names(ex. the initial pickup sprite(under "spawn:" in the DECORATE file) would

be named 'LRBTA0');
Doom ports will often prevent actors from showing up in the game(besides as that error symbol) if everything isn't named correctly.
Also, Doom's Chainsaw already has an internal Editor Number(2005), so using the 'replace' method and giving it an additional

Editor Number(20000) is probably confusing the game.
I would remove the 'replaces' from the 'radbat' and have it stand separate.
Finally, Actor 'radbat' needs a "Weapon.SlotNumber 1" added to it or the player can't select it.

I tried all that and still nothing. I am genuinely so lost.

Here's all the code in the decorate below.

 

ACTOR Radrider: DoomPlayer {
Player.weaponslot 1, fist, Radbat
Player.weaponslot 2, pistol
player.weaponslot 3, shotgun, supershotgun
player.weaponslot 4, chaingun
player.weaponslot 5, rocketlauncher
player.weaponslot 6, plasmarifle
player.weaponslot 7, BFG9000
}

actor Radbat : weapon 20000 {
weapon.selectionorder 75

Weapon.SlotNumber 1

inventory.pickupsound "weapon/getradbat"
inventory.pickupmessage "Now this is Rad"

states 
{
spawn:
LRBT A -1
stop

select:
RBTI A 1 A_raise
loop

deselect:
RBTI A 1 A_lower
loop

Ready:
RBTI ABC 4 A_WeaponReady
Loop

fire:
RBTS ABCD 4

goto BatSwing

BatSwing:
RBTS A 4
RBTS B 4
RBTS C 4
RBTS D 4 A_punch
RBTS D 4 A_playsound ("weapon/swingbat",CHAN_WEAPON, 0.7)
RBTS C 4
RBTS B 4
RBTS A 4 A_ReFire("BatSwing")
Goto Ready
}
}

HELP3.png

Share this post


Link to post
  • 0

honestly at this point the easiest way to diagnose the problem would be for you to share your WAD, OP

Share this post


Link to post
  • 0
15 hours ago, ramon.dexter said:

Are the sprites in the correct namespace? Exclamation mark is shown, so the engine cannot find the required graphics...

Yeah I made sure all the sprites were in the right place. If it's a graphic error, is it probably because of it's ready animation? I tried to make the bat glow like a slow blinking light when it's in the ready state.

Share this post


Link to post
  • 0

The exclamation mark is shown, when graphics are missing. So, you weapon exists, works, but engine cannot find its graphics. Is that so hard to understand? Share your archive, or show us screenshot of how it's organized...

Share this post


Link to post
  • 0
21 hours ago, ramon.dexter said:

The exclamation mark is shown, when graphics are missing. So, you weapon exists, works, but engine cannot find its graphics. Is that so hard to understand? Share your archive, or show us screenshot of how it's organized...

Don't need to be rude. This is my first time doing weapons but here 

ORDERhelp.JPG

Share this post


Link to post
  • 0

I wasnt rude. You'll notice when I start to be rude. I just wanted to have your attention. Mission accomplished. When the big <!> shows, it marks missing graphics, period. No matter how much you THINK you have you archive organized correctly, when this mark shows, your archive has some problem. The problem could be placing graphics to incorrect place, or incorrect naming. When working with doom engine, some things are MANDATORY and cannot be done differently, becuase different naming will simply not work.

Share this post


Link to post
  • 0
On 8/3/2023 at 1:06 AM, ramon.dexter said:

I wasnt rude. You'll notice when I start to be rude. I just wanted to have your attention. Mission accomplished. When the big <!> shows, it marks missing graphics, period. No matter how much you THINK you have you archive organized correctly, when this mark shows, your archive has some problem. The problem could be placing graphics to incorrect place, or incorrect naming. When working with doom engine, some things are MANDATORY and cannot be done differently, becuase different naming will simply not work.

Dam really? That kinda blows but I'll try, thank you.

Share this post


Link to post
  • 0
On 8/3/2023 at 12:42 AM, SMG_Man said:

 

If you open DOOM.WAD or DOOM2.WAD, you will notice that sprites generally use the following convention for their names: XXXXYZ

 

where XXXX is four characters that denote what sprite set an individual sprite belongs to (this is not a strict requirement, just a convenience)

Y is a letter (OR [, \, or ]), and denotes what frame that sprite is for that set (again, purely a convenience, but it's good practice)

Z is either 0 (denotes a sprite with no angle that always faces the player, like most pickups and decorations), or a number between 1 and 8 (denotes what angle the sprite is at) (this one is less negotiable)

 

All this to say, if we look at the weapon sprites in Doom 2

  Reveal hidden contents

image.png

we will see that each one has "0" at the very end, which all of your sprites lack. Try fixing that and see if it takes care of things.

 

edit: Also, try renaming "SS_START" to just "S_START".

Holy shit it actually worked thank you so much dude omg. That was a pain tryna figure out. One more question though, does every single weapon I make need it's own S_START and S_END?

Screenshot_Doom_20230804_053048.png

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×