Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
rdwpa

*** The "ask a miscellaneous editing question" thread ***

Recommended Posts

scifista42 said:

Put your replacement graphics into your wad and give them the same names as the respective graphics in the IWAD (so that your graphics will override the IWAD ones). The fist weapon graphics (PUNG*) are actually sprites, so they need to be placed between sprite markers - put an empty S_END lump behind them (and optionally SS_START before them), that should do the trick. The status bar face graphics (STF*) are not sprites, but just hud graphics, so they shouldn't be between any special markers.

Interesting, would have thought the status images would be sprites. Thank you very much for the information!

Share this post


Link to post

Probably a big nOOb question here.

But how do I add a MAPINFO into Slade 3? I don't see one there. When I create one it labels it as a Marker. That doesn't seem right.

Finally, does it matter where I place this file? I was told to keep custom (realm 667 monsters for instance) above the wad.

Share this post


Link to post
Zemini said:

Probably a big nOOb question here.

But how do I add a MAPINFO into Slade 3? I don't see one there. When I create one it labels it as a Marker. That doesn't seem right.

It is right. After you make the lump, click "Edit as Text" on the right, select language format "ZDoom MAPINFO" and write your MAPINFO code in there.

Placement inside the wad doesn't matter, as long as it's NOT between any special markers (such as between sprite markers or among map-specific lumps).

Share this post


Link to post
Zemini said:

But how do I add a MAPINFO into Slade 3? I don't see one there. When I create one it labels it as a Marker. That doesn't seem right.

Well logically why should that matter? It's a plain text lump. Slade3 calls it a marker because it's 0 bytes when you first create it. Add some text and save the lump and it'll then recognise what you intend it to be.

Zemini said:

Finally, does it matter where I place this file? I was told to keep custom stuff above the wad.

No. As long as it's not disrupting the order of lumps of your map, it doesn't matter where it is.

Share this post


Link to post

Thanks, yah I am just using it to change music, sky, and possibly a title screen with an intermission for each level.

UPDATE: Got mostly everything to work!

Share this post


Link to post

Using GZDoom (Doom 2 in Hexen Format).

Is there some way to assign a sound to linetype 215, Teleport to Line? I made some Quake 1 style teleporters where the player walks through the black, rectangular, portal type of jobby. Looks nice but the lack of sound makes it a bit odd. Maybe there's some other way of going about this I'm not thinking of?

Share this post


Link to post

Thanks scifista42, will flail around with that... haven't scripted anything since FraggleScript was a thing when Legacy was still alive. It's about the only thing keeping me from releasing this map.

Share this post


Link to post

What is the legal status or position on regarding editing doom levels from the actual game? I have copy/pasted parts of the shareware doom 1 levels into my doom 2 Wad for story telling purposes. I have read at wad station/id games and that they don't accept these.

Really kinda blows.

Share this post


Link to post

You can edit any resource as long as it exists in its own game. You cannot stick Doom1 maps into Doom2, as per your exact example.
However, the /idgames archive doesn't accept edited IWAD maps of any kind, simply as a blanket manoeuvre to prevent low effort edits of E1M1 with 500 cyberdemons.

Share this post


Link to post
Edward850 said:

simply as a blanket manoeuvre to prevent low effort edits of E1M1 with 500 cyberdemons.

Also because of copyright. I believe that idSoftware explicitly stated somewhere (sometime in the 90s) that usermade maps shall not be derived off their official maps.

Share this post


Link to post
Edward850 said:

You can edit any resource as long as it exists in its own game. You cannot stick Doom1 maps into Doom2, as per your exact example.
However, the /idgames archive doesn't accept edited IWAD maps of any kind, simply as a blanket manoeuvre to prevent low effort edits of E1M1 with 500 cyberdemons.

What if, say, I have a completely original map, but decide to have an Easter Egg secret that's an exact recreation of E1M1 (Think 'Rage'). Is that okay?

Share this post


Link to post
scifista42 said:

Also because of copyright. I believe that idSoftware explicitly stated somewhere (sometime in the 90s) that usermade maps shall not be derived off their official maps.



No, they didn't. Their license specifically allows to modify game resources, as long as the resulting product is for the same game. This includes maps, because they are nowhere being mentioned as an exception.

This clause made KDiZD possible.

It may be that they changed their license later, but they can't revoke it for older purchases.

Share this post


Link to post
Graf Zahl said:

No, they didn't. Their license specifically allows to modify game resources, as long as the resulting product is for the same game. This includes maps, because they are nowhere being mentioned as an exception.

This clause made KDiZD possible.

It may be that they changed their license later, but they can't revoke it for older purchases.

The original EULA, included with Doom 1.1, seems to only specifically grant the right to make new levels, and modify IWAD levels, oddly:

You may not: rent, lease, modify, translate, disassemble, decompile, reverse engineer, or create derivative works based upon the Software.

Notwithstanding the foregoing, you may create a map editor, modify maps and make your own maps (collectively referenced as the "Permitted Derivative Works") for the Software. You may not sell or distribute any Permitted Derivative Works but you may exchange the Permitted Derivative Works at no charge amongst other end-users.

A later EULA, from when the Doom games were distributed by Activision, is broader, but also maddeningly vague:

The term "Software" includes all elements of the Software such as data files, images appearing in the Software, and screen displays.

[...]

ID grants to you the non-exclusive and limited right to create for the Software (except any Software code) your own modifications (the "New Creations") which shall operate only with the Software (but not any demo, test or other version of the Software). ID reserves all rights not granted in this Agreement, including, without limitation, all rights to ID's trademarks. You may include within the New Creations certain textures and other images (the "ID Images") from the Software.

[...]

You, whether directly or indirectly, shall not [...] modify (except as permitted by section 2. hereinabove) or alter the Software

It says you can include "certain" textures, whatever those are, and "other images", but doesn't even say you can *modify* them. Of course, it makes no sense to include unmodified Doom graphics in your Doom PWAD... unless it's a reference to the old days when people would merge all the IWAD flats and sprites so their new graphics would work properly, something which has long been considered "illegal" (and certainly a poor use of space / bandwidth). It would be kind of ironic if that specific use was actually the only real legal one.

Share this post


Link to post
Zemini said:

I have copy/pasted parts of the shareware doom 1 levels into my doom 2 Wad for story telling purposes.

I think you should build the iwad parts from scratch instead of copy/pasting. You can have the iwad map open in another window and check line lengths and vertex positions on the grid to make sure you recreate it perfectly.

Share this post


Link to post

Replicas and homages suck anyway IMO, they always strike me as "uninspired" rather than "cool" as the author might have intended. The rare examples of homages that I like need to have some added qualities that vastly overshadow the mere fact that they're homages, like this.

Share this post


Link to post
Edward850 said:

You can edit any resource as long as it exists in its own game. You cannot stick Doom1 maps into Doom2, as per your exact example.
However, the /idgames archive doesn't accept edited IWAD maps of any kind, simply as a blanket manoeuvre to prevent low effort edits of E1M1 with 500 cyberdemons.


Well that is lame. I really don't see the problem with this since it is all the same game right?

scifista42 said:

Also because of copyright. I believe that idSoftware explicitly stated somewhere (sometime in the 90s) that usermade maps shall not be derived off their official maps.


In the 90's that would be more relevant. But who buys classic and not d2? Only thing I can think of is the iphone version .. which isn't supported anymore.

Here is what I did:

Doom 2 wad - Doom format - GZdoombuilder
Copy/pasted 10-60% of the shareware levels into my GZdoom builder. I modified a lot of them but some of them are untouched. I was going to "hellify" parts of it.

I also downloaded a texture wad that gave me access to the unique Doom 1 textures. Otherwise I had a LOT of HoM effects in my game. This file was found on the archve by the way...

TimeOfDeath said:

I think you should build the iwad parts from scratch instead of copy/pasting. You can have the iwad map open in another window and check line lengths and vertex positions on the grid to make sure you recreate it perfectly.


I am sure someone has done this already that I could use? Ill search for it. If not how would anyone know? If i made an exact replica of e1m1 ... it would still be a clone and rejected.

Linguica said:

The original EULA, included with Doom 1.1, seems to only specifically grant the right to make new levels, and modify IWAD levels, oddly:
A later EULA, from when the Doom games were distributed by Activision, is broader, but also maddeningly vague:
It says you can include "certain" textures, whatever those are, and "other images", but doesn't even say you can *modify* them. Of course, it makes no sense to include unmodified Doom graphics in your Doom PWAD... unless it's a reference to the old days when people would merge all the IWAD flats and sprites so their new graphics would work properly, something which has long been considered "illegal" (and certainly a poor use of space / bandwidth). It would be kind of ironic if that specific use was actually the only real legal one.



Convoluted legal jargon! I think it basically says you can't change/modify the iwad and/or make profit from it. Textures as you say are the unique things/SSG/flats/ect for each game I assume.

scifista42 said:

Replicas and homages suck anyway IMO, they always strike me as "uninspired" rather than "cool" as the author might have intended. The rare examples of homages that I like need to have some added qualities that vastly overshadow the mere fact that they're homages, like this.


too be honest, I am doing it just to practise. I have learned more about map making/coding in the last week then in my entire life. I kind of was using it to mess around but now I have a campaign started and I must finish it. I might just cut away the shareware stuff and reuse the prefabs I already have for a new game at some point.

Share this post


Link to post
Zemini said:

Well that is lame. I really don't see the problem with this since it is all the same game right?

Doom1 and Doom2 are not the same game. Buying The Ultimate Doom does not automatically give you Doom2, and vice versa.

It also doesn't change the /idgames rule of "no un/modified IWAD maps", which is not a legal requirement but a rule of the archive.

Share this post


Link to post
Edward850 said:

Doom1 and Doom2 are not the same game. Buying The Ultimate Doom does not automatically give you Doom2, and vice versa.

It also doesn't change the /idgames rule of "no un/modified IWAD maps", which is not a legal requirement but a rule of the archive.


Well I don't want to derail this thread. I am just going to do a hard edit to the DOOM sectors to make them something else when I get finished building the backbone to this campaign. Makes me a little sad but whatever.

Share this post


Link to post
Edward850 said:

Doom1 and Doom2 are not the same game. Buying The Ultimate Doom does not automatically give you Doom2, and vice versa.

From a technical standpoint, they kinda are. They play exactly the same, and recycle about %80 of the assets. Sure, Doom II adds some things to the mix, like monsters and another shotgun, but they hold more similarities than differences. Hell, the same thing could be said about Super Mario Brothers, and the Japanese Super Mario Brothers II.

Share this post


Link to post

How can I make it so hit scanner can't hurt each other? Do I need to change their attack to a super duper fast invisible projectile instead? If that is the case, how can I make a new projectile - or just copy one from DoomImp

Here is what I want to do

1. Make a Blue imp fire ball for my Ice imp monster.

2. Make it so Spiderdemons can't hurt each other - as well as Arachnotrons. These masterminds seem to be the hardest monsters to place correctly without either making the fight a cake walk (they kill each other) or realistic. I assume grouping it as same species will work for arachno/spiderdemon, but since one uses hit scans...

3. Where can I get a "copy" of the info for a vanilla monster and projectiles? LIke a wad file with decorate/png sprites lists all its properties. A great example would be what we get from Realm667? I am looking for the Pain Elemental and Imp specifically. I want to see how it works, so I can make a special monster spawner. This is the best way for me to learn so I don't have to keep asking you all a bunch of questions!!

Share this post


Link to post

1. Define the new projectile (may or may not inherit from DoomImpBall), call it for example IceImpBall, then make your monster fire it by A_CustomMissile.

2. Make a new projectile which must inherit from FastProjectile, make the Spider Mastermind fire these projectiles instead of hitscans, and set Mastermind's and Arachnotron's property "species" to the same value.

3. All default class definitions are available here: Classes. For example, all Doom monster definitions can be found in "Doom classes -> Characters -> Monsters".

Share this post


Link to post

I have a ACS question regarding conditions. I have just started learning this with no prior experience to scripting but I do understand the purpose of condition.

Using GZBuilder in UDMF format

I'm trying to set a condition where once a player enters a linedef it activates a script to break a Tank and a monster spawns out of it. However since this Tank is breakable I want to set it so if the player destroys the Tank prior to entering the line, the script will terminate. So essentially, you break tank and the monster is dead inside, you don't break tank and the tank will break open and a monster pops out. Both the Tank and obviously the monster is an actor.

This is the template Doom wiki gives me, which makes sense but I have no idea how to set it right properly. I'm struggling to comprehend Functions and how they are set up within these conditional scripts.

script # type
{
    if(condition)
    {
        command1;
    }
This is my unfinished, broken attempt to make the script work
The Tank tid is 50
script 13 (Void)

{
    if (Actor_Alive (50) = True));  // This is the error I'm having. First I don't know how to actually define the actor's tid
in this function and also have a error with a missing )". I have little idea how to go about it.
    {
       Thing_Destroy (50);
       SpawnSpot ("DoomImp", 51, 51, 0);
    }
If anyone could correct my issue it would be much appreciated and I can definitely learn from a working example.

Share this post


Link to post
Chezza said:

if (Actor_Alive (50) = True)); [B]// This is the error I'm having. First I don't


Either leave out the '= True' part or replace the '=' with '=='.
A single '=' is not used as a comparison operator in ACS, but, like C, as an assignment. ACC will consider this as a syntax error if I am not mistaken.

Share this post


Link to post
Chezza said:

if (Actor_Alive (50) = True)); // This is the error I'm having. First I don't know how to actually define the
actor's tid in this function and also have a error with a missing )". I have little idea how to go about it.

1. As Graf Zahl said, there should be "==" instead of "=".
2. The statement has 2 left brackets and 3 right brackets, that's the error with a missing ).
3. There shouldn't be a semicolon at the end of the line, because then the conditioned block will actually consist merely of one empty statement (;), and the following block in curly parentheses will be executed regardless on the condition.

I suggest you to find a C/C++ tutorial to learn basics of the language's syntax, as ACS is closely based on C.

Share this post


Link to post
Graf Zahl said:

Either leave out the '= True' part or replace the '=' with '=='.
A single '=' is not used as a comparison operator in ACS, but, like C, as an assignment. ACC will consider this as a syntax error if I am not mistaken.


Yes, in your if statement ensure you are using a double equals, because as Graf said that will be either causing an error, or alternately it will be setting that value to true, not checking if it's true.

Also, unless you made a function yourself I don't think Actor_Alive() exists - I could be mistaken; but just in case, you could try the following instead:

if(ThingCount(T_NONE, 50) > 0) {
    //do stuff
}
To explain, I'm using ThingCount() - this counts how many things on the map fit the specified criteria. The criteria given here is T_NONE and 50 - T_NONE is sort of a catchall, instead of specifying a specific monster or thing, it looks at everything. The 2nd value is the thing ID it should be looking at. All I am doing is checking if there is more than zero on the map.

Hope this helps. :)

Share this post


Link to post

Graf, scifista and Dragonfly, you are legends! Your help is a success. I had to play around with your examples a little bit and it worked.

This is what I wrote:

script 13 (Void)

if (ThingCount(T_NONE, 50) == 1)
{
Thing_Destroy (50);
SpawnSpot ("DoomImp", 51, 51, 0);
}

As long as the condition will choose actors based on their tid rather than class itself then everything will go swimmingly as I intend to have multiple of these tanks.

Thanks again people, it was really needed :)

Share this post


Link to post

Is it possible to generate textures (in particular, flats) on the fly using ACS?
I was thinking of making a fractal renderer or something like that in ACS.
A quick scan through the Zdoom wiki and I'm leaning towards no, but maybe there's some weird undocumented hack or something.

I have an alternate way though if it's not possible. Create a bunch of 1x1 sectors tagged in a way that it's easy to convert between x and y coordinates to a sector tag. Add single-color flats to the WAD with each of the colors you want to use.
Then for each "pixel" in your fractal image, you compute a byte and use that as an offset into an array of flat names that you set your sector's floor to.

I've also been working on a maze generator using ACS, but I haven't had issues with that since it's easy to raise or lower floors to make the maze walls.

Share this post


Link to post

Tosi, sounds like you're running some pretty interesting concepts there.

As said already, no, it's not possible to generate textures in game. You could use something to pre-render a few flats and then use acs to pick a random one of said flats; that'd be quicker than faffing with 1x1 sectors and applying a unique tag to each.

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
×