xaseracheron / argent Goto Github PK
View Code? Open in Web Editor NEWARGENT: a Xaserious DOOM (4) to DooM (classic) weapon mod.
ARGENT: a Xaserious DOOM (4) to DooM (classic) weapon mod.
One of those things I never quite got around to adding before release. I may spelunk around in nu-Doom's files again to see if there are any useful raw sounds.
Oh boy.
It's probably a bit too early to think about doing this just yet, but ZScript is just about at the point where it's possible to start converting the DECORATE code over. It'll still be a few versions until I'll be able to de-anonymize those functions (the real treat, I think), but it may be worth switching stuff over beforehand to prepare a bit.
This is naturally a massive undertaking, so I'm not going to leap into it without getting things stable-ish (and working with Kate to make sure that we don't turn Orange into Lemon-Lime). Just a thought at least.
Right now, the BFG is a lazy reskin of OG Doom's. While we all love its confusing-but-lovable behavior, it'd be super-cool to have an option to switch it to something more akin to the modern game, because lasers.
nu-Doom's BFG acts as sort of a mix between Fraggle's BFG11k variant (tracers spawned radially from the impact) and Quake 2's (zappy laser beams during flight), so something along these lines will be a thing. That plus a few projectile visual enhancements will make the new BFG kick some serious bum.
'Nuff said. A generalized actor & set of scripts for weapon mod variants needs to be a thing. It also may or may not be a very real work in progress. ;)
Couple of places with the mod cooldown system where you can get a cooldown 'stuck':
In both cases, the cooldown can be reset by switching mods, but this a) still shouldn't happen and b) can't be fixed by the player if you just have one mod, so ick! :P
TBH the cooldown system is pretty janky (it's just a temporary looping script that removes one unit of cooldown per-tic until it's done and the script expires), but it's uber-simple to work with so I'd like to keep it if possible. Potential emphasis on 'if'. :P
Equip the Plasma Gun with a Stun Bomb attachment, then use enough cells so you can't fire the stun bomb and try to alt-fire. The plasma changes sprites and uses the standard idle sprite instead.
It's still possible in some circumstances to self-detonate if you hug the right hand wall just right. Welpo.
Missed a spot.
Right now, Dr. BFG obsoletes Gauss and Plasma something fierce, so I'm quite likely to take a note from the new game and give it its own ammotype. I may or may not make this a toggle switch in the eventual options menu so as to not completely kill the balance on things that require mass amounts of murderation (i.e. slaughtermaps).
Suggestions on where to put the new ammo drops are most welcome.
Tiny bit of consistency that may go a long way. Thanks zrrion!
Powerups, armor, health, and ammo. Whew...
Most of the powerups are fairly easy to implement, but Haste is gonna be a barg, since PowerDoubleFiringSpeed doesn't do anything for 1-tic animations. I'll need to come up with something more creative -- hopefully something better than PowerWeaponLevel2 and lots of duplication... :(
Can't believe I forgot this! Welp. :P
Gonna band-aid this for now and perma-fix it alongside #51.
See title. Mainly:
Mod support on weapons is one thing: Actually placing a weapon upgrade into the map is another thing entirely, since I've got to include some sort of interface for choosing which weapon you want to mod (and which of the two to pick, when applicable).
Whatever it is, the new item is likely to replace (or sit alongside) the Backpack, since it seems to fit (and 'zerk is gonna be something else). All subject to potential change, of course.
...Or maybe nothing? D44M (heh) doesn't really have an impact sound. Either way, something other than a badly-$limit-ed DSFIRXPL. :P
Copypasta from Baratus:
There's a minor glitch in the way that certain weapons behave when switching weapons while firing. In my experience weapons will normally stop or finish firing upon switching, but as long as the fire button is held down, certain weapons such as the Shotgun and Super Shotgun (but not all weapons) will keep firing rather than switching immediately. This has caught me by surprise a couple of times now while I was trying to switch to a different weapon to save ammunition. Is this something to do with the weapon's A_Refire state?
This is probably due to +NOAUTOFIRE not being applied to all weapons. Should be a quick fix.
"Twin birth-mounted meat-pounders. Good for reasoning with the enemy in times of personal stress."
Doom's default fist attack has always felt weak to me, even with Berserk equipped, mostly because of its uber-slow animation and lack of interactivity. Dunno how far I want to take it with the Zhark-Fu, but certainly a more interesting set of hand-to-hand kickassery is gonna be a thing.
Might break out some spritework muscle and hand the SSG. It's indeed a bit odd/inconsistent that it has none.
Too small on certain resolutions. Can probably remedy the situation just a bit.
Needs to get done at some point.
Couple of the later frames have a stray white pixel in 'em. Nuke it!
It's not using A_WeaponOffset, so it's not nicely interpolated. Gonna be a huge pain to do, but I'm chucking this in the "eventually" bucket.
I tried to get too fancy with this one by zooming in the sprites, but the end result is all jagged and ugly. If anyone's interested in taking a shot at making a better animation, you'd be my uber-hero.
Couple of things:
A thing I'm totally not working on at this very moment. Yup.
Goes hand-in-hand with #4, since there's no real 'zerk without proper meathooks to go along with it.
Something a bit more D44M-y without straying too far from the original. Will probably replace the fullscreen HUD, while the status bar will just be a graphical edit of the existing bar with inventory added somewhere.
Nu-Doom has coolio custom crosshairs for each gun. I'd love to not only make this happen but also use it as a solution for the whole "wtf is my weapon cooldown at" problem that exists currently.
This item is really two features rolled into one:
Thanks to Jimmy for pointing out that HudMessage has an option to hide messages on the automap, which makes the second bullet point cleanly doable. Huzzah!
Expansion pack weapon plans! Oh no!
Current working MASTER LIST of COOL NEW GUNS to add:
...No idea how I'm gonna place these in-game yet, and that's a lot of spritework and tweaks, so this is stricly a post-release thing.
Need to include some versions of paletted graphics to avoid stuff like this in Linux.
I'm a bit surprised the crosshairs are misbehaving since those are treated specially anyway, but I may have forgotten to greyscale the graphics. Will check that first.
Rockets: 30/60 max.
BFG: 100 per-shot in Modern mode
For folks who don't wish to wait for bosses.
I've been shying away from random-spawner-esque stuff, but having it as an opt-in option (hehe) ain't so bad.
"I can't think of a more useless piece of equipment on Mars than a chain saw."
Doom 3 quote aside, Chainsaws are important, yet this mod doesn't have one yet. Welp!
Although nu-Doom's 'saw was an instant K.O. weapon, ARGENT's chainsaw is likely to be a bit closer to traditional Doom fare; to make up for it, though, it's gonna absolutely shred folks, providing some ridiculous damage to make up for the you-have-to-be-in-their-face factor.
Still, I may consider a special alt-attack that lets you insta-gib enemies if you have enough fuel, similar to the new game, since it's so much fun in practice. Just spitballing ideas here.
THE Major 0.3.0 milestone.
A breakdown of what still needs to be done:
...Also the mod-giver item, of course. Slightly important, that. ;)
Exists in-game. Just need to make it replace something (Blursphere, likely).
BFG and Gauss are too far up on the list. Proposed reorder: SSG, CG, BFG, Gauss --- though I may bump BFG all the way down to the bottom of the list since argent-main is going to get a unique ammotype option soonish anyway.
Oops! Funny, but undesired. :P
Welp. I suspect this is because the player's built-in target acquisition peters out after (IIRC) 1024 units. D:
I'll revisit this post-zscript-conversion. I'm limited in options now.
Forgot to adjust the gain on this one. Whoops!
Still a few things missing:
Rockets tend to have a nasty habit of exploding in your face if you're standing too close to a right-hand wall. Either reduce the radius or adjust the offsets to make this quit happening.
Official to-do list for Equipment:
Side-thought: I wonder if it's worth it to just make Merch derive from Inventory directly and simply give Mod1/Mod2 to the player. I can still keep direct references to them on the weapons, though that would probably mean I'd have to create a bunch of derivative classes. Maybe if I was redesigning the system from scratch, at any rate. noap ๐ฆ
No idea how to fix either of these at all with the current system. Will explore other options once ZScript is a thing.
THE Major 2.0 milestone.
Need to add a new sound and make it play when firing the last shot.
Aside: this sort of thing used to be a PITA since you had to do a state jump, but anonymous functions make this hella easy now. Whoop!
Do a "generic" A_Overlay which weapons can use at their whim. Will also allow me to more-permanently fix the rocket launcher detonate issue without requiring a band-aid.
I may need to evaluate if mods "need" this too. It's less significant for things with cooldown though, but consistency...
Thanks to zrrion the insect for the report.
The Rocket Launcher's pickup string LANGUAGE uses the same name as Doom's Rocket pickup string, so picking up rockets yields "You got the rocket launcher!". Whoops.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.