This mod will add dungeons meant to resemble levels from retro "2 1/2d" first-person shooters and was inspired by earlier dungeons mods and by Oblige (especially version 3.57), a random level generator for Doom. The goal is to create interesting, tactically challenging, and highly varied multi-room dungeons that are fun to explore and rewarding to conquer.
Version 1.14.8 (still for Minecraft 1.12.2) is now out and finally fixes (as far as I can tell) the "cascading world-gen" problem. After almost eight years, this is probably the final version; the mod does more than I ever originally planned it to, including things I would never have thought of at the time. I don't think there are any more features I'd want to add, and as I reach a point of having been tired of Minecraft for several years and look to pursuing other interests, I have "retired" from modding, so I don't think there will any other updates to the mod. Fair well, and thanks for the all the ideas, suggestions, appreciation, support, and kind/flattering words. I'm glad people have enjoyed my little project, it feels good to have made something many have enjoyed.
This really is almost certainly the final version of this mod -- all attempts to update past 1.12.2 have failed. Its been a long, interesting, and rewarding journey, often fun, sometimes frustrating, and leaving brings a lot of melancholy nostalgia over the whole process. But all things have a beginning and an end, and its time I say "Good Bye" to my player-killing baby and move on.
API for Devs: The old API system was broken. Moders wanting to add support to their mod, whether adding mobs to dungeons or to control how / when they generate (like, in a dimension) can just use the deobf provided on Curse. Really, any deobf jar for the same Minecraft version should work.
Installation:
First, make sure you have the correct version of MinecraftForge installed.
Download the mod jar and place it in your mods folder, just like a typical Forge mod.
If you're having trouble with Dungeons spawning in recent version but not older ones consider check the theme files to make sure they start with "version 1.7" and that no field names have colons at the end (if so delete them). I think this will fix that problem.
Config File
FrequencyScale: How common the dungeons are, with each increase of one making them half as common (so be careful). The default is now seven. This basically determines the average distance between dungeons, so remember a higher number means fewer dungeons.
MinChunkXY: No dungeons will spawn within this many chunks of spawn. Note that this applies to where the center of the dungeon is, not to its edge.
Difficulty: How hard the dungeons should be; this will affect the frequency and difficulty of mobs spawners.
0: No spawners or chests
1: Baby level ("I'm too young to die!")
2: Noob level ("Hey, not too rough!")
3: Default level ("Hurt me plenty!")
4: Hard level ("Ultra-Violence!")
5: Crazy level ("Nightmare!")
NeverInBiomeTypes: List any biome types you don't want dungeons to ever spawn in; the default list consists only of "END" but any valid biome dictionary type will do. These must be types from the Forge biome dictionary, using the names of actual biomes will not work!
ExportLists: False by default; if set to true three lists (mobs.txt, items.txt, and blocks.txt) will be exported to config/DLDungeonsThemes/Lists. These are lists for mod-pack makers and others to get lists of usable content for themes with IDs / correct names.
Dimensions: This list dimension, one per line by dimension ID (not the name, it must be a number) - whether or not they actually can depend on how that dimension handles world gen. The meaning of this is determined by the OnlySpawnInListedDims; if that is true it allows dungeons in the dimensions listed here, if that is false it blocks them from spawning in these dimensions. Put differently this may be either a list of allowed dimensions of a list of banned dimensions.
ObeyFeatureSpawningRule: If set to true (default) the mod will only generate dungeons if the world is set to spawn structures. If there will be dungeons regardless.
OnlySpawnInListedDims: If true (default) dungeons will only spawn in dimension listed in the Dimensions tag (above) and not in any other; these are allowed dimensions. If set to false this is reversed so dungeons will spawn in dimensions not listed and never in those that are (should help with Mystcraft compatibility); these are now banned dimension (any others are good).
SpawnWithWordgen: If set to false no dungeons will be created with world-gen, and will only exist if created using the /dldspawn command.
AnnounceCommands: If true, confirmation for commands will be sent to chat.
StingyWithLoot: If you think the chests are too generous, this will make them stingy!
EasyFind: If true, all dungeons that can normally have an entrance will have at least one and all entrances will have a building or ruin around them.
InstallThemes: Defaults to true. If set to false the themes folder can remain empty, though I don't know why you'd want that!
InstallThemesByCommand: Defaults to true. If set to false the /dldInstallThemes and /dldForceInstallThemes commands won't work. Intended as a safety/security feature.
AutoProfilingOn: May do nothing (usually) or write tons of stuff to the console (laggy), depending on what I have set up to profile. This should be kept turned off (leave it alone).
BuildPole: Should not be used except for testing; it places a quart pillar from y=5 to y=250 through the technical center of the dungeon and frames it with a flying lapis square marking the boundaries. Usually, I'd call this cheating.
DisableApiCalls: If set to true other mods cannot alter setting or themes/mob through the API (default is false).
DontAllowApiOnMobs: If set to true other mods cannot add or remove mobs from themes (defaults to false), even if API calls are allowed. This can be accomplished per-theme by not assigning a theme type.
Themes
Themes allow you and an easy way to mod the mod easily, changing blocks and mobs. You can have as many or as few themes as you like, and control the biome types they appear in. Also, if dungeons won't appear with newer versions, try re-installing themes.
Commands
/dldspawn will force a dungeon to spawn with its technical center (might not be the geometric center) in the chunk of the player who uses it. Dungeons created in this way do not use the world seed (naturally spawning dungeons do). For obvious reasons, this should not usually be used in chunks where players have been building, mining, or otherwise changing the map (especially underground); the dungeon will overwrite anything in its way.(A more advanced command may come later, but a lot of other things would need to be done first for it to work.)
/dldreload will reload the config file at run-time and from in-game. This effectively reverses any API based config changes.
/dlddimid will show the player's current dimension. Good if using with Multiverse (etc.) in a Cauldron (MCPC+) server.
/dldInstallThemes will (re)install and default themes that are missing. It will not be overwriting any themes that exist.
/dldForceInstalThemes will (re)install the default themes, overwriting any existing themes with the same name.
Does it use the Forge Biome Dictionary? I see in config files different biome categories like "WATER", "MOUNTAINS", "HILLS"... Does it mean that dungeons will spawn in all the Biomes O Plenty biomes grouped into those categories?
I'm testing it right now. Good mod by the way, the more dungeons, the better.
Yes, it does, so that should work -- though it only considers the biome at the center of the dungeon., so it may run under tje eddge of another biome.
There was a I time, months ago, when I considered a "Dimension of Doom" mod that would have had a whole under-nether dimension with such mobs, dungeons, blocks, items, etc., but that would probably have been too much for a first mod.
Now I feel like Doom based mobs would be redundant because Lycanite has already created many of them and done a very good job of it. Maybe sometime I'll create an alternate Demon Mobs theme that puts the Nether mobs in a kind of base in the Overworld. At this point I mostly want to create adventuring settings resembling the tactical challenges found in Doom and Hexen.
In the mean time I'm seeing if there's anything useful I can do to help AnonymousProductions revive MineFantasy, thinking of an idea for a magic mod, and concerned with customizable chests (which I thought would be really easy but has some stumbling blocks I didn't expect).
Loved it dude! Normally this is where I would suggest improvements but I can't think of any
Thanks for the great review. BTW, Lycanite's config do more than add his mobs, they also increase the difficulty setting for the dungeons from 3 / "hurt me plenty" to 4 / "Ultraviolence" (this means that you can even find Wither spawners).
I've thought of making a small mod pack with my mod, the Lycanite's demon mobs, and a guns mod, for those who really want to play doom in Minecraft.
Thank you very much, BlackJar72. wait to see your update
Thanks!
Hopefully that will involve configurable chests (last thing I need for mod pack support stuff) and fences in outdoor rooms (found in the nether, for now). That and maybe look into an occational problem on starting new worlds -- may just be lag from all the world gen when there are lots of dungeons, but want to make sure that's all it is.
New version, 1.0.1, is out, and is a small change; fences, which have always been in themes, are now actually used in outdoor rooms. Of course, out door rooms are only found in the nether by default. Done for now.
Configurable chests and outputting of mob, item, and block lists to text files seem to be working in a private test version (with 1.6.4). There will probably be a new version as soon as I can port everything to 1.5.2 and 1.7.2. There is one little problem though with the use of mobs from some mods (though it should not effect most)...
...in an earlier versions it would not load Lycanites mobs correctly because I did something stupid myself; but now I'm sure it could not add Twilight Forest mobs because Benematic did something I see as stupid (white space in the "unlocalized" code names, bad, bad, bad!). I've not tested that but there's no way it could work. I'm not sure whether or not to re-write the theme reader to compensate for such things, but I guess I will (not in the next update though).
First off this is an awesome mod! Thanks for all your hard work on it!
Now to the problem... I want the Nether theme to be the only theme in the Nether. The problem is I use BOP nether biomes which also include other biome dictionary types. So I am getting random odd looking overworld themed dungeons in the nether.
Is there a way to have dimension selection per theme or have "not biome" or something such that I can fix this.
First off this is an awesome mod! Thanks for all your hard work on it!
Now to the problem... I want the Nether theme to be the only theme in the Nether. The problem is I use BOP nether biomes which also include other biome dictionary types. So I am getting random odd looking overworld themed dungeons in the nether.
Is there a way to have dimension selection per theme or have "not biome" or something such that I can fix this.
I've been thinking of having the ability to forbid biome types, don't know if that would help since I don't use BoP. Having required or forbidden dimension might be slightly trickier but I could see about it. I'd already been thinking of ways to allowing themes specific to modded dimensions (when the overworld themes just wouldn't work).
If I understand you correctly, forbidding biome types would work. For the nether.cfg I would specify NETHER and and forbid all other biome types.
Also, the latest release version, 1.1.0, does not seem to load the themes or chest file. I had to revert back to 1.0.1.
EDIT: I couldn't sleep so I fixed it -- this may have been lucky for me since there were several serious bugs in the last version. Anyway, it now works like this:
For example:
...
# Biomes types where it should be used
biomes: FOREST, SWAMP, JUNGLE
# Biomes where it should never appear
NotInBiomes: NETHER
....
I had accidently set it to look in th wrong folder for themes (the list folder) so it did find them; worse, it was crashing 1.7.2 on start-up. These problems are fixed now. Try the new version and see if it does what you need.
This mod will add dungeons meant to resemble levels from retro "2 1/2d" first-person shooters and was inspired by earlier dungeons mods and by Oblige (especially version 3.57), a random level generator for Doom. The goal is to create interesting, tactically challenging, and highly varied multi-room dungeons that are fun to explore and rewarding to conquer.
Version 1.14.8 (still for Minecraft 1.12.2) is now out and finally fixes (as far as I can tell) the "cascading world-gen" problem. After almost eight years, this is probably the final version; the mod does more than I ever originally planned it to, including things I would never have thought of at the time. I don't think there are any more features I'd want to add, and as I reach a point of having been tired of Minecraft for several years and look to pursuing other interests, I have "retired" from modding, so I don't think there will any other updates to the mod. Fair well, and thanks for the all the ideas, suggestions, appreciation, support, and kind/flattering words. I'm glad people have enjoyed my little project, it feels good to have made something many have enjoyed.
Downloads Available from Curse
Source Code:
GitHub Repository (latest)
API for Devs: The old API system was broken. Moders wanting to add support to their mod, whether adding mobs to dungeons or to control how / when they generate (like, in a dimension) can just use the deobf provided on Curse. Really, any deobf jar for the same Minecraft version should work.
Installation:
If you're having trouble with Dungeons spawning in recent version but not older ones consider check the theme files to make sure they start with "version 1.7" and that no field names have colons at the end (if so delete them). I think this will fix that problem.
Config File
MinChunkXY: No dungeons will spawn within this many chunks of spawn. Note that this applies to where the center of the dungeon is, not to its edge.
Difficulty: How hard the dungeons should be; this will affect the frequency and difficulty of mobs spawners.
0: No spawners or chests
1: Baby level ("I'm too young to die!")
2: Noob level ("Hey, not too rough!")
3: Default level ("Hurt me plenty!")
4: Hard level ("Ultra-Violence!")
5: Crazy level ("Nightmare!")
NeverInBiomeTypes: List any biome types you don't want dungeons to ever spawn in; the default list consists only of "END" but any valid biome dictionary type will do. These must be types from the Forge biome dictionary, using the names of actual biomes will not work!
ExportLists: False by default; if set to true three lists (mobs.txt, items.txt, and blocks.txt) will be exported to config/DLDungeonsThemes/Lists. These are lists for mod-pack makers and others to get lists of usable content for themes with IDs / correct names.
Dimensions: This list dimension, one per line by dimension ID (not the name, it must be a number) - whether or not they actually can depend on how that dimension handles world gen. The meaning of this is determined by the OnlySpawnInListedDims; if that is true it allows dungeons in the dimensions listed here, if that is false it blocks them from spawning in these dimensions. Put differently this may be either a list of allowed dimensions of a list of banned dimensions.
ObeyFeatureSpawningRule: If set to true (default) the mod will only generate dungeons if the world is set to spawn structures. If there will be dungeons regardless.
OnlySpawnInListedDims: If true (default) dungeons will only spawn in dimension listed in the Dimensions tag (above) and not in any other; these are allowed dimensions. If set to false this is reversed so dungeons will spawn in dimensions not listed and never in those that are (should help with Mystcraft compatibility); these are now banned dimension (any others are good).
SpawnWithWordgen: If set to false no dungeons will be created with world-gen, and will only exist if created using the /dldspawn command.
AnnounceCommands: If true, confirmation for commands will be sent to chat.
StingyWithLoot: If you think the chests are too generous, this will make them stingy!
EasyFind: If true, all dungeons that can normally have an entrance will have at least one and all entrances will have a building or ruin around them.
InstallThemes: Defaults to true. If set to false the themes folder can remain empty, though I don't know why you'd want that!
InstallThemesByCommand: Defaults to true. If set to false the /dldInstallThemes and /dldForceInstallThemes commands won't work. Intended as a safety/security feature.
AutoProfilingOn: May do nothing (usually) or write tons of stuff to the console (laggy), depending on what I have set up to profile. This should be kept turned off (leave it alone).
BuildPole: Should not be used except for testing; it places a quart pillar from y=5 to y=250 through the technical center of the dungeon and frames it with a flying lapis square marking the boundaries. Usually, I'd call this cheating.
DisableApiCalls: If set to true other mods cannot alter setting or themes/mob through the API (default is false).
DontAllowApiOnMobs: If set to true other mods cannot add or remove mobs from themes (defaults to false), even if API calls are allowed. This can be accomplished per-theme by not assigning a theme type.
Themes
Themes allow you and an easy way to mod the mod easily, changing blocks and mobs. You can have as many or as few themes as you like, and control the biome types they appear in. Also, if dungeons won't appear with newer versions, try re-installing themes.
Commands
/dldreload will reload the config file at run-time and from in-game. This effectively reverses any API based config changes.
/dlddimid will show the player's current dimension. Good if using with Multiverse (etc.) in a Cauldron (MCPC+) server.
/dldInstallThemes will (re)install and default themes that are missing. It will not be overwriting any themes that exist.
/dldForceInstalThemes will (re)install the default themes, overwriting any existing themes with the same name.
Doomlike Dungeons by JaredBGreat (aka, BlackJar72) is licensed under a Creative Commons Attribution 4.0 International License.
My Other Mods
Climatic Biomes
Support This / Me:
Yes, it does, so that should work -- though it only considers the biome at the center of the dungeon., so it may run under tje eddge of another biome.
Thanks, I'll look forward to it.
My youtube channel L:
https://www.youtube.com/user/ninjabeeutube1223344
Have you tried Lycanite's Mobs? http://www.minecraftforum.net/topic/1966252-164-forge-lycanites-mobs-biome-specific-inspired-by-doom-oddworld-hexen-and-more/
There was a I time, months ago, when I considered a "Dimension of Doom" mod that would have had a whole under-nether dimension with such mobs, dungeons, blocks, items, etc., but that would probably have been too much for a first mod.
Now I feel like Doom based mobs would be redundant because Lycanite has already created many of them and done a very good job of it. Maybe sometime I'll create an alternate Demon Mobs theme that puts the Nether mobs in a kind of base in the Overworld. At this point I mostly want to create adventuring settings resembling the tactical challenges found in Doom and Hexen.
In the mean time I'm seeing if there's anything useful I can do to help AnonymousProductions revive MineFantasy, thinking of an idea for a magic mod, and concerned with customizable chests (which I thought would be really easy but has some stumbling blocks I didn't expect).
Videos just does not cut it...
Thanks for the great review. BTW, Lycanite's config do more than add his mobs, they also increase the difficulty setting for the dungeons from 3 / "hurt me plenty" to 4 / "Ultraviolence" (this means that you can even find Wither spawners).
I've thought of making a small mod pack with my mod, the Lycanite's demon mobs, and a guns mod, for those who really want to play doom in Minecraft.
Now that i would love to see, would be an awesome series
Thanks!
Hopefully that will involve configurable chests (last thing I need for mod pack support stuff) and fences in outdoor rooms (found in the nether, for now). That and maybe look into an occational problem on starting new worlds -- may just be lag from all the world gen when there are lots of dungeons, but want to make sure that's all it is.
...in an earlier versions it would not load Lycanites mobs correctly because I did something stupid myself; but now I'm sure it could not add Twilight Forest mobs because Benematic did something I see as stupid (white space in the "unlocalized" code names, bad, bad, bad!). I've not tested that but there's no way it could work. I'm not sure whether or not to re-write the theme reader to compensate for such things, but I guess I will (not in the next update though).
Anyway, progress I guess.
Now to the problem... I want the Nether theme to be the only theme in the Nether. The problem is I use BOP nether biomes which also include other biome dictionary types. So I am getting random odd looking overworld themed dungeons in the nether.
Is there a way to have dimension selection per theme or have "not biome" or something such that I can fix this.
I've been thinking of having the ability to forbid biome types, don't know if that would help since I don't use BoP. Having required or forbidden dimension might be slightly trickier but I could see about it. I'd already been thinking of ways to allowing themes specific to modded dimensions (when the overworld themes just wouldn't work).
Also, the latest release version, 1.1.0, does not seem to load the themes or chest file. I had to revert back to 1.0.1.
EDIT: I couldn't sleep so I fixed it -- this may have been lucky for me since there were several serious bugs in the last version. Anyway, it now works like this:
For example:
I had accidently set it to look in th wrong folder for themes (the list folder) so it did find them; worse, it was crashing 1.7.2 on start-up. These problems are fixed now. Try the new version and see if it does what you need.