Version 0.18.0

Information about releases and roadmap.
User avatar
FactorioBot
Factorio Staff
Factorio Staff
Posts: 425
Joined: Tue May 12, 2015 1:48 pm

Version 0.18.0

Post by FactorioBot »

Features
  • Steam users can now log in automatically through Steam without needing their Factorio account password.
  • Steam users without a Factorio account can create one by providing only a username.
  • Reworked main menu structure.
  • Added a "Continue" button which quickly loads the latest save game.
  • Added a "New Game" GUI that shows all the ways to play the game
  • Added a setting to the map editor to show/hide the extra entity settings.
  • Added a map editor GUI to edit force data modifiers.
  • Added a PvP team option to create a moat around the starting area.
Graphics
  • Added animation to water.
  • Added animation to trees.
  • Added LUTs and color corrected the game sprites.
  • Added sliders to the graphics settings to adjust brightness, contrast, and saturation.
  • Added on damaged effects for most entities.
  • Added specific dying explosions for most entities.
Sounds
  • New or updated sound effects include:
  • Nuclear reactor, chemical plant, furnace, fire, burner mining drill.
  • Tank.
  • Mining by hand, chopping wood
  • Roboport door, Combat robots
  • Player footsteps.
  • Biter and Spitter footsteps.
  • Worm breathing, Spitters and Biters, idling and attacking.
  • New sound features include:
  • The ability to fade out sounds instead of a sudden stop, e.g. for the furnace.
  • Varying the pitch of sounds to a min/max level, to add more variety.
  • A 'Random, no repeat' feature to reduce repetition, especially on sounds that happen frequently, such as player steps.
  • The sound for the game has also been rebalanced to highlight certain sounds and make others fade into the distance.
  • The default sound settings have also been updated to improve this mix.
Optimizations
  • Optimized particle logic.
  • Improved performance when side-loading transport belts.
  • Improved performance of inserters interacting with assembling machines and furnaces.
  • Improved performance of inserters when the circuit network turns them off.
  • Improved performance of mining drills and inserters in general.
  • Improved performance of burner entities.
  • Improved performance polluting entities.
  • Improved performance of smoke producing entities.
  • Improved performance logistic and construction robot performance when they're flying towards their target.
  • Improved performance of furnaces and assembling machines that use fluids.
  • Improved heat pipe performance by 3x.
  • Improved item request proxy performance by turning them off in 99%+ of the cases.
  • Improved locomotive, cargo wagon, and fluid wagon performance by turning them off in 99%+ of the cases.
  • Electric networks, fluids, and heat pipes are updated in parallel if you have enough cores.
  • Improved script rendering performance for text and lines.
  • Improved performance of rotated bounding boxes.
Bugfixes
  • Fixed the recipe tooltip showing negative values for some complex recipes. (77512)
  • Fixed graphical glitch when GUI element with blurred background got out of bounds of the screen. (78278)
  • Fixed hard coded English string in NPE. (78203)
  • Fixed potential crash in NPE when Compilatron is pointing at something that gets deleted. (77669)
  • Fixed issue where sometimes you couldn't move to the second area in NPE. (77763)
  • Fixed issue where Compilatron would sometimes tell you to build more boilers when that was not the problem. (77931)
  • Fixed issue where Compilatron's speech bubbles could block you from interacting with the world behind him. (77616)
  • Fixed items with excessively long names squashing the count label in the recipe tooltips. (78274)
  • Fixed accumulator charge text in statistics bouncing around because of inconsistent number of digits. (78274)
  • Fixed train path finding penalty when there are 2 or more trains in block. (78336)
  • Fixed a crash when creating trains during the player moved event that was caused by the player getting ejected from a vehicle because the vehicle died. (78620)
  • Fixed a crash when removing mods that had custom GUI elements. (78550)
  • Fixed a crash when using Lua event filters when the thing to be filtered becomes invalid. (78559)
  • Fixed that some turret sounds could be heard on other surfaces. (78503)
  • Fixed that the tooltip for the generator would not show its efficiency correctly. (78226)
  • Fixed a crash related to building tiles in multiplayer with some mods. (78552)
  • Fixed that turrets would sometimes fail to attack things that are in range. (78789)
  • Fixed follower robot lifetime tooltip property not taking into account following_robots_lifetime_modifier. (78842)
  • Fixed cliffs sometimes getting marked for deconstruction when they shouldn't have been. (78504)
  • Fixed inconsistent rounding in the statistics window. (78370)
  • Fixed a desync when setting .active=false on beacons through script. (78469)
  • The map will be re-charted when the mod configuration changes. (78868)
  • Fixed inserters sometimes not being highlighted when selecting a large modded vehicle. (78633)
  • Fixed a crash when entity grid would destroy itself during update. (78887)
  • Fixed a crash with rich text tags and dynamic images. (78980)
  • Fixed setting the held stack of an inserter didn't update the inserter state correctly. (79031)
  • Fixed tooltip alignment in some specific cases. (77904)
  • Fixed a crash when lua removes pipe-to-ground between entity revive and deferred pipe connection fix. (79113)
  • Fixed a crash when setting infinity chest filters to legacy items. (79453)
  • Fixed that splitters could be set to have invalid bounding boxes that would lead to corrupt saves. (78225)
  • Fixed word wrapping of rich text containing tag that doesn't fit given width would duplicate the tag on multiple lines. (79174)
  • Fixed if migrating old achievement data to Steam Cloud failed, the old file would not be deleted resulting in the same error on every startup. (79644)
  • Fixed train pathfinding penalty for circuit network closed rail signal was not applied in some cases. (79640)
  • Fixed a crash when mods would define construction robots without some sprites. (79697)
  • Fixed that trying to do 0 damage would still trigger the entity-damaged event. (79579)
  • Fixed a save corruption issue related to modded loaders with different belt_distance values. (79200)
  • Fixed that train would forget amount of ticks waiting at signal when doing repath. (79640)
  • Fixed that train pathfinder was not counting penalty of last segment length in path cost. (78821)
  • Fixed PvP error on configuration changed. (79296)
  • Fixed pump tooltip showing double pumped amount when pumping to fluid wagon. (79942)
  • Fixed manual ghost revive of a loader in unload mode would not work in visually matching direction. (79124)
  • Fixed calling LuaEntity::order_deconstruction() on item-request-proxy would corrupt the game state leading to crash. (80096)
  • Landfill can be placed over shallow water.
  • Fixed that LuaEntity::color wouldn't accept "nil" to reset the color. (80172)
  • Fixed that train pathfinder was not counting penalty of opposite train stop at last segment.
  • Fixed that train pathfinder was counting penalty of whole starting segment instead of only part in front of locomotive. (79951)
  • Fixed that train pathfinder would return single segment path even if there are shorter, multi segment ones. (79951)
  • Fixed technology screen not showing modifier tooltips when tooltip descriptions are disabled. (79499)
  • Fixed belt tooltips sometimes showing their speed in exponent format. (79100)
Modding
  • Added UnitPrototype::light.
  • Removed the "particle" prototype type.
  • Added the "optimized-particle" prototype type.
  • Added the "burner-generator" prototype type.
  • Removed GeneratorPrototype::burner.
  • Added the "pass_through_mouse" option to speech bubble styles. This lets mouse interactions fall through to interact with the world behind.
  • Added optional "radius_color" property to capsule prototype.
  • Removed EntityPrototype::emissions_per_tick, it is replaced by emissions_per_second.
  • Removed EnergySourcePrototype::emissions_per_second_per_watt and emissions, they are replaced by emissions_per_minute.
  • Removed TilePrototype::ageing, it is replaced by pollution_absorption_per_second.
  • Removed ItemPrototype::stackable, primary_place_result_item and can_be_mod_opened, they were replaced by ItemPrototypeFlags "not-stackable", "primary-place-result" and "mod-openable".
  • Added "probability" to trigger items and trigger effect items.
  • Added "script" trigger effect item. It will call the "on_script_trigger_effect" when triggered.
  • Added AttackParameters::rotate_penalty and AttackParameters::health_penalty.
  • Added generic support for rendering radius visualisations on entities through radius_visualisation_specification.
  • Changed construction robots and logistic robots sprites to be optional.
  • Changed the loader prototype type so it has a fixed belt_distance of 0.5.
  • Added the prototype type "loader-1x1" that has a fixed belt_distance of 0.
  • Changed render layer of belt structures (underground belt, splitter, circuit connector) to object layer. They now have special sorting logic, so they are not rendered over player or cars.
  • Horizontal directions of splitter sprites were separated to two sprites (for purposes of the special sorting logic).
  • Added AttackParameters::ammo_categories.
  • Added optional artillery projectile property "rotatable".
  • Scenarios can now contain a description.json file. In the file "order" determines the sorting in the New Game gui; "multiplayer-compatible" determines weather the scenario is shown for multiplayer games.
  • Added "multiplayer-compatible" to description.json file of campaigns also.
Scripting
  • Added on_unit_group_finished_gathering and on_build_base_arrived events.
  • Added LuaRendering::bring_to_front().
  • Changed LuaGameScript::particle_prototypes to reference the optimized-particle type.
  • Added LuaGuiElement::scroll_to_item() function.
  • Renamed LuaInventory::hasbar(), getbar() and setbar() to supports_bar(), get_bar() and set_bar().
  • Added LuaEquipmentPrototype::attack_parameters read.
  • Added on_script_trigger_effect event.
  • Set lower limit of zoom parameter of LuaGameScript::take_screenshot to be 0.0315 (1 pixel per tile) instead of allowing any value greater than 0.
  • Added LuaPlayer::get_infinity_inventory_filter(), set_infinity_inventory_filter() functions.
  • Added LuaPlayer::remove_unfiltered_items, infinity_inventory_filters read/write.
  • Added LuaSurface::get_entities_with_force().
  • Added optional "dealer" parameter to LuaEntity::damage().
  • Added "force" filters to the on_built_entity and on_robot_built_entity event filters.
  • LuaSurface::min_brightness doesn't have any effect on rendering as brightness of night depends only on color LUT of night.
Use the automatic updater if you can (check experimental updates in other settings) or download full installation at http://www.factorio.com/download/experimental.
User avatar
Gergely
Filter Inserter
Filter Inserter
Posts: 616
Joined: Sun Apr 10, 2016 8:31 pm
Contact:

Re: Version 0.18.0

Post by Gergely »

Just when I finish making my real life spaghetti this happens.

I'm only prepared on Fridays.
Koub
Global Moderator
Global Moderator
Posts: 7807
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Version 0.18.0

Post by Koub »

Holy sh*t, that was unexpected :o
Such a nice surprise :)
Koub - Please consider English is not my native language.
User avatar
mexmer
Filter Inserter
Filter Inserter
Posts: 870
Joined: Wed Aug 03, 2016 2:00 pm
Contact:

Re: Version 0.18.0

Post by mexmer »

hmm is it did we jump in time 2 months and 10 days forward in time?
poboxy
Manual Inserter
Manual Inserter
Posts: 1
Joined: Tue Jun 28, 2016 12:54 am
Contact:

Re: Version 0.18.0

Post by poboxy »

thanks
Last edited by poboxy on Tue Jan 21, 2020 3:12 pm, edited 1 time in total.
User avatar
Klonan
Factorio Staff
Factorio Staff
Posts: 5290
Joined: Sun Jan 11, 2015 2:09 pm
Contact:

Re: Version 0.18.0

Post by Klonan »

poboxy wrote: Tue Jan 21, 2020 1:54 pm You guys changed the update api?
Can you be more specific?
User avatar
mikiqex
Burner Inserter
Burner Inserter
Posts: 17
Joined: Fri Mar 04, 2016 2:08 pm
Contact:

Re: Version 0.18.0

Post by mikiqex »

I have plans for the afternoon... aaaand they're gone. :lol:
User avatar
JaJe
Long Handed Inserter
Long Handed Inserter
Posts: 86
Joined: Wed Feb 27, 2019 6:48 pm
Contact:

Re: Version 0.18.0

Post by JaJe »

Just when I thought you guys fixed most of the bugs from 0.17 that I never found while playing Factorio, you still fix a lot more. What are you going to do? Create a perfect bug-free game? You want AAA Companies to hate you? :D
seePyou
Fast Inserter
Fast Inserter
Posts: 103
Joined: Mon Apr 03, 2017 3:17 pm
Contact:

Re: Version 0.18.0

Post by seePyou »

Oh my Lord!
this is great news! :)

Did not see anything though about the fluid mechanics, which will allow fluid from one pipe to navigate a pipe junction effectively without starving any one trailing pipe. Is this reserved for release version 1.0 ? No bad feelings, just want to know when that might come.
User avatar
Gergely
Filter Inserter
Filter Inserter
Posts: 616
Joined: Sun Apr 10, 2016 8:31 pm
Contact:

Re: Version 0.18.0

Post by Gergely »

Uhh... what's the point of this menu stage?

Why couldn't you make the scenario selection screen have a load save button or the load save screen have a new game button instead? (Latter one is what Minecraft does.)

Or you could just move these two buttons to occupy the place of the "Singleplayer" button in the main menu, under a subcategory named "Singleplayer" instead of having this be an entire menu layer.
Attachments
18F.PNG
18F.PNG (53.05 KiB) Viewed 48807 times
Jelmergu
Long Handed Inserter
Long Handed Inserter
Posts: 77
Joined: Mon Apr 04, 2016 8:49 am
Contact:

Re: Version 0.18.0

Post by Jelmergu »

Perfect timing, had nothing else to do, now I have a bunch of mods to update
User avatar
planetmaker
Fast Inserter
Fast Inserter
Posts: 188
Joined: Mon Jan 21, 2019 9:30 am
Contact:

Re: Version 0.18.0

Post by planetmaker »

Updating my headless server from 0.17.69 it fails to start (last line of quote being the interesting one):

Code: Select all

$ cat ../factorio/factorio-current.log 
   0.000 2020-01-21 14:10:20; Factorio 0.18.0 (build 48939, linux64, headless)
   0.000 Operating system: Linux
   0.000 Program arguments: "/home/factorio/factorio-main//bin/x64/factorio" "--config" "/home/factorio/factorio-main//config/config.ini" "--port" "34197" "--start-server-load-latest" "--server-settings" "/home/factorio/factorio-main//data/server-settings.json" "--server-adminlist" "/home/factorio/factorio-main//data/server-adminlist.json" "--use-server-whitelist" "--server-whitelist" "/home/factorio/factorio/data/server-whitelist.json" "--executable-path" "/home/factorio/factorio-main//bin/x64/factorio" 
   0.000 Read data path: /home/factorio/factorio/data
   0.000 Write data path: /home/factorio/factorio [11590/20480MB]
   0.000 Binaries path: /home/factorio/factorio/bin
   0.007 System info: [CPU:         Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz, 3 cores, RAM: 6144 MB]
   0.007 Environment: DISPLAY=<unset> WAYLAND_DISPLAY=<unset> DESKTOP_SESSION=<unset> XDG_SESSION_DESKTOP=<unset> XDG_CURRENT_DESKTOP=<unset> __GL_FSAA_MODE=<unset> __GL_LOG_MAX_ANISO=<unset> __GL_SYNC_TO_VBLANK=<unset> __GL_SORT_FBCONFIGS=<unset> __GL_YIELD=<unset>
   0.007 Running in headless mode
   0.010 Loading mod core 0.0.0 (data.lua)
   0.064 Loading mod base 0.18.0 (data.lua)
   0.311 Loading mod base 0.18.0 (data-updates.lua)
   0.437 Checksum for core: 754498064
   0.437 Checksum of base: 1764170270
   0.674 Prototype list checksum: 3035509248
   0.777 Info PlayerData.cpp:68: Local player-data.json available, timestamp 1579614846
   0.777 Info PlayerData.cpp:75: Cloud player-data.json unavailable
   0.778 Error Util.cpp:83: Value must be a bool in property tree at ROOT.multiplayer-compatible
I'm a bit confused as to what setting needs changing or what exactly it complains about.
User avatar
Klonan
Factorio Staff
Factorio Staff
Posts: 5290
Joined: Sun Jan 11, 2015 2:09 pm
Contact:

Re: Version 0.18.0

Post by Klonan »

planetmaker wrote: Tue Jan 21, 2020 2:23 pm Updating my headless server from 0.17.69 it fails to start (last line of quote being the interesting one):

Code: Select all

   0.778 Error Util.cpp:83: Value must be a bool in property tree at ROOT.multiplayer-compatible
Do you have some custom scenarios in the directory? The data they need has been updated:
Scenarios can now contain a description.json file. In the file "order" determines the sorting in the New Game gui; "multiplayer-compatible" determines weather the scenario is shown for multiplayer games.
Added "multiplayer-compatible" to description.json file of campaigns also.
User avatar
planetmaker
Fast Inserter
Fast Inserter
Posts: 188
Joined: Mon Jan 21, 2019 9:30 am
Contact:

Re: Version 0.18.0

Post by planetmaker »

Klonan wrote: Tue Jan 21, 2020 2:26 pm
Do you have some custom scenarios in the directory? The data they need has been updated:
Scenarios can now contain a description.json file. In the file "order" determines the sorting in the New Game gui; "multiplayer-compatible" determines weather the scenario is shown for multiplayer games.
Added "multiplayer-compatible" to description.json file of campaigns also.

Not that I am aware of. It seems only the default scenarios (see file logs). The server purposefully is completely unmodded and was using normal savegames or maps generated by a string for map starts


EDIT: there actually were TWO campaigns in data/base/campaigns/ which did not have any multiplayer-compatible setting in description.json:
'beta' and 'demo'... does that trigger anything with you that they might have come with defaults somewhen (honest question)?

Adding the line you quoted the server is now live and kicking. thanks a lot!
Last edited by planetmaker on Tue Jan 21, 2020 2:56 pm, edited 3 times in total.
User avatar
JaJe
Long Handed Inserter
Long Handed Inserter
Posts: 86
Joined: Wed Feb 27, 2019 6:48 pm
Contact:

Re: Version 0.18.0

Post by JaJe »

Devs,
It's odd having on the main menu:

Continue game
Singleplayer
- New Game
- Load Game
Multiplayer
...

I have to press multiple tab for loading the specific save game, it would be better if the menu was like this:

Continue game
New Game
Load Game
Multiplayer
etc...
bluerock
Inserter
Inserter
Posts: 28
Joined: Fri Sep 08, 2017 7:11 pm
Contact:

Re: Version 0.18.0

Post by bluerock »

I though 0.18 was coming soon(tm)? I am so confused.
Koub
Global Moderator
Global Moderator
Posts: 7807
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Version 0.18.0

Post by Koub »

bluerock wrote: Tue Jan 21, 2020 3:04 pm I though 0.18 was coming soon(tm)? I am so confused.
In fact, it was sooner (TM) :)
Koub - Please consider English is not my native language.
User avatar
Optera
Smart Inserter
Smart Inserter
Posts: 2920
Joined: Sat Jun 11, 2016 6:41 am
Contact:

Re: Version 0.18.0

Post by Optera »

A Friday release would have been appreciated.
Now I'll get nag posts all week long to upgrade my mods.
Jelmergu
Long Handed Inserter
Long Handed Inserter
Posts: 77
Joined: Mon Apr 04, 2016 8:49 am
Contact:

Re: Version 0.18.0

Post by Jelmergu »

JaJe wrote: Tue Jan 21, 2020 2:45 pm Devs,
It's odd having on the main menu:

Continue game
Singleplayer
- New Game
- Load Game
Multiplayer
...

I have to press multiple tab for loading the specific save game, it would be better if the menu was like this:

Continue game
New Game
Load Game
Multiplayer
etc...
Yes, but no.

Though it is true that you have to navigate some menus before you can load a specific game, it is more intuitive. I want to play a singleplayer game, so I go to single player. If the devs do as suggested then there will be someone else who says, "yes, but to join a multiplayer game I have to click twice, would be better if you have an option on the main menu, like load and new game". Eventually you would be back to the 0.17 situation where some menu items are unclear what they do.

UI is one of the most, if not the most, difficult branch in software(game) development. There isn't a standard, only 'rules' like the three click rule(anything must be reachable within 3 clicks).

Btw. The amount tabs before loading not-the-last savegame is exactly the same as in 0.17, so I don't know what you are complaining about. The only difference with 0.17 and 0.18 is that the first button you click is called "Single Player" instead of "Play"
Squelch
Filter Inserter
Filter Inserter
Posts: 346
Joined: Sat Apr 23, 2016 5:31 pm
Contact:

Re: Version 0.18.0

Post by Squelch »

Thanks for the release, there's certainly some interesting developments, improvements and fixes in there.

Sadly, this new major version renders all mods for 0.17 incompatible by version number, regardless of any functional incompatibilities. I raised the question in the Modding help forum and got a reply from @Klonan that the supported major versions for mods must be explicit. That's fair, but unfortunately has the consequence of either forcing all players using mods to switch to Experimental to continue using updated mods, and/or modders to support only one major version, or have to release copies of their mods that support each major version separately.

Would it not be easier all round if the latest stable version was 0.18 and any minor versions Experimental until the next major release to avoid unnecessary duplication in many cases?

Regarding the new main menu, it does seem slightly more intuitive, but still has some oddities as others have already pointed out. I am hoping to see some further improvements in this area, and most importantly, some kind of user defined sort order/filters for savegames other than the alphanumeric default.
Post Reply

Return to “Releases”