Prefab

Prefab

12M Downloads

Modular Housing

Brian-Wuest opened this issue ยท 26 comments

commented

This issue is to track the enhancement of Modular Housing to the mod. Below is the proposal for how the modular housing will work. This will take some time to finish up and we might release other structures while this is being completed.

  1. A new block will be added which will be the basis for the modular house. It will be called the Modular House Controller (name pending).
    1. The block will have a GUI for showing the current layout of the modular house.
    2. The block will NOT be breakable.
    3. The player will be able to remove the Modular House Controller through the block's GUI. This is to "finish" the house and replace the block with stone/wood to have a consistent wall and environment.
  2. The house will have a maximum size of 49 rooms (7x7 grid).
    1. Each room will be 16x16x16 (or 1 Minecraft Chunk, though it will not sit on Chunk boundaries and would most likely cross many Chunks).
    2. The first room will be built automatically when placing the block and will be the initial bedroom and can be re-decorated by the player afterwards.
      1. This room will appear in the bottom row in the middle when viewing the grid in the block GUI.
    3. There will be a number of different room styles to choose from when building in one of the squares. Some rooms require them to be attached to other previously created rooms.
      1. Room designs will be provided later.
    4. Once a room is created it cannot be changed to a different style using the Modular House Controller. It has to be manually updated to the player's design needs.
    5. Each room style requires different material components which can be placed in the GUI when selecting to build the room.
  3. There will be a maximum of 3 floors.
    1. A basement.
    2. The main floor (typically ground level when building this on the surface).
    3. The second floor.
    4. When building a room on the second floor, the room MUST be above a room on the main floor.
    5. When building a room on the basement floor, the first room built must be beneath an existing room on the main floor and any following rooms must connect to the first room of the basement.
  4. NOTE: When building a room, anything which was there previously in the world will be destroyed and replaced with contents of the room.
    1. Please be sure to NOT build large modular houses near each other as they might conflict when other players are building.
      1. The modular housing will respect mod protected boundaries and you may lose materials if trying to build in a protected area.
    2. The blocks destroyed will not be harvested. This means that you could loose precious materials. Please be sure to remove all wanted materials from the room area before building.
commented

Nice cant wait for this to be released.

commented

So, this is some exciting stuff! I love the fact that you have an outline for the thing that you are sharing with us. A few questions (as a player, not a modder; keep that in mind if I ask stupid questions, please) that I see.

Each room will be 16x16x16 (or 1 Minecraft Chunk, though it will not sit on Chunk boundaries and would most likely cross many Chunks).

Does this mean that's its size, or that's it's set maximum size? Because frankly, I have no clue what I'd do with a chunk sized bedroom. I've been known to have a large imagination, but I think decorating that is out of my range. I may be misunderstanding here, but if I'm not that's seriously huge.

Which brings up my next question: Configurable room sizing? I understand the rooms would all need to be the same size, but what if I want my rooms to be a bit smaller than the standard? Or a bit larger? And of course the question a lot of people forget when they're asking favors of mod authors, is it even possible?

And is that internal or external dimensions?

Controller name ideas: Modular Housing Interface? Architectural Designer? Apartment Builder?

I'm probably being too helpful and should go to bed. Thanks for what you do. ๐Ÿ˜„

commented

so the 16x16x16 is the maximum dimensions of the build space. So if you think about it and you put up walls and at least a flat ceiling you will end up with a 14x14x15(14 blocks wide and deep and 15 tall assuming you build on ground level) space. This is pretty huge but since you mentioned it we could make smaller buildings and the off-shoots from those could be connected via little hallways. I kinda like that as Kaojinn is making the initial house in a style of either a Manor or a Bunker.

I like the controller name ideas. May have to take one of those ๐Ÿ˜„

commented

Oh, I love the hallway idea! Bunker style for building underground! (Yeah, I'm an underground kinda person in MC.)

Feel free to snag a name, or even more than one. Mix and Match! ๐Ÿ˜„

commented

I am going with Modular House Interface.

Edit: After talking with Kaojinn we have come up with a different name for the block. "Drafter"

commented

Sweet! It's gonna be awesome!

commented

Alright, I've got an interface mockup as a starting point. mind you, this is pre-sub-semi-alpha, its still an idea, subject to change, blah blah blabbity blah.

interface

A quick rundown of whats what, and some of the rules/behaviors of the Drafter. First off, the Tabs:
Overview - This is meant to give a broad overview of the base as a whole. used and unused space, and what rooms are where, at a glance.
Detail - Whichever tile from the grid there that you have selected, the details for it will be configurable on this tab. Eventually, we may have a view of the room there, with snap-in components you can add to the room, like subfloors, walkways, doorways and stairwells to divide up the space.
Pending Changes - This tab will display an itemized list of changes you have selected that will happen when you click Build. Items will be removable individually from the list, items are added to it from the details tab.

Level - These will be buttons that will show you a layer view of the base layout, in 16 block high slices.

Grid - This will show you a visual representation of where you have built in the base area. Keep in mind that if you have already built something custom in an "empty" space, the drafter wont see it, and will think its free to use.
The purple box at the bottom, outside of the rest of the grid represents the entrance. The room directly up from it is a 4-way intersection, which is essentially the hub you build the base off of. The + in squares adjacent to it are meant to indicate that these are valid locations to build additional rooms in currently unused space.

Sample Image - Self explanatory, this will be a top down view of the room to signify the layout.

Room Name - Rooms will have predefined names, but they can be manually edited to customize the name of the space to your liking. Mind you, this is totally superficial, its just retained in the interface, but it makes talking about it with friends easier :)

Room Coordinates - This will tell you the center point of the room as a means of convenience with planning any building outside of the drafter interface (like if you have an existing structure you dont want to impact).

Room Cost - It would be silly if we did all the work for you! As such, you will be required to provide building materials to feed the drafter. Each room you want to build will have a cost associated with it, and that cost will be displayed by showing the item icon, followed by the number of that block/item it will consume from the adjacent inventory, followed by the total number of that item detected in the adjacent inventory. Ex: [Double Compressed Stone Icon] 16 (71)

Clear Pending - This will allow you to 1-click clear all pending changes and reset the view to what has currently been built.

Build - This button will commit the changes you have queued up. The queue depth for this may be limited, depending on how it ends up impacting system/server performance, but those are technical hurdles I'm sure we can overcome.

commented

As a means of tagging the bounds of the room, we're putting a single block of compressed stone there to act as a marker. We may add additional markers within the predefined rooms to act as a means of allowing the interface to detect what room is there, in addition to simply detecting that a room is even there. These markers are in an effort to eventually allow you to pick up and replace the Drafter, and allow it to be able to identify previously built rooms within the area.

Separated Intersection Modules

Currently, I have template rooms for the 4 main styles of room intersection. 4-Way Intersection, 3-Way T intersection, and two variants of 2-Way Intersection (Corner, and Hallway) After that, we'll figure out the logistics of implementing ceiling/floor openings to allow you to create grand scale rooms if you wish. The beauty of the 4 basic intersections is that you can simply rotate them to change how they connect to any further adjacent rooms.

Control Room Entrance

Returning to the idea of the Drafter being an immovable block once placed, we've tucked it away in a nice little panic room that you can use, so vanilla mobs cant attack you while you're building. Good luck if you piss off some kind of turbo-nuclear-judo champion Enderman though, you're on your own then.

Bunker Entry Chunk

Last little goody I have to tantalize you with is the initial design of the bunker entryway. the idea is that you could basically walk up to a hill-side, slap down the blueprint for the bunker, and it would semi-organically meld itself into there in a very meticulously, designed from scratch kind of way lol

Bunker Entry - Cave Doors

commented

Awesome

commented

Oh, yes, this is fabulous! I love the way you describe things, too. LOL I'm super chuffed about that bunker entrance!

commented

"Chuffed" is UK slang for "Excited", right?

commented

Yup. :) I'm American, but I've been watching a lot of YouTubers from that side of the pond. ๐Ÿ˜†

commented

This is AWESOME! I can't wait! (OK, OK, I can wait, but still) ๐Ÿ˜Ž

commented

Sorry that this has been taking so long. I actually had time to work on the block gui today so it is coming along.

commented

@IamAlathe Who is your favorite YouTuber? Mine is MumboJumbo. He's quite funny, and is a self-proclaimed spoon.

commented

Here are some screen shots showing what I've gotten so far based on Kaojinn's initial drawing. There is a lot of logic to write up but it's progress!

All buttons are disabled unless there is a neighbor that has been built. There is always at least 1 built room.
2016-11-06_16 45 42

Room information (such as name and coordinates) are available on the details page when selecting that button or you can find it on a hover.

2016-11-06_16 50 24

Here is what non-ground floors will look like initially. The only room which can be built right away is over/under the foyer. Once that room is built the rest of the rooms can be built in the same manner as others. You will click on a "+" room and that will take you to the "Details" screen for you to choose the room to build and the requirements for the room.

2016-11-06_17 06 42

commented

Gui's looking good! Seems pretty easy and intuitive so far from a user's standpoint, I think.

commented

@brisingraerowing I love Mumbo!! I really enjoyed watching him learn to do landscaping on Hermitcraft recently, hilarious and really cool to watch someone learn a new thing like that. I really like Xisuma too, love his Minecraft Mythbusting stuff. ๐Ÿ˜„

commented

@kaojinn What texture pack are you using in those screenshots? I like it.

commented

Aah, I use the BDCraft.net Sphax texture pack. really well done, lots of artists creating for it. Theres texture packs available for nearly every major modpack, and individually for most mods too. artists even have a work in progress section to share art assets, and progress on mods they're texturing for.

commented

WOW! This all looks so exciting!

commented

Progress has slowed due to the holidays, as we turn our attention to family stuff, and recharge our proverbial batteries. In the meantime though, were still discussing features, creating rooms and smoothing out the fine details of this particular facet of Prefab :) Whatever you celebrate this season, be it Christmas, Hanukkah, Saturnalia, Festivus, Mr. Hankey, Krampus, Vunter Slaush or some atheist picketing of other people's joy; Happy Non-Denominational Winter Holiday :)

commented

what would be cool would be some "outdoor" rooms - like gardens with rows and water?

commented

It was my original intention for this block to have outside rooms for the modular house. However I think this particular project is pretty dead as I have had no time/ambition to work on it and the GUI was getting overly complicated.

I might get back to this block eventually.

commented

Well, it IS a huge project, it's easy to burn out, and taking a break can cause a lull. I'm glad you found some other bits and bobs to get the juices flowing again. ๐Ÿ˜„ I do hope y'all are able to revive this one, it's a cool idea. But forcing it into your head when your head is not in that space usually just makes a mess. There are some of us that will still be watching if it comes back around. ๐Ÿ˜ธ

commented

I am going to close this issue, while we did a lot of work with this issue we have also added a lot of structures since this issue was opened and we recently added the vanilla structure block to the creative menu to allow admins to create/scan custom structures.