Archvile
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 > Special Interest > Eternity > Heretic line specials
 
Author
All times are GMT. The time now is 00:19. Post New Thread    Post A Reply
Gez
Why don't I have a custom title by now?!


Posts: 11216
Registered: 07-07


So, with the recent EV system overhaul, I've looked at the Heretic bindings in Eternity.

7 and 8, the stair builders, are faster than in Doom. Doom uses FLOORSPEED/4, with FLOORSPEED defined as FRACUNIT. Heretic uses FLOORSPEED undivided. (Compare EV_BuildStairs in both Doom's and Heretic's versions of p_floor.c.)

10 and 88 cannot be activated by monsters. Look at the exception lists at the top of P_CrossSpecialLine(). 10 and 88 are included in Doom's version, but in Heretic's they are both commented out.

36 has a difference in behavior between Doom and Heretic. More details in this report.

49 has different behaviors in all three engines (Doom, Heretic, and Strife). See this report for complete explanations.

Old Post 02-07-13 23:16 #
Gez is online now Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
Quasar
Moderator


Posts: 6088
Registered: 08-00


Thanks; I'll have to create new actions for those. At some point I have to do a complete re-sweep of the Heretic source to look for stuff like this I have missed.

For example I recently found a change which is responsible for terrain splashes not angering monsters in Heretic, which never made it into EE. Hence why monsters in EE are really pissy about getting splashed ;)

Old Post 02-08-13 21:44 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Quasar
Moderator


Posts: 6088
Registered: 08-00


Based on your analysis of the line types in Strife I also revisited the disassembly and verified the following:
code:
(In P_UseSpecialLine:) case49: mov edx, 3 ; verifies it is still crushAndRaise... mov eax, ecx call EV_DoCeiling test eax, eax jz rettrue (In EV_DoCeiling: - NB: case 5 also points to case 3, as in DOOM) ceilingcase3: ; CODE XREF: EV_DoCeiling+98j ; DATA XREF: cseg01:0001CF5Co ... mov eax, [esi+sector_t.ceilingheight] ; crush is not set!!! mov [ebx+ceiling_t.topheight], eax ceilingcase0: ; CODE XREF: EV_DoCeiling+98j ; DATA XREF: cseg01:off_1CF50o mov eax, [esi+sector_t.floorheight] mov [ebx+ceiling_t.bottomheight], eax test ebp, ebp jz short loc_1D06F add word ptr [ebx+16h], 8 loc_1D06F: ; CODE XREF: EV_DoCeiling+100j mov [ebx+ceiling_t.direction], 0FFFFFFFFh mov [ebx+ceiling_t.speed], 65536 jmp short loc_1D097

So we can see that neither silentCrushAndRaise nor crushAndRaise do any crushing damage in Strife. I have adjusted Chocolate Strife to do this correctly.

Also I do not know if you're aware or if ZDoom implements it correctly, but lowerAndCrush, which does not crush in DOOM, DOES crush in Strife. Seems they literally moved the crush = true from case 3/5 up to case 2:
code:
ceilingcase2: ; CODE XREF: EV_DoCeiling+98j ; DATA XREF: cseg01:0001CF58o mov [edx+ceiling_t.crush], 1 mov eax, [esi+sector_t.floorheight] mov [edx+ceiling_t.direction], 0FFFFFFFFh mov [edx+ceiling_t.speed], 65536 mov [edx+ceiling_t.bottomheight], eax jmp short loc_1D097

Old Post 02-09-13 17:09 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Gez
Why don't I have a custom title by now?!


Posts: 11216
Registered: 07-07


That's interesting, thanks.

I do not and cannot claim any credit for the difference in speed in stair building; it's something I noticed by comparing which line types had an entry in zdoom.pk3:xlat/heretic.txt but weren't listed in Heretic's section of ev_bindings.cpp. (Same for the no monster activation of line types 10 and 88.) They were already there in ZDoom r1 from 2006.


I can only claim the find for line types 36 and 49, and apparently I did a half-assed job there since I missed that line type 36's case also applied to line types 70, 71, and 98. ;)

I'll take a look at the Strife crushers in ZDoom to see if they're correct.

Edit: lowerAndCrush dealing damage was already in; but line types 25, 73, and 141 are treated identically to how they are in Doom.

Last edited by Gez on 02-10-13 at 00:18

Old Post 02-09-13 18:52 #
Gez is online now Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 7769
Registered: 01-03


This might be interesting, too:

http://forum.zdoom.org/viewtopic.php?f=7&t=35462

Old Post 02-10-13 09:10 #
Graf Zahl is online now Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Quasar
Moderator


Posts: 6088
Registered: 08-00


Before you guys make any changes to Strife line types based on that info, I want to note that T_MovePlane is radically altered as well, to the point I'm not sure if crush damage is *ever* inflicted by surfaces. Kaiser handled the conversion of this function in Choco Strife so I'm a little behind on understanding the changes they made, but they're not trivial.

I'll work on it and make a final report on what I figure out.

EDIT: Yeah, ok. The meaning of crush parameter to T_MovePlane is the same as it ever was. The only changes that were made were to remove some P_ChangeSector calls, for reasons I don't totally understand. Maybe related to problems caused by 3D object clipping?

As a result I fixed another bug in Chocolate Strife, though :)

Last edited by Quasar on 02-10-13 at 18:36

Old Post 02-10-13 17:31 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
All times are GMT. The time now is 00:19. Post New Thread    Post A Reply
 
Doomworld Forums : Powered by vBulletin version 2.2.5 Doomworld Forums > Special Interest > Eternity > Heretic line specials

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.