Quest & CustomNPC

Discussions on various DOL development features

Moderator: Support Team

Quest & CustomNPC

Postby JongJungBu » Thu Apr 08, 2004 2:52 am

Ok, here are some more scripts I did that I like even more than my Minstrel script. And took me a bit of work to get them running correctly. ugh. I did my best, after logging into the live servers, to emulate the way they are in the Live game. What I have here is a quest script and 3 Albion NPC scripts (Base class trainer, Sir Quait, and Guardsman near the camelot hills/salisbury plains bridge).

The quest script is basically two things. It handles methods for saving quest information into a database. And it handles the /quest command, which outputs your pending quests and steps as well as the completed quests. With the same look that you see in the Live server woohoo.

The other 3 scripts are for NPCs. The first thing they do is take care of the default interact method, so if you interact with them they'll give you their default NPC chit-chat like they do in Live. Which is just cosmetic but gives some life to the NPCs when you have nothing to do with them.

The second thing the NPC scripts do is handle the Camelot Hills variation of the Immediate Resolution quest. Which of course adds into the /quest command I created. There is one thing missing from this quest and thats the end where the dozen mobs come out from the hills and attack the guards. For those that remember, the quest is considered complete by this point. It's just a cosmetic thing...and when I can get that to work I'll add it in again. Heh heh. Note that since this is the Camelot Hills version of the quest, any base class trainers you receive this from should hopefully be in Cotswold or Prydwen Keep or you'll have a long way to go to meet Sir Quait.

Oh and a third thing to note. The BaseTrainer script is for all Base Class trainers in Albion (I hope eventually). It has a commented spot that could hopefully be replaced with a method call to bring up the Training Popup Window. If you are not of the right class, you just get the standard go elsewhere message already.

Instructions:
- Unzip and copy scripts to yer /scripts folder.
- Use Dataloggins DBv1.2 and edit the following NPCs
- Change one or more base class trainer's ClassType to DOL.GS.Scripts.BaseTrainer (such as Master Sorac the Rogue Trainer in Cotswold).
- Change Sir Quait's ClassType to DOL.GS.Scripts.SirQuait
- Change the guardsman* near the bridge ClassType to DOL.GS.Scripts.ResolutionGuardsman

* I found the Mob_ID for the 2 guardsman to be
08157584-ce4d-4cd3-a4b8-b82f1fbe397f
d1daf6a4-8a7f-42a4-a63c-b39f8c5294b7
And for the record, in the Live servers the Guardsman next to the bridge are actually named Veteran Guardsman. Cosmetic only. :)

Tell me what you think! I was thinking of placing a zone check into the Immediate Resolution quest to check for which version to run. Thusly still using only one script to cover all Base class trainers. Since everyone essentially runs the same early quests (if they run them at all). And do some additional quests, make the base trainer give you a practice weapon like Live servers, and so forth. Would that be of value to anyone?

JJB

EDIT: Download updated scripts further down...
Last edited by JongJungBu on Fri Apr 09, 2004 5:41 am, edited 1 time in total.
User avatar
JongJungBu
DOL Apprentice
 
Posts: 31
Joined: Sat Jul 19, 2003 6:08 am
ICQ: 192331800
Website: http://www.trisystech.com
Yahoo Messenger: JongJungBu

Postby Smallhorse » Thu Apr 08, 2004 5:48 am

Hay, you did really put a lot of work into this! Looks quite nice! I thing you did some very good work! We need more ppl. like you :)=
SmallHorse
Project Ex-Administrator with too little time to be of much use currently :)
Smallhorse
Inactive Staff Member
 
Posts: 2919
Joined: Sun Jun 22, 2003 5:54 pm
ICQ: 11718314

Postby JongJungBu » Thu Apr 08, 2004 5:57 am

Thanks, Smallhorse! :)
I logged some more from Live servers, after posting this, to get the various variations of this beginning albion quest. So tomorrow sometime I'm gonna put in the variations, which won't take any time at all. Just some cut and pastes.

The problem is checking the Zone, on whether one is in Camelot Hills, black mountains, or camp. forest... I thought I could use this.CurrentZone.Description but that did not prove successful. Hmm.

JJB
User avatar
JongJungBu
DOL Apprentice
 
Posts: 31
Joined: Sat Jul 19, 2003 6:08 am
ICQ: 192331800
Website: http://www.trisystech.com
Yahoo Messenger: JongJungBu

Postby Smallhorse » Thu Apr 08, 2004 6:54 am

you can use player/this.CurrentZone.ID which returns a byte value and is between 0 and 255 ... you can look into the "zones.dat" file that you can find in your DAOC-Client directory somewhere (I think in the root of the /zones dir or something) Inside this file you can search for eg. "Black" and you will come up with something like
[zone002] ;Briton Home Region
enabled=1
type=0
region=1
name=Black Mtns. South
region_offset_x=59
region_offset_y=53
width=8
height=8
entry_music=2
It is easy to see that here "Black Mtns. South" has the ID = 2 so it is easy for you to check :)

Or if you want it even more comfortable, look into your DOL GameServer directory after you have started the server the first time and you will find a file called "zones.ini" ... inside this file you can find eg.
[Black Mtns. South]
width = 8
zoneID = 2
offsetyx = 59
height = 8
offsety = 53
regionID = 1
for the same result :)

Enjoy!
SmallHorse
SmallHorse
Project Ex-Administrator with too little time to be of much use currently :)
Smallhorse
Inactive Staff Member
 
Posts: 2919
Joined: Sun Jun 22, 2003 5:54 pm
ICQ: 11718314

Postby JongJungBu » Thu Apr 08, 2004 3:30 pm

Aha! That will do great. Thanks, I should have an update tonite then sometime. It should cover all non-expansion base classes everywhere (I logged the Live variations in text for each class for no reason than to be 100% accurate). And I'll put in the variations for the zoneID. That'll take care of all three Immediate Resolution quests regardless of your class or location. Whew.

I'll consider it complete then at that point...gonna put off the incoming dozen mob rush till a later date. Till at least the guards aggro nearby mobs. Perhaps I should put aggro in the guardsman script, but they'd need NPC equipment. Maybe i'll login to Live and see what models they are using for their equipment. Don't think they actually need be based off a real player item. Just have high stats so the mobs are no match.

JJB
User avatar
JongJungBu
DOL Apprentice
 
Posts: 31
Joined: Sat Jul 19, 2003 6:08 am
ICQ: 192331800
Website: http://www.trisystech.com
Yahoo Messenger: JongJungBu

Postby Smallhorse » Thu Apr 08, 2004 6:32 pm

No, currently NPC's don't need real items. You just set what model they wear on what location and save the whole thing as item-template (or set it directly inside the gameevent) ... but it has no effect on stats or anything. Currently only the level of the guards would have an effect on the outcome of a fight :)
SmallHorse
Project Ex-Administrator with too little time to be of much use currently :)
Smallhorse
Inactive Staff Member
 
Posts: 2919
Joined: Sun Jun 22, 2003 5:54 pm
ICQ: 11718314

Postby JongJungBu » Thu Apr 08, 2004 6:38 pm

Aah. Well that makes it easy then. :)
After I finish the variations of the quests I'll see if I can throw in an npc equip in the scripts to match up their NPC equipment "look" so they aren't all "naked". Heheh.

I did check out a few things on the Live server in my lunch break and whoops. I forgot about the 4th variation of Immediate Resolution in Adribard's Retreat. Do'h! But I got it all down pat, and updated my base trainer script to reflect not only class but Zone. Also all 4 2nd step NPCs done. Only missing the 3rd and final step NPCs that complete the quest except for the one already done.


I just noticed I've been deriving these NPC scripts from GameMob class. Should I be using GameNPC instead?


JJB
Last edited by JongJungBu on Thu Apr 08, 2004 6:42 pm, edited 1 time in total.
User avatar
JongJungBu
DOL Apprentice
 
Posts: 31
Joined: Sat Jul 19, 2003 6:08 am
ICQ: 192331800
Website: http://www.trisystech.com
Yahoo Messenger: JongJungBu

Postby JongJungBu » Fri Apr 09, 2004 2:39 am

I was able to login and manually add the proper equipment to NPCs and save it to a template. But as for putting it into the actual NPC scripts I had already created, I failed miserably. Couldn't get any results. :(

JJB
User avatar
JongJungBu
DOL Apprentice
 
Posts: 31
Joined: Sat Jul 19, 2003 6:08 am
ICQ: 192331800
Website: http://www.trisystech.com
Yahoo Messenger: JongJungBu

Postby JongJungBu » Fri Apr 09, 2004 3:24 am

Nevermind. When I messed with the /mob command I reset the ClassType of the NPCs to DOL.GS.GameMob instead of to my scripts. :-P

JJB
User avatar
JongJungBu
DOL Apprentice
 
Posts: 31
Joined: Sat Jul 19, 2003 6:08 am
ICQ: 192331800
Website: http://www.trisystech.com
Yahoo Messenger: JongJungBu

Postby JongJungBu » Fri Apr 09, 2004 5:39 am

Updated Apr 8 2004
Lots of minor things, but they add up into one big update. The /quest script didn't really undergo any changes. It's still working great for me.

- Base class trainers now check for class AND zone to provide variations in both dialogue and the Immediate Resolution quest. Note there are 4 variations of this quest in place now (Adribards/Camelot/Campacorentin/BlackMtns) but the ones received from Ludlow/Humberton (BlackMtns) must visit the guardsman in Camelot to complete. I did not see any guards at the bridge north of Humberton in Dataloggin's DBv1.2, though Steward Willie will tell you to go that way. For now, tough luck. Heh.

- Base class trainers can give you the standard DAoC starting equipment (weapon and possibly shield if applicable) according to your class. This way you can get legit gear for your new characters without being GM.

- Couple of NPC's are equipped now by the scripts (A guardsman and Sir Quait). Can't seem to make multiple NPCs using the same script to equip more than one of the persons. But at least some folks look like they should now. I plan on continuing this habit with every NPC I create a script for (If I do). Easier to go along slowly.

- More NPC scripts created due to their need in the Immediate Resolution variations. They don't all say the same thing unfortunately ;). Gotta give em some equipment to em still. See the list below.

Instructions:
- Unzip to folder: /scripts
- Use Dataloggins DBv1.2 and edit the following NPCs
- Change one or more base class trainer's ClassType to DOL.GS.Scripts.BaseTrainer (such as Master Sorac the Rogue Trainer in Cotswold).
- Change Sir Quait's ClassType to DOL.GS.Scripts.SirQuait
- Change Guardian Aron's ClassType to DOL.GS.Scripts.GuardianAron
- Change Olorustos's ClassType to DOL.GS.Scripts.Olorustos
- Change Sir Edmun's ClassType to DOL.GS.Scripts.SirEdmun
- Change Sister Endri's ClassType to DOL.GS.Scripts.SisterEndri
- Change Steward Willie's ClassType to DOL.GS.Scripts.StewardWillie
- Change the guardsman* near the bridge ClassType to DOL.GS.Scripts.ResolutionGuardsman

* I found the Mob_ID for the 2 guardsman to be
08157584-ce4d-4cd3-a4b8-b82f1fbe397f
d1daf6a4-8a7f-42a4-a63c-b39f8c5294b7
In the Live servers the Guardsman next to the bridge are actually named Veteran Guardsman. In DBv1.2 they are just called Guardsman.

Todo:
- Fix the multiple NPCs using same script to be equipped with gear also. Not sure what to do there aside from giving them each a separate script. Not as fun for non-named NPCs like guards since they're hard to find in DB.
- I've logged some Town Criers in various locations. Since they deal mostly with dialogue only and very few quests, I can give them some life in DOL in a matter of minutes. At least letting them give directions as they do in Live.
- Do another newbie quest..........


JJB

NOTE: Though the /quest script will work fine for any realm, the NPCs and Quests I'm doing are meant for Albion only. Sorry hibbie/middie lovers but there's just too much content for one person. :)
Attachments
quest&customnpcapr8.zip
(18.59 KiB) Downloaded 142 times
Last edited by JongJungBu on Fri Apr 09, 2004 5:45 pm, edited 1 time in total.
User avatar
JongJungBu
DOL Apprentice
 
Posts: 31
Joined: Sat Jul 19, 2003 6:08 am
ICQ: 192331800
Website: http://www.trisystech.com
Yahoo Messenger: JongJungBu


Return to “%s” DOL Development Discussion

Who is online

Users browsing this forum: No registered users and 1 guest