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

Force loading CET and RED4ext #37

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

S1ntoi
Copy link

@S1ntoi S1ntoi commented Sep 12, 2024

MO2 automatically installs CET and RED4ext with a root folder directory. Therefore you need the rootbuilder if you want to manage your CET and RED4ext installtions with MO2 aswell.

MO2 automatically installs CET and RED4ext with a root folder directory. Therefore you need the rootbuilder if you want to manage your CET and RED4ext installtions with MO2 aswell.
@rfuzzo
Copy link
Contributor

rfuzzo commented Sep 12, 2024

since when does MO2 do that 👀 that's so odd

@S1ntoi
Copy link
Author

S1ntoi commented Sep 12, 2024

atleast 3 months i guess. i just got cet to work today.
doesnt matter if i install them via mod manager download or manual from a zip. mo2 changes the folder structure.

@rfuzzo
Copy link
Contributor

rfuzzo commented Sep 12, 2024

Hmm, from the official documentation I only see
Optional RootBuilder default config for CET & RED4ext framework root auto install

maybe you have this option enabled?

@S1ntoi
Copy link
Author

S1ntoi commented Sep 12, 2024

where would i find that option?

@rfuzzo
Copy link
Contributor

rfuzzo commented Sep 12, 2024

I assume in the MO2 cyberpunk plugin settings.
MO2 > Settings > Plugins > game > Cybperpunk

@S1ntoi
Copy link
Author

S1ntoi commented Sep 12, 2024

image
it doesnt seem to be active

@rfuzzo
Copy link
Contributor

rfuzzo commented Sep 12, 2024

Then I don't know, best to ask Zash in the MO2 discord

Copy link
Contributor

@rfuzzo rfuzzo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

waiting for more information from the plugin author/need to check this myself.

@ZashIn
Copy link

ZashIn commented Sep 12, 2024

The wiki was updated yesterday and I already remarked that the force load library option is not correct, at least for RED4ext.
Currently, Option B should be RootBuilder, as stated in the wiki.

CET itself might actually work now with force load libraries (the path needs to be just version.dll, relative to the exe), but I have to test this properly, before changing it in MO.
For RED4ext you still need the manual installation or RootBuilder though, afaik.

@rfuzzo
Copy link
Contributor

rfuzzo commented Sep 12, 2024

The force load option was tested to be working with both. That's why we added it to the wiki.

I don't recommend root builder anymore since it offers no benefit imo

@rfuzzo
Copy link
Contributor

rfuzzo commented Sep 12, 2024

And about the path? Did something change so that the install path gets automatically changed from default for CET or REd4Ext?

@ZashIn
Copy link

ZashIn commented Sep 12, 2024

Because force load libraries did not work before, it made only sense to install CET and RED4ext in MO via RB.
Since when (which CET and RED4ext versions) do force load libraries work now? I will update the plugin then, when properly tested.

@S1ntoi
Copy link
Author

S1ntoi commented Sep 12, 2024

Force loading did not work for me at all.

@rfuzzo
Copy link
Contributor

rfuzzo commented Sep 12, 2024

Okay apparently force loading doesn't work. And it was still added to the wiki. Great. That's so annoying and I will remove it

@S1ntoi
Copy link
Author

S1ntoi commented Sep 12, 2024

And I guess with RB you dont need force loading anymore? So my description aint accurate either

@ZashIn
Copy link

ZashIn commented Sep 12, 2024

I did another quick test with a few updated mods (CET 1.32.3 and RED4ext 1.12) and it seems to work now with the following force load library settings:

  • Cyberpunk2077.exe: version.dll
  • Cyberpunk2077.exe: winmm.dll

I will make a PR for an plugin update (changed CET and RED4ext install, force load libraries and removed RootBuilder), but would welcome some testers.

But it would still be good to know the versions of CET and RED4ext which made the force load library option possible, especially for the latter (e.g. RED4ext v1.18 did not work!).

@rfuzzo
Copy link
Contributor

rfuzzo commented Sep 12, 2024

To me this all sounds too unstable to be useful tbh, for very little gain.

Someone on discord who also tested the force load stuff also just said "but on heavy lists like mine (532 as of now) force loading is very unstable"

So I rather see it completely removed from the wiki tbh

@ZashIn
Copy link

ZashIn commented Sep 12, 2024

I would remove the config for force load libraries either way, too. The MO plugin should handle this in the correct way. If force load libraries does work reliably, I will remove the RB option and add the correct force load library config.

And about the path? Did something change so that the install path gets automatically changed from default for CET or REd4Ext?

CET and RED4ext get installed into root since MO 2.5, so basically always since I added "proper" Cyberpunk support.

Otherwise just stick to the manual CET and RED4ext install.

@ZashIn
Copy link

ZashIn commented Sep 12, 2024

Someone on discord who also tested the force load stuff also just said "but on heavy lists like mine (532 as of now) force loading is very unstable"

Do you have a reference (Discord link, which user)? Details about a proper test would be nice (versions, comparison to manual install, ...)

@rfuzzo
Copy link
Contributor

rfuzzo commented Sep 12, 2024

Sure! It's on the cyberpunk modding discord https://discord.gg/redmodding

If you join I can ping you to the channel where we discussed it if you want.

@ZashIn
Copy link

ZashIn commented Sep 12, 2024

Here is a test release for the current MO 2.5.2 of the MO cyberpunk plugin with forced load libraries instead of RootBuilder.
Corresponding PR: ModOrganizer2/modorganizer-basic_games#163

@ZashIn
Copy link

ZashIn commented Oct 4, 2024

So apparently the CrashReporter does not recognize version.dll with the forced libs and crashes itself,
"failed to get .../CrashReporter/version.dll handle".

Workarounds:

  1. Disable CrashReporter, e.g. replace it with an empty file (through MO), like this mod does.
  2. Create symlink/hardlink to CrashReporter/version.dll (neither a copy or linking only CETs bin/x64/´version.dll works)
  3. Install CET manually into game folder for debugging purpose.

I would opt to integrate the 1st option by default with MO, like creating the empty file mod / mapping when CET gets installed, with a reference to 3. for debugging.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants