Doom Reloaded

New maps, and other projects whose primary focus is new maps, belong here.

Note: This forum, and all forums below it, are not for questions or troubleshooting! Threads created here are for active projects only! If you have questions please feel free to use the Editing subforums or General forum.
Forum rules
The Projects forums are only for projects. If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.

Got a cool project idea but nothing else? Put it in the project ideas thread instead!

Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.

Please read the full rules for more details.
User avatar
Matt
Posts: 9696
Joined: Sun Jan 04, 2004 5:37 pm
Preferred Pronouns: They/Them
Operating System Version (Optional): Debian Bullseye
Location: Gotham City SAR, Wyld-Lands of the Lotus People, Dominionist PetroConfederacy of Saudi Canadia
Contact:

Post by Matt »

eliw00d wrote:this reminds me of when i first started working on zdoomadv!
hivemind :laff:

Shotgun's starting to take shape, but as a nitpick, wouldn't it make more sense to load with the trigger hand, with the weak hand on the pump and the butt of the gun assumed to be resting on the Doomguy's body?
User avatar
Darlos
Posts: 133
Joined: Mon Apr 09, 2007 1:41 am
Location: Durham, NC
Contact:

Post by Darlos »

Vaecrius wrote:
eliw00d wrote:this reminds me of when i first started working on zdoomadv!
hivemind :laff:

Shotgun's starting to take shape, but as a nitpick, wouldn't it make more sense to load with the trigger hand, with the weak hand on the pump and the butt of the gun assumed to be resting on the Doomguy's body?
Well, I suppose you COULD do that, but I haven't seen a single video game or movie where anyone does that. Plus, you kinda have to push up on the shotgun to push in a shell, which could potentially shove the pump down in your other hand, accidentally cocking it.

I thought about this. Originally I had it just as you described, but only because it was easier to animate (that is, there was already a sprite where he was holding it by the pump). But, I don't think anyone actually loads a shotgun like that. So I decided to not be lazy and make a reverse sprite where there was no hand on the pump, as if he were holding it by the grip.

If movies and video games don't prove anything to you, then try this out:

http://www.policeone.com/police-product ... les/90794/

The "combat loading" described in this article is interesting, but I don't think I'll apply it because people will probably want to load more than one round most of the time. Plus under my system loading isn't that slow.

According to a different article I found, you can load it while holding the pump/barrel, but this is more for when you have time and there's no pressure.
User avatar
eliw00d
Posts: 585
Joined: Sun Oct 17, 2004 2:46 pm
Location: Duluth, MN
Contact:

Post by eliw00d »

technically you don't need the whole hand racking the slide animation. not sure if you've ever used a handgun before, but instead of racking the slide you would press the slide release lever after inserting a fresh magazine. but that's just coming from a firearms nut like myself.

and as far as the loading animation for the shotgun, i like how you have him pump after the first shell. tactical loading ftw! :D
User avatar
Matt
Posts: 9696
Joined: Sun Jan 04, 2004 5:37 pm
Preferred Pronouns: They/Them
Operating System Version (Optional): Debian Bullseye
Location: Gotham City SAR, Wyld-Lands of the Lotus People, Dominionist PetroConfederacy of Saudi Canadia
Contact:

Post by Matt »

...and now we all know why HD has no reload animations. >_>

Yeah, it's fine the way it is. The strong-hand reload does work, but seeing the Doomguy's a leftie his pump hand is his strong hand which precludes the advantage of doing that.

What I was mostly looking at was the awkward appearance of the gun being flipped over to the other side when you rack it after reloading, but then now that I think about it the original animation isn't much better and only makes sense if firing from the hip or something.
User avatar
Darlos
Posts: 133
Joined: Mon Apr 09, 2007 1:41 am
Location: Durham, NC
Contact:

Post by Darlos »

*** UPDATE ***

New and improved! Now the Plasma Rifle has a full unique reload animation. You can see the magazine and everything. This took me a while...

You'll notice that when he pulls out the clip while there's still ammo left, there's a "bzz" noise like some kind of small discharge. Notice that when you empty the magazine, that noise happens with the last shot, and isn't present when you remove the magazine. Fun stuff.

Now, for replies...
eliw00d wrote:technically you don't need the whole hand racking the slide animation. not sure if you've ever used a handgun before, but instead of racking the slide you would press the slide release lever after inserting a fresh magazine. but that's just coming from a firearms nut like myself.

and as far as the loading animation for the shotgun, i like how you have him pump after the first shell. tactical loading ftw! :D
Yeah... actually I knew that. I guess I could animate it to where the slide is stuck back after the last shot. I actually thought about that. But, I won't worry about it for the moment. Right now I'm basically trying to make reload animations that look cool.
Vaecrius wrote:...and now we all know why HD has no reload animations. >_>

Yeah, it's fine the way it is. The strong-hand reload does work, but seeing the Doomguy's a leftie his pump hand is his strong hand which precludes the advantage of doing that.

What I was mostly looking at was the awkward appearance of the gun being flipped over to the other side when you rack it after reloading, but then now that I think about it the original animation isn't much better and only makes sense if firing from the hip or something.
You know, I don't know if the doom marine is actually left-handed or something. Maybe he's naturally left-handed but learned to be ambidextrous when it comes to using guns. Who knows.

As for the shotgun flipping over... that was just me not wanting to actually animate the left arm going up to the right. Plus, I didn't think it would be THAT weird. I think it looks good. Again, I just did what looks cool.
User avatar
Matt
Posts: 9696
Joined: Sun Jan 04, 2004 5:37 pm
Preferred Pronouns: They/Them
Operating System Version (Optional): Debian Bullseye
Location: Gotham City SAR, Wyld-Lands of the Lotus People, Dominionist PetroConfederacy of Saudi Canadia
Contact:

Post by Matt »

[tangent] Like I mentioned in another thread, it seems to me the Doomguy is cross-dominant: he prefers to use his left hand, but aims with his right eye. Since a pistol isn't held to the side of your body, you can use whichever hand you want, while a long gun has to be held along the side your aiming eye is on. [/tangent]

One bug with the shotgun: The first time you get a shotgun and reload a shell, whether you rack the shotgun right afterwards is reversed: get an empty shotgun and you don't chamber the first time you load it, but type IDFA and you see yourself shoot one shot, rack the gun, load one shell, and rack again.

Very nice work with the plasma gun. I'd add a new sequence dropping the old cell, though, or add a longer lag time before you load the new cell, so you don't get that Counterstrike effect where it looks like you're taking the cell out and putting it back in...
User avatar
Darlos
Posts: 133
Joined: Mon Apr 09, 2007 1:41 am
Location: Durham, NC
Contact:

Post by Darlos »

Vaecrius wrote:[tangent] Like I mentioned in another thread, it seems to me the Doomguy is cross-dominant: he prefers to use his left hand, but aims with his right eye. Since a pistol isn't held to the side of your body, you can use whichever hand you want, while a long gun has to be held along the side your aiming eye is on. [/tangent]

One bug with the shotgun: The first time you get a shotgun and reload a shell, whether you rack the shotgun right afterwards is reversed: get an empty shotgun and you don't chamber the first time you load it, but type IDFA and you see yourself shoot one shot, rack the gun, load one shell, and rack again.

Very nice work with the plasma gun. I'd add a new sequence dropping the old cell, though, or add a longer lag time before you load the new cell, so you don't get that Counterstrike effect where it looks like you're taking the cell out and putting it back in...
Weird shotgun stuff... of course, I didn't really do this taking IDFA or such cheats into consideration. I use a lot of "ammo" actors to handle variables such as current magazine load or whether or not the gun is fully emptied or not. I think IDFA maxes all of these values out, which messes up the code a bit. Lesson here is: don't cheat. That sorta kills the point anyway.

As for the plasma gun... yeah, I'll put a bit more lag in there between unloading and loading. I should probably do the same with the pistol. Think he should load shells slower too? I don't want to make things too slow. I want to keep the "spirit" of Doom.
User avatar
Matt
Posts: 9696
Joined: Sun Jan 04, 2004 5:37 pm
Preferred Pronouns: They/Them
Operating System Version (Optional): Debian Bullseye
Location: Gotham City SAR, Wyld-Lands of the Lotus People, Dominionist PetroConfederacy of Saudi Canadia
Contact:

Post by Matt »

Oh, wait, I see the problem now. It only happens when I spawn as the vanilla doomplayer, which causes other things like the "empty" guns I pick up. Yeah, nevermind the picking up an empty gun, as long as you're playing with the custom playerclass the problems only come up with idfa. Still seems awfully unpolished to leave it like that, but then that's just me...

But then there's the playerclass issue... now that you've got the playerpawn issues worked out, do you really still need to keep the unmodified playerclass in the keyconf? This issue is going to come up with not just anyone who idfa's to try out all the new weapons right away, but anyone who runs this wad without having set their playerclass to "Marine".
User avatar
Darlos
Posts: 133
Joined: Mon Apr 09, 2007 1:41 am
Location: Durham, NC
Contact:

Post by Darlos »

Alright, I fixed the issues I believe. For some reason I believed you had to had the original DoomPlayer class in there with "nomenu". I thought I read that in the wiki. Well, I took it out so now it works fine. You always start with my guy.

As for the weird gun problems and IDFA, I solved that by changing all of my counter actors from Ammo to Inventory. That solved it. Of course, if there's a "full inventory" code too, then I don't know what to do.

Now, I had an odd problem with the plasma rifle. It seems that after you pick one up (not start with one), it won't reload until you switch to another weapon and back. I'm not quite sure what the deal is there. Here's my code for the plasma rifle:

Code: Select all

actor FastPlasmaRifle : Weapon replaces PlasmaRifle
{
  spawnid 30
  radius 20
  height 16
  inventory.pickupmessage "You got the plasma gun!"
  inventory.pickupsound "item/gunpickup"
  weapon.selectionorder 100
  weapon.kickback 100
  weapon.ammotype1 "Cell"
  weapon.ammotype2 "CellCount"
  weapon.ammouse1 0
  weapon.ammouse2 0
  weapon.ammogive1 40
  weapon.ammogive2 0
  states
  {
  Ready:
    PLSG A 1 A_WeaponReady
    loop
  Deselect:
    PLSG A 1 A_Lower
    loop
  Select:
    PLSG A 1 A_Raise
    loop
  Fire:
  	PLSG A 0 A_TakeInventory("LoadCount3", 1)
  	PLSG A 0 A_JumpIfInventory("CellCount", 1, 4)
	PLSG A 0 A_PlayWeaponSound("fire/gunclick")
	PLSG A 3
	PLSG A 0 A_ReFire
	goto Ready
    PLSG A 0 A_FireCustomMissile ("PlasmaBall")
	PLSG A 0 A_PlayWeaponSound("fire/plsgfire")
	PLSG A 0 A_TakeInventory("CellCount", 1)
	PLSG A 0 A_JumpIfInventory("CellCount", 1, 3)
	PLSG A 0 A_PlaySound("load/plsgdsch")
	PLSG A 0 A_GiveInventory("EmptyCount3", 1)
    PLSG A 3 A_GunFlash
    goto Ready
  AltFire:
  	PLSG A 0 A_JumpIfInventory("CellCount", 30, 2)
	PLSG A 0 A_JumpIfInventory("Cell", 1, 2)
	PLSG A 0
	goto Ready
	PLSG A 0 A_GiveInventory("LoadCount3", 1)
	PLSG CD 3
	PLSG E 0 A_JumpIfInventory("EmptyCount3", 1, 3)
	PLSG E 0 A_TakeInventory("CellCount", 1)
	PLSG E 0 A_PlaySound("load/plsgdsch")
	PLSG E 4 A_PlayWeaponSound("load/plsgunld")
	PLSG F 4
	PLSG I 20
	PLSG F 4
	PLSG E 4 A_PlayWeaponSound("load/plsgreld")
	PLSG G 4
	PLSG A 0 A_GiveInventory("CellCount", 1)
	PLSG A 0 A_TakeInventory("Cell", 1)
	goto AltHold
  AltHold:
  	PLSG A 0 A_JumpIfInventory("LoadCount3", 1, 1)
	goto Ready
	PLSG A 0 A_JumpIfInventory("CellCount", 30, 5)
	PLSG A 0 A_JumpIfInventory("Cell", 1, 2)
	PLSG A 0 A_Jump(256, 3)
	PLSG A 0 A_GiveInventory("CellCount", 1)
	PLSG A 0 A_TakeInventory("Cell", 1)
	goto AltHold
	PLSG H 0 A_PlaySound("load/plsgchrg")
	PLSG H 2 A_PlayWeaponSound("load/plsgcock")
	PLSG H 0 A_TakeInventory("EmptyCount3", 1)
	PLSG G 4
	PLSG DC 3
	PLSG C 0 A_TakeInventory("LoadCount3", 1)
	goto Ready
  Flash:
    PLSF A 0 bright A_Jump (128, 3)
    PLSF A 2 bright A_Light1
    PLSF A 0 bright A_Light0
    stop
    PLSF B 2 bright A_Light1
    PLSF B 0 bright A_Light0
    stop
  Spawn:
    PLAS A -1
    stop
  }
}

actor EmptyCount3 : Inventory
{
	inventory.amount 1
	inventory.maxamount 1
}

actor LoadCount3 : Inventory
{
	inventory.amount 1
	inventory.maxamount 1
}

actor CellCount : Ammo
{
	inventory.amount 1
  	inventory.maxamount 30
}
and then the DoomPlayer setup

Code: Select all

actor FastMarine : DoomPlayer
{
	player.startitem FastPistol
	player.startitem Fist
	
	player.startitem Clip 50
	
	player.startitem ClipCount 20
	player.startitem BeltCount 200
	player.startitem ChainCount 2
	player.startitem ShellCount 8
	player.startitem ShotCount 2
	player.startitem RocketCount 2
	player.startitem CellCount 30
	player.startitem ChargeCount 40
}
As you can see, there's counters that handle things like how many shots are left in the magazine, whether or not the magazine is completely empty (this is needed to signify when extra loading effects are needed), as well as whether or not the gun is currently loading (this is necessary to avoid some weird bugs where it goes to the AltHold state when you hit reload instead of the AltFire state).

Those counters are used to do jumps. The AltFire state initializes the reloading process and does the first part of the animation, and then the AltHold state goes into a loop that keeps adding rounds until its maxed out or there's no extra rounds left. Then it completes the reload animation.

As you can see in the player setup, even though you don't have any of the guns to start with, you still start with their full magazines. Of course, you never see this until you pick up a gun. I might change this around a bit, depending on how much ammo a gun you pick up I think should come preloaded with.

So, can anyone see what the problem with the plasma rifle's reloading might be?
User avatar
Matt
Posts: 9696
Joined: Sun Jan 04, 2004 5:37 pm
Preferred Pronouns: They/Them
Operating System Version (Optional): Debian Bullseye
Location: Gotham City SAR, Wyld-Lands of the Lotus People, Dominionist PetroConfederacy of Saudi Canadia
Contact:

Post by Matt »

The "full inventory" code is "give all". I don't think there's any sort of inventory.nogiveallcheat flag or whatever, but given the propensity of inventory flags in these mods I think most people using the give all cheat would have enough warning.

As for the plasma rifle, I tried overwriting the above code over what was in the last version I downloaded, and everything works fine, so I have no idea what might be the problem...
User avatar
Unknown_Assassin
Posts: 2468
Joined: Wed Apr 12, 2006 5:17 pm
Location: Where dead carcasses lie
Contact:

Post by Unknown_Assassin »

You are doing great in improving reload animations. The shotgun reloading animation (switching of the hands) is kind of wierd, but you already know about that. Still, it is better than the regular standard Doom 2 shotgun. I can't wait to see your other weapons. :)
User avatar
Darlos
Posts: 133
Joined: Mon Apr 09, 2007 1:41 am
Location: Durham, NC
Contact:

Post by Darlos »

Alright alright, I figured out the weird problem I was having with the Plasma Rifle. Actually, it was the same problem I was having with the Shotgun back when I was making that.

I'm having an odd problem where if a gun alt-fires and doesn't have an alt-hold state, then when its done, the next action taken with any weapon goes straight to the Hold state, whether its primary or alt fire. For instance, the way I had the shotgun set up before was that all of the reloading was handled in the AltFire state. There was no AltHold. Now, I have my "semi-automatic" guns set up to where they only fire once per button press by having a Hold state that just does nothing and loops on itself with A_ReFire until the button is released. So what happened was if I reloaded the shotgun in such a manner that A_ReFire is called within the shotgun's AltFire state (that is, you hold the button to load more than one shell), for some reason when I tried to fire the pistol or shotgun - both of which had that do-nothing Hold state - the gun wouldn't fire the first time you pressed the button. You had to press it once and then again to actually fire the first time... after that it fired normally.

Further proving my point is the fact that after reloading the shotgun in such a manner as to call the A_ReFire within it, if you switched to another weapon and tried to reload it right away - even if it were fully loaded - it did weird things because it jumped to that weapon's AltHold state.

Now, I fixed this by doing something with the Shotgun's reload algorithm that I should have before, which is what I did with most of the other guns sometime after making the shotgun's original reload algorithm: use the AltFire state to initialize the reloading and use the AltHold state to make a loop for loading individual rounds. Not only is this a more efficient manner of counting the rounds used, but it also makes sure the AltHold state is actually called and runs down to a goto Ready line, which avoids that weird bug because then the game isn't stuck in "hold mode".

So, the lesson here is that if your gun has an AltFire state, you should make sure you have an AltHold that goes to "goto Ready" even if the AltHold otherwise does nothing. I have no idea how the state of one gun can affect another, but it can.

Hell, this might even be a legitimate bug worth reporting. I know its not because of anything I did. What do you guys think?

In other news, now that I'm totally done with the Pistol, the Shotgun, and the Plasma Rifle, I think I'll move to the Chaingun. I have to draw that things body like I did with the Plasma Rifle. Should be fun.
User avatar
Darlos
Posts: 133
Joined: Mon Apr 09, 2007 1:41 am
Location: Durham, NC
Contact:

Post by Darlos »

*** UPDATE ***

A fun update here! I have the reloading done for the chaingun, complete with new animations and sounds. I still have some tweaking to what I've done so far to do, but I figured I'd go ahead and post this to get some general feedback.

Also, I've added some new features. Now guns leave convincing bullet holes and make sparks when they hit surfaces. Also, there's now hit/ricochet sounds. Not only does this just sound good, but it also lets you hear when you're being shot at from a distance.

I'm having a weird problem with the pistol. I try to change the bullet spread, but it not only remains pinpoint, but it also seems to be a bit below where it should be. Here's the code for your viewing pleasure:
Spoiler:
I want it with both a horizontal and vertical spread of 3, but... well, fire it and see for yourself. All of the other "bullet" weapons work (shotguns, chaingun... even enemy fire). Not sure why this one is giving me trouble.
User avatar
Unknown_Assassin
Posts: 2468
Joined: Wed Apr 12, 2006 5:17 pm
Location: Where dead carcasses lie
Contact:

Post by Unknown_Assassin »

I could be wrong, but the hold state should be the same as the fire state.
User avatar
Darlos
Posts: 133
Joined: Mon Apr 09, 2007 1:41 am
Location: Durham, NC
Contact:

Post by Darlos »

First of all, I use the hold state to simulate the "semi-automatic" fire. See, if you hold the fire button it just loops through that until you let go. I don't think thats what's causing my problem, as I use the same strategy with other guns. Plus, I don't see how that affects the fire spread.
Post Reply

Return to “Levels”