Fandom

Doom Wiki

Excessive scrolling texture overflow

3,484pages on
this wiki
Add New Page
Talk0 Share

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

Due to a bug in the source code, excessive usage of the scrolling texture effect causes a crash or level dependent problems.

Inside of the function P_SpawnSpecials() in p_spec.c:

//	Init line EFFECTs
numlinespecials = 0;
for (i = 0;i < numlines; i++)
{
    switch(lines[i].special)
    {
        case 48:
            // EFFECT FIRSTCOL SCROLL+
            linespeciallist[numlinespecials] = &lines[i];
            numlinespecials++;
            break;
    }
}

A check against MAXLINEANIMS is not done before adding it to the list. Since MAXLINEANIMS is only 64, after the 64th scrolling texture wall inside the map is processed for specials, memory will start to be overwritten. Depending on how much memory is overwritten, this may produce level dependent results or crashes depending of the layout of internal variable memory.

Doom2+ increases the limit of MAXLINEANIMS, however it is only used for scrolling texture walls, it is not used anywhere else for any other reason.

Also on Fandom

Random Wiki