Stormworks: Build and Rescue - Deltars
Dear Stormworkers,

We are making this one-off announcement to share some special news.

Carrier Command 2

We are excited to announce that over the past couple of years, we have had the opportunity to build a sequel to the 1988 Microprose classic, Carrier Command (originally created by Ian Oliver and Graeme Bird). This game has been made by an entirely separate team to the Stormworks team, using a different original game engine and original code base.



This is a huge deal for us. I grew up on Microprose games, and as a game developer, I have always had a deep admiration for 1980s video game development, where the rules of game design were still being invented, hardware was extremely limiting, and development tools were primitive. When we are not making games, we are gamers ourselves and get really excited about classic games.

Carrier Command is one of the greatest example of 1980s game innovation. It was one of the first true 3D games, and the most detailed military sim of it's time. With an open world of islands to explore, and multiple cooperating vehicles, it has been a big inspiration in the creation of Stormworks. The magic and depth of this era of gaming is sadly lost in most of todays games, and something we have aimed to repair with Stormworks.



We have been working with Microprose (yes, they are back!) to create a true spiritual successor to the 1988 original. For us, that has been about capturing the depth of strategy and mechanics of the original, then pushing this all much, much further. You command from the carrier bridge, with a literalism where every screen, button and switch has an important function. You manage manufacturing, inventory, logistics, strategy, systems, and can take over manual control of any vehicle.



Carrier Command 2 is NOT a vehicle building game, it is a military simulation and strategy game.

For many players, this sequel is 30 years overdue and we only hope that we can make it worth the wait.

You can view the store page for Carrier Command 2 here.

What Does This Mean For Stormworks?

Nothing.

Carrier Command is made by a different development team, and the work is almost complete. Over the past 2 years, we have continued to release minor and major updates to our regular, uninterrupted Stormworks schedule and this is going to continue for years.

It has been very beneficial to be developing the additional experience, skills, and technology and both games have benefitted from being built near each other.

It is really important to us that players know we are committed to Stormworks and will support and improve the game for years to come. Let's discuss how:

Stormworks Development Roadmap

Here is our current roadmap as an info-graphic. We only have space to list out the main features and not all the minor updates, improvements and fixes that we will continue to add on our regular timetable.

If you have feedback or ideas that you think should be here, be sure to let us know! We are always listening to players and will adjust the plan to respond!



Answering Community Questions

Keeping players informed and answering your questions is important to us. We are going to trial a question and answer session and ask you to submit your questions over the next few days. We are still making plans but may try and answer them in a Youtube video. If this goes well, it could become a regular feature to best keep players informed and involved in the development process.

Submit your question now by clicking on this link! Thank you for the questions! Session has been recorded but keep an eye out here on the announcements and we may do this again.

Here is to 2021 and beyond! Tune back in on Friday for the weekly announcement.

Much love <3,

The Stormworks Developers
Stormworks: Build and Rescue - Deltars


Dear Stormworkers,

This week, as a minor update, we are adding vehicle to vehicle fire spreading, and have also added game save compression.

Now, when two vehicles collide with a little force, there is a good chance fire will spread from one vehicle to the other. At the point of contact, fire can spread if that point on either vehicle is currently on fire.

Fire spreading collisions require a little force, but much less than the amount of force required to do damage.

This change only makes fires more able to spread, more able to get out of control, and more deadly. If you are responding to a vehicle fire on land or at sea, please use caution! A small contact could set your vehicle alight and leave you stranded in the ocean on a burning ship!



Game saves had grown considerably in size the past few weeks since we added AI ships, so we added save compression to reduce game saves down in size. Saves typically reduce in size by over 90%. This also resolves several player issues where some players experienced slow downs during saving. We also addressed the issue with slow downs after loading previously saved games.

Save games remain backwards compatible so your old saves will still work.

The reduced save file size will also help us when adding more vehicles to the world, such as AI helicopters and planes that we plan to implement over the coming months.



Thanks to everyone who gave feedback on last weeks upcoming announcement! I don't think we have ever had so many comments on an announcement before.

As always, see below for the full list of changes including fixes and changes.

Also, be sure to check out experimental branch if you are interested in the modular engines. We added loads of new components this week and updated some mechanics. It is all a work in progress so some imagination is required but gives a sneak preview on what we are working on.



We look forward to hearing your stories about spreadable fire and other feedback :-)

Keep an eye out for a one off extra announcement early next week! We will be sharing some very big news as well as plans for 2021. We can't wait to share this info and will post it here on Steam announcements when we have all the info together (probably on Tuesday!).

Much love <3,

The Stormworks Developers

v1.0.25

Feature - Fire surfaces now spread between vehicles upon physics contact
Feature - Game saves now compress vehicles (Smaller and faster saves)

Fix - Lag Issue after reloading a world with AI vehicles in waiting state
Fix - onCharacterSit not correctly returning object ID
Fix - PID Max Error not saved when returning a vehicles
Stormworks: Build and Rescue - Deltars


Dear Stormworkers,

This week we will discuss the upcoming major updates we have started working on, and are in the pipeline to be delivered to players over the coming months.

We have taken players feedback, as well as the latest poll results very seriously, and aim to make the best improvements we can to your game.

Let's discuss the roadmap for upcoming major updates!

Modular Engines



Modular engines are currently being publicly tested over on the experimental branch of the game. So far we have added components for 1, 3 and 5 scale engines. We have already shared a render of the modular engine meshes, with many components yet to add, and balance yet to be completed.

We are hoping to make solid progress on modular engines over the next few weeks, and get more components and a better balance on experimental as soon as possible. Modular engines will be the next major update.

Nuclear Power



We are currently looking at component designs for nuclear power. The design concept is that nuclear reactors would be large and heavy and serve as a propulsion system for the biggest ships and submarines.

We are considering including components such as nuclear fuel rods, reactors, steam generators, steam turbines and condensers. In this way, nuclear reactors would be modular and players could arrange and connect them in many ways depending on their application.

We are still early in the design phase and would love to hear players ideas and feedback.

Steam Engines



We are currently looking at component designs for steam engines. There would be some component and system cross over with the nuclear steam components, but would be a lower sized and lower power set for medium sized vehicles.

Components could include coal bunkers, coal screws, furnaces, boilers, and piston drivers.

Let us know your thoughts and ideas, and what applications you would like to see steam engines used for.

More AI Vehicles



With AI boats now live on the main version of the game, we are also looking at AI helicopters and AI planes. These new vehicle types would work in a similar way to boats, with the seat type tagged to use a specific AI type and control input scheme. You would occasionally see aircraft in the sky flying past.

We are working on a set of AI compatible vehicles, the new AI code for piloting them, and the updates to the AI vehicles script to support spawning them.

Vehicle Weapons DLC



As the close second most highly voted request on the most recent poll, modular vehicle weapons are in development. This will be a paid DLC to reflect how big a change it is to the game experience, and to protect the base game as a search and rescue sandbox.

We are considering a variety of vehicle weapons, from 50cal machine guns, up to huge howitzer cannons, or explosive charges for your own mines, missiles, and torpedoes. The gun systems would be modular to incorporate gun cycle and chambering mechanics, and ammunition handing and feeding mechanics. Weapons would cause damage in a similar way to collisions and the new explosions that we quietly added in version 1.0.

With weapons and all other features in development, we look forward to working with players to design the best possible new features for Stormworks.

We have our work cut out, with many months of work planned. We continue to carefully consider players feedback and will be sure to run another poll after we have had chance to release at least a couple of these features so all players can have a fair say in the future direction of Stormworks.

We have also made some fixes and improvements. See patch notes below!

Much love <3,

The Stormworks Developers



Patch Notes

v1.0.24

Rework - Added Max error value setting for the PID block (set to zero to disable clamping)

Fix - Quit button disabled for multiplayer clients
Fix - Quit button disabled while incapacitated
Fix - Stormworks not responding while saving
Fix - SetVehiclePos() not correctly updating vehicle physics positions
Fix - Updated AI vehicles script to remove unused objects that were causing errors
Stormworks: Build and Rescue - Deltars


Dear Stormworkers,

This week, we bring you AI ships! There will now be hundreds of AI ships passively sailing in the ocean. These ships are persistent, and will continue to move around the world even when you are not around. These ships are on journeys and path-find across the ocean to reach their destination.

This feature has been on experimental, but is now in the main version of the game.

If you want to add your own ships to the AI system, follow the guide here: https://youtu.be/DyXhPy1oegc Remember, vehicles with big or complex physics will slow the game down, so please Stormworks responsibly.

To achieve this new feature, we have added a new property to seats: "AI Type". You can now set the type of AI to be used by NPCs on that particular seat. Right now, there is only one type of seat AI (ship piloting), and only NPCs that have had their AI activated via scripts are able to use these seats - but many of you will see the direction this may be headed!



We have also added new Lua functions to modify the AI state of an NPC - including being able to enable and disable AI capability, and set an AI action such as pilot to a destination.

Could this feature be extended to allow players to hire NPCs with AI capability, place them in seats, and give them orders? Are there other ways we could extend this feature? Let us know in the discussion comments!

This new feature has been actively developed over the last couple of weeks on experimental branch so many thanks to all the players who have been trying it out and giving feedback.



In response to your poll results, we are prioritizing new features that the community have decided most important. AI Ships, Planes & Helicopters ranked no. 5 in your most recent poll. We also hope to add AI helicopters and planes in the future. Meanwhile, we have also begun working on other highly voted new features, all while continuing to fix bugs and issues.

We hope you enjoy this new feature, and find it gives more life and interest to the world of Stormworks!

As always, we look forward to hearing all your thoughts and feedback.

Much love <3,

The Stormworks Developers



Patch Notes

v1.0.22

Feature - New AI Ships Playlist and character/seat AI behaviour type

Rework - Manual saving now uses a background thread like autosaves
(It is not reccomended to exit the game during saving)

Fix - Added onVehicleDespawn callback for explosions
Fix - Large Rotors editor selection hitbox updates
Fix - Door editor selection hitbox updates
Fix - NPC characters taking damage
Fix - River boats should no longer be treated as land vehicles for towing missions

Playlist Api Changes:

server.setVehicleKeypad(vehicle_id, keypad_name)
value, is_success = server.getVehicleDial(vehicle_id, keypad_name)
POSITION_LIST = server.pathfindOcean(start_matrix, end_matrix)
POSITION_LIST | { i = {x = world_x, y = world_y, z = world_z}}

is_on, is_success = server.getVehicleButton(vehicle_id, button_name)
count, is_success = server.getVehicleFireCount(vehicle_id)
is_success = server.getVehicleTooltip(vehicle_id, text)
is_simulating, is_success = server.getVehicleSimulating(vehicle_id)
is_success = server.setVehicleTransponder(vehicle_id, is_active)
is_success = server.setVehicleEditable(vehicle_id, is_editable)
server.setVehicleTank(vehicle_id, tank_name, amount, FLUID_TYPE)
FLUID_TYPE |
0 = water,
1 = diesel,
2 = jet_fuel,
3 = air,
4 = exhaust,
5 = oil,
value, is_success = server.getVehicleTank(vehicle_id, tank_name)
server.setVehicleBattery(vehicle_id, battery_name, amount)
value, is_success = server.getVehicleBattery(vehicle_id, battery_name)


server.setAIState(object_id, AI_STATE)
AI_STATE |
0 = none,
1 = path to destination,

server.setAITarget(object_id, matrix_destination)

hp, is_incapacitated, is_dead, is_interactable, is_ai = server.getCharacterData(object_id)
server.setCharacterData(object_id, hp, is_interactable, is_ai)
Stormworks: Build and Rescue - Deltars


Dear Stormworkers,

This week we begin testing 5x scale modular engine parts, new power and fuel modular engine balance, and AI boats in Stormworks (available now on the experimental branch of the game).

As discussed a couple of weeks ago, we have plenty of plans for the modular engines, and this week we are adding the 5x scale parts. These parts extend the 1x and 3x scale parts already on experimental.

The 5x scale parts include a piston, crankshaft, clutch, power manifold, and 5x to 3x adapter. These new parts allow players to create much larger, more powerful ship engines.



Along with these new parts, we have also been talking with and carefully listening to the experimental community, and have rebalanced modular engine fuel consumption and power production to make modular engines much more comparable with the non-modular engine performance.

Fuel consumption has been lowered and power production has been increased. This makes modular engines much more practical and effective to use. While modular engines are harder to design and use than their non-modular counterparts, the intention is that they can have prove very versatile and have a slight advantage in performance.

We have also begun work on AI boats which we plan to be a future minor update. This feature is being shared on experimental branch as we develop it. This feature involves various boats and ships spawning across the ocean, and navigating around with AI drivers. We are developing this feature in the new LUA framework and are having great fun building it up.



Boats and ships will travel through the world, and persistently move, even when the player is far away. This means that they can appear on the horizon and pass you by, before continuing on their journey as they vanish on the opposite horizon.

This is part of our plan to create a more dynamic, interesting world for players to explore. These new AI boats have been carefully designed to have simpler physics.

A full list of changes is available in the #experimental-changelog channel in the Official Stormworks Discord.

We are having a great time adding these new features, and hope you have as much fun playing with them. We look forward to hearing your thoughts and feedback!

Much love <3,

The Stormworks Developers
Stormworks: Build and Rescue - Deltars


Dear Stormworkers,

This week we are releasing a series of new and updated LUA functions that we have been developing in collaboration with players on the experimental branch!

With high demand, we have added many new functions for getting info about the world, as well as spawning and removing various objects. Many of these new functions have huge implications for what can be done with the scripting API, and many of these functions serve as a keystone for your projects.

We have been releasing these changes to the experimental branch as we have developed them. Now, with the benefit of player feedback, we are releasing them as a pack of functions in a minor update.

See the technical data below for a full list of changes to the API. This information is also reflected in the in-game API reference.



Meanwhile, we continue to work hard on the new modular engines and look forward to sharing the new features discussed last week. These new features will be released on experimental branch as we develop them, to give all players the chance to provide feedback.

We also have many new minor updates on the way, many of which use these new LUA functions!

We look forward to seeing what players build with the new API functions, as well as seeing other players complete their projects now the functions they requested are available.



As always, we look forward to your thoughts and feedback!

Much love <3,

The Stormworks Developers

v1.0.21

Full API Changes
=================

object_id, is_success = server.spawnFire(matrix, size, magnitude, is_lit, is_initialized, is_explosive, parent_vehicle_id, explosion_magnitude)

server.addMapObject(peer_id, ui_id, POSITION_TYPE, MARKER_TYPE, x, y, z, parent_local_x, parent_local_y, parent_local_z, vehicle_id, object_id, label, vehicle_parent_id, radius, hover_label)

server.addMapLabel(peer_id, ui_id, LABEL_TYPE, name, x, y, z))

PLAYER_LIST = server.getPlayers()
PLAYER_LIST |
{ [peer_index] = { ["id"] = peer_id, ["name"] = name, ["admin"] = is_admin, ["auth"] = is_auth, ["steam_id"] = steam_id }}

is_on = server.getVehicleButton(vehicle_id, button_name)

server.setVehicleSeat(vehicle_id, seat_name, axis_w, axis_d, axis_up, axis_right, button1, button2, button3, button4, button5, button6)

server.teleportPlayer(peer_id, matrix) is_success = server.setPlayerPos(peer_id, matrix)

server.teleportVehicle(matrix, vehicle_id) is_success = server.setVehiclePos(vehicle_id, matrix)

is_success = server.setObjectPos(object_id)

EQUIPMENT_ID, is_success= server.getCharacterItem(object_id, SLOT_NUMBER)

name, is_success = server.getPlayerName(peer_id)
matrix, is_success = server.getPlayerPos(peer_id)
x, y, z , is_success = server.getPlayerLookDirection(peer_id)
object_id, is_success = server.spawnObject(matrix, OBJECT_TYPE)
object_id , is_success = server.spawnCharacter(matrix, (OUTFIT_TYPE))
object_id, is_success = server.spawnAnimal(matrix, ANIMAL_TYPE, size_multiplier)
matrix, is_success = server.getObjectPos(object_id)
vehicle_id, is_success = server.spawnVehicle(matrix, playlist_index, component_id)
vehicle_id, is_success = server.spawnVehicleSavefile(matrix, save_name)
matrix, is_success = server.getVehiclePos(vehicle_id, voxel_x = 0, voxel_y = 0, voxel_z = 0)
name, is_success = server.getVehicleName(vehicle_id)
matrix, is_success= server.spawnMissionLocation(matrix, playlist_index, location_index)
is_success = server.spawnThisPlaylistMissionLocation(name)
matrix, is_success = server.getOceanTransform(matrix, min_search_range, max_search_range)

server.createPopup(peer_id, ui_id)
server.setPopup(peer_id, ui_id, name, is_show, text, x, y, z, is_worldspace, render_distance)
server.setPopupScreen(peer_id, ui_id, name, is_show, text, horizontal_offset, vertical_offset)

object_id, is_success = server.getPlayerCharacterID(peer_id)

The following functions were reworked to be more general for player and non-player characters, this functions gives you a player's object_id

server.killPlayer(peer_id) server.killCharacter(object_id)

server.reviveCharacter(object_id)

server.setSeated(peer_id, vehicle_id, seat_name) server.setCharacterSeated(object_id, vehicle_id, seat_name)

Can now set non-player characters to be seated

server.despawnCharacter(object_id, is_instant)
server.despawnMissionObject(object_id, is_instant)

These functions performed the exact same task as server.despawnObject(object_id, is_instant)

hp, matrix, is_incapacitated, is_dead, is_interactable = server.getCharacterData(object_id)
Character position can be obtained with server.getObjectPos(object_id)

Mission objects have been renamed to components to avoid confusion with game objects

LOCATION_DATA, is_success = server.getLocationData(playlist_index, location_index)
LOCATION_DATA |
{ ["name"] = name, ["tile"] = tile_filename, ["env_spawn_count"] = spawn_count, ["env_mod"] = is_env_mod, ["object_count"] = object_count ["component_count"] = component_count })");

COMPONENT_DATA, is_success = server.getLocationComponentData(playlist_index, location_index, *component_index*)
COMPONENT_DATA |
{ ["name"] = name, ["display_name"] = display_name, ["type"] = TYPE_STRING, ["id"] = component_id, ["dynamic_object_type"] = OBJECT_TYPE, ["tags"] = { = tag }, ["transform"] = matrix, ["character_outfit_type"] = OUTFIT_TYPE }

OBJECT = server.spawnMissionObject(matrix, playlist_index, location_index, object_index)
COMPONENT, is_success = server.spawnMissionComponent(matrix, playlist_index, location_index, component_index)
COMPONENT |
{ ["name"] = name, ["display_name"] = display_name, ["type"] = TYPE_STRING, ["x"] = x, ["y"] = y, ["z"] = z, ["transform"] = matrix, ["id"] = object_id/vehicle_id}

function onSpawnMissionObject(object_id/vehicle_id, name, TYPE_STRING, playlist_index)
function onSpawnMissionComponent(object_id/vehicle_id, component_name, TYPE_STRING, playlist_index)

function onVehicleSpawn(vehicle_id, peer_id, x, y, z, cost)
Cost is currently only calculated for player spawned vehicles

function onChatMessage(peer_id, sender_name, message)

is_success = server.despawnObject(object_id, is_instant)
is_success = server.despawnVehicle(vehicle_id, is_instant)

playlist_index, is_success = server.getPlaylistIndexByName(name)
location_index, is_success = server.getLocationIndexByName(playlist_index, name)
path, is_success = server.getPlaylistPath(playlist_name, is_rom)

server.onCharacterSit(object_id, vehicle_id, seat_name)

Quick info for updating old scripts
===================================

Removed Functions:
despawnCharacter did the same thing as despawnObject
despawnMissionObject did the same thing as despawnObject

Renamed Functions:
-teleportPlayer(peer_id, matrix) -> setPlayerPos(peer_id, matrix)
-teleportVehicle(matrix, vehicle_id) -> setVehiclePos(vehicle_id, matrix)
Please note the teleportVehicle arguments are swapped to be the same as other functions
-onSpawnMissionObject -> onSpawnMissionComponent
-spawnMissionObject -> spawnMissionComponent
-setSeated(peer_id, vehicle_id, seat_name) -> setCharacterSeated(object_id, vehicle_id, seat_name)
As seen above setCharacterSeated (and other character based functions) now use an object_id. To get a player's object id a new function has been added: getPlayerCharacterID(peer_id)

Functions that now return an is_success value will requre an extra set of brackets if used as arguemnts as lua will attempt to pass all return values unless the function is evaluated
old `local x, y, z = matrix.position(server.getPlayerPos(player_object.id))`
new `local x, y, z = matrix.position((server.getPlayerPos(player_object.id)))`

Rework - Cargo container design rework (Toggle buttons for connectors)
Rework - Added voice audio volume boost
Rework - Slightly increased player ground collider radius to aid getting stuck in small gaps
Rework - Added key type support for lua data saving (Now supports string(default) and unsigned)

Fix - CTD when returning a vehicle on fire via the map
Fix - Dedicated server ?save always saving to autosave
Fix - Vehicle editor currency display not apperaing after toggling infinite money
Fix - Playlist Lua callbacks errors are now cleared (Callbacks are not blocked after they error)
Fix - Script duplication when reloading scripts
Fix - onPlayerDie event resending when dropping a dead body
Fix - Client character objects not updating their internal peer_id when reconnecting to a server (Wrong peer_id Lua bug)
Fix - Several crashes from playlist Lua
Fix - Missing notification for loot crates
Fix - CTD with out of range outfit for spawnCharacter
Fix - CTD with out of range item for setCharacterItem
Fix - onPlayerSit now only triggers for player characters
Fix - Unable to place blocks on certain sides of doors
Fix - spawnFire() rejecting correct number of arguments
Fix - CTD on Lua failing to find vehicle data
Fix - Dev Train Junction MC showing in inventory
Stormworks: Build and Rescue - Deltars


Dear Stormworkers,

This week we have been hard at work on bug fixes and improvements, many of which will soon arrive on experimental branch.

We are also announcing some of the new concept we are working on with modular engines!

5 Size Parts

We are already testing 1 size and 3 size modular engine parts, but we are also considering adding a 5 size modular engine set with crank shafts and pistons occupying 5x5x5 voxels. These parts would be significantly heavier and more powerful than the smaller engine parts, with a weight to power ratio that is slightly more efficient than the smaller parts.

Flywheels

We are considering adding flywheels to engines. Flywheels would affect the engines overall weight and momentum, allowing it to store more energy, for high-torque applications. These flywheel parts would fit to the crankshaft.



Turbo Chargers

With the new combustion mechanics, air pressure is an important factor in generating power from engines. We are considering adding a turbo that can convert pressure from one line to another. For example, players could run their exhaust through a turbo to increase the pressure and flow of the air intake.

Air Scoops

New fluid parts that consider air flow speed can generate pressure at the point of intake. These parts could be like fluid ports, except they generate higher pressure when facing into wind or the direction of motion.

Heat Exchangers

Many players have been asking for heat exchangers and the concept of distilled water versus sea water. We are considering splitting the 'water' fluid type into 'sea water' and 'distilled water'. Sea water would damage engines over time, meaning the use of heat exchangers would be essential to circulate clean water through a ship engine that was using sea water cooling.



We can't wait to share new modular engine features with you, and will continue to share our progress on the experimental branch as we develop new features and concepts.

Thanks to the many players who have given us feedback on the new modular engines so far.

Much love <3,

The Stormworks Developers
Stormworks: Build and Rescue - Deltars


Dear Stormworkers,

This week we continue to develop the career and missions in Stormworks with new towing missions!

New missions will appear where the player needs to tow ships, trucks, and other vehicles that have experienced mechanical failures. These are very different mission types that provide a very different logistical challenge.



These new mission types are less frequent but combine with the rescue missions and transport missions to extend the kind of challenges and gameplay you experience in career mode.

We have more plans for career mode, but please keep sharing your ideas and suggestions with us as we continue to develop this part of the game.

Much of this new update has already been available and tested on the experimental branch.



Today we are also launching stoichiometrics for the modular engines on the experimental branch. This new concept is a rework of the combustion mechanics and algorithms within engines. Now, air to fuel ratio, RPM, engine temperature, and compression factor all influence the output of modular engines.

The air fuel manifold is now two separate components so that flow of fuel and air can be controlled independently.

Cylinders / pistons now show a new "stoichiometric" value on their tooltip. This is related to the air to fuel ratio and engine temperature, and is a value between -1 and 1. Within these values, the air to fuel ratio is within it's combustion range and the fuel will ignite. Outside of this range the engine is either too lean (-1), or flooded and too rich to fire (1). Cold engines require a richer air to fuel mix and will fire only within a narrower range of air to fuel ratio.

Cylinders / pistons also display a new "efficiency" value, based on the stoichiometric value and the RPM. Slightly lean fuel-air mix will produce higher fuel efficiency, while slightly rich will produce maximum power output. At higher RPM, the fuel and air will have less opportunity to mix and will decrease the power efficiency.

These new mechanics mean that designing modular engines is much more involved, and creating an engine that works well is a greater challenge. At the same time, we are trying to make the mechanics more transparent with these new tooltip values, and improve the fuel efficiency algorithm. The new system is designed to be more realistic, but still gamified and balanced for compatibility with other Stormworks components.

Modular engines continue to be subject to much change, so expect more changes, improvements and rebalances in response to your feedback.

We look forward to your thoughts and feedback on the new modular engine mechanics!

As always, we are also working very hard fixing bugs and making other improvements, so please see below for the full change log.

Much love <3,

The Stormworks Developers

v1.0.20

Feature - New Tow / Transport Vehicle missions

Experimental Feature - New Modular Engine Air/Fuel Stoichiometry
(Check out the experimental branch through Steam!)

Rework - Added network event to sync fully extinguished vehicle fires
Rework - Locating a rescue mission grants 30 mins more mission time
Rework - Decreased radius of locate zone objective so it should always be in view when completed
Rework - Mission UI is rebuilt when the map is opened
Rework - Rewards for deliver objectives now scale with distance
Rework - Doubled playlist script max characters

Fix - Remote Control not working fully for MP clients
Fix - onToggleMap callback not getting called
Fix - CTD when teleporting vehicle with NPC to workbench
Fix - CTD when rescuing character to the edge of a Hospital zone
Fix - Cargo script spawn count error with odd number of spawn locations
Fix - ?save not saving in certain situations
Fix - Playlist Lua getTilePurchased() requiring tile to be loaded
Fix - Screen fade not reversing if revived with <5 seconds left
Fix - Winches not saving correctly (Weird state when reloading them)
Fix - Gimbal Cameras not saving orientation correctly
Fix - CTD from monitor render target
Fix - Internal character peer_id not updating when relogging into a server (Playlist Lua looking for wrong peer_id)
Fix - Camera clipping into emissive player outfits
Fix - Z fighting on emissive player outfits
Fix - Seasonal outfit visual issues
Fix - Seasonal main menu camera clipping into trees

Lua Documentation updates:
Added section listing built in commands
Added section for API general info
Several small fixes
Stormworks: Build and Rescue - Deltars


Dear Stormworkers,

This week we discuss the poll results and start Halloween!

Starting on 24th October, Stormworks celebrates Halloween! As always at this time of year, expect extra character customisation, and spooky decorations at some of the coastguard bases! And if you see glowing red eyes in the water, do not go for a swim!

We have also been releasing new modular engine parts and balance changes on experimental. Check this out and let us know your thoughts if you get the chance! Experimental change logs are posted in the Official Discord Server.

2 weeks ago we ran a features poll on the Official Stormworks Discord. The features were mostly chosen from the most popular and highest voted feature requests on the official bug and feature tracker site (see the buttons in game!).

Your response was overwhelming and completely broke Discord, which could not handle the sheer number of votes / emotes submitted! However, we had our own screenshots from before Discord started to struggle so here are the results to discuss!



One thing is very clear from the results. Players do not all agree with each other, and there are many players who strongly believe in a minority viewpoint. Our job is difficult here because we want to make all players happy, and we obviously cannot immediately do this.

While the poll results isn't necessarily the order in which we will extend the game, and we can't promise any particular feature will become part of the game, we can say that major updates have almost always been features highly voted in an Official Stormworks Discord poll.

We take players feedback very seriously, we consider all players equal, and players come first.

Let's discuss the top voted features!

Nuclear Reactors



Nuclear power? Many submarines and even some ships are powered by nuclear reactors. As developers, we have to get the balance right. These reactors could be large and very heavy, positioning them as a great energy source for the largest vessels. We think they could be modular so that players have the most control over designing their reactors. Due to the level of popularity, and the fact this feature does fit well in the world of Stormworks, we think this is likely to be developed.

Weapons



Wow. Weapons have been included in polls in the past, but have never been so popular. Unfortunately, they have also proven to be very controversial, with many players believing they will damage the search and rescue theme.

Over the last few years, players have uploaded thousands of very detailed military vehicles, with imitation weapons. These vehicles look amazing, and we get that it is kind of disappointing that the weapons don't function, when so much in the world of Stormworks is so mechanical and so functional.

We have to listen to players, and most players obviously really want weapons. We cannot forget that Stormworks is an SAR game and we must allow all players to continue to play Stormworks as the SAR game they bought into if they wish.

We want to honour the majority of players who voted this feature up, but also respect the many players who are protective of Stormworks as a non-combat SAR game. For these reasons, weapons will come to Stormworks, but only as an optional expansion or DLC.

Weapons will include warheads, naval cannons, and some smaller vehicle mounted guns.

Sails

Sails have been highly voted in polls a couple of times now. We think they would be awesome and a great addition. Balancing wind power, and getting sail boats to function isn't something we set out to do, and this kind of mechanic is a game in itself. It is difficult to integrate into the existing rules of the game. We want to honour the many many players who have asked for this, but we are still discussing how the editing and forces would work.

Natural Disasters

This is a great concept, a great fit for the game, and already has some detailed implementation suggestions on the official features website. Volcanoes? Meteors? What else could this involve? Let us know! Is this one update or multiple updates? We don't know yet, but we do know that it is highly voted.

AI Ships, Planes, Helicopters



The world of Stormworks is a lonely one. Could ships sail by, or aircraft pass above? We would love to add more to the world, and we are discussing how we can do this.

Cooperative Vehicle Building



Many players do play Stormworks primarily as a building game, spending the majority of time designing in the editor. On large creations, it would be great to collaborate in real time, or even just to help a friend who is new to the game. We think this would be a great addition. At 6th most popular, and being a lot of work to develop, it probably won't be the next thing we work on, but we will not forget the many players who voted for this feature.

Arctic Ice-Breaking

What if the arctic was surrounded by a massive ice shelf? In places the ice could be meters thick, while in others it could be thinning. What if weight and force could break this ice? Ice breaking ships may suddenly become a big part of Stormworks, while players must use caution driving vehicles across the ice. This is a huge feature to add, and will probably not be added before the next poll.

Space

What if the atmosphere in Stormworks had a maximum height, and with the right vehicle and design, you could reach a geostationary distance from the surface? Above the atmosphere, we would have to add the concept of air versus vacuum, space walking suits, zero gravity, satellite radio communication, and more. In a similar way to weapons, this is too far from the core concept of the game to become part of the base package, and could only become part of Stormworks as an optional expansion, and probably requires more votes.

Stormwoofs



OK. This wasn't a top voted item, but many many are players asking us what Stormwoofs is. Stormwoofs is your dog and loyal companion. He can sit, fetch, woof, and help find survivors. Working rescue dogs are highly trained and frequently used in search and rescue operations. He is also a very good boy and needs your votes in the next poll! Can you really say no to that little face?

Thank you again to everyone who contributed to the poll! We are carefully listening to your feedback and will work hard on the next major new features with your guidance!

Don't forget to check out the experimental branch and help with your feedback and thoughts on any in-development content!

Much love <3,

The Stormworks Developers
Stormworks: Build and Rescue - Deltars


Dear Stormworkers,

This week we are releasing some new mission content we are working on - transport missions! Transport workers, inspectors, components, boxes and more in specific one-off missions where your help is required. These missions are similiar to many of the old missions but with one crucial difference - they are procedural!

While this is just one minor update to the missions system, we have more planned. We are really enjoying extending and using the LUA API to create this content, and there is a lot of really cool stuff still to be added.

These new LUA missions will appear in any new game, in the same way as normal missions. They are reasonably rare at the moment but we plan to continue to develop this and other new mission systems as we continue to improve career mode.



Last week we announced the poll on the Official Discord Server... and you broke Discord from voting so much! We have never had so much interest in the new features poll, and Discord simply could not handle the sheer number of emotes / votes. However, we were screenshotting the results periodically and have data from just before Discord started to struggle. The results are EXTREMELY interesting and we will be discussing the results in next weeks announcement!

Thank you to the thousands of you who gave your feedback on the poll. We really appreciate your input and it is very important to us that all Stormworks players get an equal say to influence us on where to next take the game. We really enjoy collaborating with you and are looking forward to continuing on this next chapter of Stormworks.



As always, this weeks update comes with many other fixes and improvements. Please see the full change list below for details.

Much love <3,

The Stormworks Developers

v1.0.18

Fix - removed some character controller changes to fix issue falling through floor on death

v1.0.19

Feature - New transport missions

Rework - Absorbed server.whisper into server.announce
server.announce new optional peer_id parameter
Rework - UI improvements

Fix - Players falling through the floor on respawn
Fix - Winch audio position
Fix - Currency not synced after auto refuel
Fix - Lua help documentation code blocks getting cut off
Fix - Script callbacks returning host player peer_id instead of -1 when executed by a script
Fix - Seat helmet rendering not smoothed
Fix - Hat override not ending when teleporting from seats
Fix - Cargo playlist issues after saving and loading
Fix - Mission "Find" objective now follows the main vehicle instead of staying at the spawn position
Fix - Mission component tags box should be multi-line
Fix - Mission map UI desync on player join
Fix - Map custom lines now render under other icons
...