![]() |
#11
|
|||
|
![]() Really?
I think they have more important things to worry about like fixing like paladin lay on lands bug, knight AC etc. Those two are just examples. If you want something changed or fixed, make post in the proper area. Then wait like everyone else does.
__________________
| ||
|
#12
|
|||||
|
![]() Quote:
It shouldn't be too difficult to change hidecorpse when they already have support for command parser hooks. Quote:
__________________
Engineer of Things and Stuff, Wearer of Many Hats
“Knowing yourself is the beginning of all wisdom.” — Aristotle | ||||
|
#13
|
|||
|
![]() Well, it is something that would be incredibly easy to remove - I'm guessing it's still in game because a) no one has put forth the research, or b) devs also think it's worth keeping for quality of life.
Honestly, having to repeatedly rummage through a giant pile of corpses every single time I play in a group/raid doesn't exactly deepen my EverQuest Classic Immersion experience. | ||
Last edited by paulgiamatti; 12-02-2016 at 09:56 AM..
|
|
#14
|
||||
|
![]() Quote:
there's all the evidence you need (hidecorpse and its variants was clientsided until Seeds of Destruction)
__________________
Engineer of Things and Stuff, Wearer of Many Hats
“Knowing yourself is the beginning of all wisdom.” — Aristotle | |||
|
#15
|
||||
|
![]() Quote:
__________________
Engineer of Things and Stuff, Wearer of Many Hats
“Knowing yourself is the beginning of all wisdom.” — Aristotle | |||
|
#16
|
|||
|
![]() Wait, you actually have a video of EQ from 2001?
| ||
|
#17
|
||||
|
![]() Quote:
__________________
Engineer of Things and Stuff, Wearer of Many Hats
“Knowing yourself is the beginning of all wisdom.” — Aristotle | |||
|
#18
|
||||
|
![]() Quote:
| |||
Last edited by paulgiamatti; 12-02-2016 at 10:05 AM..
|
|
#19
|
||||
|
![]() Quote:
| |||
|
#20
|
||||
|
![]() Quote:
Also see the client disassembly from the binary: Code:
int __cdecl do_hidecorpses(EQPlayer *a1, char *a2) { const char *v2; // eax@2 const char *v3; // eax@2 const char *v4; // eax@2 int result; // eax@2 EQPlayer *v6; // ebx@4 char *v7; // eax@4 const char *v8; // eax@5 const char *v9; // eax@9 char *v10; // eax@13 const char *v11; // eax@14 const char *v12; // eax@18 int v13; // esi@19 const char *v14; // eax@26 char v15; // [sp+10h] [bp-58h]@9 if ( *a2 ) { v6 = EQPlayer::top; v7 = (char *)StringTable::getString(g_stringTable, 0x3395u, 0); if ( UTF8_stricmp(a2, v7) ) { v10 = (char *)StringTable::getString(g_stringTable, 0x3397u, 0); if ( UTF8_stricmp(a2, v10) ) { v14 = (const char *)StringTable::getString(g_stringTable, 0x3399u, 0); for ( result = CEverQuest::dsp_chat(EverQuestObject, v14, 15, 1); v6; v6 = (EQPlayer *)*((_DWORD *)v6 + 31) ) { result = *((_BYTE *)v6 + 168) - 2; if ( (unsigned __int8)result <= 1u ) { result = *((_DWORD *)v6 + 33); if ( result ) { if ( *(_DWORD *)result ) { *(_DWORD *)(result + 440) = 0; result = t3dSetActorInvisible(**((_DWORD **)v6 + 33), 0); } } } } } else { v11 = (const char *)StringTable::getString(g_stringTable, 0x3398u, 0); for ( result = CEverQuest::dsp_chat(EverQuestObject, v11, 15, 1); v6; v6 = (EQPlayer *)*((_DWORD *)v6 + 31) ) { result = *((_BYTE *)v6 + 168) - 2; if ( (unsigned __int8)result <= 1u ) { v12 = (const char *)CEverQuest::stripName(EverQuestObject, (char *)v6 + 1); strcpy(&v15, v12); result = stricmp(&v15, (const char *)LocalPlayer + 1); if ( result ) { v13 = 0; do { result = stricmp(&v15, (const char *)LocalPlayer + 1); if ( result ) { if ( EQ_PC::IsAGroupMember(LocalPC, &v15) ) { result = *((_DWORD *)v6 + 33); if ( result && *(_DWORD *)result ) { *(_DWORD *)(result + 440) = 0; result = t3dSetActorInvisible(**((_DWORD **)v6 + 33), 0); } } else { result = *((_DWORD *)v6 + 33); if ( result && *(_DWORD *)result ) { *(_DWORD *)(result + 440) = 1; result = t3dSetActorInvisible(**((_DWORD **)v6 + 33), 1); } } } ++v13; } while ( v13 != 6 ); } } } } } else { v8 = (const char *)StringTable::getString(g_stringTable, 0x3396u, 0); for ( result = CEverQuest::dsp_chat(EverQuestObject, v8, 15, 1); v6; v6 = (EQPlayer *)*((_DWORD *)v6 + 31) ) { result = *((_BYTE *)v6 + 168) - 2; if ( (unsigned __int8)result <= 1u ) { v9 = (const char *)CEverQuest::stripName(EverQuestObject, (char *)v6 + 1); strcpy(&v15, v9); result = stricmp(&v15, (const char *)LocalPlayer + 1); if ( result ) { result = *((_DWORD *)v6 + 33); if ( result ) { if ( *(_DWORD *)result ) { *(_DWORD *)(result + 440) = 1; result = t3dSetActorInvisible(**((_DWORD **)v6 + 33), 1); } } } } } } } else { v2 = (const char *)StringTable::getString(g_stringTable, 0x3392u, 0); CEverQuest::dsp_chat(EverQuestObject, v2); v3 = (const char *)StringTable::getString(g_stringTable, 0x3393u, 0); CEverQuest::dsp_chat(EverQuestObject, v3); v4 = (const char *)StringTable::getString(g_stringTable, 0x3394u, 0); result = CEverQuest::dsp_chat(EverQuestObject, v4); } return result; }
__________________
Engineer of Things and Stuff, Wearer of Many Hats
“Knowing yourself is the beginning of all wisdom.” — Aristotle | |||
|
![]() |
|
|