pY Petroleum Handling

pyanodon's mods are here

Moderator: pyanodon

TwentyEighty
Fast Inserter
Fast Inserter
Posts: 170
Joined: Thu Jan 10, 2019 3:11 pm
Contact:

Re: pY Petroleum Handling

Post by TwentyEighty »

Big thanks to orzelek and akseley for the PyPH RSO update. I've been playing with it a bunch, and there are a few issues that I've fixed. Mainly the tar and sulfur amounts were through the roof. I've taken akseley's config and modified it. Some of the values also came from kingarthur, mainly the oil patches. Also, Pyanodon has oil sands using the same map vanilla mapgen values as e.g. aluminum so I made the RSO oil sands match the RSO aluminum etc. values. I'm pretty confident this has the same magnitude of resources that PyPH has with vanilla map generation for all of the resources (at least in the Creative Super Radar 2 range of the map).

Attaching the final version here. orzelek, will you please update the PyPH with this change?
Attachments
pypetroleumhandling.lua
(2.13 KiB) Downloaded 70 times

User avatar
pyanodon
Smart Inserter
Smart Inserter
Posts: 1909
Joined: Wed Apr 20, 2016 4:42 pm
Contact:

Re: pY Petroleum Handling

Post by pyanodon »

try to send to him.. i dunno if he frequent this forum that often.
pY Coal processing mod
Discord: Pyanodon #5791

aklesey1
Smart Inserter
Smart Inserter
Posts: 1862
Joined: Sun May 18, 2014 3:45 pm
Contact:

Re: pY Petroleum Handling

Post by aklesey1 »

TwentyEighty wrote:
Fri Apr 26, 2019 1:23 am
Big thanks to orzelek and akseley for the PyPH RSO update. I've been playing with it a bunch, and there are a few issues that I've fixed. Mainly the tar and sulfur amounts were through the roof. I've taken akseley's config and modified it. Some of the values also came from kingarthur, mainly the oil patches. Also, Pyanodon has oil sands using the same map vanilla mapgen values as e.g. aluminum so I made the RSO oil sands match the RSO aluminum etc. values. I'm pretty confident this has the same magnitude of resources that PyPH has with vanilla map generation for all of the resources (at least in the Creative Super Radar 2 range of the map).

Attaching the final version here. orzelek, will you please update the PyPH with this change?
aklesey1's if to be precise ;)
And i tried to ask to orzelek to give to him this config, now waiting for RSO update

And huge thinks for pyanodon this is one the best py mods like PYFE or PYHT, i can call this mod directed to quality of life improvement, a lot of things that help make the work of the factory easier and more cohesive

Waiting for new voting and i think PY Alien Life Processing can win - and will be really useful and big mod like PYHT :D
Nickname on ModPortal - Naron79

orzelek
Smart Inserter
Smart Inserter
Posts: 3911
Joined: Fri Apr 03, 2015 10:20 am
Contact:

Re: pY Petroleum Handling

Post by orzelek »

I've added the updated confing to RSO and posted it.
Disclaimer: I did not check if it works as it should :D

TwentyEighty
Fast Inserter
Fast Inserter
Posts: 170
Joined: Thu Jan 10, 2019 3:11 pm
Contact:

Re: pY Petroleum Handling

Post by TwentyEighty »

Thanks!

woniubbg
Inserter
Inserter
Posts: 49
Joined: Fri Mar 08, 2019 3:38 am
Contact:

Re: pY Petroleum Handling

Post by woniubbg »

I asked for a friend and repaired the issue about hotair
\pypetroleumhandling_1.0.0\prototypes\functions\functions.lua
273:
change if recipe.normal.ingredients[1].name == nil then
to if recipe.normal.ingredients == nil or recipe.normal.ingredients == {} then
and 290:
if recipe.expensive.ingredients[1].name == nil then
if recipe.expensive.ingredients == nil or recipe.expensive.ingredients == {} then
but still can't check the 'hotair recipes' in the Recipe Explorer

woniubbg
Inserter
Inserter
Posts: 49
Joined: Fri Mar 08, 2019 3:38 am
Contact:

Re: pY Petroleum Handling

Post by woniubbg »

woniubbg wrote:
Fri Apr 26, 2019 7:02 pm
I asked for a friend and repaired the issue about hotair
\pypetroleumhandling_1.0.0\prototypes\functions\functions.lua
273:
change if recipe.normal.ingredients[1].name == nil then
to if recipe.normal.ingredients == nil or recipe.normal.ingredients == {} then
and 290:
if recipe.expensive.ingredients[1].name == nil then
if recipe.expensive.ingredients == nil or recipe.expensive.ingredients == {} then
but still can't check the 'hotair recipes' in the Recipe Explorer
and most recipes changed
all recipes like A+B+^+^^+^=C A+B+^+^^+^+hotair=C*x dont changed

Blokus
Fast Inserter
Fast Inserter
Posts: 246
Joined: Tue Mar 05, 2019 2:49 pm
Contact:

Re: pY Petroleum Handling

Post by Blokus »

Found a deadlock:
  • To make a molybdenum mine, you need advanced small parts. To make a particle accelerator, you need circuit board 2s, and thus in particular need aramid.
  • To make advanced small parts, you need stainless steel.
  • To make stainless steel, you need aramid. Thus both a molybdenum mine and a particle accelerator depend on aramid.
  • To make aramid, you need molybdenum plate.
  • To make molybdenum plate, you need either a molybdenum mine or a particle accelerator.
This makes it impossible to produce sp3 completely legit (you could do it by cheating in enough stuff to get yourself a molybdenum mine).

ETA: the other way to make molybdenum is with an excavator, but that recipe needs sp3, so again, no completely legit way to do it.
Last edited by Blokus on Sun Apr 28, 2019 3:35 pm, edited 2 times in total.

User avatar
pyanodon
Smart Inserter
Smart Inserter
Posts: 1909
Joined: Wed Apr 20, 2016 4:42 pm
Contact:

Re: pY Petroleum Handling

Post by pyanodon »

Blokus wrote:
Fri Apr 26, 2019 9:31 pm
Found a deadlock:
  • To make a molybdenum mine, you need advanced small parts. To make a particle accelerator, you need circuit board 2s, and thus in particular need aramid.
  • To make advanced small parts, you need stainless steel.
  • To make stainless steel, you need aramid. Thus both a molybdenum mine and a particle accelerator depend on aramid.
  • To make aramid, you need molybdenum plate.
  • To make molybdenum plate, you need either a molybdenum mine or a particle accelerator.
This makes it impossible to produce sp3 completely legit (you could do it by cheating in enough stuff to get yourself a molybdenum mine).
Confirmed. Thank you. new release should be ready in few hours. Please update your pyFE.
pY Coal processing mod
Discord: Pyanodon #5791

kingarthur
Smart Inserter
Smart Inserter
Posts: 1459
Joined: Sun Jun 15, 2014 11:39 am
Contact:

Re: pY Petroleum Handling

Post by kingarthur »

woniubbg wrote:
Fri Apr 26, 2019 7:25 pm
woniubbg wrote:
Fri Apr 26, 2019 7:02 pm
I asked for a friend and repaired the issue about hotair
\pypetroleumhandling_1.0.0\prototypes\functions\functions.lua
273:
change if recipe.normal.ingredients[1].name == nil then
to if recipe.normal.ingredients == nil or recipe.normal.ingredients == {} then
and 290:
if recipe.expensive.ingredients[1].name == nil then
if recipe.expensive.ingredients == nil or recipe.expensive.ingredients == {} then
but still can't check the 'hotair recipes' in the Recipe Explorer
and most recipes changed
all recipes like A+B+^+^^+^=C A+B+^+^^+^+hotair=C*x dont changed
I'll look into it as soon as I can

Mella
Fast Inserter
Fast Inserter
Posts: 138
Joined: Tue Nov 08, 2016 6:58 pm
Contact:

Re: pY Petroleum Handling

Post by Mella »

Hey pyanodon thanks for PY Petroleum handling - you made massive work
Can we await mk1 mk2 mk3 mk4 buildings for PY Fusion Energy and PY Hi-Tech in near future?

User avatar
pyanodon
Smart Inserter
Smart Inserter
Posts: 1909
Joined: Wed Apr 20, 2016 4:42 pm
Contact:

Re: pY Petroleum Handling

Post by pyanodon »

Mella wrote:
Sat Apr 27, 2019 7:42 am
Hey pyanodon thanks for PY Petroleum handling - you made massive work
Can we await mk1 mk2 mk3 mk4 buildings for PY Fusion Energy and PY Hi-Tech in near future?
maybe :)
pY Coal processing mod
Discord: Pyanodon #5791

woniubbg
Inserter
Inserter
Posts: 49
Joined: Fri Mar 08, 2019 3:38 am
Contact:

Re: pY Petroleum Handling

Post by woniubbg »

kingarthur wrote:
Fri Apr 26, 2019 10:30 pm
woniubbg wrote:
Fri Apr 26, 2019 7:25 pm
woniubbg wrote:
Fri Apr 26, 2019 7:02 pm
I asked for a friend and repaired the issue about hotair
\pypetroleumhandling_1.0.0\prototypes\functions\functions.lua
273:
change if recipe.normal.ingredients[1].name == nil then
to if recipe.normal.ingredients == nil or recipe.normal.ingredients == {} then
and 290:
if recipe.expensive.ingredients[1].name == nil then
if recipe.expensive.ingredients == nil or recipe.expensive.ingredients == {} then
but still can't check the 'hotair recipes' in the Recipe Explorer
and most recipes changed
all recipes like A+B+^+^^+^=C A+B+^+^^+^+hotair=C*x dont changed
I'll look into it as soon as I can
I've received your mail that said fixed it then i updated pyph to 1.0.2
bug issues remian
my mod list all pymods +omnilib+omnifuild helmod recexplre

14.266 Loading mod pypetroleumhandling 1.0.2 (data-final-fixes.lua)
14.492 Error ModManager.cpp:1294: 模组 "pypetroleumhandling" 加载失败:__pypetroleumhandling__/prototypes/functions/functions.lua:273: attempt to index field '?' (a nil value)
stack traceback:
__pypetroleumhandling__/prototypes/functions/functions.lua:273: in function 'hotairrecipes'
__pypetroleumhandling__/data-final-fixes.lua:5: in main chunk

kingarthur
Smart Inserter
Smart Inserter
Posts: 1459
Joined: Sun Jun 15, 2014 11:39 am
Contact:

Re: pY Petroleum Handling

Post by kingarthur »

woniubbg wrote:
Sat Apr 27, 2019 11:50 am
kingarthur wrote:
Fri Apr 26, 2019 10:30 pm
woniubbg wrote:
Fri Apr 26, 2019 7:25 pm
woniubbg wrote:
Fri Apr 26, 2019 7:02 pm
I asked for a friend and repaired the issue about hotair
\pypetroleumhandling_1.0.0\prototypes\functions\functions.lua
273:
change if recipe.normal.ingredients[1].name == nil then
to if recipe.normal.ingredients == nil or recipe.normal.ingredients == {} then
and 290:
if recipe.expensive.ingredients[1].name == nil then
if recipe.expensive.ingredients == nil or recipe.expensive.ingredients == {} then
but still can't check the 'hotair recipes' in the Recipe Explorer
and most recipes changed
all recipes like A+B+^+^^+^=C A+B+^+^^+^+hotair=C*x dont changed
I'll look into it as soon as I can
I've received your mail that said fixed it then i updated pyph to 1.0.2
bug issues remian
my mod list all pymods +omnilib+omnifuild helmod recexplre

14.266 Loading mod pypetroleumhandling 1.0.2 (data-final-fixes.lua)
14.492 Error ModManager.cpp:1294: 模组 "pypetroleumhandling" 加载失败:__pypetroleumhandling__/prototypes/functions/functions.lua:273: attempt to index field '?' (a nil value)
stack traceback:
__pypetroleumhandling__/prototypes/functions/functions.lua:273: in function 'hotairrecipes'
__pypetroleumhandling__/data-final-fixes.lua:5: in main chunk
It's fixed. Updated pyph hasn't been posted yet

immortal_sniper1
Filter Inserter
Filter Inserter
Posts: 771
Joined: Sun Jun 03, 2018 8:54 am
Contact:

Re: pY Petroleum Handling

Post by immortal_sniper1 »

pyanodon wrote:
Sat Apr 27, 2019 11:15 am
Mella wrote:
Sat Apr 27, 2019 7:42 am
Hey pyanodon thanks for PY Petroleum handling - you made massive work
Can we await mk1 mk2 mk3 mk4 buildings for PY Fusion Energy and PY Hi-Tech in near future?
maybe :)
dont those buildings have a ton of module slots to compensate that?

woniubbg
Inserter
Inserter
Posts: 49
Joined: Fri Mar 08, 2019 3:38 am
Contact:

Re: pY Petroleum Handling

Post by woniubbg »

kingarthur wrote:
Sat Apr 27, 2019 12:16 pm
It's fixed. Updated pyph hasn't been posted yet
Thank you very much for your work but there are still some minor problems with omnifuild
The omnifuild mod change all 60*fuild to 1*solid
the pyph's repice is: 10 stonebrick + 100 pressuredair=400 hot air
while when i enable omnifuild
the repice is: 30 stonebrick + 5 soild pressuredair=20 soild hot air (pressured air : hot air 1:4)
but the other repice is still +50hot +2 output

woniubbg
Inserter
Inserter
Posts: 49
Joined: Fri Mar 08, 2019 3:38 am
Contact:

Re: pY Petroleum Handling

Post by woniubbg »

woniubbg wrote:
Sat Apr 27, 2019 4:41 pm
kingarthur wrote:
Sat Apr 27, 2019 12:16 pm
It's fixed. Updated pyph hasn't been posted yet
Thank you very much for your work but there are still some minor problems with omnifuild
The omnifuild mod change all 60*fuild to 1*solid
the pyph's repice is: 10 stonebrick + 100 pressuredair=400 hot air
while when i enable omnifuild
the repice is: 30 stonebrick + 5 soild pressuredair=20 soild hot air (pressured air : hot air 1:4)
but the other repice is still +50hot +2 output
the repice is ok 30 stonebrick + 5 soild pressuredair(300 fuild)=20 soild hot air(1200fuild)
but the cost is wrong it should be
--add 50 hot-air ingredient, output +2
--add 0.833 solid- hot-air ingredient, output +2
or just --add 1 solid- hot-air ingredient, output +2
and the prefert way is that
--add 60 hot-air ingredient, output +2
add 1 solid- hot-air ingredient, output +2
12 stonebrick + 120 pressuredair=480 hot air
36 stonebrick + 6 soild pressuredair(360 fuild)=24 soild hot air(1440fuild)

Blokus
Fast Inserter
Fast Inserter
Posts: 246
Joined: Tue Mar 05, 2019 2:49 pm
Contact:

Re: pY Petroleum Handling

Post by Blokus »

pyanodon wrote:
Fri Apr 26, 2019 9:47 pm
Blokus wrote:
Fri Apr 26, 2019 9:31 pm
Found a deadlock:
  • To make a molybdenum mine, you need advanced small parts. To make a particle accelerator, you need circuit board 2s, and thus in particular need aramid.
  • To make advanced small parts, you need stainless steel.
  • To make stainless steel, you need aramid. Thus both a molybdenum mine and a particle accelerator depend on aramid.
  • To make aramid, you need molybdenum plate.
  • To make molybdenum plate, you need either a molybdenum mine or a particle accelerator.
This makes it impossible to produce sp3 completely legit (you could do it by cheating in enough stuff to get yourself a molybdenum mine).
Confirmed. Thank you. new release should be ready in few hours. Please update your pyFE.
Just in general can you do a pass over the stuff that needs advanced small parts? There are some things that aren't exactly deadlocks but are still a bit annoying. For example, assembler 2s need advanced small parts. That isn't such a big deal by itself because you can always use automated factories instead. But assembler 2s also go into filters and rectisols, which are desirable to have before sp3 even though they're not 100% essential.

Edit: apparently AM2s no longer go into filters and rectisols, so that's nice.

Alluvial
Burner Inserter
Burner Inserter
Posts: 18
Joined: Tue Aug 02, 2016 2:52 pm
Contact:

Re: pY Petroleum Handling

Post by Alluvial »

When loading pyPH with Peppe's Longer Underground Belt (Aligned) mod. Peppe's mod fails to load due to an attempt to index a nil field.

Some other mods that break with py modules installed due so because they assume vanilla; a bad assumption, and they should break if py has changed something. Digging into Peppe's data-final-fixes.lua file, however, it seems the only assumption he is making is that data.raw.recipies will be accurate and up to date when that file is parsed. This seems like a reasonable assumption and that other mods should keep data.raw tables up to date in order to play nice.

Here is where I am on shaky ground: Py seems to be making heavy use of the stdlib mod and that mod seems to make a local copy of "data" as "Data". Somehow "Data" and "data" being out of sync causes the indexing error. data:extend() looks like the path to explore but I don't see clearly in the documentation how to use data:extend to safely make changes to existing raw table entries. I would like to do more experiments before brining this incompatibility to the forum but I am at the limit of my lua and factorio api knowledge.

kingarthur
Smart Inserter
Smart Inserter
Posts: 1459
Joined: Sun Jun 15, 2014 11:39 am
Contact:

Re: pY Petroleum Handling

Post by kingarthur »

Alluvial wrote:
Sun Apr 28, 2019 4:58 pm
When loading pyPH with Peppe's Longer Underground Belt (Aligned) mod. Peppe's mod fails to load due to an attempt to index a nil field.

Some other mods that break with py modules installed due so because they assume vanilla; a bad assumption, and they should break if py has changed something. Digging into Peppe's data-final-fixes.lua file, however, it seems the only assumption he is making is that data.raw.recipies will be accurate and up to date when that file is parsed. This seems like a reasonable assumption and that other mods should keep data.raw tables up to date in order to play nice.

Here is where I am on shaky ground: Py seems to be making heavy use of the stdlib mod and that mod seems to make a local copy of "data" as "Data". Somehow "Data" and "data" being out of sync causes the indexing error. data:extend() looks like the path to explore but I don't see clearly in the documentation how to use data:extend to safely make changes to existing raw table entries. I would like to do more experiments before brining this incompatibility to the forum but I am at the limit of my lua and factorio api knowledge.
Um. No. If it hit a failed attempt to index a nil field then it tried to access something that doesnt exist. Could be any number of things it's done. Assuming a recipe has ingredients instead of normal.ingredients or if someone removed an ingredient.

Should have given a file name and line number with that error. Also make sure its actually between just py and peppe.

Post Reply

Return to “PyMods”