Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


HAL9000 last won the day on April 9 2018

HAL9000 had the most liked content!

Community Reputation

75 Shiny

About HAL9000

  • Rank
    Colony Founder

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. HAL9000

    DMT Modding Tool

    Hey guys, DMT v2 is now released. The major change is it now uses Harmony v2 instead of v1. This is a breaking change so I've bumped the DMT release to v2 as well. There are some upgrade processes you'll need to do for your mod. A lot of them can be done by DMT by using the "Attempt Hamony Auto Update" checkbox when building Further details of the updates required can be found here: https://stardewvalleywiki.com/Modding:Migrate_to_Harmony_2.0 We've also removed the requirement for the mod.xml. Now both vanilla and DMT uses the ModInfo.xml file. Again, there is an auto-update function built in that should serve most cases. Once the update is done you should delete the mod.xml file to remove any warnings that are generated in DMT. Cheers, Hal
  2. HAL9000

    DMT Modding Tool

    Post your log file from the server that's erroring There's definitely something strange in your setup. IPatcherMod is used by DMT and shouldn't be in the server files. They are used during the DMT build rather than runtime of the game. Cecil should not be included with the dlls that end up in the server folders. You don't need to change the field accessor type, you can get the value in the Harmony patch using reflection Cheers, Hal
  3. HAL9000

    DMT Modding Tool

    Hi Umbrella, I think this is where you're going wrong: The IHarmony interface isn't for each patch, it's for a patch manager class. So you'd define and implement the interface once for the mod (usually, though more complicated patching can use it multiple times) and that then controls how the patches are applied (usually with a PatchAll or something more complicated if needed). That's what I meant by the modder being responsible for how the patching is applied. Then when the game starts each mod's IHarmony interface is called and that's what drives your changes. DMT makes no assumptions on how you're going to do that. Does that make sense? Cheers, Hal
  4. HAL9000

    DMT Modding Tool

    Hi Umbrella, It's up to the modder to implement the patch call, each mod is split into it's own dll for this reason. You wouldn't want DMT making assumptions about running the patches as the modder may want to do something unusual / bespoke. If you're in control of the mod you can just remove the other two patchall calls. Each patch doesn't require a patchall call, one call grabs all the patches in the given assembly (dll file). Have a look at the bootstraping section on Harmony for how to run individual patches and for detecting already run patches. https://github.com/pardeike/Harmony/wiki/Bootstrapping Cheers, Hal
  5. HAL9000

    DMT Modding Tool

    Hey Morte ^^ good to see you. How's things? If you get some time come hang out on Guppy's discord server. I'm usually lurking in the DMT section
  6. If you use DMT you can add a script that uses the BakeMesh method on the SkinnedMeshRenderer component to take a snapshot of a specific character in game with kit https://docs.unity3d.com/ScriptRefer....BakeMesh.html
  7. I've put a warning in for the next release of DMT if the user tries to use the in-game mods folder as their DMT folder.
  8. Hi rembomy, Look in the Windows.xml file in the XUi folder Look for this line <textfield name="txtPassword" depth="2" pos="10,-8" width="280" height="32"/> and change it to this <textfield name="txtPassword" depth="2" pos="10,-8" width="280" height="32" password_field="true"/> Cheers, Hal
  9. Try removing the xml declaration on the first line, just start with the configs element
  10. Hi n2n1, The dnSpy compiler is having trouble with the switch statement so it's generating compiler code to handle it and the name is not allowed by the compiler (you can't have angle brackets in a name). To fix it: 1) Raise an issue on dnSpy (mention it's a Unity build as it may already be fixed for normal .net) 2) Rename the class to remove the brackets Cheers, Hal
  11. HAL9000

    DMT Modding Tool

    Yes that's normal. Once you build with DMT the DLL gets rewritten so EAC (the anticheat engine) sees it as changed and doesn't let you load the game. You can start the game through steam without EAC and play as normal, start the game through DMT which uses the non-eac version or verify your game files in steam and it will reset the game back to vanilla.
  12. HAL9000

    DMT Modding Tool

    Hi Umbrella, 1) The source (and releases) can be found on the GitHub page linked in the OP 2) The versions of DMT built after A18 released should ignore localisation (you'll see a warning in the output along those lines) 3) No, don't delete the backup folder. If you do then verify the game files in steam. When DMT runs a build and it doesn't have a backup it copies the vanilla files into the backup so it always has them available. Once you do a build the Assembly-CSharp.dll is replaced and can't be used as a backup. 4) There's no documentation, it's just having a look at the code and figuring things out. dnSpy is a good one to dig through the DLL. Guppy's Discord is where a lot of the modders hang out and can answer questions. 5) Visual Studio or Visual Studio code as an IDE for when you're creating scripts. Cheers, Hal
  13. HAL9000

    DMT Modding Tool

    Hi 7DaysToTry, It's hard to tell from that screenshot (forum pics get their size reduced, it's usually better to put it on a image sharing site and post the link) but it sounds like one of your mods is referencing Cecil. Have a look in the Scripts folder for your mods and in each file at the top you'll see something like using System.Collections.Generic; using UnityEngine; See if one has using Mono.Cecil; And remove it (mod scripts shouldn't need to reference Cecil) Or you can put the Mono.Cecil.dll file into your games Managed folder (the same place Assembly-CSharp.dll lives). So the game can load it. You can find Mono.Cecil.dll in the DMT folder. Cheers, Hal
  14. HAL9000

    DMT Modding Tool

    There's a pretty easy way to find out: try it. The hooks for DMT are pretty small and low level. There's a chance that it will break but it's unlikely. And if after 24 hours of release no one else has posted it's likely to be ok. Mods are more likely to break from version to version but the framework is usually stable, at least during major builds (A16.x, A17.x etc). Cheers, Hal
  15. No worries MrJim, glad you're back playing, happy hunting Cheers, Hal
  • Create New...