Post-Build Custom Level Loading

So i want the user to be able to load custom levels they put in a specific folder by providing their name , i have the GUI code all done but i don't know how to do the rest

Unity compiles your scenes when you build the game. So you cannot load a .scene into a Unity build; you need to compile it. There are easier ways fortunately.

You could make a level creator. Create a system using either a text file or an xml that stores information, then store the user's level. Possibly:

//info.xml

<Player>
     <Position>
          <x>0</x>
          <y>1</y>
          <z>0</z>
     </Position>
     <Weapon name="LengendaryEnchantedMagicalThing"></weapon>
     <Weapon name="TunaFishSandwich"></weapon>
</Player>

<Enemy>
   //Some other stuff
</enemy>

Then have an empty scene in your build that's only function is to load all the specified objects into itself. It reads the xml and then instantiates objects based on the data. This is probably the easiest way of doing it.

You just need to get the name of the level from the user don't you ? A textField and a button should be enough, and then something like that

Application.LoadLevel( CustomLevelPath + "/" + userLevelName );