Clavicula Nox: Swimmable Water Not Working

Is there something that doesn't work right in the latest GZDoom? Post about it here.

Moderator: GZDoom Developers

Forum rules
Please construct and post a simple demo whenever possible for all bug reports. Please provide links to everything.

If you can include a wad demonstrating the problem, please do so. Bug reports that include fully-constructed demos have a much better chance of being investigated in a timely manner than those that don't.

Please make a new topic for every bug. Don't combine multiple bugs into a single topic. Thanks!

Clavicula Nox: Swimmable Water Not Working

Postby Cornelius Tootville » Mon May 20, 2019 1:45 pm

https://www.doomworld.com/idgames/level ... c/clavnoxr
Clavicula Nox: Revised Edition was released for Vavoom. But in spite of GZDoom's aim for Vavoom compatibility, the mod is broken in GZDoom. Specifically, all swimmable bodies of liquid are both solid and invisible.

Water pool from MAP01 in Vavoom:
http://edthebat.com/images/clavnoxr_vavoom.png
Same location in GZDoom:
http://edthebat.com/images/Screenshot_D ... 180845.png

As is shown, the water is not only invisible, but is effectively now a solid floor in GZDoom.


If it would be useful, here is a list of all 'bad' swimmable sectors in each map, with the lines therein that call Special 160 (Sector_Set3dFloor) and 161 (Sector_SetContents)


MAP01: //9B966DA88265AC8972B7E15C86928AFB
Sector 121:
Line 698: Spec.160: Tag 4
Line 700: Spec.161

MAP02 //9FD0C47C2E132F64B48CA5BFBDE47F1D
Sector 139:
Line 953: Spec.160: Tag 12
Line 952: Spec.161
Sector 143:
Line 989: Spec.160: Tag 13
Line 988: Spec.161
Sector 236:
Line 1601: Spec.160: Tag 19
Line 1640: Spec.160: Tag 20
Line 1641: Spec.160: Tag 21
Line 1603: Spec.161

MAP03 //969B9691007490CF022B632B2729CA49
Sector 11:
Line 96 Spec.160: Tag 1
Line 97: Spec.161
Sector 173:
Line 955: Spec.160: Tag 13
Line 956: Spec.161
Sector 195:
Line 1082: Spec.160: Tag 14
Line 1084: Spec.161
Sector 203:
Line 1111: Spec.160: Tag 15
Line 1113: Spec.161
Sector 204:
Line 1115: Spec.160: Tag 16
Line 1117: Spec.161
Sector 216:
Line 1163: Spec.160: Tag 17
Line 1165: Spec.161
Sector 217:
Line 1169: Spec.160: Tag 18
Line 1167: Spec.161

MAP04 //748EDAEB3990F13B22C13C593631B2E6
Sector 172:
Line 859: Spec.160: Tag 22
Line 861: Spec.160: Tag 23
Line 858: Spec.161

MAP05 //A066B0B432FAE8ED20B83383F9E03E12
Sector 190:
Line 1020: Spec.160: Tag 2
Line 1022: Spec.161: Args 2,50,7

MAP06 //5F36D758ED26CAE907FA79902330877D
Sector 8:
Line 1086: Spec.160: Tag 1
Line 60: Spec.160: Tag 4
Line 61: Spec.161
Sector 64:
Line 561: Spec.160: Tag 2
Line 562: Spec.161
Sector 34:
Line 280: Spec.160: Tag 3
Line 283: Spec.161
Sector 102:
Line 692: Spec.160: Tag 5
Line 693: Spec.161
Sector 170:
Line 1090: Spec.160: Tag 7
Line 1088: Spec.161
Sector 171:
Line 1091: Spec.160: Tag 8
Line 1094: Spec.160: Tag 9
Line 1092: Spec.161
Sector 178:
Line 1139: Spec.160: Tag 12
Line 1141: Spec.161
Sector 236:
Line 1595: Spec.160: Tag 16
Line 1592: Spec.161
Sector 250:
Line 1681: Spec.160: Tag 17
Line 1682: Spec.161
Sector 283:
Line 1878: Spec.160: Tag 20
Line 1879: Spec.161
Sector 284:
Line 1882: Spec.160: Tag 22
Line 1883: Spec.161

MAP07 //B7E98C1EA1B38B707ADA8097C25CFA75
Sector 218:
Line 1307: Spec.160: Tag 22
Line 1305: Spec.160: Tag 23
Line 1306: Spec.161: Args 2,50,7

MAP08 //7DAB2E8BB5759D742211505A3E5054D1
Sector 20:
Line 185: Spec.160: Tag 1
Line 187: Spec.161: Args 2,50,7
Sector 102:
Line 735: Spec.160: Tag 13
Line 737: Spec.161

MAP09 //C17A9D1350399E251C70711EB22856AE
Sector 6:
Line 63: Spec.160: Tag 1
Line 65: Spec.161
Sector 9:
Line 84: Spec.160: Tag 2
Line 86: Spec.161
Sector 34:
Line 208: Spec.160: Tag 4
Line 210: Spec.161
Sector 59
Line 326: Spec.160: Tag 6
Line 328: Spec.161
Sector 75
Line 433: Spec.160: Tag 10
Line 431: Spec.161: Args 2,50,7

MAP11 //B6BB8A1792FE51C773E6770CD91DB618
Sector 240:
Line 1235: Spec.160: Tag 23
Line 1238: Spec.160: Tag 24
Line 1237: Spec.161

MAP12 //ADDF57B80E389F86D324571D43F3CAB7
Sector 254:
Line 1619: Spec.160: Tag 19
Line 1658: Spec.160: Tag 20
Line 1659: Spec.160: Tag 21
Line 1621: Spec.161
Cornelius Tootville
 

Re: Clavicula Nox: Swimmable Water Not Working

Postby Graf Zahl » Mon May 20, 2019 1:55 pm

The swimmable water implementation for Vavoom was based on a single map set (the original Silent Steel) and that required a bit of hackery to get working so it's not really surprising that this feature isn't fully stable.
User avatar
Graf Zahl
Lead GZDoom Developer
Lead GZDoom Developer
 
Joined: 19 Jul 2003
Location: Germany

Re: Clavicula Nox: Swimmable Water Not Working

Postby ketmar » Sat Jun 08, 2019 9:05 am

hehe. not only i have troubles implementing GZDoom 3D support. THE REVENGE IS MINE!!!

sorry. i couldn't resist the temptation.
ketmar
 
Joined: 01 Oct 2016

Re: Clavicula Nox: Swimmable Water Not Working

Postby Graf Zahl » Sat Jun 08, 2019 9:06 am

How immature... :?

Regarding GZDoom 3D floors, you'll probably have to take the dynamic 3D floor splitting code to make it work properly because the two map sets that were used as reference here (Nimrod and Hi-Tech Hell) had quite a few overlapping 3D floors that need dynamic adjustment to render properly. I would have made a few of the combinations illegal to simplify the code but since this was supposed to handle Doom Legacy maps it wasn't possible.
User avatar
Graf Zahl
Lead GZDoom Developer
Lead GZDoom Developer
 
Joined: 19 Jul 2003
Location: Germany

Re: Clavicula Nox: Swimmable Water Not Working

Postby ketmar » Sat Jun 08, 2019 10:39 am

i actually implemented dynamic CSG, so the order and overlapping should work as expected. the engine needs "openings" (i.e. data structure with open spaces, not with solids), and those openings should be sorted, and non-overlapping. and it would be quite hard to change that. so i cheated, and wrote specialised CSG code to build openings when they're requested by the physics code. also, there is experimental "opening cache" too (but i not decided if it really worth keeping: it seems that recalculating is fast enough). this way i can have my cake and eat it too. not that i like that code, but...

i prolly should write the same CSG for renderer, so overlapped 3d won't z-fight, but it can wait. at least most maps with gzdoom-style 3d floors are playable now, and looks ok.
ketmar
 
Joined: 01 Oct 2016


Return to Bugs

Who is online

Users browsing this forum: Trendiction.de [Bot] and 1 guest