Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Development

Development::Development Forum for development topics and for those interested in EQEMu development. (Not a support forum)

Reply
 
Thread Tools Display Modes
  #1  
Old 01-22-2009, 04:22 PM
Kilralpine
Sarnak
 
Join Date: Jul 2004
Posts: 98
Default LoS And Deathtouch

I know every mobs Deathtouch was moved off of an npcspecialatk and moved to the spells tables... the ISSUE is...

People are 5 boxing a 2 group mob by LoS'ing their tank; by doing this their able to avoid death touch...

The mobs trying to cast deathtouch as a targeted spell... which he cant do because his main focus "technically" is out of line of sight

What are some solutions...

I tried making a swarm type pet that is casted by the mob that DT's every meele swing... swarm pet has 150 agro and is KOS to players... came across the same issue; pet only spawns if tank has LoS (tried setting spell as a Point blank AE - same issue)

Anyone got a fix to this?? id really hate to just shrug this off...
Reply With Quote
  #2  
Old 01-22-2009, 05:00 PM
Kilralpine
Sarnak
 
Join Date: Jul 2004
Posts: 98
Default

besides moving it to perl... i meant sry *edit
Reply With Quote
  #3  
Old 01-23-2009, 01:08 PM
VallonTallonZek
Sarnak
 
Join Date: May 2008
Location: Halas
Posts: 42
Default

On line 1344 of spells.cpp add the red portion

Code:
if(spell_target && IsDetrimentalSpell(spell_id) && !CheckLosFN(spell_target) && !IsHarmonySpell(spell_id) && spells[spell_id].id != 982)
It isnt the most elegant way to do it, but it is simple and it works.
Reply With Quote
  #4  
Old 01-24-2009, 11:24 AM
Kilralpine
Sarnak
 
Join Date: Jul 2004
Posts: 98
Default

thank you so much! LOL I was looking for this...
Reply With Quote
  #5  
Old 01-24-2009, 12:57 PM
Kilralpine
Sarnak
 
Join Date: Jul 2004
Posts: 98
Default

Implemented This and Was Unsuccessful... We Miss Anything??
Reply With Quote
  #6  
Old 01-24-2009, 11:46 PM
VallonTallonZek
Sarnak
 
Join Date: May 2008
Location: Halas
Posts: 42
Default

The server I work on has a different way of handling that area of code than the stock source, but that should be the line for the stock source.

the whole check should look like this:

Code:
// solar: check line of sight to target if it's a detrimental spell
	if(spell_target && IsDetrimentalSpell(spell_id) && !CheckLosFN(spell_target) && !IsHarmonySpell(spell_id) && spells[spell_id].id != 982)
	{
		mlog(SPELLS__CASTING, "Spell %d: cannot see target %s", spell_target->GetName());
		Message_StringID(13,CANT_SEE_TARGET);
		return false;
	}
The only problem is that I cant test it myself.

EDIT: Have you tryed testing CT out in the open and ensure that he is actually doing multiple DTs as expected? Our server had an issue with timing DTs, and we moved the actual DT to a perl script.
Reply With Quote
  #7  
Old 01-27-2009, 02:03 PM
Kilralpine
Sarnak
 
Join Date: Jul 2004
Posts: 98
Default

Nah, Im probably just going to move it to perl myself...
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 05:57 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3