[Help Needed] Creating Custom portals? Also starting Point Help

Newbie Spellweaver
Joined
Aug 20, 2006
Messages
17
Reaction score
0
Alright, so I know how to create .addgo portals, the ones that lead to the MAIN cities, but I want to know how to create portals that lead to the coordinates I give. Im planning on making an area full of portals.

I also need to know how to set the starting point of the alliance and horde players different. For example, i want all alliance players to start out in one specific area, and all horde players to start out in one different specific area

thx
chris
 
If you're using MaNGOS, look in the gameobjects table (you'll see how they are set up) for the portals, and look in the playercreate tables to change the starting location.
 
Alright, so I know how to create .addgo portals, the ones that lead to the MAIN cities, but I want to know how to create portals that lead to the coordinates I give. Im planning on making an area full of portals.

I also need to know how to set the starting point of the alliance and horde players different. For example, i want all alliance players to start out in one specific area, and all horde players to start out in one different specific area

thx
chris

Ok,...
PORTALS
Create portlas in the gameobject_template table (I suggest to copy exactly one of the already made portals.
Create nuw aretriggers in the areatrigger_template (again, I suggest to copy one othe already made portal-trigger and insert the coordinates where you want your portal to send you).
Go back to the gaeobject_template and insert in the sound0 (or soundl1?) field the id of your custom portal.
If you notice on the Stormwind Portal, for example, the first or second "sound" field value is the id of the Stormwind portal areatrigger.

STARTING AREAS
All the playercreateinfo_* tables allow you to set tha character's statring values...just look for the one where you can set coordinates...I don't remember them by heart at the moment.

Hope this is useful.
 
dont stuff arond with that just create a teporter using mangosscript with this

-- Create the Mango Script Base object
My_Teleporter = Mango.Scripts.Create('my_teleporter');
My_Teleporter:ForceLUA(); -- Don't use the CPP version if valid

-- Function prototypes (to keep it clean)
local My_Teleporter_GossipHello
local My_Teleporter_GossipSelect

-- The actual functions
-- Send the first menu (with the selections)
function My_Teleporter_GossipHello(player,_Creature)

player:ADD_GOSSIP_ITEM( 5, "Travel to Ironforge" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1)
player:ADD_GOSSIP_ITEM( 5, "Travel to Goldshire" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2)
player:ADD_GOSSIP_ITEM( 5, "Travel to BootyBay" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3)
player:ADD_GOSSIP_ITEM( 5, "Travel to Menthil Harbor" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 4)
player:ADD_GOSSIP_ITEM( 5, "Travel to Auberdine" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 5)
player:ADD_GOSSIP_ITEM( 5, "Travel to Theramore Isle" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 6)
player:ADD_GOSSIP_ITEM( 5, "Travel to Rut'theran Village" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 7)
player:ADD_GOSSIP_ITEM( 5, "Travel to Feathermoon Stronghold" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 8)
player:ADD_GOSSIP_ITEM( 5, "Travel to Feralas Coast" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 9)
player:ADD_GOSSIP_ITEM( 5, "Travel to Ratchet" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 10)
player:ADD_GOSSIP_ITEM( 5, "Travel to Undercity" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 11)
player:ADD_GOSSIP_ITEM( 5, "Travel to Grom'Gol Basecamp" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 12)
player:ADD_GOSSIP_ITEM( 5, "Travel to Durotar" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 13)
player:ADD_GOSSIP_ITEM( 5, "Travel Mob Spawning Ground" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 14)
player:SEND_GOSSIP_MENU(1 ,_Creature:GetGUID()); -- Says " Greetings <Playername>

return RETURN_OK
end

-- Called when you chose an option
function My_Teleporter_GossipSelect(player, _Creature, sender, action)
--Serving guard_stormwind/main menu
if sender == GOSSIP_SENDER_MAIN then

if action == GOSSIP_ACTION_INFO_DEF + 1 then
-- teleport player to Ironforge
player:TeleportTo(0, -4919.979980 , -957.887024 , 501.503998 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 2 then
-- teleport player to Goldshire
player:TeleportTo(0, -9443.450195 , 59.894402 , 56.070400 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 3 then
-- teleport player to BootyBay
player:TeleportTo(0, -14289.0 , 556.6 , 8.9 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 4 then
-- teleport player to Menthil Harbor
player:TeleportTo(0, -3779.526611 , -734.663025 , 8.090954 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 5 then
-- teleport player to Auberdine
player:TeleportTo(1, 6439.279785 , 614.956970 , 10.469187 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 6 then
-- teleport player to Theramore Isle
player:TeleportTo(1, -3994.240967 , -4722.521484 , 4.718028 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 7 then
-- teleport player to Rut'theran Village
player:TeleportTo(1, 8549.147461 , 1020.227905 , 5.824060 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 8 then
-- teleport player to Feathermoon Stronghold
player:TeleportTo(1, -4214.979492 , 3285.962158 , 6.361742 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 9 then
-- teleport player to Feralas Coast
player:TeleportTo(1, -4346.529297 , 2429.156494 , 6.317777 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 10 then
-- teleport player to Ratchet
player:TeleportTo(1, -997.727234 , -3823.210205 , 5.358360 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 11 then
-- teleport player to Undercity
player:TeleportTo(0, 2058.840088 , 253.284988 , 99.760002 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 12 then
-- teleport player to Grom'Gol Basecamp
player:TeleportTo(0, -12441.599609 , 215.000000 , 31.200001 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 13 then
-- teleport player to Durotar
player:TeleportTo(1, 1338.453491 , -4663.950195 , 54.048733 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 14 then
-- teleport Mob Spawning Grounds
player:TeleportTo(451, 16957.70 , 15812.03 , 84.808733 , 0, false, true );
end
end
return RETURN_OK
end

-- Assign the functions
My_Teleporter.GossipHello = My_Teleporter_GossipHello;
My_Teleporter.GossipSelect= My_Teleporter_GossipSelect;

-- Activate (run) the script
My_Teleporter:Activate();


to the following

go to creature templete
select a npc you want to modifiy as a teleporter
change npc flag to 65
set scriptname to my_teleporter

and its done restart you game right click on the npc and teleport to any locations you set.
 
Ok,...
PORTALS
Create portlas in the gameobject_template table (I suggest to copy exactly one of the already made portals.
Create nuw aretriggers in the areatrigger_template (again, I suggest to copy one othe already made portal-trigger and insert the coordinates where you want your portal to send you).
Go back to the gaeobject_template and insert in the sound0 (or soundl1?) field the id of your custom portal.
If you notice on the Stormwind Portal, for example, the first or second "sound" field value is the id of the Stormwind portal areatrigger.

STARTING AREAS
All the playercreateinfo_* tables allow you to set tha character's statring values...just look for the one where you can set coordinates...I don't remember them by heart at the moment.

Hope this is useful.

Alright, how would I copy a row, I'm not very familiar with SQLyog

dont stuff arond with that just create a teporter using mangosscript with this

-- Create the Mango Script Base object
My_Teleporter = Mango.Scripts.Create('my_teleporter');
My_Teleporter:ForceLUA(); -- Don't use the CPP version if valid

-- Function prototypes (to keep it clean)
local My_Teleporter_GossipHello
local My_Teleporter_GossipSelect

-- The actual functions
-- Send the first menu (with the selections)
function My_Teleporter_GossipHello(player,_Creature)

player:ADD_GOSSIP_ITEM( 5, "Travel to Ironforge" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1)
player:ADD_GOSSIP_ITEM( 5, "Travel to Goldshire" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2)
player:ADD_GOSSIP_ITEM( 5, "Travel to BootyBay" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3)
player:ADD_GOSSIP_ITEM( 5, "Travel to Menthil Harbor" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 4)
player:ADD_GOSSIP_ITEM( 5, "Travel to Auberdine" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 5)
player:ADD_GOSSIP_ITEM( 5, "Travel to Theramore Isle" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 6)
player:ADD_GOSSIP_ITEM( 5, "Travel to Rut'theran Village" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 7)
player:ADD_GOSSIP_ITEM( 5, "Travel to Feathermoon Stronghold" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 8)
player:ADD_GOSSIP_ITEM( 5, "Travel to Feralas Coast" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 9)
player:ADD_GOSSIP_ITEM( 5, "Travel to Ratchet" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 10)
player:ADD_GOSSIP_ITEM( 5, "Travel to Undercity" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 11)
player:ADD_GOSSIP_ITEM( 5, "Travel to Grom'Gol Basecamp" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 12)
player:ADD_GOSSIP_ITEM( 5, "Travel to Durotar" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 13)
player:ADD_GOSSIP_ITEM( 5, "Travel Mob Spawning Ground" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 14)
player:SEND_GOSSIP_MENU(1 ,_Creature:GetGUID()); -- Says " Greetings <Playername>

return RETURN_OK
end

-- Called when you chose an option
function My_Teleporter_GossipSelect(player, _Creature, sender, action)
--Serving guard_stormwind/main menu
if sender == GOSSIP_SENDER_MAIN then

if action == GOSSIP_ACTION_INFO_DEF + 1 then
-- teleport player to Ironforge
player:TeleportTo(0, -4919.979980 , -957.887024 , 501.503998 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 2 then
-- teleport player to Goldshire
player:TeleportTo(0, -9443.450195 , 59.894402 , 56.070400 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 3 then
-- teleport player to BootyBay
player:TeleportTo(0, -14289.0 , 556.6 , 8.9 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 4 then
-- teleport player to Menthil Harbor
player:TeleportTo(0, -3779.526611 , -734.663025 , 8.090954 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 5 then
-- teleport player to Auberdine
player:TeleportTo(1, 6439.279785 , 614.956970 , 10.469187 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 6 then
-- teleport player to Theramore Isle
player:TeleportTo(1, -3994.240967 , -4722.521484 , 4.718028 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 7 then
-- teleport player to Rut'theran Village
player:TeleportTo(1, 8549.147461 , 1020.227905 , 5.824060 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 8 then
-- teleport player to Feathermoon Stronghold
player:TeleportTo(1, -4214.979492 , 3285.962158 , 6.361742 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 9 then
-- teleport player to Feralas Coast
player:TeleportTo(1, -4346.529297 , 2429.156494 , 6.317777 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 10 then
-- teleport player to Ratchet
player:TeleportTo(1, -997.727234 , -3823.210205 , 5.358360 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 11 then
-- teleport player to Undercity
player:TeleportTo(0, 2058.840088 , 253.284988 , 99.760002 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 12 then
-- teleport player to Grom'Gol Basecamp
player:TeleportTo(0, -12441.599609 , 215.000000 , 31.200001 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 13 then
-- teleport player to Durotar
player:TeleportTo(1, 1338.453491 , -4663.950195 , 54.048733 , 0, false, true );
elseif action == GOSSIP_ACTION_INFO_DEF + 14 then
-- teleport Mob Spawning Grounds
player:TeleportTo(451, 16957.70 , 15812.03 , 84.808733 , 0, false, true );
end
end
return RETURN_OK
end

-- Assign the functions
My_Teleporter.GossipHello = My_Teleporter_GossipHello;
My_Teleporter.GossipSelect= My_Teleporter_GossipSelect;

-- Activate (run) the script
My_Teleporter:Activate();


to the following

go to creature templete
select a npc you want to modifiy as a teleporter
change npc flag to 65
set scriptname to my_teleporter

and its done restart you game right click on the npc and teleport to any locations you set.
Thats pretty cool, I'll try that aswell





EDIT:

One more thing, my portal doesnt seem to work, when I rightclick it, nothing happens?
 
check you npcflag and your scriptname for your character and make sure it has misc directory in your mangoscript with your teporter lua otherwise it will do nothing.
 
Yup, I checked it and it still just says "Greetings Haxified", and the "Unknown" option is there. I dont think its loading when I start the server , because I dont see the "Loading script C:/Mangos/MangoScript/misc/my_teleporter.lua"

Btw, this happens with all the guards in stormwind and ironforge, not just the custom npc
 
Back