EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Support::Linux Servers (https://www.eqemulator.org/forums/forumdisplay.php?f=588)
-   -   /me sighs, I broke Mercs (https://www.eqemulator.org/forums/showthread.php?t=37310)

HnathBST 09-20-2013 04:09 AM

[resolved] /me sighs, I broke Mercs
 
So seeing as peq has started updating all their quests to lua... I decided I should recompile with lua on. While I was at it I snagged a daily db from peq.

Sourced in the db and recompiled (old source) and everything seems fine. Someone complained that mercs aren't working... Went ahead and got the newest source, recompiled. Still no mercs.

I found (sql error) and fixed the changes to specialatk/special_abilities

reload the server, still no mercs. No errors in zone, world, no debug, nothing. Just a daunting message "Mercenary failed to spawn".

I did notice (not sure if its a bug/feature/part of my problem) that if I walk away from the Liaison with the merc window open and click hire it returns "Your mercenary is about to be suspended due to insufficient funds", I have upkeep turned off, and also have plenty of money.

I tried to recreate this and it wouldn't do it...

Any insight would be greatly appreciated... I don't know what I've done here...

HnathBST 09-20-2013 04:18 AM

Edit, I fixed it?

I logged on another character and it worked fine. Only difference their level.

My max level is set at 100,
Max Experience level is at 85.

Mercs won't spawn past my max experience level (86 & above) though I have a feeling that I know why.

Okay, now I feel like a moron. I didn't have any mercs setup for >85. All resolved now.

Uleat 09-20-2013 06:44 PM

There is vast complexity in the emulator, so you shouldn't feel bad about missing something.


You figured out what the issue was and posted the solution, so kudos!

You've now contributed to the community and have helped anyone in the future who has for this same issue..assuming they search for it :)

HnathBST 09-21-2013 02:24 AM

Surely I can't be the only one who has had that problem... I'm just glad that poking around lead me to something. haha.

Now if I could just figure out how to read/write in c++. I'd like to figure out how to get the merc merchant to check the qglobal from their table before allowing to sell. I found the file, but I have no idea how the server handles QGlobals...

Davood 10-30-2013 04:46 PM

hate to bump the thread but this solved my problem.

I was testing and some of my test toons were able to summon mercs and some were not able.

"Failed to Spawn Mercenary" was the error for the players above level 85.

so i will add the missing table data later.. However this is definately the solution to that problem.

the reason for my post is to help with searching for this for others who will inevitably have this same issue in the future.

I may even include my db entries when I get around to fixing it.

HnathBST 10-30-2013 07:29 PM

Yeah, IMHO I think the query used to get the merc stats should be changed to get the last level merc available. So if a server op only wants new mercs every 10 levels (I know not live like) they wouldn't have to fill the merc_stats table with a bunch of jazz.
The query would be like
Code:

Select * from merc_stats where clientlevel <= getlevel() limit 1
Of course that won't work, but you get the idea. It would select the highest level available to the player and only return 1 result. I can't imagine that putting too much extra load time on mercs.

I'll take a look at the code and see if I can implement this myself.


All times are GMT -4. The time now is 02:11 PM.

Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.