Giter Site home page Giter Site logo

fabrishot's People

Contributors

dantevg avatar dqlsu avatar enderkill98 avatar godgun968 avatar grayray75 avatar hambaka avatar heybanditoz avatar hydos avatar jellysquid3 avatar madis0 avatar magneticflux- avatar notlin4 avatar ramidzkh avatar rantuhin avatar sinsinewave avatar thelegendofsaram avatar triphora avatar

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

Watchers

 avatar  avatar

fabrishot's Issues

[Feature request] Auto-exposure shader support

Some shaderpacks allow to use "Auto exposure", where shaderpack will change exposure based on previous several frame buffers but initial exposure is usually way too high so screenshots taken with fabrishot usually are heavily overexposed:
2022-05-28_23 19 00
same screenshot but a second after buffer has been reset:
2022-05-28_23 18 59
As such i request a setting to be added which would allow user to specify period after which to take screenshot and reset buffer size

Repository

Hey, im creating a mod for screenshots and would like to add this mod as an optional dependency, is there a maven repository that i could use, or if there isn't could one be created?

Not working

This mod is not working at all for me, please tell me what information you require from me to be able to fix this issue.

[Compatibility] Nicephore - conflict with auto-clipboarding feature

Hey ! I'm the author of Nicephore and a user is reporting me a compatibility issue between our mods:

So I realized I was using Fabrishot to overwrite the the vanilla screenshot, apparently Nicephore only recognize vanilla screenshots, but as soon Fabrishot overwrites it with its own screenshot function, the "copy to clipboard" stopped working and throw the error just like in the video I sent
Just to recognize how Fabrishot overwrites vanilla screenshot, the video 12 days ago I sent above also show me took a screenshot, as a flash occured, that was Fabrishot overwrite function, which is togglable in the settings
So for now, I think making a compatible with Fabrishot should help, or depend on the player, like me, to not use the overwrite function and just let the mod capture screenshot with a different hotkey beside vanilla one (default for the mod is F9, vanilla is F2)

Source : LotuxPunk/Nicephore-Fabric#10 (comment)

Can we maybe work together on this ? 👀

Screenshot file type

Is there a possibility of including an option to save screenshtos as jpg instead of png, the images could be compressed so that they wouldn't each take up over 15mb

Game will zoom into the bottom left for a split second when taking a screenshot.

This is can be a huge issue when I record or do live streams when I have my on-screen coordinates mod covered up by the stream as it could partially be displayed when a screenshot is taken. A possible solution for this could be to just not render that frame to the client during the screenshot taking process. Hope this can get fixed!

Video of the issue:
https://github.com/ramidzkh/fabrishot/assets/6318428/efe30854-c0ce-44d3-bf2f-6d7df77c7f86

"Save the screenshot file"?

The mod has an option called "Save the screenshot file". What is the point of that?
Why wouldn't the user just remove the mod or unbind the keybind if they don't want to use it at a certain time?

Events for screenshot capture/save (feature request)

To implement support for Fabrishot in Screenshot to Clipboard (comp500/ScreenshotToClipboard#12) it'd be helpful to have a couple events for screenshot capture that I can use to copy the captured screenshot.

I'd want one pre-save (with raw ABGR data, in FramebufferCapturer) and one post-save (with the file name, in FramebufferWriter). The reason for having both is due to how the image clipboard works on macOS - on other systems, I can just use the raw ABGR data with AWT.

Modrinth version?

While updating my 1.20.4 modrinth profile today, fabrishot automatically updated to version 1.13.0, which gives the following error:

Incompatible mods found!
net.fabricmc.loader.impl.FormattedException: Some of your mods are incompatible with the game or each other!
A potential solution has been determined, this may resolve your problem:
	 - Replace mod 'Fabrishot' (fabrishot) 1.13.0 with any version that is compatible with:
		 - minecraft 1.20.4
More details:
	 - Mod 'Fabrishot' (fabrishot) 1.13.0 requires version 1.20.5 of 'Minecraft' (minecraft), but only the wrong version is present: 1.20.4!
	at net.fabricmc.loader.impl.FormattedException.ofLocalized(FormattedException.java:51)
	at net.fabricmc.loader.impl.FabricLoaderImpl.load(FabricLoaderImpl.java:195)
	at net.fabricmc.loader.impl.launch.knot.Knot.init(Knot.java:146)
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:68)
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)

Looks like the mod is built against minecraft 1.20.5, but was uploaded to modrinth with minecraft version 1.20.4
Manually changing fabrishot's version back to 1.12.1 allows the game to load, so it's not a major issue, just ever so slightly annoying ;)

Shader compatibility

Some shaderpacks "gain precision" over time, and it resets when changing resolution, causing the screenshot to be blurry and in wrong colors.

Compatibility with 1.17.1

Won't launch with 1.17.1

Crash Report:
---- Minecraft Crash Report ----
// You should try our sister game, Minceraft!

Time: 7/7/21, 8:39 PM
Description: Initializing game

org.spongepowered.asm.mixin.transformer.throwables.MixinTransformerError: An unexpected critical error was encountered
at Not Enough Crashes deobfuscated stack trace.(1.17+build.13)
at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363)
at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:208)
at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:178)
at org.spongepowered.asm.mixin.transformer.FabricMixinTransformerProxy.transformClassBytes(FabricMixinTransformerProxy.java:23)
at net.fabricmc.loader.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:162)
at net.fabricmc.loader.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:154)
at java.lang.ClassLoader.loadClass(ClassLoader.java:519)
at net.minecraft.client.MinecraftClient.(MinecraftClient:495)
at net.minecraft.client.main.Main.main(Main:179)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:567)
at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:234)
at net.fabricmc.loader.launch.knot.Knot.launch(Knot.java:153)
at net.fabricmc.loader.launch.knot.KnotClient.main(KnotClient.java:28)
Caused by: org.spongepowered.asm.mixin.injection.throwables.InjectionError: Critical injection failure: Callback method onScreenshot(Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V in mixins.fabrishot.json:KeyboardMixin failed injection check, (0/1) succeeded. Scanned 1 target(s). Using refmap fabrishot-refmap.json
at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.postInject(InjectionInfo.java:408)
at org.spongepowered.asm.mixin.transformer.MixinTargetContext.applyInjections(MixinTargetContext.java:1291)
at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyInjections(MixinApplicatorStandard.java:1042)
at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:395)
at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:320)
at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:345)
at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:569)
at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:351)
... 15 more
A detailed walkthrough of the error, its code path and all known details is as follows:

-- Head --
Thread: Render thread
Stacktrace:
at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363)
at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:208)
at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:178)
at org.spongepowered.asm.mixin.transformer.FabricMixinTransformerProxy.transformClassBytes(FabricMixinTransformerProxy.java:23)
at net.fabricmc.loader.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:162)
at net.fabricmc.loader.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:154)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:519)
at net.minecraft.class_310.(class_310.java:495)

-- Initialization --
Details:
Stacktrace:
at net.minecraft.client.main.Main.main(Main.java:179)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:567)
at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:234)
at net.fabricmc.loader.launch.knot.Knot.launch(Knot.java:153)
at net.fabricmc.loader.launch.knot.KnotClient.main(KnotClient.java:28)

-- System Details --
Details:
Minecraft Version: 1.17.1
Minecraft Version ID: 1.17.1
Operating System: Windows 10 (amd64) version 10.0
Java Version: 16.0.2, GraalVM Community
Java VM Version: OpenJDK 64-Bit Server VM (mixed mode, sharing), GraalVM Community
Memory: 456622816 bytes (435 MiB) / 805306368 bytes (768 MiB) up to 6442450944 bytes (6144 MiB)
CPUs: 6
Processor Vendor: AuthenticAMD
Processor Name: AMD Ryzen 5 4500U with Radeon Graphics
Identifier: AuthenticAMD Family 23 Model 96 Stepping 1
Microarchitecture: unknown
Frequency (GHz): 2.37
Number of physical packages: 1
Number of physical CPUs: 6
Number of logical CPUs: 6
Graphics card #0 name: AMD Radeon(TM) Graphics
Graphics card #0 vendor: Advanced Micro Devices, Inc. (0x1002)
Graphics card #0 VRAM (MB): 512.00
Graphics card #0 deviceId: 0x1636
Graphics card #0 versionInfo: DriverVersion=27.20.22001.16006
Memory slot #0 capacity (MB): 8192.00
Memory slot #0 clockSpeed (GHz): 3.20
Memory slot #0 type: DDR4
Memory slot #1 capacity (MB): 8192.00
Memory slot #1 clockSpeed (GHz): 3.20
Memory slot #1 type: DDR4
Virtual memory max (MB): 22654.16
Virtual memory used (MB): 15605.28
Swap memory total (MB): 6912.00
Swap memory used (MB): 208.79
JVM Flags: 16 total; -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx6G -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI -XX:+UseJVMCICompiler -XX:+EagerJVMCI -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M
Fabric Mods:
advanced_runtime_resource_pack: Runtime Resource Pack 0.4.3
adventure-platform-fabric: adventure-platform-fabric 4.1.0-SNAPSHOT
antighost: AntiGhost 1.17.1-fabric0.36.1-1.1.4
appleskin: AppleSkin mc1.17-2.0.0
architectury: Architectury 2.1.20
authme: Auth Me 1.5.0
betterbeds: Better Beds 1.2.0
betterdroppeditems: Better Dropped Items 1.3.0-1.17
betterthirdperson: Better Third Person 1.5.0
blur: Blur (Fabric) 2.1.0
can-i-mine-this-block: cAn i MiNe thIS bLOCk? 1.1.0
carpet: Carpet Mod 1.4.43
carpet-extra: Carpet Extra 1.4.40
chunkpregen: Fabric Chunk Pregenerator 0.3.3
chunky: Chunky 1.2.93
cleancut: CleanCut 1.17-4.0-fabric
cloth-api: Cloth API 2.0.54
cloth-basic-math: Cloth Basic Math 0.5.1
cloth-client-events-v0: Cloth Client Events v0 2.0.54
cloth-common-events-v1: Cloth Common Events v1 2.0.54
cloth-config2: Cloth Config v4 5.0.34
cloth-datagen-api-v1: Cloth Datagen v1 2.0.54
cloth-scissors-api-v1: Cloth Scissors API v1 2.0.54
cloth-utils-v1: Cloth Utils v1 2.0.54
cloud-v1: Cloud 1.5.0-SNAPSHOT
cloud_commandframework_cloud-brigadier: cloud-brigadier 1.5.0-SNAPSHOT
cloud_commandframework_cloud-core: cloud-core 1.5.0-SNAPSHOT
cloud_commandframework_cloud-minecraft-extras: cloud-minecraft-extras 1.5.0-SNAPSHOT
cloud_commandframework_cloud-services: cloud-services 1.5.0-SNAPSHOT
com_moandjiezana_toml_toml4j: toml4j 0.7.2
com_typesafe_config: config 1.4.1
com_velocitypowered_velocity-native: velocity-native 1.1.0-SNAPSHOT
crowdin-translate: CrowdinTranslate 1.3+1.17
cullleaves: Cull Leaves 2.2.0
dynamicfps: Dynamic FPS 2.0.4
easiervillagertrading: EasierVillagerTrading 1.17.1-fabric0.36.1-1.5.4
fabric: Fabric API 0.36.1+1.17
fabric-api-base: Fabric API Base 0.3.0+a02b446313
fabric-api-lookup-api-v1: Fabric API Lookup API (v1) 1.2.0+2b5c62d013
fabric-biome-api-v1: Fabric Biome API (v1) 3.1.11+c345aea813
fabric-blockrenderlayer-v1: Fabric BlockRenderLayer Registration (v1) 1.1.5+a02b446313
fabric-command-api-v1: Fabric Command API (v1) 1.1.2+6cefd57713
fabric-commands-v0: Fabric Commands (v0) 0.2.2+92519afa13
fabric-containers-v0: Fabric Containers (v0) 0.1.12+a02b446313
fabric-content-registries-v0: Fabric Content Registries (v0) 0.2.2+a02b446313
fabric-crash-report-info-v1: Fabric Crash Report Info (v1) 0.1.5+be9da31013
fabric-dimensions-v1: Fabric Dimensions API (v1) 2.0.11+6cefd57713
fabric-entity-events-v1: Fabric Entity Events (v1) 1.1.0+a02b446313
fabric-events-interaction-v0: Fabric Events Interaction (v0) 0.4.9+a722d8c013
fabric-events-lifecycle-v0: Fabric Events Lifecycle (v0) 0.2.1+92519afa13
fabric-game-rule-api-v1: Fabric Game Rule API (v1) 1.0.7+6cefd57713
fabric-item-api-v1: Fabric Item API (v1) 1.2.4+a02b446313
fabric-item-groups-v0: Fabric Item Groups (v0) 0.2.10+b7ab612113
fabric-key-binding-api-v1: Fabric Key Binding API (v1) 1.0.4+a02b446313
fabric-keybindings-v0: Fabric Key Bindings (v0) 0.2.2+36b77c3e13
fabric-language-kotlin: Fabric Language Kotlin 1.6.2+kotlin.1.5.20
fabric-lifecycle-events-v1: Fabric Lifecycle Events (v1) 1.4.4+a02b446313
fabric-loot-tables-v1: Fabric Loot Tables (v1) 1.0.4+a02b446313
fabric-mining-levels-v0: Fabric Mining Levels (v0) 0.1.3+92519afa13
fabric-models-v0: Fabric Models (v0) 0.3.0+a02b446313
fabric-networking-api-v1: Fabric Networking API (v1) 1.0.12+6cefd57713
fabric-networking-blockentity-v0: Fabric Networking Block Entity (v0) 0.2.11+a02b446313
fabric-networking-v0: Fabric Networking (v0) 0.3.2+92519afa13
fabric-object-builder-api-v1: Fabric Object Builder API (v1) 1.10.9+b7ab612113
fabric-object-builders-v0: Fabric Object Builders (v0) 0.7.3+a02b446313
fabric-particles-v1: Fabric Particles (v1) 0.2.4+a02b446313
fabric-permissions-api-v0: fabric-permissions-api 0.1-SNAPSHOT
fabric-registry-sync-v0: Fabric Registry Sync (v0) 0.7.10+e2961fee13
fabric-renderer-api-v1: Fabric Renderer API (v1) 0.4.4+5f02c96913
fabric-renderer-indigo: Fabric Renderer - Indigo 0.4.8+a02b446313
fabric-renderer-registries-v1: Fabric Renderer Registries (v1) 3.2.0+a02b446313
fabric-rendering-data-attachment-v1: Fabric Rendering Data Attachment (v1) 0.1.5+a02b446313
fabric-rendering-fluids-v1: Fabric Rendering Fluids (v1) 0.1.13+a02b446313
fabric-rendering-v0: Fabric Rendering (v0) 1.1.2+92519afa13
fabric-rendering-v1: Fabric Rendering (v1) 1.6.0+a02b446313
fabric-resource-loader-v0: Fabric Resource Loader (v0) 0.4.7+b7ab6121d5
fabric-screen-api-v1: Fabric Screen API (v1) 1.0.4+198a96213d
fabric-screen-handler-api-v1: Fabric Screen Handler API (v1) 1.1.8+a02b446313
fabric-structure-api-v1: Fabric Structure API (v1) 1.1.12+6cefd57713
fabric-tag-extensions-v0: Fabric Tag Extensions (v0) 1.1.4+a02b446313
fabric-textures-v0: Fabric Textures (v0) 1.0.6+a02b446313
fabric-tool-attribute-api-v1: Fabric Tool Attribute API (v1) 1.2.12+b7ab612113
fabricloader: Fabric Loader 0.11.6
fabrishot: Fabrishot 1.5.0
fastchest: FastChest 1.2+1.17
ferritecore: FerriteCore 3.0.0
fiber: fiber 0.23.0-2
gbfabrictools: GBfabrictools 1.3.4+1.17
horseinfo: Horse Info 0.3.0-1.17
indium: Indium 1.0.0+rev.820073e
inventoryhud: Inventory HUD + 3.3.1
io_leangen_geantyref_geantyref: geantyref 1.3.11
java: OpenJDK 64-Bit Server VM 16
krypton: Krypton 0.1.4
kubejs: KubeJS 1605.3.10-build.9999
lambdynlights: LambDynamicLights 2.0.1+1.17
lazydfu: LazyDFU 0.1.2
libzoomer: LibZoomer 0.2.1+1.17
litematica: Litematica 0.0.0-dev.20210707.011234
lithium: Lithium 0.7.3-SNAPSHOT
malilib: MaLiLib 0.10.0+dev.22
megane: megane 5.0.0
megane-base: megane-base 5.0.0
megane-runtime: megane-runtime 5.0.0
megane-vanilla: megane-vanilla 5.0.0+1.17
minecraft: Minecraft 1.17.1
mm: Manningham Mills 2.1
modmenu: Mod Menu 2.0.2
net_kyori_adventure-api: adventure-api 4.8.1
net_kyori_adventure-key: adventure-key 4.8.1
net_kyori_adventure-platform-api: adventure-platform-api 4.0.0-SNAPSHOT
net_kyori_adventure-serializer-configurate4: adventure-serializer-configurate4 4.8.0
net_kyori_adventure-text-feature-pagination: adventure-text-feature-pagination 4.0.0-SNAPSHOT
net_kyori_adventure-text-minimessage: adventure-text-minimessage 4.1.0-SNAPSHOT
net_kyori_adventure-text-serializer-gson: adventure-text-serializer-gson 4.8.1
net_kyori_adventure-text-serializer-legacy: adventure-text-serializer-legacy 4.8.0
net_kyori_adventure-text-serializer-plain: adventure-text-serializer-plain 4.8.1
net_kyori_examination-api: examination-api 1.1.0
net_kyori_examination-string: examination-string 1.1.0
notenoughcrashes: Not Enough Crashes 3.3.1+1.17
okzoomer: Ok Zoomer 5.0.0-beta.2+1.17
org_aperlambda_lambdajcommon: lambdajcommon 1.8.1
org_codehaus_groovy_groovy: groovy 3.0.8
org_codehaus_groovy_groovy-jsr223: groovy-jsr223 3.0.8
org_jetbrains_kotlin_kotlin-reflect: kotlin-reflect 1.5.20
org_jetbrains_kotlin_kotlin-stdlib: kotlin-stdlib 1.5.20
org_jetbrains_kotlin_kotlin-stdlib-jdk7: kotlin-stdlib-jdk7 1.5.20
org_jetbrains_kotlin_kotlin-stdlib-jdk8: kotlin-stdlib-jdk8 1.5.20
org_jetbrains_kotlinx_kotlinx-coroutines-core-jvm: kotlinx-coroutines-core-jvm 1.5.0
org_jetbrains_kotlinx_kotlinx-coroutines-jdk8: kotlinx-coroutines-jdk8 1.5.0
org_jetbrains_kotlinx_kotlinx-serialization-core-jvm: kotlinx-serialization-core-jvm 1.2.1
org_jetbrains_kotlinx_kotlinx-serialization-json-jvm: kotlinx-serialization-json-jvm 1.2.1
org_spongepowered_configurate-core: configurate-core 4.1.1
org_spongepowered_configurate-hocon: configurate-hocon 4.1.1
rhino: Rhino 1605.1.1-build.23
roughlyenoughitems: Roughly Enough Items 6.0.262-alpha
satin: Satin 1.6.0-nightly.1.17-pre3
seamless_loading_screen: Seamless Loading Screen 1.3.5+1.17
slight-gui-modifications: 'Slight' GUI Modifications 2.0.0
sodium: Sodium 0.3.0+build.488
spark: spark ${pluginVersion}
spruceui: SpruceUI 3.2.0+1.17
starlight: Starlight 1.0.0-RC3+fabric.2b7d7ae
tabtps-fabric: TabTPS 1.3.8
torohealth: ToroHealth Damage Indicators 1.17-fabric-6
voicechat: Simple Voice Chat 1.17.1-1.0.0
wthit: wthit 3.6.1
xaerominimap: Xaero's Minimap 21.12.5.1
xaeroworldmap: Xaero's World Map 1.14.5.2
Launched Version: fabric-loader-0.11.6-1.17.1
Backend library: LWJGL version 3.2.2 build 10
Backend API: AMD Radeon(TM) Graphics GL version 3.2.14739 Core Profile Forward-Compatible Context 21.6.2 27.20.22001.16006, ATI Technologies Inc.
Window size:
GL Caps: Using framebuffer using OpenGL 3.2
GL debug messages:
Using VBOs: Yes
Is Modded: Definitely; Client brand changed to 'fabric'
Type: Client (map_client.txt)
CPU:
Suspected Mods: Fabric Loader (fabricloader)

Allow 1.20.6 - It's just a bug fix

Currently the mod doesn't support 1.20.6 though 1.20.6 is basically a bug fix of 1.20.5, just one change, so update would be appreciated.

[Feature Request]: Allow to set a path instead of different filename format

Hey guys,

I really like this mod and used it a lot since discovering it. On thing that bugs me though is that with every screenshot I take I need to rename them according to the instance I took them with and move them to the appropriate folder.

My request would therefore be the ability to set a custom path for where to save the screenshot with things like {mcversion} and {timestamp} and others as variables for dynamical paths.

Weird pictures when using Nvidium

Hi there,

when I am creating screenshots with this mod and the mod "Nvidium" is enabled too I get weird pictures, where I can see through blocks etc.

Crash in 1.6.2 when taking Fabrishot screenshot

Hey there,

after updating to 1.6.2 I'm getting a reproducible crash when trying to take a screenshot using the mod. I've verified that it works in 1.6.0 with nothing else about my installation different other than the mod version. I also tried setting the newly introduced delay feature to 0 in order to get as close to the old behavior as possible, but the minimum is 3, so it seems I can't "disable" this new feature (although I'm kinda assuming that 3 was just the old default value anyway and has not much to do with the crash).

Here's my crash-log, let me know if you need anything else.

---- Minecraft Crash Report ----
// Hey, that tickles! Hehehe!

Time: 2/6/22, 7:08 PM
Description: Unexpected error

java.lang.IllegalAccessError: class link.infra.screenshotclipboard.FabrishotCompat tried to access private field me.ramidzkh.fabrishot.capture.Dimension.width (link.infra.screenshotclipboard.FabrishotCompat and me.ramidzkh.fabrishot.capture.Dimension are in unnamed module of loader net.fabricmc.loader.impl.launch.knot.KnotClassLoader @45ac5f9b)
	at link.infra.screenshotclipboard.FabrishotCompat.lambda$init$0(FabrishotCompat.java:9)
	at me.ramidzkh.fabrishot.event.FramebufferCaptureCallback.lambda$static$0(FramebufferCaptureCallback.java:40)
	at me.ramidzkh.fabrishot.capture.FramebufferCapturer.capture(FramebufferCapturer.java:81)
	at me.ramidzkh.fabrishot.capture.CaptureTask.onRenderTick(CaptureTask.java:65)
	at me.ramidzkh.fabrishot.Fabrishot.onRenderPreOrPost(Fabrishot.java:79)
	at net.minecraft.class_310.handler$cba000$postRender(class_310.java:9000)
	at net.minecraft.class_310.method_1523(class_310.java:1117)
	at net.minecraft.class_310.method_1514(class_310.java:733)
	at net.minecraft.client.main.Main.main(Main.java:238)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:608)
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:77)
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
	at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:210)
	at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:245)
	at org.multimc.EntryPoint.listen(EntryPoint.java:143)
	at org.multimc.EntryPoint.main(EntryPoint.java:34)


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Thread: Render thread
Stacktrace:
	at link.infra.screenshotclipboard.FabrishotCompat.lambda$init$0(FabrishotCompat.java:9)
	at me.ramidzkh.fabrishot.event.FramebufferCaptureCallback.lambda$static$0(FramebufferCaptureCallback.java:40)
	at me.ramidzkh.fabrishot.capture.FramebufferCapturer.capture(FramebufferCapturer.java:81)
	at me.ramidzkh.fabrishot.capture.CaptureTask.onRenderTick(CaptureTask.java:65)
	at me.ramidzkh.fabrishot.Fabrishot.onRenderPreOrPost(Fabrishot.java:79)

-- Affected level --
Details:
	All players: 1 total; [class_746['manu__faktur'/2183382, l='ClientLevel', x=-5.87, y=128.00, z=-120.21]]
	Chunk stats: 16384, 3653
	Level dimension: minecraft:the_nether
	Level spawn location: World: (0,223,0), Section: (at 0,15,0 in 0,13,0; chunk contains blocks 0,0,0 to 15,255,15), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511)
	Level time: 104620316 game time, 107926596 day time
	Server brand: fabric
	Server type: Non-integrated multiplayer server
Stacktrace:
	at net.minecraft.class_638.method_8538(class_638.java:408)
	at net.minecraft.class_310.method_1587(class_310.java:2402)
	at net.minecraft.class_310.method_1514(class_310.java:757)
	at net.minecraft.client.main.Main.main(Main.java:238)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:608)
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:77)
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
	at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:210)
	at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:245)
	at org.multimc.EntryPoint.listen(EntryPoint.java:143)
	at org.multimc.EntryPoint.main(EntryPoint.java:34)

-- Last reload --
Details:
	Reload number: 1
	Reload reason: initial
	Finished: Yes
	Packs: Default, Fabric Mods, VanillaTweaks_r812586.zip, continuity/default, continuity/glass_pane_culling_fix, firework-rocket-variants-e2050.zip, ore-locator-1-17.zip, replaymod_lang

-- System Details --
Details:
	Minecraft Version: 1.18.1
	Minecraft Version ID: 1.18.1
	Operating System: Windows 10 (amd64) version 10.0
	Java Version: 17.0.1, Eclipse Adoptium
	Java VM Version: OpenJDK 64-Bit Server VM (mixed mode, sharing), Eclipse Adoptium
	Memory: 889411432 bytes (848 MiB) / 2147483648 bytes (2048 MiB) up to 12884901888 bytes (12288 MiB)
	CPUs: 24
	Processor Vendor: AuthenticAMD
	Processor Name: AMD Ryzen 9 3900X 12-Core Processor            
	Identifier: AuthenticAMD Family 23 Model 113 Stepping 0
	Microarchitecture: Zen 2
	Frequency (GHz): 3.80
	Number of physical packages: 1
	Number of physical CPUs: 12
	Number of logical CPUs: 24
	Graphics card #0 name: NVIDIA GeForce RTX 3080
	Graphics card #0 vendor: NVIDIA (0x10de)
	Graphics card #0 VRAM (MB): 4095.00
	Graphics card #0 deviceId: 0x2206
	Graphics card #0 versionInfo: DriverVersion=30.0.15.1165
	Memory slot #0 capacity (MB): 8192.00
	Memory slot #0 clockSpeed (GHz): 2.13
	Memory slot #0 type: DDR4
	Memory slot #1 capacity (MB): 8192.00
	Memory slot #1 clockSpeed (GHz): 2.13
	Memory slot #1 type: DDR4
	Virtual memory max (MB): 36785.00
	Virtual memory used (MB): 22791.67
	Swap memory total (MB): 20480.00
	Swap memory used (MB): 748.31
	JVM Flags: 3 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xms2048m -Xmx12288m
	Fabric Mods: 
		advancementinfo: AdvancementInfo 1.18-fabric0.43.1-1.3
		antighost: AntiGhost 1.18-fabric0.43.1-1.1.4
		authme: Auth Me 2.2.0
		autoreconnect: AutoReconnect 1.3.2
		betterchristmaschests: Better Christmas Chests 3.0.0
		blue_endless_jankson: jankson 1.2.1
		bowinfinityfix: Bow Infinity Fix rv11
		carpet: Carpet Mod 1.4.56
		carpet-extra: Carpet Extra 1.4.56
		carpet-fixes: Carpet Fixes 1.18.1-1.5.1+v220107
		citresewn: CITResewn 0.8.1-1.18
		clear-skies: Clear Skies 2.0.88
		cloth-basic-math: cloth-basic-math 0.6.0
		cloth-config: Cloth Config v6 6.1.48
		continuity: Continuity 1.0.3+1.18
		controlling: Controlling For Fabric 9.0+14
		crowdin-translate: CrowdinTranslate 1.4+1.18
		custom-fog: Custom Fog 2.1.0
		entityculling: EntityCulling-Fabric 1.3.3
		fabric: Fabric API 0.46.4+1.18
		fabric-api-base: Fabric API Base 0.4.2+d7c144a865
		fabric-api-lookup-api-v1: Fabric API Lookup API (v1) 1.5.3+d7c144a865
		fabric-biome-api-v1: Fabric Biome API (v1) 6.0.2+d7c144a865
		fabric-blockrenderlayer-v1: Fabric BlockRenderLayer Registration (v1) 1.1.10+3ac43d9565
		fabric-command-api-v1: Fabric Command API (v1) 1.1.7+d7c144a865
		fabric-commands-v0: Fabric Commands (v0) 0.2.6+b4f4f6cd65
		fabric-containers-v0: Fabric Containers (v0) 0.1.19+d7c144a865
		fabric-content-registries-v0: Fabric Content Registries (v0) 0.4.8+d7c144a865
		fabric-crash-report-info-v1: Fabric Crash Report Info (v1) 0.1.9+3ac43d9565
		fabric-dimensions-v1: Fabric Dimensions API (v1) 2.1.10+a1d9bbf565
		fabric-entity-events-v1: Fabric Entity Events (v1) 1.4.6+d7c144a865
		fabric-events-interaction-v0: Fabric Events Interaction (v0) 0.4.17+d7c144a865
		fabric-events-lifecycle-v0: Fabric Events Lifecycle (v0) 0.2.9+d7c144a865
		fabric-game-rule-api-v1: Fabric Game Rule API (v1) 1.0.11+d7c144a865
		fabric-item-api-v1: Fabric Item API (v1) 1.3.1+691a79b565
		fabric-item-groups-v0: Fabric Item Groups (v0) 0.3.6+3ac43d9565
		fabric-key-binding-api-v1: Fabric Key Binding API (v1) 1.0.9+d7c144a865
		fabric-keybindings-v0: Fabric Key Bindings (v0) 0.2.7+b4f4f6cd65
		fabric-lifecycle-events-v1: Fabric Lifecycle Events (v1) 1.4.13+713c266865
		fabric-loot-tables-v1: Fabric Loot Tables (v1) 1.0.9+d7c144a865
		fabric-mining-level-api-v1: Fabric Mining Level API (v1) 1.0.6+d7c144a865
		fabric-mining-levels-v0: Fabric Mining Levels (v0) 0.1.11+b4f4f6cd65
		fabric-models-v0: Fabric Models (v0) 0.3.4+d7c144a865
		fabric-networking-api-v1: Fabric Networking API (v1) 1.0.19+d7c144a865
		fabric-networking-v0: Fabric Networking (v0) 0.3.6+b4f4f6cd65
		fabric-object-builder-api-v1: Fabric Object Builder API (v1) 1.11.4+d7c144a865
		fabric-object-builders-v0: Fabric Object Builders (v0) 0.7.12+d7c144a865
		fabric-particles-v1: Fabric Particles (v1) 0.2.10+526dc1ac65
		fabric-registry-sync-v0: Fabric Registry Sync (v0) 0.9.2+ad01bfbd65
		fabric-renderer-api-v1: Fabric Renderer API (v1) 0.4.11+b0b66fc365
		fabric-renderer-indigo: Fabric Renderer - Indigo 0.4.15+6825030165
		fabric-renderer-registries-v1: Fabric Renderer Registries (v1) 3.2.10+b4f4f6cd65
		fabric-rendering-data-attachment-v1: Fabric Rendering Data Attachment (v1) 0.3.5+d7c144a865
		fabric-rendering-fluids-v1: Fabric Rendering Fluids (v1) 0.1.19+3ac43d9565
		fabric-rendering-v0: Fabric Rendering (v0) 1.1.12+b4f4f6cd65
		fabric-rendering-v1: Fabric Rendering (v1) 1.10.6+713c266865
		fabric-resource-conditions-api-v1: Fabric Resource Conditions API (v1) 1.0.2+d7c144a865
		fabric-resource-loader-v0: Fabric Resource Loader (v0) 0.4.14+713c266865
		fabric-screen-api-v1: Fabric Screen API (v1) 1.0.8+d7c144a865
		fabric-screen-handler-api-v1: Fabric Screen Handler API (v1) 1.1.12+d7c144a865
		fabric-structure-api-v1: Fabric Structure API (v1) 2.1.3+d7c144a865
		fabric-tag-extensions-v0: Fabric Tag Extensions (v0) 1.2.8+d7c144a865
		fabric-textures-v0: Fabric Textures (v0) 1.0.10+3ac43d9565
		fabric-tool-attribute-api-v1: Fabric Tool Attribute API (v1) 1.3.8+fb3b57b465
		fabric-transfer-api-v1: Fabric Transfer API (v1) 1.5.9+d7c144a865
		fabricloader: Fabric Loader 0.12.12
		fabrishot: Fabrishot 1.6.2
		ftc: Fabric Title Changer 1.0.6
		indium: Indium 1.0.2-alpha1+mc1.18
		inspecio: Inspecio 1.2.1+1.18
		inventoryprofilesnext: Inventory Profiles Next 1.3.0
		itemscroller: Item Scroller 0.15.0
		jankson: Jankson 4.0.0+j1.2.0
		java: OpenJDK 64-Bit Server VM 17
		keepheadnames: Keep Head Names 1.5.1
		keybinds_plus: Keybinds Plus 1.1.0-1.18.1
		lambdynlights: LambDynamicLights 2.1.0+1.17
		lazydfu: LazyDFU 0.1.2
		libgui: LibGui 5.0.0-beta.2+1.18-rc1
		libninepatch: LibNinePatch 1.1.0
		libzoomer: LibZoomer 0.3.0+1.17.1
		litematica: Litematica 0.10.1
		lithium: Lithium 0.7.7
		malilib: MaLiLib 0.11.6
		me_hypherionmc_simple-rpc-common: simple-rpc-common 1.0.17
		minecraft: Minecraft 1.18.1
		minihud: MiniHUD 0.21.3
		mm: Manningham Mills 2.3
		modmenu: Mod Menu 3.0.1
		namepain: Name Pain 1.4.0
		noexpensive: NoExpensive 1.18-Fabric-1.2.0
		okzoomer: Ok Zoomer 5.0.0-beta.3+1.17.1
		org_aperlambda_lambdajcommon: lambdajcommon 1.8.1
		org_joml_joml: joml 1.10.2
		org_quiltmc_quilt-json5: quilt-json5 1.0.0
		phosphor: Phosphor 0.8.1
		pride: Pride Lib 1.1.0+1.17
		replaymod: Replay Mod 1.18.1-2.6.3
		screenshotclipboard: Screenshot to Clipboard 1.0.7
		shulkerboxtooltip: Shulker Box Tooltip 3.0.5+1.18
		simple-rpc: Simple Rpc 2.7.1
		sodium: Sodium 0.4.0-alpha6+build.14
		spruceui: SpruceUI 3.3.0+1.17
		stendhal: Stendhal 1.2.0-1.18
		tweakeroo: Tweakeroo 0.12.2
	Launched Version: MultiMC5
	Backend library: LWJGL version 3.2.2 build 10
	Backend API: NVIDIA GeForce RTX 3080/PCIe/SSE2 GL version 3.2.0 NVIDIA 511.65, NVIDIA Corporation
	Window size: 2560x1440
	GL Caps: Using framebuffer using OpenGL 3.2
	GL debug messages: 
	Using VBOs: Yes
	Is Modded: Definitely; Client brand changed to 'fabric'
	Type: Client (map_client.txt)
	Graphics mode: fabulous
	Resource Packs: vanilla, Fabric Mods, file/VanillaTweaks_r812586.zip, continuity/default, continuity/glass_pane_culling_fix, file/firework-rocket-variants-e2050.zip (incompatible), file/ore-locator-1-17.zip (incompatible)
	Current Language: English (US)
	CPU: 24x AMD Ryzen 9 3900X 12-Core Processor 

Cannot Automatically Hide HUD Completely When Using this Mod with JourneyMap

MC Version: 1.20.5
Fabrishot Version: 1.13.0
JourneyMap Version: 5.9.29

This is the config.

#Fabrishot screenshot config
#Sun Mar 03 20:23:32 CST 2024
custom_file_name=huge_%time%
delay=3
disable_gui_scaling=false
file_format=PNG
height=4320
hide_hud=true
override_screenshot_key=false
save_file=true
width=7680

And, this is the result.
huge_2024-05-01_20 39 48

[Bug] New Option Wrongly Formatted

Both the Title and the Tooltip text for the new "Screenshot Format" option are wrongly specified to be the exact same as the "Capture Delay" option.

badOptions

Taking a screenshot changes game resolution

I noticed that when taking a screenshot with this mod, the resolution of the game changes to whatever your screenshot size is until you resize the window. This is really noticeable if your screenshot resolution is set to something less than your screen size.

System details in case it matters: I am on an Intel MacBook Pro, using 1.19.3 with Fabric and not running Sodium or Optifine, have the game resolution at 3584 by 2240, and screenshot resolution set to 1920 by 1200. Taking a screenshot causes the game to resize to the bottom left quadrant of the game window.

Config menu doesn't exist

Note: I might just be stupid and don't know where the config menu is, but anyways

I don't believe the config file for this mod exists in the 1.18 version. It's not in the config folder in .minecraft. That's kinda it.

Option for Delay

Hey there, I have a feature request I don't know if you'd be willing to implement or not. So basically, I want to be able to set a small delay before the screenshot is actually taken (but AFTER the resolution is set). That way, when using shaderpacks that have an auto exposure feature, it has time to fix the exposure before the screenshot is taken. As of right now, with this feature enabled, screenshots look like so:
huge_2022-02-04_15 25 58

Anywhere from 3-10 seconds should be plenty, but I figure a configurable option from 0-15 could be perfect

If no, no worries! But just wanted to throw this idea out there, thanks for your work on this mod!!

[Feature Request]: Custom or More Detail in Snapshot file name

Hi. Right now the resultant name from a snapshot (assuming default 4k) is

eg. huge_2022-03-16_{time_stamp}.png

At least, I would like the ModPackName and WorldName included, as it is far more descriptive, and maybe other namings could be included in settings panel depending on end use.

{ModPackName} (optional)__{WorldName}{PlayerName}_(optional)__{Date:Time}

Maybe {ServerName}(optional) for server admins/moderators who might need to take screenshots for any reason.

I may for some reason want to move the screenshots I take in individual instances and modpacks and put them in my general Images/Games/Minecraft folder, where you might see that the current naming convention wouldn't mean much in the long run, as I will delete or uninstall past modpacks and wouldn't want to try to remember or rename where these snapshots came from.

Also, perhaps some file format options to save to more compressed formats like the usual jpg, and newer *.webm if uploading to web, and newer compression formats *.avif and *.heic if desired and time allows.

Just adding to the original poster's thoughts as to why more naming conventions would be handy.

Screenshot bug

fabrishot-1.9.2.jar
Minecraft Version 1.19.4
I took several screenshots, all like this

huge_2023-05-28_14 08 19

Support 1.19.4 on Modrinth (and CurseForge, probably?)

This mod works on 1.19.4, but Modrinth doesn't know it yet, and this fact kinda is preventing users who don't know it to use it.

So, yeah, probably the latest version should be marked as compatible with the latest update.

Sometimes screenshots are at normal resolution

I set my desired screenshot size to 15360x8640, because why not? It froze my client for a bit, but I figured that was because Fabrishot has a mandatory 3-frame waiting period even when I have no shader mods. But the screenshot that came out was 854x480 - probably because I exited fullscreen while waiting for Minecraft to unfreeze.

I think this issue could be solved by removing the minimum 3-frame waiting period.

Either that or mixin to (mix into?) the code that listens to window resizes and make it return early if Fabrishot is currently about to create a screenshot.

Or preferably both.

Item info won't show in large screenshots

In both images, I was hovering my cursor over the spruce door.
The first image was taken using Fabricshot 1.20.1 v1.10.0 and the second was taken with the mod disabled.
In both images, my cursor is hovering over the item.

2023-08-07_17 02 29_huge
2023-08-07_17 02 14

[Feature Request]: Keep GUI size in high resolution screenshots

When I take a 4k screenshot, the GUI, such as my hotbar & crosshair, doesn't scale properly with the screenshot and it makes it look rather weird.

I think it would be nice to have an option to have the GUI size remain the same, but have the main content of the image be taken at 4k. I believe Optifine's x4 screenshot feature does this by default.

Name of saved pictures

I want the pictures to be saved with a normal name, without adding "huge". Can you do this option? Since with "huge", finding new pictures for me becomes more difficult or make a separate folder for saving pictures with your mod.
2023-05-28_131348

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.