VazkiiMods / Quark

Small things, improving Minecraft without changing the core gameplay.
https://quark.vazkii.net
Other
582 stars 289 forks source link

1.16.4 - Pathfinder map issues #2755

Closed Not-February closed 3 years ago

Not-February commented 3 years ago

Minecraft 1.16.4 Quark-r2.4-283 Forge 35.1.13

I'm trying to add custom pathfinder maps for some rarer mod-added biomes, but the game crashes on startup - seemingly because it cannot find a biome with the given input name. The thing is, the config entry names I'm putting in don't match the problematic names in the crash report. Specifically, the underscores in the biome entries appear to be getting lost somewhere along the way.

For example, byg:ancient_forest is reported as being byg:ancientforest in the crash log; I'm assuming the game is crashing because the biome byg:ancientforest doesn't exist, but that's not even what I put into the config in the first place.

The same thing happened for the next entry on the list instead when I removed that entry with similar results; byg:crag_gardens in the config became byg:craggardens in the crash report.

This is the config I'm trying to use for the custom pathfinder maps. I've also attached the game log and two relevant crash reports for comparison.

[tools.pathfinder_maps]

In this section you can add custom Pathfinder Maps. This works for both vanilla and modded biomes.

  #Each custom map must be on its own line.
  #The format for a custom map is as follows:
  #<id>,<level>,<min_price>,<max_price>,<color>,<name>
  #
  #With the following descriptions:
  # - <id> being the biome's ID NAME. You can find vanilla names here - https://minecraft.gamepedia.com/Biome#Biome_IDs
  # - <level> being the Cartographer villager level required for the map to be unlockable
  # - <min_price> being the cheapest (in Emeralds) the map can be
  # - <max_price> being the most expensive (in Emeralds) the map can be
  # - <color> being a hex color (without the #) for the map to display. You can generate one here - http://htmlcolorcodes.com/
  # - <name> being the display name of the map
  #
  #Here's an example of a map to locate Ice Mountains:
  #minecraft:ice_mountains,2,8,14,7FE4FF,Ice Mountains Pathfinder Map
  Customs = [
  byg:ancient_forest,3,2,8,0B5224,Ancient Forest Pathfinder Map
  byg:crag_gardens,3,2,8,11A660,Crag Gardens Pathfinder Map
  byg:enchanted_forest,3,2,8,E3BAEB,Enchanted Forest Pathfinder Map
  byg:enchanted_grove,3,2,8,BAEBE8,Enchanted Grove Pathfinder Map
  byg:glowshroom_bayou,3,2,8,9520a3,Glowshroom Bayou Pathfinder Map
  byg:redwood_tropics,3,2,8,67A320,Redwood Tropics Pathfinder Map
  byg:shattered_glacier,3,2,8,C5EAE6,Shattered Glacier Pathfinder Map
  byg:skyris_highlands,3,2,8,CB90B3,Skyris Highlands Pathfinder Map
  byg:stone_forest,3,2,8,9F99A3, Stone Forest Pathfinder Map
  byg:twilight_valley,3,2,8,BB486D,Twilight Valley Pathfinder Map
  byg:weeping_witch_forest,3,2,8,BB8348,Weeping Witch Forest Pathfinder Map
  ]
  "Xp From Trade" = 5

latest.log

crash-2020-12-23_16.39.27-client.txt crash-2020-12-23_16.40.43-client.txt

gchapeaux commented 3 years ago

I think wrong format on your table, it's pretty unclear in the comments but it should look like this :

Customs = ["voyage:bog,3,8,14,0DE579,Bog Pathfinder Map",
        "voyage:desert_mixed,3,8,14,E5930D,Mixed Desert Pathfinder Map",
        "voyage:desert_mixed_hills,3,8,14,CA810A,Mixed Desert Hills Pathfinder Map",
        "voyage:desert_moutains,3,8,14,EBBF36,Desert Moutains Pathfinder Map",
        "voyage:desert_polar,3,8,14,D6F6F3,Polar Desert Pathfinder Map",
        "voyage:flower_plains,3,8,14,F6D6F0,Flower Plains Map",
        "voyage:forest_lush,3,8,14,6DCB6D,Forest Lush Pathfinder Map",
        "voyage:lagoon_cold,3,8,14,E6F5F6,Cold Lagoon Pathfinder Map",
        "voyage:lagoon_lukewarm,3,8,14,72DCB7,Lukewarm Lagoon Pathfinder Map",
        "voyage:lagoon_warm,3,8,14,4BE3AE,Warm Lagoon Pathfinder Map",
        "voyage:mount,3,8,14,BFBFBF,Mount Pathfinder Map",
        "voyage:rock_field,3,8,14,A48B6E,Rock Field Pathfinder Map",
        "voyage:rocky_peaks,3,8,14,978672,Rocky Peaks Pathfinder Map",
        "voyage:steppe,3,8,14,D4A165,Steppe Pathfinder Map"]

(Not sure about indent, but it seems to work for me so far, no crash yet)

Not-February commented 3 years ago

Hmm. Well, I did custom pathfinder maps for personal packs in 1.12.2 using the format without the commas, and in past experience, if the formatting were the issue here, the crash log would be screaming about JSON formatting instead of the biome names being wrong.

If the config format changed between 1.12.2 and 1.16.4 without its documentation updating, though, maybe that's it? I can give it a try.

Not-February commented 3 years ago

Let me ask you something: have you actually found an in-game pathfinder map from a villager trade with those config settings? Like, at all? (The game didn't crash when I used that format, but now something else is going on...)

I've been doing some testing with cartographers and trading in creative, and even with all of my custom maps removed from the config, I can't seem to get a single villager to sell me a pathfinder map. This is in a test instance with nothing but Quark, AutoRegLib, and JEI installed.

The debug log references gathering map information when new trades are generated, but no pathfinder maps end up in the trade interface of the villager in question. I think pathfinder maps might just be broken in general right now?

debug.log

Syrikal commented 3 years ago

I came here looking for pathfinder map issues because I can't find any being traded either, and I haven't yet added any new biomes in the config.

Vazkii commented 3 years ago

Most likely these broke at some point during a port.

Vazkii commented 3 years ago

This is crashing because you forgot to put quotes around each line. @CerbinTalYalas's format is correct.

Vazkii commented 3 years ago

Still need to fix the trading issue though