Giter Site home page Giter Site logo

exit-confirmation's Introduction

Exit Confirmation

Exit Confirmation mod for Minecraft (NeoForged / Fabric).

Links

Curseforge: https://curseforge.com/minecraft/mc-mods/exit-confirmation
Legacy Curseforge: https://legacy.curseforge.com/minecraft/mc-mods/exit-confirmation
Modrinth: https://modrinth.com/mod/exit-confirmation
Discord: https://discord.gg/dtdc46g6ry

Want to translate?

You can do that at https://crowdin.com/project/ultreon-team

Want to test the mod early?

The latest builds are available at https://app.circleci.com/pipelines/github/Ultreon/exit-confirmation

exit-confirmation's People

Contributors

amirhan-taipovjan-greatest-i avatar felix14-v2 avatar justalittlewolf avatar littlechest avatar xypercode avatar

Stargazers

 avatar  avatar

Watchers

 avatar

exit-confirmation's Issues

Mod doesn't work on my modpack :/

Describe the bug
A clear and concise description of what the bug is.
Basically, the mod doesn't do anything. I just looked at the config in case I missed something but all is set to true so... uh why does it close when I press 'x' on my window, when I press "quit" in main menu... no reaction from the mod like it's being suppressed. Which is likely, given the amount of mods.

To Reproduce
Steps to reproduce the behavior:

  1. Install my Modpack, its name is Royal Equines: Petrified Magic (version 1.1b05)
  2. Add exit confirmation
  3. Launch the game
  4. Click on one exit option
  5. The game closes without a confirmation popping up (tested so far with version 1.1b05 of my pack and by clicking on quit game in the main menu, but the 'x' button should also not show the exit confirmation)

Expected behavior
I click on 'x' or 'quit' and get asked whether that's what I wanted.

Screenshots
If applicable, add screenshots to help explain your problem.
N/A

Please complete the following information:

  • OS: [Windows]
  • Minecraft version [1.18.2]
  • Devices Mod Version: [1.01]

FOR FORGE:

  • Forge version [40.2.9, 40.2.14]

Additional context
Add any other context about the problem here.

I noticed this after editing my pack for the next version, hence... It's a bunch of mods potentially interfering. But even the updated ones I currently am working on don't seem to change that fact. Use this info as a cautious direction. I am a bit behind updating my mods.

Fabric Support

It looks like this mod is forge only?
How difficult is it to port this mod to fabric (and 1.19+)?

I know there are other mods but they have some disadvantages:

Dirt BG

Add an option to get the dirt BG on the popup

Crash with Minecraft 1.20.1

Info

  • Fabric Loader 0.14.21
  • Minecraft 1.20.1
  • Fabric API 0.84.0
  • Exit Confirmation 2.4.1
  • StackDeobfuscator 1.3.2
  • Better Log4j Config 1.1.0

Logs

latest.log
[01:41:27] [main/INFO]: Loading Minecraft 1.20.1 with Fabric Loader 0.14.21
[01:41:27] [main/WARN]: Warnings were found!
 - Mod 'Exit Confirmation' (exit_confirm) 2.4.1-mc.1.20.1 recommends any version of modmenu, which is missing!
	 - You should install any version of modmenu for the optimal experience.
[01:41:27] [main/INFO]: Loading 57 mods:
	- better_log4j_config 1.1.0
	- exit_confirm 2.4.1-mc.1.20.1
	- fabric-api 0.84.0+1.20.1
	   |-- fabric-api-base 0.4.29+b04edc7a77
	   |-- fabric-api-lookup-api-v1 1.6.34+4d8536c977
	   |-- fabric-biome-api-v1 13.0.10+b3afc78b77
	   |-- fabric-block-api-v1 1.0.9+e022e5d177
	   |-- fabric-blockrenderlayer-v1 1.1.39+b3afc78b77
	   |-- fabric-client-tags-api-v1 1.0.20+b3afc78b77
	   |-- fabric-command-api-v1 1.2.32+f71b366f77
	   |-- fabric-command-api-v2 2.2.11+b3afc78b77
	   |-- fabric-commands-v0 0.2.49+df3654b377
	   |-- fabric-containers-v0 0.1.61+df3654b377
	   |-- fabric-content-registries-v0 4.0.7+b3afc78b77
	   |-- fabric-convention-tags-v1 1.5.3+b3afc78b77
	   |-- fabric-crash-report-info-v1 0.2.18+aeb40ebe77
	   |-- fabric-data-generation-api-v1 12.1.11+b3afc78b77
	   |-- fabric-dimensions-v1 2.1.51+b3afc78b77
	   |-- fabric-entity-events-v1 1.5.21+b3afc78b77
	   |-- fabric-events-interaction-v0 0.6.0+b3afc78b77
	   |-- fabric-events-lifecycle-v0 0.2.61+df3654b377
	   |-- fabric-game-rule-api-v1 1.0.38+b04edc7a77
	   |-- fabric-item-api-v1 2.1.26+b3afc78b77
	   |-- fabric-item-group-api-v1 4.0.7+b3afc78b77
	   |-- fabric-key-binding-api-v1 1.0.36+fb8d95da77
	   |-- fabric-keybindings-v0 0.2.34+df3654b377
	   |-- fabric-lifecycle-events-v1 2.2.20+b3afc78b77
	   |-- fabric-loot-api-v2 1.1.37+b3afc78b77
	   |-- fabric-loot-tables-v1 1.1.41+9e7660c677
	   |-- fabric-message-api-v1 5.1.6+b3afc78b77
	   |-- fabric-mining-level-api-v1 2.1.47+b3afc78b77
	   |-- fabric-models-v0 0.3.35+b3afc78b77
	   |-- fabric-networking-api-v1 1.3.8+b3afc78b77
	   |-- fabric-networking-v0 0.3.48+df3654b377
	   |-- fabric-object-builder-api-v1 11.0.6+b3afc78b77
	   |-- fabric-particles-v1 1.0.28+b3afc78b77
	   |-- fabric-recipe-api-v1 1.0.18+b3afc78b77
	   |-- fabric-registry-sync-v0 2.2.6+b3afc78b77
	   |-- fabric-renderer-api-v1 3.1.0+c154966e77
	   |-- fabric-renderer-indigo 1.4.0+c154966e77
	   |-- fabric-renderer-registries-v1 3.2.44+df3654b377
	   |-- fabric-rendering-data-attachment-v1 0.3.33+b3afc78b77
	   |-- fabric-rendering-fluids-v1 3.0.26+b3afc78b77
	   |-- fabric-rendering-v0 1.1.47+df3654b377
	   |-- fabric-rendering-v1 3.0.6+b3afc78b77
	   |-- fabric-resource-conditions-api-v1 2.3.5+ea08f9d877
	   |-- fabric-resource-loader-v0 0.11.7+f7923f6d77
	   |-- fabric-screen-api-v1 2.0.6+b3afc78b77
	   |-- fabric-screen-handler-api-v1 1.3.27+b3afc78b77
	   |-- fabric-sound-api-v1 1.0.12+b3afc78b77
	   |-- fabric-transfer-api-v1 3.2.2+b3afc78b77
	   \-- fabric-transitive-access-wideners-v1 4.2.0+b3afc78b77
	- fabricloader 0.14.21
	- java 17
	- minecraft 1.20.1
	- stackdeobfuscator 1.3.2+fabric.4bca927
	   \-- net_fabricmc_mapping-io 0.3.0
[01:41:28] [main/INFO]: SpongePowered MIXIN Subsystem Version=0.8.5 Source=file:/C:/Users/%d0%90%d0%bb%d0%b5%d0%ba%d1%81%d0%b0%d0%bd%d0%b4%d1%80/AppData/Roaming/.minecraft/libraries/net/fabricmc/sponge-mixin/0.12.5+mixin.0.8.5/sponge-mixin-0.12.5+mixin.0.8.5.jar Service=Knot/Fabric Env=CLIENT
[01:41:28] [main/INFO]: Compatibility level set to JAVA_17
[01:41:28] [main/WARN]: Reference map 'exit-confirmation-fabric-refmap.json' for exit-confirmation.mixins.json could not be read. If this is a development environment you can ignore this message
[01:41:29] [main/INFO]: Starting Log4j reconfiguration.
[01:41:29] [main/INFO] (Better Log4j Config) Finished Log4j reconfiguration.
[01:41:36] [Datafixer Bootstrap/INFO] (Minecraft) 188 Datafixer optimizations took 186 milliseconds
[01:41:38] [Render thread/ERROR] (FabricLoader/Mixin) Mixin apply for mod exit_confirm failed exit-confirmation.mixins.json:TitleScreenMixin from mod exit_confirm -> net.minecraft.class_442: org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException Critical injection failure: @Inject annotation on exitConfirmation$init could not find any targets matching 'init' in net.minecraft.class_442. No refMap loaded. [PREINJECT Applicator Phase -> exit-confirmation.mixins.json:TitleScreenMixin from mod exit_confirm -> Prepare Injections ->  -> handler$zza000$exit_confirm$exitConfirmation$init(Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V -> Parse]
org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException: Critical injection failure: @Inject annotation on exitConfirmation$init could not find any targets matching 'init' in net.minecraft.class_442. No refMap loaded. [PREINJECT Applicator Phase -> exit-confirmation.mixins.json:TitleScreenMixin from mod exit_confirm -> Prepare Injections ->  -> handler$zza000$exit_confirm$exitConfirmation$init(Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V -> Parse]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.validateTargets(InjectionInfo.java:656) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.findTargets(InjectionInfo.java:587) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.readAnnotation(InjectionInfo.java:330) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.<init>(InjectionInfo.java:316) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.<init>(InjectionInfo.java:308) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.CallbackInjectionInfo.<init>(CallbackInjectionInfo.java:46) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at jdk.internal.reflect.GeneratedConstructorAccessor63.newInstance(Unknown Source) ~[?:?]
	at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]
	at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[?:?]
	at java.lang.reflect.Constructor.newInstance(Constructor.java:480) ~[?:?]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo$InjectorEntry.create(InjectionInfo.java:149) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.parse(InjectionInfo.java:708) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinTargetContext.prepareInjections(MixinTargetContext.java:1329) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.prepareInjections(MixinApplicatorStandard.java:1053) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:395) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:327) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.TargetClassContext.apply(TargetClassContext.java:421) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:403) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:234) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:202) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:422) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.tryLoadClass(KnotClassDelegate.java:323) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.loadClass(KnotClassDelegate.java:218) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:112) ~[fabric-loader-0.14.21.jar:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
	at net.minecraft.client.main.Main.main(Main.java:211) ~[Fabric%201.20.1%20%d0%b4%d0%bb%d1%8f%20%d1%82%d0%b5%d1%81%d1%82%d0%be%d0%b2.jar:?]
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23) ~[fabric-loader-0.14.21.jar:?]
[01:41:39] [Render thread/ERROR] (FabricLoader/Mixin) Mixin apply for mod exit_confirm failed exit-confirmation.mixins.json:TitleScreenMixin from mod exit_confirm -> net.minecraft.class_442: org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException Critical injection failure: @Inject annotation on exitConfirmation$init could not find any targets matching 'init' in net.minecraft.class_442. No refMap loaded. [PREINJECT Applicator Phase -> exit-confirmation.mixins.json:TitleScreenMixin from mod exit_confirm -> Prepare Injections ->  -> handler$zza000$exit_confirm$exitConfirmation$init(Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V -> Parse]
org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException: Critical injection failure: @Inject annotation on exitConfirmation$init could not find any targets matching 'init' in net.minecraft.class_442. No refMap loaded. [PREINJECT Applicator Phase -> exit-confirmation.mixins.json:TitleScreenMixin from mod exit_confirm -> Prepare Injections ->  -> handler$zza000$exit_confirm$exitConfirmation$init(Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V -> Parse]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.validateTargets(InjectionInfo.java:656) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.findTargets(InjectionInfo.java:587) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.readAnnotation(InjectionInfo.java:330) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.<init>(InjectionInfo.java:316) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.<init>(InjectionInfo.java:308) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.CallbackInjectionInfo.<init>(CallbackInjectionInfo.java:46) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at jdk.internal.reflect.GeneratedConstructorAccessor63.newInstance(Unknown Source) ~[?:?]
	at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]
	at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[?:?]
	at java.lang.reflect.Constructor.newInstance(Constructor.java:480) ~[?:?]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo$InjectorEntry.create(InjectionInfo.java:149) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.parse(InjectionInfo.java:708) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinTargetContext.prepareInjections(MixinTargetContext.java:1329) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.prepareInjections(MixinApplicatorStandard.java:1053) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:395) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:327) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.TargetClassContext.apply(TargetClassContext.java:421) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:403) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:234) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:202) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:422) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.tryLoadClass(KnotClassDelegate.java:323) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.loadClass(KnotClassDelegate.java:218) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:112) ~[fabric-loader-0.14.21.jar:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
	at net.minecraft.client.main.Main.main(Main.java:220) ~[Fabric%201.20.1%20%d0%b4%d0%bb%d1%8f%20%d1%82%d0%b5%d1%81%d1%82%d0%be%d0%b2.jar:?]
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23) ~[fabric-loader-0.14.21.jar:?]
[01:41:39] [Render thread/ERROR] (FabricLoader) Minecraft has crashed!
net.fabricmc.loader.impl.FormattedException: java.lang.RuntimeException: Mixin transformation of net.minecraft.class_442 failed
	at net.fabricmc.loader.impl.FormattedException.ofLocalized(FormattedException.java:63) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23) ~[fabric-loader-0.14.21.jar:?]
Caused by: java.lang.RuntimeException: Mixin transformation of net.minecraft.class_442 failed
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:427) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.tryLoadClass(KnotClassDelegate.java:323) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.loadClass(KnotClassDelegate.java:218) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:112) ~[fabric-loader-0.14.21.jar:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
	at net.minecraft.client.main.Main.main(Main.java:220) ~[Fabric%201.20.1%20%d0%b4%d0%bb%d1%8f%20%d1%82%d0%b5%d1%81%d1%82%d0%be%d0%b2.jar:?]
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468) ~[fabric-loader-0.14.21.jar:?]
	... 2 more
Caused by: org.spongepowered.asm.mixin.transformer.throwables.MixinTransformerError: An unexpected critical error was encountered
	at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:392) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:234) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:202) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:422) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.tryLoadClass(KnotClassDelegate.java:323) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.loadClass(KnotClassDelegate.java:218) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:112) ~[fabric-loader-0.14.21.jar:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
	at net.minecraft.client.main.Main.main(Main.java:220) ~[Fabric%201.20.1%20%d0%b4%d0%bb%d1%8f%20%d1%82%d0%b5%d1%81%d1%82%d0%be%d0%b2.jar:?]
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468) ~[fabric-loader-0.14.21.jar:?]
	... 2 more
Caused by: org.spongepowered.asm.mixin.throwables.MixinApplyError: Mixin [exit-confirmation.mixins.json:TitleScreenMixin from mod exit_confirm] from phase [DEFAULT] in config [exit-confirmation.mixins.json] FAILED during APPLY
	at org.spongepowered.asm.mixin.transformer.MixinProcessor.handleMixinError(MixinProcessor.java:638) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinProcessor.handleMixinApplyError(MixinProcessor.java:589) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:379) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:234) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:202) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:422) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.tryLoadClass(KnotClassDelegate.java:323) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.loadClass(KnotClassDelegate.java:218) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:112) ~[fabric-loader-0.14.21.jar:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
	at net.minecraft.client.main.Main.main(Main.java:220) ~[Fabric%201.20.1%20%d0%b4%d0%bb%d1%8f%20%d1%82%d0%b5%d1%81%d1%82%d0%be%d0%b2.jar:?]
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468) ~[fabric-loader-0.14.21.jar:?]
	... 2 more
Caused by: org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException: Critical injection failure: @Inject annotation on exitConfirmation$init could not find any targets matching 'init' in net.minecraft.class_442. No refMap loaded. [PREINJECT Applicator Phase -> exit-confirmation.mixins.json:TitleScreenMixin from mod exit_confirm -> Prepare Injections ->  -> handler$zza000$exit_confirm$exitConfirmation$init(Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V -> Parse]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.validateTargets(InjectionInfo.java:656) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.findTargets(InjectionInfo.java:587) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.readAnnotation(InjectionInfo.java:330) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.<init>(InjectionInfo.java:316) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.<init>(InjectionInfo.java:308) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.CallbackInjectionInfo.<init>(CallbackInjectionInfo.java:46) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at jdk.internal.reflect.GeneratedConstructorAccessor63.newInstance(Unknown Source) ~[?:?]
	at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]
	at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[?:?]
	at java.lang.reflect.Constructor.newInstance(Constructor.java:480) ~[?:?]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo$InjectorEntry.create(InjectionInfo.java:149) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.parse(InjectionInfo.java:708) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinTargetContext.prepareInjections(MixinTargetContext.java:1329) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.prepareInjections(MixinApplicatorStandard.java:1053) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:395) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:327) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.TargetClassContext.apply(TargetClassContext.java:421) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:403) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:234) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:202) ~[sponge-mixin-0.12.5+mixin.0.8.5.jar:0.12.5+mixin.0.8.5]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:422) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.tryLoadClass(KnotClassDelegate.java:323) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.loadClass(KnotClassDelegate.java:218) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:112) ~[fabric-loader-0.14.21.jar:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
	at net.minecraft.client.main.Main.main(Main.java:220) ~[Fabric%201.20.1%20%d0%b4%d0%bb%d1%8f%20%d1%82%d0%b5%d1%81%d1%82%d0%be%d0%b2.jar:?]
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468) ~[fabric-loader-0.14.21.jar:?]
	... 2 more

latest.log

Exit Confirmation 2.4.0 works fine

UI enhancement request - custom offset or alignment types

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

When I open up the exit confirmation window in my modpack, it's... not so conveniently aligned and even a bit hard to read. See screenshot. (My inner monk is screaming at the alignments in Pause Screen)

Describe the solution you'd like
A clear and concise description of what you want to happen.

I'd love either of those:
a.1) a percentage of screen offset for the top of the window and the possibility to add a (transparency supproted) background image to the exit confirmation.
a.2) the option to align it to the screen center, and also to add a custom (transparency supported) background image to the exit confirmation.
b) Maybe even go that far to optionally set one for every screen, but make it overridden by a current value by default.

(I prefer a.1) + b) )

Describe alternatives you've considered (optional, but recommended)
A clear and concise description of any alternative solutions or features you've considered.

Beat my inner monk to be silent :'D No, I have no idea tbh. FancyMenu also shows when I hover over its buttons while having the exit confirmation open which is a bit cringe. I think a PNG alone might make a difference. With the current setup as a fallback if there's none or it's invalid (would also appreciate a log message if it can't be found).

Additional context
Add any other context or screenshots about the feature request here.

grafik
grafik
grafik

Oh no, the buttons below are hoverable (using FancyMenu) :/ (I tested and could click multiple ones which once also led the game to crash, report incoming)
grafik

Config menu?

I don't really like the narrator talk to me whenever I want to exit Minecraft, mainly because the option menu is already there so the narrator is kinda useless, unless taskkill

Will there a config menu to turn on/off this mod instead of uncheck this mod and then re-run the game?

Forge freezing on startup

Forge has a mixin issue on newest version 2.4.2 (on 2.4.1 and 2.4.0 as well I think). Probably because architectury hasn't fully updated to 1.20 yet?

Error message:

[08Jul2023 13:19:01.516] [Render thread/WARN] [mixin/]: Error loading class: net/minecraft/class_442 (java.lang.ClassNotFoundException: net.minecraft.class_442)
[08Jul2023 13:19:01.519] [Render thread/FATAL] [mixin/]: Mixin apply failed exit-confirmation.mixins.json:TitleScreenMixin -> net.minecraft.client.gui.screens.TitleScreen: org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException @Inject annotation on exitConfirmation$init specifies a target class 'net/minecraft/class_442', which is not supported [PREINJECT Applicator Phase -> exit-confirmation.mixins.json:TitleScreenMixin -> Prepare Injections ->  -> handler$zzb000$exitConfirmation$init(Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V -> Parse]
org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException: @Inject annotation on exitConfirmation$init specifies a target class 'net/minecraft/class_442', which is not supported [PREINJECT Applicator Phase -> exit-confirmation.mixins.json:TitleScreenMixin -> Prepare Injections ->  -> handler$zzb000$exitConfirmation$init(Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V -> Parse]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.parseSelectors(InjectionInfo.java:355) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.readAnnotation(InjectionInfo.java:329) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.<init>(InjectionInfo.java:316) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.<init>(InjectionInfo.java:308) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.injection.struct.CallbackInjectionInfo.<init>(CallbackInjectionInfo.java:46) ~[mixin-patched-0.8.5.10.jar:?]
	at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?]
	at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77) ~[?:?]
	at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]
	at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[?:?]
	at java.lang.reflect.Constructor.newInstance(Constructor.java:480) ~[?:?]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo$InjectorEntry.create(InjectionInfo.java:149) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.parse(InjectionInfo.java:708) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.MixinTargetContext.prepareInjections(MixinTargetContext.java:1311) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.prepareInjections(MixinApplicatorStandard.java:1042) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:393) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:325) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.TargetClassContext.apply(TargetClassContext.java:383) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:365) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:250) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.service.modlauncher.MixinTransformationHandler.processClass(MixinTransformationHandler.java:131) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.launch.MixinLaunchPluginLegacy.processClass(MixinLaunchPluginLegacy.java:131) ~[mixin-patched-0.8.5.10.jar:?]
	at cpw.mods.modlauncher.serviceapi.ILaunchPluginService.processClassWithFlags(ILaunchPluginService.java:156) ~[modlauncher-10.0.9.jar:10.0.9+10.0.9+main.dcd20f30]
	at cpw.mods.modlauncher.LaunchPluginHandler.offerClassNodeToPlugins(LaunchPluginHandler.java:88) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.ClassTransformer.transform(ClassTransformer.java:120) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.TransformingClassLoader.maybeTransformClassBytes(TransformingClassLoader.java:50) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.cl.ModuleClassLoader.readerToClass(ModuleClassLoader.java:113) ~[securejarhandler-2.1.10.jar:?]
	at cpw.mods.cl.ModuleClassLoader.lambda$findClass$15(ModuleClassLoader.java:219) ~[securejarhandler-2.1.10.jar:?]
	at cpw.mods.cl.ModuleClassLoader.loadFromModule(ModuleClassLoader.java:229) ~[securejarhandler-2.1.10.jar:?]
	at cpw.mods.cl.ModuleClassLoader.findClass(ModuleClassLoader.java:219) ~[securejarhandler-2.1.10.jar:?]
	at cpw.mods.cl.ModuleClassLoader.loadClass(ModuleClassLoader.java:135) ~[securejarhandler-2.1.10.jar:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
	at net.minecraft.client.main.Main.main(Main.java:182) ~[forge-1.20.1-47.1.0-minecraft-merged-project-@forge-1.20.1-loom.mappings.1_20_1.layered+hash.529533973-v2-forge-1.20.1-47.1.0.jar%23195!/:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?]
	at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?]
	at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:111) ~[fmlloader-1.20.1-47.1.0.jar%23105!/:?]
	at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:99) ~[fmlloader-1.20.1-47.1.0.jar%23105!/:?]
	at net.minecraftforge.fml.loading.targets.ForgeClientUserdevLaunchHandler.devService(ForgeClientUserdevLaunchHandler.java:19) ~[fmlloader-1.20.1-47.1.0.jar%23105!/:?]
	at net.minecraftforge.fml.loading.targets.CommonDevLaunchHandler.lambda$makeService$7(CommonDevLaunchHandler.java:135) ~[fmlloader-1.20.1-47.1.0.jar%23105!/:?]
	at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) ~[modlauncher-10.0.9.jar%23110!/:?]
	at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) ~[modlauncher-10.0.9.jar%23110!/:?]
	at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) ~[modlauncher-10.0.9.jar%23110!/:?]
	at cpw.mods.modlauncher.Launcher.run(Launcher.java:108) ~[modlauncher-10.0.9.jar%23110!/:?]
	at cpw.mods.modlauncher.Launcher.main(Launcher.java:78) ~[modlauncher-10.0.9.jar%23110!/:?]
	at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) ~[modlauncher-10.0.9.jar%23110!/:?]
	at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) ~[modlauncher-10.0.9.jar%23110!/:?]
	at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141) ~[?:?]
	at net.fabricmc.devlaunchinjector.Main.main(Main.java:86) ~[dev-launch-injector-0.2.1+build.8.jar%23193!/:?]
	at dev.architectury.transformer.TransformerRuntime.main(TransformerRuntime.java:219) ~[?:?]
[08Jul2023 13:19:01.811] [Render thread/FATAL] [mixin/]: Mixin apply failed exit-confirmation.mixins.json:TitleScreenMixin -> net.minecraft.client.gui.screens.TitleScreen: org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException @Inject annotation on exitConfirmation$init specifies a target class 'net/minecraft/class_442', which is not supported [PREINJECT Applicator Phase -> exit-confirmation.mixins.json:TitleScreenMixin -> Prepare Injections ->  -> handler$zzb000$exitConfirmation$init(Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V -> Parse]
org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException: @Inject annotation on exitConfirmation$init specifies a target class 'net/minecraft/class_442', which is not supported [PREINJECT Applicator Phase -> exit-confirmation.mixins.json:TitleScreenMixin -> Prepare Injections ->  -> handler$zzb000$exitConfirmation$init(Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V -> Parse]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.parseSelectors(InjectionInfo.java:355) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.readAnnotation(InjectionInfo.java:329) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.<init>(InjectionInfo.java:316) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.<init>(InjectionInfo.java:308) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.injection.struct.CallbackInjectionInfo.<init>(CallbackInjectionInfo.java:46) ~[mixin-patched-0.8.5.10.jar:?]
	at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?]
	at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77) ~[?:?]
	at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]
	at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[?:?]
	at java.lang.reflect.Constructor.newInstance(Constructor.java:480) ~[?:?]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo$InjectorEntry.create(InjectionInfo.java:149) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.parse(InjectionInfo.java:708) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.MixinTargetContext.prepareInjections(MixinTargetContext.java:1311) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.prepareInjections(MixinApplicatorStandard.java:1042) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:393) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:325) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.TargetClassContext.apply(TargetClassContext.java:383) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:365) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:250) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.service.modlauncher.MixinTransformationHandler.processClass(MixinTransformationHandler.java:131) ~[mixin-patched-0.8.5.10.jar:?]
	at org.spongepowered.asm.launch.MixinLaunchPluginLegacy.processClass(MixinLaunchPluginLegacy.java:131) ~[mixin-patched-0.8.5.10.jar:?]
	at cpw.mods.modlauncher.serviceapi.ILaunchPluginService.processClassWithFlags(ILaunchPluginService.java:156) ~[modlauncher-10.0.9.jar:10.0.9+10.0.9+main.dcd20f30]
	at cpw.mods.modlauncher.LaunchPluginHandler.offerClassNodeToPlugins(LaunchPluginHandler.java:88) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.ClassTransformer.transform(ClassTransformer.java:120) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.TransformingClassLoader.maybeTransformClassBytes(TransformingClassLoader.java:50) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.cl.ModuleClassLoader.readerToClass(ModuleClassLoader.java:113) ~[securejarhandler-2.1.10.jar:?]
	at cpw.mods.cl.ModuleClassLoader.lambda$findClass$15(ModuleClassLoader.java:219) ~[securejarhandler-2.1.10.jar:?]
	at cpw.mods.cl.ModuleClassLoader.loadFromModule(ModuleClassLoader.java:229) ~[securejarhandler-2.1.10.jar:?]
	at cpw.mods.cl.ModuleClassLoader.findClass(ModuleClassLoader.java:219) ~[securejarhandler-2.1.10.jar:?]
	at cpw.mods.cl.ModuleClassLoader.loadClass(ModuleClassLoader.java:135) ~[securejarhandler-2.1.10.jar:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
	at net.minecraft.client.main.Main.main(Main.java:191) ~[forge-1.20.1-47.1.0-minecraft-merged-project-@forge-1.20.1-loom.mappings.1_20_1.layered+hash.529533973-v2-forge-1.20.1-47.1.0.jar%23195!/:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?]
	at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?]
	at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:111) ~[fmlloader-1.20.1-47.1.0.jar%23105!/:?]
	at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:99) ~[fmlloader-1.20.1-47.1.0.jar%23105!/:?]
	at net.minecraftforge.fml.loading.targets.ForgeClientUserdevLaunchHandler.devService(ForgeClientUserdevLaunchHandler.java:19) ~[fmlloader-1.20.1-47.1.0.jar%23105!/:?]
	at net.minecraftforge.fml.loading.targets.CommonDevLaunchHandler.lambda$makeService$7(CommonDevLaunchHandler.java:135) ~[fmlloader-1.20.1-47.1.0.jar%23105!/:?]
	at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) ~[modlauncher-10.0.9.jar%23110!/:?]
	at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) ~[modlauncher-10.0.9.jar%23110!/:?]
	at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) ~[modlauncher-10.0.9.jar%23110!/:?]
	at cpw.mods.modlauncher.Launcher.run(Launcher.java:108) ~[modlauncher-10.0.9.jar%23110!/:?]
	at cpw.mods.modlauncher.Launcher.main(Launcher.java:78) ~[modlauncher-10.0.9.jar%23110!/:?]
	at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) ~[modlauncher-10.0.9.jar%23110!/:?]
	at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) ~[modlauncher-10.0.9.jar%23110!/:?]
	at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141) ~[?:?]
	at net.fabricmc.devlaunchinjector.Main.main(Main.java:86) ~[dev-launch-injector-0.2.1+build.8.jar%23193!/:?]
	at dev.architectury.transformer.TransformerRuntime.main(TransformerRuntime.java:219) ~[?:?]

FancyMenu button clickable, in some cases causes the game to crash...

To Reproduce
Steps to reproduce the behavior:

approach a)

  1. Install both FancyMenu (+dependencies) and exit confirmation
  2. Start pack
  3. Make one FancyMenu button link to a custom GUI
  4. Open the exit screen in the window with the custom GUI linked button
  5. click the button
  6. Game should crash?

if that is no problem
approach b)

  1. Install my modpack :'D (Royal Equines: Petrified Magic (version 1.1b05, aka the latest availabe on CF as of today))
  2. Add exit confirmation 1.0.2 to it
  3. Start game
  4. Click on the "Modpack Tutorial" button
  5. Open exit screen by clicking "x" on the window top
  6. Press on the "Starter's Guide" button
  7. Game should crash.

Logs
Add an optional log file to the issue, this helps developers to find out when it went wrong.

latest.log

Crash report
Add a crash report to the issue, this is essential for developers to know what went wrong.

crash-2023-11-30_17.23.22-client.txt
crash-2023-11-30_17.32.58-client.txt

Please complete the following information:

  • OS: [Windows]
  • Minecraft version [1.18.2]
  • Devices Mod Version: [1.0.2]

FOR FORGE:

  • Forge version [40.2.14]

Additional context
Add any other context about the problem here.
All buttons are sort of clickable. At least those modified by FancyMenu. If it's a linked issue maybe reach out to Keksuccino, its developer.
Screenshots can be found here #17

Additional mods used
Optionally, give a list of mods used (as long it isn't many).
I am assuming here, FancyMenu alone.
Let me know if this alone causes no issues. See crash log(s) for further information, there is a full mod list attached (though I am on version 1.1b06, the unreleased version of my modpack so the list is EVEN LONGER. Sorry about that lol).

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.