Instancing 101.
For creating a duplicate map, take your desired map, open it in BrowEdit r586, save it as 1@mapname (Official instances are named in this format). Add the map to your server+grf, and create your instance. For creating an instance, I find it most helpful to use an official one as base. Another convenience you could offer players considering the nature of your instance is to force them into a party so they don't have to do '/organize' everytime they go their home, try using this.
while (getcharid( 1) == 0) {
.@name$ = "i" + rand(100000);
if (party_create(.@name$) > 0)
select("...");
}
If you have any other questions, let me know or connect to the 'Discord' help chat under the chat tabs at the top of the rAthena page (or my signature).
EDIT: I went a step further and uploaded basically everything you need for the instance. It is lacking dialogue and that while statement that forces the player into a party, otherwise you just need to add some dialogue. Download here.
Regards,
~Azura Skyy