Doom Marine
User Profile | Member List | F.A.Q | Privacy Policy | New Blog | Search Forums | Forums Home
Doomworld Forums : Powered by vBulletin version 2.2.5 Doomworld Forums > Classic Doom > Source Ports > Doom2 v1.92 - no more visplanes and drawsegs overflows
Pages (6): [1] 2 3 4 » ... Last »  
Author
All times are GMT. The time now is 14:03. Post New Thread    Post A Reply
entryway
Forum Staple


Posts: 2773
Registered: 01-04


Hi. I have increased some limits in original EXE's to reduce the risk of crashes, premature program exits and certain visual problems. This is done without loss of compatibility - in other respects, Doom(2)-plus behaves exactly like the original DOS EXEs. Dehacked patches can be applied as normal, for instance, and any demo that plays back correctly with Doom(2).exe will also play back with Doom(2)-plus.
code:
limit : old * k = new ------------------------------------------------------- visplanes[MAXVISPLANES] : 128 * 8 = 1024 drawsegs[MAXDRAWSEGS] : 256 * 8 = 2048 SAVEGAMESIZE : 180224 * 16 = 2883584 activeplats[MAXPLATS] : 30 * 256 = 7680 vissprites[MAXVISSPRITE] : 128 * 8 = 1024 linespeciallist[MAXLINEANIMS] : 64 * 256 = 16384 openings[MAXOPENINGS] : 16384 * 4 = 65536
The patched EXEs with crk files can be found here. Is it interesting for you?

Last edited by entryway on Apr 1 2007 at 20:48

Old Post Mar 20 2006 18:36 #
entryway is online now || Blog || PM || Post History || Add Buddy IP || Edit || Quote
myk
volveré y seré millones


Posts: 15290
Registered: 04-02


Cool! Would it be possible to make it into an installable patch instead of a full executable, like the 1.91?

Old Post Mar 20 2006 18:43 #
myk is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
Grazza
Your move


Posts: 12562
Registered: 07-02


Certainly very interesting!

Can dehacked patches be applied to this as normal?

It chokes on Equinox map13, but maybe that's not too surprising.

Old Post Mar 20 2006 19:21 #
Grazza is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
myk
volveré y seré millones


Posts: 15290
Registered: 04-02



Grazza said:
It chokes on Equinox map13, but maybe that's not too surprising.
It likely exceeds the expanded limits, though there can be other reasons why a wad may have problems; I played through SargeBaldy's Warehouse of Evil! but had to edit the name of the start marker for the new flat (or it would crash with a numlumps error.)

Old Post Mar 20 2006 19:27 #
myk is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
entryway
Forum Staple


Posts: 2773
Registered: 01-04



Grazza said:
Can dehacked patches be applied to this as normal?

I think "yes", but I tested it only with my levels and had no problems

Last edited by entryway on Mar 20 2006 at 19:59

Old Post Mar 20 2006 19:29 #
entryway is online now || Blog || PM || Post History || Add Buddy IP || Edit || Quote
Quasar
Moderator


Posts: 6449
Registered: 08-00


How in the.... O_o

Old Post Mar 20 2006 20:11 #
Quasar is offline Twitter account Youtube Github || Blog || PM || Post History || Add Buddy IP || Edit || Quote
Siggi
Member


Posts: 390
Registered: 10-04


This would be a nice optional extra to Chocolate Doom, but I get the feeling it won't be added.
I can hope :p

Old Post Mar 20 2006 23:43 #
Siggi is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
myk
volveré y seré millones


Posts: 15290
Registered: 04-02



Psycho Siggi said:
This would be a nice optional extra to Chocolate Doom, but I get the feeling it won't be added.
Well, it already supports the "1.91" hack. Though it would be cool (and more handy) if this (1.92) hack were released as a patch, with perhaps an extension of the "save game buffer" as well.

Old Post Mar 21 2006 00:10 #
myk is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
entryway
Forum Staple


Posts: 2773
Registered: 01-04



myk said:
Cool! Would it be possible to make it into an installable patch instead of a full executable, like the 1.91?

I will have made it after increase of the game-saving buffer

Old Post Mar 21 2006 10:03 #
entryway is online now || Blog || PM || Post History || Add Buddy IP || Edit || Quote
myk
volveré y seré millones


Posts: 15290
Registered: 04-02



entryway said:
I will have made it after increase of the game-saving buffer
Awesome! Another thing you could increase is the number of things viewable at a time (where things disappear if there are many... a limit which is visible in Hell Revealed and other wads with many enemies.)

Old Post Mar 21 2006 10:23 #
myk is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
Jon
code scholar


Posts: 1414
Registered: 09-00



myk said:
Well, it already supports the "1.91" hack. Though it would be cool (and more handy) if this (1.92) hack were released as a patch, with perhaps an extension of the "save game buffer" as well.

The 1.91 hack fixes a bug, whereas this 1.92 pushes one arbitrary limit up to the next, and is really more of a feature.

Old Post Mar 21 2006 11:15 #
Jon is online now Twitter account Github || Blog || PM || Post History || Add Buddy IP || Edit || Quote
myk
volveré y seré millones


Posts: 15290
Registered: 04-02



Jon said:
The 1.91 hack fixes a bug, whereas this 1.92 pushes one arbitrary limit up to the next, and is really more of a feature.
Maybe, but DeHackEd, DeuTex, and Novert also provide "features" that aren't immediately available to a user of the DOS engine, and these are supported by Chocolate Doom, which also supports two raised limits (save game buffer and screen resolution.)

Old Post Mar 21 2006 11:25 #
myk is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
entryway
Forum Staple


Posts: 2773
Registered: 01-04



myk said:
Awesome! Another thing you could increase is the number of things viewable at a time (where things disappear if there are many... a limit which is visible in Hell Revealed and other wads with many enemies.)

I never knew about this limit. (#define MAXVISSPRITES 128) It is easy for fixing. Only five minutes. At which map I can see it?

Old Post Mar 21 2006 11:56 #
entryway is online now || Blog || PM || Post History || Add Buddy IP || Edit || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 8029
Registered: 01-03


I think the third map in the Doom1 version of The Artifact is good for this. At least the text file talks about disappearing sprites. Although it mentions the invisible platforms there are so many sprites visible that it is more likely this limit.

BTW, how do you change these things? They are fixed size arrays in the source so it can't just be changing a few values, can it?

Old Post Mar 21 2006 12:14 #
Graf Zahl is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
entryway
Forum Staple


Posts: 2773
Registered: 01-04



Graf Zahl said:
BTW, how do you change these things? They are fixed size arrays in the source so it can't just be changing a few values, can it?

These variables (visplanes and drawsegs) are not initialized and consequently are in the virtual segment (.BSS). I provided additional memory space by increasing virtual size of .bss segment, then patched all offsets referencing visplanes and drawsegs to point to this new space and corrected executable fixup table

Old Post Mar 21 2006 13:32 #
entryway is online now || Blog || PM || Post History || Add Buddy IP || Edit || Quote
myk
volveré y seré millones


Posts: 15290
Registered: 04-02



entryway said:
I never knew about this limit. (#define MAXVISSPRITES 128) It is easy for fixing. Only five minutes. At which map I can see it?
Scythe Map26; free the Revenants and run around in the lower section, you'll see some of the monsters in the upper section disappear intermittently. And Nuts, heh.

Another limit that might be hackable is the one on the number of active plats (platforms); this one can affect TNT's Map22 (the text file for this demo comments about it.)

Old Post Mar 21 2006 13:54 #
myk is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
VinceDSS
Senior Member


Posts: 1299
Registered: 11-02


vv did hack doom2.exe as well. He extended the heapsize up to 32 megs instead of the regular 8 megs... allowing bigger levels to be loaded and much higher -maxdemo

Budko > with a doom2.exe hacked by vv, niv was working on a directsound driver for WinXP ... I wonder if you could do this too.

Old Post Mar 21 2006 14:35 #
VinceDSS is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
Quasar
Moderator


Posts: 6449
Registered: 08-00


Leet hax0ring in other words :) Why in the world did it take so long for somebody to think of doing this? To think of all the time we suffered under ridiculously low static limits :P

Old Post Mar 21 2006 19:25 #
Quasar is offline Twitter account Youtube Github || Blog || PM || Post History || Add Buddy IP || Edit || Quote
EarthQuake
9.5 on the Richter!


Posts: 2839
Registered: 05-03


This is so awesome, it's impossible to sum up my feelings in one forum post.

Old Post Mar 21 2006 20:54 #
EarthQuake is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
Grazza
Your move


Posts: 12562
Registered: 07-02


Yeah, imagine what impact this would have had if someone had done it in 1995...

Old Post Mar 21 2006 20:59 #
Grazza is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
DaniJ
Senior Member


Posts: 2294
Registered: 08-03



To think of all the time we suffered under ridiculously low static limits :P
To think of all the time we wasted on source ports /joke

Old Post Mar 21 2006 21:06 #
DaniJ is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
Linguica


Posts: 4862
Registered: 05-00


yeah it's too bad we can't take that exe hack back in time 10 years.

Old Post Mar 22 2006 00:11 #
Linguica is offline Twitter account Youtube || Blog || PM || Post History || Add Buddy IP || Edit || Quote
DeumReaper
Member


Posts: 534
Registered: 12-05


So theoretically vanilla maps using this patched .exe can run more detailed maps and more monsters without problems?

Old Post Mar 22 2006 00:29 #
DeumReaper is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
DaniJ
Senior Member


Posts: 2294
Registered: 08-03



yeah it's too bad we can't take that exe hack back in time 10 years.
I know where you're coming from but I'm glad it wasn't available back then. I could cite dozens of reasons why but for one:

Hypotheticaly, do you think there would have been the same fever around the DOOM source release if most of the hard coded limits had already been expanded to a point that was unreachable in maps of that era due to hardware limitations?

I sumise that the community's response would have been a lot slower and would have lacked direction initially. Would people like Lee K have even gotten involved in the DOOM community if it weren't for the fact the visplane limit existed, was so easy to reach and presented the kind of techinal problem us geeks dream of solving?

A lot of rhetorical questions there, sorry about that.

Old Post Mar 22 2006 01:43 #
DaniJ is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
Grazza
Your move


Posts: 12562
Registered: 07-02



DeumReaper said:
So theoretically vanilla maps using this patched .exe can run more detailed maps and more monsters without problems?

Yes, a lot of maps (but by no means all - some will fall foul of other limits and/or Doom2.exe bugs) that previously required "a limit-removing port" should work with this.

Note that you will still need to use deusf.exe (deusf -app wadname.wad) with wads that include sprite or flat replacements. And load any deh patches using dehacked.exe, etc.

Old Post Mar 22 2006 02:14 #
Grazza is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
Linguica


Posts: 4862
Registered: 05-00



DaniJ said:
I know where you're coming from but I'm glad it wasn't available back then. I could cite dozens of reasons why but for one:

If I went back to 1996 with a floppy disk and told my younger, dumber self, "hey Andy, I have here a hacked version of Doom 2 that lets you play levels with way higher visplanes, but watch out because it might make people not care so much when the source is released", I think my 1996 self would have grabbed that shit out of my hand.

Old Post Mar 22 2006 02:37 #
Linguica is offline Twitter account Youtube || Blog || PM || Post History || Add Buddy IP || Edit || Quote
DaniJ
Senior Member


Posts: 2294
Registered: 08-03



If I went back to 1996 with a floppy disk and told my younger, dumber self, "hey Andy, I have here a hacked version of Doom 2 that lets you play levels with way higher visplanes, but watch out because it might make people not care so much when the source is released", I think my 1996 self would have grabbed that shit out of my hand.
I'd hope your 1996 self would do the Right Thing and NOT release it on the net. Elsewise creating a paradox as entryway would have had no need to have created it in the present.

Old Post Mar 22 2006 05:30 #
DaniJ is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
Scuba Steve


Posts: 3983
Registered: 11-02


Doom City was cut apart and shrunk due to Doom2.exe limitations. Lord knows what awesome things that map looked like before being gutted.

Old Post Mar 22 2006 06:17 #
Scuba Steve is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
myk
volveré y seré millones


Posts: 15290
Registered: 04-02



DaniJ said:
Hypotheticaly, do you think there would have been the same fever around the DOOM source release if most of the hard coded limits had already been expanded to a point that was unreachable in maps of that era due to hardware limitations?
It's likely necessary to have the source to do something like this (though Andrey can answer that more precisely.) Also, hacking at DOOM in many ways didn't stop people's interest in the source; there obviously are many things you can't hack into the engine or a wad, that perhaps would have been dealt with even faster and with more dedication had static limits been extended early on; extensions for super-huge maps happened recently, and maybe would have happened some time back had the limits been rasied earlier, given the push of level designers wanting something more to work with.

Because of things like DeHackEd and related investigation and experimentation (DOOM FAQ, specs, etc.) and sharing of information, the "DOOM community" was knowlegable about DOOM; without a community with such interest and knowledge, the source would have probably gone largely unnoticed.

Old Post Mar 22 2006 08:58 #
myk is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
xttl
Green Marine


Posts: 34
Registered: 03-06



vv did hack doom2.exe as well. He extended the heapsize up to 32 megs instead of the regular 8 megs... allowing bigger levels to be loaded and much higher -maxdemo
That was a bit easier compared to this though. It requires just changing 2 values in the code, one at 0x5CCA6 (check for heap cap) and another at 0x5CCAD (enforce heap cap). I was once asked to do this one too, but I thought it would be too difficult/boring to start searching for and updating each goddamn memory reference. I guess you (entryway) instead opted to just move visplanes and drawsegs to the end of BSS and left some unused space to where they originally were? Me being my dumbass self never thought about doing it this way. :-(

It's likely necessary to have the source to do something like this
It's not absolutely necessary, but at least for myself it does make it quite a bit easier to make some sense out of the disassembler's output.

Old Post Mar 22 2006 10:18 #
xttl is offline || Blog || PM || Post History || Add Buddy IP || Edit || Quote
All times are GMT. The time now is 14:03. Post New Thread    Post A Reply
Pages (6): [1] 2 3 4 » ... Last »  
Doomworld Forums : Powered by vBulletin version 2.2.5 Doomworld Forums > Classic Doom > Source Ports > Doom2 v1.92 - no more visplanes and drawsegs overflows

Show Printable Version | Email this Page | Subscribe to this Thread

 

Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is OFF
vB code is ON
Smilies are OFF
[IMG] code is ON
 

< Contact Us - Doomworld >

Powered by: vBulletin Version 2.2.5
Copyright ©2000, 2001, Jelsoft Enterprises Limited.