The War Within Hotfixes - January 23, 2025

Enter the Hub of Goblin Ingenuity in Undermine(d) Zone Overview

Patch 11.1.0 PTR - Build 58731

Player Housing Interface API Strings
As initially found by Yuvalal in the Datamining Discord, Blizzard accidentally shipped a file with the 4.4.2 PTR that relates to the upcoming player housing system in Midnight. Note that this does not mean player housing is coming to WoW Classic, Blizzard shares interface files between versions and this file could just as well have accidentally shipped in a future 11.1.5 PTR build.

Also note that even though the file was accidentally added in today's build, its ID is older and implies initial creation during late DF/early TWW development. We don't know how recent its contents are.

The automatically generated Lua file describes various enumerated value types (enums) relating to the player housing system.

  • Editing Modes: Layout and Decoration
  • Layout Mode - Edit rooms, modifying components such as Wall, Floor, Ceiling, Stairs and Pillars.
    • Components can have options such as being able to tag them as a doorway/doorway wall. Doors have 2 sizes, narrow and large.
    • Exterior components are themed, with Human being the only theme mentioned in the file. Exterior components can be filtered by "Any", "Small", "Medium" and "Large".
  • Decor Mode - Place decorations inside and outside of the house, with various models (large and small)
    • There are currently 4 decor themes: "Folk", "Rugged", "Generic" and "Opulent".
    • HousingDecorType mentions being able to decorate floors, walls, ceilings and tabletops

All in all, this file leaves a lot up to interpretation, so feel free to read it for yourself below.

Blizzard announced more details on player housing would be coming early this year, so hopefully we won't have to wait too long to see whether or not these interpretations are correct!

Code:
local PlayerHousingConstants =
{
	Tables =
	{
		{
			Name = "HousingDecorFlags",
			Type = "Enumeration",
			NumValues = 2,
			MinValue = 1,
			MaxValue = 2,
			Fields =
			{
				{ Name = "Exterior", Type = "HousingDecorFlags", EnumValue = 1 },
				{ Name = "Interior", Type = "HousingDecorFlags", EnumValue = 2 },
			},
		},
		{
			Name = "HousingDecorModelType",
			Type = "Enumeration",
			NumValues = 3,
			MinValue = 0,
			MaxValue = 2,
			Fields =
			{
				{ Name = "None", Type = "HousingDecorModelType", EnumValue = 0 },
				{ Name = "M2", Type = "HousingDecorModelType", EnumValue = 1 },
				{ Name = "Wmo", Type = "HousingDecorModelType", EnumValue = 2 },
			},
		},
		{
			Name = "HousingDecorTheme",
			Type = "Enumeration",
			NumValues = 5,
			MinValue = 0,
			MaxValue = 4,
			Fields =
			{
				{ Name = "None", Type = "HousingDecorTheme", EnumValue = 0 },
				{ Name = "Folk", Type = "HousingDecorTheme", EnumValue = 1 },
				{ Name = "Rugged", Type = "HousingDecorTheme", EnumValue = 2 },
				{ Name = "Generic", Type = "HousingDecorTheme", EnumValue = 3 },
				{ Name = "Opulent", Type = "HousingDecorTheme", EnumValue = 4 },
			},
		},
		{
			Name = "HousingDecorType",
			Type = "Enumeration",
			NumValues = 5,
			MinValue = 0,
			MaxValue = 4,
			Fields =
			{
				{ Name = "None", Type = "HousingDecorType", EnumValue = 0 },
				{ Name = "Floor", Type = "HousingDecorType", EnumValue = 1 },
				{ Name = "Wall", Type = "HousingDecorType", EnumValue = 2 },
				{ Name = "Ceiling", Type = "HousingDecorType", EnumValue = 3 },
				{ Name = "Tabletop", Type = "HousingDecorType", EnumValue = 4 },
			},
		},
		{
			Name = "HousingExteriorComponentSize",
			Type = "Enumeration",
			NumValues = 4,
			MinValue = 1,
			MaxValue = 4,
			Fields =
			{
				{ Name = "Any", Type = "HousingExteriorComponentSize", EnumValue = 1 },
				{ Name = "Small", Type = "HousingExteriorComponentSize", EnumValue = 2 },
				{ Name = "Medium", Type = "HousingExteriorComponentSize", EnumValue = 3 },
				{ Name = "Large", Type = "HousingExteriorComponentSize", EnumValue = 4 },
			},
		},
		{
			Name = "HousingExteriorComponentTheme",
			Type = "Enumeration",
			NumValues = 1,
			MinValue = 1,
			MaxValue = 1,
			Fields =
			{
				{ Name = "Human", Type = "HousingExteriorComponentTheme", EnumValue = 1 },
			},
		},
		{
			Name = "HousingPermission",
			Type = "Enumeration",
			NumValues = 8,
			MinValue = 1,
			MaxValue = 128,
			Fields =
			{
				{ Name = "AddDecor", Type = "HousingPermission", EnumValue = 1 },
				{ Name = "ChangeDecorParam", Type = "HousingPermission", EnumValue = 2 },
				{ Name = "EnterDecorEditMode", Type = "HousingPermission", EnumValue = 4 },
				{ Name = "MoveDecor", Type = "HousingPermission", EnumValue = 8 },
				{ Name = "RemoveDecor", Type = "HousingPermission", EnumValue = 16 },
				{ Name = "SaveHouse", Type = "HousingPermission", EnumValue = 32 },
				{ Name = "SelectDecor", Type = "HousingPermission", EnumValue = 64 },
				{ Name = "EditLayout", Type = "HousingPermission", EnumValue = 128 },
			},
		},
		{
			Name = "HousingResult",
			Type = "Enumeration",
			NumValues = 18,
			MinValue = 0,
			MaxValue = 17,
			Fields =
			{
				{ Name = "Success", Type = "HousingResult", EnumValue = 0 },
				{ Name = "DbError", Type = "HousingResult", EnumValue = 1 },
				{ Name = "RpcFailure", Type = "HousingResult", EnumValue = 2 },
				{ Name = "GenericFailure", Type = "HousingResult", EnumValue = 3 },
				{ Name = "LockOperationFailed", Type = "HousingResult", EnumValue = 4 },
				{ Name = "UnlockOperationFailed", Type = "HousingResult", EnumValue = 5 },
				{ Name = "LockedByOtherPlayer", Type = "HousingResult", EnumValue = 6 },
				{ Name = "DecorNotFound", Type = "HousingResult", EnumValue = 7 },
				{ Name = "HouseNotFound", Type = "HousingResult", EnumValue = 8 },
				{ Name = "PermissionDenied", Type = "HousingResult", EnumValue = 9 },
				{ Name = "NotInDecorEditMode", Type = "HousingResult", EnumValue = 10 },
				{ Name = "NotInsideHouse", Type = "HousingResult", EnumValue = 11 },
				{ Name = "ServiceNotAvailable", Type = "HousingResult", EnumValue = 12 },
				{ Name = "RoomNotFound", Type = "HousingResult", EnumValue = 13 },
				{ Name = "RoomUpdateFailed", Type = "HousingResult", EnumValue = 14 },
				{ Name = "NotInLayoutEditMode", Type = "HousingResult", EnumValue = 15 },
				{ Name = "PlotNotFound", Type = "HousingResult", EnumValue = 16 },
				{ Name = "MaxDecorReached", Type = "HousingResult", EnumValue = 17 },
			},
		},
		{
			Name = "HousingRoomComponentDoorType",
			Type = "Enumeration",
			NumValues = 3,
			MinValue = 0,
			MaxValue = 2,
			Fields =
			{
				{ Name = "None", Type = "HousingRoomComponentDoorType", EnumValue = 0 },
				{ Name = "NarrowDoor", Type = "HousingRoomComponentDoorType", EnumValue = 1 },
				{ Name = "LargeDoor", Type = "HousingRoomComponentDoorType", EnumValue = 2 },
			},
		},
		{
			Name = "HousingRoomComponentOptionType",
			Type = "Enumeration",
			NumValues = 3,
			MinValue = 0,
			MaxValue = 2,
			Fields =
			{
				{ Name = "Cosmetic", Type = "HousingRoomComponentOptionType", EnumValue = 0 },
				{ Name = "DoorwayWall", Type = "HousingRoomComponentOptionType", EnumValue = 1 },
				{ Name = "Doorway", Type = "HousingRoomComponentOptionType", EnumValue = 2 },
			},
		},
		{
			Name = "HousingRoomComponentType",
			Type = "Enumeration",
			NumValues = 6,
			MinValue = 0,
			MaxValue = 5,
			Fields =
			{
				{ Name = "None", Type = "HousingRoomComponentType", EnumValue = 0 },
				{ Name = "Wall", Type = "HousingRoomComponentType", EnumValue = 1 },
				{ Name = "Floor", Type = "HousingRoomComponentType", EnumValue = 2 },
				{ Name = "Ceiling", Type = "HousingRoomComponentType", EnumValue = 3 },
				{ Name = "Stairs", Type = "HousingRoomComponentType", EnumValue = 4 },
				{ Name = "Pillar", Type = "HousingRoomComponentType", EnumValue = 5 },
			},
		},
		{
			Name = "HousingRoomFlags",
			Type = "Enumeration",
			NumValues = 2,
			MinValue = 0,
			MaxValue = 1,
			Fields =
			{
				{ Name = "None", Type = "HousingRoomFlags", EnumValue = 0 },
				{ Name = "BaseRoom", Type = "HousingRoomFlags", EnumValue = 1 },
			},
		},
	},
};

APIDocumentation:AddDocumentationTable(PlayerHousingConstants);
This article was originally published in forum thread: Player Housing Interface API Strings started by chaud View original post
Comments 87 Comments
  1. Kilpi's Avatar
    Quote Originally Posted by woofpup View Post
    Geez, if I wanted to play "The Sims", I'd play that.
    Most likely you don't have to participate in housing, so you don't have to give a fuck and no need to post on any thread about a thing that isn't for you and is not taking anything away from you.
  1. DechCJC's Avatar
    Can the people that don't care for this please appreciate that there are many that do?

    I couldn't give a toss about all of the patches that added a new hairstyle, a new race, some random storyline or whatever, yet I'm not gonna kick and cry about how it's taking away from content that I want. Yes, player housing will take a lot of time to implement, but once it's there it's easy to build upon, no pun intended. Know what probably takes just as long as player housing? A raid tier. Know what becomes mostly obsolete after a single patch? A raid tier. Know who doesn't give a toss about raiding? Most of us. Not saying that we shouldn't have raids, but there's a LOT of stuff that I think many of us would trade them out for these days. By the looks of things, it doesn't seem like we're "trading" housing for anything, they've just been working on it in the background for a while now.
  1. doledippers's Avatar
    i know this is just a handful of datamined strings, but this gives me some optimism for the feature. it sounds like you'll be able to customize things like stairs, walls, ceilings, etc, and also have an outdoor space as well. the bit about an edit mode is really great too. like i said, incredibly early datamined strings but this seems promising
  1. Zardas's Avatar
    Quote Originally Posted by Chickat View Post
    Sounds like Swtor housing to me. A house has say 200 hooks. Each table has 1-4 hooks that can hold an object. Objects can scale from like 25% to 300% normal size and be rotated, but has to go on a hook. Its a decent system but no where near as in depth as some other mmo player housing systems.
    You can't scale objects in swtor.
  1. Bladesyphon's Avatar
    Quote Originally Posted by BraveNewWorld View Post
    Have we played the same FF14? The entire engine behind housing is complete garbage, you need to use glitches to accomplish anything worthwhile. Let's also not talk about the god awful lottery system, right?

    Which is hilarious considering there is zero end-game in FF14, all they got are these "casual systems" and they can't even get those right.
    I was thinking the same thing - XIV's housing system is pretty bare bones. It's pretty, yes, but you can't do anything extrodinary with it. Compare that to something like Guild War 2, or even New Genesis, and it really makes XIV look like little more than a doll house simulator.

    The fact that a player remade Naxxramas in Guild Wars 2, or that you can make literal cities in New Genesis' Creative space, really makes me question why anyone would say XIV's is one of the top of the line housing systems, when it's really not.

    Honestly, if WoW's housing is even the slightest bit like Guild Wars 2's as a bare minimum, we're all going to be in for a good time. The pipe dream would be to have something like New Genesis' Creative Space but ah... That's just not even a possibility with WoW's engine, as awesome as it would be.
  1. Illuminance's Avatar
    Not enough information to tell from these API strings, but any mention of scaling/rotating is missing. For good housing decoration systems, you need to be able to modify object size and orientation. We'll just have to wait and see what's implemented.

    - - - Updated - - -

    Quote Originally Posted by Bladesyphon View Post
    I was thinking the same thing - XIV's housing system is pretty bare bones. It's pretty, yes, but you can't do anything extrodinary with it. Compare that to something like Guild War 2, or even New Genesis, and it really makes XIV look like little more than a doll house simulator.

    The fact that a player remade Naxxramas in Guild Wars 2, or that you can make literal cities in New Genesis' Creative space, really makes me question why anyone would say XIV's is one of the top of the line housing systems, when it's really not.

    Honestly, if WoW's housing is even the slightest bit like Guild Wars 2's as a bare minimum, we're all going to be in for a good time. The pipe dream would be to have something like New Genesis' Creative Space but ah... That's just not even a possibility with WoW's engine, as awesome as it would be.
    Agreed. "FFXIV housing is the best" has to come from people who have played very few games with housing and/or is a failure of imagination. Not to mention that almost everyone I know, myself included, can't even get a proper housing plot in FFXIV at the moment.

    Same thing with people saying housing will be a waste of time in WoW - many people making that complaint haven't actually seen how fun it can be in other games (or maybe they don't know how to have fun at all).
  1. Alanar's Avatar
    Quote Originally Posted by Reive View Post
    i hope it's not really like swtor. being able to place items only in certain spots sucks
    Its exactly like I am expecting it tbh.

    Its garrisons 2.0, with slightly more options, but I will defo not be loaded with options like some are suggesting. Its blizz afterall.
  1. Snakepit's Avatar
    I totally don't care about housing, probably will engage to some extent out of curiosity, but there are a million other things I'd like to see first before this. At the same time I realize there are LOADS of people who are very eagerly anticipating that feature and are gonna enjoy it, so I'm totally fine with that and happy for them. But some people who criticize it are receiving answers like "if you don't want it, it does not affect you, so why do you care, doesn't take anything away from you" - that's not quite true.

    Every game has a X budget, spread between teams. Yes, housing and hero talents are not the same dev teams for sure, but if 2% of budget X are allocated to team "Housing", it means 2% of budget X are not being allocated to team "Another feature". And if a feature ends up being a failure, that's a waste of development and budget that could've gone elsewhere. Now, I do believe housing will be a successful feature (if implemented correctly, of course), but to say "it does not concern you or affect you in any way if we have it in game" is not quite objectively true.
  1. Nymrohd's Avatar
    People who use FF14 housing as any sort of example of good implementation are absolutely clueless. Like, say ESO or Wildstar. Go for something like Everquest 2, Ultima Online or even Archeage. Not FF14 . . .
  1. Azerothian Explorer's Avatar
    Curious to know how/if customization is unlocked. Racial aesthetics should be tied to their races' zone's quest/exploration achievements. Same for the location where you can place your house.
  1. Zodiark's Avatar
    Quote Originally Posted by Kilpi View Post
    Most likely you don't have to participate in housing, so you don't have to give a fuck and no need to post on any thread about a thing that isn't for you and is not taking anything away from you.
    I agree with your response. We need to help foster a future where pointless gripes are discouraged, not encouraged. I fully believe that a system like player housing would be handled by a team outside of the main development of the game and it's features moving forward. So like you said, it seems like a thing that would only benefit those that are interested in it and not impact the players who aren't so there is no need to complain.

    From anecdotal evidence talking to actual people in real life these days it seems a common theme that people don't actively listen or read/comprehend things very well. Many people in general only hear/read key words while completely discarding the rest of the statement/point in question. Maybe this is in part due to society bombarding us with so much information and data that we have learned / acquired the skill of skimming or selectively listening to things. The problem with this is that it completely ignores the context of the overall statement or post.

    - - - Updated - - -

    Quote Originally Posted by Nymrohd View Post
    People who use FF14 housing as any sort of example of good implementation are absolutely clueless. Like, say ESO or Wildstar. Go for something like Everquest 2, Ultima Online or even Archeage. Not FF14 . . .
    I have often said that EverQuest 2's housing should be the model for almost any game's version of player housing. It was built seamlessly into the background of the game as it was originally built. You walked into any section of a city and could click on the door of one of those random buildings you see all over and select which resident/address that you wanted to visit. Furniture and doodads were more or less easily craftable by anyone and sold on the auction house. Of course more rare items were able to be obtained from different sources like bosses and raids/dungeons, etc but the basic stuff was easy to make/acquire and decorating was a cinch. Just click the item like a lamp and place it in your pad. This is one of the only games with player housing that I actually got into because of it's ease of access.
  1. Biomega's Avatar
    Sounds very much like SWTOR.

    Could be worse. Housing is what keeps SWTOR alive, I swear ;P

    It's not FULLY customizable, but if SWTOR is anything to go by then it'll be at least alright. WoW is 20+ years old, people, you can't expect dynamic free placement with all the trimmings. It's a minor miracle they are doing even this much.
  1. Reive's Avatar
    Quote Originally Posted by Alanar View Post
    Its exactly like I am expecting it tbh.

    Its garrisons 2.0, with slightly more options, but I will defo not be loaded with options like some are suggesting. Its blizz afterall.
    i mean, the strings suggest you can change the layout of the house. that's a bit more than "garrisons 2.0" lol
  1. iindigo's Avatar
    Lots of poo-pooing in the comments but I think that if this is done reasonably well, it’ll have appeal similar to though not quite as wide as that of transmog (which itself got a lot of poo-pooing on the official WoW forums).

    It’s important to remember that players who participate in any WoW-related forum are a highly biased sample that make it look like the playerbase is dominated by hardcore raiders and high key runners who don’t care about anything that’s not competitive, but plenty of people come to WoW for other things, even if it’s just using WoW as a cozy familiar comfort game after a long day at work when people don’t have energy left for much else. Stuff like housing is prime content for this crowd.


    Quote Originally Posted by Snes View Post
    I dunno how anyone can look at the pathetic drip-feed of character customization options and believe that they will do anything more than the bare minimum for housing.
    I wouldn’t be surprised if housing actually gets updates that are both deeper and more frequent than character customization for the simple reason that they’re a heck of a lot simpler: no rigging work, no clipping or animation issues, more ability to share assets between housing styles. Even adding new styles should be simple in theory based on the architecture this leak is presenting… just model the various components of the house to fit the framework and you’re golden. For some things like walls they can probably even get by with slapping a different texture on a model that’s shared between all styles.
  1. fatgunn's Avatar
    Quote Originally Posted by Biomega View Post
    Sounds very much like SWTOR.

    Could be worse. Housing is what keeps SWTOR alive, I swear ;P

    It's not FULLY customizable, but if SWTOR is anything to go by then it'll be at least alright. WoW is 20+ years old, people, you can't expect dynamic free placement with all the trimmings. It's a minor miracle they are doing even this much.
    Quote Originally Posted by Chickat View Post
    Sounds like Swtor housing to me. A house has say 200 hooks. Each table has 1-4 hooks that can hold an object. Objects can scale from like 25% to 300% normal size and be rotated, but has to go on a hook. Its a decent system but no where near as in depth as some other mmo player housing systems.
    It definitely looks Swtor-like with some extra options to customize the style/layout of the actual building itself. While I would have preferred free placement, this is what I honestly expected from the beginning. And even within Swtor's restrictions you can do a lot of finagling to get good results.


    Quote Originally Posted by Stickiler View Post
    Honestly, as long as my house doesn't vanish in to nothingness just because I took an extended break, anything else is a bloody bonus.
    OMFG yes. Housing being limited and having to pay rent to keep it is the dumbest thing ever.
  1. Eapoe's Avatar
    I wonder if instanced content will allow elite decorations or just recolors of existing decorations. I know the string only mentioned Human, but hopefully it’s not a garrison ally vs horde theme, and we get themes for every race, and not have it be restricted by race. Think a NE hunter with a gnome themed electrical whirly-gig style going on.

    Would also be nice if we could have a room themed for our class. Hunter having a stable room with various pets roaming around. Paladins with a customizable statue representing Turalyon, Uther, or other paladins. Mages with floating tables, books, and other knickknacks. Shamans with various elementals playing/fighting in corners of the room. Random stuff.
    Not saying we should get all of this stuff, but could be some nice thematics available if Blizz deep dives into it.

    Oh well, will have to wait and see.
  1. RobertMugabe's Avatar
    Quote Originally Posted by Altmer View Post
    I don't want to sound negative, but I think housing system in WoW is going to suck a lot.
    Nothing beats ESO and FF14 housing system in terms of decoration and tools to do it. Also to keep in mind that ESO use these decoration to make towns, cities and NPC zones. WoW NPC decorations from Vanilla all the way to Dragonflight, sucks.
    Yeah I think everyone expects it to be rather simple and limited, but that's fine IMO.
  1. Alanar's Avatar
    Quote Originally Posted by Reive View Post
    i mean, the strings suggest you can change the layout of the house. that's a bit more than "garrisons 2.0" lol
    Right with "upgrades" lol
  1. Jastall's Avatar
    Quote Originally Posted by Chickat View Post
    Sounds like Swtor housing to me. A house has say 200 hooks. Each table has 1-4 hooks that can hold an object. Objects can scale from like 25% to 300% normal size and be rotated, but has to go on a hook. Its a decent system but no where near as in depth as some other mmo player housing systems.
    Considering the engine, I also think it's probably to function this way. WoW isn't really built for more in-depth physics interactions like free placement of items, at least I quite doubt it. Perhaps the devs cooked hard and I'll be impressed but if anything I think they might win players over with an extensive breadth of customization, rather than depth of it.
  1. Val the Moofia Boss's Avatar
    Quote Originally Posted by Altmer View Post
    Nothing beats ESO and FF14 housing system in terms of decoration and tools to do it.
    Lego Universe and Everquest Next gave you the most granular building control. Lego Universe and Peria Chronicles allowed you to do some programming and create elevators or minigames and such. Wildstar allowed you to resize chairs and tables and such.

    Trying to float up housing items in FF14 is an exercise in frustration.

    - - - Updated - - -

    I really hope that there are many different cultural and subcultural variations in housing walls and buildings. A mainland Pandaren 1, 2, and 3 set (much like how in FF14, there were multiple different sets for Hingashi housing roofs and walls). A Tushui Pandaren 1, 2, and 3 set. 3 variations of Wandering Isle housing walls and roofs. Etc. And in different sizes too. Commoner Stormwind house with 3 variations and in multiple sizes, and then noble Stormwind human kits with variations and different sizes. A Mulgore Tauren tent kit and a Mulgore Tauren log house kit. Etc.

    - - - Updated - - -

    Quote Originally Posted by Bladesyphon View Post
    The fact that a player remade Naxxramas in Guild Wars 2
    Oh wow, I didn't know you could build anything in GW2. I thought you just got that viking Kodan longhouse and could only place some decorations inside.


    Quote Originally Posted by Bladesyphon View Post
    really makes me question why anyone would say XIV's is one of the top of the line housing systems, when it's really not.
    Probably has to do with how much exposure a game gets. Second Life, SWG, Free Realms, LU, EQN, etc, had better housing, but retail WoW babies don't know anything outside of the frame of reference of WoW, or maybe FF14 since that is the biggest not-WoW MMO today.

Site Navigation