Firstly (and most obviously) you need the S.S. Ticket that takes you between Lilycove, Slateport and Batle Frontier. This is given to you by Norman after you beat the Elite Four.
Secondly (and second obviously) you need the tickets required to get Deoxys and Mew. These are the AuroraTicket and the OldSeaMap respectively. To get this, you needed to attend events long time ago. The latter specifically was only released in Japan and Taiwan (meaning any Mew caught on Faraway Island on any other copy would be flagged as illegal)
However, here comes the hard bit. The game does an internal flag check which triggers the 'The ferry for SLATEPORT is...' dialogue which takes you to the event islands.
These flags are only marked when you actually get the tickets through the Mystery Gift system and the green man on the second/first floor of the Pokemon Centre (another flag of its own)
Unlike the Eon Tickets, as far as I am aware, you cannot transfer the tickets from another save file to this one through Record Mixing, and if you somehow cheat the tickets in, the flags will not be checked.
Unless the person finds a way to get to the islands, either through legitimate or illegitimate methods, those are the requirements as far as I am aware of.
EDIT 11/05/2024: I’ve got some new information about the flags relating to the event triggers. How to change the flags so that it triggers? I dunno.
The AuroraTicket flags in Emerald:
0x13A - FLAG_GOT_AURORA_TICKET
0x1AD - FLAG_FOUGHT_DEOXYS
0x8D5 - FLAG_ENABLE_SHIP_BIRTH_ISLAND