Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dependencies to automation science pack are overridden by PyPP #704

Open
3 of 8 tasks
protocol-1903 opened this issue Nov 11, 2024 · 4 comments
Open
3 of 8 tasks
Labels
mod:pypostprocessing This affects pypostprocessing on hold Issue is not being worked on currently

Comments

@protocol-1903
Copy link

Mod source

Factorio Mod Portal

Operating system

=Windows 10

What kind of issue is this?

  • Compatibility
  • Locale (names, descriptions, unknown keys)
  • Graphical
  • Crash
  • Progression
  • Balance
  • Pypostprocessing failure
  • Other

What is the problem?

In developing PyBlock, I have removed the steam-power technology as it is required to even start the game, and so can't be locked behind a trigger tech. I also added and modified two trigger techs to unlock before automation science, to prevent softlocks of players trying to make science before basic materials. The issue here comes when trying guide from those trigger techs to automation science. I am unable to have automation science have a dependency on the last trigger tech because it is overridden by PyPP.

I would like PyPP to either add steam power to the dependencies instead of overwriting it, or have a cache check for automation science so that other mods can set pre-automation science techs.

Steps to reproduce

No response

Additional context

image
you can see at the bottom that the prerequisites field is overridden

Log file

No response

@protocol-1903 protocol-1903 added the triage This issue needs to be labeled label Nov 11, 2024
@protocol-1903
Copy link
Author

I can make a PR if need be, just let me know what solution works best

@oorzkws oorzkws added mod:pypostprocessing This affects pypostprocessing on hold Issue is not being worked on currently and removed triage This issue needs to be labeled labels Nov 12, 2024
@oorzkws
Copy link
Contributor

oorzkws commented Nov 12, 2024

The whole block is a hack until autotech works. The full overwrite is because the other dependencies were causing issues, so... I'm tempted to just

if not mods["PyBlock"] then
data.raw.technology["automation-science-pack"].prerequisites = {"steam-power"}
end

Ideally we won't be spending a lot of time maintaining temporary code. Thoughts @notnotmelon ?

@notnotmelon
Copy link
Contributor

Sounds good to me.

@protocol-1903
Copy link
Author

protocol-1903 commented Nov 14, 2024

I have a pyblock cache line for automation science, so i think it will override the old prerequesites. I'll see if that works

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
mod:pypostprocessing This affects pypostprocessing on hold Issue is not being worked on currently
Projects
None yet
Development

No branches or pull requests

3 participants