|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Development::Development Forum for development topics and for those interested in EQEMu development. (Not a support forum) |
03-18-2013, 08:32 AM
|
Developer
|
|
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
|
|
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.
|
03-18-2013, 09:58 AM
|
Banned
|
|
Join Date: May 2009
Location: USA
Posts: 22
|
|
Mercs on live do not change state while suspended, they come out at the exact hp/mana/end that they were suspended with.
|
03-18-2013, 12:59 PM
|
Hill Giant
|
|
Join Date: Jul 2009
Location: Indianapolis
Posts: 228
|
|
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.
|
03-18-2013, 02:25 PM
|
Demi-God
|
|
Join Date: Aug 2010
Posts: 1,742
|
|
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.
|
03-20-2013, 04:17 AM
|
|
Demi-God
|
|
Join Date: May 2007
Location: b
Posts: 1,447
|
|
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.
|
03-20-2013, 04:50 PM
|
Sarnak
|
|
Join Date: Feb 2013
Posts: 70
|
|
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.
|
03-20-2013, 07:53 PM
|
Developer
|
|
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
|
|
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.
|
|
|
|
03-20-2013, 09:41 PM
|
Sarnak
|
|
Join Date: Feb 2013
Posts: 70
|
|
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.
|
|
|
|
03-21-2013, 12:31 AM
|
|
Demi-God
|
|
Join Date: May 2007
Location: b
Posts: 1,447
|
|
Quote:
Originally Posted by Armm
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.
|
03-21-2013, 09:35 AM
|
Developer
|
|
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
|
|
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.
|
03-21-2013, 09:37 AM
|
Developer
|
|
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
|
|
Also, I guess we can add a check for melee mercs to sit if there's no healer and/or below a certain level.
|
|
|
|
03-21-2013, 09:55 AM
|
|
Demi-God
|
|
Join Date: May 2007
Location: b
Posts: 1,447
|
|
Quote:
Originally Posted by bad_captain
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.
|
|
|
|
03-21-2013, 10:32 AM
|
Sarnak
|
|
Join Date: Feb 2013
Posts: 70
|
|
Question-
Double checking merc_spell_list_entries
What does the slot number do exactly?
|
03-21-2013, 10:58 AM
|
|
Demi-God
|
|
Join Date: May 2007
Location: b
Posts: 1,447
|
|
Quote:
Originally Posted by Armm
Question-
Double checking merc_spell_list_entries
What does the slot number do exactly?
|
Looks unused, glancing over code.
|
03-21-2013, 11:15 AM
|
Developer
|
|
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
|
|
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.
|
Posting 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
|
|
|
All times are GMT -4. The time now is 10:04 PM.
|
|
|
|
|
|
|
|
|
|
|
|
|