shsupercm / citresewn Goto Github PK
View Code? Open in Web Editor NEWFabric implementation of mcpatcher's cit
License: MIT License
Fabric implementation of mcpatcher's cit
License: MIT License
I'm trying to enable BetterVanillaBuilding with Resewn but loading times are infinite (or just very long).
Logs read:
[23:38:20] [Worker-Main-1/WARN]: File ostoverhaul:sounds/music/withering_charge.ogg does not exist, cannot add it to event ostoverhaul:withering_charge
[23:38:20] [Worker-Main-1/WARN]: File ostoverhaul:sounds/music/withering.ogg does not exist, cannot add it to event ostoverhaul:withering
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 74 in file 'minecraft:optifine/ctm/zsmalloverlays/odirt/dirt.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 80 in file 'minecraft:optifine/ctm/zsmalloverlays/pcoarse dirt/coarsedirt.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 81 in file 'minecraft:optifine/ctm/zsmalloverlays/qpodzol/podzol.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 82 in file 'minecraft:optifine/ctm/zsmalloverlays/rclay/clay.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 83 in file 'minecraft:optifine/ctm/zsmalloverlays/smycelium/mycelium.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 84 in file 'minecraft:optifine/ctm/zsmalloverlays/tgrass_overlay/grass_block.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 83 in file 'minecraft:optifine/ctm/zsmalloverlays/tgrass_overlay_bottom/grass.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 84 in file 'minecraft:optifine/ctm/zsmalloverlays/tgrass_overlay_side/grass.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 84 in file 'minecraft:optifine/ctm/zsmalloverlays/tsnow_grass/grasssnow.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 84 in file 'minecraft:optifine/ctm/zsmalloverlays/tsnow_grass/snow.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 84 in file 'minecraft:optifine/ctm/zsmalloverlays/tsnow_grassside/grasssnow.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 84 in file 'minecraft:optifine/ctm/zsmalloverlays/tsnow_grassside/snow.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 85 in file 'minecraft:optifine/ctm/zsmalloverlays/tycrimson/crimson.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 84 in file 'minecraft:optifine/ctm/zsmalloverlays/tycrimson_side/crimson.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 86 in file 'minecraft:optifine/ctm/zsmalloverlays/tzwarped/warped.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 85 in file 'minecraft:optifine/ctm/zsmalloverlays/tzwarped_side/warped.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 87 in file 'minecraft:optifine/ctm/zsmalloverlays/ugravel/gravel.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 65 in file 'minecraft:optifine/ctm/zsmalloverlays/vred_sand/redsand.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 66 in file 'minecraft:optifine/ctm/zsmalloverlays/wsand/sand.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_block_snow' in 'matchBlocks' element 'grass_block_snow' at index 76 in file 'minecraft:optifine/ctm/zsmalloverlays/ysnow/snow.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 91 in file 'minecraft:optifine/ctm/zsmalloverlays/ysnow/snow.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_block_snow' in 'matchBlocks' element 'grass_block_snow' at index 77 in file 'minecraft:optifine/ctm/zsmalloverlays/zhay/hay.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/WARN]: Invalid block 'minecraft:grass_path' in 'matchBlocks' element 'grass_path' at index 92 in file 'minecraft:optifine/ctm/zsmalloverlays/zhay/hay.properties' in pack 'BetterVanillaBuildingV2.63.zip'
[23:38:20] [Worker-Main-1/INFO]: [citresewn] Parsing CITs...
Should also probably reorder the mixins into packages.
I am trying to use this with the EcoEnchants plugin, but items that have an enchant from the plugin applied don't seem to change their texture. Works fine with opti, and I'm not sure what other things break due to this.
If im turning on "allow broken paths in ressourcepacks" I can use my ressourcepack in singleplayer and it workes fine. (need to toggle this to on otherwise it wont load)
If im joining my server(which forces the server texturepack [same as in singleplayer] ), the ressourcepack gets applied but CIT isnt working. On renaming Items, the CIT is there for a milisecond then the items looks like normal.
Caching the cit on the itemstack should yield much better performance in theory.
For example: texture=assets/minecraft/textures/item/fortune3.png
This happens with the following resource pack:
https://www.curseforge.com/minecraft/texture-packs/xalis-enchanted-books
Regarding #3, I understand and appreciate the approach you took in not implementing broken behaviour, however a crash is a bad UX either way.
Have you considered adding a feature that makes broken resource packs behave like vanilla's "incompatible" - disabled on start and show an exclamation mark with a tooltip in resource pack list?
That way users could easily know
without having to try and decipher the crash.
Fails to load certain resourcepacks, such as New Default+, when coupled with Colormatic.
CIT Resewn doesn't seem to recognize this resource pack
GearsPlus 1.17
https://www.planetminecraft.com/texture-pack/vanilla-more-items-armor-shields-and-more/
P.S. There's a configure button for CIT Resewn on the Fabric API where clicking it leads to a "saving world" screen before CTD.
Hi, I tried a texturepack called "3.0.3 Visual Enchantments" https://www.curseforge.com/minecraft/texture-packs/visual-enchantments and most of the things worked fine but the trident texture didnt work, could I get some help to solve this or a reason for it not working maybe, the mod is amazing by the way, im happy that most of the things on the pack work thanks to this :D
Resource reload fails on packs where a .properties file seemingly contains a non alphanumeric or comma/underscore/dash character.
The error line shows like this:
java.util.concurrent.CompletionException: net.minecraft.class_151: Non [a-z0-9/._-] character in path of location: minecraft:optifine/cit/custom elytras/after2020/a.properties
The file's contents are these (a.properties):
type=elytra
matchItems=minecraft:elytra
texture=a
nbt.display.Name=iregex:(crimson elytra)
Another example (dancer's sword.properties; another error caught with another pack):
type=item
items=minecraft:diamond_sword minecraft:netherite_sword
model=optifine/cit/models/melee_scale_x32_dancer's_sword
texture=dancer's_sword
nbt.display.Name=pattern:Dancers Sword
Using the New Default+ texture pack with Broken Paths did in fact allow the game to load up, but seeing certain CIT textures such as the "Piglin Brute Netherite Helmet" (yes its specific but its how it crashed the first time).
The error log is as follows:
20:49:07.744
net.minecraft.class_310
Render thread
Reported exception thrown!
net.minecraft.class_148: Registering texture
at net.minecraft.class_757.method_3192(class_757.java:883)
at net.minecraft.class_310.method_1523(class_310.java:1112)
at net.minecraft.class_310.method_1514(class_310.java:728)
at net.minecraft.client.main.Main.main(Main.java:217)
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)
Caused by: net.minecraft.class_151: Non [a-z0-9/._-] character in path of location: minecraft:optifine/cit/models/new_default+_dungeons/armor_models/piglin_brute_armor_1.png.mcmeta
at net.minecraft.class_2960.(class_2960.java:41)
at net.minecraft.class_2960.(class_2960.java:50)
at net.minecraft.class_3294.method_14473(class_3294.java:170)
at net.minecraft.class_3294.method_14486(class_3294.java:50)
at net.minecraft.class_3304.method_14486(class_3304.java:62)
at net.minecraft.class_1049$class_4006.method_18156(class_1049.java:81)
at net.minecraft.class_1049.method_18153(class_1049.java:57)
at net.minecraft.class_1049.method_4625(class_1049.java:28)
at net.minecraft.class_1060.method_24303(class_1060.java:96)
at net.minecraft.class_1060.method_4616(class_1060.java:68)
at net.minecraft.class_1060.method_4619(class_1060.java:118)
at net.minecraft.class_4668$class_4683.method_23563(class_4668.java:238)
at net.minecraft.class_4668.method_23516(class_4668.java:36)
at com.google.common.collect.ImmutableList.forEach(ImmutableList.java:408)
at net.minecraft.class_1921$class_4687.method_23595(class_1921.java:929)
at net.minecraft.class_4668.method_23516(class_4668.java:36)
at net.minecraft.class_1921.method_23012(class_1921.java:727)
at net.minecraft.class_4597$class_4598.method_22994(class_4597.java:96)
at net.minecraft.class_4597$class_4598.method_24213(class_4597.java:75)
at java.base/java.util.Optional.ifPresent(Optional.java:178)
at net.minecraft.class_4597$class_4598.method_22993(class_4597.java:72)
at net.minecraft.class_490.method_2486(class_490.java:155)
at net.minecraft.class_481.method_2389(class_481.java:779)
at net.minecraft.class_465.method_25394(class_465.java:101)
at net.minecraft.class_485.method_25394(class_485.java:43)
at net.minecraft.class_481.method_25394(class_481.java:690)
at net.minecraft.class_757.method_3192(class_757.java:874)
... 10 more
hi there i was wondering if this mod added support for varied mob textures so i can run this resource pack - if not do you know of a mod that does?
https://www.planetminecraft.com/texture-pack/recrafted-mobs/
Logs: latest.log
This resourcepack has an uppercase letter in one of the folder and softcrashes CIT Resewn
Instead of falling back to my previous resource pack configuration, CIT Resewn disabled all my resource packs, which was quite a bit annoying (I use many so that takes many clicks and a reload to undo)
I believe that resource pack (minimally) works on OptiFine, so in theory it might be considered a bug
Also the "Resource Pack Failed To Load" message fades away too fast in my opinion, and does not tell it's CIT Resewn giving you that message, so it took me a while to figure out who was causing it. Would be cool if that message included the mod name too or something.
TL;DR: If any of the following are possible:
Dynamic registry with utility parsers.
Title.
The CurseForge page has a nice description, it would be nice if it was copy/pasted to the README.md
Will fix multiple issues such as:
Skipping sub cit: No such sub item model "bow_pulling_0" in Squishy's+Enchanted+Items.zip -> optifine/cit/0_bow/properties/flame.properties
Bow pulling item textures are throwing errors in this resource pack:
https://www.curseforge.com/minecraft/texture-packs/squishys-enchanted-bows
Optifines Anim and by extension anim.properties fall very closely to CIT, allowing for overriding the armor model and such, might make sense to include it here instead of a separate mod
Triggered by:
/give @a minecraft:enchanted_book
Logs attached - modlist and resourcepack visible inside.
2021-09-15-7.log.gz
crash-2021-09-15_21.47.05-client.txt
Instance exported from GDLauncher (FTB format?): Modded Client-Only 1.17.1-1.01.zip
In the logs: [citresewn] Parsing CITs...
is the last message before it loads for a looong time
The following resource pack fails to load due to having spaces in some asset names
UltimaCraft_Enchantments_(b.1.0).zip (https://www.curseforge.com/minecraft/texture-packs/ultimacraft-enchantments)
Obviously the pack works with OF.
See full log below
selected resourcepacks
java.util.concurrent.CompletionException: net.minecraft.class_151: Non [a-z0-9/._-] character in path of location: minecraft:optifine/cit/enchanted_items/armor/05-aqua_affinity/diamond_armor_aqua affinity.properties
at Not Enough Crashes deobfuscated stack trace.(1.17+build.10) ~[?:?]
at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:314) ~[?:?]
at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:319) ~[?:?]
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1766) ~[?:?]
at java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1756) ~[?:?]
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:295) ~[?:?]
at java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1016) ~[?:?]
at java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1665) ~[?:?]
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1598) ~[?:?]
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183) ~[?:?]
Caused by: net.minecraft.class_151: Non [a-z0-9/._-] character in path of location: minecraft:optifine/cit/enchanted_items/armor/05-aqua_affinity/diamond_armor_aqua affinity.properties
at net.minecraft.util.Identifier.<init>(Identifier:41) ~[?:?]
at net.minecraft.util.Identifier.<init>(Identifier:50) ~[?:?]
at net.minecraft.resource.ZipResourcePack.findResources(ZipResourcePack:134) ~[?:?]
at shcm.shsupercm.fabric.citresewn.pack.CITParser.parse(CITParser.java:40) ~[CITResewn-0.4.4.jar:?]
at net.minecraft.client.render.model.ModelLoader.handler$znd000$addCITModels(ModelLoader:1142) ~[?:?]
at net.minecraft.client.render.model.ModelLoader.addModel(ModelLoader:465) ~[?:?]
at net.minecraft.client.render.model.ModelLoader.<init>(ModelLoader:193) ~[?:?]
at net.minecraft.client.render.model.BakedModelManager.prepare(BakedModelManager:52) ~[?:?]
at net.minecraft.client.render.model.BakedModelManager.prepare(BakedModelManager:19) ~[?:?]
at net.minecraft.resource.SinglePreparationResourceReloader.method_18791(SinglePreparationResourceReloader:11) ~[?:?]
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1764) ~[?:?]
... 6 more
This is probably a user error since armor and elytra textures seem to work for others. However my armor textures aren't being displayed and no errors are shown in logs.
As an example, this .properties file is in assets/minecraft/optifine/cit/armor:
type=armor
items=iron_chestplate
texture=assets/minecraft/textures/models/armor/golem_heart_layer_1.png
nbt.display.Name:ipattern:*Golem Heart Chestplate*
Yet doesn't show in game. This was working just fine in optifine.
Just simply doesnt let Ghoulcraft's CIT appear.
The sub item system should probably be rewritten with predicates in mind.
So instead of mapping baked sub models to cits for the real time conversions, explicitly map sub model names to model overrides and then mixinto the HEAD
in the item renderer injection before vanilla overrides are tested and apply model override predicates from the cit, then just return early to boost performance.
When used alongside https://www.curseforge.com/minecraft/mc-mods/cosmetic-armor-fabric , CIT armor used in cosmetic slots doesn't appear as its CIT, and instead appears as its default item, is this possible to add compat for?
MC 1.17.1
Fabric API 0.40.1
CIT Resewn 0.7.1
Tested with these resource packs:
Kal's Expanded Armory
xali's Potions
Improved Elytras+
Elytras+ - More Elytras!
Examples:
Elytras change appearance properly when worn and dropped, but not while viewed in the inventory/on the hotbar.
Potions change appearance properly when held and dropped, but not while viewed in the inventory/on the hotbar.
It would be nice to be able to downloads releases from the Releases tab
Github actions automatically compiles on every commit pushed to github. This makes getting development versions easier.
For more info go to the Actions tab
All texture properties are ignored if models are specified.
Need to find a way to use the texture properties as an override map when model is specified.
(Opened after discussion in #32)
Hi, this mod doesnt work with a Resource Pack called Alittl Axolotl & Friends- Animated 3D bucket friends! [Java Version], i checked, and it has CIT folder with properties files.
I know it's a lot of work to maintain two versions, so it's alright if you don't want to do this.
Unfortunately, I'm not too familiar with Fabric, or even Java, otherwise I'd try to do this myself.
I attempted changing the versions in the gradle.properties
, and got these errors: https://termbin.com/6pn2.
This partially works, but skips a lot of resources and breaks with others
https://compliancepack.net/addons#/ColorCorkination
latest.log
Testing on a fresh Minecraft installation using MultiMC 5
Minecraftion version 1.17.1
Fabric Loader 0.11.6
CIT Resewn 0.3.0
Mizuno's CIT pack 1.0 (for 1.16.4) https://mizunomcmemo.blogspot.com/p/resourcepack.html
Test object was a torch, renamed to Torch_0. No change, either in inventory or item frame.
Are there other dependencies I'm missing?
Is mizuno somehow particularly incompatible?
Im not sure what the issue is because it works fine on vanilla 1.17
MonumentaRP_v2.3.2.zip
Animated texture overlays for enchanted items, e.g. sword with fire aspect, are not working for this resource pack:
https://resource-pack.com/enchantment-textures-resource-pack-1-16-3/
relevant files for fire aspect in:
assets\minecraft\optifine\cit\items\17fa\
Recently I downloaded a pack and it works with Optifine, but not CIT Resewn. It uses NBT data, here's the file:
type=item
items=suspicious_stew
nbt.Effects.0.EffectId=iregex:(23)
Seems like the whole nbt part of the CIT thing isn't yet finished, just wanted to make sure it was known that it isn't. I know people have done things like NBT Crafting, not sure if that would be of any help or not but it's there if you want a guide on how to do it ๐
EDIT: TO be clear, the nbt is trying to work. But they all show up as the same stew regardless of what the nbt says :/
Thanks for taking the time to add cosmetic armor support!
As title states though, Elytras don't seem to work with it... Is it possible to fix this?
Examples:
If nothing is in the main slot, but an elytra is in the cosmetic slot, nothing appears.
If an elytra is in the main slot, and the CIT elytra is in the cosmetic slot, it appears.
If a chestplate is in the main slot, and a CIT elytra is in the cosmetic slot, nothing appears, or sometimes, the Elytra will display but without the CIT
Need to implement
Stay True Resourcepack (connected textures) are not working. I have Iris -Sodium, but also have Indium and a couple more totaling to 34 or something mods.
Log:
2021-10-12-7.log.gz
A friend of mine pointed to me that the texture pack "3.0.3 Visual Enchantments" https://www.curseforge.com/minecraft/texture-packs/visual-enchantments has 3d tridents, I know the issue was just fixed for the textures, tought I'd point out this too, btw thanks a lot for fixing the texture issue :D
It seems like some of the cit properties are not working correctly as they should.
Using latest CITResewn version.
"tile" as a replacement for "texture" gives an error: "Skipped CIT: Cannot resolve path for model/texture"
"regex" does not seem to work at all sadly. ( Used something as simple as "nbt.display.Name=iregex:(Test)" or "nbt.display.Name=regex:Test" which work just fine in Optifine )
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.