Jump to content

IEMod fork, new modding framework


Recommended Posts

some users including me try to contact with authors of IE mod on http://www.nexusmods.com/pillarsofeternity/mods/1/?tab=4&&navtag=http%3A%2F%2Fwww.nexusmods.com%2Fpillarsofeternity%2Fajax%2Fcomments%2F%3Fmod_id%3D1%26page%3D1%26sort%3DDESC%26pid%3D0%26thread_id%3D2708939&pUp=1

 

 

one guy send a message on steam to "bester"( one of the authors) and got reply that at this moment him(bester) has no plan on working for ver.3.0 and don't know if anybody does

 

hope situation would change in future

Edited by Gs11
Link to comment
Share on other sites

one guy send a message on steam to "bester"( one of the authors) and got reply that at this moment him(bester) has no plan on working for ver.3.0 and don't know if anybody does

 

hope situation would change in future

Bester abandoned the IE mod a long time ago, he never even played the commercial non beta release of Eternity.  Springwight is the most recent person working on the mod so best bet is trying to contact him.

  • Like 1
Link to comment
Share on other sites

I've started looking at this again, either to help out possible new contributors and/or to chip in some fixes.

 

The patch has definitely broken the following:

UICustomization

Targeting (Friendly Fire and Turned Enemies)

FastSneak

NoEngagement

RecoveryRate

 

Other mods so far seem to patch in fine, but the only one I've personally tested is the Cipher Focus mod (which does work with the new patch!).

 

However, work continues to be ultra-busy this year, so I will have relatively limited time in the next couple weeks to help. I will see what I can manage, however.

  • Like 12
Link to comment
Share on other sites

New version is up on the nexus.  Has not had much testing, though I confirmed that Cipher Focus and Fast Sneak work. Use at your own risk, etc.

 

Obviously Per Encounter Spells doesn't work with the introduction of Spell Mastery. I will try to fix and/or provide options to enhance Spell Mastery instead. Feel free to suggest ideas.

  • Like 4
Link to comment
Share on other sites

My thanks are boundless!

 

Gonna test some :)

 

EDIT:

 

One tooltip at a time: Works.

Disable engagement: Works.

Fix movement recovery: Works.

 

 

Characters appear to move slower when playing with the mod, though.

Edited by AndreaColombo

"Time is not your enemy. Forever is."

— Fall-From-Grace, Planescape: Torment

"It's the questions we can't answer that teach us the most. They teach us how to think. If you give a man an answer, all he gains is a little fact. But give him a question, and he'll look for his own answers."

— Kvothe, The Wise Man's Fears

My Deadfire mods: Brilliant Mod | Faster Deadfire | Deadfire Unnerfed | Helwalker Rekke | Permanent Per-Rest Bonuses | PoE Items for Deadfire | No Recyled Icons | Soul Charged Nautilus

 

Link to comment
Share on other sites

New version is up on the nexus.  Has not had much testing, though I confirmed that Cipher Focus and Fast Sneak work. Use at your own risk, etc.

 

Obviously Per Encounter Spells doesn't work with the introduction of Spell Mastery. I will try to fix and/or provide options to enhance Spell Mastery instead. Feel free to suggest ideas.

 

Will it work on Mac ?  ;(

Link to comment
Share on other sites

My thanks are boundless!

 

Gonna test some :)

 

EDIT:

 

One tooltip at a time: Works.

Disable engagement: Works.

Fix movement recovery: Works.

 

 

Characters appear to move slower when playing with the mod, though.

 

Fast Sneak may be the culprit here. I didn't update the move section and it looks like it was changed. I'll adjust for the next version.

  • Like 1
Link to comment
Share on other sites

 

New version is up on the nexus.  Has not had much testing, though I confirmed that Cipher Focus and Fast Sneak work. Use at your own risk, etc.

 

Obviously Per Encounter Spells doesn't work with the introduction of Spell Mastery. I will try to fix and/or provide options to enhance Spell Mastery instead. Feel free to suggest ideas.

 

Will it work on Mac ?  ;(

 

 

Assuming the launcher does (it should). We switched to using a "Patch in place" system rather than trying to collect DLLs and transform them ourselves.

Link to comment
Share on other sites

Some feedback from brief testing...

 

  • Walk Mode - working
  • Additional Game Speeds - working
  • Blue Selection Circles - working
  • One Tooltip at a Time - working
  • Autosave Options - working (didn't test all variants, but saves are occurring prior to area change, as expected)
  • Backer Name Change and Dialogue Disable - not working (throws a missing txt file error in the dialogue window, dialogues remain active)

 

So just the last item so far, from the mod selections I generally use. Will test more thoroughly moving forward.

 

There is a general behavioral glitch when using the mouse wheel to scroll text in popup windows (character sheets, journal screens etc) where camera zoom is still active behind the window. Don't know whether that's new or not... I typically left click and grab to scroll, which avoids it.

 

Thanks for your efforts, one and all :thumbsup: . Do you prefer feedback here, Nexus or Git?

Edited by Heinous Hat
  • Like 1
Link to comment
Share on other sites

New version is up on the nexus.  Has not had much testing, though I confirmed that Cipher Focus and Fast Sneak work. Use at your own risk, etc.

 

Obviously Per Encounter Spells doesn't work with the introduction of Spell Mastery. I will try to fix and/or provide options to enhance Spell Mastery instead. Feel free to suggest ideas.

Thx a lot, good to have somebody who take care of that. I'm sure many players looking forward to it with  gratitude.

 

Gonne test and keep in post.

Edited by Gs11
Link to comment
Share on other sites

This version is not working for me. When I try to activate the mod on a fresh PoE installation, the launcher fails the activation with an error:

 

 

 

2016-02-28 16:40:32.200 +01:00 [information] Created patcher for assembly: Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null

2016-02-28 16:40:32.264 +01:00 [information] Implicitly creating type for: <PrivateImplementationDetails>.

2016-02-28 16:40:32.264 +01:00 [Warning] Conflict between types: <PrivateImplementationDetails>, and <PrivateImplementationDetails>.

2016-02-28 16:40:32.264 +01:00 [Warning] The type called <PrivateImplementationDetails> was to be introduced under the name <PrivateImplementationDetails> but will be introduced under the name <PrivateImplementationDetails>_$pw$_hPPIS

2016-02-28 16:40:32.265 +01:00 [information] Implicitly creating type for: IEMod.QuickControls.BindingValue/<>c__DisplayClass0_0`1.

2016-02-28 16:40:32.270 +01:00 [information] Implicitly creating type for: IEMod.QuickControls.BindingValue/<>c__DisplayClass2_0`1.

2016-02-28 16:40:32.270 +01:00 [information] Implicitly creating type for: IEMod.QuickControls.BindingValue/<>c__DisplayClass3_0`1.

2016-02-28 16:40:32.270 +01:00 [information] Implicitly creating type for: IEMod.QuickControls.QuickButton/<>c.

2016-02-28 16:40:32.270 +01:00 [information] Implicitly creating type for: IEMod.QuickControls.QuickDropdown`1/<>c__DisplayClass25_0.

2016-02-28 16:40:32.270 +01:00 [information] Implicitly creating type for: IEMod.QuickControls.Behaviors.BlockClicking/<>c__0`1.

2016-02-28 16:40:32.270 +01:00 [information] Implicitly creating type for: IEMod.Mods.Options.IEModOptions/<>c.

2016-02-28 16:40:32.270 +01:00 [information] Implicitly creating type for: IEMod.Mods.Options.mod_UIOptionsManager/<>c.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Mods.UICustomization.UICustomizer/<>c.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Mods.DropButtonMod.DropButton/<>c.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Mods.BonusSpellsGrimoire.mod_Grimoire/<>c.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.StringHelper/<>c__DisplayClass0_0.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.MemberAccess`1/<>c__DisplayClass17_0.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.ReflectHelper/<>c__DisplayClass2_0.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.ReflectHelper/<>c__DisplayClass2_1.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.ReflectHelper/<>c__DisplayClass2_2.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.ReflectHelper/<>c__DisplayClass3_0`1.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.ReflectHelper/<>c__DisplayClass4_0`1.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.ReflectHelper/<>c__DisplayClass8_0.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.ReflectHelper/<>c__DisplayClass8_1.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.ReflectHelper/<>c__DisplayClass8_2.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.ReflectHelper/<>c.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.IEControlFactory/<>c__DisplayClass7_0`1.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.IEControlFactory/<>c__DisplayClass9_0.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.UnityPrinter/<>c.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.ControlHelper/<>c__DisplayClass0_0.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.UnityObjectExtensions/<>c__DisplayClass2_0`1.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.UnityObjectExtensions/<>c__DisplayClass20_0.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.UnityObjectExtensions/<>c__DisplayClass25_0.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.UnityObjectExtensions/<>c.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: IEMod.Helpers.UnityObjectExtensions/<>c__DisplayClass26_0.

2016-02-28 16:40:32.271 +01:00 [information] Implicitly creating type for: <PrivateImplementationDetails>/__StaticArrayInitTypeSize=36.

2016-02-28 16:40:32.272 +01:00 [information] Implicitly creating type for: IEMod.Helpers.UnityPrinter/RecursiveObjectPrinter/<>c__DisplayClass5_0.

2016-02-28 16:40:32.272 +01:00 [information] Implicitly creating type for: IEMod.Helpers.UnityPrinter/RecursiveObjectPrinter/<>c__DisplayClass5_1.

2016-02-28 16:40:32.272 +01:00 [information] Implicitly creating type for: IEMod.Helpers.UnityPrinter/RecursiveObjectPrinter/<>c__DisplayClass5_2.

2016-02-28 16:40:32.282 +01:00 [information] Implicitly creating method for: Void mod_UIOptionsManager::<mod_Start>b__28_1(IBindingValue`1<System.Boolean>).

2016-02-28 16:40:32.282 +01:00 [information] Implicitly creating method for: Void mod_UIOptionsManager::<mod_Start>b__28_2(IBindingValue`1<System.Boolean>).

2016-02-28 16:40:32.284 +01:00 [information] Implicitly creating method for: Boolean mod_UIPartyPortrait::get_IsVertical().

2016-02-28 16:40:32.284 +01:00 [information] Implicitly creating method for: Void mod_UIPartyPortrait::set_IsVertical(Boolean).

2016-02-28 16:40:32.284 +01:00 [information] Implicitly creating method for: AbilityActionData mod_GameResources::get_AbilityActionData().

2016-02-28 16:40:32.505 +01:00 [information] Clearing fields in UIOptionsManager/OptionsPage

2016-02-28 16:40:32.507 +01:00 [information] =====Creating new fields=====

2016-02-28 16:40:33.867 +01:00 [Error] An error has occurred,

While trying to: Patch the game

Error type: A system error or some sort of bug. (NullReferenceException)

Internal message: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.

 

System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.

bei Patchwork.AssemblyPatcher.FixFieldReference(FieldReference yourFieldRef)

bei Patchwork.AssemblyPatcher.TransferMethodBody(MethodDefinition targetMethod, MethodDefinition yourMethod)

bei Patchwork.AssemblyPatcher.ModifyMethod(TypeDefinition targetType, MethodDefinition yourMethod, MemberActionAttribute memberAction, MethodDefinition targetMethod)

bei Patchwork.AssemblyPatcher.UpdateMethods(SimpleTypeLookup`1 methodActions)

bei Patchwork.AssemblyPatcher.PatchManifest(PatchingManifest manifest, ProgressObject o)

bei PatchworkLauncher.LaunchManager.ApplyInstructions(IEnumerable`1 patchGroups, ProgressObject po)

bei PatchworkLauncher.LaunchManager.<>c__DisplayClass46_0.<Command_Patch>b__0()

bei System.Threading.Tasks.Task.InnerInvoke()

bei System.Threading.Tasks.Task.Execute()

--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---

bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

bei System.Runtime.CompilerServices.TaskAwaiter.GetResult()

bei PatchworkLauncher.LaunchManager.<Command_Patch>d__46.MoveNext()

 

 

Any idea how to fix this?

Edited by Lythe Vodaine

FdSm3p1.png

Link to comment
Share on other sites

^ I suggest using spoiler brackets for the code; it's very long ;)

"Time is not your enemy. Forever is."

— Fall-From-Grace, Planescape: Torment

"It's the questions we can't answer that teach us the most. They teach us how to think. If you give a man an answer, all he gains is a little fact. But give him a question, and he'll look for his own answers."

— Kvothe, The Wise Man's Fears

My Deadfire mods: Brilliant Mod | Faster Deadfire | Deadfire Unnerfed | Helwalker Rekke | Permanent Per-Rest Bonuses | PoE Items for Deadfire | No Recyled Icons | Soul Charged Nautilus

 

Link to comment
Share on other sites

 

Characters appear to move slower when playing with the mod, though.

 

Fast Sneak may be the culprit here. I didn't update the move section and it looks like it was changed. I'll adjust for the next version.

 

 

Not sure if this is related or not, but Long Stride for my solo monk wasn't activating after installing IE Mod and the issue there seems to be Remove Combat-Only Restrictions.  Long Stride activates fine with both Game Speed Mod checked and Fast Scouting Mode set to Fast Scouting, Party LOS, but fails with Remove Combat-Only Restrictions checked.

Link to comment
Share on other sites

Assuming the launcher does (it should). We switched to using a "Patch in place" system rather than trying to collect DLLs and transform them ourselves.

 

 

Thanks ! 

 

Might be a silly question but, is it possible to NOT use the Launcher at all (just like we used to have to do before)? It's actually quite a hassle to have to install mono/etc. on Mac.

Link to comment
Share on other sites

Hey tjayharvey I just encountered a bug. with the IEmod enabled the new fifth level wizard spell "Form of the helpless beast" cannot be cast.

 

I would really appreciate if you could look into it.

 

Thanks:)

Link to comment
Share on other sites

Might be a silly question but, is it possible to NOT use the Launcher at all (just like we used to have to do before)? It's actually quite a hassle to have to install mono/etc. on Mac.

 

If I understand correctly, before switching to the launcher, for every new release of the mod the devs had to collect DLL's from all three platforms and manually patch them, and then bundle up three separate release packages for the three platforms. This hassle for the devs was likely part of the reason why releases have been so sparse or took so long at times.

 

Now, the launcher automatically patches the DLL's on the user side, so the devs can simply bundle up their mod files together with the launcher, and it will magically work on all platforms.

 

That is to say, relying on the launcher makes the release process easier for the mod developers (freeing them up to work on the actual mod contents instead) - and btw. also means that Mac&Linux releases of the mod won't lag behind Windows releases anymore.

 

I'd say that makes the little extra trouble for us users, more than worth it.. :)

And it's not that much trouble really. You only have to install mono/.NET once, after all.

Edited by Ineth
  • Like 3

"Some ideas are so stupid that only an intellectual could believe them." -- attributed to George Orwell

Link to comment
Share on other sites

Since the new launcher-based IE mod doesn't come with very newbie-friendly instructions, I've written up some instructions myself in the comment section.

Reposting them here in case it helps someone:

 

Installing the IE Mod

  1. Download the latest Launcher zip archive (currently called "5.1.0-beta Launcher for 2.03.0788"), and extract it somewhere.
    It doesn't matter where, but remember the place. I'll refer to it as the "launcher folder" below.
     
  2. Download the latest Patch DLL zip archive (currently called  "5.2.1 Patch DLL"), extract the IEMod.pw.dll from it, and place it in the Mods subfolder of the launcher folder - overwriting the IEMod.pw.dll that is already there.
     
  3. Run the PatchworkLauncher.exe in your launcher folder.
    If you're on Windows, you can just click it.
    If you're on Mac or Linux, you'll have make sure that mono is installed, then open a terminal to that folder and type:
    mono PatchworkLauncher.exe
  4. The first time you run it, it asks you for the game folder. Click 'Browse', find the Pillars of Eternity game folder, and click 'OK', then 'Okay'. The game folder is the one that is called "game" in the GOG.com version (no idea about Steam) and contains the PillarsOfEternity(.exe) executable.
     
  5. Another thing you need to do the first time you run it, is activate the mod. Click 'Active Mods', then 'Add'. Double-click the 'Mods' folder, select the IEMod.pw.dll file, and click 'Open'. Click 'Close' to get back to the launcher.
     
  6. Now you can click 'Launch with Mods' to start the game.
    If everything worked correctly you'll see an 'IE Mod' tab in the game settings.

Using the IE mod

 

From now on, each time you want to play with the mod you need to repeat the steps 3 and 6.

 

Updating the IE mod

 

Each time a new Patch DLL download is released, you need to repeat the step 2.

 

Using the experimental "Load custom companion attributes" feature

 

Since the 3.00 patch, using the AttributeScore cheat to change the attributes of scripted companions, no longer "sticks" - whenever you load the game, or enter a new map, their attributes reset to their factory values.

 

While it was probably not an intentional change, Obsidian likely won't be fixing it.

So the IE Mod provides an experimental solution instead, but it is a little complicated to use. Here are the steps:

  1. Go to your game folder. (Not the launcher folder!)
  2. Enter its PillarsOfEternity_Data subfolder (may be called slightly differently in your version - something with "data" though).
  3. Enter its Managed subfolder.
  4. Create a new subfolder called iemod here, and enter it.
  5. Create a new subfolder called customStats here, and enter it.
  6. Place the two XML files (custom.xml and default.xml) from the "5.2.1 Patch DLL" zip archive here.
  7. Open custom.xml in a text editor, and change the attribute numbers however you see fit.
    It's an XML file which will be parsed by the game, so make sure not to break the structure. If you only change numbers to other numbers and don't touch anything else, you'll be fine.
  8. Now inside the game, you can enable the "Load custom companion attributes" checkbox in the IE Mod settings.
Edited by Ineth
  • Like 5

"Some ideas are so stupid that only an intellectual could believe them." -- attributed to George Orwell

Link to comment
Share on other sites

After white march 2, console commands for attributes dont stick, meaning after a reload they have reset to the original setting/value.

 

Any known solution for this?

Try using the custom stats part of the mod described in the above post by Thaumaturgist.

Link to comment
Share on other sites

One question and one request:

Question: Is it possible to run the mod without the launcher, just by replacing the Assembly.dll? Otherwise I'm losing GOG Galaxy's hours counter feature  :biggrin:

Request: Please remove that options toggle button from the center of the screen when Custom UI is enabled. It obstructs the view when I have my console log in the middle. Thanks!

A Custom Editor for Deadfire's Data:
eFoHp9V.png

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...