Skip to content

About

Port/Rewrite of Cyano's/MMD's ElectricAdvantage mod

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Electric Advantage 3

Minecraft 1.21.1 mod using NeoForge 21.1.265, ModDevGradle, and Java 21. Root Java package: zone.moddev.mc.electricadvantage.

Required dependencies (compile and development runtime), all from the ModDevZone Maven (https://maven.moddev.zone/releases):

  • zone.moddev.mc.lib:mmdlib:2.0.0.12102+Neo (MMDLib 2.0)
  • zone.moddev.mc.poweradvantage:PowerAdvantage:3.1.1.121012+Neo (Power Advantage 3.1)
  • zone.moddev.mc.orespawn:OreSpawn:4.1.0.121012 (MMD OreSpawn 4)

Dependency versions are set in gradle.properties. These dependencies are not bundled into the mod JAR. Install them alongside Electric Advantage in a regular Minecraft instance.

Use Java 21 and the checked-in Gradle wrapper:

./gradlew build
./gradlew runClient
./gradlew runServer
./gradlew runData

The dedicated server requires accepting Minecraft's EULA in run/eula.txt. Build artifacts are written to build/libs/.

The build follows the MMD mod template. GitHub Actions builds every push and pull request. Pushing a tag publishes a release. The tag is the mod version, formatted as major.minor.bug followed by the Minecraft version without dots and a loader digit (2 for NeoForge); for example, 3.0.0.121012. Local builds are versioned <mod_version>-development. On a tag, the publish workflow uploads to the ModDevZone Maven if the MAVEN_UPLOAD_URL, MAVEN_UPLOAD_USERNAME, and MAVEN_UPLOAD_PASSWORD secrets are set. It also creates a GitHub release. It uploads to CurseForge (project curseforge_id in gradle.properties) when the CURSEFORGE_TOKEN secret is set. Add each release to update.json so NeoForge's update checker can announce it.

All 17 electronics/material and battery items and the seven ore/infrastructure blocks are implemented with textures, translations, tags, and initial recipes. Lithium and sulfur use restricted MMDLib material definitions; other components use standalone definitions. See material selections and ID mapping. All batteries use the same MMDLib-backed energy core; see batteries. Cable/scaffold/switch electricity transport uses the PA3 shared transport core; LED lighting, generated pump pipe, and OreSpawn 4 deposit generation are implemented. See infrastructure behavior and verification. Four generation/storage machines now share data-driven settings and MMDLib XML screens; see generation and storage. The furnace, crusher, oven, distiller and refinery now share a processing core; see processing behavior and remaining machines. The Growth Chamber and its Control Unit are redesigned data-driven greenhouse machines; see growth chamber and control unit. The Electric Pump extends its pipe, traces connected fluid and treats large water/lava bodies as infinite; see electric pump. The Laser Turret and its hidden player-targeting variant are ported from EA2; see laser turret. The Electric Mining Drill is ported from EA2: it mines 3×3 faces and moves along Electric Scaffold; see electric drill. Conditional recipes require compatible material tags; remaining automation machines and complete survival acquisition remain pending. Track implementation and verification in TODO.md.

Run the isolated server integration test (excluded from release JARs):

./gradlew -PgameTests runGameTestServer

EA2/ is an untouched archive for reference only; it is not included as a Gradle project or source directory.

Validate model parents and inherited texture paths with python3 scripts/validate_resources.py.

About

Port/Rewrite of Cyano's/MMD's ElectricAdvantage mod

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages