cyclopsmc / iconexporter Goto Github PK
View Code? Open in Web Editor NEWExports item and block icons to files
License: MIT License
Exports item and block icons to files
License: MIT License
Sometimes this mod will encounter items that cannot be exported properly. And when it happens, the mod simply stops the whole exporting process and show a message:"Error while exporting". This is annoying when users have a lot of items from hundreds of mods to export.
So, could you please remove the feature that will stop the process when encountering a small error? Maybe by replacing with a log or something alike that reports items are going wrong?
Pretty please?
Crash
Can't render
1.16.5 1.2.3
Would you please use text files to record NBT tags of items instead of printing them on file names?
Since some OS and FS put a limit on the length of file name, it seems not convenient to simply export long NBT tags in file names. So such a long file name may raise an IOException when writing files.
The situation described above is possible when the user is working with mods such as TinkersConstruct, whose items always contain long NBT tags. A NBT tag of a tool from TinkersConstruct can easily reach 300 or more ASCII characters, and it will always get involved in task list when the user tries to export. It would get worse if the user installed some addons for TinkersContruct such as TAIGA and plusTiC.
No matter which modpack or version i use it always ends up with quitting the game with a crash.
When I try to export all the icons, there is one and only one item that is displayed incorrectly, and that item is ominous_banner.
/iconexporter export
Export is complete and error free
1.2.4
1.20.1
47.1.47
[18:24:21] [Render thread/ERROR] [iconexporter/]: Error while writing the PNG image for key minecraft__white_banner__{BlockEntityTag__{Patterns__[{Color__9,Pattern__'mr'},{Color__8,Pattern__'bs'},{Color__7,Pattern__'cs'},{Color__8,Pattern__'bo'},{Color__15,Pattern__'ms'},{Color__8,Pattern__'hh'},{Color__8,Pattern__'mc'},{Color__15,Pattern__'bo'}],id__'minecraft__banner'},HideFlags__32,display__{Name__'{'color'__'gold','translate'__'block.minecraft.ominous_banner'}'}}
[18:24:21] [Render thread/INFO] [minecraft/ChatComponent]: [System] [CHAT] Error while exporting
java.io.IOException: εζΈι―θͺ€γ
at java.base/java.io.WinNTFileSystem.canonicalize0(Native Method)
at java.base/java.io.WinNTFileSystem.canonicalize(WinNTFileSystem.java:462)
at java.base/java.io.File.getCanonicalPath(File.java:626)
at java.base/java.io.File.getCanonicalFile(File.java:651)
at TRANSFORMER/iconexporter@1.2.4/org.cyclops.iconexporter.client.gui.ImageExportUtil.exportImageFromScreenshot(ImageExportUtil.java:48)
at TRANSFORMER/iconexporter@1.2.4/org.cyclops.iconexporter.client.gui.ScreenIconExporter.lambda$createExportTasks$1(ScreenIconExporter.java:120)
at TRANSFORMER/iconexporter@1.2.4/org.cyclops.iconexporter.client.gui.ScreenIconExporter.m_88315_(ScreenIconExporter.java:62)
at TRANSFORMER/minecraft@1.20.1/net.minecraft.client.gui.screens.Screen.m_280264_(Screen.java:109)
at TRANSFORMER/forge@47.1.47/net.minecraftforge.client.ForgeHooksClient.drawScreenInternal(ForgeHooksClient.java:427)
at TRANSFORMER/forge@47.1.47/net.minecraftforge.client.ForgeHooksClient.drawScreen(ForgeHooksClient.java:420)
at TRANSFORMER/minecraft@1.20.1/net.minecraft.client.renderer.GameRenderer.m_109093_(GameRenderer.java:965)
at TRANSFORMER/minecraft@1.20.1/net.minecraft.client.Minecraft.m_91383_(Minecraft.java:1146)
at TRANSFORMER/minecraft@1.20.1/net.minecraft.client.Minecraft.m_91374_(Minecraft.java:718)
at TRANSFORMER/minecraft@1.20.1/net.minecraft.client.main.Main.main(Main.java:218)
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 MC-BOOTSTRAP/fmlloader@1.20.1-47.1.47/net.minecraftforge.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:111)
at MC-BOOTSTRAP/fmlloader@1.20.1-47.1.47/net.minecraftforge.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:99)
at MC-BOOTSTRAP/fmlloader@1.20.1-47.1.47/net.minecraftforge.fml.loading.targets.CommonClientLaunchHandler.lambda$makeService$0(CommonClientLaunchHandler.java:25)
at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30)
at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53)
at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71)
at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.Launcher.run(Launcher.java:108)
at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.Launcher.main(Launcher.java:78)
at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26)
at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23)
at cpw.mods.bootstraplauncher@1.1.2/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141)
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 io.github.zekerzhayard.forgewrapper.installer.Main.main(Main.java:58)
at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:88)
at org.prismlauncher.EntryPoint.listen(EntryPoint.java:126)
at org.prismlauncher.EntryPoint.main(EntryPoint.java:71)
Some fluid when rendered has incorrect color
For example: In-game fluid: Molten Glass (Tinkers' Construct)
Rendered Fluid:
Note that other fluids are rendered just fine.
Others incorrect color fluids include Molten Silver and Molten Tin (although you may need to get Thermal Foundation or Mekanism to see it)
/iconexporter export 128
)There is a way to get png icon from player head? i've about 200 players to get they head icons, but i dont know how can i do this. If i create the head, when i export, this mod will get this "item"? or only vanila default itens?
Incorrect lighting is used on the 1.15 version. The GUI lighting was changed from 1.14, but the exported icons don't reflect this
The exported icon should have identical lighting to the in-game icons
Blocks that are partially transparent, such as stained glass, are not rendered with partial transparency, their icons are completely opaque.
/iconexporter export
command, no configuration is needed.minecraft__green_stained_glass.png
, in the icon-exports-x32
folder (or other folder for other resolutions).The image must be partially transparent, like it is in Minecraft itself. This can be noticed if picking a semi-transparent block from the inventory and dragging it around the screen. Under the default resource pack, the hotbar has a translucent background as well, so turning the camera around while such a block is in the hotbar also affects the blockβs on-screen appearance. Obviously, the regular inventory slotβs background does that too.
Sites such as the Minecraft Wiki, the FTB Wiki, and the Official Aether Project Wiki display inventory icons in a similar fashion to the game (often using the solid gray background) and thus expect icons to be semi-transparent (example). This means that fixing the issue would greatly improve the modβs usefulness for such projects, especially mod wikis.
Not a crash.
When trying to run an export of my own custom modpack, it crashes somewhere halfway through all the items with the above exception. Crashlog will provide more detail.
/iconexporter export 128
.filenameHash and different size 64 did not seem to matter. I checked disk space, which is not an issue.
I tried disabling the mod that it seemed to crash on (MrCrayfish's Furniture Mod, furniture-7.0.0-pre20-1.16.3.jar), however the crash appeared even with that mod disabled. Could be that I have multiple mods being buggy.
Ideally it would render the item in question without issue.
Alternatively, when a single item fails to render, it should catch the exception and continue on with the rest of the items.
https://gist.github.com/Tethik/922db13d79b32a141465c4a279514a6e
Thanks for your useful mod <3
Items with slashes in their key don't export, such as spawn eggs in Occultism (ATM9 modpack)
It should export the texture
Relevant error: https://pastebin.com/74r2kWt3
I think the correct course of action would be to replace slashes by ___
(to avoid confusion with other separators) at
Follow up on the issue I encountered using IconExporter 1.2.0 for MC 1.12.2, I got the same issue when I use dthe latest version of the mod for MC 1.19
Some items such as Stained Glass, Ice or Honey when rendered appear to have a black background
Here are some transparent items affected by this issue and some that are not.
/iconexporter export 64
)Hi there.
i have a Feature request to make :
"the possibility to select separate mods for export icons"
It a pain in the ass when i add a new mod and i need the icon for it
when you need to export it al again :/
I know i can just create a new minecraft profile and do only that mod
but it a bit Easier and less work.
Thanks !
Buck
[14:45:02] [Client thread/INFO] [journeymap]: JourneyMap: Press [J]
[14:45:04] [Server thread/WARN] [net.minecraft.server.MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 3043ms behind, skipping 60 tick(s)
[14:45:04] [Server thread/INFO] [net.minecraft.server.integrated.IntegratedServer]: Saving and pausing game...
[14:45:04] [Server thread/INFO] [net.minecraft.server.MinecraftServer]: Saving chunks for level 'New World'/overworld
[14:45:05] [Server thread/INFO] [net.minecraft.server.MinecraftServer]: Saving chunks for level 'New World'/Storage Cell
[14:45:12] [Client thread/INFO] [net.minecraft.client.gui.GuiNewChat]: [CHAT] Error while exporting
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: java.io.IOException: The parameter is incorrect
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at java.io.WinNTFileSystem.canonicalize0(Native Method)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at java.io.WinNTFileSystem.canonicalize(Unknown Source)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at java.io.File.getCanonicalPath(Unknown Source)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at java.io.File.getCanonicalFile(Unknown Source)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at org.cyclops.iconexporter.client.gui.ImageExportUtil.exportImageFromScreenshot(ImageExportUtil.java:46)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at org.cyclops.iconexporter.client.gui.GuiIconExporter.lambda$createExportTasks$0(GuiIconExporter.java:78)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at org.cyclops.iconexporter.client.gui.GuiIconExporter.func_73863_a(GuiIconExporter.java:48)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at net.minecraftforge.client.ForgeHooksClient.drawScreen(ForgeHooksClient.java:396)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at net.minecraft.client.renderer.EntityRenderer.func_181560_a(EntityRenderer.java:1124)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:1119)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:3942)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at net.minecraft.client.main.Main.main(SourceFile:123)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at java.lang.reflect.Method.invoke(Unknown Source)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
[14:45:12] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
[14:45:24] [Server thread/INFO] [net.minecraft.server.integrated.IntegratedServer]: Saving and pausing game...
[14:45:25] [Server thread/INFO] [net.minecraft.server.MinecraftServer]: Saving chunks for level 'New World'/overworld
[14:45:25] [Server thread/INFO] [net.minecraft.server.MinecraftServer]: Saving chunks for level 'New World'/Storage Cell
[14:45:32] [Client thread/INFO] [net.minecraft.client.gui.GuiNewChat]: [CHAT] Error while exporting
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: java.io.IOException: The parameter is incorrect
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at java.io.WinNTFileSystem.canonicalize0(Native Method)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at java.io.WinNTFileSystem.canonicalize(Unknown Source)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at java.io.File.getCanonicalPath(Unknown Source)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at java.io.File.getCanonicalFile(Unknown Source)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at org.cyclops.iconexporter.client.gui.ImageExportUtil.exportImageFromScreenshot(ImageExportUtil.java:46)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at org.cyclops.iconexporter.client.gui.GuiIconExporter.lambda$createExportTasks$0(GuiIconExporter.java:78)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at org.cyclops.iconexporter.client.gui.GuiIconExporter.func_73863_a(GuiIconExporter.java:48)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at net.minecraftforge.client.ForgeHooksClient.drawScreen(ForgeHooksClient.java:396)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at net.minecraft.client.renderer.EntityRenderer.func_181560_a(EntityRenderer.java:1124)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:1119)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:3942)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at net.minecraft.client.main.Main.main(SourceFile:123)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at java.lang.reflect.Method.invoke(Unknown Source)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
[14:45:32] [Client thread/INFO] [STDERR]: [org.cyclops.iconexporter.client.gui.GuiIconExporter:func_73863_a:51]: at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
[14:45:59] [Server thread/INFO] [net.minecraft.server.integrated.IntegratedServer]: Saving and pausing game...
[14:45:59] [Server thread/INFO] [net.minecraft.server.MinecraftServer]: Saving chunks for level 'New World'/overworld
[14:45:59] [Server thread/INFO] [net.minecraft.server.MinecraftServer]: Saving chunks for level 'New World'/Storage Cell
Would you please add a feature that can export locallized names of items along with icons and NBT tags?
Sometimes users might need locallized names of items. For example, when ops want to make a shopping list for a server with economy system, it would be convenient to have locallized names exported along with icons and NBT tags, both for ops and other players.
Pretty please?
No log, only π₯ before log
Version: 1.2.1 on 1.16.4
I'm trying to export icons of 32x32 size, but when I type /iconexporter export 32, the resulting icons are 80x80. When I try 16, the icons are 40x40. With 2, they're 5x5. The pattern seems to be scale*2.5 = final dimensions, which would mean that I'd need a scale of 12.8 to get 32x32 icons. Because the command only accepts integral values, I attempted the command with 13, but the resulting folder was labelled "12x" and produced 30x30 icons.
ITS THE SAME AS THE TITLE!
JUST RUN THE EXPORT COMMAND OKAY?!?!!!
TO MAKE THE DAMN ICONS LIKE THE MOD SAID IT WOULD
LATEST OKAY, STOP BEING SO NEEDY
It is... Minecraft crash. Maybe on TE florb rendering.
Normal export without crash
A bug where nothing is generated when I run the export command (checked my minecraft playfolder after its done exporting
The iconexporter
command is not available on a dedicated server. Seems like it is simply not registered. Works fine in single player.
iconexporter
command. It says that the command is unknown.Register command so it is available on dedicated server as well.
Not required
After trying to render, the resulting were only the top left.
Run /iconexporter export [any scale]
The images should be the full sprite/model, not a portion.
The bug appears when the mod render enchanted book. The game crashes and stop.
Command /iconexporter export.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. πππ
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google β€οΈ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.