Complete Doom 3 BFG Support, and avoid crashing PrBoom-Plus

DOOM2.WAD contains a MAP33, which is being represented here as only
the dummy map, and also M_EPI1 and M_EPI2 lumps for the “Hell on Earth”
and “No Rest for the Living” texts, both of which are now replicated
here as well (using “Phase 2” and “The Missing Levels” as names instead).

No, we still don’t plan on having a real MAP33, the inclusion here is
only to avoid engine crashes.

Fixes: #533
Ref: #529
This commit is contained in:
Mike Swanson 2018-05-30 14:50:56 -07:00
parent 22698d4aa1
commit beebbed1f2
5 changed files with 22 additions and 4 deletions

View file

@ -101,6 +101,7 @@ MAP29 = dm29
MAP30 = dm30
MAP31 = dm31
MAP32 = dm32
MAP33 = dummy
#else /* #ifdef FREEDM */
@ -136,6 +137,7 @@ MAP29
MAP30
MAP31
MAP32
MAP33 = dummy
#endif /* #ifdef FREEDM */
@ -853,6 +855,13 @@ M_CAN 0 1
M_CHG 0 1
M_EXITO 0 1
#ifndef ULTDOOM
; Episode titles dont make much sense in Phase 2, but it allows
; BFG Edition to not crash when starting a new game.
M_EPI1 0 0 = M_EPI5
M_EPI2 0 0 = M_EPI6
#endif
BRDR_TL -5 -5
BRDR_T 0 -5
BRDR_TR 0 -5
@ -1064,6 +1073,7 @@ CWILV29
CWILV24
CWILV30
CWILV31
CWILV32
#else /* #ifdef FREEDM */
@ -1101,6 +1111,7 @@ CWILV29 = DMWILV29
CWILV24 = DMWILV24
CWILV30 = DMWILV30
CWILV31 = DMWILV31
CWILV32 = DMWILV32
#endif

View file

@ -15,7 +15,8 @@ TEXTGEN_GRAPHIC_LUMPS = \
m_mess.png m_mouse.png m_multi.png m_player.png m_serial.png \
m_setup.png m_sound.png m_stat.png m_status.png m_tcpip.png \
m_versen.png m_video.png m_wad.png m_wadopt.png m_weap.png \
m_acpt.png m_can.png m_chg.png m_exito.png \
m_acpt.png m_can.png m_chg.png m_exito.png m_epi5.png \
m_epi6.png \
prboom.png t_phase1.png t_phase2.png \
m_ultra.png wibp1.png wibp2.png wibp3.png wibp4.png \
wicolon.png wienter.png wif.png wifrgs.png wipcnt.png \
@ -30,14 +31,14 @@ TEXTGEN_GRAPHIC_LUMPS = \
dmwilv15.png dmwilv16.png dmwilv17.png dmwilv18.png dmwilv19.png \
dmwilv20.png dmwilv21.png dmwilv22.png dmwilv23.png dmwilv24.png \
dmwilv25.png dmwilv26.png dmwilv27.png dmwilv28.png dmwilv29.png \
dmwilv30.png dmwilv31.png \
dmwilv30.png dmwilv31.png dmwilv32.png \
cwilv00.png cwilv01.png cwilv02.png cwilv03.png cwilv04.png \
cwilv05.png cwilv06.png cwilv07.png cwilv08.png cwilv09.png \
cwilv10.png cwilv11.png cwilv12.png cwilv13.png cwilv14.png \
cwilv15.png cwilv16.png cwilv17.png cwilv18.png cwilv19.png \
cwilv20.png cwilv21.png cwilv22.png cwilv23.png cwilv24.png \
cwilv25.png cwilv26.png cwilv27.png cwilv28.png cwilv29.png \
cwilv30.png cwilv31.png \
cwilv30.png cwilv31.png cwilv32.png \
wilv00.png wilv01.png wilv02.png wilv03.png wilv04.png \
wilv05.png wilv06.png wilv07.png wilv08.png wilv10.png \
wilv11.png wilv12.png wilv13.png wilv14.png wilv15.png \

View file

@ -99,6 +99,8 @@ red_graphics = {
'm_epi2': 'Military Labs',
'm_epi3': 'Event Horizon',
'm_epi4': 'Double Impact',
'm_epi5': 'Phase 2',
'm_epi6': 'The Missing Levels',
'm_jkill': 'Please don\'t kill me!',
'm_rough': 'Will this hurt?',
@ -249,7 +251,7 @@ for e in range(4):
update_level_name('wilv%i%i' % (e, m), freedoom_bex,
'HUSTR_E%iM%i' % (e + 1, m + 1))
for m in range(32):
for m in range(33):
# HUSTR_1 => cwilv00
update_level_name('cwilv%02i' % m, freedoom_bex, 'HUSTR_%i' % (m + 1))
# HUSTR_1 => dmwilv00 (from freedm.bex)

View file

@ -224,6 +224,7 @@ HUSTR_29 = MAP29: Last Stand
HUSTR_30 = MAP30: Jaws of Defeat
HUSTR_31 = MAP31: Be Quiet
HUSTR_32 = MAP32: Not Sure
HUSTR_33 = MAP33: Empty Facility
PHUSTR_1 = MAP01
PHUSTR_2 = MAP02
PHUSTR_3 = MAP03

View file

@ -185,6 +185,7 @@ HUSTR_29 = DM29: Tag Deathmatch
HUSTR_30 = DM30: Last Man Standing
HUSTR_31 = DM31: Fort Macabre
HUSTR_32 = DM32: Aberration
HUSTR_33 = DM33: Empty
PHUSTR_1 = DM01
PHUSTR_2 = DM02
PHUSTR_3 = DM03
@ -217,6 +218,7 @@ PHUSTR_29 = DM29
PHUSTR_30 = DM30
PHUSTR_31 = DM31
PHUSTR_32 = DM32
PHUSTR_33 = DM33
THUSTR_1 = DM01
THUSTR_2 = DM02
THUSTR_3 = DM03
@ -249,6 +251,7 @@ THUSTR_29 = DM29
THUSTR_30 = DM30
THUSTR_31 = DM31
THUSTR_32 = DM32
THUSTR_33 = DM33
HUSTR_PLRGREEN = g:
HUSTR_PLRINDIGO = i:
HUSTR_PLRBROWN = b: