I'm working on the universe redesign, but I'm trying to do some features along the way (which is no problem anymore because of all the work done on the core). A lot of things have been done and are running in the background for the universe system, but you won't see any of it until it's (mostly) done.
Calbiri is also working hard on a better system for the recipes in crafting.
Here are some of the features I did along the way:
This mode is now a checkbox in advanced build mode when selecting the "remove/replace filter" button in the bottom. Instead of just removing, this feature will replace the blocks taken with the one selected in the hotbar. This will make refitting ships a lot easier.
Missiles can be hit (Point Defense)
Missiles can not be shot by anything but laser. This will probably remain an advantage of using lasers. Missiles were the OP weapon in the game, and we hope, that making them attackable will allow especially smaller fighters a skill based chance to evade. Missile Point Defense is also on the way as a turret AI option, but not in this release.
Salvage to Storage blocks
You can now finally link you salvage systems to your storage blocks. Just hit C on the salvage computer and V on the storage block you want all the goods to flow into. You can also select multiple storage blocks from one salvage computer, and overflow will be put in the next free storage (if they are all full you will still loose the item), and connect from multiple salvage computers to the same storage block.
New Storage Block features
A bug has been fixed that would overwrite connections from multiple storage blocks to the same (n->1). Also you now have a "filter all" and "clear" button in your filter options to create filtered storage system much quicker. Finally you can now have the logic systems react to the fill rate of your storage blocks:
- Place an activation block next to a storage block, and it will send a "false" signal if the storage goes from not-full to full
- Place an activation block next to a storage block, and it will send a "true" signal if the storage goes from full to non-full
- Place an OR-block next to a storage block, and it will send a "false" signal if the storage goes from not-empty to empty
- Place an OR-block next to a storage block, and it will send a "true" signal if the storage goes from empty to not-empty
So basically to remember, the sigal will be "true" if the storage becomes neither empty nor full, and false otherwise
The OR-block in this case is being used to save on metadata. I'll try to make ingame information to make it more clear when these blocks can be used and what they do in those situations.
as you will quickly see, the hud has been changed a little bit to be much more slick. This is of course the work of Kupu, who did the new icons of the new weapons as well.
You will not also have a hit indication popping up. This indication is synched to the server so whenever it flashes you hit with 100% certainty. Pilots get this indication on anything (blue when shields are hit, white when blocks are taking damage, and red if an astronaut is hit), while astronauts get them on anything but hitting planets and stations.
Also, the feature that astronauts blick red when hit is now back. This feature is also server synched.
New personal weapon: Sniper Rifle
This new weapon is at the moment only available for admins with /give_sniper_weapon playername
It fires a high damage hit-scanning beam in a pretty long range but has a medium reload rate
New personal weapon: Rocket Launcher
This new weapon is at the moment only available for admins with /give_rocket_launcher_weapon playername
it fires a slot bu powerful missile and has a very long reload rate
(also some stats have been changed in the laser weapon, so ask for a replacement from your admin (or alternatively start a new character))
There are 3 new admin commands to help with the creation of PvP minigames:
- You can now use for example /sector_chmod 2 2 2 + noindications, so no player in this sector will get any indication where others are (as if everyone was jamming) (using the same command with '-' reverts it back to normal)
- You can now use for example /sector_chmod 2 2 2 + noexit (or noenter) to close down sectors from people entering or leaving
- A new command /tint r g b a, lets you tint the texture of a selected astronaut. The values for r, g, b, a have to be between 0.0 and 1.0, so /tint 1.0 0.4 0.4 1.0 would tint the astronaut in red
- The same command can be used as /tint_name r g b a playername, to tint an astronaut without having to select him
Missile Blast Behavior Change
Missiles will no longer kill astronauts that are behind walls. The kill will only occur if the blast center has a clear line to the astronaut. It's far from a perfect solution, but it's a lot better, and I already have another more realistic solution in mind. Keep in mind that the check is most likely done before the blocks are killed, so you will survive one missile even if the blocks you got behind to shield yourself are being taken out by that missile.
Amongst some other bugs (which I'm going to list next update), the power consumption of jamming/cloaking when flying with docked ships have been fixed. Special thanks goes out to all the testers :D
I will continue to work on the bigger project that is universe redesign and also continue to release features along the way.
Thanks for playing StarMade,
to give a neutral and more short way to get your latest starmade news, the youtube channel is back alive. Thanks to the overwhelming support from the youtubers we plan to have several people posting videos there. Foremost little 30sec cuts of features of dev builds.
But also cross promotion with other channels is planned.
Here is the first little update video:
More will come very soon!
Thanks for playing StarMade,
If you get a crash on start-up and you have an ATI card, please turn off occlusion culling in the advanced options on startup. For some reason some drivers don't support this over 10 year old standard.
here are a few fixes:
- fixed yellow box in build mode of stations
- fixed some shader related crashes
- fixed factories being broken when old recipes are used
- fixed server list sorting
- server list item compatibility checkbox now doesn't need refresh
- normal maps from kupu are now updated with the latest blocks.
Having a little time for optimization I did some profiling and found some rather taxing parts. After optimizing those processes server performance should get a good boost (less red messages ^^)
More server optimizations are planned, especially for huge servers to bring database size and scalability under control.
Thanks for playing StarMade,
a huge update is now finally done. Here are the new features (amongst other smaller ones):
Warp technology was something I held back to really have the necessary core to be able to make work, as that can easily break game play. With all the updates to the core, as well as all values available in the config, and also combined with our now concrete plans for a universe redesign, it's finally time to put warp into the game.
Warp gates are the stationary version of structures that enable players to warp. Their rage is 8 systems (128 sectors), but that still can change if needed (available in config). They have a steady power cost on size, and also a one time cost per ship that passes through, which is based on the mass of the ship.
Once passed, your ship will take 2 seconds to warp up and then warp. Note that you can only jump to stations with an operational jump gate.
How to build and connect Warp Gates
Warp gates have to be build in a two-dimensional loop. That means, each block that is connected to the gate computer (place that one first) must exactly touch two other gate blocks. The simplest form is to build a flat square. The computer will give feedback if the gate is currently operational. Be sure to select the computer with 'C' as it also happened to me that I patched up a gate without connecting the blocks to the gate computer, and then wondering why it didn't go online.
Now that you have your gate, it's time to connect it. For that you will need need the new marker beam. It will be in your inventory as a fresh player, or you can ask an admin for it (/give_marker_weapon yourname). This new beam is not only going to be used with gates, it will be the main tool to use for inter-structure connection, which for example also comes in handy with the coming AI fleets, and more.
This marker beam has two firing modes: Right Click will mark a structure. In the case of warp gates you can shoot the gate station anywhere to mark it. Right clicking the marker beam in the inventory will not tell you that it has a marking saved. You can now shoot the marker beam on another gate to enter its destination. To do that you have to use Left Click on the gate computer you want to set the destination for. As a fast way to connect the other ons to this, you can then then shoot the gate with right click to overwrite the saved marking with that gate, go then through the now working gate, and enter the mark on the other gate. You now have both gates connected.
Kupu(tom) made the textures for all the new blocks and items.
Jump Drives are the portable version of structures that enable players to warp. You can put them on a ship, charge them up, and instantly travel up to 8 sectors (max distance is also in the config). The destination to jump can be influenced in two ways. Either you jump in the direction you were looking at when engaging the jump drive, or you can use a more precise method: entering a waypoint in the navigation panel will enable you to jump towards the waypoint no matter in which direction you look in. It even puts you directly at your waypoint sector if it is fewer than 8 sectors away.
Jump Drives can be placed like any other weapon or effect. They will appear in the weapon panel to put in the hotbar to use. Keep in mind that there is a sweet spot for jump Drive modules depending on ratio of total mass to jump drive modules. You can build them as small as you want, but they will take much longer to charge up. Placing more blocks than the sweet spot will make charging even faster, if you want to specifically build a jumping ship. But keep the power costs in mind. The statistics of where the sweet spot is are in the weapons panel if you click on the jump drive.
To charge, you have to hold the left mouse button in flight mode like shooting a weapon. After it is charged, you can press right click to jump. The mechanic to actively have to charge up the Jump Drive is in place to make it more dangerous to use in battle. The drive has a small cooldown after jumps (10sec at the moment).
But be warned. Changing the blocks on a jump drive will reset the charge immediately. The charge will also be reset if hit, so make sure you are save before starting to charge up (you can still of course do it while flying).
Save/Load Templates to paste
A new feature has been added to the advanced build mode. You can now save what you selected with "copy" and load it to paste any time you need it. The only restriction is, that you can't paste templates that exceed the mass build area dimension of the server you are playing on. These files can also be shared (located in StarMade/templates) to make toolboxes for any purpose.
Optimization for up to 50% more fps (depending on hardware)
Occlusion Culling was a technique I tried over and over to make work over the past 4 years. The problem is that it has a very narrow line of performance taken to gain performance. So a wrong design or a small mistake will cause it to not give any performance boost, or even lower the overall graphics performance.
Some graphics cards have not full support of this feature (even if they say they do by specification), so if you get any flickering, you can turn it off without having to shutdown the game in the in-game options. A one time message when starting the game will also provide this info.
Technical: Basically, occlusion culling is the technique to not draw parts of geometry that is behind other objects (occluded). What sounds easy informally, is one of the hardest problems to get working right. The first problem is, that at the time of draw, you don't know which objects are occluded without drawing them first. Draw too few, and the objects that would be normally occluded will be falsely drawn, draw too much, and there is no actual gain in performance, as you have already basically drawn it. The second problem is that graphics processing is happening in a pipeline and asynchronous, so the data is not actually there yet at the time the draw command returns. That means a lookup to check if an object is occluded forces the pipeline to a halt to have all the data flushed before being able to continue. And this of course means immense slowdown. The third problem is that occlusion culling require objects to be drawn front to back (else they objects wouldn't known to be occluded), and blended draw (for glass etc) requires back to front.
To combat the first two problems, there are two techniques used based on the same premise: "If one object was not visible in this frame, it's highly unlikely to be visible in the next". What is done is drawing all chunks that are known to be visible, then (very fast) bounding boxes are drawn for each chunk that may be visible or not. At the start of the next frame, the results of the query of the last frame are pulled to have no pipeline stall. The again, all possibly visible chunks are drawn based on the new result, and the rest as bounding boxes.
The 3rd problem is lucky already solved by design. StarMade sorts chunks threaded, and vertex storage is done in a way so non-opaque parts of chunks can be drawn separately.
Movement cancel (cancel rolling of big ships)
Pressing 'V' (but you also can assign it to the break button) will now cancel any mouse movement. This is especially handy for bigger ships, when you start to roll the ship and want to stop.
Storage blocks filters
Another big feature are storage block filters. The storage blocks now essentially work like factories, but have a distinct use case. You can make list of which blocks and how many of them to take each cycle from other storages. Just open up your storage block and click on filter. The blocks will be taken out of any block that is connected to this one with 'v'.
This way you can not only sort items after production or from looting, you can also split them up and direct them into a factory system to make exactly what you need.
Each storage block or factory can be turned on and off now. Please note, that factories placed in the old version had the default active state "false", which means you will have to switch those back on again. All newly placed factories or storage blocks are switched on by default though.
The whole system now also is fully logic capable, so you can connect storage/factories to activation modules to control your production and item sorting with the press of a button.
Oculus Rift support
StarMade now has full oculus support, including head tracking. It was an amazing experience to try out for the first time.
By fiddling with the way StarMade versions are built and deployed I was able to decrease the size of the main program to 5-7MB. That means, that unless there are more files to download (like in this update, as you have to download all the libs one time, as well as textures), an update will only be 5-7MB with the new launcher.
Launcher version 14
Downloadable from the main download list, the new launcher version is now fully deployed. Some bugfixes have been done based on the feedback from the tests. One new feature since v12 is that downloads will now be a lot more stable, as they can actively resume. As a test, I was able to resume downloading after disabling my network card for 30 seconds.
StarMade Server List
StarMade now has its own dynamic server list. You can now click on the server list button next to multiplayer and get an overview of all StarMade servers that choose to annouce themselves to the list.
For Server Admins:
Announcing to the Server List is just a few server.cfg parameters:
This is an example for the test server
ANNOUNCE_SERVER_TO_SERVERLIST = true //announces the server to the starmade server list
HOST_NAME_TO_ANNOUNCE_TO_SERVER_LIST = play.star-made.org //this must be a valid hostname (either ip or host, e.g. play.star-made.org)
SERVER_LIST_NAME = Official Test Server //max length 64 characters
SERVER_LIST_DESCRIPTION = Unlimited building //max length 128 characters
please make sure, that the host name is right. The server list server will check if there is indeed a real starmade server on the other side.
Port is set automatically by the running game server. You can also enter multiple instances from the same server that run on different ports.
The server will usually appear within a few moments of starting it with correct parameters.
The personal salvage beam now has a 25% chance to harvest an extra raw resource each harvested block. This setting can be of course modified in the config.
The personal power supply beam now provides a lot more power per hit to be a lot more usable in survival situations. Also the display bug of factories showing 500/100 has been fixed.
Calbiri is currently working on missing recipes as well as overall tweaking on the balance. It's now also possible to set the manufacture time of each block individually to allow for more balance options.
Lots of Bugfixes
There has been a lot of testing and a lot of fixes. Thanks especially to AndyP, der_scheme, gamesaucer, Lancake, Spaceking, testkil, and all the other testers! You guys are awesome!
Next updates will include more small features, as well as more work on the universe redesign and creature AI.
Thanks for playing StarMade,
here is another update full of bugfixes to long time annoying but also newer bugs, and some small features.
Shield Supply/Drain Beam
This new beam will work like the power drain/supply beam with the difference that instead of power, it will drain/supply shields. This is just a first version, and it might not be balanced yet, but that will be done as soon as possible.
New Moddable Tutorial System
When going into the main menu, there is now a new option "Tutorials" on the bottom, where you can select from a list of topics. These are at the moment mostly drafts as the most work went into making the system to externalize the tutorial system. The refinement, organization, and more of those tutorials will be done over time, as basically now anybody can make and change them. The data for them is in StarMade/data/tutorial, and itis based on a simple finite state machine.
The lag from entering a large ship the first time should now be gone.
Planet generation has been improved to look a lot better on the edges. The algorithm now adapts per distance to the edges gradually in itself (hard to explain without getting technical (basically the noise generation is smoothing itself).
This will lead to a lot less hard lined cliffs.
Not that that only planets that haven't generated yet are affected by the change. Planets you visited, or flew by in a one sector distance will not change until universe reset or deletion of the raw planet files individually.
Importing sectors with planets will now also finally work as intended. You will have to export the sector again though, as the exporting was flawed and didn't include the planet core.
A very annoying bug, that the players faces glitch through helmets is now also fixed.
Also, missile radii were calculated with a wrong base always causing small craters, which is now fixed. Additionally we now have the option to assign explosion absorption to the block stats. This means the block damage itself will still be based on hp and armor, but the overall damage the missiles goes on to do in a bigger radius is lessened. This option isn't in use for any blocks yet though, to not accidentally make something overpowered.
And lastly one extremely annoying bug for basically ever was that the build indicator in moving ships was flickering. This has now be finally fixed, too.
Here are the other bugs fixed. Resolved means, that they are not 100% confirmed to be fixed.
Thanks for playing StarMade,