Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Antroid

Using textures from multiple IWADs

Recommended Posts

I tried searching for some info on this, but admittedly failed.

So, how do i go about using most unique textures from Doom, and also skies from Plutonia, in a doom 2 pwad? Do i exclude the patches (since including unmodified patches isn't allowed) and ask people to use the plutonia and doom1 wads when running mine? I would also need to specify that my wad should be the last in the list, so that the titlepic doesn't get overwritten by doom's or plutonia's. That seems very stupid.

Another question, can i include slightly modified standart patches? Like a sky texture that's only mountains from, say, ep2 doom sky, that i put over other skies? Or recolored bloodfalls (water- and mud-falls)? Rules seemed to suggest that i can, but it seems suspicious.

I should probably note that my wad is zdoom-only (not too feature-packed, though).
Oh and it's not anywhere near completed, but this stuff bothers me a lot.

Share this post


Link to post

If you want to go by what id requests, make sure the WAD requires the IWADs you're taking resources from. Your PWAD would essentially contain new stuff, and it would rely on the IWADs to read the original resources.

That seems very stupid.

It's "stupid" only because some ports allow drag and drop, where you'd need to be more careful when loading the WADs. The ability to load multiple WADs is inherent to the engine (including ports)... does that become stupid just because a feature was added to make most, but not all, loading scenarios faster and easier? There are drawbacks to drag and drop, and this is one of them, perhaps the most important. You get this issue more so when you have those idiots that go about how using anything but drag and drop is retarded, indiscriminately. Sometimes, the command line or a launcher are convenient, and not knowing how they work is indeed stupid, given how many options Doom engines grant the user.

Not that drag and drop can't be used with more than one WAD loaded from -file, but the user might have to be careful how he selects the WADs (I was testing and on my system, and selecting the PWAD first would make it load last).

As for DOOM II and Plutonia, simply use Plutonia as the IWAD, as it pretty much contains everything normally found in DOOM II. This is what we did for Plutonia 2.

Modified graphics (or other lumps) are fine, particularly if they come from any IWADs that need to be loaded when running the PWAD. Even unmodified graphics should be okay, under the same conditions, as the EULA says you "may include within the New Creations certain textures and other images (the "ID Images") from the Software."

To add the IWAD from The Ultimate DOOM, just make sure your TEXTUREx definitions include the data from both IWADs.

Share this post


Link to post

Since it's for ZDoom, you can simplify your task a lot by using a TEXTURES lump (the new text format) to define the borrowed textures without having to bother with PNAMES. Then you can put a GameInfo block in the MAPINFO lump to change the name of the titlepic. That way, whatever the load order, the Doom and Plutonia titlepics will not be used, because the engine will look for MYTITLE (or whatever other 8-character name you want) instead of TITLEPIC.

Share this post


Link to post

myk
I said "stupid" mostly because i don't expect everybody to pay attention to readmes. The wad still launches fine anyways, and the missing textures only appear as "!"s later. Or can i make it so the wad doesn't even run unless all the necessary wads are used?

Also, even if i use a launcher or the command line, the order of the wads is still important, and i never actually used drag'n'drop, so i don't know how that works. I don't argue that being able to load multiple wads is great, i just think that making people carefully add like 3 wads in certain order just to play one of them is kinda... well, i don't know how to put it mildly, but i was under the impression that this shouldn't be done.

And about Plutonia wad, i don't think it includes doom 2 skies, because i need those too! :D Essentially, i need skies from three iwads, that are named similiarly in at least two of them.

Gez
So i gather i can somehow make my wad use textures from doom.wad and plutonia.wad AND doom2.wad (which will be the iwad for it) without any overwriting errors? I remember having troubles particularly with using skies from all three in one wad, some of them overwrote others. And can i add custom textures that use patches from those wads along with custom patches?
If so, that would be great, is there any howto on this new format TEXTURE lump? The Zdoom wiki page really doesn't help.

Also, please forgive my noobness, but the gameinfo just plain doesn't work. It says this:

Script error, "shithaha_restored.wad:MAPINFO" line 1:
gameinfo: Unknown top level keyword

I have the latest GZdoom version and have double-checked the spelling'n'stuff in mapinfo. Also, there doesn't seem to be a way to replace "M_EPISOD" and "M_DOOM" gfx lumps, which i replaced by blank pixels since they were in the way. Well, M_EPISOD i just checked and it can stay, but i really want M_DOOM out.

Share this post


Link to post

Antroid said:
I said "stupid" mostly because i don't expect everybody to pay attention to readmes. The wad still launches fine anyways, and the missing textures only appear as "!"s later.

Indeed, but my point is that it shouldn't be dealt with as so much of a problem when there is a need for extra settings of options, because while people often say "people don't bother with text files, don't ever bother with anything slightly complicated," that in itself is a generalization that helps to create the problem. But fortunately, with Gez's tips, this becomes even less of an issue, if not a non-issue, in your case.

Plutonia does include the DOOM II skies. What's named in the same way are the TEXTURE1 entries for the skies (which you'll be able to edit), but the patches are different (RSKY1-3 aren't used as skies in Plutonia, but they're in the WAD). In any case, if you find one or two DOOM II patches missing that you need, taking the small liberty of including them in your PWAD shouldn't hurt, as it's not nearly as bad as ripping a whole set of unique resources.

Share this post


Link to post

I am still horribly confused, actually. Gameinfo doesn't even work for me, and if it did, there doesn't seem to be a way to remove "M_DOOM" from the menu.
How should my PNAMES look? Are doom2/doom/plutonia patches needed there, or can i just have my custom ones that are included in the wad take numbers from 0 to 30 or so and they will not be mixed up with similiarly numbered patches from other wads?
How should i use that TEXTURES lump, do i have to recreate every texture from the required wads? I think there are some identically-named patches in doom and doom2(/plutonia) that are different... Maybe i'm wrong though.

Since a few unmodified pathces seem to be allowed, as you say, isn't it better to include plutonia's sky patches? Also, don't laugh, but i think i used a patch or two from TNT skies also. -_-
Can i include them, and use TEXTURES solely for doom.wad's resources?

Share this post


Link to post

Generally, if you rip a couple of resources from somewhere, it may still be a copyright issue but it's a minor thing compared to taking a whole pack of stuff. It you use Plutonia you get all the wall patches in addition to skies. But if you just want a patch or two from Plutonia, maybe you're better off using DOOM II as the IWAD.

I think some patches for switches bear the same name. In that case, you might be better off just making sure the IWADs are loaded in the order you want. I'd even say that it would be a good idea to suggest a smart multiple IWAD loading scheme to the ZDoom devs. If they agree with the logic behind the idea (complying fully with id's copyright requests), they probably won't mind adding a way to make more than one IWAD loaded be added in a certain order (after all, the engine tells IWADs apart from PWADs by the header), maybe defined in a PWAD or otherwise determined by default. This could be extended to determining the order of all WADs loaded, not just IWADs, if that's useful.

Share this post


Link to post

I don't think they would make a modification that big (well, it seems very big). Even if they did, it wouldn't completely solve the overlapping names problems.

Really, if i was allowed to include some of plutonia and TNT's sky patches in my wad, it would be way easier (let's see, three patches from plutonia, and four from TNT). I'd just need doom.wad as an addition to doom2.wad, and that's easy to understand for everybody. Maybe i can get away with it if i recolor a few pixels in them? :D

(and really, most of my doubts about using multiple iwads come from an experience of a demo one-level release of this wad on a russian doom forum, where Shadowman himself told me that making people use several wads at once is silly. I understand now that it's considered absolutely normal here, and that makes me happy)

Share this post


Link to post

Antroid said:
I don't think they would make a modification that big (well, it seems very big).

It might not be that complicated; have ZDoom look for a text format lump in the loaded WADs where it checks in what (WAD-based) order the resources are added to each type of resource.

Shadowman himself told me that making people use several wads at once is silly. I understand now that it's considered absolutely normal here, and that makes me happy

Maybe a not so distant communist past makes worrying about copyrights less important. I wouldn't say it's absolutely normal, but the idea is supported by some people who basically don't want to rip whole games when an alternative is possible, and many do in fact check the text files. It's kind of necessary as often WADs require a certain engine, and some have you get additional resources (like the ones that rely on gothictx.wad).

Share this post


Link to post

Well yeah, nobody usually gives a crap about copyrights around here, that's very much true. Anyway, there's basically no alternative: either i tell people to add the wads themselves, or i include lots of illegal resources in my wad. Which i don't want to do.

So since the obvious choice is the former for anywhere except Russia (since we are lazy and don't honor copyrights that much), the only quesion worth answering is: can i include a few sky patches from tnt and plutonia in my wad, and what if i ever so slightly modify them?

Share this post


Link to post

Yeah, like I said, that's a minor thing, as you're just pecking a few resources from those IWADs, as opposed to pretty much offering all or most of the graphic (or other) assets that are unique to the game being ripped. It's not any worse than id did, in basing music off metal tracks and basing the cacodemon on D&D artwork. Just minor liberties taken.

Share this post


Link to post

Thank you for your patience, it would seem my problem's solved then. :D Back to doombuilder!

Share this post


Link to post
Antroid said:

If so, that would be great, is there any howto on this new format TEXTURE lump? The Zdoom wiki page really doesn't help.

Also, please forgive my noobness, but the gameinfo just plain doesn't work. It says this:

I have the latest GZdoom version and have double-checked the spelling'n'stuff in mapinfo.

Latest official or latest SVN? New official versions are few and far between, in large part because Randy and Graf don't see too much of a point in them, given that there are SVN versions available. Precompiled Win32 builds can be found here.


As for TEXTURES, it is very simple. You do not need a PNAMES lump for it to work, and you only need to define textures you want to use that aren't already defined in the IWAD. While TEXTURES allow you to customize a lot of things about the textures (including scale, orientation, color blending or translation...), for a basic texture without fancy effect it's quite straightforward. Here's an example:

texture SGLASS1F, 128, 256
{
   XScale 1.0
   YScale 1.0
   Patch W_266, 0, 128	{}
   Patch W_269, 0, 0	{}
}
This is a 128x256 texture named SGLASS1F, with a normal scale. It is made up of two patches, W_266 offset to 0, 128 and W_269 offset to 0, 0. The curly braces ({}) are where special effects would go, but since none of them are desired here they're left empty.

myk said:

It might not be that complicated; have ZDoom look for a text format lump in the loaded WADs where it checks in what (WAD-based) order the resources are added to each type of resource.


It would be big. ZDoom first loads all resources, identify them (so that cumulative control lumps are merged together) and perform other operations and only then does it parse them. Any form of lump-based loading control would thus arrive too late.

An option to load several iwads could be possible, but it would be based on a command line argument, not on a control lump.

Share this post


Link to post

I think i have the latest official build of GZDoom. Oh well, since i don't need that fancy new stuff now, i guess i'll stick to that one. But it's nice to know about all these features.

Share this post


Link to post

I don't know about other ports, but Eternity does not officially support loading multiple IWADs for different gamemodes.

Loading Plutonia or TNT over DOOM 2 is allowable and works because they are the same gamemode. This is required to support Final Doom demos recorded with doom2.exe 1.9 rather than the Final DOOM version.

Loading DOOM 1 over 2 or vice versa is NOT supported.

Therefore I do not suggest that people start making maps which require both of these IWADs to be loaded. Vanilla didn't support it. EE will not support it. I hope that other ports will join in not supporting it, because it's a retarded idea frankly.

Share this post


Link to post

Quasar said:
Vanilla didn't support it. EE will not support it.

Yes it does, as long as the WADs are loaded in the correct order and a properly complete TEXTUREx and PNAMES lumps are added to the PWAD that requires both IWADs. I would know, as I'm doing it for a project of mine.

Are you saying Eternity somehow breaks this behavior? It's not like there's anything really conflicting among the resources. Only the map names are different, and that's what the game mode defines. If the game mode is DOOM, ExMx is used, if DOOM II, MAPxx.

There is nothing to support, as it's already supported by any engine capable of loading multiple WADs. The stuff being discussed is about ensuring everything would be loaded as desired even in a careless drag and drop execution.

Next time you think of calling something "retarded" try reading what you are replying to.

Share this post


Link to post

Well my wad is zdoom-only anyway. But how is using textures from both doom and doom 2 retarded? The other needed iwads are being loaded as additional simple pwads, i don't see how this could be impossible, and how making this impossible is NOT retarded.

Even that one idea of zdoom looking for a lump that specifies needed wads and their order is nice.

Oh and i don't have any textures from doom 2 or doom in my wad's TEXTURE lump (i only have the doom 1 sky textures there, so that they are named differently from doom2's), and it works. Is that because i use zdoom?

Share this post


Link to post
Antroid said:

Well my wad is zdoom-only anyway. But how is using textures from both doom and doom 2 retarded? The other needed iwads are being loaded as additional simple pwads, i don't see how this could be impossible, and how making this impossible is NOT retarded.

Even that one idea of zdoom looking for a lump that specifies needed wads and their order is nice.

Oh and i don't have any textures from doom 2 or doom in my wad's TEXTURE lump (i only have the doom 1 sky textures there, so that they are named differently from doom2's), and it works. Is that because i use zdoom?

Just for the record, I didn't say using DOOM 1 and DOOM 2 textures is bad. I said requiring two IWADs to be loaded to play a map is bad.

It's not impossible, but it's making life harder than it needs to be for both the end user and for port authors who are now suddenly forbidden to make any advancements that might require a single IWAD (or at LEAST IWADs from the same gamemode only) to be loaded.

If you can show me any map on /idgames from before this year that required this, I'll go and rewrite a few dozen lines of code in EE and admit I was wrong. Otherwise I'm going to chalk this sudden trend up to a bunch of copyright lawyering and fearmongering and continue to insist that is an inappropriate practice.

Share this post


Link to post

Quasar said:
It's not impossible, but it's making life harder than it needs to be for both the end user and for port authors who are now suddenly forbidden to make any advancements that might require a single IWAD (or at LEAST IWADs from the same gamemode only) to be loaded.

Heh, what? The game always uses only one IWAD as the game-determining "internal" resource file, and no one here is expecting anything else. The only relevant differences in reading two during load-up is that one must make sure the right one is selected as the IWAD, and that the PWAD that makes sure all the resources are used properly is loaded on top. Assuming you haven't altered the way Doom normally loads WADs, which could screw up the loading of multiple WADs, there isn't really anything you should be worrying about. IWADs are WADs like any other.

If there are possible methods to make it even easier for ports to handle these situations, especially considering they added loading capabilities (drag and drop, at least), which is what we were discussing, it certainly wouldn't hurt to see them implemented, as long as the coders are interested in bothering with the details. If not, WADs loading more than one IWAD might just be a bit less straightforward to load in some ports. In those that rely more on the command line, or for users who commonly use it or use launchers that apply it, this is a non-issue.

If you can show me any map on /idgames from before this year that required this, I'll go and rewrite a few dozen lines of code in EE and admit I was wrong.

Code what? I just tested this in Eternity and stuff seems to work like anywhere else, except that, as in some engines, there were texture or patch errors depending on the game mode. This is expected, as we'd need to prepare the PWAD taking care of TEXTURE1 and PNAMES.

Otherwise I'm going to chalk this sudden trend up to a bunch of copyright lawyering and fearmongering and continue to insist that is an inappropriate practice.

It's one thing to be concerned about a possible technical issue, another to insultingly try to belittle people's attitudes or position. This has nothing to do with "lawyering and fearmongering." Maybe you are fearmongering, however, by overreacting here.

It's quite simple. The most transparent way for people to respectfully use each other's work and creations it to simply take into account what they requested for when their work is used by others. In a community, this goes for anyone involved. Designers making levels, musicians composing songs, coders programming engines, community game users... and the game's developers. I don't see any particular reason to exclude them, or any reason not to take their "permissions text file" at face value like anyone else's. I would even say that excluding them pretty much erodes any respect we may garner between each other. People who don't respect their parents do not tend to make good siblings. So, unless taking the GPL or WAD text file permissions notes into consideration is also "lawyering and fearmongering," we must conclude you got ahead of yourself in this instance, getting rather opportunistic and hypocritical in your concerns, which themselves may have been unnecessary, if you thought that people were requesting additional game modes or the like.

Share this post


Link to post

Well, since it is not very unusual for a wad to use resources that come from multiple iwads (maybe it wasn't done a lot, but for some reason i thought it was a well-known practice or something when i started my wad), i don't think it's a very bad innovation to make such a loader. It would display a message like "this wad also requires doom.wad's resources", and if said doom.wad is specified as an iwad (i.e. the launcher knows it's location), it launches automatically, maybe without said message, but if it can't find it, it lets you browse for it, or for a substitute. That seems like a nice feature, if a bit pointless.

Share this post


Link to post

I tried -iwad doom2.wad -file doom.wad and while yes, it does mostly work, at least a couple features of Eternity do not like this.

Chiefly, if you use the console to go to MAP01 and visit the automap, you will notice that it proudly says "MAP01: New Level" despite the fact that the level being loaded exists in what should be considered the IWAD.

Loading two or more IWADs this way confuses the code we use to keep track of where the IWAD is. Other features that use this handle-tracking include START map detection, and the "start on first new map" feature. Maybe I can fix this without a lot of trouble, but it's still a good demonstration of why it can turn into a mess. I don't know if any other ports have similar problems, but it's not a wild stretch of the imagination to suggest that they might.

My concerns may be a lot of things, such as misguided or overblown in their proportions, but I fail to see how they could be hypocritical :) If offense has been taken, then I apologize for that. It's still the case though that the game engine isn't really meant to have more than one IWAD loaded, even if it happens to mostly work :)

Share this post


Link to post

Well, it works in Zdoom and it's fine by me :D I didn't try just loading doom2 with doom.wad added, but it works with my wad at the end. I needed zdoom anyway for mapinfo and decorate and stuff like that, i suppose if i was making a vanilla wad i'd not use such a mix of textures. Even though it isn't really connected in any way. (it's just that my wad is kind of a free retelling of doom and doom2's stories with a lot of liberties taken, and i need both texture sets)

Share this post


Link to post

It would be interesting if GL ports (in this case GZDoom) would read external PLAYPAL data, and only apply it to external Doom graphics from the same WAD. If in addition it supported other-game SNDINFO, we could safely make multi-game GZDoom wads.

Share this post


Link to post

Quasar said:
Chiefly, if you use the console to go to MAP01 and visit the automap, you will notice that it proudly says "MAP01: New Level" despite the fact that the level being loaded exists in what should be considered the IWAD.

This is useful for mods, mainly, essentially because the mod would make use of the resources from both IWADs. Even if the user were to want to play the original level using both IWADs for some curious reason, he could add the name back there through the usual means.

Loading two or more IWADs this way confuses the code we use to keep track of where the IWAD is. Other features that use this handle-tracking include START map detection, and the "start on first new map" feature. Maybe I can fix this without a lot of trouble, but it's still a good demonstration of why it can turn into a mess. I don't know if any other ports have similar problems, but it's not a wild stretch of the imagination to suggest that they might.

It doesn't sound like something critical, but you might want to improve the code, if anything, for the possibility that someone might accidentally drag two IWADs onto the engine. Port users often drag the IWAD onto it to start that game, possibly with a PWAD, and both IWADs are often in the same DOOM directory.

Anyway, since the possibility to load additional IWADs from -file has been there from the start, and people may try to use it regardless of what you think due to the existence of some rather obscure and frankly baroque options in Eternity, you'll probably benefit from more robust code or by ignoring what those people do. One guy's doing a ZDoom project, which Eternity most probably won't ever run, and the other a vanilla project, and if Eternity were to have problems with that, many other engines can still be used, and always vanilla itself.

There's no reason for people to restrict their choices just because it makes what they do potentially incompatible with some engine. You can tell them, "oh well, I think that won't work in Eternity and doubt I'll ever support it," but it's up to them if they find that important enough not to do what they prefer. Otherwise, every new thing a source port adds independently of what other engines support would be wrong.

Share this post


Link to post

Opinions all noted, and thanks for the discussion. I made a change just a few minutes ago that fixes the automap name problem. Frankly it was a bug from the SMMU implementation and I didn't really realize that previously.

As for the other stuff, we'll see I guess :)

Share this post


Link to post
myk said:

It doesn't sound like something critical, but you might want to improve the code, if anything, for the possibility that someone might accidentally drag two IWADs onto the engine.

The way ZDoom does it, you drag the patch wads onto the executable (including, if any, iwads loaded as pwads) and then you get a window asking you which iwad you want to run. Personally, I like that system a lot. (Of course, if you on the other hand don't like it, you can set a choice forever (or rather until you edit the ini) and the -iwad and -file command line parameters of course work.)

Share this post


Link to post

Well as i said i never use drag'n'drop, i made a few shortcuts for the most often played wads, and for the rest i use the Zdoom Launcher. How does it determine the order of added wads after drag'n'dropping, anyway?

Share this post


Link to post

Antroid said:
How does it determine the order of added wads after drag'n'dropping, anyway?

At least on my system, if you have the "html view" (the one that shows folder and file info, even thumb nails, to the left) in your folders, you can see the order in which they are selected listed there, At least it's easy to choose which is the first (top) and last (bottom). If all you have is icons (a more minimalist windows setting) the first thing you selected is usually the last added (this would be your PWAD), and the last file clicked is placed first. I'm not entirely certain what the system does to the files in the middle, though. Also, it seems better to give the PWAD a name that starts with a letter that goes after D, DO, or so on, so if alphabetical order is used by the system, the PWAD will be after the IWADs.

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
Sign in to follow this  
×