|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Support::Windows Servers Support forum for Windows EQEMu users. |
|
|
|
08-29-2006, 01:23 PM
|
Hill Giant
|
|
Join Date: Sep 2004
Posts: 117
|
|
Problem adding an NPC with faction
Hello, all. I'm running into a problem when I try to bring up my server. I'm running the current EQEMU code. It works fine prior to adding in these lines below.
I can add this in this line without a problem:
Quote:
INSERT INTO npc_types(id, name, lastname, level, race, class, bodytype, hp, gender, texture, helmtexture, size, hp_regen_rate, mana_regen_rate, loottable_id, merchant_id, npc_spells_id, npc_faction_id, mindmg, maxdmg, npcspecialattks, aggroradius, face, luclin_hairstyle, luclin_haircolor, luclin_eyecolor, luclin_eyecolor2, luclin_beardcolor, luclin_beard, d_meele_texture1, d_meele_texture2, runspeed, MR, CR, DR, FR, PR, see_invis, qglobal, see_invis_undead, AC, npc_aggro, spawn_limit, attack_speed, findable, STR, STA, DEX, AGI, _INT, WIS, CHA) VALUES (662257,'Disciple_Zhorluhx','',53,217,11,3,13500,2 ,1,0,8,40,40,521029,0,5003,119595,71,159,'DC',70,2 55,1,1,1,1,1,0,0,0,1.25,162,162,162,162,162,1,0,1, 1677,0,0,0,0,218,218,218,218,60,218,21;
|
(the key there being the new npc_faction_id being 119595).
The world will start up fine. But when I add this record in:
Quote:
INSERT INTO npc_faction (id, name, primaryfaction) VALUES (119595,'Disciple_Zhorluhx',93);
|
....the world won't boot up in that dynamic zones will try to start up, then fail. I get this on the world screen:
Quote:
[08.28. - 22:19:13] [WORLD__LAUNCH] Adding pending launcher 1
[08.28. - 22:19:13] [WORLD__LAUNCH] Launcher Identified itself as 'zones'. Loading zone list.
[08.28. - 22:19:13] [WORLD__LAUNCH] Removing pending launcher 1. Adding zones to active list.
[08.28. - 22:19:18] [WORLD__LAUNCH] zones: dynamic_01 reported state STARTED (1 starts)
[08.28. - 22:19:20] [WORLD__LAUNCH] zones: dynamic_01 reported state STOPPED (1 starts)
|
and the STARTED/STOPPED will repeat continuously. In looking at the eqemu_debug_zone log file, I get this:
Quote:
[08.28. - 22:08:08] [ZONE__INIT] Log settings loaded from ./log.ini
[08.28. - 22:08:08] [ZONE__INIT] Mapping Incoming Opcodes
[08.28. - 22:08:08] [ZONE__INIT] Loading Variables
[08.28. - 22:08:08] [ZONE__INIT] Loading zone names
[08.28. - 22:08:08] [ZONE__INIT] Loading items
[08.28. - 22:08:08] [ZONE__INIT] Loading npc faction lists
[08.28. - 22:08:08] [ZONE__INIT_ERR] Loading npcs faction lists FAILED!
|
Through trial and error, I've tied it to the "primaryfaction" entry in the npc_faction insert. I'm trying to tie this npc to that existing faction (93) through this table. facton_list.id 93 corresponds to "Emperor Ssraeshza"
Any thoughts?
__________________
"Like what you like, enjoy what you enjoy, and don't take crap from anybody."
|
|
|
|
08-29-2006, 03:47 PM
|
Hill Giant
|
|
Join Date: Sep 2004
Posts: 117
|
|
Figured it out. Contrary to what I thought, it was the fact that npc_faction.id is not allowed to go over 50000.
Is there a reason for that?
Anyone?
Anyone?
Beuhler?
=P
__________________
"Like what you like, enjoy what you enjoy, and don't take crap from anybody."
|
08-30-2006, 12:58 AM
|
AX Classic Developer
|
|
Join Date: May 2006
Location: filler
Posts: 2,049
|
|
I saw where the same thing happened to me when I used nine digit numbers in some of my tables, and somebody posted a reason for the somewhere in these forums - I can't find it though :( - will keep looking.
I think it might have been it was related to the number you used - did you try other higher numbers, like 60000?
|
08-30-2006, 01:46 AM
|
Demi-God
|
|
Join Date: Jul 2006
Posts: 1,552
|
|
I ran into a "ceiling" too when trying to build custom items over id 100,000. Totally guessing here, but I think all this stuff is loaded into shared memory at bootup. Limiting the highest # may just be a way to cut down on memory consumption? I mean, if I have the original 50k items, and somehow manage to make 50k more, I imagine the memory usage for items variables would skyrocket.
May just be limitations intended to keep things running smooth. Best thing you can do is look at the existing faction ranges and pick a range not currently in use, that IS currently below 50,000 (or whatever).
This is one reason I am opposed to > 6 digit (non "standard") IDs - not sure what problems will rise with this down the road.
|
08-30-2006, 03:39 AM
|
Hill Giant
|
|
Join Date: Sep 2004
Posts: 117
|
|
Thanks for the thoughts, all. It looks like both Cavedude and PEQ keep their id's for this table under 25,000, so I'm just:
- doing an (id +25000) to generate it, and
- if for some reason it goes over 50,000, just don't write that particular insert statement.
It looks like this is working. Soulshot and I are testing it on Darktides right now, but we ran the program against 4 zones and loaded them up, and it seems to be working. Basically, the program will read the "from" database record, checking the "to" database for the existance of that record, and generating the insert statment. Its currently creating the npc, spells, faction, spawn, loot and movement information insert statements. As long as things seem to be working over the next day or two, I'll post the program.
__________________
"Like what you like, enjoy what you enjoy, and don't take crap from anybody."
|
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:03 PM.
|
|
|
|
|
|
|
|
|
|
|
|
|