Welcome to Keen Software House Forums! Log in or Sign up to interact with the KSH community.
  1. You are currently browsing our forum as a guest. Create your own forum account to access all forum functionality.

Update 1.181.0 Major - Big Optimizations, Multithreaded Physics & More!

Discussion in 'Change Log' started by flexx, Jun 1, 2017.

Thread Status:
This last post in this thread was made more than 31 days old.
  1. mrkarp Trainee Engineer

    Messages:
    16
    Inventory glitch is literally happening ever spawn, every death, ever connect and disconnect. Unable to play after last hotfix (#4 i think).
     
    • Agree Agree x 1
  2. KissSh0t Master Engineer

    Messages:
    3,508
    Wasted's race in this video is really cool :-D

     
    • Like Like x 1
    • Informative Informative x 1
  3. I23I7 ME Tester

    Messages:
    3,827
    Hey that should not be there had a chat with one of the programmers i really to know the amount of blocks that you had.
     
  4. Commander Rotal Master Engineer

    Messages:
    4,975
    195,620. So, i CAN take away from this that this IS a bug, yes?

    [​IMG]
     
  5. KissSh0t Master Engineer

    Messages:
    3,508
    Is there a changelog for the third hotfix?
     
  6. shanjoo Trainee Engineer

    Messages:
    8
    My block count is 144,926. when the update was released I could not add anymore blocks. Had to revert to the previous version.
    this is all I've managed so far.
    [​IMG]
     
  7. Arcturus Senior Engineer

    Messages:
    1,649
    In MyTexts.resx there is the new line:
    Code:
      <data name="NotificationGridReachedPhysicalLimit" xml:space="preserve">
        <value>Cannot comply. Grid reached physical limits.</value>
      </data>
    
    A constant defined in Sandbox.Game.Entities.Cube.MyGridShape():
    Code:
    public const int MAX_SHAPE_COUNT = 45874;
    
    In code used for building blocks:
    Code:
    	if (!this.IsWithinWorldLimits(ownerId, (int)(area.BuildAreaSize.X * area.BuildAreaSize.Y * area.BuildAreaSize.Z), MyDefinitionManager.Static.GetCubeBlockDefinition(area.DefinitionId).BlockPairName))
    	{
    		MyGuiAudio.PlaySound(MyGuiSounds.HudUnable);
    		MyHud.Notifications.Add(MyNotificationSingletons.ShipOverLimits);
    		return;
    	}
    	if (this.ShapeCount >= 45874)
    	{
    		MyGuiAudio.PlaySound(MyGuiSounds.HudUnable);
    		MyHud.Notifications.Add(MyNotificationSingletons.GridReachedPhysicalLimit);
    		return;
    	}
    
    So if you exceed world/server block limits, you get a ShipOverLimits notification. If you have too many Havok Physics "shapes" on the grid, you get the GridReachedPhysicalLimit notification, and this is independant of block limit settings.

    EDIT: so it is less of a bug and more of a poorly-explained decision/necessity for multithreaded physics.
     
    • Like Like x 1
  8. captainbladej52 Apprentice Engineer

    Messages:
    379
    Since you've asked for a reason as to why folks would disagree, and since I completely disagree with nerfing any of the thrusters I will give an elaboration.

    Atmospheric thrusters: These thrusters are fine where they are and are basically from the look of them giant turbines that use the air around them as fuel to provide thrust. They do not require fuel and can be argued the air itself is their fuel as they resemble giant fans. To offset this they require large amounts of power to keep them running, especially the larger ones. The atmospheric thrusters also can only be used in atmosphere as their name implies and they get weaker and weaker the farther up you go to around 5km I believe is when they cease functioning outright. They're good for atmospheric stuff only and are completely useless in space. their massive power requirements are part of what balances them out.

    Ion thrusters: ions are the polar opposite of atmospheric thrusters. They take MASSIVE amounts of power to operate them and have only 30% effectiveness in atmosphere. Unless you have a ton of ions or the ship is super light it's pretty much guaranteed you will need atmospheric thrusters and/or some supplementary hydrogen thrusters to get you into space. Ions also take forever to build up speed and to stop. They're also super heavy. Being heavy in terms of weight, power hogs, and only 30% effectiveness is their penalty for being able to work anywhere not not requiring fuel. You could argue that since they work by using charged ions to produce thrust that they should require a small amount of fuel but they honestly don't need it. Even that that fuel amount would have to be stupidly cheap.

    Hydrogen thrusters: these are the most powerful thrusters in the vanilla game and will give large amounts of thrust. They will also work at their full power in any environment on planet or in space. The downside to hydrogen is they must be connected to a source of fuel such as a hydrogen tank and/or oxygen generator(s) to keep themselves active. If you have large amounts of them you will need massive fuel supplies and you will piss hydrogen like no tomorrow. They're the most expensive to operate as depending on how large of a ship you build, will typically require multiple tanks and multiple oxygen generators to process the ice fuel into hydrogen and oxygen. I personally believe they consume their fuel way too quickly but that's just me. Some folks may agree with that and some may not.

    If anything we should discuss buffing thrusters or perhaps adding a 4th type of thruster. Thrusters have already been buffed a few times now for the simple reason they were on the weak side. The last thing we need to do is nerf them. Far as the physics overall I would be cool with trying anything that could improve function of the game overall as long as it wouldn't suck the fun out of the game.
     
    • Agree Agree x 2
  9. tmike Apprentice Engineer

    Messages:
    107

    You did notice that I did say an check box, for the changes I would like to see in the thrusters, no I alos have no problem with the Atmo thrusters, but othere then planatary nonvering, I feel like there is vary little advanges to useing a hydrogen ship. orther then the higher thrust. I would probly be happyer with the ions if they used some kind of fuel, the magic fuel less ion thrusters didnt bother me muich before we got hydgrogen........ Though I do hear a few complantes about the hydrgen trhusters not needed 02 I aslwasys a ssuemd the hydgrgen where a hydgen plasma drive... if thats what it ies, then they should probley treat them as reacters, or up the power requerment some..... but yes I know people like the current engin balice, thats Why I sead a check box, want to play with a deffrent engen balice check the box, if you dont ,dont chack the box......
     
    • Disagree Disagree x 2
  10. I23I7 ME Tester

    Messages:
    3,827
    Made a report out of it @Commander Rotal and told the QA lead about it and that i was a major concern for the community. Especially for older projects that you guys have been building. Apparently there was a crash due exceeding limits of the engine. We shall see.
     
    • Like Like x 1
  11. KissSh0t Master Engineer

    Messages:
    3,508
    Can you please make sure that the issue of the "lurch/jerk" motion when moving between a sector has been present since the introduction of infinite space.. It's one of the long standing bugs that is just annoying that it's still even present.
     
    • Agree Agree x 1
  12. Commander Rotal Master Engineer

    Messages:
    4,975
    Yeah, Akhera already responded here:

    I mean, the existence of that limit is unforgiveable enough as it is but what really pisses me off here is that this was introduced without asking or at least informing the players beforehand. Or afterhand. People only found out because their stuff stopped working after an update.
    I have to ask, was making this a WARNING textbox (az 70%, 80%, 90%, 95% etc) instead of a limit even discussed as an option? You already HAVE Blocklimits in the World Options as something you can turn on and off, everyone who turns them off is ALREADY aware of the fact that this can lead to problems. This limit seems like a badly-thought-out solution to a problem that got already solved a long time ago, and wasn't even a real problem to begin with.
     
    • Agree Agree x 10
    • Disagree Disagree x 1
  13. derletztewiderstand Trainee Engineer

    Messages:
    9
    Hello Keen, says times spins you actually total?

    You do not want someone in the MP plays?

    Apparently you also assume that every admin on a server is. So I have to say ech is not so.

    We can not restart the servers every 24 hours because we are only players.

    Makes correct updates, especially before testing, we have a long weekend in Germany and no one can play onlin, at the same time you wonder why the number of players drops.

    Tip: 1. Test before.
    2. Test not only locally
    3. Only after successful test patching

    Greetings from an annoyed player. Who could only play 4 hours in the last 3 days.
     
    • Late Late x 2
    • Like Like x 1
    • Disagree Disagree x 1
  14. Roxette Senior Engineer

    Messages:
    1,399
    ... and it's 'you have to guess what we changed in today's update' time again ?
     
    • Like Like x 2
    • Agree Agree x 2
  15. I23I7 ME Tester

    Messages:
    3,827
    Nothing major i looked into its still adding layers to the crash fix mentioned in hotfixes.
     
    • Friendly Friendly x 2
    • Like Like x 1
  16. Echillion Senior Engineer

    Messages:
    1,334
    Have connectors been fixed? As to Rotals post so there IS a hard limit imposed even though we were given the illusion of ticking a check box? hmmmm.....and can we get a barrel of windex on the small grid cockpit windows and on the large grid one if its the same smeary overlay?
     
    Last edited: Jun 5, 2017
    • Agree Agree x 1
  17. Saberwulfy Apprentice Engineer

    Messages:
    292
    I would like a backup+compression tool inside the game, for when it detect a old save.
    My game scripts are being halted instead the game freeze for unload my ram.
     
  18. ZnvBecUet Trainee Engineer

    Messages:
    7
    Is there new limits for programable blocks? i get "script is too complex"
     
  19. Dga8705 Trainee Engineer

    Messages:
    37
    Apparently trying to even place the med block in my hotbar crashes the game now. I'm on duck rolls mars survival with just the mods he requires. It's done it reliably now.
     
  20. Arcturus Senior Engineer

    Messages:
    1,649
    It sounds like Havok will crash once you add more than 65535 shapes on a single grid. This is probably beyond KSH's control.
    65535 * 0.70 = 45874
     
    • Agree Agree x 1
    • Informative Informative x 1
  21. captainbladej52 Apprentice Engineer

    Messages:
    379
    Going towards Commader Rotal's post I think at this point we have to ask a fair question. If there is a hard limit to the amount of blocks you can place onto a structure, why do we have the option to "disable block limits" at all in the options? At that point I'm basically trading a soft cap on blocks for a hard cap. If I'm unchecking the block limits box then I'm essentially telling the system I understand the risks involved in doing so with lag and so on. In the absolute best case scenario that "disable block limits" option is confusing and should instead state that it disables the soft cap on blocks. At the absolute worst that option is outright deceptive as you're not really disabling the limit at all, you're simply trading one limit for another. If I'm disabling the block limits then I should be able to place as many blocks as my rig can handle. If my rig could handle me placing a billion blocks then I should be able to place a billion blocks. Just slapping a hard cap on it is a band-aid solution at best. If you're going to implement something like this hard cap then stealthing it into the game is NOT a good way to go about it. Something like this should be optional and not forced on people. It's like editing the Windows registry manually. It may not be the smartest thing to do and has alot of risk involved, but if I want to or need to, then I should have the option to do so. I've only ever hit the soft cap and have yet to hit the hard limit like Rotal and others have, but point being the risk should be ours to take as players of going beyond this hard limit.

    The advantages to hydrogen is that it provides the best thrust for minimal power only at the cost of using additional ice fuel. As long as hydrogen thrusters have fuel to use they work at full power in atmosphere OR space. Ion thrusters only work at full power in space. They take forever to get you up to speed and take forever to slow you down again. Atmospheric thrusters provide their full power in atmosphere and do nothing at all in space and are pretty much dead weight at that point. On most ships I've seen you're pretty much going to have at least one oxygen generator anyways, perhaps multiples depending on the ship/station and how quickly you need to create oxygen and hydrogen fuel. Since you're probably going to have oxygen generators anyways I don't see adding hydrogen tanks as being that big of an issue. The big thing I like about hydrogen is that I only need 1 thruster to do a job instead of 2 thrusters, an ion and atmospheric. Overall what you're proposing could easily be solved with a mod and imo is not something that we should worry about in the main game. Ion and atmospheric thrusters already use alot of power and weight as is depending on how man you need. Adding to that cost even more is not my idea of fun.
     
    • Agree Agree x 2
  22. Eikester Apprentice Engineer

    Messages:
    423
    there is always a way, Havok Licence comes with Source so they could make changes on their own, or divide the grid into smaller "chunks" or maybe it is better to consider using another Physicsengine even if it means 1-2 extra years in developement. But this limitation is just Bad and even worse to not tell your Players about this change. Each time i hear "its on Havoks end" from some devs and later it turns out it wasn't (i.e. Mafia III/NMS and the SSE4.1/4.2 issue)
     
    • Informative Informative x 1
  23. Commander Rotal Master Engineer

    Messages:
    4,975
    One of my questions is: what IS a shape in this context? It can't be the triangles, so how's that even measured? What counts as a shape, and what makes one shape better than another? Does it apply to Stations as well? If there's a limit for this why is it not displayed in the Control Panel? Why was this not forwarded to @Xocliw, who i'll assume did not know about this? Why is your PR-Manager / Update Video Person not told about decisions like these? Why are they absent from the patchlog? Did the Closed Testing Group know about this? Did the lead developer?

    I also don't quite get what that limit was even supposed to accomplish. Yes, you prevent some crashes, but you're also making it impossible to work on builds that approach (only seventy percent of) that crash limit. In practical terms it really doesn't matter if the game crashes or just imposes a limit at the crash point, but this decision also limits builds to 70 percent of that limit. We don't win on the crash-side of things but we lose on the building-aspect. Where exactly is the improvement here? All this change does is limit us to even smaller builds in even boxier ships. It reeks of a decision made by programmers, not game designers. Does the lead dev know about this? The inhouse testing certainly seemed surprised...
     
    • Agree Agree x 3
  24. Lé Grand Sárrazin Apprentice Engineer

    Messages:
    125
    This is just getting pathetic.............................. feels bad man
    --- Automerge ---
    I mean... seriously..... you've had this many years to figure out there is some bs inherent hard-cap to shapes in Havok??? Seriously??
    --- Automerge ---
    1 step forward.. 3 steps back

    *sigh*

    I was about to say forward to the Havok developer, Microsoft btw, about this hard-limit... buuuuuuut one lil issue there:

    https://www.techpowerup.com/232880/microsoft-trademarks-direct-physics-havok-rebranded

    If one were to scroll down to post #6, our good friend FordGT90Concept posted: "Just looked at when Havok's last stable release was: September 14, 2011." Posted in April 2017

    So, I don't have high hopes of this being addressed unless Keen has the right to alter Havok code. Or, until Microsoft finishes their revamped, renamed version of Havok, and gets it in Keen's hands.

    And it seems like some of us here saw this coming a long long time ago: https://forum.keenswh.com/threads/c...m-because-32-bit-doesnt-cut-it.7360096/page-3

    Two years roll by, and now we see what all of the fuss over Havok was about.....
     
    • Agree Agree x 3
    • Disagree Disagree x 1
  25. Devon_v Senior Engineer

    Messages:
    1,602
    Because it has nothing to do with blocks. At all. If you built a solid cube ten billion blocks a side it would be one shape in Havok so long as it wqs undamaged.

    It's geometric space. Havok mostly uses cubes and cylinders, though also pyramids and planes, and it measures collisions between them, not the actual triangles that are displayed because it's way faster. Basically the more complex the shape of the ship as a whole gets the more distinct shapes Havok needs to use to describe it physically.

    The reason the cap would end up at 70% is because they need wiggle room for when the ship gets damaged which will make its shape even more irregular andnthus require even more shapes to describe.

    What it needs is another check box that's basically "I promise not to crash this into anything, now give me the full 65,535 Havok shapes please."

    Or an option to disable complex collisions entirely for pure creative fun building.
     
    • Agree Agree x 2
    • Informative Informative x 2
  26. Commander Rotal Master Engineer

    Messages:
    4,975
    I can't claim with a streight face that i understand it entirely but if i do it's just one more aspect of the question why Havoc was chosen for a block-based building system...

    The sad part is we HAVE that:

    [​IMG]

    (Honorary mentions go to "Enable Cargo Ships", "Enable Drones", "Enable Random Encounters" and the Empty World that i need to manually set to empty because that makes sense, i guess. Point is i turn all of that shit off to keep my FPS and SimSpeed as high as possible and only use Block Damage to test Thruster Damage, which, incidentally, we can also turn off. Until they ladder all of those options too, i guess.)
     
  27. Bad Humour Apprentice Engineer

    Messages:
    116
    There is one thing i dont get however with this hard limit. Is that why did havok work beyond the hard limit beforehand in the first place and why is it only now that the hard limit is implemented?

    It doesnt make much sense unless multithreaded havok can do less shapes but logically thinking wouldnt that allow more shapes to be processed faster. If multithreading affectd this at all which it shouldn't.
     
    Last edited: Jun 5, 2017
    • Agree Agree x 2
    • Late Late x 1
  28. Sp1ts Trainee Engineer

    Messages:
    1
  29. Stardriver907 Master Engineer

    Messages:
    3,068
    So my ship could still be the same size if it was more than one grid?
     
  30. GrindyGears Senior Engineer

    Messages:
    1,787
    I can't really speak for keen on this, but I'll assume this was them just finally figuring out what the issue was, I'm sure Rotal has had a fair number of crashes and issues building those ludicrously large ships. (if a ship of mine hits 20K I'm surprised) but it was probably written off as the computer having trouble keeping up. This hard limit could have been being hit in the past and it was crashing.

    I don't really agree with the cap being at 70% of the crash range, but I do think that the cap itself is not inherently bad. I'd wager the vast majority of the player base will never go above 150K blocks so if you put in limits and lower possible crashes the larger majority has a better experience.

    Keen has broken my stuff more times than I care to count, so personally I'm glad they threw me a bone with this update.
     
    • Like Like x 2
Thread Status:
This last post in this thread was made more than 31 days old.