Quest Giver Faction Issue if($faction >=1000)
I want players to have to kill nagafen before they can go to Karnor. The method I've chosen to do this with is faction. The steps I've taken are as follows:
sub EVENT_SAYI'm sort of at a loss as to why that doesn't work. I've confirmed the following:
Do I also need to somehow add an entry for the quest NPC in [Table: npc_faction] in order to set his primary faction to 19938? I wouldn't figure this was necessary, because when I use the NPC and Loot Editor, it shows the npc_faction_id properly; however, when I con the mob (even after killing nagafen). If this is what I need to do, what does the value mean? Is that just an arbitrary unique number I can assign? Does it use "name" as a lockup in some other table? While I'm at it, is there a way for a quest to check more than one faction, or can it really only compare the faction against the primary faction of the quest giver? I'm under the assumption that it can only do one, but if it could do several, that'd be downright handy. Thanks in advance. -Rob |
The $faction variable does not give the quest NPC the actual faction points, it gives a number from 1-9, representing the faction message the user would get when conning the NPC.
However, for some reason, the current numbers are out of whack once you get below indifferent: File: faction.h Code:
enum FACTION_VALUE { Code:
if(character_value >= 1101) return FACTION_ALLY; |
Quote:
|
http://www.eqemulator.net/wiki/wikka...=QuestTutorial
$faction values are only 1 through 9, so you need to set the primary faction on your zoner(i assume this is how you are keeping people out of karnors?) to the one you are using for Nagafen (Ring of Scale?) |
Quote:
|
Thanks for the insight. The faction levels thing is good to know, but that isn't what's stopping the quest from working. Though I've taken the faction hit from killing naggy now, the mob still cons me as dubious (although the table shows me at 1500 with the faction which should be max ally). That's where the problem lies for me--though I appreciate you nipping my next question in the bud where it comes to faction levels.
So, why does the mob not con as ally to me if I have it done that way? Congdar seems to be pointing me in the right direction, but I thought I'd already done that. I don't want the "zoner" mob to be on ring of scale faction, but on the new faction I created (19938) and I thought I'd done that, but it doesn't seem to have taken. Could you elaborate as to how to properly perform this step? |
Perhaps you're not utilizing the faction tables correctly.
npc_types.npc_faction_id corresponds to npc_faction.id npc_faction.primaryfaction corresponds to faction_list.id faction_list.id corresponds to faction_values.faction_id So, when character # 1 cons Nagafen (npc_types.id 32040), the server sees that Nagafen has a npc_faction_id of 23. The server checks the npc_faction record for id 23 and sees that the primary faction for this entry is 226. The server checks the faction_list table for id 226 and builds a starting faction value from the base, race, class, and deity modifiers in the record. The server then checks the faction_values table record matching character id #1 and faction_id # 226, adding the user-accomplished current_value number to the starting faction value from faction_list. The server then adds in any further modifiers such as worn item faction adjustments and spell-related faction adjustments. The final modified number determines the individual character's standing with the NPC being conned. |
Yeah, that's gotta be the breakdown. I was omitting an entry in faction_values for the factions I'd created.
I really appreciate you guys taking the time to break this all down in detail to a n00b. <3 |
All times are GMT -4. The time now is 08:27 PM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.