[Fixed] Hexen Mana

Bugs that have been investigated and resolved somehow.

Moderator: GZDoom Developers

Forum rules
Please don't bump threads here if you have a problem - it will often be forgotten about if you do. Instead, make a new thread here.
User avatar
Chris
Posts: 2942
Joined: Thu Jul 17, 2003 12:07 am
Graphics Processor: ATI/AMD with Vulkan/Metal Support

Post by Chris »

I propose a DECORATE method. First, you create a decorate object with the same name as the existing actor, and then any fields applied to it just work to modify the actor/item. For example, creating a DECORATE entry with the actor name the same as the disc of repulsion, and changing the sprite field to use a different base spritename. I can't say I know the decorate format enough to give a proper example, but:

Code: Select all

object DiscOfRepulsion
{
  sprite MDOR
}
This would make the DoR use MDOR for the first four letters of the sprite name instead of what it normally uses. Everything else about the object would remain as-is.

I think such a method would be pretty neat to use to modify existing things too, as this would be a way to apply certain changes to non-Doom actors, which aren't available with DEHACKED.
User avatar
Nanami
Posts: 1066
Joined: Tue Jul 15, 2003 5:13 pm
Location: That little island pritch created.
Contact:

Post by Nanami »

Enjay wrote:
Nanami wrote:Why would you want to have a weapon but not allow the player to access it normally...?
Because it could be a weapon that you only get after a certain event and you are given it by a certain set of circumstances. eg a battle to the death with specific weapons in an arena where you have removed all other weapons. Or when the player is changed into another type of monster which the weapon helps simulate, or a magical weapon you are given but told you can only use the one time - for as long as you hold it - but put it down and you lose it...

OK, so I know that you can set things up so that an honest player simply doesn't have the weapon outside the given set of circumstances (in any of the above cases). However, it would be even better for the weapon to not be on a key so that even a cheating player can't easily switch to it.
It would be easy to just bind the weapon to a key once you know what weapon it is using the console. So it's just a minor inconvenience for the player. Also, it'd be pretty easy to just remove the weapon using scripts as you said.

Though having a weapon from another game when you're not supposed to is a problem, and I can't really think of any way to get rid of it, which would qualify as a bug yes?
User avatar
Sparky
Posts: 233
Joined: Sat Jul 19, 2003 10:04 am
Location: Kitchener, Ontario, Canada

Post by Sparky »

well if there are so many ways to fix this
how come radny hasent got around to it?
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49067
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Post by Graf Zahl »

Chris wrote:I propose a DECORATE method. First, you create a decorate object with the same name as the existing actor, and then any fields applied to it just work to modify the actor/item. For example, creating a DECORATE entry with the actor name the same as the disc of repulsion, and changing the sprite field to use a different base spritename. I can't say I know the decorate format enough to give a proper example, but:

Code: Select all

object DiscOfRepulsion
{
  sprite MDOR
}
This would make the DoR use MDOR for the first four letters of the sprite name instead of what it normally uses. Everything else about the object would remain as-is.

I think such a method would be pretty neat to use to modify existing things too, as this would be a way to apply certain changes to non-Doom actors, which aren't available with DEHACKED.

I agree that this is the best solution in the current situation. There is one additional thing to consider: Some items (e.g. Hexen's Centaur) use two sprite names because they have too much frames. There should be an option to replace them selectively like:

Code: Select all

sprite CENT=MONS
sprite CTXD=MOXD
User avatar
HotWax
Posts: 10002
Joined: Fri Jul 18, 2003 6:18 pm
Location: Idaho Falls, ID

Post by HotWax »

Sparky wrote:well if there are so many ways to fix this
how come radny hasent got around to it?
Because you're an asshole.
User avatar
Sparky
Posts: 233
Joined: Sat Jul 19, 2003 10:04 am
Location: Kitchener, Ontario, Canada

Post by Sparky »

Well, Other then That :D
User avatar
Chris
Posts: 2942
Joined: Thu Jul 17, 2003 12:07 am
Graphics Processor: ATI/AMD with Vulkan/Metal Support

Post by Chris »

I agree that this is the best solution in the current situation. There is one additional thing to consider: Some items (e.g. Hexen's Centaur) use two sprite names because they have too much frames. There should be an option to replace them selectively
That could be one way. But also, depending on how those frames are set, you could some something like:

Code: Select all

sprite  SPRT  # set default sprite
deathsprite  DSPR  # use this when dying
attacksprite # ect
idlesprite # ect
walksprite # ect
# ect...
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49067
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Post by Graf Zahl »

I think that would be a little bit of overkill... ;)
User avatar
Chris
Posts: 2942
Joined: Thu Jul 17, 2003 12:07 am
Graphics Processor: ATI/AMD with Vulkan/Metal Support

Post by Chris »

How so? You wouldn't require each type, just the ones you want different from the main 'sprite' base.

Plus, it'd allow new things to use a large number of sprites by specifying them like that instead of ones that already span multiple base names by only replacement.

Of course this is currently a moot point since there's only two types of things DECORATE can make right now (standard objects and projectiles, no monsters yet).
User avatar
Nanami
Posts: 1066
Joined: Tue Jul 15, 2003 5:13 pm
Location: That little island pritch created.
Contact:

Post by Nanami »

It can make standard objects, breakable objects, fake pickup items, and projectiles. =)
User avatar
Ty Halderman
... in rememberance ...
Posts: 282
Joined: Thu Jul 17, 2003 9:53 pm
Location: New Orleans LA
Contact:

Post by Ty Halderman »

Now if it could just make weapons. Or allow you to put an arbitrary sprite sequence in for an existing weapon without using up a bunch of code pointers.
User avatar
Kate
... in rememberance ...
Posts: 2975
Joined: Tue Jul 15, 2003 8:06 pm

Post by Kate »

There's another overlap in frames: The Mauler's bullet puff sprites are SHT2 which is used by Doom 2's Double-barreled shotgun.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49067
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Post by Graf Zahl »

Destroyer wrote:There's another overlap in frames: The Mauler's bullet puff sprites are SHT2 which is used by Doom 2's Double-barreled shotgun.

Bah, this makes this weapon utterly useless. Something has to be done about this! :(
User avatar
Nanami
Posts: 1066
Joined: Tue Jul 15, 2003 5:13 pm
Location: That little island pritch created.
Contact:

Post by Nanami »

Randy added new sprites for the Hexen flechettes so you can use all three in a game and they'll all show up in the inventory with different graphics. Perhaps he can do this for the questionable Strife graphics as well.

I do remember though that the Iron Lich and the cacodemon use the same frames, and a DeH can easily fix that. However, that won't work if you're playing with Strife weapons in Hexen, so...
User avatar
Sparky
Posts: 233
Joined: Sat Jul 19, 2003 10:04 am
Location: Kitchener, Ontario, Canada

Post by Sparky »

if he makes some sorta "script" that sorta "renames" each sprite some way
like when it reads the sprite is there, it thinks its called something else like bfg_one and then if used in heretic it would be bfg_two and so on
Post Reply

Return to “Closed Bugs [GZDoom]”