WadSmoosh - merge all official id releases into one PK3 IWAD

Software projects like source ports (3DGE, Eternity, etc), launchers like ZDL, and other useful utilities belong in this forum.
Forum rules
The Projects forums are ONLY for YOUR PROJECTS! If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.

Got a cool project idea but nothing else? Put it in the project ideas thread instead!

Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.

Please read the full rules for more details.

Re: WadSmoosh - merge all official id releases into one PK3

Postby Gutawer » Tue Jul 18, 2017 4:15 pm

You know you can load GZDoom in software mode, right? Just add +vid_renderer 0 at the command line, and you won't need OpenGL.
User avatar
Gutawer
 
 
 
Joined: 16 Apr 2016
Discord: Gutawer#3431

Re: WadSmoosh - merge all official id releases into one PK3

Postby MrRumbleRoses » Tue Jul 18, 2017 4:28 pm

Gutawer wrote:You know you can load GZDoom in software mode, right? Just add +vid_renderer 0 at the command line, and you won't need OpenGL.

yes i know that. i also know that they have the ability to choose in the game menu thing. but what i said still stands
User avatar
MrRumbleRoses
 
Joined: 25 Feb 2016

Re: WadSmoosh - merge all official id releases into one PK3

Postby JPL » Fri Jul 28, 2017 7:15 pm

Regarding the AddOptionMenu crash in Zandronum, I've filed a bug with that project to at least ignore the line in MENUDEF instead of crashing on it: https://zandronum.com/tracker/view.php?id=3205 In the meantime until that's fixed on their end, like I said earlier Zandronum users can delete the MENUDEF.txt from your doom_complete.pk3 IWAD and it will run with no trouble.
User avatar
JPL
 
Joined: 09 Apr 2012

Re: WadSmoosh - merge all official id releases into one PK3

Postby drfrag » Sat Jul 29, 2017 2:20 am

Adding AddOptionMenu was pretty easy, i did it recently for ZDoom32. I haven't tried WadSmoosh tough. You could point them to my repo, that could speed things up.

https://github.com/drfrag666/gzdoom/commits/zdoom32
User avatar
drfrag
ZDoom32 developer.
 
Joined: 23 Apr 2004

Re: WadSmoosh - merge all official id releases into one PK3

Postby Purity666 » Sat Oct 14, 2017 4:05 am

Good morning,

i plan to add the "tech gone bad" level as a secret level which could be reached by using a secret exit in e1m7. Unfortunately I don't know which linedef_id I should use to add the switch. Could anyone give me a short advise/hint which id i should use for this? -> add_secret_exit('E1M7', ???)

Thanks a lot and regards,
Purity
Purity666
 
Joined: 02 Apr 2017

Re: WadSmoosh - merge all official id releases into one PK3

Postby Gez » Sat Oct 14, 2017 6:23 am

You'll want to read about MAPINFO. To add a secret exit to E1M7, you'll need to edit E1M7's definition. But that's just for the game logic part -- you'll also need to add a secret exit to the E1M7 map itself, and for that you'll need to use a map editor...
Gez
 
 
 
Joined: 06 Jul 2007

Re: WadSmoosh - merge all official id releases into one PK3

Postby Purity666 » Sat Oct 14, 2017 7:51 am

hm, ok I see. I've already edited the doom1_levels.txt file in the res\mapinfo folder of wadsoosh. I thought it would be as easy as adding the xbox levels to the doom1 and doom2 episodes. How did it work there without editing the levels for them?
Purity666
 
Joined: 02 Apr 2017

Re: WadSmoosh - merge all official id releases into one PK3

Postby Gez » Sat Oct 14, 2017 8:23 am

The levels with the added secret exits were actually edited by the Xbox developers.
Gez
 
 
 
Joined: 06 Jul 2007

Re: WadSmoosh - merge all official id releases into one PK3

Postby Purity666 » Sat Oct 14, 2017 8:34 am

perhaps I got it completely wrong but as far as I understood it works slightly different. If I read the python code right, then wadsmoosh patchs the pc doom.wad file by adding a secret exit to e1m1 so that the xbox level sewers starts. So the e1m1 was not patched by the xbox team (so there should be no secret exit in the pc doom e1m1) as it is part of the pc doom - only the xbox level is added. I thought it might be possible to patch another pc doom level (in this case e1m7) to add also there a secret exit so that the alternate e1m8 (tech gone bad) will be started.
Purity666
 
Joined: 02 Apr 2017

Re: WadSmoosh - merge all official id releases into one PK3

Postby Gez » Sat Oct 14, 2017 9:41 am

Well then, yes I suppose you could hardcode a patch similarly. You'd still need to open the map in a map editor to find a suitable place and note the linedef number.
Gez
 
 
 
Joined: 06 Jul 2007

Re: WadSmoosh - merge all official id releases into one PK3

Postby Purity666 » Sat Oct 14, 2017 10:56 am

ok, great. So now we are back to my initial question: has anyone a suggestion, where to place this secret exit - perhaps in one of the secret areas of the map?
Spoiler:
Purity666
 
Joined: 02 Apr 2017

Re: WadSmoosh - merge all official id releases into one PK3

Postby JPL » Sat Oct 14, 2017 12:25 pm

Purity666 wrote:ok, great. So now we are back to my initial question: has anyone a suggestion, where to place this secret exit - perhaps in one of the secret areas of the map?
Spoiler:


If you're going for the same level of obscurity of the XBox Doom secret exits, it hardly matters where you put it; switches without a switch texture are never going to be found by someone who doesn't already know they're there.

Line #510, right behind the secret automap powerup, is a decent switch-sized secret wall. The large outdoor area in the southeast is a secret and has plenty of space for a switch, but none of the lines (eg #921) are easy switch candidates.
User avatar
JPL
 
Joined: 09 Apr 2012

Re: WadSmoosh - merge all official id releases into one PK3

Postby Purity666 » Sun Oct 15, 2017 6:32 am

Success!

I've added a new funtion to the wadsmoosh.py script to add the exit and level to the wad. While compiling an executable using pyInstaller, I found out that omgifol wasn't compatible anymore to python 3.6 - the MD5 class is not supported anymore hence I had to update omgifol as well.

If you're going for the same level of obscurity of the XBox Doom secret exits, it hardly matters where you put it; switches without a switch texture are never going to be found by someone who doesn't already know they're there.


Right, that makes no sense. So I played around a bit with omgifol (as I was curious in it anyway) and extended your add_secret_exit function to also add a switch texture (which should fit to the base texture used before adding the switch):

Code: Select allExpand view
def add_secret_exit(map_name, line_id, side_id='', side_texture=''):
    # sets given line # in given map as a secret exit switch
    wad = omg.WAD()
    wad_filename = DEST_DIR + 'maps/%s.wad' % map_name
    wad.from_file(wad_filename)
    ed = omg.MapEditor(wad.maps[map_name])
    ed.linedefs[line_id].__dict__['action'] = 51
    if side_id != '':
          ed.sidedefs[side_id].__dict__['tx_mid'] = side_texture
    wad.maps[map_name] = ed.to_lumps()
    wad.to_file(wad_filename)


So the procedure for adding the level and switch looks like this for now:

Code: Select allExpand view
def add_tech_level():
    logg('Adding tech gone bad bonus level...')
    logg('  Adding secret exit and switch SW1STARG to E1M7')
    add_secret_exit('E1M7', 721, 908, 'SW1STARG') #STARG3
    logg('  Adding e1m8b.wad as E1M11')
    add_secret_level('e1m8b', 'E1M8', 'E1M11')


Code: Select allExpand view
    # only supported version of thihs @ https://www.doomworld.com/idgames/levels/doom/Ports/d-f/e1m8b
    if get_wad_filename('e1m8b') and should_extract:
        add_tech_level()


...and while I was adding the texture for E1M7, I did the same for the Xbox maps:

Code: Select allExpand view
Adding Xbox bonus levels...
  Adding secret exit and switch SW1STARG to E1M1
  Adding SEWERS.WAD as E1M10
  Adding secret exit and switch SW1STONE to MAP02
  Adding BETRAY.WAD as MAP33
Adding tech gone bad bonus level...
  Adding secret exit and switch SW1STARG to E1M7
  Adding e1m8b.wad as E1M11
Creating doom_complete.pk3...


I'm quite happy with the result, especially because I used python, pyInstaller and omgifol for the first time...

Greetings
Purity
Purity666
 
Joined: 02 Apr 2017

Re: WadSmoosh - merge all official id releases into one PK3

Postby JPL » Sun Oct 15, 2017 11:44 pm

Nice! Glad it was a good learning experience.
User avatar
JPL
 
Joined: 09 Apr 2012

Previous

Return to Software and Ports

Who is online

Users browsing this forum: No registered users and 1 guest