1.3.0
Compatibility
Changes
[1.3.0] — 2026-05-30 (NeoForge 1.21.1 + Forge 1.20.1)
Kavacha armor expansion. 56 new armor items across 14 sets — 3 tiered progression sets (wooden / iron / divine kavacha) and 11 named legendary sets, each tied to a deity or hero from the Mahabharata/Puranas with a full-set gameplay bonus.
Added — 14 armor sets (helm + cuirass + greaves + boots each)
Tiered (no set bonus, for progression):
- Wooden / Iron / Divine Kavacha — leather→iron→netherite tier stats.
Named legendary (full-set bonus when all 4 pieces worn):
- Kavacha-Kundala (Karna) — projectile immunity. The birth-armor that made Karna untouchable by arrows.
- Kirita-Mukuta (Arjuna) — bow damage +50%. The divine crown gifted by Indra.
- Vajra-Kavacha (Indra) — 50% melee thorns. Returns lightning to attackers.
- Gada-Kavacha (Bhima) — damage resistance + knockback resistance.
- Vaijayanti-Kavacha (Krishna) — regeneration aura.
- Surya-Kavacha (Surya) — damage boost in daylight under open sky.
- Yamadharma-Kavacha (Yama) — +50% damage vs monsters.
- Varuna-Kavacha (Varuna) — water breathing + dolphin's grace.
- Agni-Kavacha (Agni) — fire & lava immunity.
- Mahishasura-Mardini (Durga) — +50% damage vs monsters (anti-asura).
- Vayu-Kavacha (Vayu) — movement speed boost.
Implementation
- All armor codegen'd from
tools/gen_armor.py(template script — edit the spec there, not the generated Java). KavachaArmorItembase class carriessetId+setBonuskeys;AstraShastraArmorEventschecks for full-set match every server tick and on damage events.- Textures: vanilla iron armor templates recolored per set (Karna gold, Indra electric-blue, Agni fire-red, etc.). Hand-painted replacements TODO for v1.3.x polish.
- Recipes: simple shaped (wood/iron/netherite ingot in classic armor patterns).
Backports
- Forge 1.20.1 — shipped (verified in dev client). Custom enum-based
KavachaMaterial implements ArmorMaterial(interface, not record);tools/gen_armor_forge_120.pyshares the SETS spec from the master codegen. - NeoForge 1.21.11 — deferred (ArmorItem class was removed in 1.21.5, requires Equipment data component approach; lab version, fewer downloads).
[1.1.0] — 2026-05-24
Multi-version release. Ships two jars covering the most-played 1.21.x ends: the original NeoForge 1.21.1 build (full 11 weapons) plus a new NeoForge 1.21.11 build (6 weapons, subset). Establishes the multi-version infrastructure for adding more MC versions in follow-up releases.
Added — NeoForge 1.21.11 support (new jar)
- 6 weapons ship for 1.21.11: Wooden / Iron / Sudarshana Chakras, Wooden / Iron / Divine Kaumodakis.
- New project structure:
versions/1.21.11/sibling tomod/. Each version is a self-contained NeoForge build. - Gandiva, Brahmastra, and Vajra deferred for 1.21.11 — they depend on classes that were heavily refactored between 1.21.1 and 1.21.11 (
SwordItem/Tierremoved in 1.21.5,AbstractHurtingProjectile/GameRulesmoved packages,Arrowmoved,EventBusSubscriber.Busannotation removed). Per-class ports tracked for v1.1.x.
API ports applied for 1.21.11
InteractionResultHolder<ItemStack>→InteractionResult(sealed interface with static constants).Item.use()returnsInteractionResult(no generic).Item.releaseUsing()returnsbooleaninstead ofvoid.UseAnim→ItemUseAnimation.- Item registration:
register(name, Supplier)→registerItem(name, factory, properties)(required because Item constructors now check for an ID on Properties). - Item cooldowns:
player.getCooldowns().isOnCooldown(this)→isOnCooldown(stack)(takes ItemStack now). - Recipe ingredient format:
{"item": "X"}→"X",{"tag": "X"}→"#X"(plain strings only). - Item models: added required
assets/<namespace>/items/<name>.jsondefinitions alongside existingmodels/item/<name>.json(1.21.4 item model rewrite). ParticleTypes.DRAGON_BREATHswapped forENCHANTin divine Chakra ring (DRAGON_BREATH becameParticleType<PowerParticleOption>, no longer directly usable asParticleOptions).
Unchanged — NeoForge 1.21.1 build
- Same 11-weapon feature set as v1.0.0. Just a version bump.
Added — Forge 1.20.1 support (new jar)
- All 11 weapons ship for Forge 1.20.1. Full feature parity with the 1.21.1 build.
- Major port work: NeoForge → Forge package swaps (
net.neoforged.*→net.minecraftforge.*),RegistryObjectvsDeferredHolder,FMLJavaModLoadingContextbus pattern,SwordItem4-arg constructor,Tier.getLevel(): int(vs 1.21.x'sgetIncorrectBlocksForDrops()), 1.20.1hurtAndBreak(amount, entity, Consumer<T>)signature,Arrow(Level, LivingEntity)2-arg constructor,AbstractHurtingProjectile6-arg constructor with separate xyz components,SoundEvents.Xdirect constants (no.value()Holder unwrap),pack.mcmetarequired for resource pack detection.
Targets per jar
astrashastra-1.1.0.jar(frommod/) — Minecraft 1.21.1 · NeoForge 21.1.230+ · Java 21+ · 11 weaponsastrashastra-1.1.0.jar(fromversions/1.21.11/) — Minecraft 1.21.11 · NeoForge 21.11.42+ · Java 21+ · 6 weaponsastrashastra-1.1.0.jar(fromversions/forge-1.20.1/) — Minecraft 1.20.1 · Forge 47.4.6+ · Java 17+ · 11 weapons
Known limitations
- 1.21.11 jar ships 6 of 11 weapons. Gandiva / Brahmastra / Vajra ports planned for v1.1.x (heavy API churn in 1.21.x makes these substantial work).
- No intermediate 1.21.x versions yet (1.21.2 → 1.21.10). Each would need similar porting effort.
[1.0.0] — 2026-05-23
First stable release. Eleven Mahabharat-inspired weapons across five families, fully tested in-game across multiple iteration cycles. Drops the -alpha suffix carried through 0.1–0.4 development.
Highlights since v0.1.0-alpha
- 11 weapons across 5 Mahabharat families (Sudarshana Chakra × 3, Gandiva × 3, Kaumodaki × 3, Vajra, Brahmastra).
- Custom entity infrastructure — Brahmastra now fires a custom projectile that renders as the divine arrow item sprite (no longer looks like a Ghast fireball). Foundation for future custom projectiles.
- Charge mechanics — Gandiva (hold-to-draw bow) and Brahmastra (hold-to-charge missile) with power scaling.
- Ranged + melee + mining for Vajra — left-click melee (25 dmg), right-click ranged lightning at aimed target, mines blocks like a divine multi-tool.
- Water-safe divine particles for Sudarshana Chakra — end-rod + dragon-breath + flame ring works underwater.
- Tiered progression for the three physical weapons (Wooden → Iron → Divine) with distinct visuals, damage, durability, and particle effects per tier.
Weapon catalog (release feature set)
| Weapon | Tiers | Right-click | Highlights |
|---|---|---|---|
| Sudarshana Chakra | Wooden / Iron / Divine | Radial AOE sweep | Particle ring scales by tier; divine is unbreakable |
| Gandiva | Wooden / Iron / Divine | Hold-to-draw bow, 1/2/3 arrows in fan | Vanilla bow animation, crit on full charge |
| Kaumodaki | Wooden / Iron / Divine | Ground-slam AOE shockwave | Morning-star design, divine has lava+explosion particles |
| Vajra | Divine | Ranged lightning at aimed target (50-block) | + Left-click 25-dmg melee, + mines blocks |
| Brahmastra | Divine | Charge 1 s + release divine missile | 8× explosion power, custom-rendered projectile |
Targets
- Minecraft 1.21.1
- NeoForge 21.1.230+
- Java 21+
Known not-yet-shipped features (deferred to v1.1+)
- Throwable returning projectile for divine Sudarshana Chakra
- Tracking-arrow / never-miss mechanic for divine Gandiva
- Forge 1.20.1 backport (separate jar, same 11 weapons)
- Quest system, armor sets, boss mobs, Kurukshetra dimension (original roadmap v0.2–v1.0 → now v1.1+ roadmap)
[0.4.0-alpha] — 2026-05-23 (superseded by 1.0.0; not separately uploaded)
Custom Brahmastra fireball entity + renderer. Replaced vanilla LargeFireball (Ghast appearance) with a custom BrahmastraFireball entity that renders as the Brahmastra item sprite with a flame trail. Introduced custom entity registration infrastructure.
[0.3.0-alpha] — 2026-05-23 (superseded by 1.0.0; not separately uploaded)
Gandiva hold-to-draw charge mechanic for all 3 tiers. Power scaling, crit on full charge, range bumped 50%.
[0.2.0-alpha] — 2026-05-23 (superseded by 1.0.0; not separately uploaded)
Added Gandiva × 3, Kaumodaki × 3, Vajra (divine), Brahmastra (divine). Kaumodaki redesigned as morning-star. Vajra reworked to ranged lightning + block mining. Brahmastra charge time and explosion power tuned.
[0.1.0-alpha] — 2026-05-22
First public release. Validated the mod packaging + CurseForge publish pipeline.
Added
- Sudarshana Chakra family — three tiers of Krishna's divine discus:
- Wooden Chakra — 2 sweep damage, 2.5-block radius, 60 durability. Ring of flying wooden sticks.
- Iron Chakra — 5 sweep damage, 3.0-block radius, 250 durability. Ring of iron nuggets + metallic sparks.
- Sudarshana Chakra (divine) — 8 sweep damage, 4.0-block radius, unbreakable, fire-resistant, Epic. End-rod sparkles + dragon-breath + flame (renders in water).
- Crafting recipes for all three tiers.
- "Astra Shastra" creative tab between Tools and Combat.
- Mod logo in the in-game Mods list.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:HtjQZyYX:X8dkkV2f"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:HtjQZyYX:X8dkkV2f"
}

