AbyssalCraft

AbyssalCraft

20M Downloads

Knowledge system

Shinoow opened this issue ยท 2 comments

commented

Warning: considerable amounts of rambling ahead, along with some clean sections
The knowledge system consists of bits of information (biome ids, mob ids, dimension ids, all regarded as "knowledge"), and conditions which the gathered knowledge is tested against. The implementation for handling that data is more or less complete, with the missing part being obtaining the knowledge (to some extent).

The simpler parts of obtaining knowledge (exploration and killing mobs) are fully implemented, but the other ones (artifacts, lost pages, whispers and miscellaneous) are either not fully implemented (new items and/or blocks haven't been added) or simply underused (there is a misc condition for each plague, but that's about it for that category). Diversity where the system is used is also a bit lacking (for the most part, the conditions placed on items and blocks doesn't really have that much means of being diversified, where most items are tied to the mob that drops them, and blocks are either tied to the dimension or biome they're found in, and Necronomicon pages are pretty much solely tied to their respective dimensions).

A factor that likely will surface later on if not handled is the lack of direction when it comes to what unlocks what bit of information (the only hints you can get right now would be to dig into the source code and see what condition is assigned to what thing).

Having locked items/blocks display a generic texture when locked is something that never really went from drafting table to implementation, so whether or not that should be implemented lies shrouded in uncertainty.

If not only rituals, maybe the pages that cover progression should be locked behind obtaining knowledge, rather than just the Necronomicon upgrade. That would have the player gather the necessary bits of knowledge to compliment the new sections unlocked after upgrading the book, but it would also mean that they'd have to learn the rituals before they can actually perform them, as opposed to the current "upgrade the book and you instantly unlock n new ritual(s)" approach.

The knowledge system could be tied into a research mechanic, where the unlock conditions are parts required to complete a research item, which in turn potentially grants access to rituals, spells, places of power, maybe even crafting recipes (along with unlocking the names of the items/blocks connected to the recipe). For more easily dealing with the crafting recipe part, the research items could be hooked into advancements, which the recipes in turn could be locked behind obtaining the attached advancement (I'm pretty sure vanilla has functionality built-in to lock crafting recipe behind advancements).

Things to do

  • implement lost pages and artifacts to enable those sources of knowledge to be available
  • start making use of the whisper conditions on statues (probably some common whispers and some deity-specific ones)
  • add more miscellaneous bits of knowledge (could be gained from doing some task)
  • possibly implement hints to the unlock conditions (so the player has some point of reference if they get stuck)
  • start locking rituals (the book type is already one way they're locked, so maybe not all rituals need to be unlocked by doing something besides upgrading the book)
  • start locking spells (basically the same point as with rituals, but also put a book type requirement on some, because I believe right now none of them have a book requirement)
  • maybe implement a locked item/block model that replaces the actual item/block model when it's locked
  • implement a research mechanic that utilizes unlock conditions for research items
  • probably move most things to be locked behind research items rather than specific unlock conditions (this will also clear up the whole debacle on how to unlock a specific item without having to dive into the source code)
  • add some form of research table (any lunatic will need a desk to write down their insane theories that turn out to be pretty accurate)

As with any issue tagged with development, any input and/or feedback is appreciated, or you could just bitch about it on Reddit (and I might come across it at some point in time).

commented

It sounds pretty well like the system implemented in other magic mods like Thaumcraft. I really like the idea. It will improve a lot the immersion and progression, and fit more with other magic mods.

commented

hi, just found about the 2.0 while working on my modpack.
I don't know if you are already at this point with the development, but a good way to implement the hint system would probably be to tied it with the whisper system and the research table.
Also i think that going to sleep after some condition are met would actually be an additional way to gain hints: if the player don't discover something for a while (after obtaining the necronomicon), the next time he goes to sleep he will wake up in the middle of the night and write a note with the hint.

edit:
also, another consideration: the knowledge system should also take into account worldgen that are removed in the config such as the overworld biomes and structures, for modpacks where those are removed and the mod is gated behind other means.
A possible solution could be to have the knowledge system to unlock knowledge in the required order for the progression, (if for example some basic knowledge is locked behind exploring the overworld biomes but those are disabled) or to add the possibility to generate those biomes and structures in the dimensions.