1. The problem I'd like to talk about is the situation with rock bases and the strategies (siege towers) that evolved to make these bases raidable. On one hand, every Rust player wants their base to be secure as possible, and on the other every raider wants at least some chance to be able to raid any given base. If you build on a rock, you are likely going to log in at some point and see twig siege towers near your base that someone used as a diving board to attempt a break in. Siege towers are an eyesore that really don't make sense in Rust (twig ladders on the other hand would), but they stem from creative players who will find a way to raid your base. So how can we allow building on rocks and provide a way for raiders to attempt robbery without building these unrealistic skyscrapers?

    I don't think saying "you cannot build a base on a rock" is a great solution.

    There are a few mods that can limit the max height of your structure, but they do not make any distinction as to what kind of material you are building with. There are also a couple mods that can restrict the types of surfaces you can place a foundation on, but it is an all-or-nothing rule. While they are useful in their own right, the limits are very terse and inflexible. I think there is a more creative way of solving this problem.

    I suggest building height should be limited by the surface you are building on as well as the materials you are building with.


    For example, if you are building on a rock, chances are you do not have quarrying tools, so your foundation cannot be very stable, and as a result your structure can only be a few floors high. If you are building on soil you are able to make a more stable foundation (realistically, right?), so your structure can remain stable while also being significantly more tall. It means that bases built on a rock cannot soar high into the sky, and it also means siege towers made of twig will have their heights limited (since a twig structure would likely collapse under its own weight). The raider would have to build a smaller tower out of a more sturdy foundation (e.g., wood instead of twig), and the rock-builder would have to find a better strategy of protecting their base rather than just putting it out of reach. It makes the smaller siege tower a bit more resource hungry, but it does not need to be nearly as tall since the rock base will also have restrictions reducing the eyesore they create.

    A few lines of pseudo-code should help clarify this (note the numbers here are totally debatable):
    • If buildingMaterial == 'twig' then structureMaxHeight = 3
    • If buildingMaterial == 'wood' then structureMaxHeight = 6
    • If worldSurface == 'rock' then structureMaxHeight = 3
    • If worldSurface == 'soil' then structureMaxHeight = 10
    Given the types of similar mods that are out there already, it sounds like this type of mod is possible. I'm not sure the amount of time it would take someone to develop a mod like this, but given FacePunch is working on other things, I think something is needed as a temporary solution until Rust's philosophy on structures/building is a bit more mature.

    This turned into a much larger wall of text than I had planned, but if you've made it this far, thanks for reading!
     
  2. Okay.
    But if player upgrade his home, what we should do with height? Destroy buildings?
     
  3. I'm not sure if I follow, but if you tried to upgrade your building - say you have a 3 floor building, all twig, and you try to upgrade the top floor to stone/metal (while keeping everything below it twig), the building part could either disappear (like in the horizontal build restriction mod) or return a message saying cannot be deployed because of "custom message."

    Or (this wouldn't be ideal) something like a check to see what material the foundation unit is made of and restrict upgrades to units above it until the foundation is upgraded. If it were set up that way, each floor of walls would have to be upgraded in order from bottom to top (so you wouldn't have wood holding up armored plates, or twigs holding up stones).

    Sorry if I misunderstood.
     
  4. It can make some lags, but it's possible. I like the idea with:
    mb will try it later
     
  5. The problem with something like this right now is that the only hook available to work with for something like this is OnEntityBuilt and we have no way of tracking a change of grade. And when you start building everything is twig. It would be possible to destroy the placed buildingblock when reaching a certain height and checking everything underneath it and saying "If you want to build higher your building needs to be atleast made of Wood/Stone/Metal" or something.
     
  6. Thanks for the input guys.