promotional bannermobile promotional banner

Devourer of Gods

This mod adds the popular boss "Devourer of Gods" from Terraria Calamity into Minecraft!
Back to Files

dog-1.2.0-beta.3.jar

File namedog-1.2.0-beta.3.jar
Uploader
YuruniYuruni
Uploaded
Sep 5, 2026
Downloads
636
Size
19.5 MB
Mod Loaders
Forge
File ID
8816725
Type
B
Beta
Supported game versions
  • 1.20.1

Curse Maven Snippet

Forge

implementation fg.deobf("curse.maven:dog-1630975:8816725")

Learn more about Curse Maven

What's new

Devourer of Gods 1.2.0

this changelog is made with the help of Generative Artifical Intelligence (I am lazy)

Everything since 1.1.0, betas 1 through 3 together. Minecraft 1.20.1, Forge.


Breaking changes

Read this bit before updating.

  • cosmicFlameBlocksHealing removed. Cosmic Flame is fire again. Use regenHaltLevel = 5 for the old behaviour.
  • dragonDropsCosmicLarva renamed to dragonDropsReward. Re-set it if you had it off.
  • headGlow renamed to bodyGlow. Re-set it if you had it off, or you get the outline back.
  • Cosmic Larva renamed to Draconic Soul Fragment. Old items convert automatically on world load, but datapacks using dog:cosmic_larva must switch to dog:draconic_soul_fragment.

Crashes, issues, and compatibility

  • Fixed a crash reading the mod's own config. Reported with Mowzie's Mobs installed and not without it.
  • Fixed DoG never targeting anyone with Valkyrien Skies installed, on foot or standing on a ship.
  • Create tested alongside VS against this build.
  • Fixed duplicated devourers, which happens because of the new intro... Ooposie :D.
  • Entity activation range mods: the body no longer freezes when segments fall outside the range.
  • Mods that alter mob targeting: if he stands there ignoring you, the log now says whether he found nobody or was refused the target. Send the whole latest.log.
  • knockbackResistance is set to 1, so mods that read the attribute see the right answer instead of thinking he can be shoved.
  • Singleplayer is no longer told off about its view distance on startup. The warning ran before the game had applied your settings, so it complained about numbers you were not using, including "simulation-distance is 0". Dedicated servers only now; singleplayer still gets the in-chat one on join.

For packs where gear outscaled him

Damage multipliers can't fix percentage reduction. Armor and Protection are capped at 80%, so doubling his damage doubles the fifth that survives and leaves the rest alone. Pierce removes the reduction instead.

armorPierce           = 0.0    # armor points ignored
armorToughnessPierce  = -1.0   # -1 tracks half of armorPierce
enchantmentPierce     = 0.0    # Protection levels ignored

Also armor, armorToughness, attackDamageMultiplier and playerDamageMultiplier. Note armor caps at 30 and armorToughness at 20. Those are Minecraft's ceilings, and armor is weak against big hits by design. For a boss that survives endgame gear, playerDamageMultiplier is the setting that scales.


Regeneration and healing denial

regenAmount        = 0.0   # 0 is off
regenIntervalTicks = 20
regenChance        = 1.0

New effect: Devoured Vitality, applied by his attacks.

regenHaltSeconds         = 0   # 0 is off
regenHaltLevel           = 1   # 1 to 5
regenHaltCooldownSeconds = 30

Level 1 seals natural regeneration only, so potions and golden apples still work. Levels 2 to 5 cut every other source a quarter at a time, the way Resistance cuts damage, until 5 stops healing entirely.


Enchantment Devouring

enchantDevourEnabled = false
enchantDevourCooldownSeconds, enchantDevourCount
enchantDevourHealMinPercent, enchantDevourHealMaxPercent
enchantDevourPermanent = false

Takes a level at a time off something you are wearing or holding and heals himself for it, scaled by rarity. Curses are left alone.

What he takes comes back once he is dead or gone. The debt is stored on the item, not in a list keyed to you, so it survives being dropped, traded, stashed or carried through a death. Restoring is passive: any player in a dimension he is not in gets swept, so gear in a backpack or on somebody who was offline recovers on its own.

enchantDevourPermanent keeps what he ate forever. Not recommended.


Datapackable laser patterns

Volley layouts live in data/<namespace>/dog_laser_patterns/. The four shipped ones (dog:fan, dog:grid, dog:cage, dog:chaos) are plain files, so overriding one is writing a file at the same path, and adding one works the same way.

A pattern lists emitters, not beams:

emitter what it makes
dog:ring beams evenly around a circle
dog:cone a pitch × yaw grid of directions from one point
dog:lattice two crossing sets of parallel beams in a layer
dog:shell beams from a sphere's surface through random nearby points
dog:converge beams from a sphere's surface all through one point
dog:custom beams written one at a time
dog:repeat stamps any of the above out with a rotation and offset

Scheduling lives in the same file: weight for how often, phases for which half of the fight, min_health / max_health for a stretch of his health bar. weight: 0 keeps a pattern loadable and out of the fight, which is what you want while building one.

/dog volley <id> fires one where you stand. Edit, /reload, fire, look.

maxBeamsPerVolley caps what a pattern may spend. Every beam is sent to every nearby client, so it is bandwidth as much as work.

There is an example datapack with four commented patterns and a reference for every emitter and field in my discord server (wiki soon).


The entrance

  • Modified entrance visual.
  • DoG now appear relative to the position of the sky crack.

The radar

An indicator of where he is, still fairly simple at this stage.

  • The body draws as a connected line in body order. It was scattered dots, because the segment index was never sent to the client.
  • Charge telegraph: shows the wind-up, then stamps the charge path into the world where he committed and fades it. Once committed his heading is frozen, so that line is not a guess.
  • bossRadarEnabled, bossRadarSize, bossRadarRange, bossRadarOpacity, bossRadarDeadZone (0 runs the trace through the crosshair).

Glowing

  • New glow that highlights the whole DoG.
  • bodyGlowColor (client) sets the colour as RRGGBB hex. Vanilla outlines are white, which is the brightest thing on screen over a fight that is otherwise violet and cyan, so the default is a deep violet.
  • Turn it off with bodyGlow if the fight is heavy. The outline draws every body part a second time.

Body shape

segmentCount   = 102
segmentSpacing = 3.28125

For anyone remodelling him. Both apply to a newly summoned boss only; one already in the world keeps the body it was built with.


Weather and command hooks

setWeatherOnSummon = false
summonWeather      = THUNDER   # CLEAR / RAIN / THUNDER
freezeWeather      = true
summonCommands     = []
departureCommands  = []

Weather is restored when he dies or leaves. The command hooks run at permission 4 from his own command source, so @s is him and ~ ~ ~ is where he is, the escape hatch for anything this mod does not integrate with directly.

Also shiftTimeOnSummon, summonTimeOfDay, freezeDaylightCycle for the clock.


Taunts

trigger         = ON_BITE   # ON_BITE / ANY_DAMAGE / INTERVAL
intervalSeconds = 45

ANY_DAMAGE counts body contact, lasers and fireball impacts, though not the flame ticking afterwards. INTERVAL puts him on a timer and counts each line as an escalation, so the tiers still carry him from smug to furious.


Visual fixes

Fixed line renderers not smoothly connecting when two lines are connected to each other on an angle (still experimental this stage).


Performance

  • Contact damage now runs once for the whole DoG instead of individual segments. Tick rate should be improved.
  • Fireball cap is now a thing

Other fixes

  • Fixed him stopping ticking entirely on low simulation distance and freezing until a player flew close.
  • Fixed him getting stuck in the void. Led somewhere he should not be and then abandoned, he steered nothing at all, and he has no gravity to fall out either.
  • Fixed the laser coil dragging players off the ground. Containment was a sphere around a centre well above you, so standing still read as escaping.
  • Fixed the custom bossbar disappearing if he was renamed by a resource pack, or you played in another language.
  • Fixed a long body outrunning its own chunk loading, which would have stopped the tail ticking at high segmentCount.
  • Summoning now works in the End, the Nether, and custom dimensions without sky (requireOpenSky).
  • Segments no longer vanish at low view distance (extendBossTrackingRange).
  • He no longer sits inside the floor during the laser phase (groundAvoidance, groundClearance).
  • Player summons (wolves, golems, minions) now throttle properly and give their owner threat and loot credit.
  • The summon quote is translatable instead of hardcoded English.
  • bossHitCooldownTicks = 0 was never quite "no i-frames": mergeMeleeSegmentHits is separate and still merges a swing. Set both. The config says so now.

Textures

Shoutout GameOfLife!

  • Music Disc (Eulogy for the Ego)
  • Cosmic Flame effect
  • Draconic Soul Fragment (new, animated)

Notes

  • If he ever just stands there ignoring you, send the whole latest.log. There is a [DoG-target] warning that names whether he found nobody or was refused the target, and the mod list at the top identifies the culprit.

This mod has no additional files