To be honest, I haven't been asked any of these questions, especially not frequently. Not only that, but most of these aren't even questions! Rather they are 'exclamatory frustrated outbursts'. Frequently Asked Questions was just simpler than Frequently Exclaimed Frustrated Outbursts. Yeah, this title is a big, fat lie. So.. ermm.. sorry?
- "I'm using Windows and I can't play Duke3d!"
- "I'm using a laptop and I don't have a number keypad!"
- "I do have a number keypad but it isn't working!"
- "Some of the keypresses aren't working for me!"
- "I'm using Mapster32 and autosave is bloody annoying!"
- "I can't select a sprite!"
- "My sprite is only visible from one side!"
- "I moved some sectors and then all of the floor-aligned sprites dropped to the ground!"
- "I can't destroy sprites with the freeze gun!"
- "I can't select a line!"
- "My masked wall is only visible from one side!"
- "I can't resize a wall with the
Keypad 2/4/6/8
keys!" - "My door frame moves up and down with my door!"
- "How do I stop my elevator's walls from moving up and down with the elevator? I've already tried using the
O
key!" - "My sectors keep disappearing in 3D mode!"
- "It keeps saying 'Can't make a sector out there' when I try to use
Alt + S
!" - "I'm having problems deleting and copying sectors!"
- "I've parallaxed the sky and now Duke dies when he enters the sector!"
- "My parallaxed sky looks messed up!"
- "My textures look messed up!"
- "My textures keep going out of alignment!"
- "The game crashes when I run my level!"
- "My start position keeps changing!"
- "My Star Trek door plays the opening sound twice!"
- "My switch(es) won't work with (effect)!"
- "My subway shoots rockets at me!"
- "I die on the teleporter for no reason!"
- "What's the difference between pink and blue sprites?"
- "What the heck is HOM?"
- "Can I change the subway's speed?"
- "How do I place active tripmines?"
- "How do I set the level par times?"
- "How do I use new
VOC
orMID
files?" - Map
E1L9.MAP
not found - Too many sprites spawned
- Too many player sprites (max 16)
- Found lonely SectorEffector at <co-ordinates>
- Subway found no zero'd sectors with Locators
- Too many 'anim' walls (max. 512)
Interface Issues
Get the latest version of EDuke32. It's native to Windows so it should solve all your problems.
There should be a "function" Fn
key or some equivalent on your keyboard which allows you to access numerical keypad functions. Unfortunately for you, lacking a numerical keypad with this program is like missing a limb. You can still access all of the functions, but it will take a toll on your mapping efficiency.
Try enabling/disabling the keypad with NumLock
.
This is a problem associated with some newer keyboards. When you press a key, a scancode is sent to the program. If your keyboard uses unusual scancodes, then the map editor will not be receiving the correct ones, and thus will not be responding with the expected functions. I'm not sure if this can be fixed with Build, but at this point in time you should have already switched to Mapster32 anyway.
The solution is to ask around for a copy of mapster32_scancode.exe
. This version of the program will dump your keyboard scancodes to the mapster32.log
file as you press the keys, allowing you to suss out your specific keyboard scheme and compare it with the one displayed at the end of the mapster32.cfg
file. Once you figure out which key should have which scancode, you can add a line to the end of the mapster32.cfg
file that follows this format: remap = <your scancode>-<desired scancode>
separating each instance by a comma if more than one redefinition is necessary (personally I had to remap 7 keys). For the sake of a full example, and just in case by some fluke coincidence your keyboard uses the same scancodes as mine, here's what I had to plug into the end of my mapster32.cfg
file: remap = 1A-1B,1B-2B,90-0D,91-1A,92-28,94-29,DD-36
.
Yes. Yes it is. There are two ways to disable this: Apostrophe ( ' ) + A
will toggle autosave, but this is only a temporary fix. To permanently disable it, find this line in your mapster32.cfg
file: autosavesec = <value>
and change the value to 0.
Sprite Issues
If several sprites are overlapping each other, you won't see the sprite flickering while highlighted (even though it is). Use the Left Mouse Button
to drag it away from the other sprites.
Point the mouse cursor at it and press 1
to toggle it back to two-sided.
This seems to be a rare issue when moving sectors with Right Shift
. This is especially aggravating with 1-sided floor-aligned sprites which only display the bottom side. Since it basically grafts itself to the floor, there is simply no way to access the sprite again within Build. The only workaround is to delete and replace the sprite (thankfully the sprite's values can be edited directly in Mapster32 using F8
). A solution to this problem is to use Right Alt
to move the sectors instead.
The freeze thrower projectile has some hit-detection problems with floor-aligned sprites.
Wall Issues
If a line is too long, you will no longer be able to highlight it with the mouse cursor, which also means you won't be able to insert any new points onto it. Just don't make lines too long. Mapster32 will change the colour of these lines after they exceed the maximum length, as a visual warning.
Point the mouse cursor at it and press M
until it toggles back to two-sided.
This happens in Build when the top and bottom halves of a wall are set as separately editable (using the 2
key). The bottom half of the wall won't respond to anything until you've pressed 2
on the top half to make both halves share attributes. If this isn't the case, try enabling/disabling the keypad with NumLock
.
Press O
(the letter O, not zero) on each side of the door frame. This will orientate the walls to the floor so they won't move up and down with the ceiling. In the case of a split door, the frame texture will always move with the door, since the door moves both the floor and ceiling. The workaround is to create thin 'door frame' sectors attached to the door (make sure they don't share the door sector Lo-Tag).
If you are making an elevator with the sector tag [0,18]
or [0,19]
, this will always happen regardless of orientation. The O
key aligns walls to either the floor or the ceiling, and since those types of elevators move both the floor and
the ceiling, the walls will always move up and down with the elevator.
The workaround is to create your elevator sector inside of another
sector, creating a thin border (make sure the bordering sector has no Lo-Tag). That way, the bordering sector's walls
will stay still while the elevator sector moves up
and down.
Sector Issues
This is most likely happening because you surrounded a red-lined sector with another red-lined sector. This will produce rendering issues of the sector within. This can also happen if you have created a larger bounding sector than the engine can handle. Another possibility (if you are using Build) is that you may have collapsed a red-lined sector's vertices in order to delete it. This will corrupt your map file, causing many rendering issues. Fortunately, Mapster32 prevents you from doing this with an "invalid operation" message. Remember, it is okay to overlap vertices from red-lined sectors to delete them, so long as there are always more than two vertices left.
You probably constructed the sectors in reverse order by surrounding a white-lined sector with another white-lined sector. You must always create
sectors starting from the outside and working inwards, not the other way around. Another possible problem is that the white-lined sector is too
large, which means you can't highlight the walls. Try sizing it down before using the keys. Once you've constructed the sectors properly, make sure that the mouse
cursor is inside the "inner loop", and that it is highlighting an interior
wall before you press Alt + S
.
There are some bugs related to deleting or copying sectors, so it is recommended that you save your work beforehand.
If you are
deleting a sector, first you should delete all of the sprites and tags within it. Now, there are actually a few different methods to delete a sector. The simplest and most recommended method is to highlight a wall inside the sector and use Right Ctrl + Delete
. However, if you are trying to get rid of a nested sector (valid player space), and don't want to delete the adjacent sector(s), then you have two options; 1) Use the sector joining function (J
) to join it with an adjacent sector (make sure the sectors are adjacent, i.e. sharing a wall!); 2) Use Right Ctrl + Delete
, then overlap all of its vertices to fully collapse and delete it (make sure the walls are white before doing this!).
If you are copying a sector, remember that the copy will have white walls when you paste it. If you want the copy to have red walls, first create a shell for the copied sector to fit into. This shell must have all of the same exterior vertices as the copy will have, so that the two sets of one-sided walls will be able to merge into two-sided walls. Place the copy inside the shell and the walls will turn red.
Copying sectors between maps is done by highlighting the sectors, then loading the map which you want to copy them into. The copied unit will appear in exactly the same position it was in prior to loading the new map. However, there seems to be a glitch with this feature; After loading the map, the sprites within the copy will not move until you deselect the whole unit, then highlight it again. Because of this glitch, it is best practice to take the precautionary step of making sure that the area the copy will appear in is an empty one. Otherwise it will overlap with other sectors after loading the map and things will generally begin interfering with each other. Also keep in mind that there is a limit to how much you can copy. Unless a level is quite small, you wouldn't be able to take the entire thing and copy it to a different map file.
Parallaxing Issues
That's because you've parallaxed either BIGORBIT1
(#84) or MOONSKY1
(#80), which are lethal space textures. You can fix this
problem by giving the ceiling a palette value greater than 0 (the floor palette has no effect, even if the texture is only parallaxed on the floor!). A palette value of 3 works great because it doesn't actually affect the colour.
Okay, there is a lot to explain about this, but here's the deal. The
reason it looks mingled is because you're using a 'parallaxed texture
set' in your map. A parallaxed texture set combines a sequence of textures and displays them as one complete image. There are only three parallaxed texture
sets in the art files: MOONSKY1
(#80) which combines a sequence of four textures from #80-83, BIGORBIT1
(#84) which combines a sequence of five textures from #84-88, and LA
(#89) which combines a sequence of five textures from #89-93.
You only need to paste the first texture of a set and the rest is displayed automatically after reloading the map or running the game. A set will not display its sequence until after you have saved and reloaded the map! Upon reloading, all parallaxed textures in the map are overridden by the set and will now also consider themselves a 'set', and display a sequence of textures accordingly. This is why your other parallaxed skies are displaying a bunch of seemingly random unrelated textures. To fix this, either get rid of the set, or stick with it and paste it over every parallaxed texture in the map. Remember that the changes will not take effect until after you've saved and reloaded the map again.
Of course, a texture set will only be activated if the initial texture is parallaxed, but I can't imagine why you would be using a non-parallaxed sky texture. Parallaxed floors by themselves are not programmed to work with texture sets, and hence will not interfere with any other parallaxed textures. They require a ceiling using the same texture set in order to be overridden and display the proper sequence.
It is perfectly fine to
use individual parallaxed textures of all varieties in your map, even a
"named" one, provided it's not the initial texture of a 'set'. You can even get away with using a non-initial texture from a set without upsetting the other parallaxed textures in the map, since only the initial one is coded to display the sequence. The non-initial space textures will also be neutral since only the initial one is coded to be lethal. However, you cannot get away with using two different texture sets even if they both display the same number of textures (namely BIGORBIT1
and LA
), because the textures display their sets differently. Whichever one takes priority will tear the other one apart (they are very territorial creatures).
Phew! Finally, remember that you are not restricted to using textures designed for parallaxing, you can parallax any texture!
If you are are still having problems, and are not using any parallaxed texture sets, then it could be possible that some of your parallaxed textures have different attributes from the rest (inconsistent visibility values are especially noticeable). In this case you will either have to disable parallaxing in each sector until you find the culprit(s), or copy and paste a known 'good' texture over the others.
Texture Issues
When selecting textures for floors, ceilings, walls, or floor-aligned sprites, only textures with squared (power of 2) dimensions will look proper. For example, 128x256 would look normal, but 93x256 would not. This doesn't necessarily mean that you can't use these textures, but generally they will look meshed if used on horizontal surfaces (floors/ceilings/floor-aligned sprites), or broken at odd intervals if used on vertical surfaces (walls). This doesn't affect face-aligned or wall-aligned sprites.
This is normal. When you move a vertex, the attached walls will readjust their texture repeats. When you are moving sectors, only floor/ceiling textures with relative alignment enabled will maintain their alignment. Other floors/ceilings do not; The textures remain stationary while the sectors move. You can see this visually while moving sectors with Mapster32's 2D texture mode enabled (Backspace
key). To make sure floor and ceiling textures maintain their panning alignment, always move the sectors by an even number of grid spaces on grid resolution 1, or twice that amount per grid resolution. Don't even bother trying to perfect texture alignment until after you're finished the structure of a map. Build is especially notorious for screwing with textures, even if you change something completely unrelated.
Gameplay Issues
Did you place the player start position within valid player space?
In 3D mode, move to the exact position, angle, and height you want to start at,
then switch to 2D mode and hit Scroll Lock
.
A brown arrow will appear indicating the player start position (this arrow has changed colour in Mapster32). If this
isn't the problem, check the bottom of this page for a list of game
runtime errors.
Build has an annoying tendency to do this. When you load a level, the very first time you switch to 3D mode it will save the start position to that location. To solve this problem, always switch to 3D mode immediately after loading any level. This ensures that the start position will remain in place until you quit. This seems to have been fixed in Mapster32.
This is a bug which cannot be fixed. In some cases, the volume can be balanced by assigning the sound number to both the Hi-Tag and Lo-Tag of the MusicAndSFX sprite (don't ask me why). Otherwise, you could just make your Star Trek Doors silent. Check the "References - Sector/Effector Tags" section for more information about this.
When constructing effects that use switches, try to avoid using the combination-type switches DIPSWITCH
(#162), TECHSWITCH
(#166), or ALIENSWITCH
(#1142) unless the tutorial specifically requests you use them. Make sure the switch has a palette of
0 (or greater than 0 if you want it to appear only in DukeMatch). If it still
doesn't work, then you must have made a mistake while creating the
effect. It's a very common (and annoying) problem when an effect won't
work, and you discover after hours of problems that you accidentally
swapped tag values or made some other simple error.
If a subway's floor is parallaxed, it will shoot rockets at the
player. To disable this, give the floor of the subway car a palette
value greater than 0 (3 works great because it doesn't affect the texture's colour). Have a look at the circling ship
that shoots rockets at you in E2L1.MAP
: "Spaceport" for a better idea
of how this works. It is a common misconception that the ceiling of the
subway determines whether or not it will fire rockets.
This could mean one of two things: (1) Your teleporter was somehow built incorrectly. (2) You have been telefragged. Telefragging occurs when someone teleports to a sector which you are currently standing on. So don't stand on a teleporter for long!
Actual Questions!
Pink sprites (or walls) means that they are blocked. The player cannot pass through a blocked object.
An acronym for Hall Of Mirrors. HOM is when a texture "sticks" to
the screen and it is a really ugly graphical problem.
There are a few ways HOM can happen: (1) A texture that has been assigned
to an object in a map does not exist in any of the ART
files, (2) There is no sector behind the mirror or the mirror was not constructed properly. (3) Two mirrors are facing towards each other and can "see" each other (these suckers have X-ray vision or something, they can usually see each other even through solid walls).
You cannot control the Two-Way Train's speed, but you can control a Subway Vehicle's speed.
Place a TRIPBOMB
(#2566) on a wall and shrink it down to normal size. TRIPBOMBSPRITE
(#27) is just tripbomb ammo.
You don't set the par times within the map editor. You would have to edit the USER.CON
file.
Rename them to match the name of the VOC
or MID
file you are replacing, then just copy them straight into your C:\DUKE3D
directory. When the game boots, it will search for any replacement
sound/music files in the game's root directory and it will use those instead. It is also possible to add completely new sound and music by editing the CON
files.
Runtime Errors
If you get these messages when you try to play your maps, here are the solutions:
This is normal. When Duke3D plays a user map, it loads it as E1L8.MAP
: "User Map". When the level is finished, the game will search for E1L9.MAP
and quit if it doesn't find it.
This error occurs when the sprite limit is exceeded (this limit has been increased in EDuke32/Mapster32). This can happen during gameplay by destroying multiple sprites at once, causing an overload of gibs/debris to spawn and crash the game. If you get this error often, reduce the number of sprites in your map.
This means you have placed too many APLAYER
sprites (DukeMatch or Co-Operative start points). Technically speaking, the maximum is actually 15. The default start position counts as the remaining start point in either case, and it should not be classified as a "player sprite". Placing more than 7 Co-Operative start points is useless, but DukeMatch start points are randomized after the initial spawn, so there is valid reason to place more than 7.
This means there is a SectorEffector in your map which has no tag values. Either delete it, or give it tag values.
Technically, this means exactly what it says, but there could be a lot of different reasons for it: The SectorEffector on the Subway vehicle or Two-Way Train may not be in the correct sector; The Locators might be tagged incorrectly; The Subway Vehicle might not be in the correct sector; The track sector may have tag values when it shouldn't; The track sector might be split into multiple sectors; The subway car might not be tagged accordingly; etc. Check the "Advanced FX" tutorials and make sure you've done everything correctly.
This problem is caused by too many animated masked walls (such as the spinning fan texture). Maybe you should try using textures that aren't in constant motion (what are you trying to do, give the player a seizure?) This could also happen by accident. After using the map editor long enough, you'll start to notice little quirks. You may have masked one wall as a spinning fan texture, and then created some completely separate sectors which the map editor decided (without warning) should also have spinning fan textures. You might not even notice, because the walls aren't actually set as being masked, but the animated texture is still attributed to those walls. Try masking some random walls around your map and you may discover that they are using animated textures.