How do I make houses like they do in adopt me?

Doesn’t seem like a great idea if they want shadows in game. They could put it far away from each other just like in MM2 does with their maps.

1 Like

Basically what they use, is when a player spawns in it puts their house on one of the 40+ plots. When a player enters a house, they use TeleportService, teleporting players to a house off the map. The only problem is that you have to have the house shape, and resize it to be a little bit bigger, otherwise, it will look weird. Ex: a rectangular house, but the inside is square! :laughing: They have to use math.random to generate a house out of the map and make it so it’s the house they have (bought), but it’s not in the same place as another house! Hope this helped! :grinning_face_with_smiling_eyes:

2 Likes

That depends on who’s making the house - If they choose to up pointlights and such inside.

2 Likes

right, like in bloxburg. the sun is out, and you can have roof or no roof, and you add lights yourself.

1 Like

I’m pretty sure TeleportService is used to teleport players from place to place (as in roblox places), not from a block to another block.

1 Like

A way you can test that theory is keep a core GUI open (Settings to be exact) and go into a house, If it closes then it is. If it doesn’t then Its just a pre-save off to the side of the map

Edit - Its just a pre-save to the side of the map.

1 Like

Sorry this is a bit late:
I may have figured out how they’ve done it because I’ve glitched out of the house multiple times. From what I can tell with all their buildings, Adopt Me will detect when you are entering into a building then load the interior into the workspace. After you finish building around inside or feeding your pets you can leave the house. To save memory, they likely unload the interior to cut down on lag.
You may now be asking, “How would I hide the interior from my players?”. At the moment of writing this I can think of 3 ways to fix this.

  1. Use terrain to hide the houses as they do in adopt me. All of adopt me’s places are outside of their borders so the player will usually never see them.
  2. Place the house so unbelievably far away the player will not see the husk. This way isn’t the best option, but it does work.
  3. This is honestly the best one. It is a mix of 1 and 2 where you would hide the sides of the map. Then either place the interiors below the map, or a few thousand meters away from the main map. I myself put the houses directly under the map, usually near the center because the Player usually will not see that area.

edit: if you need a bit of help, I can help you plan out this. I will not write any code for it though.

3 Likes

Oops, my mistake. You will need to set an event (teleport), for it to work. TeleportService is for teleporting to different games, thanks for bringing that to my attention!

3 Likes

As some people have said in this thread, a good way to doing this would be to locally hide or show the large room depending on whether the player is inside or not.

Because you’re doing this locally, the changes you make will only be seen by the specific player. So, when they enter their house, you make that one house visible to that player and teleport them to the correct position. This could be in the sky, underground, far away, anywhere. The other players will not see the large room.

A possible issue is that the player inside their room could be seen floating by other players as this is replicated. But, to fix this you could have the other players then locally set other players to invisible if they are not in the same room as them.

Hope this helps,
adrrob1002

3 Likes

I’ve actually played Adopt Me before, and it turns out the homes in the neighborhood are actually non accessible. Basically when you go up to the doors of your fake home, it teleports you inside your real house located on an “island” way off in the corner of the workspace. Below is a visual aid.

Hope this helps! :smiley:

7 Likes

there is a tl;dr part near the end

They could do the following:

  1. Player touches door
  2. Server sees that it touching, sends client data (possibly as a JSON string, which is a string formatted to look like a table) about the inside of the house to enter (data may include furniture, placement of furniture, etc)
  3. The client gets the data, turns it into a table (using JSONDecode) and reads it and gets data
  4. Folloing the data the client places builds the interior far away from the main map
  5. Because it is being built on the client, ONLY THE CLIENT ENTERING THE ROOM WILL SEE THE ROOM. This way other players/clients will not see the room (unless they are also in the room).
    This method is called having Local Parts, an intresting side feature when the server-client model was introduced.
  6. The server sends some data to the client about the position of other players
  7. The server hides the client on the server, so now any player who has not made a copy of that client locally (so on the client side) will not see the player, but locally for the client the character is teleported to the room
  8. The client locally creates the characters and move them where they should be

Tl;dr Server hides player, client builds house and other players and then goes to house. others cannot see the house as it is local

Here are some links that may help:

5 Likes

Thank you so much this helps out a lot especially the visual representation

3 Likes

Sorry for the late reply! :grimacing:


No problem friend, I’m glad I was able to help! Oh and I’m not sure how good you are at programming, but if you want I can send you a DM with a link to a great free model teleporter. :smiley:

1 Like

im pretty sure they make a low poly house and when you go in the door it teleports you to this area where the inside of your house is if you can clip your camera through a wall of a house in adopt me, you can see what i mean

2 Likes

i actually think its client sided so if it were under the map only one client would see it and they add clients that are allowed to see it for the two or however many clients in the house