webbukkit / DynmapBlockScan

Tool to scan post-1.8 MC blocks and JSON model data to automatically generate Dynmap models
61 stars 30 forks source link

[1.16.5] missing many blocks from ConquestReforged #63

Open Tiavor opened 2 years ago

Tiavor commented 2 years ago

a lot of full and some partial blocks from Conquest are not covered by the block scan. I can't really seem to find a pattern which are covered and which aren't. it's even the case that some slabs of the same full block are visible while the full block is missing and vice versa.

Devlin556 commented 2 years ago

+1 on Conquest Reforged

mikeprimm commented 2 years ago

If blocks are fully missing, it usually is for mods that do custom/funky mappings of the identity of the block state files relative to the block name. Mods that do this use client-side code that a) I cannot get to from the server, and b) even if I could I cannot use. The net effect of this is that I cannot find the right block state file and thus cannot find the state mapping and model files - and there isn't anything I can do about it. Not sure if that is the case here, but that is an important part of framing any 'mod XYZ doesn't work perfectly or even well' discussion. Blocks with custom renderers will never work, for example, unless they're just reskinning a standard special renderer like the water/fluid renderer.

The point of DynmapBlockScan is to attempt to handle mods automatically, not to create a boatload of unsupportable custom/mod specific code - sorry, you guys are on your own if the mod doesn't follow normal vanilla resource mappings. I'm not doing per-mod hacks that will break the next time the mod dev has another clever idea on how to tinker with their mod resources. Last I saw, CR claimed 12000 custom blocks - so good luck with that...

All that said, if you can identify some specific blocks that are not right, I'll give it a look and see if it is a case of a blockstate+models scenario that should work versus one that will not work.

mikeprimm commented 2 years ago

One current limitation is that Dynmap doesn't support rendering of blocks that exceed a standard cube (which is why banners don't render properly), and I do see some mapping complaints due to the translation of the block models resulting in a bigger model. These aren't going to be fixed anytime soon, as altering the Dynmap renderer to handle models that extend outside their home block is 'a big deal' (complex, huge performance hit if not done right, etc...).

Tiavor commented 2 years ago

some examples: these full blocks are not rendered conquest:oxidized_copper_roof conquest:large_limestone_block conquest:mixed_clay_tiles conquest:dark_slate_roof_tiles

this full block is just black: (maybe no server side texture?) conquest:sandstone_oven

full blocks that are rendered: conquest:bundled_firewood conquest:light_clay_tiles conquest:tudor_diagonal_frame_1 conquest:tudor_diagonal_frame_2

and then is a lot of inconsistency with not full blocks too while conquest:mixed_clay_tiles_vertical_slab is rendered (as full block), conquest:blue_shipping_container_vertical_slab and conquest:mixed_clay_tiles_vertical_slab is not rendered at all. conquest:tudor_diagonal_upwards_frame_vertical_corner is rendered as full block while conquest_todor_cross_frame_vertical_corner is not rendered at all (same orientation and state)

A big part is probably that Conquest is using Optifine features to the fullest. the complete asset folder is 268MB (raw) and over 100k files