Share this project

Done

Share this project

Done
Scavenge. Build. Fight. Survive. Introducing ROAM, an online co-op action game set in a procedurally generated world.
Scavenge. Build. Fight. Survive. Introducing ROAM, an online co-op action game set in a procedurally generated world.
Created by
3,526 backers pledged $102,518 to help bring this project to life.

Structural Integrity - Modular base building update v2.0

Posted by ROAM (Creator)
36 likes

Ive been working the last couple of days on the modular base building system. Things are going great.

I am really starting to see the potential of this system.

 I have been trying to hammer out the rules for the basebuilding system. Right now I have it so each "platform" knows its neighbor. This is important because they need to feed eachother information.

The rule set I am going with is something along the lines of "You are only as strong as the structure underneath". By creating a system like this it will, hopefully, minimize unrealistic base design. Structures must be grounded and each piece of the structure has a strength value that will influence the build process.

 The above image is a debug view of structural integrity. Green means strong, yellow medium, red means weak. Weak structures will not be able to be built upon unless the foundation is built more solid. This is done by building a vertical wall underneath or upgrading the horizontal platform to have beams that will ground the platform.

Structures built on the ground level, structures with beams, or structures with multiple vertical connection points underneath it will have the highest stability. 

Next on the agenda: Destroy the base!

If beams and key structural integrity points are left unprotected and they happen to be destroyed- most, if not all, supported structures will collapse.

Lokai, chris dickson, and 34 more people like this update.

Comments

Only backers can post comments. Log In
    1. Missing avatar

      Tim Julkowski on

      Thanks a bunch for taking the time to explain your design decision(s) on this. I figured you had a good reason for it. Nothing else you've done to this point lacks reason or purpose. I completely understand the need to keep things less busy for multi-play support. You've always seemed to keep gameplay in focus (from the start) and its much appreciated.

      Also, thank you for taking the time to share the videos and updates. I know for a fact that there are many like me who really enjoy seeing projects like this take shape over time. We may not always comment, but we're always giddy to see what's new. Anyway, when it comes time to do so, we'll be there to put it through its paces and get you all the feedback you can handle! Best of luck with your drive to the next phase!

    2. euansmith
      Superbacker
      on

      Looking good.

    3. ROAM Creator on

      And to further explain why I am creating a system like this...

      A question could be asked as to why I am not just using the engines built in physics to calculate the integrity. In a game like this where base building is a large part of the game and multiplayer is a supported aspect of gameplay, having structures work off engine physics would be a very bad idea.

      1- Sharing physics information over a network is tricky. It isnt impossible but I would much rather work out a solution that very loosely simulates fake physics rather than have to update each player on the status of specific structure frames. Take in to account also that players will most likely be building massive structures with many different pieces, that is a lot of information to be sent back and forth.

      2 - Creating a rule set for the structures with engine physics would be much harder. There are those "random" aspects of physics that would have to be accounted for. Working out all those kinks would be time consuming.

      If this were ONLY a single player game it would be much more feasible, but I must account for networked gameplay as well. Creating 2 different systems for if the player is online or offline would, again, be too time consuming.

      This is not saying engine physics will not be in the game. It is saying that engine physics will not be a key point in game play and will mostly be client driven.

    4. ROAM Creator on

      Though, I do like the idea of cables supporting from above. I will see if that can fit somewhere in the system in a meaningful way

    5. ROAM Creator on

      @Tim - The system works close to how you describe but I will go into a bit more detail as to why the red exists and the importance of beams.

      Starting with beams - After you choose a frame to build support beams underneath it will shoot the beams all the way to the ground (or to the next "row" of frames below) and upgrade that frame to a solid foundation, green. The beams themselves will have "health" and if those beams are destroyed it will cause structures above to lose durability, if not be destroyed. The design reason behind this is to give the other modular structure, wall frame, a reason to exist. A player floating in the sky on a platform would be almost untouchable to any melee damaging npc. To counter this, they would instead try to attack the beams, making the wall frame ideal for defending those key structural points.

      Why red exists- The red points may not make sense in real life as far as physics, but they exist simply for the ability to build support beams underneath and create a "bridge". If we could only build support under yellow frames, we would end up with a solid row of all support beams.

      By allowing red to exist, players will have the ability to make a bridge that is suspended in the air by cleverly placed support beams. Also if red did not exist, the "bridge" created would only be able to be built 2 frames wide. Not only would they be able to be built 2 frames wide, but you would have to build from one side and then to the other to create the bridge. That didnt seem worth the trouble for the player, so red exists. With red existing players have the possibility to create a "bridge" that spans a maximum of 4 frame lengths with no other support than a beam connection on each end.

      The other solution, if red were to be taken out, would be to allow the ability to place frames that automatically come with beams. There are a few reasons why I opted out of that method. 1- Players should have as much control as possible when creating and designing their base layouts given certain rules. 2 - It would be more work to distinguish in code when and where to place these beams. Instead, I leave that up to the player. 3 - The idea I am trying to create from this modular system is that, with a simple frame, amazing structures can be made. The frame can morph/change into a window, doorway, ramp, vertical or horizontal (more to come) and the player chooses where and why they decided to place that structure there.

    6. Missing avatar

      Tim Julkowski on

      This is all kinds of cool, Ryan. As always, the attention to detail is exciting!

      You may have reason to require the red unit/cube/platform, but I'd like to suggest that the yellow/medium unit become the limit of horizontal building (making red impossible/redundant) and that they appear with diagonal (45 degree) supports (either above or below) when there are two or less connecting edges. As long as each yellow unit is attached to a green on at least one edge/face, yellow may border another yellow, making the maximum bridge/platform span 2 units. Much like you're already planning, spans longer 2 will require support from underneath (contact with the ground - green) or cabling/support from above.

    7. Brendan on

      Thank you for continuing to share progress. It has been great to get a glimpse into the build and understanding why and how.

      Great!

    8. Zyggy on

      This is actually damn good, my faith has been restoring over the last few updates.

      As one of your harshest critics, you are doing very well, I doff my hat to you sirs.

    9. Lars H on

      I am very glad about the frequency and quality of your updates. Keep on going this good work!
      Can't wait to get my hand on the game.

    10. Missing avatar

      Matthew DeMino on

      Every time you update, things look better and better. I really love watching this game develop. I wish I was already playing it, but watching these updates makes me more excited for the final polished product. Great job!

    11. Edwin F. Lionheart on

      First? First!

      seems awesome dude, take your time, i haven't finish playing my Destiny yet, so hopefully when i got bored out of it, an alpha would soon be ready!

      again, thanks for the awesome work!

      base destroying FTW