EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Support::Windows Servers (https://www.eqemulator.org/forums/forumdisplay.php?f=587)
-   -   Yet Another Mercenary failed to spawn! error. (https://www.eqemulator.org/forums/showthread.php?t=39331)

Riklin 02-08-2015 03:44 PM

Yet Another Mercenary failed to spawn! error.
 
Ok, trying to turn mercs back on.

Compiled last night, with updated source data. Sourced in the mercs.sql from ../source/utils/sql/svn/mercs.sql. Ran all the patches from 3280 and later that had merc in the name, in the same svn directory. Went to ../utils/sql/git/required and sourced all sql later than 12/31/2014 that had merc in the name. Not sure how much the auto-patcher works involving mercs so ran these updates anyway...

Getting this sql error when attempting to Hire a merc.:
[02-08-2015 :: 11:43:25] [MySQL Error] 1054: Unknown column 'm_stats.special_abilities' in 'field list'
SELECT m_stats.merc_npc_type_id, '' AS name, m_stats.level, m_types.race_id, m_subtypes.class_id, m_stats.hp, m_stats.mana, 0 AS gender, m_armorinfo.texture, m_armorinfo.helmtexture, m_stats.attack_delay, m_stats.STR, m_stats.STA, m_stats.DEX, m_stats.AGI, m_stats._INT, m_stats.WIS, m_stats.CHA, m_stats.MR, m_stats.CR, m_stats.DR, m_stats.FR, m_stats.PR, m_stats.Corrup, m_stats.mindmg, m_stats.maxdmg, m_stats.attack_count, m_stats.special_abilities, m_weaponinfo.d_melee_texture1, m_weaponinfo.d_melee_texture2, m_weaponinfo.prim_melee_type, m_weaponinfo.sec_melee_type, m_stats.runspeed, m_stats.hp_regen_rate, m_stats.mana_regen_rate, 1 AS bodytype, m_armorinfo.armortint_id, m_armorinfo.armortint_red, m_armorinfo.armortint_green, m_armorinfo.armortint_blue, m_stats.AC, m_stats.ATK, m_stats.Accuracy, m_stats.statscale, m_stats.spellscale, m_stats.healscale FROM merc_stats m_stats INNER JOIN merc_armorinfo m_armorinfo ON m_stats.merc_npc_type_id = m_armorinfo.merc_npc_type_id AND m_armorinfo.minlevel <= m_stats.level AND m_armorinfo.maxlevel >= m_stats.level INNER JOIN merc_weaponinfo m_weaponinfo ON m_stats.merc_npc_type_id = m_weaponinfo.merc_npc_type_id AND m_weaponinfo.minlevel <= m_stats.level AND m_weaponinfo.maxlevel >= m_stats.level INNER JOIN merc_templates m_templates ON m_templates.merc_npc_type_id = m_stats.merc_npc_type_id INNER JOIN merc_types m_types ON m_templates.merc_type_id = m_types.merc_type_id INNER JOIN merc_subtypes m_subtypes ON m_templates.merc_subtype_id = m_subtypes.merc_subtype_id WHERE m_templates.merc_npc_type_id = 1 AND m_stats.clientlevel = 25 AND m_types.race_id = 7

What have I missed or done wrong or misunderstood or screwed up?

Riklin

Taleason 02-08-2015 09:38 PM

Quote:

Originally Posted by trevius (Post 236686)

All you should need to do in order to enable mercs is this:

1. Set the AllowMercs rule to true.
2. Create a Merc Merchant NPC that is class 71.
3. Add the NPC ID of the Merc Merchant to the merc_merchant_entries table. (an example is merc_merchant_entry_id = 1, merc_merchant_template_id = 1, and merchant_id = 123456, where 123456 is the NPC ID of the Merc Merchant)
4. Restart your server.

That should be it. If that is not working, then there may be something else wrong with your merc tables (such as a missing update). If you ran the mercs.sql file, then you overwrote some of the updates since that file was created and your queries will fail. Make sure you also applied all merc related sql from after that change as well (which I think are the ones in the git/required folder). The only one I know of for sure offhand is the specialabilities field updates for mercs.

I used this to get mercs working for me... ymmv

Code:

UPDATE `rule_values` SET `rule_value` = 'true' WHERE `rule_name` = 'Mercs:AllowMercs';
UPDATE `npc_types` SET `class` = 71 WHERE `lastname` LIKE '%Mercenary Liaison%';


Nibiuno 02-10-2015 08:42 AM

Do you have the column 'special_abilities' in your merc_stats table? There was a SQL update that changed a column from special_atks or something to that.

Riklin 02-10-2015 10:54 AM

I restored the database to a previous state before I removed and reloaded the mercs script. It's all working now. The mercs are working much better than they used to. Their hitrate has been significantly reduced, as was appropriate.

thanks again,
Riklin

Yummy 06-21-2015 10:15 PM

Quote:

Originally Posted by Taleason (Post 237627)
I used this to get mercs working for me... ymmv

Code:

UPDATE `rule_values` SET `rule_value` = 'true' WHERE `rule_name` = 'Mercs:AllowMercs';
UPDATE `npc_types` SET `class` = 71 WHERE `lastname` LIKE '%Mercenary Liaison%';



Thank you, Taleason!

I wish I had found this post, earlier. I lost, oh, at least two hours fudging with the utils/sql/svn and git merc sql scripts.

N0ctrnl 06-22-2015 03:44 AM

Only two? :)

Yummy 06-22-2015 02:20 PM

Quote:

Originally Posted by N0ctrnl (Post 241152)
Only two? :)

It was probably more but I was too embarrassed to admit it. :D

mutidotpaul 03-22-2016 08:59 PM

Hi all - I seem to be getting that Mercenary failed to spawn! error on my new install.

I'm a little late to the party, but I just recently came across the windows setup guide for PEQ EMU for windows devices and gave that a shot. I do have bots working at the moment, but I'd also like to get merc's to work in case I decide to tweak bots a bit or if they start becoming too much of a drain.

I followed this guide:
https://github.com/EQEmu/Server/wiki...-No-Webserver)

Used peqbeta_2015-08-12-02_01.sql
and sourced in everything from the required GiT folder after August 12th 2015:

(nothing related to mercs)
2015_09_25_inventory_snapshots.sql
2015_11_01_perl_event_export_settings.sql
2015_11_02_ai_idle_no_spell_recast_default_changes .sql
2015_12_01_spell_scribe_restriction_rule.sql
2015_12_07_command_settings.sql
2015_12_17_eqtime.sql
2015_12_21_items_updates_evoitem.sql
2015_12_29_quest_zone_events.sql
2016_01_08_command_find_aliases.sql
2016_03_05_secondary_recall.sql

Or should everything from the required folder regardless of date be sourced in?

Does anything from the C:\EQ\Source\utils\sql\git\optional folder need to be sourced in as well?

Does anything from the C:\EQ\Source\utils\sql\git\optional folder after August 12th 2015 need to be sourced in as well?

I've ran the 3 queries listed previously that are hosted on pastebin that take care of the special attack issue, recreates the mercnpcview and changes the NPCtypes to 71.


Downloaded the free to play steam client to grab the 7+MB dbstr_us.txt, which got rid of the Unknown strings in the Merc Merchant windows.


In regards to this portion:

3. Add the NPC ID of the Merc Merchant to the merc_merchant_entries table. (an example is merc_merchant_entry_id = 1, merc_merchant_template_id = 1, and merchant_id = 123456, where 123456 is the NPC ID of the Merc Merchant)

I see the entries in there, but it doesn't make much sense to me. For instance, Guardian_Adiasean has an NpcID of 202097, and her template ID shows as 14, which seems to be a Kobold Merc Merchant, except there's a slight issue.. she's an Erudite. Should I change her template type to 3? Or maybe I'm reading that wrong entirely?


What I am a little shaky on is changing that melee / meele column and if that is still needed. Does that change only need to happen in merc_weaponinfo?

I see it in merc_weaponinfo a few times -

d_meele_texture1
d_meele_texture2

and changed that to melee.

What I didn't notice, was that in HeidiSQL, after making the change to the column titles, it prompted me to save my changes only after I tried to change to a different table. So here I was thinking the table was already modified. Heidi threw and exception and asked me if i wanted to keep the program open / reopen or close it (forgot to grab a screenshot). Refreshed the DB and the table changes stuck, but still getting the Mercenary failed to spawn! error


Any assistance is much appreciated - not even sure i need Mercs as much as I need to get it to work for my own sanity :)

Uleat 03-22-2016 09:17 PM

Your best bet is to check the logs.

Most errors should show up and that will point to the most relevant issue.

mutidotpaul 03-23-2016 07:15 AM

http://imgur.com/2AwNPc6
http://i.imgur.com/2AwNPc6.png

Tried logging to file and searching the server folder with voidtools everything and can't seem to locate the actual log so I tried grabbing a screenshot when logging to gmsay.

Will try to look into it more tonight, but wanted to get something posted before heading to work.

mutidotpaul 03-23-2016 06:36 PM

Here's what i saw when logging in just now -

http://imgur.com/x4vsSxo

http://i.imgur.com/x4vsSxo.png


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

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