Experimental Pooling Branch

Just a bit of an update.

http://nerfed.net/WoWScrnShot_030815_202640.jpg

Currently working:

  • Load config

  • Load databases

  • Check chance is total 100 per pool, or all 0.

  • Spawns pool according to chance and using spawn points defined (e.g. random mob, random spawn point).

  • Dynamic spawn (see the ID in the screenshot)

  • Tracks used, not used spawnpoints, functions to locate spawnpoint or creature info per dynamic guid

To do:

  • Lots, including

  • Handle despawn (currently respawn happens as per standard TC)

  • Handle respawn with new ID, ignoring despawn state

  • Recycle guids (to stop dynamic runaway)

  • Implement the looting timeouts as per design

  • Utilise the map based guid code from Shauron

  • Port to 6.x (once complete).

But, this is just a “progress” update for this weekend.

Done:

  • Handle despawn

  • Handle respawn with new ID

I also have a video showing it in action:

EDIT: Updated video to newer feature set.

And last one for this evening:

  • Handle despawn (currently respawn happens as per standard TC)

  • Handle respawn with new ID, ignoring despawn state

  • Handle expedited respawn when falling below minimum count

  • Implement the looting timeouts as per design

The final item to do for 3.3.5 I think is recycling guids (and clean up the code a lot).

Anyone wanting to test. https://github.com/pete318/TrinityCore/tree/pooling_s2

I wouldn’t mind some feedback.

If people are planning on testing the new version of this, the following SQL might be useful:

You add up to 10 creature guids (note NOT entries). It will find all creatures in a 600 yard radius with the same entry and automatically add the creature entry, spawn points and template for it. Of course settings will be default so will likely need editing. But, it speeds up the process.

http://pastebin.com/jecpcLLC

It’s not perfect, have a backup of your database before you start. etc.

For anyone interested in testing this. I’ve spawned all of Deathknell in this fashion (no static guids at all for creatures)

http://pastebin.com/ZrZDf4TZ

Of course this will delete existing creatures. So, make a backup/use a new world DB for this. I didn’t need to say that though, right?

pete318, I looked at your sql and would propose minor changes to your tables to do what I invisioned. waypoint_data can be reused but a scripting table would be needed:

[CODE]-- #### Felwood Spawning ####

– Deadwood Village Spawning template
Set @POOLID := 361000;
DELETE FROM creature_spawn_template WHERE entry = @POOLID;
INSERT INTO creature_spawn_template (poolId, mapId, zoneId, areaId, phaseId, min_limit, max_limit, respawn, description) VALUES
(@POOLID,1,361,1761,169,10,34,300,‘Deadwood Village Spawning’);

– Deadwood Village Spawning pool
DELETE FROM creature_spawn_pool WHERE poolId=@POOLID;
INSERT INTO creature_spawn_pool (poolId, spawnpoint, creatureId1, creatureId2, creatureId3, script, position_x, position_y, position_z, orientation, description) VALUES
– No movement
(@POOLID,0,7153,7154,7155,0,3597.07,-1026.9,226.09,3.05,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,1,7153,7154,7155,0,3597.07,-1026.9,226.09,3.05,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,2,7153,7154,7155,0,3622.21,-1130.46,210.79,5.25,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,3,7153,7154,7155,0,3737.23,-1149.34,209.85,3.94,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,4,7153,7154,7155,0,3743.92,-1169.23,209.84,2.46,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,5,7153,7154,7155,0,3618.7,-1188.61,213.86,1.12,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,6,7153,7154,7155,0,3704.07,-1135.35,207.95,5.62,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,7,7153,7154,7155,0,3752.59,-993.49,241.83,3.58,‘Deadwood Gardener, Pathfinder, Warrior’),
– Random movement
(@POOLID,8,7153,7154,7155,1,3533.1,-1108.63,225.34,5.6 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,9,7153,7154,7155,1,3534.61,-1150.68,225.42,5.1 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,10,7153,7154,7155,1,3543.74,-1128.56,222.26,0.27 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,11,7153,7154,7155,1,3609.81,-1164.02,214.18,3.63 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,12,7153,7154,7155,1,3611.9,-1042.81,220.58,1.72 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,13,7153,7154,7155,1,3619.8,-1209.82,217.42,2.36 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,14,7153,7154,7155,1,3636.09,-1168.11,210.07,0.44 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,15,7153,7154,7155,1,3649.05,-1138.72,209.13,3.68 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,16,7153,7154,7155,1,3649.92,-1179.41,211.8,6.28 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,17,7153,7154,7155,1,3653.85,-1028.21,221.65,0.52 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,18,7153,7154,7155,1,3673.6,-1157.89,207.91,2.41 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,19,7153,7154,7155,1,3712.1,-1198.12,207.7,2.06 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,20,7153,7154,7155,1,3716.14,-1015.36,228.82,5.97 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,21,7153,7154,7155,1,3721.86,-1062.5,221.8,3.14 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,22,7153,7154,7155,1,3727.77,-1103.57,213.43,5.04 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,23,7153,7154,7155,1,3773.95,-1196.66,217.44,1.04 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,24,7153,7154,7155,1,3811.52,-1148.61,237.25,6.26 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,25,7153,7154,7155,1,3566.68,-1148.24,220.05,0.65,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,26,7153,7154,7155,1,3580.56,-1118.58,219.95,4.01,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,27,7153,7154,7155,1,3583.93,-1076.81,221.25,4.66,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,28,7153,7154,7155,1,3590.91,-1169.25,219.69,3.02,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,29,7153,7154,7155,1,3679.75,-1019.22,224.18,3.54,‘Deadwood Gardener, Pathfinder, Warrior’),
– Pathed movement
(@POOLID,30,7153,7154,7155,2,3577.37,-1073.75,221.76,3.99,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,31,7153,7154,7155,3,3651.72,-1166.22,209,6.22,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,32,7153,7154,7155,4,3719.67,-1133.48,209.19,4.15,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,33,7153,7154,7155,5,3709.65,-1156.61,207.9,4.72 ,‘Deadwood Gardener, Pathfinder, Warrior’);

– Scripts for creature_spawn_template 361000 “Yet to work out”

– Script 1 do random movement
– Script 2 load path 361001000 repeating
– Script 3 load path 361001001 repeating
– Script 4 load path 361001002 repeating
– Script 5 load path 361001003 repeating

– Paths for creature_spawn_template 361000
Set @PATH := 361001000;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3575.04,-1076.384,221.8051,0,0,0,0,100,0),
(@PATH,2,3567.622,-1098.693,221.5181,0,0,0,0,100,0),
(@PATH,3,3562.087,-1118.363,221.1803,0,0,0,0,100,0),
(@PATH,4,3565.696,-1132.111,221.2504,0,0,0,0,100,0),
(@PATH,5,3576.388,-1143.33,219.6638,0,0,0,0,100,0),
(@PATH,6,3594.952,-1153.905,219.6672,0,0,0,0,100,0),
(@PATH,7,3622.036,-1154.701,211.3212,0,0,0,0,100,0),
(@PATH,8,3647.657,-1169.655,209.7255,0,0,0,0,100,0),
(@PATH,9,3661.205,-1171.2,209.3326,0,0,0,0,100,0),
(@PATH,10,3678.722,-1167.328,208.1529,0,0,0,0,100,0),
(@PATH,11,3702.719,-1169.509,207.4022,0,0,0,0,100,0),
(@PATH,12,3714.411,-1159.28,208.0238,0,0,0,0,100,0),
(@PATH,13,3723.102,-1142.47,209.1148,0,0,0,0,100,0),
(@PATH,14,3731.659,-1124.576,210.9985,0,0,0,0,100,0),
(@PATH,15,3739.66,-1110.396,214.1177,0,0,0,0,100,0),
(@PATH,16,3746.909,-1099.605,217.5009,0,0,0,0,100,0),
(@PATH,17,3744.177,-1084.458,219.0947,0,0,0,0,100,0),
(@PATH,18,3746.693,-1058.91,223.4796,0,0,0,0,100,0),
(@PATH,19,3743.289,-1041.939,225.8803,0,0,0,0,100,0),
(@PATH,20,3725.456,-1022.281,228.6066,0,0,0,0,100,0),
(@PATH,21,3716.919,-1012.96,229.4382,0,0,0,0,100,0),
(@PATH,22,3704.023,-1007.8,228.5495,0,0,0,0,100,0),
(@PATH,23,3690.01,-1010.55,224.4712,0,0,0,0,100,0),
(@PATH,24,3676.192,-1015.828,224.1748,0,0,0,0,100,0),
(@PATH,25,3655.77,-1020.512,222.1121,0,0,0,0,100,0),
(@PATH,26,3640.44,-1027.33,222.6451,0,0,0,0,100,0),
(@PATH,27,3626.348,-1031.823,221.8228,0,0,0,0,100,0),
(@PATH,28,3612.275,-1040.839,221.0037,0,0,0,0,100,0),
(@PATH,29,3599.829,-1051.741,219.7981,0,0,0,0,100,0),
(@PATH,30,3587.512,-1062.276,220.4841,0,0,0,0,100,0);

Set @PATH := 361001001;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3651.716,-1166.215,208.9989,0,0,0,0,100,0),
(@PATH,2,3641.558,-1165.332,209.4411,0,0,0,0,100,0),
(@PATH,3,3633.445,-1167.879,210.3903,0,0,0,0,100,0),
(@PATH,4,3627.21,-1177.31,211.7565,0,0,0,0,100,0),
(@PATH,5,3631.898,-1170.092,210.6403,0,0,0,0,100,0),
(@PATH,6,3641.504,-1165.535,209.4476,0,0,0,0,100,0);

Set @PATH := 361001002;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3697.57,-1151.694,207.032,0,0,0,0,100,0),
(@PATH,2,3676.109,-1155.196,208.0412,0,0,0,0,100,0),
(@PATH,3,3659.861,-1154.675,208.9906,0,0,0,0,100,0),
(@PATH,4,3644.097,-1148.313,209.9757,0,0,0,0,100,0),
(@PATH,5,3627.295,-1150.123,211.3212,0,0,0,0,100,0),
(@PATH,6,3606.05,-1143.36,213.6902,0,0,0,0,100,0),
(@PATH,7,3595.56,-1131.1,217.1226,0,0,0,0,100,0),
(@PATH,8,3587.919,-1119.175,218.7625,0,0,0,0,100,0),
(@PATH,9,3586.05,-1105.474,220.105,0,0,0,0,100,0),
(@PATH,10,3588.586,-1096.266,220.4756,0,0,0,0,100,0),
(@PATH,11,3590.767,-1085.894,221.7661,0,0,0,0,100,0),
(@PATH,12,3598.574,-1075.09,219.8293,0,0,0,0,100,0),
(@PATH,13,3608.946,-1062.424,219.4926,0,0,0,0,100,0),
(@PATH,14,3615.667,-1054.927,219.1191,0,0,0,0,100,0),
(@PATH,15,3629.311,-1046.101,220.8212,0,0,0,0,100,0),
(@PATH,16,3645.503,-1041.352,221.3114,0,0,0,0,100,0),
(@PATH,17,3657.924,-1036.394,221.1315,0,0,0,0,100,0),
(@PATH,18,3670.764,-1029.754,222.6582,0,0,0,0,100,0),
(@PATH,19,3691.562,-1026.028,223.2998,0,0,0,0,100,0),
(@PATH,20,3705.705,-1031.286,223.8864,0,0,0,0,100,0),
(@PATH,21,3717.623,-1051.01,222.7746,0,0,0,0,100,0),
(@PATH,22,3726.91,-1063.109,221.2639,0,0,0,0,100,0),
(@PATH,23,3735.42,-1079.583,218.7634,0,0,0,0,100,0),
(@PATH,24,3730.652,-1090.352,216.965,0,0,0,0,100,0),
(@PATH,25,3723.369,-1104.703,213.0214,0,0,0,0,100,0),
(@PATH,26,3722.022,-1118.559,210.1962,0,0,0,0,100,0),
(@PATH,27,3720.389,-1132.356,209.2753,0,0,0,0,100,0),
(@PATH,28,3712.491,-1144.754,208.3352,0,0,0,0,100,0);

Set @PATH := 361001003;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3709.52,-1140.89,207.9481,0,0,0,0,100,0),
(@PATH,2,3709.652,-1156.609,207.8988,0,0,0,0,100,0);
[/CODE]

In terms of doing what you wanted, you could already make this happen. Non movement/movement. I did this in Deathknell with the scarlets:

[ol][li][COLOR=rgb(153,0,153)]INSERT [COLOR=rgb(153,0,153)]INTO [COLOR=rgb(0,128,0)]pool_template [COLOR=rgb(153,0,153)]VALUES[/li][li][COLOR=rgb(255,0,255)]([COLOR=rgb(0,128,128)]100007[COLOR=rgb(0,0,51)],[COLOR=rgb(0,128,128)]3[COLOR=rgb(0,0,51)],[COLOR=rgb(0,128,128)]7[COLOR=rgb(0,0,51)],[COLOR=rgb(0,128,0)]‘Scarlet convert/initiates (statics) - 7’[COLOR=rgb(255,0,255)])[COLOR=rgb(0,0,51)],[/li][li][COLOR=rgb(255,0,255)]([COLOR=rgb(0,128,128)]100003[COLOR=rgb(0,0,51)],[COLOR=rgb(0,128,128)]8[COLOR=rgb(0,0,51)],[COLOR=rgb(0,128,128)]12[COLOR=rgb(0,0,51)],[COLOR=rgb(0,128,0)]‘Scarlet convert/initiates (roaming) - 26’[COLOR=rgb(255,0,255)])[/li][/ol]
[ol][li][COLOR=rgb(153,0,153)]INSERT [COLOR=rgb(153,0,153)]INTO [COLOR=rgb(0,128,0)]pool_creature[COLOR=rgb(0,128,128)]_info [COLOR=rgb(153,0,153)]VALUES[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[/li][li][COLOR=rgb(153,0,153)]INSERT [COLOR=rgb(153,0,153)]INTO [COLOR=rgb(0,128,0)]pool_spawns [COLOR=rgb(153,0,153)]VALUES[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li][COLOR=rgb(255,0,255)]([COLOR=rgb(0,128,128)]100003[COLOR=rgb(0,0,51)],[COLOR=rgb(0,128,128)]33[COLOR=rgb(0,0,51)],[COLOR=rgb(0,128,128)]0[COLOR=rgb(0,0,51)],[COLOR=rgb(0,128,128)]0[COLOR=rgb(0,0,51)],[COLOR=rgb(0,128,128)]0[COLOR=rgb(0,0,51)],[COLOR=rgb(0,128,128)]1745.93[COLOR=rgb(0,0,51)],[COLOR=rgb(0,128,128)]1385.38[COLOR=rgb(0,0,51)],[COLOR=rgb(0,128,128)]98.6645[COLOR=rgb(0,0,51)],[COLOR=rgb(0,128,128)]0.979422[/li][/ol]

[COLOR=rgb(0,128,128)]So, you just make a separate pool. That way there’s no 3 creature type limit and you can also add a spawn chance. How that is used is in the zombies/rattlecages:

[ol][li][COLOR=rgb(153,0,153)]INSERT [COLOR=rgb(153,0,153)]INTO [COLOR=rgb(0,128,0)]pool_creature[COLOR=rgb(0,128,128)]_info [COLOR=rgb(153,0,153)]VALUES[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][li]COLOR=rgb(255,0,255)[COLOR=rgb(0,0,51)],[/li][/ol]

In this case you see that the zombie types both have a 40% chance to appear, and the rattlecage 20% but they share all spawn points. What might make sense is to add comment lines to creature info and spawns points tables. So someone glancing can see what creatures are expected at a given spawn point, and what the info in the creature info table is as a summary. As I said, at the moment I have a tool that semi-automates the conversion of a series of creatures/spawns into a pooled spawn setup. That’s in SQL though so actually adds the lines. An external tool could be made to generate the SQL script itself and not action it.

So with this method it’s all still possible. As you mentioned in irc though, I think the waypoint could be moved to spawn table and that probably makes sense. Or paths based on pool IDs too. That’s also possible.

With regard to scripting. How I think it can work is by and large using entry, and never guid. Where something specific is needed, then a single spawn can be made outside of pooling and have a guid, OR we can make it possible to test in SAI based on pool ID, spawn point or other attributes within the script itself. I think there’s solutions available at any rate.

From my observations over the years it is safe to say that the max number of different entries that will spawn at a point, without special scripting, is 3. This is also true for ore. I just think it would be simpler to have the ability to have all three in the same table for simplicity. We could look at pool_creature_info for loading paths and random movement for creatures that need it. it could act like creature_addon?

I simplified pool_creature_spawning_info for this example. How is this?

[CODE]-- #### Felwood Spawning ####

– Deadwood Village Spawning
Set @POOLID := 361000;
DELETE FROM pool_creature_spawning_template WHERE poolId = @POOLID;
DELETE FROM pool_creature_spawning_points WHERE poolId= @POOLID;
DELETE FROM pool_creature_spawning_info WHERE poolId= @POOLID;

– Deadwood Village Spawning template
INSERT INTO pool_creature_spawning_template (poolId, mapId, zoneId, areaId, phaseId, minLimit, maxLimit, corpsetimesecsloot, corpsetimesecsnoloot, description) VALUES
(@POOLID,1,361,1761,169,10,34,180,0,‘Deadwood Village Spawning’);

– Deadwood Village Spawning pool
INSERT INTO pool_creature_spawning_points (poolId, spawnPoint, creatureId1, creatureId2, creatureId3, script, position_x, position_y, position_z, orientation, description) VALUES
(@POOLID,0,7153,7154,7155,0,3597.07,-1026.9,226.09,3.05,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,1,7153,7154,7155,0,3597.07,-1026.9,226.09,3.05,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,2,7153,7154,7155,0,3622.21,-1130.46,210.79,5.25,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,3,7153,7154,7155,0,3737.23,-1149.34,209.85,3.94,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,4,7153,7154,7155,0,3743.92,-1169.23,209.84,2.46,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,5,7153,7154,7155,0,3618.7,-1188.61,213.86,1.12,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,6,7153,7154,7155,0,3704.07,-1135.35,207.95,5.62,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,7,7153,7154,7155,0,3752.59,-993.49,241.83,3.58,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,8,7153,7154,7155,1,3533.1,-1108.63,225.34,5.6 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,9,7153,7154,7155,1,3534.61,-1150.68,225.42,5.1 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,10,7153,7154,7155,1,3543.74,-1128.56,222.26,0.27 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,11,7153,7154,7155,1,3609.81,-1164.02,214.18,3.63 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,12,7153,7154,7155,1,3611.9,-1042.81,220.58,1.72 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,13,7153,7154,7155,1,3619.8,-1209.82,217.42,2.36 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,14,7153,7154,7155,1,3636.09,-1168.11,210.07,0.44 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,15,7153,7154,7155,1,3649.05,-1138.72,209.13,3.68 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,16,7153,7154,7155,1,3649.92,-1179.41,211.8,6.28 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,17,7153,7154,7155,1,3653.85,-1028.21,221.65,0.52 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,18,7153,7154,7155,1,3673.6,-1157.89,207.91,2.41 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,19,7153,7154,7155,1,3712.1,-1198.12,207.7,2.06 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,20,7153,7154,7155,1,3716.14,-1015.36,228.82,5.97 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,21,7153,7154,7155,1,3721.86,-1062.5,221.8,3.14 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,22,7153,7154,7155,1,3727.77,-1103.57,213.43,5.04 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,23,7153,7154,7155,1,3773.95,-1196.66,217.44,1.04 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,24,7153,7154,7155,1,3811.52,-1148.61,237.25,6.26 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,25,7153,7154,7155,1,3566.68,-1148.24,220.05,0.65,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,26,7153,7154,7155,1,3580.56,-1118.58,219.95,4.01,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,27,7153,7154,7155,1,3583.93,-1076.81,221.25,4.66,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,28,7153,7154,7155,1,3590.91,-1169.25,219.69,3.02,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,29,7153,7154,7155,1,3679.75,-1019.22,224.18,3.54,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,30,7153,7154,7155,2,3577.37,-1073.75,221.76,3.99,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,31,7153,7154,7155,3,3651.72,-1166.22,209,6.22,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,32,7153,7154,7155,4,3719.67,-1133.48,209.19,4.15,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,33,7153,7154,7155,5,3709.65,-1156.61,207.9,4.72 ,‘Deadwood Gardener, Pathfinder, Warrior’);

– Deadwood Village Spawning pool info
INSERT INTO pool_creature_spawning_info (poolId, spawnPoint, spawnDist, movementType, pathId) VALUES
(@POOLID,8,5,1,0),
(@POOLID,9,5,1,0),
(@POOLID,10,5,1,0),
(@POOLID,11,5,1,0),
(@POOLID,12,5,1,0),
(@POOLID,13,5,1,0),
(@POOLID,14,5,1,0),
(@POOLID,15,5,1,0),
(@POOLID,16,5,1,0),
(@POOLID,17,5,1,0),
(@POOLID,18,5,1,0),
(@POOLID,19,5,1,0),
(@POOLID,20,5,1,0),
(@POOLID,21,5,1,0),
(@POOLID,22,5,1,0),
(@POOLID,23,5,1,0),
(@POOLID,24,5,1,0),
(@POOLID,25,5,1,0),
(@POOLID,26,5,1,0),
(@POOLID,27,5,1,0),
(@POOLID,28,5,1,0),
(@POOLID,29,5,1,0),
(@POOLID,30,0,2,361001000),
(@POOLID,31,0,2,361001001),
(@POOLID,32,0,2,361001002),
(@POOLID,33,0,2,361001003);

– Paths for creature_spawn_template 361000
Set @PATH := 361001000;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3575.04,-1076.384,221.8051,0,0,0,0,100,0),
(@PATH,2,3567.622,-1098.693,221.5181,0,0,0,0,100,0),
(@PATH,3,3562.087,-1118.363,221.1803,0,0,0,0,100,0),
(@PATH,4,3565.696,-1132.111,221.2504,0,0,0,0,100,0),
(@PATH,5,3576.388,-1143.33,219.6638,0,0,0,0,100,0),
(@PATH,6,3594.952,-1153.905,219.6672,0,0,0,0,100,0),
(@PATH,7,3622.036,-1154.701,211.3212,0,0,0,0,100,0),
(@PATH,8,3647.657,-1169.655,209.7255,0,0,0,0,100,0),
(@PATH,9,3661.205,-1171.2,209.3326,0,0,0,0,100,0),
(@PATH,10,3678.722,-1167.328,208.1529,0,0,0,0,100,0),
(@PATH,11,3702.719,-1169.509,207.4022,0,0,0,0,100,0),
(@PATH,12,3714.411,-1159.28,208.0238,0,0,0,0,100,0),
(@PATH,13,3723.102,-1142.47,209.1148,0,0,0,0,100,0),
(@PATH,14,3731.659,-1124.576,210.9985,0,0,0,0,100,0),
(@PATH,15,3739.66,-1110.396,214.1177,0,0,0,0,100,0),
(@PATH,16,3746.909,-1099.605,217.5009,0,0,0,0,100,0),
(@PATH,17,3744.177,-1084.458,219.0947,0,0,0,0,100,0),
(@PATH,18,3746.693,-1058.91,223.4796,0,0,0,0,100,0),
(@PATH,19,3743.289,-1041.939,225.8803,0,0,0,0,100,0),
(@PATH,20,3725.456,-1022.281,228.6066,0,0,0,0,100,0),
(@PATH,21,3716.919,-1012.96,229.4382,0,0,0,0,100,0),
(@PATH,22,3704.023,-1007.8,228.5495,0,0,0,0,100,0),
(@PATH,23,3690.01,-1010.55,224.4712,0,0,0,0,100,0),
(@PATH,24,3676.192,-1015.828,224.1748,0,0,0,0,100,0),
(@PATH,25,3655.77,-1020.512,222.1121,0,0,0,0,100,0),
(@PATH,26,3640.44,-1027.33,222.6451,0,0,0,0,100,0),
(@PATH,27,3626.348,-1031.823,221.8228,0,0,0,0,100,0),
(@PATH,28,3612.275,-1040.839,221.0037,0,0,0,0,100,0),
(@PATH,29,3599.829,-1051.741,219.7981,0,0,0,0,100,0),
(@PATH,30,3587.512,-1062.276,220.4841,0,0,0,0,100,0);

Set @PATH := 361001001;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3651.716,-1166.215,208.9989,0,0,0,0,100,0),
(@PATH,2,3641.558,-1165.332,209.4411,0,0,0,0,100,0),
(@PATH,3,3633.445,-1167.879,210.3903,0,0,0,0,100,0),
(@PATH,4,3627.21,-1177.31,211.7565,0,0,0,0,100,0),
(@PATH,5,3631.898,-1170.092,210.6403,0,0,0,0,100,0),
(@PATH,6,3641.504,-1165.535,209.4476,0,0,0,0,100,0);

Set @PATH := 361001002;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3697.57,-1151.694,207.032,0,0,0,0,100,0),
(@PATH,2,3676.109,-1155.196,208.0412,0,0,0,0,100,0),
(@PATH,3,3659.861,-1154.675,208.9906,0,0,0,0,100,0),
(@PATH,4,3644.097,-1148.313,209.9757,0,0,0,0,100,0),
(@PATH,5,3627.295,-1150.123,211.3212,0,0,0,0,100,0),
(@PATH,6,3606.05,-1143.36,213.6902,0,0,0,0,100,0),
(@PATH,7,3595.56,-1131.1,217.1226,0,0,0,0,100,0),
(@PATH,8,3587.919,-1119.175,218.7625,0,0,0,0,100,0),
(@PATH,9,3586.05,-1105.474,220.105,0,0,0,0,100,0),
(@PATH,10,3588.586,-1096.266,220.4756,0,0,0,0,100,0),
(@PATH,11,3590.767,-1085.894,221.7661,0,0,0,0,100,0),
(@PATH,12,3598.574,-1075.09,219.8293,0,0,0,0,100,0),
(@PATH,13,3608.946,-1062.424,219.4926,0,0,0,0,100,0),
(@PATH,14,3615.667,-1054.927,219.1191,0,0,0,0,100,0),
(@PATH,15,3629.311,-1046.101,220.8212,0,0,0,0,100,0),
(@PATH,16,3645.503,-1041.352,221.3114,0,0,0,0,100,0),
(@PATH,17,3657.924,-1036.394,221.1315,0,0,0,0,100,0),
(@PATH,18,3670.764,-1029.754,222.6582,0,0,0,0,100,0),
(@PATH,19,3691.562,-1026.028,223.2998,0,0,0,0,100,0),
(@PATH,20,3705.705,-1031.286,223.8864,0,0,0,0,100,0),
(@PATH,21,3717.623,-1051.01,222.7746,0,0,0,0,100,0),
(@PATH,22,3726.91,-1063.109,221.2639,0,0,0,0,100,0),
(@PATH,23,3735.42,-1079.583,218.7634,0,0,0,0,100,0),
(@PATH,24,3730.652,-1090.352,216.965,0,0,0,0,100,0),
(@PATH,25,3723.369,-1104.703,213.0214,0,0,0,0,100,0),
(@PATH,26,3722.022,-1118.559,210.1962,0,0,0,0,100,0),
(@PATH,27,3720.389,-1132.356,209.2753,0,0,0,0,100,0),
(@PATH,28,3712.491,-1144.754,208.3352,0,0,0,0,100,0);

Set @PATH := 361001003;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3709.52,-1140.89,207.9481,0,0,0,0,100,0),
(@PATH,2,3709.652,-1156.609,207.8988,0,0,0,0,100,0);[/CODE]

Updated again.

Idea: Use poolMethod in pool_creature_spawning_template for random respawn point or replace original. All creatures in zone like flightmasters or innkeepers can be in pool zoneId & 000 with poolMethod=0 so they will be replace in original location while pools with poolMethod=1 can be respawned in random locations from free pool_creature_spawning_points.

Also looking at pool_creature_spawning_points & pool_creature_spawning_info I see no reason why they can’t be just one table.

[CODE]-- #### Felwood Spawning ####

– Deadwood Village Spawning
Set @POOLID := 361001;
DELETE FROM pool_creature_spawning_template WHERE poolId = @POOLID;
DELETE FROM pool_creature_spawning_points WHERE poolId= @POOLID;
DELETE FROM pool_creature_spawning_info WHERE poolId= @POOLID;

– Deadwood Village Spawning template
INSERT INTO pool_creature_spawning_template (poolId, poolMethod, mapId, zoneId, areaId, phaseId, minLimit, maxLimit, corpsetimesecsloot, corpsetimesecsnoloot, description) VALUES
(@POOLID,1,1,361,1761,169,10,34,180,0,‘Deadwood Village Spawning’);

– Deadwood Village Spawning pool
INSERT INTO pool_creature_spawning_points (poolId, spawnPoint, creatureId1, creatureId2, creatureId3, chance1, chance2, chance3, position_x, position_y, position_z, orientation, description) VALUES
(@POOLID,0,7153,7154,7155,34,33,33,3597.07,-1026.9,226.09,3.05,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,1,7153,7154,7155,34,33,33,3597.07,-1026.9,226.09,3.05,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,2,7153,7154,7155,34,33,33,3622.21,-1130.46,210.79,5.25,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,3,7153,7154,7155,34,33,33,3737.23,-1149.34,209.85,3.94,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,4,7153,7154,7155,34,33,33,3743.92,-1169.23,209.84,2.46,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,5,7153,7154,7155,34,33,33,3618.7,-1188.61,213.86,1.12,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,6,7153,7154,7155,34,33,33,3704.07,-1135.35,207.95,5.62,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,7,7153,7154,7155,34,33,33,3752.59,-993.49,241.83,3.58,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,8,7153,7154,7155,34,33,33,3533.1,-1108.63,225.34,5.6 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,9,7153,7154,7155,34,33,33,3534.61,-1150.68,225.42,5.1 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,10,7153,7154,7155,34,33,33,3543.74,-1128.56,222.26,0.27 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,11,7153,7154,7155,34,33,33,3609.81,-1164.02,214.18,3.63 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,12,7153,7154,7155,34,33,33,3611.9,-1042.81,220.58,1.72 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,13,7153,7154,7155,34,33,33,3619.8,-1209.82,217.42,2.36 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,14,7153,7154,7155,34,33,33,3636.09,-1168.11,210.07,0.44 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,15,7153,7154,7155,34,33,33,3649.05,-1138.72,209.13,3.68 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,16,7153,7154,7155,34,33,33,3649.92,-1179.41,211.8,6.28 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,17,7153,7154,7155,34,33,33,3653.85,-1028.21,221.65,0.52 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,18,7153,7154,7155,34,33,33,3673.6,-1157.89,207.91,2.41 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,19,7153,7154,7155,34,33,33,3712.1,-1198.12,207.7,2.06 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,20,7153,7154,7155,34,33,33,3716.14,-1015.36,228.82,5.97 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,21,7153,7154,7155,34,33,33,3721.86,-1062.5,221.8,3.14 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,22,7153,7154,7155,34,33,33,3727.77,-1103.57,213.43,5.04 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,23,7153,7154,7155,34,33,33,3773.95,-1196.66,217.44,1.04 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,24,7153,7154,7155,34,33,33,3811.52,-1148.61,237.25,6.26 ,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,25,7153,7154,7155,34,33,33,3566.68,-1148.24,220.05,0.65,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,26,7153,7154,7155,34,33,33,3580.56,-1118.58,219.95,4.01,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,27,7153,7154,7155,34,33,33,3583.93,-1076.81,221.25,4.66,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,28,7153,7154,7155,34,33,33,3590.91,-1169.25,219.69,3.02,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,29,7153,7154,7155,34,33,33,3679.75,-1019.22,224.18,3.54,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,30,7153,7154,7155,34,33,33,3577.37,-1073.75,221.76,3.99,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,31,7153,7154,7155,34,33,33,3651.72,-1166.22,209,6.22,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,32,7153,7154,7155,34,33,33,3719.67,-1133.48,209.19,4.15,‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,33,7153,7154,7155,34,33,33,3709.65,-1156.61,207.9,4.72 ,‘Deadwood Gardener, Pathfinder, Warrior’);

– Deadwood Village Spawning pool info “load in percentage of total for curhealth, curmana
INSERT INTO pool_creature_spawning_info (poolId, spawnPoint, spawnDist, movementType, pathId, modelid, equipment_id, npcflag, unit_flags, dynamicflags, curhealth, curmana) VALUES
(@POOLID,0,0,0,0,0,0,0,0,0,100,100),
(@POOLID,1,0,0,0,0,0,0,0,0,100,100),
(@POOLID,2,0,0,0,0,0,0,0,0,100,100),
(@POOLID,3,0,0,0,0,0,0,0,0,100,100),
(@POOLID,4,0,0,0,0,0,0,0,0,100,100),
(@POOLID,5,0,0,0,0,0,0,0,0,100,100),
(@POOLID,6,0,0,0,0,0,0,0,0,100,100),
(@POOLID,7,0,0,0,0,0,0,0,0,100,100),
(@POOLID,8,5,1,0,0,0,0,0,0,100,100),
(@POOLID,9,5,1,0,0,0,0,0,0,100,100),
(@POOLID,10,5,1,0,0,0,0,0,0,100,100),
(@POOLID,11,5,1,0,0,0,0,0,0,100,100),
(@POOLID,12,5,1,0,0,0,0,0,0,100,100),
(@POOLID,13,5,1,0,0,0,0,0,0,100,100),
(@POOLID,14,5,1,0,0,0,0,0,0,100,100),
(@POOLID,15,5,1,0,0,0,0,0,0,100,100),
(@POOLID,16,5,1,0,0,0,0,0,0,100,100),
(@POOLID,17,5,1,0,0,0,0,0,0,100,100),
(@POOLID,18,5,1,0,0,0,0,0,0,100,100),
(@POOLID,19,5,1,0,0,0,0,0,0,100,100),
(@POOLID,20,5,1,0,0,0,0,0,0,100,100),
(@POOLID,21,5,1,0,0,0,0,0,0,100,100),
(@POOLID,22,5,1,0,0,0,0,0,0,100,100),
(@POOLID,23,5,1,0,0,0,0,0,0,100,100),
(@POOLID,24,5,1,0,0,0,0,0,0,100,100),
(@POOLID,25,5,1,0,0,0,0,0,0,100,100),
(@POOLID,26,5,1,0,0,0,0,0,0,100,100),
(@POOLID,27,5,1,0,0,0,0,0,0,100,100),
(@POOLID,28,5,1,0,0,0,0,0,0,100,100),
(@POOLID,29,5,1,0,0,0,0,0,0,100,100),
(@POOLID,30,0,2,361001000,0,0,0,0,0,100,100),
(@POOLID,31,0,2,361001001,0,0,0,0,0,100,100),
(@POOLID,32,0,2,361001002,0,0,0,0,0,100,100),
(@POOLID,33,0,2,361001003,0,0,0,0,0,100,100);

– Paths for creature_spawn_template 361000
Set @PATH := 361001000;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3575.04,-1076.384,221.8051,0,0,0,0,100,0),
(@PATH,2,3567.622,-1098.693,221.5181,0,0,0,0,100,0),
(@PATH,3,3562.087,-1118.363,221.1803,0,0,0,0,100,0),
(@PATH,4,3565.696,-1132.111,221.2504,0,0,0,0,100,0),
(@PATH,5,3576.388,-1143.33,219.6638,0,0,0,0,100,0),
(@PATH,6,3594.952,-1153.905,219.6672,0,0,0,0,100,0),
(@PATH,7,3622.036,-1154.701,211.3212,0,0,0,0,100,0),
(@PATH,8,3647.657,-1169.655,209.7255,0,0,0,0,100,0),
(@PATH,9,3661.205,-1171.2,209.3326,0,0,0,0,100,0),
(@PATH,10,3678.722,-1167.328,208.1529,0,0,0,0,100,0),
(@PATH,11,3702.719,-1169.509,207.4022,0,0,0,0,100,0),
(@PATH,12,3714.411,-1159.28,208.0238,0,0,0,0,100,0),
(@PATH,13,3723.102,-1142.47,209.1148,0,0,0,0,100,0),
(@PATH,14,3731.659,-1124.576,210.9985,0,0,0,0,100,0),
(@PATH,15,3739.66,-1110.396,214.1177,0,0,0,0,100,0),
(@PATH,16,3746.909,-1099.605,217.5009,0,0,0,0,100,0),
(@PATH,17,3744.177,-1084.458,219.0947,0,0,0,0,100,0),
(@PATH,18,3746.693,-1058.91,223.4796,0,0,0,0,100,0),
(@PATH,19,3743.289,-1041.939,225.8803,0,0,0,0,100,0),
(@PATH,20,3725.456,-1022.281,228.6066,0,0,0,0,100,0),
(@PATH,21,3716.919,-1012.96,229.4382,0,0,0,0,100,0),
(@PATH,22,3704.023,-1007.8,228.5495,0,0,0,0,100,0),
(@PATH,23,3690.01,-1010.55,224.4712,0,0,0,0,100,0),
(@PATH,24,3676.192,-1015.828,224.1748,0,0,0,0,100,0),
(@PATH,25,3655.77,-1020.512,222.1121,0,0,0,0,100,0),
(@PATH,26,3640.44,-1027.33,222.6451,0,0,0,0,100,0),
(@PATH,27,3626.348,-1031.823,221.8228,0,0,0,0,100,0),
(@PATH,28,3612.275,-1040.839,221.0037,0,0,0,0,100,0),
(@PATH,29,3599.829,-1051.741,219.7981,0,0,0,0,100,0),
(@PATH,30,3587.512,-1062.276,220.4841,0,0,0,0,100,0);

Set @PATH := 361001001;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3651.716,-1166.215,208.9989,0,0,0,0,100,0),
(@PATH,2,3641.558,-1165.332,209.4411,0,0,0,0,100,0),
(@PATH,3,3633.445,-1167.879,210.3903,0,0,0,0,100,0),
(@PATH,4,3627.21,-1177.31,211.7565,0,0,0,0,100,0),
(@PATH,5,3631.898,-1170.092,210.6403,0,0,0,0,100,0),
(@PATH,6,3641.504,-1165.535,209.4476,0,0,0,0,100,0);

Set @PATH := 361001002;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3697.57,-1151.694,207.032,0,0,0,0,100,0),
(@PATH,2,3676.109,-1155.196,208.0412,0,0,0,0,100,0),
(@PATH,3,3659.861,-1154.675,208.9906,0,0,0,0,100,0),
(@PATH,4,3644.097,-1148.313,209.9757,0,0,0,0,100,0),
(@PATH,5,3627.295,-1150.123,211.3212,0,0,0,0,100,0),
(@PATH,6,3606.05,-1143.36,213.6902,0,0,0,0,100,0),
(@PATH,7,3595.56,-1131.1,217.1226,0,0,0,0,100,0),
(@PATH,8,3587.919,-1119.175,218.7625,0,0,0,0,100,0),
(@PATH,9,3586.05,-1105.474,220.105,0,0,0,0,100,0),
(@PATH,10,3588.586,-1096.266,220.4756,0,0,0,0,100,0),
(@PATH,11,3590.767,-1085.894,221.7661,0,0,0,0,100,0),
(@PATH,12,3598.574,-1075.09,219.8293,0,0,0,0,100,0),
(@PATH,13,3608.946,-1062.424,219.4926,0,0,0,0,100,0),
(@PATH,14,3615.667,-1054.927,219.1191,0,0,0,0,100,0),
(@PATH,15,3629.311,-1046.101,220.8212,0,0,0,0,100,0),
(@PATH,16,3645.503,-1041.352,221.3114,0,0,0,0,100,0),
(@PATH,17,3657.924,-1036.394,221.1315,0,0,0,0,100,0),
(@PATH,18,3670.764,-1029.754,222.6582,0,0,0,0,100,0),
(@PATH,19,3691.562,-1026.028,223.2998,0,0,0,0,100,0),
(@PATH,20,3705.705,-1031.286,223.8864,0,0,0,0,100,0),
(@PATH,21,3717.623,-1051.01,222.7746,0,0,0,0,100,0),
(@PATH,22,3726.91,-1063.109,221.2639,0,0,0,0,100,0),
(@PATH,23,3735.42,-1079.583,218.7634,0,0,0,0,100,0),
(@PATH,24,3730.652,-1090.352,216.965,0,0,0,0,100,0),
(@PATH,25,3723.369,-1104.703,213.0214,0,0,0,0,100,0),
(@PATH,26,3722.022,-1118.559,210.1962,0,0,0,0,100,0),
(@PATH,27,3720.389,-1132.356,209.2753,0,0,0,0,100,0),
(@PATH,28,3712.491,-1144.754,208.3352,0,0,0,0,100,0);

Set @PATH := 361001003;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3709.52,-1140.89,207.9481,0,0,0,0,100,0),
(@PATH,2,3709.652,-1156.609,207.8988,0,0,0,0,100,0);[/CODE]

Other option is to have all data in one table. path field can be removed and auto calculated as (poolID * 1000) + spawnpoint.

[CODE]-- #### Felwood Spawning ####

– Deadwood Village Spawning
Set @POOLID := 361001;
DELETE FROM pool_creature_spawning_template WHERE poolId = @POOLID;
DELETE FROM pool_creature_spawning_points WHERE poolId= @POOLID;

– Deadwood Village Spawning template
INSERT INTO pool_creature_spawning_template (poolId, poolMethod, mapId, zoneId, areaId, phaseId, minLimit, maxLimit, corpsetimesecsloot, corpsetimesecsnoloot, description) VALUES
(@POOLID,1,1,361,1761,169,10,34,180,0,‘Deadwood Village Spawning’);

– Deadwood Village Spawning pool “load in percentage of total for curhealth, curmana
INSERT INTO pool_creature_spawning_points (poolId, spawnPoint, creatureId1, creatureId2, creatureId3, chance1, chance2, chance3, position_x, position_y, position_z, orientation, spawnDist, movementType, modelid, equipment_id, npcflag, unit_flags, dynamicflags, curhealth, curmana, description) VALUES
(@POOLID,0,7153,7154,7155,34,33,33,3597.07,-1026.9,226.09,3.05,0,0,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,1,7153,7154,7155,34,33,33,3597.07,-1026.9,226.09,3.05,0,0,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,2,7153,7154,7155,34,33,33,3622.21,-1130.46,210.79,5.25,0,0,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,3,7153,7154,7155,34,33,33,3737.23,-1149.34,209.85,3.94,0,0,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,4,7153,7154,7155,34,33,33,3743.92,-1169.23,209.84,2.46,0,0,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,5,7153,7154,7155,34,33,33,3618.7,-1188.61,213.86,1.12,0,0,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,6,7153,7154,7155,34,33,33,3704.07,-1135.35,207.95,5.62,0,0,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,7,7153,7154,7155,34,33,33,3752.59,-993.49,241.83,3.58,0,0,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,8,7153,7154,7155,34,33,33,3533.1,-1108.63,225.34,5.6,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,9,7153,7154,7155,34,33,33,3534.61,-1150.68,225.42,5.1,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,10,7153,7154,7155,34,33,33,3543.74,-1128.56,222.26,0.27,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,11,7153,7154,7155,34,33,33,3609.81,-1164.02,214.18,3.63,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,12,7153,7154,7155,34,33,33,3611.9,-1042.81,220.58,1.72,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,13,7153,7154,7155,34,33,33,3619.8,-1209.82,217.42,2.36,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,14,7153,7154,7155,34,33,33,3636.09,-1168.11,210.07,0.44,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,15,7153,7154,7155,34,33,33,3649.05,-1138.72,209.13,3.68,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,16,7153,7154,7155,34,33,33,3649.92,-1179.41,211.8,6.28,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,17,7153,7154,7155,34,33,33,3653.85,-1028.21,221.65,0.52,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,18,7153,7154,7155,34,33,33,3673.6,-1157.89,207.91,2.41,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,19,7153,7154,7155,34,33,33,3712.1,-1198.12,207.7,2.06,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,20,7153,7154,7155,34,33,33,3716.14,-1015.36,228.82,5.97,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,21,7153,7154,7155,34,33,33,3721.86,-1062.5,221.8,3.14,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,22,7153,7154,7155,34,33,33,3727.77,-1103.57,213.43,5.04,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,23,7153,7154,7155,34,33,33,3773.95,-1196.66,217.44,1.04,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,24,7153,7154,7155,34,33,33,3811.52,-1148.61,237.25,6.26,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,25,7153,7154,7155,34,33,33,3566.68,-1148.24,220.05,0.65,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,26,7153,7154,7155,34,33,33,3580.56,-1118.58,219.95,4.01,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,27,7153,7154,7155,34,33,33,3583.93,-1076.81,221.25,4.66,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,28,7153,7154,7155,34,33,33,3590.91,-1169.25,219.69,3.02,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,29,7153,7154,7155,34,33,33,3679.75,-1019.22,224.18,3.54,5,1,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,30,7153,7154,7155,34,33,33,3577.37,-1073.75,221.76,3.99,0,2,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,31,7153,7154,7155,34,33,33,3651.72,-1166.22,209,6.22,0,2,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,32,7153,7154,7155,34,33,33,3719.67,-1133.48,209.19,4.15,0,2,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’),
(@POOLID,33,7153,7154,7155,34,33,33,3709.65,-1156.61,207.9,4.72,0,2,0,0,0,0,0,100,100, ‘Deadwood Gardener, Pathfinder, Warrior’);

[/CODE]

[CODE]-- Deadwood Village Honey Bunny Spawning
Set @POOLID := 361002;
DELETE FROM pool_creature_spawning_template WHERE poolId = @POOLID;
DELETE FROM pool_creature_spawning_points WHERE poolId= @POOLID;

– Deadwood Village Honey Bunny Spawning template
INSERT INTO pool_creature_spawning_template (poolId, poolMethod, mapId, zoneId, areaId, phaseId, minLimit, maxLimit, corpsetimesecsloot, corpsetimesecsnoloot, description) VALUES
(@POOLID,1,1,361,1761,169,10,26,180,0,‘Deadwood Village Honey Bunny Spawning’);

– Deadwood Village Honey Bunny Spawning pool “load in percentage of total for curhealth, curmana
INSERT INTO pool_creature_spawning_points (poolId, spawnPoint, creatureId1, creatureId2, creatureId3, chance1, chance2, chance3, position_x, position_y, position_z, orientation, spawnDist, movementType, modelid, equipment_id, npcflag, unit_flags, dynamicflags, curhealth, curmana, description) VALUES
(@POOLID,0,47308,0,0,100,0,0,3509.32,-1125.78,225.45,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,1,47308,0,0,100,0,0,3509.89,-1140.11,225.48,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,2,47308,0,0,100,0,0,3532.39,-1096.94,225.45,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,3,47308,0,0,100,0,0,3544.88,-1171.89,225.23,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,4,47308,0,0,100,0,0,3551.04,-1133.35,221.16,0.99,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,5,47308,0,0,100,0,0,3566.53,-1177.27,220.35,1.38,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,6,47308,0,0,100,0,0,3578.83,-1022.38,226.51,6.25,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,7,47308,0,0,100,0,0,3609.76,-1129.07,210.79,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,8,47308,0,0,100,0,0,3623.04,-1199.54,214.74,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,9,47308,0,0,100,0,0,3628.59,-1165.05,210.51,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,10,47308,0,0,100,0,0,3655.07,-1161.52,208.64,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,11,47308,0,0,100,0,0,3675.35,-1046.83,221.62,2.27,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,12,47308,0,0,100,0,0,3698.52,-1157.71,207.04,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,13,47308,0,0,100,0,0,3705.8,-1122.83,208.16,5.55,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,14,47308,0,0,100,0,0,3742.51,-1215.9,209.41,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,15,47308,0,0,100,0,0,3743.15,-977.79,242.43,5.06,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,16,47308,0,0,100,0,0,3749.3,-1155.93,209.85,3.56,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,17,47308,0,0,100,0,0,3751.57,-1180.28,210,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,18,47308,0,0,100,0,0,3752.38,-1228.95,208.88,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,19,47308,0,0,100,0,0,3774.45,-1071.03,228.13,3.47,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,20,47308,0,0,100,0,0,3800.44,-1279.14,207.3,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,21,47308,0,0,100,0,0,3803.65,-1174.37,232.29,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,22,47308,0,0,100,0,0,3803.79,-1157.46,236.66,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,23,47308,0,0,100,0,0,3817.15,-1132.2,237.58,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,24,47308,0,0,100,0,0,3825.08,-1147.09,237.75,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’),
(@POOLID,25,47308,0,0,100,0,0,3834.54,-1305.67,208.24,4.57,0,0,0,0,0,0,0,100,100, ‘Felwood Honey Bunny’);[/CODE]

[CODE]-- Paths for creature_spawn_template 361001
Set @PATH := 361001030;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3575.04,-1076.384,221.8051,0,0,0,0,100,0),
(@PATH,2,3567.622,-1098.693,221.5181,0,0,0,0,100,0),
(@PATH,3,3562.087,-1118.363,221.1803,0,0,0,0,100,0),
(@PATH,4,3565.696,-1132.111,221.2504,0,0,0,0,100,0),
(@PATH,5,3576.388,-1143.33,219.6638,0,0,0,0,100,0),
(@PATH,6,3594.952,-1153.905,219.6672,0,0,0,0,100,0),
(@PATH,7,3622.036,-1154.701,211.3212,0,0,0,0,100,0),
(@PATH,8,3647.657,-1169.655,209.7255,0,0,0,0,100,0),
(@PATH,9,3661.205,-1171.2,209.3326,0,0,0,0,100,0),
(@PATH,10,3678.722,-1167.328,208.1529,0,0,0,0,100,0),
(@PATH,11,3702.719,-1169.509,207.4022,0,0,0,0,100,0),
(@PATH,12,3714.411,-1159.28,208.0238,0,0,0,0,100,0),
(@PATH,13,3723.102,-1142.47,209.1148,0,0,0,0,100,0),
(@PATH,14,3731.659,-1124.576,210.9985,0,0,0,0,100,0),
(@PATH,15,3739.66,-1110.396,214.1177,0,0,0,0,100,0),
(@PATH,16,3746.909,-1099.605,217.5009,0,0,0,0,100,0),
(@PATH,17,3744.177,-1084.458,219.0947,0,0,0,0,100,0),
(@PATH,18,3746.693,-1058.91,223.4796,0,0,0,0,100,0),
(@PATH,19,3743.289,-1041.939,225.8803,0,0,0,0,100,0),
(@PATH,20,3725.456,-1022.281,228.6066,0,0,0,0,100,0),
(@PATH,21,3716.919,-1012.96,229.4382,0,0,0,0,100,0),
(@PATH,22,3704.023,-1007.8,228.5495,0,0,0,0,100,0),
(@PATH,23,3690.01,-1010.55,224.4712,0,0,0,0,100,0),
(@PATH,24,3676.192,-1015.828,224.1748,0,0,0,0,100,0),
(@PATH,25,3655.77,-1020.512,222.1121,0,0,0,0,100,0),
(@PATH,26,3640.44,-1027.33,222.6451,0,0,0,0,100,0),
(@PATH,27,3626.348,-1031.823,221.8228,0,0,0,0,100,0),
(@PATH,28,3612.275,-1040.839,221.0037,0,0,0,0,100,0),
(@PATH,29,3599.829,-1051.741,219.7981,0,0,0,0,100,0),
(@PATH,30,3587.512,-1062.276,220.4841,0,0,0,0,100,0);

Set @PATH := 361001031;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3651.716,-1166.215,208.9989,0,0,0,0,100,0),
(@PATH,2,3641.558,-1165.332,209.4411,0,0,0,0,100,0),
(@PATH,3,3633.445,-1167.879,210.3903,0,0,0,0,100,0),
(@PATH,4,3627.21,-1177.31,211.7565,0,0,0,0,100,0),
(@PATH,5,3631.898,-1170.092,210.6403,0,0,0,0,100,0),
(@PATH,6,3641.504,-1165.535,209.4476,0,0,0,0,100,0);

Set @PATH := 361001032;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3697.57,-1151.694,207.032,0,0,0,0,100,0),
(@PATH,2,3676.109,-1155.196,208.0412,0,0,0,0,100,0),
(@PATH,3,3659.861,-1154.675,208.9906,0,0,0,0,100,0),
(@PATH,4,3644.097,-1148.313,209.9757,0,0,0,0,100,0),
(@PATH,5,3627.295,-1150.123,211.3212,0,0,0,0,100,0),
(@PATH,6,3606.05,-1143.36,213.6902,0,0,0,0,100,0),
(@PATH,7,3595.56,-1131.1,217.1226,0,0,0,0,100,0),
(@PATH,8,3587.919,-1119.175,218.7625,0,0,0,0,100,0),
(@PATH,9,3586.05,-1105.474,220.105,0,0,0,0,100,0),
(@PATH,10,3588.586,-1096.266,220.4756,0,0,0,0,100,0),
(@PATH,11,3590.767,-1085.894,221.7661,0,0,0,0,100,0),
(@PATH,12,3598.574,-1075.09,219.8293,0,0,0,0,100,0),
(@PATH,13,3608.946,-1062.424,219.4926,0,0,0,0,100,0),
(@PATH,14,3615.667,-1054.927,219.1191,0,0,0,0,100,0),
(@PATH,15,3629.311,-1046.101,220.8212,0,0,0,0,100,0),
(@PATH,16,3645.503,-1041.352,221.3114,0,0,0,0,100,0),
(@PATH,17,3657.924,-1036.394,221.1315,0,0,0,0,100,0),
(@PATH,18,3670.764,-1029.754,222.6582,0,0,0,0,100,0),
(@PATH,19,3691.562,-1026.028,223.2998,0,0,0,0,100,0),
(@PATH,20,3705.705,-1031.286,223.8864,0,0,0,0,100,0),
(@PATH,21,3717.623,-1051.01,222.7746,0,0,0,0,100,0),
(@PATH,22,3726.91,-1063.109,221.2639,0,0,0,0,100,0),
(@PATH,23,3735.42,-1079.583,218.7634,0,0,0,0,100,0),
(@PATH,24,3730.652,-1090.352,216.965,0,0,0,0,100,0),
(@PATH,25,3723.369,-1104.703,213.0214,0,0,0,0,100,0),
(@PATH,26,3722.022,-1118.559,210.1962,0,0,0,0,100,0),
(@PATH,27,3720.389,-1132.356,209.2753,0,0,0,0,100,0),
(@PATH,28,3712.491,-1144.754,208.3352,0,0,0,0,100,0);

Set @PATH := 361001033;
DELETE FROM waypoint_data WHERE id=@PATH;
INSERT INTO waypoint_data (id,point,position_x,position_y,position_z,orientation,delay,move_type,action,action_chance,wpguid) VALUES
(@PATH,1,3709.52,-1140.89,207.9481,0,0,0,0,100,0),
(@PATH,2,3709.652,-1156.609,207.8988,0,0,0,0,100,0);[/CODE]