Uncopylocked Placement System!

Update 2023: This is no longer uncopylocked. You should not use this placement system in your game. Its implementation is terrible and filled with bugs and vulnerabilities.


This should not be used in an actual game as it is super unstable, hardly works and is poorly optimised.

I thought that I may as well uncopylock this as I am completely rewriting it now that I am a lot better at scripting and placement systems in general :confused: and I fought that it could help some people out because I know first hand how hard it can be to make a functioning placement system. This does not resemble the placement system used in my current game, it is old and should never be used! Only use it to learn from!

You can find it here.

Please don’t judge the poor and untidy coding, I honestly had no idea where to start with a placement system back then and basically just slapped loads of code together hoping it would work. It is rushed!

That’s basically it, tell me if I missed anything? This is my first actual contribution to the dev forum, so I hope you like it? :smiley:

37 Likes

Hey welcome to the DevFourms, it’s a very cool system but as an end user of the system, here’s a few little things to improve from this old build from your new one

  • Integrate keyboard input into picking object. Up, down. forward back, left and right, etc.
  • The ability to cancel once you click Place
  • If a user is inside another users plot of land, they are stuck.
  • important: As an end user it is possible to create objects from outside of the plot and/or extend from inside the plot to outside. As a result see below.
3 Likes

I was aware of all of these issues and they will be fixed in the rewrite, I only released this as a was to teach people about placement system.

Edit: Security is also a major issue, so don’t try to use this in a game.

2 Likes

Oh great, yea I’m aware of it being a learning tool but those was some major things yourself or someone working from the system could be aware of in order to improve more

Security wise, it’s great you are aware of any issues

2 Likes

Yeah, I was gonna fix them but I completely lost motivation for the project and only decided to redo it for my game like 6 months later.

Yeah, I got someone who owns an exploit to come in and try and exploit it and he basically fired the event to place walls anywhere he wanted in like two minuets. I did no server-sided checks.

Edit: The new version is a lot cleaner and more organised.
image

2 Likes

Great. I can’t wait to see what you got next.

2 Likes

Yeah, if you want, you can read about the game here

1 Like

Instead of using ModuleScripts for every single method, I suggest that you put the methods inside of a ModuleScript with the name of the parent folder.

4 Likes

Thanks for the suggestion, I will probably do that, but for now I’m just doing it to make updating and debugging easier. It’s not an issue in scripts cause all I have to do is:

local EditorModules = setmetatable({}, {__index = function(i, k) return require(RepStorage.Modules.Editor:FindFirstChild(k)) end})

And then I can just do EditorModules.WhateverModuleScript() and it’ll work.

3 Likes

This looks awesome, thank you so much

1 Like

Hi, I joined your game and its awesome , if you have time you can add more furtnite also , theres a bug that we cant add items to your plot, and can you add removing system too so we can remove it , and auto save system so we dont lose our buildings

1 Like

This project is almost two years old now. It is up to you to expand on it and improve it. I’ve already stated multiple times that it should only be used to learn from and not used in an actual game. There are a multitude of issues and vulnerabilities that make it not suitable for production use.

1 Like

Is there a way to make a room detection system, to make floor place by it self?

Hey, it appears nobody can access the game in studio anymore because there’s an infinite loading screen. Could you put the game as a file or maybe overwrite the place id?

image