PDA

View Full Version : Getting quest to reload


provocating
06-05-2009, 11:43 PM
I am a little fuzzy on the quest. Okay so you have an NPC, I am working with Arias in Tutorial B right now. So I make some changes to his PERL file, how do I get it to reload without reloading the server ? Or do I have to reload the server ?

How do the NPC's know which file to use ? Is it in the database somewhere ?

joligario
06-06-2009, 07:28 AM
The NPCs use the file that is associated with their name/npcid.

"#reloadquest" and "#repop all" are good to use when changing quest files and not having to reload server.

Shendare
06-06-2009, 12:00 PM
To expand on the information given...

In order to figure out what quests are available for a given NPC, the server looks in the ServerFolder\quests directory for a folder named for the ZoneNick. For Greater Faydark, it's looking for "quests\gfaydark", for Qeynos Hills, it's looking for "quests\qey2qrg", etc.

Inside the zone's folder, it looks for a .pl file named for the NPC's ID number in the npc_types table of the database (e.g., quests\gfaydark\54206.pl). If it doesn't find a file for the ID number, it looks by the NPC's name (e.g., quests\felwithea\Tacar_Tissleplay.pl).

Note that some NPC names are encoded to allow for multiple versions with the same name using different quest files. For example, if you look in quests\potactics, you'll see entries for Vallon_Zek.pl, #Vallon_Zek.pl, and #Vallon_Zek_.pl.

This means that there are three different versions of this NPC that can spawn at various times for various reasons, and each has its own distinct quest file associated with it.

Of course, the client trims off any non-alphabetic characters at the beginning and end of the name for displaying, so players will just see "Vallon Zek" as the name of all three versions and be none the wiser.

And #reloadquest, #reloadpl, and #reloadqst are the three aliases for the restart of the quest engine without having to reboot the server. You can pick whichever one you want. The #repop command isn't really necessary if you've only changed the quest files for the NPC.

Also, the server will execute any events found in quests\[ZoneNick]\default.pl that weren't in the NPC's own .pl file.

It will also execute any events found in ServerFolder\plugins\default.pl that weren't in the NPC's file or in the ZoneNick\default.pl file.

- Shendare

joligario
06-06-2009, 02:48 PM
The #repop command isn't really necessary if you've only changed the quest files for the NPC.

Unless, of course, you added anything to EVENT_SPAWN. Was just saying that it is a good command to use/know.

Shendare
06-06-2009, 02:49 PM
Good point!

I've heard of some people using #repop after every #reloadqst thinking it was always necessary is all, so I thought I'd clarify. :)

- Shendare

laxative
06-06-2009, 07:55 PM
Greets,

The post about the non alpha characters just solved a problem for me.

I've been trying to get the Bzzat's right in PoA for a while now

Thanks!