Log in

View Full Version : create a npc


warkid
05-06-2014, 06:25 AM
im wanting to know if its possible to create a NPC that gives rewards upon hails BUT its limited to on hail/reward per charater

Kingly_Krab
05-06-2014, 06:35 AM
You can use qglobals in order to do this, but you must make sure the NPC has its qglobals set to 1.

Trubles
05-06-2014, 09:03 AM
im wanting to know if its possible to create a NPC that gives rewards upon hails BUT its limited to on hail/reward per charater

Here is an example of qglobals being used to limit people from setting skills and wiping out any skill over 100.

sub EVENT_SAY
{
my $skill = quest::saylink("skills");
if($text=~/hail/i)
{
plugin::Whisper("Welcome to the tombs $name. You have access to a few commands to help you through your journey type #help to see them. Read the MOTD I can also give you [$skill] and spells (say links are broken, will fix in AM)");

}
if($text=~/skills/i && $qglobals{skills} == 0)
{
quest::setallskill(100);
quest::scribespells(65);
quest::traindisc(65);
quest::setglobal("skills",1,7,'f');
}
elsif($text=~/skills/i && $qglobals{skills}>= 1)
{
plugin::Whisper("You're trained");
}
}

warkid
05-06-2014, 09:26 AM
so i made my NPC in the zone gave it gear etc... all went fine but then i #npcspawn create and now i cant get into zone as it crashes

erro log vv

---------------------------------------------
[05.06. - 14:13:40] Starting Log: logs/crash_zone_0960.log
[05.06. - 14:13:40] EXCEPTION_BREAKPOINT
[05.06. - 14:13:40] SymInit: Symbol-SearchPath: '.;C:\EQ\EQEmuServer;C:\EQ\EQEmuServer;C:\WINDOWS; C:\WINDOWS\system32;SRV*C:\websymbols*http://msdl.microsoft.com/download/symbols;', symOptions: 530, UserName: 'Warbleeder'
[05.06. - 14:13:40] OS-Version: 5.1.2600 (Service Pack 3) 0x100-0x1
[05.06. - 14:13:41] C:\EQ\EQEmuServer\zone.exe:zone.exe (00400000), size: 29421568 (result: 0), SymType: '-unknown-', PDB: 'C:\EQ\EQEmuServer\zone.pdb'
[05.06. - 14:13:41] C:\WINDOWS\system32\ntdll.dll:ntdll.dll (7C900000), size: 716800 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\system32\kernel32.dll:kernel32.dll (7C800000), size: 1007616 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\system32\SHELL32.dll:SHELL32.dll (7C9C0000), size: 8482816 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 6.0.2900.5512
[05.06. - 14:13:41] C:\WINDOWS\system32\ADVAPI32.dll:ADVAPI32.dll (77DD0000), size: 634880 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\system32\RPCRT4.dll:RPCRT4.dll (77E70000), size: 598016 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\system32\Secur32.dll:Secur32.dll (77FE0000), size: 69632 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\system32\GDI32.dll:GDI32.dll (77F10000), size: 299008 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\system32\USER32.dll:USER32.dll (7E410000), size: 593920 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\system32\msvcrt.dll:msvcrt.dll (77C10000), size: 360448 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 7.0.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\system32\SHLWAPI.dll:SHLWAPI.dll (77F60000), size: 483328 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 6.0.2900.5512
[05.06. - 14:13:41] C:\Perl\bin\perl512.dll:perl512.dll (28000000), size: 1273856 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.12.3.1204
[05.06. - 14:13:41] C:\WINDOWS\system32\COMCTL32.dll:COMCTL32.dll (5D090000), size: 630784 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.82.2900.5512
[05.06. - 14:13:41] C:\EQ\EQEmuServer\lua51.dll:lua51.dll (10000000), size: 356352 (result: 0), SymType: '-exported-', PDB: ''
[05.06. - 14:13:41] C:\WINDOWS\system32\MSVCR110.dll:MSVCR110.dll (02010000), size: 876544 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 11.0.51106.1
[05.06. - 14:13:41] C:\WINDOWS\system32\WS2_32.dll:WS2_32.dll (71AB0000), size: 94208 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\system32\WS2HELP.dll:WS2HELP.dll (71AA0000), size: 32768 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\system32\VERSION.dll:VERSION.dll (77C00000), size: 32768 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.5512_x-ww_35d4ce83\comctl32.dll:comctl32.dll (773D0000), size: 1060864 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 6.0.2900.5512
[05.06. - 14:13:41] C:\WINDOWS\System32\mswsock.dll:mswsock.dll (71A50000), size: 258048 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\system32\DNSAPI.dll:DNSAPI.dll (76F20000), size: 159744 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\System32\winrnr.dll:winrnr.dll (76FB0000), size: 32768 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\system32\WLDAP32.dll:WLDAP32.dll (76F60000), size: 180224 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\system32\rasadhlp.dll:rasadhlp.dll (76FC0000), size: 24576 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:41] C:\WINDOWS\system32\hnetcfg.dll:hnetcfg.dll (662B0000), size: 360448 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:42] C:\WINDOWS\System32\wshtcpip.dll:wshtcpip.dll (71A90000), size: 32768 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:42] C:\Perl\lib\auto\Cwd\Cwd.dll:Cwd.dll (0B3A0000), size: 20480 (result: 0), SymType: '-exported-', PDB: ''
[05.06. - 14:13:42] C:\Perl\lib\auto\Filter\Util\Call\Call.dll:Call.dl l (0B3B0000), size: 20480 (result: 0), SymType: '-exported-', PDB: ''
[05.06. - 14:13:42] C:\Perl\lib\auto\IO\IO.dll:IO.dll (0B3C0000), size: 24576 (result: 0), SymType: '-exported-', PDB: ''
[05.06. - 14:13:42] C:\Perl\lib\auto\List\Util\Util.dll:Util.dll (0B7D0000), size: 28672 (result: 0), SymType: '-exported-', PDB: ''
[05.06. - 14:13:42] C:\WINDOWS\system32\rsvpsp.dll:rsvpsp.dll (73080000), size: 118784 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:42] C:\WINDOWS\system32\uxtheme.dll:uxtheme.dll (5AD70000), size: 229376 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 6.0.2900.5512
[05.06. - 14:13:42] C:\WINDOWS\system32\dbghelp.dll:dbghelp.dll (59A60000), size: 659456 (result: 0), SymType: '-exported-', PDB: '', fileVersion: 5.1.2600.5512
[05.06. - 14:13:42] f:\dd\vctools\crt_bld\self_x86\crt\src\strtol.c (94): strtoxl
[05.06. - 14:13:42] f:\dd\vctools\crt_bld\self_x86\crt\src\strtol.c (232): strtol
[05.06. - 14:13:42] f:\dd\vctools\crt_bld\self_x86\crt\src\atox.c (56): atol
[05.06. - 14:13:42] f:\dd\vctools\crt_bld\self_x86\crt\src\atox.c (100): atoi
[05.06. - 14:13:42] c:\eq\source\zone\zonedb.cpp (1289): ZoneDatabase::GetNPCType
[05.06. - 14:13:42] c:\eq\source\zone\spawn2.cpp (185): Spawn2::Process
[05.06. - 14:13:42] c:\eq\source\zone\zone.cpp (1271): Zone::Process
[05.06. - 14:13:42] c:\eq\source\zone\net.cpp (433): main
[05.06. - 14:13:42] f:\dd\vctools\crt_bld\self_x86\crt\src\crt0.c (278): __tmainCRTStartup
[05.06. - 14:13:42] f:\dd\vctools\crt_bld\self_x86\crt\src\crt0.c (189): mainCRTStartup
[05.06. - 14:13:42] ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 7C817067)
[05.06. - 14:13:42] 7C817067 (kernel32): (filename not available): RegisterWaitForInputIdle

Trubles
05-06-2014, 11:25 AM
Did you source in all the database updates that comply with your source revision?

warkid
05-06-2014, 11:38 AM
yep and all was working fine... untill.... i added a damn NPC to Tutorial....
i made the NPC fine no problems.... but when i set it to spawn with server ... i got problems and i can no longer use tutorial.... POK etc works fine

vsab
05-06-2014, 11:49 AM
In the npc_types table, check that the NPC's "Special_abilities" is not null (it can be empty though), and that the slow_mitigation is not null too.

warkid
05-06-2014, 12:07 PM
that worked thanks VSAB i put 0 in both and i also changed Qglobals to 1

Trubles
05-06-2014, 02:06 PM
which is why i asked if you had sourced in all the required stuff

slow_mitigation_fix.sql was added recently.

warkid
05-06-2014, 02:13 PM
ill take a look for that... i made quest script (or i think its fine) then i saved it as npcname.pl into tutorialb quest folder but the npc uses tutorial default quest... any idea?

Trubles
05-06-2014, 02:45 PM
Remove the old quest first, then make sure the extension is actually .pl in the tutorialb folder.

I'd use NPCID personally.

warkid
05-06-2014, 04:36 PM
how i find npcid? and it iS .PL i used.... and i cant remove old file as its currently using tutorial defult quest file so if i do remove it will stop all turtorial quest working (i all ready tried this :) )

Trubles
05-06-2014, 07:27 PM
To find the npcid of any npc you can do this multiple ways:

1. #npcstats with the npc targeted
2. SELECT 'id' FROM 'npc_types' WHERE name = 'npcname';
3. Any sort of editors, EoC, GeorgeS' tools..

You can PM me if you need help at any time.

You don't need to remove the default.pl from tutorialb.

You just need to name your .pl the npcid or the npc name:

Ex: npcid=999216
npcname=Test_Ring

If you don't include the _ in the name it will not work correctly.