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

Newbie questions: text editing and level packs.

Recommended Posts

I'm kinda new to the whole Doom editing thing. I've got the hang of making levels in Doom Builder 2, but how do I change text? Like, the text that you get at the end of episodes (or after certain levels in Doom 2) and level names.

Also, I know each Doom game has around 30 levels. If I only have, say for example, 15 levels in my WAD, what happenes when the player beats level 15?

Share this post


Link to post
Dann Woolf said:

Also, I know each Doom game has around 30 levels. If I only have, say for example, 15 levels in my WAD, what happenes when the player beats level 15?


They'd go to the stock MAP16 in the IWAD (such as Doom2.wad).

Share this post


Link to post

Or to Map31 if Map15 has a secret exit. Some ports will show the end-of-game cast call if desired.

Dann Woolf said:

How do I change text? Like, the text that you get at the end of episodes (or after certain levels in Doom 2) and level names.

The traditional (and most widely supported) approach is to use a DeHackEd patch/lump, which works fine though there are string length limits. Alternately, the replacement text could be added as map and cluster properties in a MAPINFO lump.

Share this post


Link to post
GreyGhost said:

Or to Map31 if Map15 has a secret exit. Some ports will show the end-of-game cast call if desired.
The traditional (and most widely supported) approach is to use a DeHackEd patch/lump, which works fine though there are string length limits. Alternately, the replacement text could be added as map and cluster properties in a MAPINFO lump.


Is there no way to make the game end after a certain map?

Also, I looked up that DeHackEd and it says that it alters the executable. I'm using ZDoom. If I change the text to suit my wad will it have any effect on other wads?

Share this post


Link to post
Dann Woolf said:

Also, I looked up that DeHackEd and it says that it alters the executable.

Since Boom, this is not needed. Dehacked used a text format to save patches so as to distribute them without distributing the exe, and also so that the same patch could be used with different versions of the exe. Boom added the capacity to load such text files as lumps and interpret them, so that the port itself did the changes at run-time, and modifying the exe was no longer needed. (Plus, it's not like dehacked would have been able to modify boom.exe or any other port.)

Most source ports now are able to load dehacked patches and support most modifications (though not necessarily all) that can be done this way. Support for map name change is very common.

So you can include a lump named DEHACKED in your mod that replaces all map names this way. It will only affect your mod since it will only be loaded when your mod is loaded, being a part of it.

Though if you use ZDoom, it's simpler to use the MAPINFO lump.

Share this post


Link to post
Gez said:

Since Boom, this is not needed. Dehacked used a text format to save patches so as to distribute them without distributing the exe, and also so that the same patch could be used with different versions of the exe. Boom added the capacity to load such text files as lumps and interpret them, so that the port itself did the changes at run-time, and modifying the exe was no longer needed. (Plus, it's not like dehacked would have been able to modify boom.exe or any other port.)

Most source ports now are able to load dehacked patches and support most modifications (though not necessarily all) that can be done this way. Support for map name change is very common.

So you can include a lump named DEHACKED in your mod that replaces all map names this way. It will only affect your mod since it will only be loaded when your mod is loaded, being a part of it.

Though if you use ZDoom, it's simpler to use the MAPINFO lump.


Well, I'm using Windows Vista. I don't think I can use DeHackeEd.

Isn't there a program that lets me directly change the text screens and level names without messing around with lumps? I'm a complete newbie at programming. I couldn't code my way out of a wet paper bag.

EDIT: I took a look at the Doom 2 IWAD in SLumpED and I noticed the level titles are actually graphics. Has anyone ever ripped the letters used to make these graphics and put them in a sheet?

Share this post


Link to post
Dann Woolf said:

Well, I'm using Windows Vista. I don't think I can use DeHackeEd.

Just try its Windows version Whacked, or run it in DOSBox. You don't need to change an exe, just to create the patch file and then insert it in your mod with slumped. Or you can type it directly in slumped.

Dann Woolf said:

Isn't there a program that lets me directly change the text screens and level names without messing around with lumps? I'm a complete newbie at programming. I couldn't code my way out of a wet paper bag.

Meh, try before giving up. It's really the easiest thing to do and doesn't deserve to be called "coding" or "programming" since it's just data entry. There's no algorithm or anything.

It's like doing a reading report and listing title, author, publisher, year of publication, whether it's a translation, etc. on a little sheet -- is that programming? No. I mean, here's a MAPINFO entry for a map:

map MAP01 "Entryway"
{
	next = "MAP02"
	secretnext = "MAP02"
	sky1 = "SKY1"
	cluster = 5
	music = "D_RUNNIN"
}
There you go! You defined the map lump's name (MAP01), the map name ("Entryway"), which map goes next (MAP02 for both normal exit and secret exit), which sky texture it uses (SKY1), which cluster it's in (5 here, clusters are only needed if you want to bother with intermission texts like the one before MAP07), and which music lump it plays ("D_RUNNIN"). It's rather self-explanatory.

There's a ton of additional options which you may use, but those are really the only ones that are necessary. See? It's not programming!

Dann Woolf said:

EDIT: I took a look at the Doom 2 IWAD in SLumpED and I noticed the level titles are actually graphics. Has anyone ever ripped the letters used to make these graphics and put them in a sheet?

Yeah, but for ZDoom and derivatives, you don't even need to do that. This port's engine can create such graphics on the fly. Other ports need such patches, though.

Share this post


Link to post

So uh, how do I edit the MAPINFO entries? Can I use SLumpED?

Also, could I maybe cheat a little in regards to level order? Like in my previously mentioned example, if my WAD were to have 15 levels, could I make it so that once the player beats level 14 it jumps straight to MAP30, which would be used as the actual level 15? That way I don't have to make 30 levels, or make the player play through the original Doom 2 levels after beating mine.

Share this post


Link to post
Gez said:

Yeah, but for ZDoom and derivatives, you don't even need to do that. This port's engine can create such graphics on the fly. Other ports need such patches, though.


Just so you know. Other ports can also do this. Doomsday and Risen3D both allow you to replace patches with a text string. For instance, the below replaces the "KILLS" graphic on the intermission screen:
WIOSTK = "{R=.329; G=.659; B=.659}TERRORISTS KILLED";

Share this post


Link to post
Dann Woolf said:

So uh, how do I edit the MAPINFO entries? Can I use SLumpED?

Yeah.

Dann Woolf said:

Also, could I maybe cheat a little in regards to level order? Like in my previously mentioned example, if my WAD were to have 15 levels, could I make it so that once the player beats level 14 it jumps straight to MAP30, which would be used as the actual level 15?

...

map MAP14 "Entryway"
{
	next = "MAP30"
	secretnext = "MAP30"
	sky1 = "SKY1"
	cluster = 5
	music = "D_RUNNIN"
}

Share this post


Link to post
Gez said:

Yeah.


Mind explaining the process step by step? Sorry if I seem a bit annoying. See my previous statement regarding wet paper bags.

Gez said:
...

map MAP14 "Entryway"
{
	next = "MAP30"
	secretnext = "MAP30"
	sky1 = "SKY1"
	cluster = 5
	music = "D_RUNNIN"
}
[/B]


Ah, right.

Share this post


Link to post
Dann Woolf said:

Mind explaining the process step by step? Sorry if I seem a bit annoying. See my previous statement regarding wet paper bags.

Start slumped. Open your mod's wad file. Click on the "new lump" button or menu entry. Name your lump MAPINFO (or DEHACKED, or whatever other text lump name you want to create). Start typing in the text editor window. Don't forget to click "Save changes" and "Save file" once you're done.

Share this post


Link to post
Dann Woolf said:

And how would I go about editing the text screens? Similar method?

cluster 5
{
	flat = "SLIME16"
	music = "$MUSIC_READ_M"
	exittext = "You have killed a lot of demons.",
		"That's cool. You really are the best.",
		"But then a mushroom guy appears and tells",
		"you, "sorry, Doomguy, but the Princess",
		"is in another techbase."",
		"",
		"Slowly and painfully, you resume your",
		"unending quest for the eight part of the",
		"staff of chaos that will allow you to",
		"repair your BwB Megarocket and merge",
		"your consciousness with an AI so as to",
		"do something about the Guardian... What",
		"was it again? The plot is confusing."
}

Share this post


Link to post
Gez said:

cluster 5
{
	flat = "SLIME16"
	music = "$MUSIC_READ_M"
	exittext = "You have killed a lot of demons.",
		"That's cool. You really are the best.",
		"But then a mushroom guy appears and tells",
		"you, "sorry, Doomguy, but the Princess",
		"is in another techbase."",
		"",
		"Slowly and painfully, you resume your",
		"unending quest for the eight part of the",
		"staff of chaos that will allow you to",
		"repair your BwB Megarocket and merge",
		"your consciousness with an AI so as to",
		"do something about the Guardian... What",
		"was it again? The plot is confusing."
}


And what do I name this lump?

EDIT: Also, how do I make a second exit in a level that leads to a secret level?

Sorry if all my questions are annoying anyone.

EDIT 2: Damn it! I used SLumpED to insert a new lump to change the level's name, but when I open the map ingame, it still says that the level's name is Entryway. What do I do?

EDIT 2.5: Now whenever I try to run the WAD I get the following error.

Script error, "MAPINFO" line 2:
Bad syntax.

I'm seriously steamed right now.

EDIT 3: Double damn it! I tried importing a MIDI and it seemed to work. I changed the midi's name to D_RUNNIN. But when I try my WAD out, the original D_RUNNIN is playing instead of the MIDI I imported.

Also, what kind of text to I enter into what lump to change the Episode names?

Share this post


Link to post
Dann Woolf said:

And what do I name this lump?

[/b]

Gez answered this one earlier. MAPINFO, or DEHACKED


EDIT: Also, how do I make a second exit in a level that leads to a secret level?



Gez also answered this one earlier as well.

map MAP14 "Entryway"
{
next = "MAP30"
secretnext = "MAP30"
sky1 = "SKY1"
cluster = 5
music = "D_RUNNIN"
}

Next is the next normal level
secretnext is the secret level.

In this case they will both go to map 30


Sorry if all my questions are annoying anyone.



No problem. I am still learning this stuff myself. And I haven't fully got it yet, though I am getting there. If you have no background in coding, then even the simplest stuff can be difficult.


EDIT 2: Damn it! I used SLumpED to insert a new lump to change the level's name, but when I open the map ingame, it still says that the level's name is Entryway. What do I do?



Are you talking on the intermission screen or the mapname that appears on the automap?


EDIT 2.5: Now whenever I try to run the WAD I get the following error.

Script error, "MAPINFO" line 2:
Bad syntax.

I'm seriously steamed right now.



It is usually better to post your actual code. Bad Syntax could mean anything. Also, we don't know what is on line 2 of your code.


EDIT 3: Double damn it! I tried importing a MIDI and it seemed to work. I changed the midi's name to D_RUNNIN. But when I try my WAD out, the original D_RUNNIN is playing instead of the MIDI I imported.


No way to say what you did wrong here. Could be anything from misspelling to not saving the changes in MAPINFO. Did you name the new midi to D_RUNNIN but leave it's original name in the MAPINFO. Did you put the midi in the right place?. (If it is between tx markers, it will not work.

Also do we know what port you are mapping for? If you are mapping for classic Doom, you will do things differently than if you are mapping for an advanced port like ZDoom.

You will get it. This stuff can do your head in. One of the best pieces of advice I can give you is to look at the MAPINFO from other maps that people have done. If for ZDoom, you could look at the mapinfo for Ultimate Simplicity, or KDIZD or ZPACK or similar.


Also, what kind of text to I enter into what lump to change the Episode names?


MAPINFO.

http://zdoom.org/wiki/MAPINFO/Episode_definition

episode map01 //this episode starts on map 01
name "Really scary episode" //the name of the episode, obviously.
picname PICTURE //

etc etc

Hope this helps some at least. :)

Share this post


Link to post

If you aren't making maps that are specifically designed for ZDoom, don't worry about making less than 30 maps. Everyone around here is used to wads that have less than 30 maps and which end earlier, it's no issue at all. What is a much bigger issue is making 15 maps that could be just as fine played in Vanilla Doom or Boom but require ZDoom just because you just had to use MAPINFO.

Share this post


Link to post
Jodwin said:

What is a much bigger issue is making 15 maps that could be just as fine played in Vanilla Doom or Boom but require ZDoom just because you just had to use MAPINFO.

Unless he gives nonstandard lump names to the maps (not ExMy or MAPzz), other ports will be perfectly able to run it anyway. Only thing that'll be missing will be the actual map names, and everyone is used to have MAP01 be named Entryway even when it's supposed to be called "Terror Castle of the Jupiter Moon Martians" instead.

Share this post


Link to post
Kyka said:

[/b]

Gez answered this one earlier. MAPINFO, or DEHACKED

[/b]

Gez also answered this one earlier as well.

map MAP14 "Entryway"
{
next = "MAP30"
secretnext = "MAP30"
sky1 = "SKY1"
cluster = 5
music = "D_RUNNIN"
}

Next is the next normal level
secretnext is the secret level.

In this case they will both go to map 30


[/b]

No problem. I am still learning this stuff myself. And I haven't fully got it yet, though I am getting there. If you have no background in coding, then even the simplest stuff can be difficult.

[/b]

Are you talking on the intermission screen or the mapname that appears on the automap?

[/b]

It is usually better to post your actual code. Bad Syntax could mean anything. Also, we don't know what is on line 2 of your code.



No way to say what you did wrong here. Could be anything from misspelling to not saving the changes in MAPINFO. Did you name the new midi to D_RUNNIN but leave it's original name in the MAPINFO. Did you put the midi in the right place?. (If it is between tx markers, it will not work.

Also do we know what port you are mapping for? If you are mapping for classic Doom, you will do things differently than if you are mapping for an advanced port like ZDoom.

You will get it. This stuff can do your head in. One of the best pieces of advice I can give you is to look at the MAPINFO from other maps that people have done. If for ZDoom, you could look at the mapinfo for Ultimate Simplicity, or KDIZD or ZPACK or similar.



MAPINFO.

http://zdoom.org/wiki/MAPINFO/Episode_definition

episode map01 //this episode starts on map 01
name "Really scary episode" //the name of the episode, obviously.
picname PICTURE //

etc etc

Hope this helps some at least. :)


1: Alright. I thought that maybe the intermission text would need it's own lump, is all.

2: I meant how do I set it up in the level? Like, in linedefs and everything.

3: Automap.

4: All I had in MAPINFO was this:

map MAP01 "My level name"
{
next = "MAP02"
secretnext = "MAP02"
sky1 = "SKY1"
cluster = 5
music = "D_RUNNIN"
}

5: I named the MIDI D_RUNNIN. Didn't change the name in MAPINFO. And I'm mapping for Skulltag. I was originally mapping for ZDoom but I noticed it has a weird trippy effect in rooms with high ceilings, so I switched.

6: Ah, right. Like with intermission text I thought maybe episode names would need their own lump.

Share this post


Link to post
Dann Woolf said:

1: Alright. I thought that maybe the intermission text would need it's own lump, is all.

Technically, you could put it in the LANGUAGE lump. If you look at zdoom.pk3 with slumped, you'll see that's how it's done there.

Dann Woolf said:

2: I meant how do I set it up in the level? Like, in linedefs and everything.

Nothing special. Same as ever.

Dann Woolf said:

I'm mapping for Skulltag. I was originally mapping for ZDoom but I noticed it has a weird trippy effect in rooms with high ceilings, so I switched.

There is no reason for Skulltag to differ from ZDoom or GZDoom. It uses the ZDoom software renderer, and the GZDoom hardware renderer. I presume you mapped something that causes problems for the software renderer, but that the hardware renderer can display correctly. You should try it with GZDoom as well then.

Share this post


Link to post
Gez said:

Technically, you could put it in the LANGUAGE lump. If you look at zdoom.pk3 with slumped, you'll see that's how it's done there.


Nothing special. Same as ever.


There is no reason for Skulltag to differ from ZDoom or GZDoom. It uses the ZDoom software renderer, and the GZDoom hardware renderer. I presume you mapped something that causes problems for the software renderer, but that the hardware renderer can display correctly. You should try it with GZDoom as well then.


About the secret exit... If I have two exits in my level how do I define which is the normal exit and which is the secret exit?

And I don't think it's my mapping. The trippy effect I mentioned isn't present when I play the WAD in Skulltag, only in ZDoom.

Share this post


Link to post
Dann Woolf said:

About the secret exit... If I have two exits in my level how do I define which is the normal exit and which is the secret exit?

There are two different types of exits. It's set directly in the editor.

Dann Woolf said:

And I don't think it's my mapping. The trippy effect I mentioned isn't present when I play the WAD in Skulltag, only in ZDoom.

As I said, try with GZDoom. That "trippy effect" (which I presume is a HOM) won't be there as well. Try Skulltag in software mode, and it'll be there.

Share this post


Link to post
Gez said:

There are two different types of exits. It's set directly in the editor.

As I said, try with GZDoom. That "trippy effect" (which I presume is a HOM) won't be there as well. Try Skulltag in software mode, and it'll be there.


I do use Skulltag in software mode.

But we're getting a bit off topic. How do I fix my lump problem?

Share this post


Link to post
Gez said:

Unless he gives nonstandard lump names to the maps (not ExMy or MAPzz), other ports will be perfectly able to run it anyway. Only thing that'll be missing will be the actual map names, and everyone is used to have MAP01 be named Entryway even when it's supposed to be called "Terror Castle of the Jupiter Moon Martians" instead.

Yes, but if he's going to do it as MAP1-14 + MAP30, most people playing non-ZDoom ports would just end at MAP14.

Of course, he could make it be MAP1-15 and have the game end there with mapinfo, but since that wasn't much discussed here I figured he wasn't going for the simplest solution.

Share this post


Link to post
Jodwin said:

Yes, but if he's going to do it as MAP1-14 + MAP30, most people playing non-ZDoom ports would just end at MAP14.

Of course, he could make it be MAP1-15 and have the game end there with mapinfo, but since that wasn't much discussed here I figured he wasn't going for the simplest solution.

Jodwin said:

Of course, he could make it be MAP1-15 and have the game end there with mapinfo


Wait, you can do that? How does that work?

Also, I never said my WAD's going to have 15 levels. I only used that as an example.

Also also, I tried GZDoom, and the trippy effect was in there as well. I'm sticking with Skulltag. So how about the whole lump problem? How do I fix it?

Share this post


Link to post

Skulltag objected to some of the script formatting and the absence of a scrollspeed parameter for sky1. This worked for me...

map MAP01 "My level name"
next "MAP02"
secretnext "MAP02"
sky1 "SKY1" 0.0
cluster 5
music "D_RUNNIN"
EDIT - you could go a step further and remove the inverted commas from all but the map name and it'll still work.

Share this post


Link to post
Dann Woolf said:

Also also, I tried GZDoom, and the trippy effect was in there as well. I'm sticking with Skulltag.

I get plenty of bleeding textures and HOMs in Skulltag as well. Sorry, there are mapping errors which you will have to fix. Your doors have midtextures (they shouldn't), but no upper texture (they should). As a result, when they close, they create hall of mirrors. (Also, you did not lower-unpeg their doortracks.) There are several lines that are marked as impassable without any good reason why. Finally, you have used "W1" type doors, which are really, really not what you should use: they open the door once when you walk through them... You need "DR" type doors so they'll behave normally (open when you activate them, can be opened and closed several times).
Well, there are two good doors (good linedef type, proper texture placement, correct sidedef direction, lower-unpegged doortracks), but all others have at least one problem.

GreyGhost said:

Skulltag objected to some of the script formatting and the absence of a scrollspeed parameter for sky1.

Skulltag 97e/98a doesn't.

Share this post


Link to post

Well to be honest I had no intention of releasing these levels publicly. I'm making these levels so I can gain experience in level making. Once I feel I'm ready I'm going to start making a full level pack. Thank you for pointing out all of those mistakes. I'll try not to repeat them in the future.

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
×