Git Product home page Git Product logo

modthespire's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

modthespire's Issues

Dependency UI Confusion

Mod dependencies are only shown after clicking play and the user encounters a fatal error that a dependency couldn't be found.

This information should be displayed on the mod select UI so whenever a mod has it's checkbox selected, ModTheSpire should check if it's dependencies are also selected and if not red out the background of the mod and add a tooltip to it explaining what dependencies are missing.

dependency_issue

Crash when run through SlayTheSpire.exe

When running ModTheSpire as desktop-1.0.jar (see here), running it through SlayTheSpire.exe causes a silent crash when the game tries to load the main menu.

Running through SlayTheSpireTroubleshoot.bat works fine.

Incorrect line-endings in MTS.sh

I downloaded the latest release and with this release a shell script comes which is wrapper for executing the .jar file.

According to the documentation, you only need to set the executable bit for this file and start it, but the shell script is not executable on Linux, because it contains the wrong line-endings.

It fails with the error bash: ./MTS.sh: /bin/sh^M: bad interpreter: No such file or directory.

Executing dos2unix fixes this issue, but it would be great, that this would come out of the box.

Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeException: OpenGL is not supported by the video driver.

Managed to run everything on my PC just fine, however I can't seem to make it run on my mothers PC.

Her video drivers are up to date so I don't think it's that. I saw the top response from this link https://stackoverflow.com/questions/15572908/opengl-is-not-supported-by-the-video-driver

And was going to attempt that but have no idea what file in the source code I should edit to do so. Any help/suggestions?

im having a error when trying to launch heres the log

Version Info:

  • Java version (1.8.0_171)
  • Slay the Spire (06-28-2018)
  • ModTheSpire (2.7.0)
    Mod list:
  • basemod (2.14.0)
  • betterrewardsmod (4.0.0)
  • cagethespire (1.0.0)
  • customclimb (0.3.2)
  • MadScienceMod (0.1.7)
  • STS_AlwaysWhale (0.0.1)
  • witchmod (0.9.1)
  • superfastmode (0.8.1)

Begin patching...
Finding core patches...
Finding patches...
javassist.NotFoundException: com.megacrit.cardcrawl.screens.mainMenu.CardLibraryScreen
at javassist.ClassPool.get(ClassPool.java:445)
at com.evacipated.cardcrawl.modthespire.Patcher.injectPatches(Patcher.java:206)
at com.evacipated.cardcrawl.modthespire.Patcher.injectPatches(Patcher.java:174)
at com.evacipated.cardcrawl.modthespire.Loader.runMods(Loader.java:229)
at com.evacipated.cardcrawl.modthespire.ui.ModSelectWindow.lambda$null$1(ModSelectWindow.java:199)
at java.lang.Thread.run(Unknown Source)

Unable to download

The download link for ModTheSpire does not load. Probably the problem is on my side but currently I am unable to locate it. Any versions of what is happening? (no, the internet connection is up)

Patch 23

Does betamode still work for patch 23?

ModTheSpire Doesn't Work

Whenever I start it, it shows this.

Running with debug mode turned ON...

Version Info:

  • Java version (1.8.0_171)
  • Slay the Spire (06-07-2018)
  • ModTheSpire (2.7.0)
    Mod list:
  • basemod (2.14.0)
  • fruitymod-sts (0.6.8)
  • JuggerMod

Begin patching...
Finding core patches...
Finding patches...
com.evacipated.cardcrawl.modthespire.patcher.PatchingException: com.megacrit.cardcrawl.core.CardCrawlGame.update: Location matching given description could not be found for patch
at com.evacipated.cardcrawl.modthespire.lib.LineFinder.findInOrder(LineFinder.java:30)
at basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.UpdateHooks$PreUpdateHook$Locator.Locate(UpdateHooks.java:34)
at com.evacipated.cardcrawl.modthespire.patcher.LocatorInfo.findLines(LocatorInfo.java:18)
at com.evacipated.cardcrawl.modthespire.Patcher.injectPatches(Patcher.java:270)
at com.evacipated.cardcrawl.modthespire.Patcher.injectPatches(Patcher.java:174)
at com.evacipated.cardcrawl.modthespire.Loader.runMods(Loader.java:229)
at com.evacipated.cardcrawl.modthespire.ui.ModSelectWindow.lambda$null$1(ModSelectWindow.java:199)
at java.lang.Thread.run(Thread.java:748)

ASM compability problems

I am having a few compability issues with some libraries I want to use in a mod. Quite a few of them require a modern-ish asm version. The problem is that ModTheSpire uses javautil, which in turn uses a really outdated asm version (3.3.1 I think).
The only solution I came up with so far would be to either use a seperate class loader to manage different asm versions or to build my own versions of all these libraries so that I can shadow asm, but to be honest I would rather avoid that.
Would it be possible to either update javautil or to use something else?

Cannot find desktop-1.0.jar windows 10 file association issue

On windows 10, have WinRAR installed. When right clicking modthespire.jar and opening with java, says cannot find desktop-1.0.jar, even though the file is there. WinRAR is associated with .jar files. Changing the default association to java from WinRAR fixes the issue. Not sure if the issue is with java, windows, or modthespire.

8 more

after I run Modthespire and choose mods including Basemod I see 8 more...
and nothing happens

screenshot_1 png png

Exception in thread "Thread-2" java.lang.NoSuchMethodError:

I use a mac and have downloaded the files accordingly. Starting through ModTheSpire.jar works fine and the game loads with no mods selected, but when I try to start with any mods selected this error comes up no matter which mod I choose. Anyone have the solution? (note: I am using the most updated version of slay the spire and of all the mods as well as ModTheSpire.jar)

Exception in thread "Thread-2" java.lang.NoSuchMethodError: sun.reflect.ReflectionFactory.newConstructorAccessor(Ljava/lang/reflect/Constructor;)Lsun/reflect/ConstructorAccessor;
at com.evacipated.cardcrawl.modthespire.EnumBusterReflect.findConstructorAccessor(EnumBusterReflect.java:211)
at com.evacipated.cardcrawl.modthespire.EnumBusterReflect.make(EnumBusterReflect.java:70)
at com.evacipated.cardcrawl.modthespire.EnumBusterReflect.make(EnumBusterReflect.java:49)
at com.evacipated.cardcrawl.modthespire.Patcher.patchEnums(Patcher.java:125)
at com.evacipated.cardcrawl.modthespire.Loader.runMods(Loader.java:237)
at com.evacipated.cardcrawl.modthespire.ui.ModSelectWindow.lambda$null$1(ModSelectWindow.java:199)
at java.base/java.lang.Thread.run(Unknown Source)

Game Crashing

For some reason, after downloading Mod week 27, I crashed whenever entering to rest sites.

Major Frame Rate Problems

This happened on the last released version of Mod The Spire, but whenever there are a lot of actions happening on screen, it messes up my frame rate and gutters a lot before going back to normal, like I was doing a construct run using cycle and on the first floor boss it cycled a bunch of cards and activated a lot of effects, so the screen started top lag a lot. I am only currently running BaseMod, FetchMod, Always Whale, and the Construct. Thanks for the help!

No mods will load. TMP

So I've verified my cache, am running the newest version of both the base mod and the mod the spire, but this error is occuring and it won't launch.

javassist.CannotCompileException: [source error] no such field: tmp
at javassist.CtBehavior.insertAt(CtBehavior.java:1213)
at javassist.CtBehavior.insertAt(CtBehavior.java:1140)
at com.evacipated.cardcrawl.modthespire.patcher.InsertPatchInfo.doPatch(InsertPatchInfo.java:132)
at com.evacipated.cardcrawl.modthespire.patcher.InsertPatchInfo.doPatch(InsertPatchInfo.java:146)
at com.evacipated.cardcrawl.modthespire.Patcher.finalizePatches(Patcher.java:146)
at com.evacipated.cardcrawl.modthespire.Loader.runMods(Loader.java:233)
at com.evacipated.cardcrawl.modthespire.ui.ModSelectWindow.lambda$null$1(ModSelectWindow.java:199)
at java.lang.Thread.run(Unknown Source)
Caused by: compile error: no such field: tmp
at javassist.compiler.TypeChecker.fieldAccess(TypeChecker.java:845)
at javassist.compiler.TypeChecker.atFieldRead(TypeChecker.java:803)
at javassist.compiler.TypeChecker.atMember(TypeChecker.java:988)
at javassist.compiler.JvstTypeChecker.atMember(JvstTypeChecker.java:66)
at javassist.compiler.ast.Member.accept(Member.java:39)
at javassist.compiler.JvstTypeChecker.atMethodArgs(JvstTypeChecker.java:221)
at javassist.compiler.TypeChecker.atMethodCallCore(TypeChecker.java:735)
at javassist.compiler.TypeChecker.atCallExpr(TypeChecker.java:695)
at javassist.compiler.JvstTypeChecker.atCallExpr(JvstTypeChecker.java:157)
at javassist.compiler.ast.CallExpr.accept(CallExpr.java:46)
at javassist.compiler.CodeGen.doTypeCheck(CodeGen.java:242)
at javassist.compiler.CodeGen.atStmnt(CodeGen.java:330)
at javassist.compiler.ast.Stmnt.accept(Stmnt.java:50)
at javassist.compiler.CodeGen.atStmnt(CodeGen.java:351)
at javassist.compiler.ast.Stmnt.accept(Stmnt.java:50)
at javassist.compiler.Javac.compileStmnt(Javac.java:567)
at javassist.CtBehavior.insertAt(CtBehavior.java:1192)
... 7 more

Add github tag

Can you please tag the project with SlayTheSpire-Mod? This will help people browse github for mods

Class Not Found Exception

When I attempt to launch ModTheSpire version 2.4.0, after selecting play with only basemod selected, I get and error in the log. Here is the log for reference.
`Finding core patches...
com.badlogic.gdx.backends.lwjgl.LwjglApplication superclasses: 2
com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen superclasses: 2
com.megacrit.cardcrawl.ui.panels.TopPanel superclasses: 2
com.megacrit.cardcrawl.credits.CreditsScreen superclasses: 2
Finding patches...
com.megacrit.cardcrawl.screens.SingleCardViewPopup superclasses: 2
com.megacrit.cardcrawl.rooms.AbstractRoom superclasses: 2
com.megacrit.cardcrawl.ui.panels.ExhaustPanel superclasses: 3
com.megacrit.cardcrawl.screens.stats.StatsScreen superclasses: 2
com.megacrit.cardcrawl.screens.DeathScreen superclasses: 2
com.megacrit.cardcrawl.screens.mainMenu.MenuButton superclasses: 2
com.megacrit.cardcrawl.ui.panels.EnergyPanel superclasses: 3
com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen superclasses: 2
com.megacrit.cardcrawl.screens.charSelect.CharacterSelectScreen superclasses: 2
com.megacrit.cardcrawl.cards.AbstractCard superclasses: 2
com.megacrit.cardcrawl.relics.AbstractRelic superclasses: 2
com.megacrit.cardcrawl.potions.AbstractPotion superclasses: 2
com.megacrit.cardcrawl.core.CardCrawlGame superclasses: 2
com.megacrit.cardcrawl.shop.ShopScreen superclasses: 2
com.megacrit.cardcrawl.ui.panels.PotionPopUp superclasses: 2
com.megacrit.cardcrawl.unlock.UnlockTracker superclasses: 2
com.megacrit.cardcrawl.characters.AbstractPlayer superclasses: 3
com.megacrit.cardcrawl.core.EnergyManager superclasses: 2
com.megacrit.cardcrawl.localization.LocalizedStrings superclasses: 2
com.megacrit.cardcrawl.rewards.RewardItem superclasses: 2
com.megacrit.cardcrawl.ui.campfire.AbstractCampfireOption superclasses: 2
com.megacrit.cardcrawl.screens.options.SettingsScreen superclasses: 2
com.megacrit.cardcrawl.screens.stats.CharStat superclasses: 2
com.megacrit.cardcrawl.ui.buttons.CancelButton superclasses: 2
com.megacrit.cardcrawl.map.MapGenerator superclasses: 2
com.megacrit.cardcrawl.events.thecity.KnowingSkull superclasses: 4
com.megacrit.cardcrawl.helpers.PotionHelper superclasses: 2
com.megacrit.cardcrawl.vfx.CardTrailEffect superclasses: 3
com.megacrit.cardcrawl.ui.panels.DrawPilePanel superclasses: 3
com.megacrit.cardcrawl.helpers.RelicLibrary superclasses: 2
com.megacrit.cardcrawl.actions.GameActionManager superclasses: 2
com.megacrit.cardcrawl.ui.panels.DiscardPilePanel superclasses: 3
com.megacrit.cardcrawl.screens.mainMenu.CardLibraryScreen superclasses: 2
com.megacrit.cardcrawl.rooms.CampfireUI superclasses: 2
com.megacrit.cardcrawl.powers.IntangiblePower superclasses: 3
com.megacrit.cardcrawl.shop.StorePotion superclasses: 2
com.megacrit.cardcrawl.gashapon.NeowReward superclasses: 2
com.megacrit.cardcrawl.screens.charSelect.CharacterOption superclasses: 2
com.megacrit.cardcrawl.helpers.GameDictionary superclasses: 2
com.megacrit.cardcrawl.helpers.CardLibrary superclasses: 2
com.megacrit.cardcrawl.screens.options.OptionsPanel superclasses: 2
com.megacrit.cardcrawl.ui.buttons.EndTurnButton superclasses: 2
com.megacrit.cardcrawl.dungeons.AbstractDungeon superclasses: 2
com.megacrit.cardcrawl.actions.common.ApplyPowerAction superclasses: 3
com.megacrit.cardcrawl.actions.common.ObtainPotionAction superclasses: 3
com.megacrit.cardcrawl.cards.CardGroup superclasses: 2
com.megacrit.cardcrawl.ui.panels.TopPanel superclasses: 2
com.megacrit.cardcrawl.monsters.MonsterGroup superclasses: 2
Injecting patches...Done.
Compiling patched classes...Done.
Patching enums...Done.
Setting isModded = true...Done.
Adding ModTheSpire to version...Done.
Initializing mods...
libgdx version 1.9.5
20:18:02.511 INFO basemod.BaseMod> initializeGson
20:18:02.569 INFO basemod.BaseMod> initializeTypeMaps

java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.evacipated.cardcrawl.modthespire.Patcher.initializeMods(Patcher.java:32)
at com.evacipated.cardcrawl.modthespire.Loader.runMods(Loader.java:154)
at com.evacipated.cardcrawl.modthespire.ModSelectWindow.lambda$null$1(ModSelectWindow.java:71)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NoClassDefFoundError: com/megacrit/cardcrawl/powers/AbsorbPower
at basemod.BaseMod.initializePowerMap(BaseMod.java:568)
at basemod.BaseMod.initialize(BaseMod.java:367)
... 8 more
Caused by: java.lang.ClassNotFoundException: com.megacrit.cardcrawl.powers.AbsorbPower
at com.evacipated.cardcrawl.modthespire.MTSClassLoader.findClass(MTSClassLoader.java:82)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at com.evacipated.cardcrawl.modthespire.MTSClassLoader.loadClass(MTSClassLoader.java:65)
... 10 more`

[Bug] Crash if mods folder is empty

The latest version crashes before the mod select window has even opened if there are no mods in the mods folder. By either adding mods to said folder or donwgrading MTS I can get past the window to the javassist injections.

Looks like a classic NullPointer to me:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
        at com.evacipated.cardcrawl.modthespire.Loader.buildInfoArray(Loader.java:163)
        at com.evacipated.cardcrawl.modthespire.ModSelectWindow.<init>(ModSelectWindow.java:19)
        at com.evacipated.cardcrawl.modthespire.Loader.lambda$main$0(Loader.java:48)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
        at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
        at java.awt.EventQueue.access$500(EventQueue.java:97)
        at java.awt.EventQueue$3.run(EventQueue.java:709)
        at java.awt.EventQueue$3.run(EventQueue.java:703)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Can't install on mac

Hello, I can't seem to install on mac, I am pretty sure I have followed the instructions properly though:

$ cd ~/Applications/Slay the Spire.app/Contents/Resources
$ java -jar ModTheSpire.jar

Gives me back:

ERROR: Failed to find Steam installation.
Exception in thread "main" java.lang.NullPointerException
	at com.evacipated.cardcrawl.modthespire.SteamSearch.containsAcfFile(SteamSearch.java:94)
	at com.evacipated.cardcrawl.modthespire.SteamSearch.prepare(SteamSearch.java:39)
	at com.evacipated.cardcrawl.modthespire.SteamSearch.findDesktopJar(SteamSearch.java:19)
	at com.evacipated.cardcrawl.modthespire.Loader.main(Loader.java:91)

I have java 8 installed and my structure is like that:

.
└── Contents
    ├── Info.plist
    ├── MacOS
    │   └── run.sh
    └── Resources
        ├── MTS.sh
        ├── ModTheSpire.jar
        ├── mods
        └── shortcut.icns

Thanks :)

Problems installing

javassist.CannotCompileException: [source error] no such field: retVal
at javassist.CtBehavior.insertAt(CtBehavior.java:1213)
at javassist.CtBehavior.insertAt(CtBehavior.java:1140)
at com.evacipated.cardcrawl.modthespire.patcher.InsertPatchInfo.doPatch(InsertPatchInfo.java:105)
at com.evacipated.cardcrawl.modthespire.Patcher.finalizePatches(Patcher.java:125)
at com.evacipated.cardcrawl.modthespire.Loader.runMods(Loader.java:153)
at com.evacipated.cardcrawl.modthespire.ModSelectWindow.lambda$null$1(ModSelectWindow.java:181)
at java.lang.Thread.run(Unknown Source)
Caused by: compile error: no such field: retVal
at javassist.compiler.TypeChecker.fieldAccess(TypeChecker.java:845)
at javassist.compiler.TypeChecker.atFieldRead(TypeChecker.java:803)
at javassist.compiler.TypeChecker.atMember(TypeChecker.java:988)
at javassist.compiler.JvstTypeChecker.atMember(JvstTypeChecker.java:66)
at javassist.compiler.ast.Member.accept(Member.java:39)
at javassist.compiler.JvstTypeChecker.atMethodArgs(JvstTypeChecker.java:221)
at javassist.compiler.TypeChecker.atMethodCallCore(TypeChecker.java:735)
at javassist.compiler.TypeChecker.atCallExpr(TypeChecker.java:695)
at javassist.compiler.JvstTypeChecker.atCallExpr(JvstTypeChecker.java:157)
at javassist.compiler.ast.CallExpr.accept(CallExpr.java:46)
at javassist.compiler.CodeGen.doTypeCheck(CodeGen.java:242)
at javassist.compiler.CodeGen.atStmnt(CodeGen.java:330)
at javassist.compiler.ast.Stmnt.accept(Stmnt.java:50)
at javassist.compiler.CodeGen.atStmnt(CodeGen.java:351)
at javassist.compiler.ast.Stmnt.accept(Stmnt.java:50)
at javassist.compiler.Javac.compileStmnt(Javac.java:567)
at javassist.CtBehavior.insertAt(CtBehavior.java:1192)
... 6 more

Mod The spire messing up again

i mentioned this on another post as a reply to someone who was having a similar problem, but i wanted to make my own post about this so maybe it will get attention faster because i really want to play mod the spire today, ModTheSpire was working JUST fine last night literally right before i went to bed last night at like 12am i was playing it without any problems
yet all the sudden im having issues with it this morning, when i have yet to change any files, although after it didnt work the first time i went to update my base mod and i updated the constructmod, but it still doesnt work. this is what it gives me when i try to start it up:

Finding core patches...
Finding patches...
com.evacipated.cardcrawl.modthespire.patcher.PatchingException: com.megacrit.cardcrawl.core.CardCrawlGame.update: Location matching given description could not be found for patch
at com.evacipated.cardcrawl.modthespire.lib.LineFinder.findInOrder(LineFinder.java:30)
at basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.UpdateHooks$PreUpdateHook$Locator.Locate(UpdateHooks.java:40)
at com.evacipated.cardcrawl.modthespire.patcher.LocatorInfo.findLines(LocatorInfo.java:18)
at com.evacipated.cardcrawl.modthespire.Patcher.injectPatches(Patcher.java:265)
at com.evacipated.cardcrawl.modthespire.Patcher.injectPatches(Patcher.java:170)
at com.evacipated.cardcrawl.modthespire.Loader.runMods(Loader.java:185)
at com.evacipated.cardcrawl.modthespire.ModSelectWindow.lambda$null$1(ModSelectWindow.java:189)
at java.lang.Thread.run(Unknown Source)

Game randomly crashes + question

as the title says the game just randomly crashes with the new update it just happens without any rhyme or reason, once in combat, twice in the store and a fourth time on the map itself.

as for the question I can't get the "Deck r" command to work as the id's required aren't posted anywhere, I tried using the card name and also number for the card in my deck, based on placement, but it just didn't work, am I missing something obvious or does it have a specific ID?

ModTheSpire issues (The Construct)

I've place ModTheSpire in my folder, and then the mod in the mods folder and when I try to run the .jar, this is what I get. What do I need to do to resolve this issue?

`Debug mode!
Java version: 1.8.0_144
Slay the Spire version: 05-17-2018
ModTheSpire version: 2.6.0
Mod list: constructmod (0.5.2),
Finding core patches...
Finding patches...
Injecting patches...
Patch [com.evacipated.cardcrawl.modthespire.patches.DisableGdxForceExit]
Patching [com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop()]
Adding Insert @ 248...

{
com.evacipated.cardcrawl.modthespire.patches.DisableGdxForceExit.Insert($0, $$);
}
Patch [com.evacipated.cardcrawl.modthespire.patches.CreditsModList]
Patching [com.megacrit.cardcrawl.credits.CreditsScreen()]
Adding Insert @ r5 (abs:57)...

{
float[] __tmpY = new float[]{tmpY};
com.evacipated.cardcrawl.modthespire.patches.CreditsModList.Insert($0, $$, __tmpY);
tmpY = __tmpY[0];
}
Patch [com.evacipated.cardcrawl.modthespire.patches.modsscreen.MainMenuItem]
Patching [com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen.setMainMenuButtons()]
Adding Insert @ r4 (abs:150)...

{
int[] __index = new int[]{index};
com.evacipated.cardcrawl.modthespire.patches.modsscreen.MainMenuItem.Insert($0, $$, __index);
index = __index[0];
}
Patch [constructmod.patches.BackToBasicsPatch]
Patching [com.megacrit.cardcrawl.events.thecity.BackToBasics.buttonEffect(int)]
Adding Insert @ r30 (abs:94)...

{
constructmod.patches.BackToBasicsPatch.Insert($0, $$);
}
Patch [constructmod.patches.PandorasBoxPatch]
Patching [com.megacrit.cardcrawl.relics.PandorasBox.onEquip()]
Adding Insert @ r12 (abs:47)...

{
constructmod.patches.PandorasBoxPatch.Insert($0, $$);
}
Patch [constructmod.patches.ReboundCardPatch]
Patching [com.megacrit.cardcrawl.actions.utility.UseCardAction(com.megacrit.cardcrawl.cards.AbstractCard,com.megacrit.cardcrawl.core.AbstractCreature)]
Adding Insert @ r6 (abs:28)...

{
constructmod.patches.ReboundCardPatch.Insert($0, $$);
}
Patch [constructmod.patches.KnowingSkullPatch]
Patching [com.megacrit.cardcrawl.events.thecity.KnowingSkull()]
Adding Insert @ r5 (abs:68)...

{
constructmod.patches.KnowingSkullPatch.Insert($0, $$);
}
Patch [constructmod.patches.VampiresPatch]
Patching [com.megacrit.cardcrawl.events.thecity.Vampires.replaceAttacks()]
Adding Insert @ r8 (abs:139)...

{
constructmod.patches.VampiresPatch.Insert($0, $$);
}
Patch [constructmod.patches.GremlinMatchPatch]
Patching [com.megacrit.cardcrawl.events.shrines.GremlinMatchGame.initializeCards()]
Adding Insert @ r32 (abs:90)...

{
constructmod.patches.GremlinMatchPatch.Insert($0, $$, retVal);
}
Patch [constructmod.patches.CharScreenSelectFXPatch]
Patching [com.megacrit.cardcrawl.screens.charSelect.CharacterOption.updateHitbox()]
Adding Insert @ r52 (abs:185)...

{
constructmod.patches.CharScreenSelectFXPatch.Insert($0, $$);
}
Patch [constructmod.patches.CardLibraryPatch]
Patching [com.megacrit.cardcrawl.helpers.CardLibrary.getCopy(java.lang.String,int,int)]
Replacing...
Patch [com.evacipated.cardcrawl.modthespire.patches.MainMenuModList]
Patching [com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen.render(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
Adding Postfix...
com.evacipated.cardcrawl.modthespire.patches.MainMenuModList.Postfix($0, $$);
Patch [com.evacipated.cardcrawl.modthespire.patches.CreditsModList]
Patching [com.megacrit.cardcrawl.credits.CreditsScreen()]
Adding Postfix...
com.evacipated.cardcrawl.modthespire.patches.CreditsModList.Postfix($0, $$);
Patch [com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModMenuButton$SetLabel]
Patching [com.megacrit.cardcrawl.screens.mainMenu.MenuButton.setLabel()]
Adding Postfix...
com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModMenuButton$SetLabel.Postfix($0, $$);
Patch [com.evacipated.cardcrawl.modthespire.patches.TopPanelModList]
Patching [com.megacrit.cardcrawl.ui.panels.TopPanel.updateTips()]
Adding Postfix...
com.evacipated.cardcrawl.modthespire.patches.TopPanelModList.Postfix($0, $$);
Patch [com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModMenuButton$ButtonEffect]
Patching [com.megacrit.cardcrawl.screens.mainMenu.MenuButton.buttonEffect()]
Adding Postfix...
com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModMenuButton$ButtonEffect.Postfix($0, $$);
Patch [com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModsScreenUpdateRender$Update]
Patching [com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen.update()]
Adding Postfix...
com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModsScreenUpdateRender$Update.Postfix($0, $$);
Patch [com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModsScreenUpdateRender$Render]
Patching [com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen.render(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
Adding Postfix...
com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModsScreenUpdateRender$Render.Postfix($0, $$);
Done.
Compiling patched classes...
com.badlogic.gdx.backends.lwjgl.LwjglApplication
com.megacrit.cardcrawl.credits.CreditsScreen
com.megacrit.cardcrawl.helpers.CardLibrary
com.megacrit.cardcrawl.screens.charSelect.CharacterOption
com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen
com.megacrit.cardcrawl.screens.mainMenu.MenuButton
com.megacrit.cardcrawl.ui.panels.TopPanel
com.megacrit.cardcrawl.actions.utility.UseCardAction
com.megacrit.cardcrawl.relics.PandorasBox
com.megacrit.cardcrawl.events.shrines.GremlinMatchGame
com.megacrit.cardcrawl.events.thecity.BackToBasics
com.megacrit.cardcrawl.events.thecity.KnowingSkull
com.megacrit.cardcrawl.events.thecity.Vampires
Done.
Patching enums...
com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen$CurScreen
com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen$1
1 switch statement(s)
2018-05-25 00:30:08,453 Thread-4 ERROR Unable to move file C:\Users\BBy983\Desktop\Applications\Slay.the.Spire.Patch.25\sendToDevs\logs\SlayTheSpire.log to C:\Users\BBy983\Desktop\Applications\Slay.the.Spire.Patch.25\sendToDevs\logs\SlayTheSpire-2018-05-25-3.log: java.nio.file.FileSystemException C:\Users\BBy983\Desktop\Applications\Slay.the.Spire.Patch.25\sendToDevs\logs\SlayTheSpire.log -> C:\Users\BBy983\Desktop\Applications\Slay.the.Spire.Patch.25\sendToDevs\logs\SlayTheSpire-2018-05-25-3.log: The process cannot access the file because it is being used by another process.

2018-05-25 00:30:08,453 Thread-4 ERROR Unable to delete file C:\Users\BBy983\Desktop\Applications\Slay.the.Spire.Patch.25\sendToDevs\logs\SlayTheSpire.log: java.nio.file.FileSystemException C:\Users\BBy983\Desktop\Applications\Slay.the.Spire.Patch.25\sendToDevs\logs\SlayTheSpire.log: The process cannot access the file because it is being used by another process.

com.megacrit.cardcrawl.screens.mainMenu.MenuButton$ClickResult
com.megacrit.cardcrawl.screens.mainMenu.MenuButton$1
1 switch statement(s)

com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass
com.megacrit.cardcrawl.cards.AbstractCard$1
com.megacrit.cardcrawl.characters.AbstractPlayer$1
com.megacrit.cardcrawl.core.CardCrawlGame$1
com.megacrit.cardcrawl.daily.DailyScreen$1
com.megacrit.cardcrawl.dungeons.AbstractDungeon$1
com.megacrit.cardcrawl.events.shrines.GremlinMatchGame$1
com.megacrit.cardcrawl.events.thebeyond.SpireHeart$1
com.megacrit.cardcrawl.events.thecity.KnowingSkull$1
com.megacrit.cardcrawl.events.thecity.Vampires$1
com.megacrit.cardcrawl.helpers.CardLibrary$1
com.megacrit.cardcrawl.helpers.PotionHelper$1
com.megacrit.cardcrawl.helpers.RelicLibrary$1
com.megacrit.cardcrawl.relics.AncientTeaSet$1
com.megacrit.cardcrawl.relics.ArtOfWar$1
com.megacrit.cardcrawl.relics.CursedKey$1
com.megacrit.cardcrawl.relics.Ectoplasm$1
com.megacrit.cardcrawl.relics.GremlinHorn$1
com.megacrit.cardcrawl.relics.HappyFlower$1
com.megacrit.cardcrawl.relics.Lantern$1
com.megacrit.cardcrawl.relics.PhilosopherStone$1
com.megacrit.cardcrawl.relics.RunicDome$1
com.megacrit.cardcrawl.relics.Sozu$1
com.megacrit.cardcrawl.relics.Sundial$1
com.megacrit.cardcrawl.relics.Test1$1
com.megacrit.cardcrawl.relics.VelvetChoker$1
com.megacrit.cardcrawl.saveAndContinue.SaveAndContinue$1
com.megacrit.cardcrawl.screens.CharSelectInfo$1
com.megacrit.cardcrawl.screens.DeathScreen$1
com.megacrit.cardcrawl.screens.charSelect.CharacterOption$1
com.megacrit.cardcrawl.screens.leaderboards.FilterButton$1
com.megacrit.cardcrawl.screens.options.OptionsPanel$1
com.megacrit.cardcrawl.screens.options.SettingsScreen$1
com.megacrit.cardcrawl.screens.runHistory.RunHistoryScreen$1
com.megacrit.cardcrawl.screens.stats.CharStat$1
com.megacrit.cardcrawl.screens.stats.StatsScreen$1
com.megacrit.cardcrawl.steam.SteamSaveSync$1
com.megacrit.cardcrawl.ui.panels.EnergyPanel$1
com.megacrit.cardcrawl.unlock.UnlockTracker$1
com.megacrit.cardcrawl.vfx.CardTrailEffect$1
39 switch statement(s)

com.megacrit.cardcrawl.cards.AbstractCard$CardColor
com.megacrit.cardcrawl.cards.AbstractCard$1
com.megacrit.cardcrawl.dungeons.AbstractDungeon$1
com.megacrit.cardcrawl.helpers.CardLibrary$1
com.megacrit.cardcrawl.screens.SingleCardViewPopup$1
com.megacrit.cardcrawl.screens.runHistory.TinyCard$1
5 switch statement(s)

com.megacrit.cardcrawl.helpers.CardLibrary$LibraryType
com.megacrit.cardcrawl.helpers.CardLibrary$1
1 switch statement(s)
Done.
Setting isModded = true...Done.
Adding ModTheSpire to version...Done.
Initializing mods...
Exception in thread "Thread-4" java.lang.NoClassDefFoundError: basemod/interfaces/PostInitializeSubscriber
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at com.evacipated.cardcrawl.modthespire.MTSClassLoader.findClass(MTSClassLoader.java:76)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at com.evacipated.cardcrawl.modthespire.MTSClassLoader.loadClass(MTSClassLoader.java:65)
at com.evacipated.cardcrawl.modthespire.Patcher.initializeMods(Patcher.java:33)
at com.evacipated.cardcrawl.modthespire.Loader.runMods(Loader.java:217)
at com.evacipated.cardcrawl.modthespire.ModSelectWindow.lambda$null$1(ModSelectWindow.java:189)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.ClassNotFoundException: basemod.interfaces.PostInitializeSubscriber
at com.evacipated.cardcrawl.modthespire.MTSClassLoader.findClass(MTSClassLoader.java:82)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at com.evacipated.cardcrawl.modthespire.MTSClassLoader.loadClass(MTSClassLoader.java:65)
... 17 more`

Source error

When I try to load ModTheSpire it never gets past the first console. This is the log:
(Finding core patches...
Finding patches...
Injecting patches...
javassist.CannotCompileException: [source error] no such field: tmpPool
at javassist.CtBehavior.insertAt(CtBehavior.java:1213)
at javassist.CtBehavior.insertAt(CtBehavior.java:1140)
at com.evacipated.cardcrawl.modthespire.patcher.InsertPatchInfo.doPatch(InsertPatchInfo.java:105)
at com.evacipated.cardcrawl.modthespire.Patcher.finalizePatches(Patcher.java:124)
at com.evacipated.cardcrawl.modthespire.Loader.runMods(Loader.java:90)
at com.evacipated.cardcrawl.modthespire.ModSelectWindow.lambda$null$1(ModSelectWindow.java:71)
at java.lang.Thread.run(Unknown Source)
Caused by: compile error: no such field: tmpPool
at javassist.compiler.TypeChecker.fieldAccess(TypeChecker.java:845)
at javassist.compiler.TypeChecker.atFieldRead(TypeChecker.java:803)
at javassist.compiler.TypeChecker.atMember(TypeChecker.java:988)
at javassist.compiler.JvstTypeChecker.atMember(JvstTypeChecker.java:66)
at javassist.compiler.ast.Member.accept(Member.java:39)
at javassist.compiler.JvstTypeChecker.atMethodArgs(JvstTypeChecker.java:221)
at javassist.compiler.TypeChecker.atMethodCallCore(TypeChecker.java:735)
at javassist.compiler.TypeChecker.atCallExpr(TypeChecker.java:695)
at javassist.compiler.JvstTypeChecker.atCallExpr(JvstTypeChecker.java:157)
at javassist.compiler.ast.CallExpr.accept(CallExpr.java:46)
at javassist.compiler.CodeGen.doTypeCheck(CodeGen.java:242)
at javassist.compiler.CodeGen.atStmnt(CodeGen.java:330)
at javassist.compiler.ast.Stmnt.accept(Stmnt.java:50)
at javassist.compiler.CodeGen.atStmnt(CodeGen.java:351)
at javassist.compiler.ast.Stmnt.accept(Stmnt.java:50)
at javassist.compiler.Javac.compileStmnt(Javac.java:567)
at javassist.CtBehavior.insertAt(CtBehavior.java:1192)
... 6 more)

Any idea what is causing this? Would love to hear a fix.

game not initializing, java error

hey guys, I'm getting this error message when opening modthespire
already tried reinstalling slay the spire and java 8 but still the same message, any help?
running on windows 10

spr

"
Finding core patches...
Finding patches...
Injecting patches...Done.
Compiling patched classes...Done.
Patching enums...Done.
Setting isModded = true...
Exception in thread "Thread-3" java.util.ServiceConfigurationError: org.apache.logging.log4j.spi.Provider: Provider org.apache.logging.log4j.core.impl.Log4jProvider not a subtype
at java.util.ServiceLoader.fail(ServiceLoader.java:239)
at java.util.ServiceLoader.access$300(ServiceLoader.java:185)
at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:376)
at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404)
at java.util.ServiceLoader$1.next(ServiceLoader.java:480)
at org.apache.logging.log4j.util.ProviderUtil.loadProviders(ProviderUtil.java:101)
at org.apache.logging.log4j.util.ProviderUtil.(ProviderUtil.java:67)
at org.apache.logging.log4j.util.ProviderUtil.lazyInit(ProviderUtil.java:142)
at org.apache.logging.log4j.util.ProviderUtil.hasProviders(ProviderUtil.java:126)
at org.apache.logging.log4j.LogManager.(LogManager.java:89)
at com.megacrit.cardcrawl.core.Settings.(Settings.java:16)
at sun.misc.Unsafe.ensureClassInitialized(Native Method)
at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:43)
at sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:156)
at java.lang.reflect.Field.acquireFieldAccessor(Field.java:1088)
at java.lang.reflect.Field.getFieldAccessor(Field.java:1069)
at java.lang.reflect.Field.set(Field.java:764)
at com.evacipated.cardcrawl.modthespire.Loader.runMods(Loader.java:167)
at com.evacipated.cardcrawl.modthespire.ModSelectWindow.lambda$null$1(ModSelectWindow.java:181)
at java.lang.Thread.run(Thread.java:748)
"

Unable to launch because of error

image
image
When i try to launch the game, i get this error, How can i fix it? Below is the files in the install directory, aswell as the mods folder.
image
image

Mod the spire 2.7.0 can lauch but sees none of my mods

I have done the tutorial on how to install mods : https://www.youtube.com/watch?v=r2m2aL1eEjw

Modthespire.jar is lauching when I double-click it (had to run jarfix). And I have put the mods i want into the mods folder.

But they don't show up when I launch mod the spire.

I have put base mod week 30 https://github.com/daviscook477/BaseMod/releases

Modthespire week 30 https://github.com/daviscook477/BaseMod/releases

and fruitymods (the seeker character).

I can't play him because fruitymods doesn't show up.

Any advice? (Screenshot included).
1

NullPointerException Error

When attempting to load ModTheSpire through SlayTheSpire.exe after renaming the .jar files accordingly I keep getting the following error upon attempting to load the game with the BaseMod
java.lang.NullPointerException: in is null at java.util.zip.ZipInputStream.<init>(ZipInputStream.java:101) at java.util.zip.ZipInputStream.<init>(ZipInputStream.java:80) at java.util.jar.JarInputStream.<init>(JarInputStream.java:76) at java.util.jar.JarInputStream.<init>(JarInputStream.java:62) at com.evacipated.cardcrawl.modthespire.MTSClassLoader.<init>(MTSClassLoader.java:29) at com.evacipated.cardcrawl.modthespire.Loader.runMods(Loader.java:60) at com.evacipated.cardcrawl.modthespire.ModSelectWindow.lambda$null$0(ModSelectWindow.java:83) at java.lang.Thread.run(Thread.java:748)
This doesn't happen when running ModTheSpire.jar (Now named desktop-1.0.jar) directly

unable to find desktop1.jar

I get an error thrown when I try to load. I have read as much as I can find ... any clues to what I'm missing?

No Such Method Error?

capture
So this is an error I'm getting I just updated ModTheSpire and BaseMod. These are the only things I have installed.

getting the mods to work

I can't seem to get any of the mods to work due to the fact the mods don't support the version of sts I'm running i was wondering if someone could help me figure out how to change it

Bug with new @ByRef Object[]

Patch

package basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame;

import com.evacipated.cardcrawl.modthespire.lib.ByRef;
import com.evacipated.cardcrawl.modthespire.lib.SpireInsertPatch;
import com.evacipated.cardcrawl.modthespire.lib.SpirePatch;
import com.megacrit.cardcrawl.characters.AbstractPlayer;
import com.megacrit.cardcrawl.core.CardCrawlGame;

import basemod.BaseMod;

@SpirePatch(cls="com.megacrit.cardcrawl.core.CardCrawlGame", method="createCharacter")
public class CreateCharacterSwitch {

	@SpireInsertPatch(loc=999, localvars={"p"})
	public static void Insert(Object selectionObj, @ByRef Object[] pObj) {
		AbstractPlayer.PlayerClass selection = (AbstractPlayer.PlayerClass) selectionObj;
		AbstractPlayer p = (AbstractPlayer) pObj[0];
		if (!selection.toString().equals("IRONCLAD") && !selection.toString().equals("THE_SILENT") &&
				!selection.toString().equals("CROWBOT")) {
			p = BaseMod.createCharacter(selection.toString(), CardCrawlGame.playerName);
			//pObj[0] = (Object) p;
		}
	}
	
}

Error Log

Compiling patched classes...
  com.megacrit.cardcrawl.shop.ShopScreen
  com.megacrit.cardcrawl.helpers.RelicLibrary
  com.megacrit.cardcrawl.credits.CreditsScreen
  com.megacrit.cardcrawl.rooms.CampfireUI
  com.megacrit.cardcrawl.core.EnergyManager
  com.megacrit.cardcrawl.ui.panels.TopPanel
  com.megacrit.cardcrawl.helpers.CardLibrary
  com.megacrit.cardcrawl.core.CardCrawlGame
  com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen
  com.badlogic.gdx.backends.lwjgl.LwjglApplication
  com.megacrit.cardcrawl.characters.AbstractPlayer
  com.megacrit.cardcrawl.dungeons.AbstractDungeon
Done.
Patching enums...Done.
Setting isModded = true...Done.
Adding ModTheSpire to version...
Exception in thread "Thread-2" java.lang.VerifyError: Bad type on operand stack
Exception Details:
  Location:
    com/megacrit/cardcrawl/core/CardCrawlGame.createCharacter(Lcom/megacrit/cardcrawl/characters/AbstractPlayer$PlayerClass;)Lcom/megacrit/cardcrawl/characters/AbstractPlayer; @106: getfield
  Reason:
    Type 'java/lang/Object' (current frame, stack[0]) is not assignable to 'com/megacrit/cardcrawl/characters/AbstractPlayer'
  Current Frame:
    bci: @106
    flags: { }
    locals: { 'com/megacrit/cardcrawl/characters/AbstractPlayer$PlayerClass', 'java/lang/Object', top, top, '[Ljava/lang/Object;' }
    stack: { 'java/lang/Object' }
  Bytecode:
    0x0000000: 014c b202 122a b602 132e aa00 0000 004a
    0x0000010: 0000 0001 0000 0003 0000 001a 0000 002b
    0x0000020: 0000 003c bb01 5559 b200 24b2 0157 b701
    0x0000030: 584c a700 22bb 0214 59b2 0024 b202 15b7
    0x0000040: 0216 4ca7 0011 bb02 1759 b200 24b2 0218
    0x0000050: b702 194c 04bd 0244 5903 2b53 3a04 2a19
    0x0000060: 04b8 071b 1904 0332 4c2b b401 0fb4 0110
    0x0000070: b600 d04d 2cb9 00a1 0100 9900 172c b900
    0x0000080: a201 00c0 0111 4e2d b401 14b8 021a a7ff
    0x0000090: e62b b0                                
  Stackmap Table:
    append_frame(@36,Null)
    same_frame(@53)
    same_frame(@70)
    full_frame(@84,{Object[#635],Object[#1058]},{})
    full_frame(@116,{Object[#635],Object[#580],Object[#952],Top,Object[#1821]},{})
    same_frame(@145)

	at java.lang.Class.getDeclaredFields0(Native Method)
	at java.lang.Class.privateGetDeclaredFields(Unknown Source)
	at java.lang.Class.getDeclaredField(Unknown Source)
	at com.evacipated.cardcrawl.modthespire.Loader.runMods(Loader.java:100)
	at com.evacipated.cardcrawl.modthespire.ModSelectWindow.lambda$null$0(ModSelectWindow.java:83)
	at java.lang.Thread.run(Unknown Source)

Ring of Chaos custom run

Would it be possible to add a custom climb modifier that gave the effect of the Ring of Chaos? It would be nice to select it from the menu instead of adding the relic via console.

Issue after todays update

I updated everything as if i were freshly installing it after todays patch, and now get an error code that goes as follows:

Version Info:

  • Java version (1.8.0_144)
  • Slay the Spire (07-12-2018)
  • ModTheSpire (2.7.0)
    Mod list:

Starting game...
Exception in thread "Thread-4" java.util.ServiceConfigurationError: org.apache.logging.log4j.spi.Provider: Provider org.apache.logging.log4j.core.impl.Log4jProvider not a subtype
at java.util.ServiceLoader.fail(ServiceLoader.java:239)
at java.util.ServiceLoader.access$300(ServiceLoader.java:185)
at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:376)
at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404)
at java.util.ServiceLoader$1.next(ServiceLoader.java:480)
at org.apache.logging.log4j.util.ProviderUtil.loadProviders(ProviderUtil.java:101)
at org.apache.logging.log4j.util.ProviderUtil.(ProviderUtil.java:67)
at org.apache.logging.log4j.util.ProviderUtil.lazyInit(ProviderUtil.java:142)
at org.apache.logging.log4j.util.ProviderUtil.hasProviders(ProviderUtil.java:126)
at org.apache.logging.log4j.LogManager.(LogManager.java:89)
at com.megacrit.cardcrawl.desktop.DesktopLauncher.(DesktopLauncher.java:24)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.evacipated.cardcrawl.modthespire.Loader.runMods(Loader.java:300)
at com.evacipated.cardcrawl.modthespire.ui.ModSelectWindow.lambda$null$1(ModSelectWindow.java:199)
at java.lang.Thread.run(Thread.java:748)

I'm unable to play the vanilla version of the game, i'm not sure what i screwed up along the way. Any advice would be much appreciated

modthespire help

I have BaseMod and ConstructMod in mods folder. What am I doing wrong now?

Debug mode!
Java version: 1.8.0_144
Slay the Spire version: 05-17-2018
ModTheSpire version: 2.6.0
Mod list: constructmod (0.5.2), basemod (2.10.0), 
Finding core patches...
Finding patches...
Injecting patches...
Patch [com.evacipated.cardcrawl.modthespire.patches.CreditsModList]
  Patching [com.megacrit.cardcrawl.credits.CreditsScreen()]
    Adding Insert @ r5 (abs:57)...

{
float[] __tmpY = new float[]{tmpY};
com.evacipated.cardcrawl.modthespire.patches.CreditsModList.Insert($0, $$, __tmpY);
tmpY = __tmpY[0];
}
Patch [com.evacipated.cardcrawl.modthespire.patches.modsscreen.MainMenuItem]
  Patching [com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen.setMainMenuButtons()]
    Adding Insert @ r4 (abs:150)...

{
int[] __index = new int[]{index};
com.evacipated.cardcrawl.modthespire.patches.modsscreen.MainMenuItem.Insert($0, $$, __index);
index = __index[0];
}
Patch [com.evacipated.cardcrawl.modthespire.patches.modsscreen.SaveBaseModBadges]
  Patching [basemod.BaseMod.registerModBadge(com.badlogic.gdx.graphics.Texture,java.lang.String,java.lang.String,java.lang.String,basemod.ModPanel)]
    Adding Insert @ r8 (abs:702)...

{
com.evacipated.cardcrawl.modthespire.patches.modsscreen.SaveBaseModBadges.Insert($$, badge);
}
Patch [com.evacipated.cardcrawl.modthespire.patches.DisableGdxForceExit]
  Patching [com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop()]
    Adding Insert @ 248...

{
com.evacipated.cardcrawl.modthespire.patches.DisableGdxForceExit.Insert($0, $$);
}
Patch [constructmod.patches.CharScreenSelectFXPatch]
  Patching [com.megacrit.cardcrawl.screens.charSelect.CharacterOption.updateHitbox()]
    Adding Insert @ r52 (abs:185)...

{
constructmod.patches.CharScreenSelectFXPatch.Insert($0, $$);
}
Patch [constructmod.patches.ReboundCardPatch]
  Patching [com.megacrit.cardcrawl.actions.utility.UseCardAction(com.megacrit.cardcrawl.cards.AbstractCard,com.megacrit.cardcrawl.core.AbstractCreature)]
    Adding Insert @ r6 (abs:28)...

{
constructmod.patches.ReboundCardPatch.Insert($0, $$);
}
Patch [constructmod.patches.KnowingSkullPatch]
  Patching [com.megacrit.cardcrawl.events.thecity.KnowingSkull()]
    Adding Insert @ r5 (abs:68)...

{
constructmod.patches.KnowingSkullPatch.Insert($0, $$);
}
Patch [constructmod.patches.VampiresPatch]
  Patching [com.megacrit.cardcrawl.events.thecity.Vampires.replaceAttacks()]
    Adding Insert @ r8 (abs:139)...

{
constructmod.patches.VampiresPatch.Insert($0, $$);
}
Patch [constructmod.patches.GremlinMatchPatch]
  Patching [com.megacrit.cardcrawl.events.shrines.GremlinMatchGame.initializeCards()]
    Adding Insert @ r32 (abs:90)...

{
constructmod.patches.GremlinMatchPatch.Insert($0, $$, retVal);
}
Patch [constructmod.patches.PandorasBoxPatch]
  Patching [com.megacrit.cardcrawl.relics.PandorasBox.onEquip()]
    Adding Insert @ r12 (abs:47)...

{
constructmod.patches.PandorasBoxPatch.Insert($0, $$);
}
Patch [constructmod.patches.BackToBasicsPatch]
  Patching [com.megacrit.cardcrawl.events.thecity.BackToBasics.buttonEffect(int)]
    Adding Insert @ r30 (abs:94)...

{
constructmod.patches.BackToBasicsPatch.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.relics.AbstractRelic.ReorganizeObtainRelicGetHook]
  Patching [com.megacrit.cardcrawl.relics.AbstractRelic.reorganizeObtain(com.megacrit.cardcrawl.characters.AbstractPlayer,int,boolean,int)]
    Adding Insert @ r2 (abs:194)...

{
basemod.patches.com.megacrit.cardcrawl.relics.AbstractRelic.ReorganizeObtainRelicGetHook.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.core.EnergyManager.PostEnergyRechargeHook]
  Patching [com.megacrit.cardcrawl.core.EnergyManager.recharge()]
    Adding Insert @ r10 (abs:41)...

{
basemod.patches.com.megacrit.cardcrawl.core.EnergyManager.PostEnergyRechargeHook.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.relics.AbstractRelic.ObtainRelicGetHook]
  Patching [com.megacrit.cardcrawl.relics.AbstractRelic.obtain()]
    Adding Insert @ r2 (abs:311)...

{
basemod.patches.com.megacrit.cardcrawl.relics.AbstractRelic.ObtainRelicGetHook.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar.ColorTabBarFix$Render]
  Patching [com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar.render(com.badlogic.gdx.graphics.g2d.SpriteBatch,float)]
    Adding Insert @ 148...

{
basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar.ColorTabBarFix$Render.Insert($0, $$, curTab);
}
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.DamageHooks$ApplyPowersMulti]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.applyPowers()]
    Adding Insert @ r59 (abs:2807)...

{
basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.DamageHooks$ApplyPowersMulti.Insert($0, $$, tmp);
}
Patch [basemod.patches.com.megacrit.cardcrawl.actions.GameActionManager.GetNextActionHook]
  Patching [com.megacrit.cardcrawl.actions.GameActionManager.getNextAction()]
    Adding Insert @ 233...

{
basemod.patches.com.megacrit.cardcrawl.actions.GameActionManager.GetNextActionHook.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.ui.panels.PotionPopUp.PrePotionUseHook]
  Patching [com.megacrit.cardcrawl.ui.panels.PotionPopUp.updateInput()]
    Adding Insert @ r18 (abs:151)...

{
basemod.patches.com.megacrit.cardcrawl.ui.panels.PotionPopUp.PrePotionUseHook.Insert($0, $$, potion);
}
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderFixSwitches$RenderOuterGlowSwitch]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.renderOuterGlow(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Adding Insert @ r9 (abs:1172)...

{
basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderFixSwitches$RenderOuterGlowSwitch.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderDescriptionEnergy$AlterEnergyKeyword]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.initializeDescription()]
    Adding Insert @ 387...

{
basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderDescriptionEnergy$AlterEnergyKeyword.Insert($0, $$, word);
}
Patch [basemod.patches.com.megacrit.cardcrawl.ui.panels.PotionPopUp.PostPotionUseHook]
  Patching [com.megacrit.cardcrawl.ui.panels.PotionPopUp.updateInput()]
    Adding Insert @ r21 (abs:154)...

{
basemod.patches.com.megacrit.cardcrawl.ui.panels.PotionPopUp.PostPotionUseHook.Insert($0, $$, potion);
}
Patch [basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.ModalChoiceScreenUpdateRender$Render]
  Patching [com.megacrit.cardcrawl.dungeons.AbstractDungeon.render(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Adding Insert @ r51 (abs:2754)...

{
basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.ModalChoiceScreenUpdateRender$Render.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.CardLibraryScreen.EverythingFix$DidChangeTab]
  Patching [com.megacrit.cardcrawl.screens.mainMenu.CardLibraryScreen.didChangeTab(com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar,com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar$CurrentTab)]
    Adding Insert @ r1 (abs:275)...

{
com.megacrit.cardcrawl.cards.CardGroup[] __visibleCards = new com.megacrit.cardcrawl.cards.CardGroup[]{visibleCards};
basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.CardLibraryScreen.EverythingFix$DidChangeTab.Insert($0, $$, __visibleCards);
visibleCards = __visibleCards[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.ui.panels.PotionPopUp.PostPotionUseHookTargetMode]
  Patching [com.megacrit.cardcrawl.ui.panels.PotionPopUp.updateTargetMode()]
    Adding Insert @ r24 (abs:126)...

{
basemod.patches.com.megacrit.cardcrawl.ui.panels.PotionPopUp.PostPotionUseHookTargetMode.Insert($0, $$, potion);
}
Patch [basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.ModalChoiceScreenUpdateRender$Update]
  Patching [com.megacrit.cardcrawl.dungeons.AbstractDungeon.update()]
    Adding Insert @ r18 (abs:2571)...

{
basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.ModalChoiceScreenUpdateRender$Update.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.screens.charSelect.CharacterOption.UpdateHitboxBgImg]
  Patching [com.megacrit.cardcrawl.screens.charSelect.CharacterOption.updateHitbox()]
    Adding Insert @ r49 (abs:182)...

{
basemod.patches.com.megacrit.cardcrawl.screens.charSelect.CharacterOption.UpdateHitboxBgImg.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderDescriptionEnergy$RenderSmallEnergyOrb]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.renderDescription(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Adding Insert @ r185 (abs:1915)...

{
float[] __start_x = new float[]{start_x};
java.lang.String[] __tmp = new java.lang.String[]{tmp};
basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderDescriptionEnergy$RenderSmallEnergyOrb.Insert($0, $$, spacing, i, __start_x, draw_y, font, textColor, __tmp, gl);
start_x = __start_x[0];
tmp = __tmp[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.UpdateHooks$PostUpdateHook]
  Patching [com.megacrit.cardcrawl.core.CardCrawlGame.update()]
    Adding Insert @ 799...

{
basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.UpdateHooks$PostUpdateHook.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.screens.runHistory.RunHistoryScreen.FixCharacterFilter$ResetRunsDropdown]
  Patching [com.megacrit.cardcrawl.screens.runHistory.RunHistoryScreen.resetRunsDropdown()]
    Adding Insert @ r31 (abs:239)...

{
boolean[] __includeMe = new boolean[]{includeMe};
basemod.patches.com.megacrit.cardcrawl.screens.runHistory.RunHistoryScreen.FixCharacterFilter$ResetRunsDropdown.Insert($0, $$, __includeMe, data);
includeMe = __includeMe[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.DamageHooks$ApplyPowers]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.applyPowers()]
    Adding Insert @ r18 (abs:2766)...

{
float[] __tmp = new float[]{tmp};
basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.DamageHooks$ApplyPowers.Insert($0, $$, __tmp);
tmp = __tmp[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.screens.charSelect.CharacterSelectScreen.InitializeSwitch]
  Patching [com.megacrit.cardcrawl.screens.charSelect.CharacterSelectScreen.initialize()]
    Adding Insert @ 82...

{
basemod.patches.com.megacrit.cardcrawl.screens.charSelect.CharacterSelectScreen.InitializeSwitch.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.PostDrawHook]
  Patching [com.megacrit.cardcrawl.characters.AbstractPlayer.draw(int)]
    Adding Insert @ r31 (abs:1241)...

{
basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.PostDrawHook.Insert($0, $$, c);
}
Patch [basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.CardLibraryScreen.EverythingFix$Initialize]
  Patching [com.megacrit.cardcrawl.screens.mainMenu.CardLibraryScreen.initialize()]
    Adding Insert @ 78...

{
basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.CardLibraryScreen.EverythingFix$Initialize.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.RenderHooks$PostRenderHook]
  Patching [com.megacrit.cardcrawl.core.CardCrawlGame.render()]
    Adding Insert @ 451...

{
basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.RenderHooks$PostRenderHook.Insert($0, $$, sb);
}
Patch [basemod.patches.com.megacrit.cardcrawl.relics.AbstractRelic.InstantObtainRelicGetHook2]
  Patching [com.megacrit.cardcrawl.relics.AbstractRelic.instantObtain()]
    Adding Insert @ r2 (abs:279)...

{
basemod.patches.com.megacrit.cardcrawl.relics.AbstractRelic.InstantObtainRelicGetHook2.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.PostInitializeStarterRelicsHookSwitch]
  Patching [com.megacrit.cardcrawl.characters.AbstractPlayer.initializeStarterRelics(com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass)]
    Adding Insert @ r13 (abs:304)...

{
java.util.ArrayList[] __relics = new java.util.ArrayList[]{relics};
basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.PostInitializeStarterRelicsHookSwitch.Insert($0, $$, __relics);
relics = __relics[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.screens.SingleCardViewPopup.BackgroundFix$EnergyOrbTexture]
  Patching [com.megacrit.cardcrawl.screens.SingleCardViewPopup.renderCost(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Adding Insert @ 1142...

{
basemod.patches.com.megacrit.cardcrawl.screens.SingleCardViewPopup.BackgroundFix$EnergyOrbTexture.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.CreateCharacterSwitch]
  Patching [com.megacrit.cardcrawl.core.CardCrawlGame.createCharacter(com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass)]
    Adding Insert @ 998...

{
java.lang.Object[] __p = new java.lang.Object[]{p};
basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.CreateCharacterSwitch.Insert($$, __p);
p = (com.megacrit.cardcrawl.characters.AbstractPlayer)__p[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.CustomCardsPatch]
  Patching [com.megacrit.cardcrawl.helpers.CardLibrary.initialize()]
    Adding Insert @ 315...

{
basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.CustomCardsPatch.Insert($$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.FixDescriptionWidthCustomDynamicVariable]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.initializeDescription()]
    Adding Insert @ 454...

{
com.badlogic.gdx.graphics.g2d.GlyphLayout[] __gl = new com.badlogic.gdx.graphics.g2d.GlyphLayout[]{gl};
basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.FixDescriptionWidthCustomDynamicVariable.Insert($0, $$, __gl, word);
gl = __gl[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.DamageHooks$CalculateCardDamageMulti]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.calculateCardDamage(com.megacrit.cardcrawl.monsters.AbstractMonster)]
    Adding Insert @ r77 (abs:2948)...

{
basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.DamageHooks$CalculateCardDamageMulti.Insert($0, $$, tmp);
}
Patch [basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.UpdateHooks$PreUpdateHook]
  Patching [com.megacrit.cardcrawl.core.CardCrawlGame.update()]
    Adding Insert @ 664...

{
basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.UpdateHooks$PreUpdateHook.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.screens.charSelect.CharacterOption.CtorSwitch]
  Patching [com.megacrit.cardcrawl.screens.charSelect.CharacterOption(java.lang.String,com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass,java.lang.String,java.lang.String)]
    Adding Insert @ r20 (abs:89)...

{
basemod.patches.com.megacrit.cardcrawl.screens.charSelect.CharacterOption.CtorSwitch.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.screens.stats.CharStat.StatFixes$ConstructorFix]
  Patching [com.megacrit.cardcrawl.screens.stats.CharStat(com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass)]
    Adding Insert @ r13 (abs:137)...

{
basemod.patches.com.megacrit.cardcrawl.screens.stats.CharStat.StatFixes$ConstructorFix.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.RenderHooks$RenderHook]
  Patching [com.megacrit.cardcrawl.core.CardCrawlGame.render()]
    Adding Insert @ 401...

{
basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.RenderHooks$RenderHook.Insert($0, $$, sb);
}
Patch [basemod.patches.com.megacrit.cardcrawl.screens.options.SettingsScreen.PopupSwitch]
  Patching [com.megacrit.cardcrawl.screens.options.SettingsScreen.popup(com.megacrit.cardcrawl.screens.options.ConfirmPopup$ConfirmType)]
    Adding Insert @ r35 (abs:106)...

{
basemod.patches.com.megacrit.cardcrawl.screens.options.SettingsScreen.PopupSwitch.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.relics.AbstractRelic.InstantObtainRelicGetHook]
  Patching [com.megacrit.cardcrawl.relics.AbstractRelic.instantObtain(com.megacrit.cardcrawl.characters.AbstractPlayer,int,boolean)]
    Adding Insert @ r2 (abs:244)...

{
basemod.patches.com.megacrit.cardcrawl.relics.AbstractRelic.InstantObtainRelicGetHook.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.CreateCardImageSwitch$FixTexturesAndColors]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.createCardImage()]
    Adding Insert @ r41 (abs:796)...

{
basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.CreateCardImageSwitch$FixTexturesAndColors.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.DamageHooks$CalculateCardDamage]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.calculateCardDamage(com.megacrit.cardcrawl.monsters.AbstractMonster)]
    Adding Insert @ r7 (abs:2878)...

{
float[] __tmp = new float[]{tmp};
basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.DamageHooks$CalculateCardDamage.Insert($0, $$, __tmp);
tmp = __tmp[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.PostInitializeStarterDeckHookSwitch]
  Patching [com.megacrit.cardcrawl.characters.AbstractPlayer.initializeStarterDeck()]
    Adding Insert @ r13 (abs:273)...

{
java.util.ArrayList[] __cards = new java.util.ArrayList[]{cards};
basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.PostInitializeStarterDeckHookSwitch.Insert($0, $$, __cards);
cards = __cards[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.AddSwitch]
  Patching [com.megacrit.cardcrawl.helpers.CardLibrary.add(com.megacrit.cardcrawl.cards.AbstractCard)]
    Adding Insert @ r37 (abs:724)...

{
basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.AddSwitch.Insert($$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderDescriptionEnergy$AlterTmp]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.renderDescription(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Adding Insert @ r31 (abs:1761)...

{
java.lang.String[] __tmp = new java.lang.String[]{tmp};
basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderDescriptionEnergy$AlterTmp.Insert($0, $$, __tmp);
tmp = __tmp[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.ui.panels.PotionPopUp.PrePotionUseHookTargetMode]
  Patching [com.megacrit.cardcrawl.ui.panels.PotionPopUp.updateTargetMode()]
    Adding Insert @ r20 (abs:122)...

{
basemod.patches.com.megacrit.cardcrawl.ui.panels.PotionPopUp.PrePotionUseHookTargetMode.Insert($0, $$, potion);
}
Patch [basemod.patches.com.megacrit.cardcrawl.actions.common.ApplyPowerAction.ApplyPowerActionPostPowerApplyHook]
  Patching [com.megacrit.cardcrawl.actions.common.ApplyPowerAction.update()]
    Adding Insert @ r6 (abs:137)...

{
basemod.patches.com.megacrit.cardcrawl.actions.common.ApplyPowerAction.ApplyPowerActionPostPowerApplyHook.Insert($0, $$, powerToApply, target, source);
}
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderFixSwitches$RenderEnergySwitch]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.renderEnergy(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Adding Insert @ r26 (abs:2420)...

{
basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderFixSwitches$RenderEnergySwitch.Insert($0, $$, drawX, drawY);
}
Patch [basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.InitializeCardPoolsSwitch]
  Patching [com.megacrit.cardcrawl.dungeons.AbstractDungeon.initializeCardPools()]
    Adding Insert @ 1493...

{
basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.InitializeCardPoolsSwitch.Insert($0, $$, tmpPool);
}
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.GetCardListSwitch]
  Patching [com.megacrit.cardcrawl.helpers.CardLibrary.getCardList(com.megacrit.cardcrawl.helpers.CardLibrary$LibraryType)]
    Adding Insert @ r45 (abs:1001)...

{
basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.GetCardListSwitch.Insert($$, retVal);
}
Patch [basemod.patches.com.megacrit.cardcrawl.cards.CardGroup.MoveToExhaustPileHook]
  Patching [com.megacrit.cardcrawl.cards.CardGroup.moveToExhaustPile(com.megacrit.cardcrawl.cards.AbstractCard)]
    Adding Insert @ r6 (abs:793)...

{
basemod.patches.com.megacrit.cardcrawl.cards.CardGroup.MoveToExhaustPileHook.Insert($0, $$);
}
Patch [basemod.patches.com.megacrit.cardcrawl.screens.stats.CharStat.StatFixes$CardCountFixes]
  Patching [com.megacrit.cardcrawl.screens.stats.CharStat(com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass)]
    Adding Insert @ r42 (abs:166)...

{
basemod.patches.com.megacrit.cardcrawl.screens.stats.CharStat.StatFixes$CardCountFixes.Insert($0, $$);
}
Patch [com.evacipated.cardcrawl.modthespire.patches.modsscreen.SaveBaseModBadges]
  Patching [basemod.BaseMod.registerModBadge(com.badlogic.gdx.graphics.Texture,java.lang.String,java.lang.String,java.lang.String,basemod.ModPanel)]
    Adding Instrument...
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.CreateCardImageSwitch$FixLogOutput]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.createCardImage()]
    Adding Instrument...
Patch [basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.FixLogging$FixRenderLog]
  Patching [com.megacrit.cardcrawl.dungeons.AbstractDungeon.render(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Adding Instrument...
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.TipHelper.RenderBoxEnergy]
  Patching [com.megacrit.cardcrawl.helpers.TipHelper.renderBox(com.badlogic.gdx.graphics.g2d.SpriteBatch,java.lang.String,float,float)]
    Adding Instrument...
Patch [basemod.patches.com.megacrit.cardcrawl.ui.campfire.AbstractCampfireOption.PostCampfireHook]
  Patching [com.megacrit.cardcrawl.ui.campfire.AbstractCampfireOption.update()]
    Adding Instrument...
Patch [basemod.patches.com.megacrit.cardcrawl.powers.IntangiblePower.FixPlayerIntangiblePower]
  Patching [com.megacrit.cardcrawl.powers.IntangiblePower.atEndOfTurn(boolean)]
    Adding Instrument...
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.RelicLibrary.GetRelicFix]
  Patching [com.megacrit.cardcrawl.helpers.RelicLibrary.getRelic(java.lang.String)]
    Adding Instrument...
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.InputAction.ConsoleDisable$IsJustPressedFix]
  Patching [com.megacrit.cardcrawl.helpers.InputAction.isJustPressed()]
    Adding Instrument...
Patch [basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.FixLogging$FixUpdateLog]
  Patching [com.megacrit.cardcrawl.dungeons.AbstractDungeon.update()]
    Adding Instrument...
Patch [basemod.patches.com.megacrit.cardcrawl.map.MapGenerator.PathDensityMultiplier]
  Patching [com.megacrit.cardcrawl.map.MapGenerator.generateDungeon(int,int,int,com.megacrit.cardcrawl.random.Random)]
    Adding Instrument...
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.FixLogging$FixDescriptionLog]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.initializeDescription()]
    Adding Instrument...
Patch [basemod.patches.com.megacrit.cardcrawl.ui.buttons.CancelButton.ModSettingsCheck]
  Patching [com.megacrit.cardcrawl.ui.buttons.CancelButton.update()]
    Adding Instrument...
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.InputAction.ConsoleDisable$IsPressedFix]
  Patching [com.megacrit.cardcrawl.helpers.InputAction.isPressed()]
    Adding Instrument...
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.FixLogging$FixDescriptionCNLog]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.initializeDescriptionCN()]
    Adding Instrument...
Patch [basemod.patches.com.megacrit.cardcrawl.actions.GameActionManager.PreMonsterTurnHook]
  Patching [com.megacrit.cardcrawl.actions.GameActionManager.getNextAction()]
    Adding Instrument...
Patch [constructmod.patches.CardLibraryPatch]
  Patching [com.megacrit.cardcrawl.helpers.CardLibrary.getCopy(java.lang.String,int,int)]
    Replacing...
Patch [basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.AddCustomCharacters]
  Patching [com.megacrit.cardcrawl.screens.stats.StatsScreen.refreshData()]
    Replacing...
Patch [basemod.patches.com.megacrit.cardcrawl.screens.SingleCardViewPopup.BackgroundFix$BannerTexture]
  Patching [com.megacrit.cardcrawl.screens.SingleCardViewPopup.renderCardBanner(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Replacing...
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderFixSwitches$RenderBannerSwitch]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.renderBannerImage(com.badlogic.gdx.graphics.g2d.SpriteBatch,float,float)]
    Replacing...
Patch [basemod.patches.com.megacrit.cardcrawl.screens.charSelect.CharacterSelectScreen.ButtonPositionFix]
  Patching [com.megacrit.cardcrawl.screens.charSelect.CharacterSelectScreen.positionButtons()]
    Replacing...
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.GetCardModID$GetCardPatch1]
  Patching [com.megacrit.cardcrawl.helpers.CardLibrary.getCard(java.lang.String)]
    Adding Prefix...
{
java.lang.String[] __param0 = new java.lang.String[]{$1};
basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.GetCardModID$GetCardPatch1.Prefix(__param0);
$1 = (java.lang.String)__param0[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.GetCardModID$GetCardPatch2]
  Patching [com.megacrit.cardcrawl.helpers.CardLibrary.getCard(com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass,java.lang.String)]
    Adding Prefix...
{
java.lang.String[] __param1 = new java.lang.String[]{$2};
basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.GetCardModID$GetCardPatch2.Prefix($1, __param1);
$2 = (java.lang.String)__param1[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.localization.LocalizedStrings.GetCardStringsModID]
  Patching [com.megacrit.cardcrawl.localization.LocalizedStrings.getCardStrings(java.lang.String)]
    Adding Prefix...
{
java.lang.String[] __param1 = new java.lang.String[]{$1};
basemod.patches.com.megacrit.cardcrawl.localization.LocalizedStrings.GetCardStringsModID.Prefix($0, __param1);
$1 = (java.lang.String)__param1[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.ui.panels.EnergyPanel.RenderOrbSwitch]
  Patching [com.megacrit.cardcrawl.ui.panels.EnergyPanel.render(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Adding Prefix...
{
basemod.patches.com.megacrit.cardcrawl.ui.panels.EnergyPanel.RenderOrbSwitch.Prefix($0, $1);
}
Patch [basemod.patches.com.megacrit.cardcrawl.screens.CharSelectInfo.RelicIDModID]
  Patching [com.megacrit.cardcrawl.screens.CharSelectInfo(java.lang.String,java.lang.String,int,int,int,int,int,com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass,java.util.ArrayList,java.util.ArrayList,boolean)]
    Adding Prefix...
{
basemod.patches.com.megacrit.cardcrawl.screens.CharSelectInfo.RelicIDModID.Prefix($0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11);
}
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.RelicLibrary.GetRelicFix]
  Patching [com.megacrit.cardcrawl.helpers.RelicLibrary.getRelic(java.lang.String)]
    Adding Prefix...
{
java.lang.String[] __param0 = new java.lang.String[]{$1};
basemod.patches.com.megacrit.cardcrawl.helpers.RelicLibrary.GetRelicFix.Prefix(__param0);
$1 = (java.lang.String)__param0[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.CardIDModID]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard(java.lang.String,java.lang.String,java.lang.String,java.lang.String,int,java.lang.String,com.megacrit.cardcrawl.cards.AbstractCard$CardType,com.megacrit.cardcrawl.cards.AbstractCard$CardColor,com.megacrit.cardcrawl.cards.AbstractCard$CardRarity,com.megacrit.cardcrawl.cards.AbstractCard$CardTarget,com.megacrit.cardcrawl.cards.DamageInfo$DamageType)]
    Adding Prefix...
{
java.lang.String[] __param1 = new java.lang.String[]{$1};
basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.CardIDModID.Prefix($0, __param1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11);
$1 = (java.lang.String)__param1[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.relics.AbstractRelic.RelicIDModID]
  Patching [com.megacrit.cardcrawl.relics.AbstractRelic(java.lang.String,java.lang.String,com.megacrit.cardcrawl.relics.AbstractRelic$RelicTier,com.megacrit.cardcrawl.relics.AbstractRelic$LandingSound)]
    Adding Prefix...
{
java.lang.String[] __param1 = new java.lang.String[]{$1};
basemod.patches.com.megacrit.cardcrawl.relics.AbstractRelic.RelicIDModID.Prefix($0, __param1, $2, $3, $4);
$1 = (java.lang.String)__param1[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.UseCardModalComplete]
  Patching [com.megacrit.cardcrawl.characters.AbstractPlayer.useCard(com.megacrit.cardcrawl.cards.AbstractCard,com.megacrit.cardcrawl.monsters.AbstractMonster,int)]
    Adding Prefix...
{
basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.UseCardModalComplete.Prefix($0, $1, $2, $3);
}
Patch [basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.RenderHooks$PreRenderHook]
  Patching [com.megacrit.cardcrawl.core.CardCrawlGame.render()]
    Adding Prefix...
{
basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.RenderHooks$PreRenderHook.Prefix($0);
}
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.EditCardsPatch]
  Patching [com.megacrit.cardcrawl.helpers.CardLibrary.initialize()]
    Adding Prefix...
{
basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.EditCardsPatch.Prefix();
}
Patch [basemod.patches.com.megacrit.cardcrawl.ui.panels.EnergyPanel.OrbVfxSwitch]
  Patching [com.megacrit.cardcrawl.ui.panels.EnergyPanel.renderVfx(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Adding Prefix...
{
basemod.patches.com.megacrit.cardcrawl.ui.panels.EnergyPanel.OrbVfxSwitch.Prefix($0, $1);
}
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.RelicLibrary.EditRelicsPatch]
  Patching [com.megacrit.cardcrawl.helpers.RelicLibrary.initialize()]
    Adding Prefix...
{
basemod.patches.com.megacrit.cardcrawl.helpers.RelicLibrary.EditRelicsPatch.Prefix();
}
Patch [basemod.patches.com.megacrit.cardcrawl.unlock.UnlockTracker.UnlockCardModID]
  Patching [com.megacrit.cardcrawl.unlock.UnlockTracker.unlockCard(java.lang.String)]
    Adding Prefix...
{
java.lang.String[] __param0 = new java.lang.String[]{$1};
basemod.patches.com.megacrit.cardcrawl.unlock.UnlockTracker.UnlockCardModID.Prefix(__param0);
$1 = (java.lang.String)__param0[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.HasRelicModID]
  Patching [com.megacrit.cardcrawl.characters.AbstractPlayer.hasRelic(java.lang.String)]
    Adding Prefix...
{
java.lang.String[] __param1 = new java.lang.String[]{$1};
basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.HasRelicModID.Prefix($0, __param1);
$1 = (java.lang.String)__param1[0];
}
Patch [basemod.patches.com.megacrit.cardcrawl.screens.SingleCardViewPopup.BackgroundFix$BackgroundTexture]
  Patching [com.megacrit.cardcrawl.screens.SingleCardViewPopup.renderCardBack(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Adding Prefix...
{
basemod.patches.com.megacrit.cardcrawl.screens.SingleCardViewPopup.BackgroundFix$BackgroundTexture.Prefix($0, $1);
}
Patch [basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.CreateCharacterSwitch]
  Patching [com.megacrit.cardcrawl.core.CardCrawlGame.createCharacter(com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass)]
    Adding Prefix...
{
basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.CreateCharacterSwitch.Prefix($1);
}
Patch [basemod.patches.com.megacrit.cardcrawl.screens.SingleCardViewPopup.OpenFix$Open]
  Patching [com.megacrit.cardcrawl.screens.SingleCardViewPopup.open(com.megacrit.cardcrawl.cards.AbstractCard,com.megacrit.cardcrawl.cards.CardGroup)]
    Adding Prefix...
{
java.lang.Object[] __param2 = new java.lang.Object[]{$2};
basemod.patches.com.megacrit.cardcrawl.screens.SingleCardViewPopup.OpenFix$Open.Prefix($0, $1, __param2);
$2 = (com.megacrit.cardcrawl.cards.CardGroup)__param2[0];
}
Patch [com.evacipated.cardcrawl.modthespire.patches.modsscreen.BaseMod.DisableBaseModBadges]
  Patching [basemod.BaseMod.publishPostInitialize()]
    Adding Postfix...
      com.evacipated.cardcrawl.modthespire.patches.modsscreen.BaseMod.DisableBaseModBadges.Postfix($$);
Patch [com.evacipated.cardcrawl.modthespire.patches.MainMenuModList]
  Patching [com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen.render(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Adding Postfix...
      com.evacipated.cardcrawl.modthespire.patches.MainMenuModList.Postfix($0, $$);
Patch [com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModsScreenUpdateRender$Render]
  Patching [com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen.render(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Adding Postfix...
      com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModsScreenUpdateRender$Render.Postfix($0, $$);
Patch [com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModMenuButton$SetLabel]
  Patching [com.megacrit.cardcrawl.screens.mainMenu.MenuButton.setLabel()]
    Adding Postfix...
      com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModMenuButton$SetLabel.Postfix($0, $$);
Patch [com.evacipated.cardcrawl.modthespire.patches.TopPanelModList]
  Patching [com.megacrit.cardcrawl.ui.panels.TopPanel.updateTips()]
    Adding Postfix...
      com.evacipated.cardcrawl.modthespire.patches.TopPanelModList.Postfix($0, $$);
Patch [com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModsScreenUpdateRender$Update]
  Patching [com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen.update()]
    Adding Postfix...
      com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModsScreenUpdateRender$Update.Postfix($0, $$);
Patch [com.evacipated.cardcrawl.modthespire.patches.CreditsModList]
  Patching [com.megacrit.cardcrawl.credits.CreditsScreen()]
    Adding Postfix...
      com.evacipated.cardcrawl.modthespire.patches.CreditsModList.Postfix($0, $$);
Patch [com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModMenuButton$ButtonEffect]
  Patching [com.megacrit.cardcrawl.screens.mainMenu.MenuButton.buttonEffect()]
    Adding Postfix...
      com.evacipated.cardcrawl.modthespire.patches.modsscreen.ModMenuButton$ButtonEffect.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.FontHelper.IdentifyOrb]
  Patching [com.megacrit.cardcrawl.helpers.FontHelper.identifyOrb(java.lang.String)]
    Adding Postfix...
      Return: com.badlogic.gdx.graphics.g2d.TextureAtlas$AtlasRegion
      Result param: com.badlogic.gdx.graphics.g2d.TextureAtlas$AtlasRegion
      return ($r)basemod.patches.com.megacrit.cardcrawl.helpers.FontHelper.IdentifyOrb.Postfix($_, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.PostInitializeHook]
  Patching [com.megacrit.cardcrawl.core.CardCrawlGame.create()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.core.CardCrawlGame.PostInitializeHook.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.SingleCardViewPopup.OpenFix$OpenTextureFix]
  Patching [com.megacrit.cardcrawl.screens.SingleCardViewPopup.open(com.megacrit.cardcrawl.cards.AbstractCard,com.megacrit.cardcrawl.cards.CardGroup)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.SingleCardViewPopup.OpenFix$OpenTextureFix.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.unlock.UnlockTracker.GetUnlockBundleSwitch]
  Patching [com.megacrit.cardcrawl.unlock.UnlockTracker.getUnlockBundle(com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass,int)]
    Adding Postfix...
      Return: java.util.ArrayList
      Result param: java.util.ArrayList
      return ($r)basemod.patches.com.megacrit.cardcrawl.unlock.UnlockTracker.GetUnlockBundleSwitch.Postfix($_, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.PotionGetHooks$One]
  Patching [com.megacrit.cardcrawl.characters.AbstractPlayer.obtainPotion(int,com.megacrit.cardcrawl.potions.AbstractPotion)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.PotionGetHooks$One.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.ActChangeHooks$SavedGameConstructor]
  Patching [com.megacrit.cardcrawl.dungeons.AbstractDungeon(java.lang.String,com.megacrit.cardcrawl.characters.AbstractPlayer,com.megacrit.cardcrawl.saveAndContinue.SaveFile)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.ActChangeHooks$SavedGameConstructor.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.TipHelper.FakeKeywords]
  Patching [com.megacrit.cardcrawl.helpers.TipHelper.renderKeywords(float,float,com.badlogic.gdx.graphics.g2d.SpriteBatch,java.util.ArrayList)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.helpers.TipHelper.FakeKeywords.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.shop.ShopScreen.PostCreateShopPotionHook]
  Patching [com.megacrit.cardcrawl.shop.ShopScreen.initPotions()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.shop.ShopScreen.PostCreateShopPotionHook.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.DeathScreen.NotFoundFix]
  Patching [com.megacrit.cardcrawl.screens.DeathScreen.calculateUnlockProgress()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.DeathScreen.NotFoundFix.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$Render]
  Patching [com.megacrit.cardcrawl.screens.stats.StatsScreen.renderStatScreen(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$Render.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.vfx.CardTrailEffect.CtorSwitch]
  Patching [com.megacrit.cardcrawl.vfx.CardTrailEffect(float,float)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.vfx.CardTrailEffect.CtorSwitch.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.DeathScreen.ForceUnlock]
  Patching [com.megacrit.cardcrawl.screens.DeathScreen.calculateUnlockProgress()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.DeathScreen.ForceUnlock.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.GreenCardsPatch]
  Patching [com.megacrit.cardcrawl.helpers.CardLibrary.addGreenCards()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.GreenCardsPatch.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.RelicLibrary.PopulatePools]
  Patching [com.megacrit.cardcrawl.helpers.RelicLibrary.populateRelicPool(java.util.ArrayList,com.megacrit.cardcrawl.relics.AbstractRelic$RelicTier,com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.helpers.RelicLibrary.PopulatePools.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$Death]
  Patching [com.megacrit.cardcrawl.screens.stats.StatsScreen.incrementDeath(com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$Death.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.RelicLibrary.PopulateLists]
  Patching [com.megacrit.cardcrawl.helpers.RelicLibrary.addClassSpecificRelics(java.util.ArrayList)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.helpers.RelicLibrary.PopulateLists.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.runHistory.RunHistoryScreen.FixCharacterFilter$CharacterText]
  Patching [com.megacrit.cardcrawl.screens.runHistory.RunHistoryScreen.characterText(java.lang.String)]
    Adding Postfix...
      Return: java.lang.String
      Result param: java.lang.String
      return ($r)basemod.patches.com.megacrit.cardcrawl.screens.runHistory.RunHistoryScreen.FixCharacterFilter$CharacterText.Postfix($_, $0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$HighestDailyScore]
  Patching [com.megacrit.cardcrawl.screens.stats.StatsScreen.updateHighestDailyScore(int)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$HighestDailyScore.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.potions.Color.AbstractPotionInitializeColor]
  Patching [com.megacrit.cardcrawl.potions.AbstractPotion.initializeColor()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.potions.Color.AbstractPotionInitializeColor.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.shop.ShopScreen.PostCreateShopRelicHook]
  Patching [com.megacrit.cardcrawl.shop.ShopScreen.initRelics()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.shop.ShopScreen.PostCreateShopRelicHook.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.RedCardsPatch]
  Patching [com.megacrit.cardcrawl.helpers.CardLibrary.addRedCards()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.RedCardsPatch.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$FurthestAscent]
  Patching [com.megacrit.cardcrawl.screens.stats.StatsScreen.updateFurthestAscent(int)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$FurthestAscent.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$VictoryTime]
  Patching [com.megacrit.cardcrawl.screens.stats.StatsScreen.updateVictoryTime(long)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$VictoryTime.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.ColorlessCardsPatch]
  Patching [com.megacrit.cardcrawl.helpers.CardLibrary.addColorlessCards()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.ColorlessCardsPatch.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.rooms.AbstractRoom.EndBattleHook]
  Patching [com.megacrit.cardcrawl.rooms.AbstractRoom.endBattle()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.rooms.AbstractRoom.EndBattleHook.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderDescriptionEnergy$AlterEnergyKeyword]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.initializeDescription()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderDescriptionEnergy$AlterEnergyKeyword.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderFixSwitches$RenderAttackBgSwitch]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.renderAttackBg(com.badlogic.gdx.graphics.g2d.SpriteBatch,float,float)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderFixSwitches$RenderAttackBgSwitch.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$Victory]
  Patching [com.megacrit.cardcrawl.screens.stats.StatsScreen.incrementVictory(com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$Victory.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar.ColorTabBarFix$Update]
  Patching [com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar.update(float)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar.ColorTabBarFix$Update.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.CardLibraryScreen.EverythingFix$setLockStatus]
  Patching [com.megacrit.cardcrawl.screens.mainMenu.CardLibraryScreen.setLockStatus()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.CardLibraryScreen.EverythingFix$setLockStatus.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar.ColorTabBarFix$Ctor]
  Patching [com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar(com.megacrit.cardcrawl.screens.mainMenu.TabBarListener)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar.ColorTabBarFix$Ctor.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.ActChangeHooks$InGameConstructor]
  Patching [com.megacrit.cardcrawl.dungeons.AbstractDungeon(java.lang.String,java.lang.String,com.megacrit.cardcrawl.characters.AbstractPlayer,java.util.ArrayList)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.ActChangeHooks$InGameConstructor.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.ui.panels.EnergyPanel.CtorSwitch]
  Patching [com.megacrit.cardcrawl.ui.panels.EnergyPanel()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.ui.panels.EnergyPanel.CtorSwitch.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.unlock.UnlockTracker.PostRefresh]
  Patching [com.megacrit.cardcrawl.unlock.UnlockTracker.refresh()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.unlock.UnlockTracker.PostRefresh.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.PotionLibrary.PotionHelperInitialize]
  Patching [com.megacrit.cardcrawl.helpers.PotionHelper.initialize(com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.helpers.PotionLibrary.PotionHelperInitialize.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.PostDungeonInitializeHook]
  Patching [com.megacrit.cardcrawl.dungeons.AbstractDungeon.initializeRelicList()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.PostDungeonInitializeHook.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.rooms.CampfireUI.GiryaFix]
  Patching [com.megacrit.cardcrawl.rooms.CampfireUI.initializeButtons()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.rooms.CampfireUI.GiryaFix.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$EnemySlain]
  Patching [com.megacrit.cardcrawl.screens.stats.StatsScreen.incrementEnemySlain()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$EnemySlain.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderFixSwitches$RenderPowerBgSwitch]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.renderPowerBg(com.badlogic.gdx.graphics.g2d.SpriteBatch,float,float)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderFixSwitches$RenderPowerBgSwitch.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.CurseCardsPatch]
  Patching [com.megacrit.cardcrawl.helpers.CardLibrary.addCurseCards()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.helpers.CardLibrary.CurseCardsPatch.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$BossSlain]
  Patching [com.megacrit.cardcrawl.screens.stats.StatsScreen.incrementBossSlain()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$BossSlain.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$FloorClimbed]
  Patching [com.megacrit.cardcrawl.screens.stats.StatsScreen.incrementFloorClimbed()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$FloorClimbed.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.PotionLibrary.PotionHelperGetPotion]
  Patching [com.megacrit.cardcrawl.helpers.PotionHelper.getPotion(java.lang.String)]
    Adding Postfix...
      Return: java.lang.Object
      Result param: java.lang.Object
      return ($r)basemod.patches.com.megacrit.cardcrawl.helpers.PotionLibrary.PotionHelperGetPotion.Postfix($_, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.PotionGetHooks$Two]
  Patching [com.megacrit.cardcrawl.characters.AbstractPlayer.obtainPotion(com.megacrit.cardcrawl.potions.AbstractPotion)]
    Adding Postfix...
      Return: boolean
      Result param: boolean
      return ($r)basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.PotionGetHooks$Two.Postfix($_, $0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderFixSwitches$RenderSkillBgSwitch]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.renderSkillBg(com.badlogic.gdx.graphics.g2d.SpriteBatch,float,float)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderFixSwitches$RenderSkillBgSwitch.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.GetTitleSwitch]
  Patching [com.megacrit.cardcrawl.characters.AbstractPlayer.getTitle(com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass)]
    Adding Postfix...
      Return: java.lang.Object
      Result param: java.lang.Object
      return ($r)basemod.patches.com.megacrit.cardcrawl.characters.AbstractPlayer.GetTitleSwitch.Postfix($_, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.runHistory.RunHistoryScreen.FixCharacterFilter$RefreshData]
  Patching [com.megacrit.cardcrawl.screens.runHistory.RunHistoryScreen.refreshData()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.runHistory.RunHistoryScreen.FixCharacterFilter$RefreshData.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$HighestScore]
  Patching [com.megacrit.cardcrawl.screens.stats.StatsScreen.updateHighestScore(int)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$HighestScore.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.ModalChoiceScreenUpdateRender$OpenPreviousScreen]
  Patching [com.megacrit.cardcrawl.dungeons.AbstractDungeon.openPreviousScreen(com.megacrit.cardcrawl.dungeons.AbstractDungeon$CurrentScreen)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.ModalChoiceScreenUpdateRender$OpenPreviousScreen.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$PlayTime]
  Patching [com.megacrit.cardcrawl.screens.stats.StatsScreen.incrementPlayTime(long)]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$PlayTime.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.helpers.GameDictionary.PostKeywordInitialize]
  Patching [com.megacrit.cardcrawl.helpers.GameDictionary.initialize()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.helpers.GameDictionary.PostKeywordInitialize.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.MenuButton.ResumeGameSwitch]
  Patching [com.megacrit.cardcrawl.screens.mainMenu.MenuButton.resumeGame()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.MenuButton.ResumeGameSwitch.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar.ColorTabBarFix$GetBarColor]
  Patching [com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar.getBarColor()]
    Adding Postfix...
      Return: com.badlogic.gdx.graphics.Color
      Result param: com.badlogic.gdx.graphics.Color
      return ($r)basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar.ColorTabBarFix$GetBarColor.Postfix($_, $0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.options.OptionsPanel.RefreshSwitch]
  Patching [com.megacrit.cardcrawl.screens.options.OptionsPanel.refresh()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.options.OptionsPanel.RefreshSwitch.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.localization.LocalizedStrings.EditStrings]
  Patching [com.megacrit.cardcrawl.localization.LocalizedStrings()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.localization.LocalizedStrings.EditStrings.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen.SetButtonsSwitch]
  Patching [com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen.setMainMenuButtons()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen.SetButtonsSwitch.Postfix($0, $$);
Patch [basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.PowersModified]
  Patching [com.megacrit.cardcrawl.dungeons.AbstractDungeon.onModifyPower()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.dungeons.AbstractDungeon.PowersModified.Postfix($$);
Patch [basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$ScrollBounds]
  Patching [com.megacrit.cardcrawl.screens.stats.StatsScreen.calculateScrollBounds()]
    Adding Postfix...
      basemod.patches.com.megacrit.cardcrawl.screens.stats.StatsScreen.UpdateStats$ScrollBounds.Postfix($0, $$);
Patch [com.evacipated.cardcrawl.modthespire.patches.modsscreen.BaseMod.ModBadgeOnClick]
  Patching [basemod.ModBadge.onClick()]
    Raw Javassist...
Patch [basemod.patches.com.megacrit.cardcrawl.cards.AbstractCard.RenderCustomDynamicVariable]
  Patching [com.megacrit.cardcrawl.cards.AbstractCard.renderDescription(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Raw Javassist...
Patch [basemod.patches.com.megacrit.cardcrawl.screens.SingleCardViewPopup.RenderCustomDynamicVariable]
  Patching [com.megacrit.cardcrawl.screens.SingleCardViewPopup.renderDescription(com.badlogic.gdx.graphics.g2d.SpriteBatch)]
    Raw Javassist...
Done.
Compiling patched classes...
  basemod.BaseMod
  basemod.ModBadge
  com.badlogic.gdx.backends.lwjgl.LwjglApplication
  com.megacrit.cardcrawl.actions.GameActionManager
  com.megacrit.cardcrawl.cards.AbstractCard
  com.megacrit.cardcrawl.cards.CardGroup
  com.megacrit.cardcrawl.core.CardCrawlGame
  com.megacrit.cardcrawl.core.EnergyManager
  com.megacrit.cardcrawl.credits.CreditsScreen
  com.megacrit.cardcrawl.dungeons.AbstractDungeon
  com.megacrit.cardcrawl.helpers.CardLibrary
  com.megacrit.cardcrawl.helpers.FontHelper
  com.megacrit.cardcrawl.helpers.GameDictionary
  com.megacrit.cardcrawl.helpers.InputAction
  com.megacrit.cardcrawl.helpers.PotionHelper
  com.megacrit.cardcrawl.helpers.RelicLibrary
  com.megacrit.cardcrawl.helpers.TipHelper
  com.megacrit.cardcrawl.localization.LocalizedStrings
  com.megacrit.cardcrawl.map.MapGenerator
  com.megacrit.cardcrawl.potions.AbstractPotion
  com.megacrit.cardcrawl.relics.AbstractRelic
  com.megacrit.cardcrawl.rooms.AbstractRoom
  com.megacrit.cardcrawl.rooms.CampfireUI
  com.megacrit.cardcrawl.screens.CharSelectInfo
  com.megacrit.cardcrawl.screens.DeathScreen
  com.megacrit.cardcrawl.screens.SingleCardViewPopup
  com.megacrit.cardcrawl.screens.charSelect.CharacterOption
  com.megacrit.cardcrawl.screens.charSelect.CharacterSelectScreen
  com.megacrit.cardcrawl.screens.mainMenu.CardLibraryScreen
  com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar
  com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen
  com.megacrit.cardcrawl.screens.mainMenu.MenuButton
  com.megacrit.cardcrawl.screens.options.OptionsPanel
  com.megacrit.cardcrawl.screens.options.SettingsScreen
  com.megacrit.cardcrawl.screens.runHistory.RunHistoryScreen
  com.megacrit.cardcrawl.screens.stats.CharStat
  com.megacrit.cardcrawl.screens.stats.StatsScreen
  com.megacrit.cardcrawl.shop.ShopScreen
  com.megacrit.cardcrawl.ui.buttons.CancelButton
  com.megacrit.cardcrawl.ui.campfire.AbstractCampfireOption
  com.megacrit.cardcrawl.ui.panels.PotionPopUp
  com.megacrit.cardcrawl.ui.panels.TopPanel
  com.megacrit.cardcrawl.unlock.UnlockTracker
  com.megacrit.cardcrawl.actions.common.ApplyPowerAction
  com.megacrit.cardcrawl.actions.utility.UseCardAction
  com.megacrit.cardcrawl.characters.AbstractPlayer
  com.megacrit.cardcrawl.powers.IntangiblePower
  com.megacrit.cardcrawl.relics.PandorasBox
  com.megacrit.cardcrawl.ui.panels.EnergyPanel
  com.megacrit.cardcrawl.vfx.CardTrailEffect
  com.megacrit.cardcrawl.events.shrines.GremlinMatchGame
  com.megacrit.cardcrawl.events.thecity.BackToBasics
  com.megacrit.cardcrawl.events.thecity.KnowingSkull
  com.megacrit.cardcrawl.events.thecity.Vampires
Done.
Patching enums...
com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen$CurScreen
  com.megacrit.cardcrawl.screens.mainMenu.MainMenuScreen$1
1 switch statement(s)

com.megacrit.cardcrawl.screens.mainMenu.MenuButton$ClickResult
  com.megacrit.cardcrawl.screens.mainMenu.MenuButton$1
1 switch statement(s)

com.megacrit.cardcrawl.characters.AbstractPlayer$PlayerClass
  com.megacrit.cardcrawl.cards.AbstractCard$1
  com.megacrit.cardcrawl.characters.AbstractPlayer$1
  com.megacrit.cardcrawl.core.CardCrawlGame$1
  com.megacrit.cardcrawl.daily.DailyScreen$1
  com.megacrit.cardcrawl.dungeons.AbstractDungeon$1
  com.megacrit.cardcrawl.events.shrines.GremlinMatchGame$1
  com.megacrit.cardcrawl.events.thebeyond.SpireHeart$1
  com.megacrit.cardcrawl.events.thecity.KnowingSkull$1
  com.megacrit.cardcrawl.events.thecity.Vampires$1
  com.megacrit.cardcrawl.helpers.CardLibrary$1
  com.megacrit.cardcrawl.helpers.PotionHelper$1
  com.megacrit.cardcrawl.helpers.RelicLibrary$1
  com.megacrit.cardcrawl.relics.AncientTeaSet$1
  com.megacrit.cardcrawl.relics.ArtOfWar$1
  com.megacrit.cardcrawl.relics.CursedKey$1
  com.megacrit.cardcrawl.relics.Ectoplasm$1
  com.megacrit.cardcrawl.relics.GremlinHorn$1
  com.megacrit.cardcrawl.relics.HappyFlower$1
  com.megacrit.cardcrawl.relics.Lantern$1
  com.megacrit.cardcrawl.relics.PhilosopherStone$1
  com.megacrit.cardcrawl.relics.RunicDome$1
  com.megacrit.cardcrawl.relics.Sozu$1
  com.megacrit.cardcrawl.relics.Sundial$1
  com.megacrit.cardcrawl.relics.Test1$1
  com.megacrit.cardcrawl.relics.VelvetChoker$1
  com.megacrit.cardcrawl.saveAndContinue.SaveAndContinue$1
  com.megacrit.cardcrawl.screens.CharSelectInfo$1
  com.megacrit.cardcrawl.screens.DeathScreen$1
  com.megacrit.cardcrawl.screens.charSelect.CharacterOption$1
  com.megacrit.cardcrawl.screens.leaderboards.FilterButton$1
  com.megacrit.cardcrawl.screens.options.OptionsPanel$1
  com.megacrit.cardcrawl.screens.options.SettingsScreen$1
  com.megacrit.cardcrawl.screens.runHistory.RunHistoryScreen$1
  com.megacrit.cardcrawl.screens.stats.CharStat$1
  com.megacrit.cardcrawl.screens.stats.StatsScreen$1
  com.megacrit.cardcrawl.steam.SteamSaveSync$1
  com.megacrit.cardcrawl.ui.panels.EnergyPanel$1
  com.megacrit.cardcrawl.unlock.UnlockTracker$1
  com.megacrit.cardcrawl.vfx.CardTrailEffect$1
39 switch statement(s)

com.megacrit.cardcrawl.dungeons.AbstractDungeon$CurrentScreen
  com.megacrit.cardcrawl.dungeons.AbstractDungeon$1
1 switch statement(s)

com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar$CurrentTab
  com.megacrit.cardcrawl.screens.mainMenu.CardLibraryScreen$1
  com.megacrit.cardcrawl.screens.mainMenu.ColorTabBar$1
2 switch statement(s)

com.megacrit.cardcrawl.cards.AbstractCard$CardColor
  com.megacrit.cardcrawl.cards.AbstractCard$1
  com.megacrit.cardcrawl.dungeons.AbstractDungeon$1
  com.megacrit.cardcrawl.helpers.CardLibrary$1
  com.megacrit.cardcrawl.screens.SingleCardViewPopup$1
  com.megacrit.cardcrawl.screens.runHistory.TinyCard$1
5 switch statement(s)

com.megacrit.cardcrawl.helpers.CardLibrary$LibraryType
  com.megacrit.cardcrawl.helpers.CardLibrary$1
1 switch statement(s)
Done.
Setting isModded = true...Done.
Adding ModTheSpire to version...Done.
Initializing mods...
java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.evacipated.cardcrawl.modthespire.Patcher.initializeMods(Patcher.java:34)
	at com.evacipated.cardcrawl.modthespire.Loader.runMods(Loader.java:217)
	at com.evacipated.cardcrawl.modthespire.ModSelectWindow.lambda$null$1(ModSelectWindow.java:189)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NullPointerException
	at basemod.BaseMod.subscribeIfInstance(BaseMod.java:2136)
	at basemod.BaseMod.subscribe(BaseMod.java:2159)
	at constructmod.ConstructMod.<init>(ConstructMod.java:65)
	at constructmod.ConstructMod.initialize(ConstructMod.java:81)
	... 8 more

need a new version of mod the spire.

ever since the latest update on slay the spire, mod the spire has not been working for me, even though i have all of the same files i had before when it was working perfectly fine, other than updating my base mods, i havent done anything that could have possibly messed it up for me, so i am thinking that we just need a new version of ModTheSpire since the current one im using is the latest one and it is extremely outdated, the last time there was an update to modthespire was march 31st its now may 3rd.

Can Mac use the mod?

Thought You don't mention the mac in the doc.I use it as Linux.
I got it but then get a wrong as
"ERROR: Failed to find Steam installation.
Exception in thread "main" java.lang.NullPointerException
at com.evacipated.cardcrawl.modthespire.SteamSearch.containsAcfFile(SteamSearch.java:94)
at com.evacipated.cardcrawl.modthespire.SteamSearch.prepare(SteamSearch.java:39)
at com.evacipated.cardcrawl.modthespire.SteamSearch.findDesktopJar(SteamSearch.java:19)
at com.evacipated.cardcrawl.modthespire.Loader.main(Loader.java:83)".

If Mac are in plan, please tell me, thanks.

More elaborate explanation for setup / installation

I can not get anything to work with the combined documentation on installation / setup from ModTheSpire or BaseMod. Please provide a more friendly step by step instruction on how to actually start coding.

(I have no experience with maven or modding)

Mod the Spire

It keeps crashing everytime the game open and i dont understand why any help would be appreciated

An issue with the Grinning Jar

The grinning jar, I don't even know which mod got me it, but there's a bit of a bug. I'm at a point where I'm on my 11th card, the one right before you get another one of the skills it provides. I was at a shop, bought a card, and the game shut down.

I thought I'd try to see if it was that card, apparently it wasn't. Because when I got a curse from my curse key, it also shut down. So I think there's a problem with gaining that card from the jar in general. I was able to get the two cards when I picked up the jar. But not after.

This error showed up today when I tried to load up the mod

Java version: 1.8.0_144
Slay the Spire version: 04-26-2018
ModTheSpire version: 2.6.0
Mod list: basemod (2.6.0), NecroMod,
Finding core patches...
Finding patches...
Injecting patches...Done.
Compiling patched classes...Done.
Patching enums...Done.
Setting isModded = true...Done.
Adding ModTheSpire to version...Done.
Initializing mods...
libgdx version 1.9.5
15:23:04.239 INFO basemod.BaseMod> initializeGson
15:23:04.246 INFO basemod.BaseMod> initializeTypeMaps

java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.evacipated.cardcrawl.modthespire.Patcher.initializeMods(Patcher.java:34)
at com.evacipated.cardcrawl.modthespire.Loader.runMods(Loader.java:217)
at com.evacipated.cardcrawl.modthespire.ModSelectWindow.lambda$null$1(ModSelectWindow.java:189)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NoClassDefFoundError: com/megacrit/cardcrawl/powers/DarknessPower
at basemod.BaseMod.initializePowerMap(BaseMod.java:700)
at basemod.BaseMod.initialize(BaseMod.java:475)
... 8 more
Caused by: java.lang.ClassNotFoundException: com.megacrit.cardcrawl.powers.DarknessPower
at com.evacipated.cardcrawl.modthespire.MTSClassLoader.findClass(MTSClassLoader.java:82)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at com.evacipated.cardcrawl.modthespire.MTSClassLoader.loadClass(MTSClassLoader.java:65)
... 10 more

Game does not start

I'm trying to start the game through ModTheSpire, but clicking Play brings up the log window and then does nothing. An example log:

Finding core patches...
Finding patches...
Injecting patches...Done.
Compiling patched classes...Done.
Patching enums...Done.
Setting isModded = true...Done.
Adding ModTheSpire to version...Done.
Initializing mods...
libgdx version 1.9.5
20:41:15.798 INFO basemod.BaseMod> initializeGson
20:41:15.814 INFO basemod.BaseMod> initializeTypeMaps
Done.
Starting game...

But the game never starts, nothing happens after this.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.