Request for advice

    Dr. Whammy

    Executive Constructologist of the United Star Axis
    Joined
    Jul 22, 2014
    Messages
    1,793
    Reaction score
    1,735
    • Thinking Positive
    • Likeable Gold
    • Legacy Citizen 9
    Hi everyone,

    By now, some of you may have become familiar with my builds. I appreciate all the positive feedback I've received but I've hit a bit of a snag recently and would like some advice from the StarMade Community.

    So far, most of my building has been in a largely unaltered single player environment. I've experimented with nearly every type of system and play style while maintaining my own aesthetic style and come up with a few thing that I'm really proud of.

    Unfortunately, I'm having trouble bringing finding a multiplayer server that is 'receptive' to my build/play style; which is to operate a one-man faction, 'terraform' planets and build cities on them. In my experience, many servers don't seem to like when you build on planets; which is frustrating since I build some really nice planetary bases.
    Maximus prime Construction2.jpg Industry.jpg
    After a particularly irritating incident where I was told to dismantle my city and abandon my planet for "causing too much lag" I started building a station instead. That station was the foundation for my Command System; a mobile and modular starbase big enough to carry my fleet of small ships and all my cargo yet small enough (or so I thought) to not cause too many server problems.
    Outpost2.jpg
    This plan failed when I started getting "server is under heavy load" messages immediately after logging on.

    Now I'm sure you're asking yourselves; Well, gee Dr. Whammy, why do you need such a big and complicated base? Why not just build a regular station and be done with it? The short answer is; survival. If I'm on a planet, I can build bunkers, tunnels and all sorts of crazy defenses and escape routes to survive and even repel an attack from pirates or goofball capital-ship-flying players who want to be a pain in the butt while I'm trying to build (If I had a nickel for every time someone randomly fired at my base or mined resources in my system, I could buy you a copy of this game...). Most stations are too small to allow this style of defense and, consequently offer little in the way of planetary environements. When properly set up, my Command System is arguably the best of all worlds. It allows for home base protection, the attack power of a small capital ship, strong defense and the ability to totally (not to mention, quickly) relocate my faction in the event of an unwinnable war or depletion of local resources. It's also big enough to create nice looking planetary environments inside of it.


    Why does this game seem to be so biased against "world builders" (as I like to call them)? Is such a concept simply too demanding for most servers? I should think not, since everyone seems to be flying capital ships everywhere I go. Is there any way I can work around this issue without abandoning the entire basis for my play style and burning up my time building everything from scratch *again*? I've pretty much halted production on everything because of this.

    Edit: Another thing that drives me nuts; why do so many servers have a "faction must contain at least 3 players" rule?
     
    • Like
    Reactions: Valck
    Joined
    Jun 23, 2013
    Messages
    65
    Reaction score
    12
    • Legacy Citizen 2
    • Purchased!
    That station, what are its dimensions? Doesn't seem large enough to render the server unplayable really, unless the machine server's hosted at is crap.
    Planets on the other hand are major lag zones, especially if you have ships landed and not docked on them. If you want to inhabit a large lag zone, avoid collisions. The servers can barely handle planets as they are anyway. If you really insist on planetary bases i'd suggest you stick to single-player or a very small server (2-3 people at maximum, not the big popular ones, these always seem to be on fire with planets around). Given your playstyle you shouldn't mind the lack of people around, and still can interact with someone when they come online.
     

    Dr. Whammy

    Executive Constructologist of the United Star Axis
    Joined
    Jul 22, 2014
    Messages
    1,793
    Reaction score
    1,735
    • Thinking Positive
    • Likeable Gold
    • Legacy Citizen 9
    Thanks Firrion,

    The station (it's actually a ship that looks like a station) has an average diameter of 311 meters (without docking pylons) and is 380 meters tall. It has a current combined mass of just under 95,000. I don't think size is the issue though. I think it's because I dock to an "anchor" station and have modular components. The "anchor station" is a large skeletal frame with a shipyard and factories. My Command System docks around this station in such a way that that the entire station is physically enclosed within the ship. The docking pylons jutting out from the sides are part of a large 45 degree offset structure. I don't see any collisions other than a few older model turrets and most of the turrets I build these days have 360 degree clearance on both vertical and horizontal axes.


    I've started using this style of station building to compensate for my inability to use planets. I'm willing to entertain the possibility that the server I'm on now has weak specs but I don't want to keep running into this problem everywhere I go. Building this stuff is very time consuming and it sure as hell isn't easy.

    Can you recommend some reliable servers that have fair/friendly admins? Also, a larger player count doesn't bother me. I've actually had some fun experiences in the multiplayer world. After all, why join a sever just to play alone?
     

    Reilly Reese

    #1 Top Forum Poster & Raiben Jackpot Winner
    Joined
    Oct 13, 2013
    Messages
    5,140
    Reaction score
    1,365
    • Legacy Citizen 8
    • Thinking Positive
    • Purchased!
    Thanks Firrion,

    The station (it's actually a ship that looks like a station) has an average diameter of 311 meters (without docking pylons) and is 380 meters tall. It has a current combined mass of just under 95,000. I don't think size is the issue though. I think it's because I dock to an "anchor" station and have modular components. The "anchor station" is a large skeletal frame with a shipyard and factories. My Command System docks around this station in such a way that that the entire station is physically enclosed within the ship. The docking pylons jutting out from the sides are part of a large 45 degree offset structure. I don't see any collisions other than a few older model turrets and most of the turrets I build these days have 360 degree clearance on both vertical and horizontal axes.


    I've started using this style of station building to compensate for my inability to use planets. I'm willing to entertain the possibility that the server I'm on now has weak specs but I don't want to keep running into this problem everywhere I go. Building this stuff is very time consuming and it sure as hell isn't easy.

    Can you recommend some reliable servers that have fair/friendly admins? Also, a larger player count doesn't bother me. I've actually had some fun experiences in the multiplayer world. After all, why join a sever just to play alone?
    The lag is caused because your "ship" is within the stations "box volume" If you docked the ship above the station where no part of the ship was within the box diameter of the station there would be no lag.


    The more than 3 people in a faction rule is meant to prevent one man factions filling up the faction list.

    I unfortunately can't think of any servers friendly to planetary bases one way you could by pass this though is to possibly create your own "planet" but that isn't really a good replacement for an actual planet.
     

    Winterhome

    Way gayer than originally thought.
    Joined
    Jun 29, 2013
    Messages
    1,929
    Reaction score
    636
    Thanks Firrion,

    The station (it's actually a ship that looks like a station) has an average diameter of 311 meters (without docking pylons) and is 380 meters tall. It has a current combined mass of just under 95,000. I don't think size is the issue though. I think it's because I dock to an "anchor" station and have modular components. The "anchor station" is a large skeletal frame with a shipyard and factories. My Command System docks around this station in such a way that that the entire station is physically enclosed within the ship. The docking pylons jutting out from the sides are part of a large 45 degree offset structure. I don't see any collisions other than a few older model turrets and most of the turrets I build these days have 360 degree clearance on both vertical and horizontal axes.


    I've started using this style of station building to compensate for my inability to use planets. I'm willing to entertain the possibility that the server I'm on now has weak specs but I don't want to keep running into this problem everywhere I go. Building this stuff is very time consuming and it sure as hell isn't easy.

    Can you recommend some reliable servers that have fair/friendly admins? Also, a larger player count doesn't bother me. I've actually had some fun experiences in the multiplayer world. After all, why join a sever just to play alone?
    The lag comes from having large amounts of entities inside of eachothers' bounding boxes. If the core anchor with factories is as large as the docked object, you're doubling the number of collision checks the game runs constantly right off the bat, and that multiplies for everything that's docked to anything near the station. The lag spikes come whenever anything that isn't nailed down is in the station's collision boundaries - so, docking, undocking, etc.

    And no, you can't solve that by docking dockable docking arms that you then dock your ships to, because the station's collision boundaries are for some really stupid reason extended to include docked entities as well (as in the entire collision check box expands).
     
    Joined
    Jun 23, 2013
    Messages
    65
    Reaction score
    12
    • Legacy Citizen 2
    • Purchased!
    ^What they said.
    Also, always try to build it in the center of the sector. If it overlaps into a neighbouring one, that too causes lag. Server state loading/saving kinda dislikes that.

    You're out of luck there, i stick to my local server, barely holds three of us online. Waiting for serious optimizations/proper planets, then i imagine i'll take the same approach as you :D
     
    • Like
    Reactions: NeonSturm

    Dr. Whammy

    Executive Constructologist of the United Star Axis
    Joined
    Jul 22, 2014
    Messages
    1,793
    Reaction score
    1,735
    • Thinking Positive
    • Likeable Gold
    • Legacy Citizen 9
    Well... crap baskets...

    So what you're saying is that with regard to multiplayer, I've been building outside of the current capabilities of the game. With all these star destroyers and enterprises flying around, figured someone would eventually hit some kind of limit with regard to builds but I never imagined it would be like this.

    If what you guys are saying is true, *literally* everything over 5000 mass that I've built in the past 2 years is now unusable in multiplayer.

    Silly question; wouldn't it make more sense to turn off collision checks on fix-docked entities until they attempt to dock/undock? Why even have these checks constantly running for anything other than turrets in the first place?

    As far as the bounding box issue; has the dev team ever stated why they can't just limit the box to the dimensions of the parent object? My base is literally a rectangle, inside a rectangular dock, in a giant ship. It's really not that complex a concept.
     
    Joined
    Jun 23, 2013
    Messages
    65
    Reaction score
    12
    • Legacy Citizen 2
    • Purchased!
    Well you didn't literally crash any servers... right? Try single-player with that ship, if "server under heavy load" keeps popping up, yeah, you should build less modular stuff.


    Silly question; wouldn't it make more sense to turn off collision checks on fix-docked entities until they attempt to dock/undock? Why even have these checks constantly running for anything other than turrets in the first place?
    Because they're entities like any other, no collision doesn't make sense if they're not docked. And while they're docked there's a collision check so you can't build something through said docked thing. And then undock it, causing a major lagfest.
    As for the limiting box dimensions; it would severely limit creativity, which is something Schine is extremely opposed to. They like it when we're building giant pink unicorns and such.
     

    Dr. Whammy

    Executive Constructologist of the United Star Axis
    Joined
    Jul 22, 2014
    Messages
    1,793
    Reaction score
    1,735
    • Thinking Positive
    • Likeable Gold
    • Legacy Citizen 9
    Well you didn't literally crash any servers... right? Try single-player with that ship, if "server under heavy load" keeps popping up, yeah, you should build less modular stuff.

    Because they're entities like any other, no collision doesn't make sense if they're not docked. And while they're docked there's a collision check so you can't build something through said docked thing. And then undock it, causing a major lagfest.
    As for the limiting box dimensions; it would severely limit creativity, which is something Schine is extremely opposed to. They like it when we're building giant pink unicorns and such.
    Crash servers? Actually... yeah. I think I did; several times. Last time, the player count was 5 including myself. I've not noticed that load error popping up on my machine in single player. Then again, I'm running a 4Ghz core i7 with 16 gigs of ram and a GTX 760.

    What you say makes perfect sense. Unfortunately, I no longer have the time/patience to rebuild everything from scratch, nor do I have any interest in mining/crafting all the resources needed to become something other than target practice again. This sucks; If this continues to be an issue, I will have no choice but to abstain from multiplayer entirely.

    Regarding collision checks: What about doing one initial collision check right after entity load, followed by a "docking space" collison check to prevent overlap docking and a "local" collision check as you place a block to prevent overlap building? Wouldn't these "as needed" checks be better/easier than constantly overloading the server?
     
    Joined
    Jun 23, 2013
    Messages
    65
    Reaction score
    12
    • Legacy Citizen 2
    • Purchased!
    If that's the case, can't help it. You tried creative? Survival really isn't what StarMade's strong at. Not yet, at least, but that might change drastically in the next 6 months.

    Entities do not need to load often, whereas you need to perform a collision check every time an object changes position, no matter how small a change. Ships move around a lot (unless docked but still there's building which may count as well) which makes these checks necessary in very tiny time intervals.
    Now, i don't know the details of the game's code, but there's obviously room for improvement. I'm sure the devs will smooth things out, just got to give them time.
     
    Joined
    Dec 3, 2013
    Messages
    552
    Reaction score
    182
    • Legacy Citizen 9
    • Purchased!
    • Community Content - Bronze 1
    Well its likely you may have to rebuild most of your stuff for it to work. But couldn't you keep it modular and just keep the box dimensions separate? It WOULD take a complete redesign, it wouldn't be easy, but it would be very cool when done.

    To be honest I never thought about having a small station with the station only blocks and an attached large ship that acted as the main portion of the station. I think its an amazing idea. I also think you just solved an issue I was having when trying to figure out some things with the station I planed to build too... so thanks.
     
    • Like
    Reactions: Dr. Whammy
    Joined
    Feb 22, 2015
    Messages
    869
    Reaction score
    179
    • Purchased!
    • Legacy Citizen
    Silly question; wouldn't it make more sense to turn off collision checks on fix-docked entities until they attempt to dock/undock? Why even have these checks constantly running for anything other than turrets in the first place?
    Link a Rail Speed Controller to the rail that is docked to. Have a single Activation block linked to the controller, but leave it off. With the speed of the rail set to 0 the server no longer bothers to check the docked entity for collision since it's "not moving".
     

    Blaza612

    The Dog of Dissapointment
    Joined
    Nov 16, 2013
    Messages
    787
    Reaction score
    209
    • Legacy Citizen 4
    This plan failed when I started getting "server is under heavy load" messages immediately after logging on.
    What others above me said. :p

    Edit: Another thing that drives me nuts; why do so many servers have a "faction must contain at least 3 players" rule?
    Because rules 'n' shit.

    However, I do believe that you'd still be able to build planet bases. On the server that I played on, I made a massive planet base (with a LOT of rail shit, before the optimizations) and the admins for the server were fine with it. Eventually, the server world got corrupted, so I lost my base, but I don't see why they'd have any problems with planet building now. The only precaution you have to take, is to NEVER log in/out in planet gravity, it completely crashes the server. If you're wondering, the server I played on was the Shattered Skies server.
     

    NeonSturm

    StormMaker
    Joined
    Dec 31, 2013
    Messages
    5,110
    Reaction score
    617
    • Wired for Logic
    • Thinking Positive
    • Legacy Citizen 5
    1. Well you didn't literally crash any servers... right? Try single-player with that ship, if "server under heavy load" keeps popping up, yeah, you should build less modular stuff.

    2. Because they're entities like any other, no collision doesn't make sense if they're not docked. And while they're docked there's a collision check so you can't build something through said docked thing. And then undock it, causing a major lagfest.

    3. As for the limiting box dimensions; it would severely limit creativity, which is something Schine is extremely opposed to. They like it when we're building giant pink unicorns and such.
    1. Bad option
    2. While docked, you don't need collision checks except for rail-moving entities.
    Rails could spawn tunnel-meta-blocks or cross-section imprints on chunks to reduce the load.
    Rails could "lock" all blocks required by either the 0 or 45 or 90 degree position, before movement. if one of these blocks is over-built, rotation gets locked until all are free again.
    Each tunnel/lock-meta-block could refer to all others with the same rotational distance + height on the same rail block.
    3. Agree - they want to advertise their own game with stuff we built for them and make money with our creativity. Until Pink Unicorns attract all gay peoples and then the game will not be fun any longer :p

    What you say makes perfect sense. Unfortunately, I no longer have the time/patience to rebuild everything from scratch, nor do I have any interest in mining/crafting all the resources needed to become something other than target practice again. This sucks; If this continues to be an issue, I will have no choice but to abstain from multiplayer entirely.
    Make a suggestion that every new player should be allowed to upload a certain amount/size of blueprints which are spawned wherever desired. You have my support.
    Although it would need a white-list system, perhaps backed up by the SM registry?

    Entities do not need to load often, whereas you need to perform a collision check every time an object changes position, no matter how small a change. Ships move around a lot (unless docked but still there's building which may count as well) which makes these checks necessary in very tiny time intervals.

    Now, i don't know the details of the game's code, but there's obviously room for improvement. I'm sure the devs will smooth things out, just got to give them time.
    You don't need collision checks. When using a rail, you only need to lock the tunnel which is based on cross-section above/aside a rail.

    When using rotations, each block-position uses diameter+height (on rotation axis) to point to a block at rotation=0 which points to rotation=0,45,90,135,180,225,270,315,360.
    If a block-position is taken, this part on the cross-section is unavailable for adjacent rotations. Any object obscuring this place in 2D will have limited rotation abilities.
     

    Reilly Reese

    #1 Top Forum Poster & Raiben Jackpot Winner
    Joined
    Oct 13, 2013
    Messages
    5,140
    Reaction score
    1,365
    • Legacy Citizen 8
    • Thinking Positive
    • Purchased!
    Silly question; wouldn't it make more sense to turn off collision checks on fix-docked entities until they attempt to dock/undock? Why even have these checks constantly running for anything other than turrets in the first place?
    Remember the new docking mechanism allows for motion while docked these have to be checked aswell as aformentioned building. Also everytime someone loads their chunk they get rechecked. Your best bet is to try to cut down your entities by using plex doors and stairs instead of bulkheads and elevators.
     

    Dr. Whammy

    Executive Constructologist of the United Star Axis
    Joined
    Jul 22, 2014
    Messages
    1,793
    Reaction score
    1,735
    • Thinking Positive
    • Likeable Gold
    • Legacy Citizen 9
    Remember the new docking mechanism allows for motion while docked these have to be checked aswell as aformentioned building. Also everytime someone loads their chunk they get rechecked. Your best bet is to try to cut down your entities by using plex doors and stairs instead of bulkheads and elevators.
    The thing has four 3x3x5 elevators on rails. The rest is fixed-docked and the Command System itself is docked to a station. It's not that complex and the whole assembly is stationary. I fail to see the logic behind constant collision checking for things that will rarely or never move.
     

    Crashmaster

    I got N64 problems but a bitch ain't one
    Joined
    Oct 18, 2013
    Messages
    453
    Reaction score
    361
    Inventive use of StarMade's features has always worked especially poorly in multiplayer.
     
    Joined
    Mar 1, 2015
    Messages
    291
    Reaction score
    177
    • Wired for Logic
    • Community Content - Bronze 2
    • Purchased!
    Dr. Whammy,
    Ok, HolyCookie had come up with a solution to the problem your facing with your station. The reason the game is running constant collision checks is because it assumes that anything docked to a powered rail is moving. Basically common knowledge.

    However, not everyone knows that you can solve this by connecting a speed controller on your rails, and shutting them off when the dock is stationary. This causes the game to assume that the objects are not moving, and thus, it stops the collision checks. With a little extra logic, you can set up all your moving parts to only cause collision checks when moving, and go inert when they are not in use. That would bring lag down to an absolute minimum.

    Here is the actual post in question: https://starmadedock.net/threads/the-rail-show-off-thread.7367/page-17#post-225155 Hope this helps.
     
    Last edited:

    Blaza612

    The Dog of Dissapointment
    Joined
    Nov 16, 2013
    Messages
    787
    Reaction score
    209
    • Legacy Citizen 4
    Dr. Whammy,
    Ok, HolyCookie had come up with a solution to the problem your facing with your station. The reason the game is running constant collision checks is because it assumes that anything docked to a powered rail is moving. Basically common knowledge.

    However, not everyone knows that you can solve this by connecting a speed controller on your rails, and shutting them off when the dock is stationary. This causes the game to assume that the objects are not moving, and thus, it stops the collision checks. With a little extra logic, you can set up all your moving parts to only cause collision checks when moving, and go inert when they are not in use. That would bring lag down to an absolute minimum.

    Here is the actual post in question: https://starmadedock.net/threads/the-rail-show-off-thread.7367/page-17#post-225155 Hope this helps.
    And this, ladies and gentlemen, is part of the reason Mr. Trekkerjoe is a logic Jedi. :p