Ouchface
Register | 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 01:29. Post New Thread    Post A Reply
entryway
Forum Staple


Posts: 2733
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 04-01-07 at 20:48

Old Post 03-20-06 18:36 #
entryway is offline Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
myk
volveré y seré millones


Posts: 15226
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 03-20-06 18:43 #
myk is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Grazza
Let's try Caesium


Posts: 12468
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 03-20-06 19:21 #
Grazza is offline Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
myk
volveré y seré millones


Posts: 15226
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 03-20-06 19:27 #
myk is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
entryway
Forum Staple


Posts: 2733
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 03-20-06 at 19:59

Old Post 03-20-06 19:29 #
entryway is offline Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Quasar
Moderator


Posts: 6088
Registered: 08-00


How in the.... O_o

Old Post 03-20-06 20:11 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Siggi
Member


Posts: 388
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 03-20-06 23:43 #
Siggi is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
myk
volveré y seré millones


Posts: 15226
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 03-21-06 00:10 #
myk is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
entryway
Forum Staple


Posts: 2733
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 03-21-06 10:03 #
entryway is offline Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
myk
volveré y seré millones


Posts: 15226
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 03-21-06 10:23 #
myk is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Jon
Freedoom Bloke


Posts: 1351
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 03-21-06 11:15 #
Jon is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
myk
volveré y seré millones


Posts: 15226
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 03-21-06 11:25 #
myk is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
entryway
Forum Staple


Posts: 2733
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 03-21-06 11:56 #
entryway is offline Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 7769
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 03-21-06 12:14 #
Graf Zahl is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
entryway
Forum Staple


Posts: 2733
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 03-21-06 13:32 #
entryway is offline Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
myk
volveré y seré millones


Posts: 15226
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 03-21-06 13:54 #
myk is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
VinceDSS
Senior Member


Posts: 1295
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 03-21-06 14:35 #
VinceDSS is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Quasar
Moderator


Posts: 6088
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 03-21-06 19:25 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || 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 03-21-06 20:54 #
EarthQuake is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Grazza
Let's try Caesium


Posts: 12468
Registered: 07-02


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

Old Post 03-21-06 20:59 #
Grazza is offline Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
DaniJ
Senior Member


Posts: 2133
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 03-21-06 21:06 #
DaniJ is offline Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
Linguica


Posts: 3953
Registered: 05-00


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

Old Post 03-22-06 00:11 #
Linguica is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || 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 03-22-06 00:29 #
DeumReaper is offline Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
DaniJ
Senior Member


Posts: 2133
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 03-22-06 01:43 #
DaniJ is offline Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
Grazza
Let's try Caesium


Posts: 12468
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 03-22-06 02:14 #
Grazza is offline Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Linguica


Posts: 3953
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 03-22-06 02:37 #
Linguica is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
DaniJ
Senior Member


Posts: 2133
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 03-22-06 05:30 #
DaniJ is offline Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
Scuba Steve


Posts: 3934
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 03-22-06 06:17 #
Scuba Steve is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
myk
volveré y seré millones


Posts: 15226
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 03-22-06 08:58 #
myk is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || 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 03-22-06 10:18 #
xttl is offline Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
All times are GMT. The time now is 01:29. 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.