Dan(Tasanar)

Moderator
As the title says "trying to make houses spawn PUBLIC as default"

I looked in BaseHouse.cs, HousePlacement.cs and Deeds.cs

Can not seem to find it anywhere!!
 
I think it would be far more easier to just do that within housedeed...

file ServUO/Scripts/Multis/Deeds.cs
Line 168

BaseHouse house = this.GetHouse(from);
house.MoveToWorld(center, from.Map);
house.Public = true;
this.Delete();
 
I think you'll need to make the same change in HousePlacementTool.cs if you went with Boldunms method, unless you aren't using custom houses.
 
Last edited:
$0.02

BaseHouse constructor;

C#:
        public BaseHouse(int multiID, Mobile owner, int MaxLockDown, int MaxSecure)
            : base(multiID)
        {
            m_AllHouses.Add(this);

            this.m_Public = true; // <---

            this.m_LastRefreshed = DateTime.UtcNow;

            this.m_BuiltOn = DateTime.UtcNow;
            this.m_LastTraded = DateTime.MinValue;

            this.m_Doors = new ArrayList();
            this.m_LockDowns = new ArrayList();
            this.m_Secures = new ArrayList();
            this.m_Addons = new ArrayList();

            this.m_CoOwners = new ArrayList();
            this.m_Friends = new ArrayList();
            this.m_Bans = new ArrayList();
            this.m_Access = new ArrayList();

            this.m_VendorRentalContracts = new ArrayList();
            this.m_InternalizedVendors = new ArrayList();

            this.m_Owner = owner;

            this.m_MaxLockDowns = MaxLockDown;
            this.m_MaxSecures = MaxSecure;

            this.m_RelativeBanLocation = this.BaseBanLocation;

            this.UpdateRegion();

            if (owner != null)
            {
                List<BaseHouse> list = null;
                m_Table.TryGetValue(owner, out list);

                if (list == null)
                    m_Table[owner] = list = new List<BaseHouse>();

                list.Add(this);
            }

            this.Movable = false;
        }

If you want to reset all houses that are currently in-game, use this command:

[global set public true where basehouse
 
The way that Voxpire suggested would be the way I would go if I for some reason didn't want to make the inline change I had originally suggested.
 
Back