Editing Server:Boats
Jump to navigation
Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 38: | Line 38: | ||
</pre> | </pre> | ||
and temporarily stored in the `character_data`.boatid field in the database. | and temporarily stored in the `character_data`.boatid field in the database. | ||
=== Opcodes === | === Opcodes === | ||
<pre> | |||
utils/patches/patch_Mac.conf: | |||
OP_BoardBoat=0xbb41 | OP_BoardBoat=0xbb41 | ||
OP_LeaveBoat=0xbc41 | OP_LeaveBoat=0xbc41 | ||
Line 52: | Line 49: | ||
</pre> | </pre> | ||
=== Logsys Categories === | |||
GM characters can observe player profile packets showing boats being boarded/departed by setting debug logging in the database: | |||
=== | |||
GM characters can observe player profile packets showing boats being boarded/departed by setting debug logging | |||
==== Database | ==== Database ==== | ||
<pre> | <pre> | ||
UPDATE logsys_categories SET log_to_gmsay = '3' WHERE log_category_description = 'Boats'; | UPDATE logsys_categories SET log_to_gmsay = '3' WHERE log_category_description = 'Boats'; | ||
Line 66: | Line 61: | ||
UPDATE logsys_categories SET log_to_gmsay = '3' WHERE log_category_description = 'Quest Debug'; | UPDATE logsys_categories SET log_to_gmsay = '3' WHERE log_category_description = 'Quest Debug'; | ||
</pre> | </pre> | ||
==== Source ==== | ==== Source ==== | ||
Line 83: | Line 76: | ||
</pre> | </pre> | ||
=== Common | === Common === | ||
common/ruletypes.h | common/ruletypes.h | ||
Line 96: | Line 89: | ||
zone/zone.h and zone/zone.cpp: | zone/zone.h and zone/zone.cpp: | ||
This function iterates through a hardcoded list of zone short_names (qeynos, freporte, erudnext, butcher, oot, erudsxing, timorous, firiona, oasis, overthere, nro, iceclad) | |||
<pre> | <pre> | ||
bool Zone::IsBoatZone() | bool Zone::IsBoatZone() | ||
</pre> | </pre> | ||
zone/npc.h and zone/npc.cpp: | zone/npc.h and zone/npc.cpp: | ||
The following is found in the NPC:: namespace: | |||
<pre> | <pre> | ||
bool NPC::IsBoat() | bool NPC::IsBoat() | ||
Line 110: | Line 103: | ||
} | } | ||
</pre> | </pre> | ||
zone/mob.h and zone/mob.cpp: | zone/mob.h and zone/mob.cpp: | ||
Line 119: | Line 111: | ||
} | } | ||
</pre> | </pre> | ||
zone/client.h | zone/client.h | ||
Line 134: | Line 127: | ||
// the boat timeout period. | // the boat timeout period. | ||
</pre> | </pre> | ||
zone/client_packet.h | zone/client_packet.h | ||
Line 142: | Line 134: | ||
void Handle_OP_LeaveBoat(const EQApplicationPacket *app); | void Handle_OP_LeaveBoat(const EQApplicationPacket *app); | ||
</pre> | </pre> | ||
zone/command.h: | zone/command.h: | ||
Line 151: | Line 142: | ||
</pre> | </pre> | ||
zone/lua_parser_events.h | zone/lua_parser_events.h | ||
<pre> | <pre> | ||
Line 242: | Line 227: | ||
INSERT INTO `grid_entries` (`gridid`, `zoneid`, `number`, `x`, `y`, `z`, `heading`, `pause`, `centerpoint`) VALUES (16, 68, 11, 3595, 491, -11.9, 0, 0, 0); | INSERT INTO `grid_entries` (`gridid`, `zoneid`, `number`, `x`, `y`, `z`, `heading`, `pause`, `centerpoint`) VALUES (16, 68, 11, 3595, 491, -11.9, 0, 0, 0); | ||
</pre> | </pre> | ||
=== LUA Scripting === | === LUA Scripting === | ||
Line 253: | Line 234: | ||
* event_waypoint_arrive | * event_waypoint_arrive | ||
* event_waypoint_depart | * event_waypoint_depart | ||
==== Example Scripts ==== | ==== Example Scripts ==== | ||
Line 279: | Line 246: | ||
* https://github.com/EQMacEmu/quests/blob/main/timorous/Maidens_Voyage.lua | * https://github.com/EQMacEmu/quests/blob/main/timorous/Maidens_Voyage.lua | ||
* https://github.com/EQMacEmu/quests/blob/main/timorous/Muckskimmer.lua | * https://github.com/EQMacEmu/quests/blob/main/timorous/Muckskimmer.lua | ||