Better way of replaceing stuff in Doom

Moderator: Graf Zahl

User avatar
Doomed Soul
Posts: 203
Joined: Sun Apr 30, 2006 16:54
Location: In front of my monitor working on Hell Opps.

Better way of replaceing stuff in Doom

Post by Doomed Soul »

Since in mods like The Stranger when there is a monster that is replaced with DECORATE you can't get to a certain part of the level you can only access after killing the monster that the new monster replaces (Like MAP07 in Doom2).

Code: Select all

ACTOR DemonOfSmackage
{
         Health 150
         Speed 25
         Replace HellKnight
         States
         {
         Spawn:
         TNT1 A 0 A_Die
         Death:
         TNT1 A 0
         Stop
         }
}
Replaces could be a value thingy in which the value is the monster/weapon/item/"is_there_any_other_spawnable_stuff?" it replaces, like when you change things with DeHackEd. Ya know. Lets say, for instance, that you want to replace the Shotgun. The new shotgun's code would have "Replace Shotgun" in it somewhere in the top and where ever a shotgun is spawned/dropped (like when you kill a shotgunner zombie dude he drops his shotgun) so you don't have to replace the Shotgunner dude hmself. Also if you replace a monster with it , when a certain script that involves the replaced monster is activated, the new monster counts as the one it replaces, but only to that script and/or any other scripts that go with it.
I think I covered that well.
User avatar
wildweasel
DRD Team Admin (Inactive)
Posts: 2132
Joined: Wed Jun 29, 2005 22:00
Location: the Admincave!

Post by wildweasel »

I could really use this feature as well, because I'm tired of replacing a Doom monster and just having the original appear in wads that spawn them via ACS (KZDoom7 is a prime example).
User avatar
Enjay
Developer
Developer
Posts: 4753
Joined: Tue Aug 30, 2005 23:19
Location: Scotland

Post by Enjay »

I've said a few times that, to me, one of the biggest limitations of DECORATE is the inability to edit the built in actors properly - especially things that are spawned by other actors (eg blood). It's one of the few things left that DEHACKED is still the best solution for - even if DEHACKED is desperately short of features by comparison. However, I also belieive that it is just a matter of time before this becomes possible and I suspect the suggested method is probably not the best and strikes me as inconsistent with other DECORATE conventions.
User avatar
Tormentor667
Stronghold Team
Posts: 3555
Joined: Sun Nov 13, 2005 23:15
Location: Germany

Post by Tormentor667 »

I agree with Enjay, but as well, I think this idea makes sense!
User avatar
Graf Zahl
GZDoom Developer
GZDoom Developer
Posts: 7148
Joined: Wed Jul 20, 2005 9:48
Location: Germany

Post by Graf Zahl »

This won't happen - for a very simple reason: Once all actors have been exported into (G)ZDoom.pk3 all you will have to do is replace the files in question. Implementing hacks to work around this limitation is not an acceptable option.
User avatar
MartinHowe
Posts: 154
Joined: Tue Aug 30, 2005 22:07
Location: East Suffolk (UK)

Post by MartinHowe »

Graf Zahl wrote:Once all actors have been exported into (G)ZDoom.pk3 all you will have to do is replace the files in question.
If this is to work, this MUST be one-file-per-actor (currently, with the few items externalised, it is not). Ask anyone who's modded for DN3D CON format why that is :)
User avatar
Graf Zahl
GZDoom Developer
GZDoom Developer
Posts: 7148
Joined: Wed Jul 20, 2005 9:48
Location: Germany

Post by Graf Zahl »

It won't be exactly one file per actor but in the end they will be grouped so that they can be easily replaced (i.e. all sub-actors belonging to a monster will be grouped with that monster.) The question is, how much sense does that make for decorations or standard pickup items?


But if you really think that each projectile etc. should have its own file please say so.
User avatar
Enjay
Developer
Developer
Posts: 4753
Joined: Tue Aug 30, 2005 23:19
Location: Scotland

Post by Enjay »

If the actors were placed in a directory within the pk3/zip (assuming Zdoom will also have zip support) then presumably that would help the neatness and the actual number of files would become less important. Certainly breaking it up into grouped files as a minimum is required. The bigger the groups, presmably the more likely cumulative loading of WADs/projects will be to cause conflicts.
User avatar
MartinHowe
Posts: 154
Joined: Tue Aug 30, 2005 22:07
Location: East Suffolk (UK)

Post by MartinHowe »

Enjay wrote:The bigger the groups, presmably the more likely cumulative loading of WADs/projects will be to cause conflicts.
Exactly, this is why DN3D modding was such a pain - you can't compose CON files as you have to replace each entire file. In any case, as Enjay just said, surely one-per-actor isn't a problem if the whole thing is in an archive? After all, that's what WAD format was originally created for - the internal development phase of doom had one lump per physical file, more or less. Of course a REPLACE keyword (or something like that) would be better but I accept would be more difficult to do.
User avatar
Graf Zahl
GZDoom Developer
GZDoom Developer
Posts: 7148
Joined: Wed Jul 20, 2005 9:48
Location: Germany

Post by Graf Zahl »

MartinHowe wrote:In any case, as Enjay just said, surely one-per-actor isn't a problem if the whole thing is in an archive?

No, it isn't. It will only make the archive larger. ;)

And even though I see some value in separating monsters and related objects I don't see much of a point in separating all the decorations because being able to replace them doesn't have much use.

On the other hand, you won't simply be able to replace anything at will. There are several actors that have subclasses or are simply needed.

But no matter how you handle it, you will never be able to get a watertight system that can't get screwed by a modder's carelessness.
User avatar
Enjay
Developer
Developer
Posts: 4753
Joined: Tue Aug 30, 2005 23:19
Location: Scotland

Post by Enjay »

Graf Zahl wrote:No, it isn't. It will only make the archive larger. ;)
Then use RARs. They compress everything much smaller. :joker:
Graf Zahl wrote:And even though I see some value in separating monsters and related objects I don't see much of a point in separating all the decorations because being able to replace them doesn't have much use.

On the other hand, you won't simply be able to replace anything at will. There are several actors that have subclasses or are simply needed.

But no matter how you handle it, you will never be able to get a watertight system that can't get screwed by a modder's carelessness.
These are all limitations I both expect and can live with. Especially the last one. Modders have been releasing crap/ faulty levels since 1994. Sure, make the system as easy as possible but if someone screws up, they screw up. It's not your problem.

Most of the time people will (I suspect) want to replace relatively simple things and do dehacked-like tricks with them. If someone really needs to replace a more complex actor, they'll just have to live with trying to define something for themselves and the fact that auto-spawning routines (etc) will need to be taken into consideration. Getting access to the simple actors is a very good start.

Return to “Closed Feature Suggestions”