StarMade v0.199.535 - Spring Cleaning
The spring cleaning update is finally released. As you probably already know, we changed our release cycle to be a lot safer. You can check out our release cycle here (still a work in progress). For this update we focused on solving a lot of new and old bugs.
A few of the bugs were extremely hard to fix. There are also a few smaller features coming with the fixes.
Features and more noteworthy bugs
Fleets/ships losing entities
After many iterations and tries, this error seems finally fixed. The main problem was a faulty database query when a fleet changed sector. It was supposed to bring all of their dock with it, but due to the bug only brought some of them. To catch this bug we implemented debug functions, so that fleets would be able to monitor themselves patrolling between sectors.
There is one leftover issue which is catched by a fallback method, and therefore doesn’t affect the game at all. It will just notify the admins with a small popup to send in the logs, since using a fallback isn’t the cleanest way solve this left over.
Thanks to all the testers and helpers on this bug! You really helped a lot finally squashing this pesky bug.
Collision solving for lagging sectors
Server has a lot of problems when there were a lot of bad spawns caused by either a bug or intentional griefing. It goes so far that some servers has scripts to detect those sectors and despawn objects.
It comes down to that when multiple physical objects were in the same space, the physics would slow down the whole server. In the past this could happen with fleets spawning or asteroids in rare cases. These issues have been fixed. However, should it still happen, the game has now its own detection system, automatically warping objects to a save closest position after the sector was detected to lag from that object causing too much physics lag.
Rail logic switching
Switching rails through logic interaction seemingly worked well but block data was not properly refreshed. You would end up with ghost connections and depending on building, could create an invalid link. A safety check done by the game would prevent any rail working on that entity because of it. This would most likely explain why quite a few rails stop working.
Rolling ships has been significantly improved. By redesigning the algorithm used, rolling while looking around now feels a lot more natural and doesn’t do these strange figure eights anymore.
We apologize for taking a bit longer to fix some of the more pressing OSX issues. Macs can finally use framebuffer and advanced graphics functions to speed up the game using the optimizations that come with that. Also some crashes with videos and some text input issues have been fixed.
If you find more problems that are OSX related, please report them and we will try to fix them for the next release.
We fixed a number of exploits. Thanks to all the players reporting them.
One of the more difficult things was implementing a system that would check connection validity without affecting performance, because it would be horrible to check every block that has a connection. The system we came up with distributes the load to check connections over time. It also only checks when the numbers “don’t check out”.
~ The drawing for display blocks has been significantly improved
~ Logic activation sending has been improved significantly, reducing bandwidth and improving performance
~ Fleets can now cloak
~ Fleets can now radar jam
~ Bobby AI can now be activated via logic
Size Restriction via GameConfig.xml
Admins can now restrict the ship and station size per entity they want to allow on their server. The exact syntax has been added to /data/config/GameConfigDefault.xml
Also there is a general size restriction in the server.cfg now. RESTRICT_BUILDING_SIZE will restrict building size to multiples of sector size. The value in the GameConfig.xml has priority if set.
List of Bugs fixed
Here’s the full list of all 85 tasks we’ve worked on:
Private issues are exploits or issues that, if known to the public, would cause a lot of harm.
Even though we fixed them, knowing the steps to reproduce could give you ideas on finding a way to bypass the fix and still abuse it, for that reason we do not share.
~ T2349 (Private): Grouping issue
~ T2139 (Private): Power and shield drain issue
~ T2138 (Private): Player max build area not working properly
~ T1969 (Private): Performance issues with logic
~ T1963 (Private): Missile and AI targeting issue
~ T1931 (Private): Shop module crash
~ T1851 (Private): Transporters and grapple beam issue
~ T1828 (Private): Jumpdrive/inhibitor charge issue
~ T1823 (Private): Bounding box issue
~ T1627 (Private): Performance issues with logic
~ T1602 (Private): Linking update issue
~ T1575 (Private): Undo issue
~ T1570 (Private): Ion issue
~ T1558 (Private): Crash when enabling shadows
~ T1299 (Private): Rail logic switching issue
~ T1227 (Private): Collision issue
~ T1145 (Private): Derelict stations issue
~ T1080 (Private): Faction protection removal issue
~ T1050 (Private): Docking issue
~ T1023 (Private): System claiming issue
~ T941 (Private): Docking issue
~ T895 (Private): Faction rank permission issue
~ T840 (Private): Asteroid respawning issue
~ T823 (Private): Another Ion issue
~ T659 (Private): Logic issue
~ T654 (Private): Warhead issue
~ T643 (Private): C+V linking issue
~ T512 (Private): Design issue
~ T2353: Sector Import fails to load ships docked to planet plates/asteroids
~ T2352: (Prebuild only) Shipyards causing disconnect and class cast exceptions
~ T2347: Caps-lock mouse interaction on OSX
~ T2339: /load_as_faction crashes server
~ T2333: Nullpointer being spammed in server console
~ T2309: /destroy_uid_docked command not working properly
~ T2294: Gold, silver and bronze bar icons missing
~ T2291: Autofill “ingame player name” from launcher
~ T2289: Make Bobby AI activation logic controllable
~ T2278: Cannot dock here
~ T2273: Adjust starter equipment for the new block selection method
~ T2270: Server deadlock, unknown cause
~ T2267: Server crash related to physics, and meta objects
~ T2252: Registry has a max password length of 128 characters but not stated anywhere
~ T2249: Flip flops not working properly
~ T2246: Torch cannot destroy faction module
~ T2214: Navigation menu mass of docks is always 0.1 and 0.0 for stations/planet plates
~ T2181: Nullpointer with processErrorDialogException
~ T2150: Radar jammer and cloak stay active on exiting core for fleet ships
~ T2140: Display module performance issues
~ T2118: Add dimensional limits to game config
~ T2101: Rail detection with rotators and set rotation broken
~ T2100: Sell available and price updates at the wrong time
~ T2099: Place order edit button is switched around
~ T2094: Fleets losing docked entities
~ T2044: /despawn command with fleet entities fails
~ T2009: Derelict stations get false positive removal for “ship only blocks”
~ T2004: Crash when attempting to access online play without internet connection
~ T1995: Importing sector fails with ArrayIndexOutOfBoundsException
~ T1980: Cargo spaces can be reused by multiple storages
~ T1957: C+V Rail detection doesn’t send false signals
~ T1776: Converted blueprints have undocked entities as response fleet
~ T1678: Uplink doesn’t save for OSX
~ T1664: Loading sector causes mass timeouts with colliding asteroids
~ T1658: Shop price not set without ownership doesn’t allow moving blocks in between
~ T1639: Nullpointer with joystick connected
~ T1616: ArrayIndexOutOfBoundsException with missiles or effects
~ T1553: Error handling for version mismatch and missing uplink insufficient
~ T1525: ffmpeg causing crash for OSX
~ T1510: Nullpointer in character file
~ T1466: Frame buffer capabilities not detected for OSX
~ T1465: Nullpointer with projectiles, causing invisible beams
~ T1422: NaN illegal comparison with shootout rail
~ T1384: Nullpointer when charging shields
~ T1337: Wedge blast door texture reversed
~ T1318: Spawning ships with same names as formerly existing one may lack docked entities
~ T1282: Creative mode doesn’t allow dropping specific block quantities
~ T1257: Incomplete build mode undo/redo
~ T1004: New unchanged stations turn into red hull blocks
~ T990: Rolling not working properly
~ T684: Shop permission resets when server restarts
~ T524: Weapons hitting deeper inside your ship
~ T428: Not staying attached to ship when logging out
~ T355: AHP and SHP is capped
~ T325: Asteroids can spawn in solid entities
~ T252: Startup crash with custom Windows theme
~ T25: C+V Linking memory leak
We also did around 20 smaller fixes and issues reported directly by server owners. Crashes, database issues and performance problems were fixed along the way resulting in a more stable environment.
Thank you for playing StarMade,
~ the schine Team