StarMade v0.199.646 - Build Mode
Greeting, Citizens ~
A new release version is out, quick summation below:
~ A new segment requester, streamlining the chunk load requests.
~ Our build mode has seen an extensive GUI and functionality overhaul, making building even easier than it already was.
~ A new graphical effect, an outline used in targeting and block linking.
~ Fleet orders are persistent now, they won’t change back to idle after server restarts
~ 2 new rail blocks to make unloading and loading of cargo between entities much more versatile to use
~ General GUI changes, including an updated keyboard menu and a heat warning marker if you’re getting dangerously close to a star.
~ Bug fixes
A full list is provided below, but first we like to thank @Schnellbier and @0ldskull for helping us out with our pre-release candidates, making sure there’s less chance of a game breaking bug slipping through.
As mentioned in a previous dev blog, we’ve completely rewritten the chunk request system.
The new approach streamlines the order of chunk requests over multiple entities. They’re now ordered in the background on a global level, meaning nearby chunks will have much shorter load times. This also benefits the lighting calculations, which should improve overall performance.
A new graphical effects that outlines/highlights entire entities or groups. Right now we only use it for the current selected target and for most C + V systems out there. Most likely we’ll integrate this system later with the upcoming power changes and its information warfare portion.
The outline system uses a highly optimized mesh that can quickly be generated for any number of blocks. Although this system is not able to replace the existing mesh and chunk system due to lacking information, they’re still a necessity for future plans as they would also be used in far-aways LoD views of a model. In combination with higher-granularity chunk system, should give a large FPS increase when viewing bigger objects in the distance.
Note: framebuffer has to be enabled in your graphic options as it would not work properly otherwise. We’ve added the option where you can enable/disable the older purple box from within the build mode Display menu.
This is an addition to the build helpers. You set two points (using your camera position, as with the fill tool) and it will create a line between them. You can adapt the line thickness with a slider.
We’ll add more features in the future, such as splines.
As with the new GUI, this is also a work-in-progress, so we’ll be improving it and fixing any issues that arise.
The fill tool allows you to incrementally fill (or replace) areas with your desired block. It’s quite simple to use: you can freely select your starting point with the camera (similar to ‘create docking’), and press the fill button with a block selected on your hotbar.
The fill tool allows both space-filling and block-replacing, depending on what the starting point is. If it’s empty space, the tool will flood-fill; if it’s a block, only that block type will be replaced. Also: this is a step-based system, meaning undo and redo work, allowing you to easily fix any mistakes.
You can use the slider to set the amount of blocks added by step. The max amount can be changed in the config.
Different method of selecting
With adding the line tool, we added a new way to select portions of blocks altogether. It is now possible to select boxes by selecting the starting and the end point. This comes in especially useful for copy & paste which in the past always was a bit finicky to use.
Besides the new look, we’ve changed quite a lot of the original’s build mode functionality. We’ve grouped the available tools together accordingly and those groups can be collapsed or expanded when needed. When the expanded areas become too large, it becomes scrollable. However, the orientation group with the undo/redo buttons however is fixed at the top so that you never lose track of it.
Which group is expanded or closed is saved on exit and restored next session.
The orientation group at the top also functions as a radial menu for shape selection, simply left click it and hold to make it popup.
The sliders have received a makeover, now allowing more ways for you to change their value. Their value can now be entered manually by left clicking the value on the left side and functions like a text box only allowing numeric input.
If you have a mouse wheel, you can also change the slider’s value by hovering your mouse over the textbox on the left and scrolling up or down, allowing for quick adjustments.
The build helpers have also gotten a general overhaul. We got rid of the annoying popup dialogs, so everything can be set or changed directly from the build mode panel itself. This also allows you to recalculate a build helper’s parameters without having to redo everything. You can also change the placement of the build helper
The placement of the build helper can also be moved independently without having to clear the current build helper.
Symmetry planes now have their individual odd-mode, allowing you to work with an off-center XZ plane but a centered YZ plane at the same time for example.
Symmetry received another option to disable/enable the mirroring of non-cubic blocks such as wedges. This also works with the replace filter.
We’ve also added tooltip support to the build mode panel. It’s not used that much right now but later we can add some nice descriptions to some of the tools if needed.
Additionally we added “sticky advanced build mode” by pressing the advanced build mode key twice rapidly, which allows you to keep advanced build mode active without having to hold the key. Pressing the key once more gets it back to normal.
A Block picker function, to look at a block and add that to your hotbar is in the game too now, you use it by holding the advanced build mode button and clicking with your middle mouse button.
If you use the middle mouse button in normal build mode, it gives you the ability to automatically switch to any of your docked ship you’re looking at.
We’ve added two new blocks to the game: the “Rail Load” block and the “Rail Unload” block. (We’re still working on their textures)
You can place them anywhere, and they work identically to normal rails, but they have an added feature: item transfer. These blocks allow transferring items between connected storages on a station and a docked ship via the Load/Unload Rail. Example:
You connect a storage to your rail docker on a ship, and dock it to a Load Rail on a station. The ship is then able to pull items from any storage on the station connected to that Load Rail.
If you instead dock the ship to a Rail Unload block, the station may then pull items from the ship’s connected storage to any storages connected to that Rail Unload block.
Again, both docker and rail need active connected storages. Also, the station will only pull items if it has permission to do so!
The ship radial menu allows you to select between 5 different permissions for the load/unload rails:
~ Always allow
~ Always allow faction, ask for rest
~ Always ask
~ Allow current (the entity you’re docked to; this allows manually activating or deactivating)
General GUI updates
~ Main menu tooltips:
~ Loading advice
~ Keyboard options menu using new lists with subcategories and filters
~ Sector Heat warning marker if you’re getting close
~ Shop menu panel is a bit better/consistent
SQL in StarNet
In one of the previous updates, we added the ability for server admins to query the server’s database directly via SQL. This is an incredibly powerful tool, and many server owners have taken advantage of it to create fancy features on their websites, write fine-tuned automated scripts, gather game metrics, etc. However, this functionality required us to inject the command directly into the console, and parse its reply -- not the cleanest or most direct approach.
StarNet, our dedicated tool for this sort of thing, has now permissions to both run SQL queries and to also return its output to you.
This should give admins cleaner, easier access to the internals of their server’s database.
~ ALLOW_PASTE_AABB_OVERLAPPING: Server option to disable/enable the building check if overlapping with other ship’s bounding box
~ ECMStrengthMod: BlockBehavior option that modifiers the amount of scanner modules needed versus mass of target ship to disable cloakers/jammers.
~ T2437 (Private): block exploit
~ T2379 (Private): Ctrl+A in client password entry field uncensors text
~ T2360 (Private): Cloaking/radarjammer issue
~ T2295 (Private): Uploaded blueprints can have no owner
~ T2467: /kick_players_out_of_entity kicks everyone on the server out of their entities
~ T2401: Light rods have wrong block icon colour
~ T2391: Rail + Storage disconnecting
~ T2388: Nullpointer with displays
~ T2372: Shootout rail launching at 45 degrees
~ T2361: Power auxiliary is disabled for AI
~ T2357: Typos in credits
~ T2323: Rail or display connection not shown or desync after logic swap
~ T2284: camera detaches from character when numpad+ key is pressed multiple times
~ T2220: weapon menu unlinking support/effect doesn't update list
~ T2218: /SQL_Query command cannot be used with starnet.jar
~ T2202: Alt Gr combinations for characters don't register
~ T2159: Race disappears from race menu
~ T2124: Advanced Build mouse cursor does not show up when key reassigned to RControl
~ T1840: shopkeep can't be respawned
~ T1819: Tooltip doesn't update for single stack items <-> multi slot | meta-item interaction
~ T1686: Shop can only accept one incoming connection
~ T1494: Display Module  tags are cap sensitive
~ T1362: Jump distance not consistent (with changed sector size)
~ T1350: Thrust setting not saved in Blueprint
~ T111: Wireless connection isn’t wireless when on same Entity except Asteroids
We’ve also added more translations to the game and all of the typo fixes that were brought up by our hard working translators!
Now that our building tools are up to the job, we’re switching our focus on the power system update. We’ve already implemented some parts of it that should further reduce the amount of time needed to get the system in-game.
Balance, of course, is going to be tricky and will delay its real release date. Internal testing will catch quite a lot of issues, but public feedback on it will speed up things even more so make sure to keep an eye out on our future dev blogs for more information on that.
Thanks for playing StarMade,
~ The Schine Team