Sea Serpent Additions is a Minecraft Forge addon that turns Ice and Fire's Sea Serpents into rare, hatchable ocean companions while preserving the danger of naturally spawned adults.
Wild adults cannot be tamed. A companion must be raised from a rare egg dropped by an Ancient Sea Serpent.
- Minecraft 1.20.1
- Minecraft Forge 47.4.10 or another compatible Forge 47 build
- Ice and Fire 2.1.13 for Minecraft 1.20.1 (developed against beta 5)
- Citadel 2.6.3 or newer
- Java 17
Install the addon, Ice and Fire, and Citadel on both the client and server. All players joining a server must use matching mod versions.
- Variant-matched eggs from player-killed Ancient Sea Serpents
- Seven egg colors matching Ice and Fire's Sea Serpent variants
- Underwater egg placement, incubation, and hatching
- Automatic imprinting on the egg owner
- Five growth stages with Dragon Meal acceleration
- Stay, Follow, and Wander staff commands
- Owner protection and self-defense combat AI
- Automatic enhanced bubble attacks for owned serpents
- Riding for fully grown serpents
- Fast underwater travel, vertical swimming, and slow shoreline movement
- Mounted bite and enhanced bubble attacks
- Water Breathing and Night Vision while riding, plus a ten-second grace period
- Dragon Horn pickup through the serpent's multipart body and water-only release
- Dragon Flute support
- Runtime wild spawning in existing ocean chunks
- A five-part advancement progression
Only a player-killed Ancient Sea Serpent can drop an egg. The default drop chance is 10%, and the egg color matches the defeated serpent.
Place the egg underwater on a solid surface. It needs an ocean biome and enough clear water around it to incubate. The default incubation time is 7,200 valid ticks, or six minutes. If its placement becomes invalid, the egg drops as an item instead of being destroyed.
The hatchling is automatically owned by the player stored on the egg. It begins at growth stage one and cannot be ridden until stage five. Ice and Fire Dragon Meals accelerate its growth.
Craft the staff with one Sea Serpent Skull and two Dragon Bones. Right-click an owned serpent to bind the staff to it.
- Right-click while bound: cycle Stay, Follow, and Wander.
- Sneak + right-click: immediately set Stay.
- Stay: stop, clear combat targets, and disable automatic bubbles.
- Follow: escort the owner and defend them.
- Wander: use normal free-roaming behavior.
The staff works only while the bound serpent is loaded in the same dimension.
Only the owner can ride a fully grown Sea Serpent. Use an empty main hand to mount it. A serpent can be mounted while commanded to Stay.
| Action | Control |
|---|---|
| Move and steer | Standard movement controls |
| Ascend underwater | Jump |
| Descend underwater | Ice and Fire Dragon Down key |
| Bite | Ice and Fire Dragon Strike key |
| Bubble attack | Ice and Fire Dragon Fire Attack key |
| Dismount | Standard dismount key |
The exact Dragon Strike, Dragon Down, and Dragon Fire Attack bindings can be changed under Options > Controls > Ice and Fire.
Ridden breach jumping is intentionally disabled because the current wild jump animation does not position a rider cleanly.
Owned serpents defend themselves and their owner without targeting their owner or allied serpents belonging to the same player.
The mounted bite reuses Ice and Fire's native bite animation, sound, timing, and size-scaled melee damage. Mounted bubbles use a wider visible water trail, reliable swept collision, a five-block splash radius, and up to 20 damage before distance falloff.
An unmounted owned serpent with a visible combat target automatically fires enhanced bubbles while in water. The default interval is three seconds, or 1.5 seconds for an owned Ancient serpent.
An owner can capture their serpent in an empty Ice and Fire Dragon Horn by clicking its head or any multipart body segment. A stored Sea Serpent can only be released into water. If there is not enough room to place it safely, it remains stored.
The Dragon Flute can locate owned serpents and place them into Follow mode.
Ice and Fire normally places Sea Serpents during world generation. This addon can also replenish wild serpents in already-generated ocean chunks.
By default, each dimension checks once every 60 seconds and has a 25% chance to attempt a spawn. A valid location must be an ocean-tagged biome with at least 12 blocks of water depth, 48-112 blocks from a player, away from world spawn, and inside an already-loaded chunk. No more than two wild serpents can exist within 160 blocks of the attempted location.
Runtime serpents use Ice and Fire's original initialization: seven random variants, original size ranges, and the original 1-in-15 Ancient chance.
The Forge server configuration is stored per world under:
saves/<world>/serverconfig/iceandfire_seaserpentadditions-server.toml
Important defaults:
| Setting | Default |
|---|---|
| Ancient egg drop chance | 0.10 |
| Egg incubation | 7,200 ticks |
| Owned bubble damage multiplier | 1.0 |
| Owned bubble splash radius | 5 blocks |
| Automatic bubble interval | 60 ticks |
| Ancient automatic bubble interval | 30 ticks |
| Mounted speed multiplier | 3.0 |
| Runtime wild spawning | Enabled |
| Runtime spawn check interval | 1,200 ticks |
| Runtime spawn chance per check | 0.25 |
| Runtime local cap | 2 |
Restart the world or server after changing server configuration values.
- Ruler of the Tides: obtain a Sea Serpent Egg.
- Something Stirs Below: hatch a Sea Serpent.
- Raised From the Depths: raise it to full growth.
- Ocean Rider: mount a fully grown serpent.
- Tidal Assault: damage an enemy with a mounted bubble attack.
- Egg and headpiece models are still being developed; improved art can be released later without changing the core progression.
- The Sea Serpent headpiece is planned but not implemented yet.
- Ridden breach jumping is disabled because the wild animation does not support a natural rider pose.
- The bound staff cannot control an unloaded serpent or one in another dimension.
- Broad public multiplayer testing is still in progress.
- This addon is developed for the specified Ice and Fire 1.20.1 build; other versions are not guaranteed compatible.
Useful reports should include:
- Minecraft, Forge, Ice and Fire, Citadel, and addon versions
- Singleplayer or dedicated server
- Steps to reproduce the problem
- Relevant latest log or crash report
- Whether the issue also occurs in a clean test world
Multiplayer and modpack compatibility feedback is especially welcome during the development beta.
The project uses Java 17 and ForgeGradle. Build it with:
./gradlew buildThe production jar is written to build/libs/.
See CREDITS.txt for contributors and upstream acknowledgements and changelog.txt for feature history.
This project is distributed under the license declared in the repository. Ice and Fire, Citadel, Minecraft, and Minecraft Forge remain the property of their respective owners. This is an independent addon and is not an official Ice and Fire release.