Page 1 of 4

Version 0.17.23

Posted: Fri Mar 29, 2019 4:57 pm
by FactorioBot
Bugfixes
  • Fixed that merging two electric networks didn't merge the statistics which was introduced by the power switch addition in 0.13. (68246)
  • Fixed light not turning off properly when using fluid energy source on an entity. (67674)
  • Fixed a crash when building large electric poles. (68695)
Modding
  • The game now checks that technology levels are contiguous.
  • Non-upgrade technologies are now considered to be level 1; previously they were level 0.
  • Renamed "electric-energy-accumulators-1" to "electric-energy-accumulators".
Use the automatic updater if you can (check experimental updates in other settings) or download full installation at http://www.factorio.com/download/experimental.

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 5:07 pm
by Gergely
FactorioBot wrote:
Fri Mar 29, 2019 4:57 pm
Modding
  • Non-upgrade technologies are now considered to be level 1; previously they were level 0.
Oh god why don't you just enable modding in another language next to lua? This is getting ridiculous.

Every mod is running in a separate lua instance. How hard would it be to run lua and ... say Javascript instances next to each other?

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 5:18 pm
by keyboardhack
Gergely wrote:
Fri Mar 29, 2019 5:07 pm
FactorioBot wrote:
Fri Mar 29, 2019 4:57 pm
Modding
  • Non-upgrade technologies are now considered to be level 1; previously they were level 0.
Oh god why don't you just enable modding in another language next to lua? This is getting ridiculous.

Every mod is running in a separate lua instance. How hard would it be to run lua and ... say Javascript instances next to each other?
According to https://www.reddit.com/r/factorio/comme ... s/dhr96ok/ they have 75k lines of code written in Lua. They would probably have to rewrite a large chunk of that to make it compatible with javascript. It would essentially be exceedingly laborious to support another language. Then after implementing it you have to support the API for two languages which probably isn't trivial.

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 5:55 pm
by psihius
Gergely wrote:
Fri Mar 29, 2019 5:07 pm
FactorioBot wrote:
Fri Mar 29, 2019 4:57 pm
Modding
  • Non-upgrade technologies are now considered to be level 1; previously they were level 0.
Oh god why don't you just enable modding in another language next to lua? This is getting ridiculous.

Every mod is running in a separate lua instance. How hard would it be to run lua and ... say Javascript instances next to each other?
Simple - because while the engine for it is pretty good - everything around it is half-assed, poorly supported, complete lack of any documentation and lack of libraries, bindings and in general instrumentation to work for it. Embedded Lua engine is dead simple and very fast. It has docs, it has a shitload of documentation, library bindings (it has been used past 20 or so years and has built up the ecosystem) and a small team can tackle it. Unlike V8.

V8 was never targeted as an embedded scripting language and to be extended. And although you can use it like that, it is a way bigger project than doing the same with Lua. Embedded Lua was designed specifically for that purpose.

Also, when Factorio was started, V8 JS engine was in way worse state and NodeJS I believe if existed, nobody really knew about it yet. 6-7 years ago predates the whole JavaScript craze.

Also, JavaScript as a language is not really as easy as people think - understanding the whole prototyping approach and using it properly is, dare I say, difficult even for good developers (I rest my case cause I'm 14 years in web dev and I have written shitloads of pretty complex JS in my career). Thing is - a dedicated person can learn Lua and write a simple mod in a few evenings easily - we have a non-dev guy in my community doing just that, doing basically on-par work with some help from us. With JS - he would not be able to do that easily at all. The language and concepts are way out of his league unless he decides to learn programming.

https://www.reddit.com/r/javascript/com ... avascript/
https://www.quora.com/Why-is-Lua-not-mo ... g-language

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 6:02 pm
by clampi
The number of mods broke by this release changes...is mind boggling.
Renamed "electric-energy-accumulators-1" to "electric-energy-accumulators".
All mods which extend in some way the accumulators.
The game now checks that technology levels are contiguous.
Zillions of mods with technology prerequisites designed 4-5 releases back, with logic prerequisites but not the expected "level". Would have been nice to auto-number in the natural order (eg: make a list, sort it by name, get list index).

The amount of updates required...really uncalled for.

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 6:09 pm
by tehfreek
clampi wrote:
Fri Mar 29, 2019 6:02 pm
The number of mods broke by this release changes...is mind boggling.
Do you have some examples?

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 6:16 pm
by clampi
tehfreek wrote:
Fri Mar 29, 2019 6:09 pm
clampi wrote:
Fri Mar 29, 2019 6:02 pm
The number of mods broke by this release changes...is mind boggling.
Do you have some examples?
Bobmods, multiple mods from his collection.

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 6:16 pm
by Kamsta99
Bobs mods for example

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 6:22 pm
by ZombiFlu
So is the easiest way to deal with all the broken mods just to go back a couple versions?

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 6:24 pm
by H4nSolo
Most of my Seablock Mod are red -.-
required Versions are aviable but whe i activate the mods my Client will not run with them ^^

It would have been better if you had previously informed the mod developer and given a lead to adapt to the things

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 6:43 pm
by steinio
clampi wrote:
Fri Mar 29, 2019 6:02 pm
The number of mods broke by this release changes...is mind boggling.
Renamed "electric-energy-accumulators-1" to "electric-energy-accumulators".
All mods which extend in some way the accumulators.
The game now checks that technology levels are contiguous.
Zillions of mods with technology prerequisites designed 4-5 releases back, with logic prerequisites but not the expected "level". Would have been nice to auto-number in the natural order (eg: make a list, sort it by name, get list index).

The amount of updates required...really uncalled for.
Alpha

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 6:45 pm
by ethernal
Alien economy mod, and it breaks on startup.

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 6:58 pm
by H4nSolo
tehfreek wrote:
Fri Mar 29, 2019 6:09 pm
clampi wrote:
Fri Mar 29, 2019 6:02 pm
The number of mods broke by this release changes...is mind boggling.
Do you have some examples?
All Angles & Bob Mods ^^

My SeaBlock Pack are unplayable... thats very bad....

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 7:00 pm
by Two
JavaScript is an inherently very slow language. So if you would write Factorio mods in JavaScript, you would inevitably slow down the game much more than if you would have written the same mod in Lua.

Would anyone run a mod that by design would slow down the game? I think not.

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 7:30 pm
by Jesperhk
my game is broken, i had a map 100+ hours and now its unplayable.

1. bobmods power don't work
2. every splitter in my game has to be replaced one by one, they are like "paused"
3. the inserters looks odd, the stack inserter is brown/red and the icon looks like something from 12.0..
4. i cannot just go back to yesterdays version, the map says "map version cant be loaded because its higher than the game version"..
5. i tryed 0.17.19 and loaded an old map, the inserters still look brown/redish...

I just got home from work, and i wanted to sit down and continue on my map.. then this happend.. :'(

Wish i could go back in time and disabled auto update before i went to bed last night.. sad sad sad.

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 7:33 pm
by Baughn
The (BobAngels-modded) dedicated server now segfaults on startup. No backtrace printed.

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 7:34 pm
by Hiladdar
I found this change affecting mods very annoying, but not a disaster. The fix is rather simple, but it will take some time to fix.

Hiladdar

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 8:03 pm
by Mailbox23
I keep getting "update failed" when using the in-game updater to go from 0.17.21 to 0.17.23.

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 8:15 pm
by clampi
The worst part of this update is that some of the broken mods are broken because base mod naming is not contiguous...cough "energy-shield-equipment" logically followed by "energy-shield-mk2-equipment", "battery-equipment" logically followed by "battery-mk2-equipment". Yea, would have been nice to let modders know beforehand and leave time for feedback.

Re: Version 0.17.23

Posted: Fri Mar 29, 2019 8:25 pm
by BlueTemplar
psihius wrote:
Fri Mar 29, 2019 5:55 pm
Gergely wrote:
Fri Mar 29, 2019 5:07 pm
FactorioBot wrote:
Fri Mar 29, 2019 4:57 pm
Modding
  • Non-upgrade technologies are now considered to be level 1; previously they were level 0.
Oh god why don't you just enable modding in another language next to lua? This is getting ridiculous.

Every mod is running in a separate lua instance. How hard would it be to run lua and ... say Javascript instances next to each other?
Simple - because while the engine for it is pretty good - everything around it is half-assed, poorly supported, complete lack of any documentation and lack of libraries, bindings and in general instrumentation to work for it. Embedded Lua engine is dead simple and very fast. It has docs, it has a shitload of documentation, library bindings (it has been used past 20 or so years and has built up the ecosystem) and a small team can tackle it. Unlike V8.

V8 was never targeted as an embedded scripting language and to be extended. And although you can use it like that, it is a way bigger project than doing the same with Lua. Embedded Lua was designed specifically for that purpose.

Also, when Factorio was started, V8 JS engine was in way worse state and NodeJS I believe if existed, nobody really knew about it yet. 6-7 years ago predates the whole JavaScript craze.

Also, JavaScript as a language is not really as easy as people think - understanding the whole prototyping approach and using it properly is, dare I say, difficult even for good developers (I rest my case cause I'm 14 years in web dev and I have written shitloads of pretty complex JS in my career). Thing is - a dedicated person can learn Lua and write a simple mod in a few evenings easily - we have a non-dev guy in my community doing just that, doing basically on-par work with some help from us. With JS - he would not be able to do that easily at all. The language and concepts are way out of his league unless he decides to learn programming.

https://www.reddit.com/r/javascript/com ... avascript/
https://www.quora.com/Why-is-Lua-not-mo ... g-language
Wait, but why are you talking about V8 ?
Wouldn't the equivalent to Factorio's Lua be the normal JavaScript, rather than Chom/ium's engine ?
Also, what about other JavaScript engines, like Gecko ? (I would kind of expect Mozilla to have good documentation, am I wrong ?)