Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Database/World Building

Development::Database/World Building World Building forum, dedicated to the EQEmu MySQL Database. Post partial/complete databases for spawns, items, etc.

Reply
 
Thread Tools Display Modes
  #1  
Old 01-24-2008, 03:15 PM
Secrets's Avatar
Secrets
Demi-God
 
Join Date: May 2007
Location: b
Posts: 1,449
Default [Tutorial] Making a boat that paths in water.

So, I know some people like the idea of boats... but have you ever wanted to make one, with little to know SQL knowledge?

Well, you're in luck.

Today, you get to learn how!

First off, you're going to need a few things.

- MySQL access to the database you're working on (Not required, but helps!)
- GM access to the server you are working on, mainly the commands #npcspawn, #grid, #wp, and #npcedit.
- Experience with how XYZ locations work. (-x = west, +x = east, etc.)

Once you have all of those, you can begin to make your boat.

First off, your boat is not that much of a boat, unless you have a boat to begin with! Begin by #spawning a blank NPC in-game.

Code:
#spawn a_boat
Next, add the NPC in-game to the spawn2, spawngroup, and spawntables. Luckily, there is a command already for you to do so.

Code:
#npcspawn create
(Note, this is not recommended to do, and is only for beginning worldbuilders. The reason being is that you have to clean up your spawngroup, spawnentry, and spawn2 to be left with an NPC_type, which can be a hassle if you do everything by hand! When you do get to that point, you can #npcspawn remove and make the spawngroup, spawnentry, and spawn2 by hand. Again, for the sake of this guide, i'm just putting it out there, don't do it if you're a beginner.)

Okay, next thing you do is zone out from the zone you wish to add the boat in. The quickest way, in my opinion, is to zone to the 'EverQuest Tutorial' zone, or 'The Nexus' zone.

Code:
#zone tutorial
Now that you have that done, zone back into the zone you were just in. If you don't know the shortname, the shortname list can be found here.

Got that? When you're in the zone, you can begin to change the special flags of your untargetable NPC. By default, rain spells should hit your NPC, so you do not want this to happen. You should use MySQL to edit your NPC. If you don't have MySQL access, you can still set the flags for the npc with the command, #help npcspecial. Additionally, you will need the npc_types ID for your NPC. You can use #npcstats on your NPC to find this out. It is listed near the top of the command.

Go into your favorite MySQL query program and type this in:
Code:
UPDATE `npc_types` SET npcspecialattks='EFRSTQUMCNIDABf' WHERE `id`='yournpctypesid'
Replace 'yournpctypesid' (With or without that ' mark.) with your ID that you found in #npcstats.

Got that? Good! Now back to in-game. A good shortcut for this is the windows key combination alt tab, get used to it!

Next, you need to set your NPC's race. The race for the smaller boats is 140.

Code:
#npcedit race 140
After that's done, repop the zone. The next thing you want to do is add a grid for your mob.

To quote the wiki,

Quote:
posted by devn00b

#wpinfo - Target an NPC and use this to retrieve WP information assigned to it.
#gassign grid_num - Target an NPC and use this to assign it's spawn2 point to grid grid_num.
#grid add/delete grid_num wandertype pausetype - Adds grid grid_num with the wandertype/pausetype, or deletes grid number grid_num.

Wandertype
0: Circular. NPC will cycle waypoints in order, then head back to the first waypoint.
1: Random 10. NPC will pick a random of the nearest 10 waypoints and go to it.
2: Random. NPCwill pick a random waypoint in the grid and go to it.
3: Patrol. NPC will walk the waypoints to the end, then turn and backtrack.

Pausetype
0: Random half. NPC pauses for half of it's pause time + random of half it's pause time.
1: Full. NPC pauses for full pause time.
2: Random. NPC pauses for random of it's pause time.


#wp add/delete grid_num pause wp_num - Adds waypoint number wp_num to grid grid_num with a pause of pause on the location you're standing at, or deletes waypoint number wp_num in grid number grid_num (just leave pause at 0)

To setup an NPC to a grid, simply #gassign an NPC spawned by a certain spawn2 point, and all NPC's spawned by that point will adhere to the selected grid. An NPC assigned to a grid will simply start wandering it after spawning.
Once that's absorbed in your head, apply that to your mob.

First, find the max grid in the zone.

Code:
#grid max
Next, add one to the max grid in the zone, and add the other parameters to the command. For this example, my grid max will be 3.

Code:
#grid add 4 0 1
Typically, you do not want a boat to pause, so we put it as full pause time.

To make sure your boat doesn't pause at all, just set pause as 0 in waypoints. Add one to the waypoint number each time you make another one.
Code:
#wp add 4 0 1
#wp add 4 0 2
#wp add 4 0 3
etc
etc
When you are done making your grid for your NPC, you may want to move them into the water so they arn't crazy on zone bootup. You can achieve this by spawnfixing the NPC.

Code:
target mob, run to water
#spawnfix
When the mob is spawnfixed, give the zone a #repop, and assign the grid to the newly moved NPC.

Code:
#repop
#gassign 4
Lastly, do you want your players to be able to target your NPC? This is up to you, but if you don't want them to target your NPC, simply type while targeting your mob,

Code:
 #npcedit bodytype 11
And then you're done. #repop the zone, and you should see your mob floating away. Should a waypoint be off, simply delete it with the appropriate command, and re-add it.

That's all there is to it, congrats, you made your first boat.

Make sure it stays in water, by the way. Sometimes zone gets picky about stuff like that.

Any questions, comments, you can post them in this thread. Thanks!

Last edited by Secrets; 01-24-2008 at 11:20 PM..
Reply With Quote
  #2  
Old 01-26-2008, 05:21 AM
John Adams
Demi-God
 
Join Date: Jul 2006
Posts: 1,552
Default

Nice work, Secrets. Thank you.
Reply With Quote
  #3  
Old 02-10-2008, 05:16 AM
Cripp's Avatar
Cripp
Discordant
 
Join Date: Oct 2003
Location: The Shire
Posts: 474
Default

if anyone wants to see how to script the boats so you can trigger them and make them zone properly.. http://nug.cvs.sourceforge.net/nug/n...s/PERL/Quests/

check out the nro and erudsxing folders .. ill post some docu later on how it works.
__________________
Nug Blazers - ServerOP / founder
^^comming... later!

www.nugblazers.com
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 07:07 PM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3