On September 22, starting at 7:00 am UTC (9:00 am CEST, 12:00 am PDT, 3:00 am EDT, http://everytimezone.com/#2016-9-21,1140,cn3), lasting approximately 30-60 minutes, we will be conducting a database maintenance, resulting in the outage of the following services:
On September 22, starting at 7:00 am UTC (9:00 am CEST, 12:00 am PDT, 3:00 am EDT, http://everytimezone.com/#2016-9-21,1140,cn3), lasting approximately 30-60 minutes, we will be conducting a database maintenance, resulting in the outage of the following services:
The crc check cycles between sets of 10 players, reducing the time of it in crowded games.
Minor features
Disconnecting wires now updates the "last user" tag.
Technology progress is preverved when the research is changed before it is completed.
Added ignore_player_limit_for_returning_players option to the server-settings and equivalent when hosting from the game.
Added in game command /config password <password>. It allows server admins to change the server password.
Added in game command /config max-players <number>. It allows server admins to change the maximum number of players.
With more than 10 players in multiplayer game, the server only saves the map for joining players once in a while, so the game isn't interrupted by saving every couple of seconds in bigger games. It goes from 1s with 10 players up to 45s with 450 players (which is the maximum).
Added only_admins_can_pause_the_game into the server-settings.
Fixed server browser playtime column formatting more
Fixed crash related to rail-signal connection. more
Fixed crash when reconnection attempt is refused. more
Fixed that when server quit/dropped, the dialog could be hidden behind menu. more
Optimized inserting items to chests with large inventories; this will boost performance for some games with Warehousing mod. more
Fixed duplicate mods crashing the game on startup (https://forums.factorio.com/31790) Instead, a notice box is displayed and the highest (possibly unzipped) version is preferred.
Moved the downloading/saving/loading progress bar of other people in a scroll pane so it doesn't cover the whole left part of the screen with a lot of people.
Fixed the quickbar selection wouldn't properly update when interacting with other entities in some cases. more
Fixed that --benchmark would process its argument differently than all other command-line parameters more
Fixed crash when loading game with character in flying vehicle from mod that is over water. more
You can get experimental releases by selecting the 'experimental' beta branch under Factorio's properties in Steam.
The crc check cycles between sets of 10 players, reducing the time of it in crowded games.
Minor features
Disconnecting wires now updates the "last user" tag.
Technology progress is preverved when the research is changed before it is completed.
Added ignore_player_limit_for_returning_players option to the server-settings and equivalent when hosting from the game.
Added in game command /config password <password>. It allows server admins to change the server password.
Added in game command /config max-players <number>. It allows server admins to change the maximum number of players.
With more than 10 players in multiplayer game, the server only saves the map for joining players once in a while, so the game isn't interrupted by saving every couple of seconds in bigger games. It goes from 1s with 10 players up to 45s with 450 players (which is the maximum).
Added only_admins_can_pause_the_game into the server-settings.
Fixed server browser playtime column formatting more
Fixed crash related to rail-signal connection. more
Fixed crash when reconnection attempt is refused. more
Fixed that when server quit/dropped, the dialog could be hidden behind menu. more
Optimized inserting items to chests with large inventories; this will boost performance for some games with Warehousing mod. more
Fixed duplicate mods crashing the game on startup (https://forums.factorio.com/31790) Instead, a notice box is displayed and the highest (possibly unzipped) version is preferred.
Moved the downloading/saving/loading progress bar of other people in a scroll pane so it doesn't cover the whole left part of the screen with a lot of people.
Fixed the quickbar selection wouldn't properly update when interacting with other entities in some cases. more
Fixed that --benchmark would process its argument differently than all other command-line parameters more
Fixed crash when loading game with character in flying vehicle from mod that is over water. more
You can get experimental releases by selecting the 'experimental' beta branch under Factorio's properties in Steam.
Hi all, sometimes, writing FFF feels like spitting out blood - there is simply very little to write about. Yet the Factorio blog subscriber crowd is there and waiting ... Sometimes it is the opposite and there is abundance of interesting topics available. Today it is the latter case. Enjoy!
Factorio Massive Multiplayer
So all the effort that Kovarex put to rewriting the Multiplayer for the pure server-client model (communication wise) with added speed optimisations and minimisation of the data sent over network has paid off royally. Surpassing our wildest estimates it has been actually shown that the latest 0.14 (still experimental atm) can support a couple of hundreds of players in the game (I believe the current record is about 400 players) while still being playable. If I remember correctly, the best case scenario (when Kovarex started with changes) was hoped to be 50 people in the game ...
Arumba (with Steejo and friends) has started a new stream series where he creates an open game and a bunch of people get together and start building a factory. Below is the first episode which was streamed on Tuesday. There were about 150 people online at one point I believe and still the game was running smooth. Factory grows up really fast (though often in uncontrolled ways) with that amount of players. I personally find interesting all the "social / group" peculiarities arising from this kind of event - ranging from how to organise such a crowd to work together all the way to persuading people not to shoot each other or build useless ghost entities all over the place (because "it is pretty").
The series continued yesterday night with couple of people from the office (well from their homes because it was at 2 a.m. local time) joining as well - namely kovarex, twinsen and posila. This time there were some technical problems - server overload / lags / desyncs - simply because there were crazy amounts of people (those mentioned 400 online players). But it is amazing to see what the technical limits of the game are (could it be even more than 400?). And as a bonus you can hear Twinsen / Robert joining the skype chat with the organisers and sharing some of his insights.
I believe Arumba plans to continue with the series (though restricting the amount of people to a reasonable amount) and see how the factory develops. So check out his channel if you are interested in watching / playing with many players. Below is a screenshot from the imgur gallery created by one of the players based on the second ("the 400") game - to give you a feel of what you are up to.
We shall see, but MMORTS could be another area Factorio will venture too. The technical background is more or less there. Now it might be the time to come up with scenarios / game modes that build on the possibility of having hundreds of players in the game. We have already started playing with this with the Team Production Challenge (that is a bit less massive) mentioned in the previous FFF ...
UI rewrite
And now for something completely different. Making a game is a broad topic and often involves elements which end up being overlooked (people often don't notice things until they are not broken). One of the areas in this realm is IMHO good gui design and layout. Honza recently took the challenge to improve our current gui code and prepare it for further gui improvements that he will work on together with Albert. So below he writes about what he has been up to.
Factorio is a dialog-heavy game, so the GUI code needs to be easy to write.At the same time, we want complex GUI layouts that don't break under different translations and mods.
With that in mind, I've been cleaning up the internal GUI implementation.While the old code sometimes needs a lot of persuation to do exactly what we want,the new shiny code will use a two-phase layout algorithm:
All of the GUI elements look at their contents and report their optimal size and stretching potential.
GUI containers take whatever space is available and, based on the reports, tell their sub-elements how much they should grow or shrink.
Looks simple, but it should solve most of our problems with nested containers.
We also need to be able to override the automatic stuff: limit the minimum or maximum size, grow only in discrete steps,constrain some elements to be the same size, or just set the position and size manually.
Let's look at a pretty ASCII-art example. The elements A and B start the same, but B grows twice as fast and has its maximum width limited:
Another example: Here the vowels may not grow, but the width of each block must be the same:
The last one: we have two buttons that can't stretch, but one must stay centered and one right-aligned (assuming they won't overlap).There's a ghost on the left side with the same size as button 2 that makes it possible:
The GUI containers will also get an overhaul: right now we're using a one-size-fits-all layout with automatic row breaking,which is overkill for most uses. The new GUI will use simple rows, columns, and the occasional table.
There are other things in the works: improved GUI scaling, rich text, data-driven layouts, better line breaking for long texts, or support for right-to-left languages.And when all the boring internal stuff is done, you can look forward to a complete GUI facelift.
Blueprint Library
While 0.14 is getting stable we are already working on 0.15. One of the bigger features there would be the blueprint library. The idea is to allow blueprints (and blueprint books) to be stored outside of the players inventory - in a blueprint library. This way the blueprint (or book) can still be accessed even if player actually removes / loses (i.e. when dying) the item from his inventory. The library will be accessible via a global dialog (in a similar fashion like overview of trains / production statistics / etc.).
At the moment we plan to have three basic library sections:
Blueprints stored locally in the game. Here the use case is simply not to lose (as mentioned above) blueprints for the current game when their respective items are lost.
Player's personal blueprint collection accessible in all of his games. Here we are pretty sure (=)) that players will build their own collections of favourite setups which they use over and over.
Access to other players' personal blueprint collections in multiplayer games. This is the same as point 2 but for multiplayer.
The work on this feature is at the moment in progress so it is a good idea to post ideas (or link existing ideas - hello Factorio ideas & suggestions overflow) on the topic. There will be more detailed information coming in the future (both on the user side as well as challenging technical aspects - yes everything is more work than expected =))) when the work has progressed.
The promise of the blueprint library is that it should make blueprints even more useful by removing frustration from losing existing blueprints and repetitive work of creating the same blueprints over and over again. Also who knows, maybe we end up with a Factorio blueprints portal - something like a global database accessible to all the players. That would be an interesting way to share the setups.
Terrain news
In one of the previous FFF editions we have shown first attempts on a new terrain, the red desert. Jurek is still working on this and today you can see how he has progressed. It is not yet finished as we will be tweaking it and adding specific doodads and patches. That means it should get only better=)
And now in an action with some entities:
If all goes well (that is a big if) you can look forward to a new pump connection to liquid wagon preview in the next FFF episode. That is what Albert has been up to recently.
As always, if you have any comments or otherwise, please let us know on our forums.
Hi all, sometimes, writing FFF feels like spitting out blood - there is simply very little to write about. Yet the Factorio blog subscriber crowd is there and waiting ... Sometimes it is the opposite and there is abundance of interesting topics available. Today it is the latter case. Enjoy!
Factorio Massive Multiplayer
So all the effort that Kovarex put to rewriting the Multiplayer for the pure server-client model (communication wise) with added speed optimisations and minimisation of the data sent over network has paid off royally. Surpassing our wildest estimates it has been actually shown that the latest 0.14 (still experimental atm) can support a couple of hundreds of players in the game (I believe the current record is about 400 players) while still being playable. If I remember correctly, the best case scenario (when Kovarex started with changes) was hoped to be 50 people in the game ...
Arumba (with Steejo and friends) has started a new stream series where he creates an open game and a bunch of people get together and start building a factory. Below is the first episode which was streamed on Tuesday. There were about 150 people online at one point I believe and still the game was running smooth. Factory grows up really fast (though often in uncontrolled ways) with that amount of players. I personally find interesting all the "social / group" peculiarities arising from this kind of event - ranging from how to organise such a crowd to work together all the way to persuading people not to shoot each other or build useless ghost entities all over the place (because "it is pretty").
The series continued yesterday night with couple of people from the office (well from their homes because it was at 2 a.m. local time) joining as well - namely kovarex, twinsen and posila. This time there were some technical problems - server overload / lags / desyncs - simply because there were crazy amounts of people (those mentioned 400 online players). But it is amazing to see what the technical limits of the game are (could it be even more than 400?). And as a bonus you can hear Twinsen / Robert joining the skype chat with the organisers and sharing some of his insights.
I believe Arumba plans to continue with the series (though restricting the amount of people to a reasonable amount) and see how the factory develops. So check out his channel if you are interested in watching / playing with many players. Below is a screenshot from the imgur gallery created by one of the players based on the second ("the 400") game - to give you a feel of what you are up to.
We shall see, but MMORTS could be another area Factorio will venture too. The technical background is more or less there. Now it might be the time to come up with scenarios / game modes that build on the possibility of having hundreds of players in the game. We have already started playing with this with the Team Production Challenge (that is a bit less massive) mentioned in the previous FFF ...
UI rewrite
And now for something completely different. Making a game is a broad topic and often involves elements which end up being overlooked (people often don't notice things until they are not broken). One of the areas in this realm is IMHO good gui design and layout. Honza recently took the challenge to improve our current gui code and prepare it for further gui improvements that he will work on together with Albert. So below he writes about what he has been up to.
Factorio is a dialog-heavy game, so the GUI code needs to be easy to write.At the same time, we want complex GUI layouts that don't break under different translations and mods.
With that in mind, I've been cleaning up the internal GUI implementation.While the old code sometimes needs a lot of persuation to do exactly what we want,the new shiny code will use a two-phase layout algorithm:
All of the GUI elements look at their contents and report their optimal size and stretching potential.
GUI containers take whatever space is available and, based on the reports, tell their sub-elements how much they should grow or shrink.
Looks simple, but it should solve most of our problems with nested containers.
We also need to be able to override the automatic stuff: limit the minimum or maximum size, grow only in discrete steps,constrain some elements to be the same size, or just set the position and size manually.
Let's look at a pretty ASCII-art example. The elements A and B start the same, but B grows twice as fast and has its maximum width limited:
Another example: Here the vowels may not grow, but the width of each block must be the same:
The last one: we have two buttons that can't stretch, but one must stay centered and one right-aligned (assuming they won't overlap).There's a ghost on the left side with the same size as button 2 that makes it possible:
The GUI containers will also get an overhaul: right now we're using a one-size-fits-all layout with automatic row breaking,which is overkill for most uses. The new GUI will use simple rows, columns, and the occasional table.
There are other things in the works: improved GUI scaling, rich text, data-driven layouts, better line breaking for long texts, or support for right-to-left languages.And when all the boring internal stuff is done, you can look forward to a complete GUI facelift.
Blueprint Library
While 0.14 is getting stable we are already working on 0.15. One of the bigger features there would be the blueprint library. The idea is to allow blueprints (and blueprint books) to be stored outside of the players inventory - in a blueprint library. This way the blueprint (or book) can still be accessed even if player actually removes / loses (i.e. when dying) the item from his inventory. The library will be accessible via a global dialog (in a similar fashion like overview of trains / production statistics / etc.).
At the moment we plan to have three basic library sections:
Blueprints stored locally in the game. Here the use case is simply not to lose (as mentioned above) blueprints for the current game when their respective items are lost.
Player's personal blueprint collection accessible in all of his games. Here we are pretty sure (=)) that players will build their own collections of favourite setups which they use over and over.
Access to other players' personal blueprint collections in multiplayer games. This is the same as point 2 but for multiplayer.
The work on this feature is at the moment in progress so it is a good idea to post ideas (or link existing ideas - hello Factorio ideas & suggestions overflow) on the topic. There will be more detailed information coming in the future (both on the user side as well as challenging technical aspects - yes everything is more work than expected =))) when the work has progressed.
The promise of the blueprint library is that it should make blueprints even more useful by removing frustration from losing existing blueprints and repetitive work of creating the same blueprints over and over again. Also who knows, maybe we end up with a Factorio blueprints portal - something like a global database accessible to all the players. That would be an interesting way to share the setups.
Terrain news
In one of the previous FFF editions we have shown first attempts on a new terrain, the red desert. Jurek is still working on this and today you can see how he has progressed. It is not yet finished as we will be tweaking it and adding specific doodads and patches. That means it should get only better=)
And now in an action with some entities:
If all goes well (that is a big if) you can look forward to a new pump connection to liquid wagon preview in the next FFF episode. That is what Albert has been up to recently.
As always, if you have any comments or otherwise, please let us know on our forums.
Drop detection got little bit strictier so the drop timeout was increased from 10 to 20 seconds.
If you log in with your email, your multiplayer username gets set to your actual username, not your email address.
Minor features
Added --start-server-load-scenario <scenario name> command to start scenario with the given name.
As a tribute to Arumbas mega-game, the "build by" was renamed to "last user" and it is updated whenever the entity is: rotated, has circuit condition changed, setting pasted, recipe changed, filter changed, output signal changed, cominbator settings changed,
Added speed change based on zoom when in god mode into the latency hiding.
The player was killed messages now contain a name of entity or player who caused that.
Bugfixes
Player killed messages are shown only to players of the same force.
Fixed that zoom to cursor didn't work in ghost/god controller.
Fixed that player dropped, but it shown the "the can't keep up message" instead.
Fixed that server got deselected when changing sorting or filters in public game list. more
Additional attempt to make the keyboard settings compatibile between linux and windows. more
Fixed that player crafting categories accepted empty string as value, which resulted in crash later. more
Fixed that progress bar during updating mods wasn't moving more
Fixed beam damage_interval of 0 would crash the game. more
Fixed gates wouldn't open while in a vehicle without a character. more
Drop detection got little bit strictier so the drop timeout was increased from 10 to 20 seconds.
If you log in with your email, your multiplayer username gets set to your actual username, not your email address.
Minor features
Added --start-server-load-scenario <scenario name> command to start scenario with the given name.
As a tribute to Arumbas mega-game, the "build by" was renamed to "last user" and it is updated whenever the entity is: rotated, has circuit condition changed, setting pasted, recipe changed, filter changed, output signal changed, cominbator settings changed,
Added speed change based on zoom when in god mode into the latency hiding.
The player was killed messages now contain a name of entity or player who caused that.
Bugfixes
Player killed messages are shown only to players of the same force.
Fixed that zoom to cursor didn't work in ghost/god controller.
Fixed that player dropped, but it shown the "the can't keep up message" instead.
Fixed that server got deselected when changing sorting or filters in public game list. more
Additional attempt to make the keyboard settings compatibile between linux and windows. more
Fixed that player crafting categories accepted empty string as value, which resulted in crash later. more
Fixed that progress bar during updating mods wasn't moving more
Fixed beam damage_interval of 0 would crash the game. more
Fixed gates wouldn't open while in a vehicle without a character. more