First of all let me say thank you a million times over for even considering this. I was losing lots of sleep thinking of what could be done to make this happen. Things like is it the ABMs that need to change? Do the map sectors have a number which we could use a mathematical formula on to randomize the appearance of dungeons? Will Ferk really be angry with me for being a pest and make this all impossible? etc.
Ferk wrote:Yes, it's doable, but many rooms and puzzles would make very little sense without established constrains.
If everything is destructible a lot of puzzles would make no sense. And at the same time, maybe people making new rooms may assume that you can destroy the nodes which would result in their rooms being unsolvable obstacles whenever destructible==false.
In essence, this means that if we want to support both types of rooms we will have to end up splitting the collection of rooms, which would be a pity, since a single big common repository of dungeon rooms could be much richer and varied if we stuck together. One of the problems there is with Dungeontest at the moment is precisely that there's often a lot of repetition.. IMHO, if we turn this into a modpack it should have established guidelines to get the most out of it. The destructible true/false flag, for example, is too game-changing to be switchable.
Agreed. I think what you want is to leave the dungeons as indestructable and un-buildable. Make it like the villages Modpack that says "The villagers prevent you from modifying the village." That being said, I ran into the situation where I was unable to place blocks anywhere in the world even on the surface. So if you make the dungeons configurably rare, the user will still be able to do mining and cave exploring outside of them, but be limited when they are in the dungeons themselves. That way you have the best of both worlds. When outside the dungeon, the player can do anything they normally do. When inside, they play by your rules.
Ferk wrote:There are other aspects, like crafting. Most of the stuff in the dungeon doesn't even have a crafting recipe.
I'm not sure this is a bad thing. In Terraria, there are some things you can't craft, but can only get in dungeon. But that gives you a reason to go into the dungeon to get these cool things that you can't get anywhere else. It makes it worth overcoming all the dungeon challenges to get these items. That being said you want to minimize the core mods that DT modpack depends on. e.g. Forcing 3d armor on everyone just because they want the DT modpack is not a good idea. Scrolls on the other hand seem to affect the gameplay a bit so might not be bad to include them in DT modpack core.
Ferk wrote:Also some rooms might want to use nodes or items from other mods, which results in the "unknown" node/item problems that you found. Whenever there's such a problem you only have two options:
a) Strip the mod from the modpack, and possibly perhaps the entire room, as well as any other room that might rely on the item/node to do something (like if you remove the scrolls you have to remove the rooms that may have a big pit only crossable by flying, for example)
b) Include the mod, because maybe it'd be cool to have that item, node or spell in the dungeon and use it for puzzles to engross the collection of dungeon rooms.
The problem with "a" is that your collection of rooms will be limited then, because you won't have complete freedom on what can you add.
The problem with "b" is that you end up having a modpack that will quickly become huge.. it'll start including huge amounts of mods, to the point that you will basically be turning it into a game on its own. And then it makes very little difference between having it as a modpack than as a game. Except that as a game you have more freedom to change other things.
Then there's the problem of incompatibilities... in the dungeon_* mods there's also a slightly modified mobs redo, also xdecor and some other mods. The modpack will also become huge, and as you've seen, the performance would be affected.
I think you are on the right track. You are going to need a core group of dungeon items/blocks without which you simply can't have any decent dungeon. So there needs to be a core set of items that simply must be included for this modpack to make sense. A bunch of stuff from x-decor, and castles, and just a few things from Home Decor. What you could do is make these mods optional. If HomeDecor is included by the user, then use its nodes. If not then spin up the nodes yourself in the DungeonTest core objects. (This prevents clashing/duplication of items). If someone creates a room outside of the core then you could create a configuration for the player to either include all rooms minus the missing stuff, or exclude the rooms that are missing stuff. You will find users that will want variety above all else, and others that want only rooms that are missing nothing. I think you are going to find that this Modpack is going to be so popular that you are going to have more rooms than you could possibly imagine even just ones using the core items/blocks.
As far as Mobs are concerned I think that at some point (lower proirity) it would be wonderful to have a spawner mod with a config file that allows users to specify what mobs can be spawned where, allowing even mobs from new mods you hadn't known about. The config file would have lines with "Mob mod name", "Mob Name", "dungeon level/difficulty", "Rarity" or something along those lines.
For Loot you could do something similar to what I suggested for Mobs. A system that handles both pre-placed chests that are part of the room and also the random the placing of chests with loot. There could be a config file that makes it easy for users to add items to it. The file could contain ModName, ItemName, LevelOfDifficulty, & Rarity. This would allow items from any mod to be added to loot. That way, the loot mod could scan through the config file and add things as appropriate. If your loot system doesn't work you might be able to use some ideas from Blockmen's.
Ferk wrote:...all that said, perhaps you are right and making a modpack would expose Dungeontest more and would in turn result in more people making rooms and having a cooler dungeon.
I'd be stunned if this modpack doesn't become the most popular modpack ever. Everyone complains that Minetest is missing interesting content, challenges and gameplay and that is where DungeonTest shines. That being said, at some point it wouldn't hurt to consider (as a very low priority) offering a sensitive configuration that changes scrolls to schematics, pentacles to generic spawners, noblood and the like so that those who love the hardcore elements can have them, and those who might be offended by them to still enjoy the modpack. DT modpack would simply be too important to exclude groups of people from playing it. It's your call, and I don't mind these elements, but I can see people asking for it at some point.
Ferk wrote:But for this to work I should probably embrace the fact that the repository of rooms would get split. I should probably have several different directory paths where to look for rooms, to organize them better. This is also something I have thought of doing in the past already.
This probably makes some sense. Some people won't care, they will want variety in rooms at any cost, others will want every room to be a compelling puzzle that doesn't work exactly as designed.
Ferk wrote:About your attempts at adding the probability. The place where you were changing it would only have affected it per-room.. I might have to do some changes in the code so that a whole dungeon can be disabled, maybe I'll have a look at it later today.
Awesome! I'm doing cartwheels! Most of the stuff I mentioned is wouldn't be needed to make DT work as a modpack. The only things that I can see that are absolutely needed:
- Make dungeons configurably rare.
- Make the world outside of the dungeons behave normally (digging and placing of blocks etc.)
- Have a core set of items/blocks that players can safely design rooms with, and a way to deal with rooms that use stuff not in that list.