I want to make a game, but I want to allow others to contribute themselves or to mod it later on. Is there a way to make 100 rooms with exits and descriptions, etc. and lock them in place so that those can not be changed, but then allow others to make extra rooms to it?
So if there was a street with store fronts, but I only had three active stores, someone else could make two more active or even an alley that was off limits, is now able to be entered. They did not change the fundamentals to the game, as in make it on a space ship all of a sudden or made it a desert area, they only added to what was already preexisting.
And the existing NPCs would not be able to be deleted, but new NPCs could show up if the other creators chose to so that the stores would be usable, is that also possible? I guess in the end anything can be reworked, but I am speaking more of not easily changed, for both game play purposes and by others who may of deleted something by mistake or changed something they had not realized and have no way to fix it. And also for me to create a blue print so others can enjoy and tweak I suppose. Thank you.
It is probably possible but will take some planning and a lot of sweat. You will need to make it so that any added locations are accessable from your existing ones. eg. exits/doors/etc. Also if your NPCs are fixed in your places, they won't be able to move into any new areas (easily).
How will your game be made available to others?
I'm not sure about being able to "lock rooms/exits/descriptions in place so they can't be changed" as some alterations will be necessary in order to add on the extras.
I'm not a programmer by any stretch of the imagination but these are a few of the hurdles that come to mind if you embark on an endeavour such as this.
Good luck and I hope it comes to fruition and proves to be a winner.
Since all games are different and there are many ways to achieve the same results, contributors to your project could use a clear checklist of how things should be added. Communication is gold and if your goal is a specific game, everyone should understand that goal. Otherwise, you have an unfinished game that gets new 'mods' but the main game progresses slowly (*cough* Starbound *cough*).
You should have some working core functions of your game for others to know what to do. With planning and communication, it should be enough to share a copy of the project, then you had to decide which changes works and share all changes with the group.
There are different ways and I have no experience with programming groups, though group projects usually need someone to set the goal and making clear decisions.
(What I'm working towards:)
You could make a core game and a tutorial to show others how to add stuff to the game. Then you could make a website or discord server to let others share their addons and then you could add the good stuff to the main game...