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
  #196  
Old 03-18-2013, 08:32 AM
bad_captain
Developer
 
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
Default

I'm not 100% sure, but I believe that they do. The issue is, on live, they become available to unsuspend in 5 minutes, as opposed to a few seconds here. Someone would have to verify though.
Reply With Quote
  #197  
Old 03-18-2013, 09:58 AM
orionsun
Banned
 
Join Date: May 2009
Location: USA
Posts: 22
Default

Mercs on live do not change state while suspended, they come out at the exact hp/mana/end that they were suspended with.
Reply With Quote
  #198  
Old 03-18-2013, 12:59 PM
Shiny151
Hill Giant
 
Join Date: Jul 2009
Location: Indianapolis
Posts: 228
Default

Maybe there's a setting within the database we can tweak but if there isn't, would it be possible to change the minimum health that a cleric merc actually starts casting heals?

For example, if you're looting your corpse and you have a cleric merc, they will spam you for each item you reequip since this raises your total hitpoints and you would normally have to regen that health. The cleric thinks you are taking damage and tries to top you off and wastes a bunch of mana for each item you reequip.

I'm thinking if you go below 30-40% of your health then the cleric starts healing you. Just a suggestion.
Reply With Quote
  #199  
Old 03-18-2013, 02:25 PM
lerxst2112
Demi-God
 
Join Date: Aug 2010
Posts: 1,743
Default

The cleric mercs on live are the same way. It's even more fun if you're in a zone where buff timers are suspended. When my int casters cast their shielding spell I end up with a hot and a promised heal sucking up buff slots if I'm not paying attention. All for a gap that was less than I'd regen in a single tick.
Reply With Quote
  #200  
Old 03-20-2013, 04:17 AM
Secrets's Avatar
Secrets
Demi-God
 
Join Date: May 2007
Location: b
Posts: 1,448
Default

Just posting that I *think* I fixed the remaining mercenary memory leaks in code and when my pull request is accepted you should probably update. These were rather large fixes, and your RAM will thank you for it.
Reply With Quote
  #201  
Old 03-20-2013, 04:50 PM
Armm
Sarnak
 
Join Date: Feb 2013
Posts: 70
Default

Summary of existing issues:

x86 debug build, built March 20th 8:47am. Using ROF or UF clients.

Cleric mercs chain cast bulwark of vie on themselves with a level 66 j2 healer merc for example, this happens on a number of buffs for healer mercs. Strange part is after i died and delveled to 65 the merc would still chain cast buff but it wouldnt say bulwark of vie, just say casting a spell, surrounded by bright white aura...

Tank mercs dont rest regen at all, ever.

If you suspend your merc and delvel(like if you died in a zone, had someone rezz you in zone, and tried to bring merc back) you cant unsuspend, dismiss, or do anything with pet. Sometimes zoning brings it back, sometimes not.

Seeing lots and lots of chars with 1-8 mercs for same charid with the multiples suspended. i saw one instance of a single char having 14 different mercs with all suspended but 1.

All in all, lots of improvements, thank you for the hard work.
Reply With Quote
  #202  
Old 03-20-2013, 07:53 PM
bad_captain
Developer
 
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
Default

I'll have to do some more testing. I haven't seen the chain casting of any of the vie spells, at least at 65, but there shouldn't be much difference between the two.

Unless I'm wrong, you need to sit to rest regen, correct? I guess I could have them sit, but that would look a little strange, the tank merc sitting in between pulls.

I still haven't fixed the delevel bug. Yes, it will be the same between suspending and dying and deleveling. I will try to get it done by the end of the weekend.

I know i fixed the multi-save issue a while back, so I'm not sure why that came back. I know there have been a lot of changes in the last week or so, so maybe something broke again. Or it's happening after the merc gets bugged. Right now, mercs are being suspended when you die, so that could be the cause. I'll look into it.
Reply With Quote
  #203  
Old 03-20-2013, 09:41 PM
Armm
Sarnak
 
Join Date: Feb 2013
Posts: 70
Default

Update-

Everyone on server that i could talk to had healer mercs chain buffing. i personally saw them(mercs) chain buffing bulwark of vie on themselves, and after i jumped my level up they started chain casting symbols on themselves. The point being is they only seem to chain cast buffs on self. Perhaps that helps. I have disabled them from buffing for now till it gets squared away.

Tank and melee mercs sitting is fairly important early on because people use the tank merc to duo with and since most arent healers, rest regen in between fights is important to them. Its quicker in the early levels to let a merc tank plow through stuff rather than try to tank something and have a merc healing you.


To add more detail on the multisave. I am not sure what triggers it for sure yet, seems to involve suspending/unsuspending. In database there are no DUPLICATE mercs that are exactly the same name. There are just multiple mercs with different names for ONE pc.
Reply With Quote
  #204  
Old 03-21-2013, 12:31 AM
Secrets's Avatar
Secrets
Demi-God
 
Join Date: May 2007
Location: b
Posts: 1,448
Default

Quote:
Originally Posted by Armm View Post
To add more detail on the multisave. I am not sure what triggers it for sure yet, seems to involve suspending/unsuspending. In database there are no DUPLICATE mercs that are exactly the same name. There are just multiple mercs with different names for ONE pc.
I have fixed this bug specifically, going to add it to my pull request. Basically we added the merc to the group too many times along with not creating the group correctly, there's also some issues with suspending the mercenary artificially through group merging and manually kicking the mercenary that I resolved.

As for the AI, I will take a look at that next.

edit: AI issue seems to be maybe related to having wrong merc spells data. The buffs they cast need to be set to type buff, or 8. Should work in its current form heh.
Reply With Quote
  #205  
Old 03-21-2013, 09:35 AM
bad_captain
Developer
 
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
Default

Secrets, is there any way you could split out the merc stuff into a separate pull request? I was looking through it last night and saw a bunch of other stuff I don't feel comfortable messing with. I'd like to be able to apply just those changes to my local machine and test them with some other changes I've made. If not, I can just apply each change manually, but I'd like to try out the pull requesy stuff. Still learning git and coming up with a more efficient process.
Reply With Quote
  #206  
Old 03-21-2013, 09:37 AM
bad_captain
Developer
 
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
Default

Also, I guess we can add a check for melee mercs to sit if there's no healer and/or below a certain level.
Reply With Quote
  #207  
Old 03-21-2013, 09:55 AM
Secrets's Avatar
Secrets
Demi-God
 
Join Date: May 2007
Location: b
Posts: 1,448
Default

Quote:
Originally Posted by bad_captain View Post
Secrets, is there any way you could split out the merc stuff into a separate pull request? I was looking through it last night and saw a bunch of other stuff I don't feel comfortable messing with. I'd like to be able to apply just those changes to my local machine and test them with some other changes I've made. If not, I can just apply each change manually, but I'd like to try out the pull requesy stuff. Still learning git and coming up with a more efficient process.
https://github.com/SecretsOTheP/Serv...4f223ee70db104 This commit has the two fixes that aren't related to mercs. You can revert them if it makes you feel more comfortable, but the rest are required to fix a few memory leaks that Derision reported.

I'm not exactly sure but I think you can just clone my repository and test the changes that way. Basically, the things I fixed are the following:
-Made emulator structure for two packets (OP_MercenaryData and OP_MercenaryMerchantResponse) static instead of creating it dynamically twice
-Fixed a memory leak in the AI code.
-Fixed a memory leak related to groups. In their current form, groups are leaking memory because they are never assigned a group ID in the unsuspend command.
-Fixed a few issues with merging groups with mercenaries in them.
-Fixed an issue where group IDs were not being handed out and leaking memory in OP_GroupDisband and OP_GroupFollow

The two changes that were not related to mercs are:
-Fixed a crash issue in the RoF encoder
-Fixed a crash issue related to calling NPC functions after the deconstructor for NPC was called.
Reply With Quote
  #208  
Old 03-21-2013, 10:32 AM
Armm
Sarnak
 
Join Date: Feb 2013
Posts: 70
Default

Question-

Double checking merc_spell_list_entries

What does the slot number do exactly?
Reply With Quote
  #209  
Old 03-21-2013, 10:58 AM
Secrets's Avatar
Secrets
Demi-God
 
Join Date: May 2007
Location: b
Posts: 1,448
Default

Quote:
Originally Posted by Armm View Post
Question-

Double checking merc_spell_list_entries

What does the slot number do exactly?
Looks unused, glancing over code.
Reply With Quote
  #210  
Old 03-21-2013, 11:15 AM
bad_captain
Developer
 
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
Default

Slot is how the spells are ordered. So, when buffing, healers will loop through their spells, starting slot 1, and going up from there. I have plans to use it to help identify single and group spells. I.E. Virtue is slot 1- I want it cast first. I would also check for a buff in slot 1 that was a group spell, and assume it was Hand of Virtue. I would then cast it if a group spell was prefered. That code isn't in yet, but the spells should be ordered by slot so the mercs will cycle through their spells. CastercDPS mercs also use it to cycle through all of their nukes once they are all in. That way, specific nukes higher in the spell list will be cast more often.

I'll check it out more tonight, secrets. It was just hard to see the merc specific changes- there seemed to be a lot of unrelated changes in the pull request. Maybe I'm just looking at it wrong.
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 03:36 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