Skip to content

grubermeister/solar-eclipse

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

122 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Eclipse Origins 4: Solar Eclipse

Welcome to Eclipse Origins 4, a love letter to Visual Basic 2D ORPG Engines.

  This build, nicknamed Solar Eclipse, is version 4.4.1.0-alpha.

Table of Contents

Requirements

  • Written in Java 21
    • OpenJDK "Temurin" version 21-0.3+9 (Eclipse Adoptium JDK)
  • Built with: Gradle 8.12.x (Groovy configuration)

Currently tested on Windows(10/11 amd64), Linux (PikaOS amd64), and macOS (Tahoe M1).

Project Overview

Version strings follow the MAJOR(#?).MODEL(#??).CONTROLLER(#??).VIEW(#??)-MILESTONE format.

So, Solar Eclipse (v4) is currently using Model v4, Controller v1, View v0, and is in its alpha milestone.

The project's packages and modules exist within the dev.atomixsoft.solar_eclipse namespace. The only module is core - server, editor, and client sub-projects are comprised of a series of packages.

Module Package Description
Core Game TODO
Core Utils TODO
Core Network TODO
N/A Server TODO
N/A Editor TODO
N/A Client TODO
N/A ClientAudio TODO
N/A ClientGraphics TODO
N/A ClientScene TODO
N/A ClientUtil TODO

Sub-projects

Core

The core sub-project includes essential libraries and classes shared across the other sub-projects.

| Dependencies:

Server

The server sub-project handles the back-end operations of the game.

| Dependencies:

Editor

The editor sub-project provides tools for developers to create and manage game content.

| Dependencies:

  • :core

Client

The client sub-project is the game front-end.

| Dependencies:

Building

Gradle Wrapper Setup

The gradlew script is the Gradle Wrapper. It is not Windows-specific. The w means "wrapper"; it pins the Gradle version used by the project so contributors do not have to rely on whatever gradle version is installed globally.

If this checkout does not include gradlew, create the wrapper once from the repository root with Java 21 selected:

export JAVA_HOME=$(/usr/libexec/java_home -v 21)
export PATH="$JAVA_HOME/bin:$PATH"
gradle wrapper --gradle-version 8.12.1 --distribution-type all

After that, use ./gradlew for project commands:

./gradlew --version

On macOS, ./gradlew --version must report JVM 21. Gradle 8.12.x cannot run on Java 25. If Java 25 is your default shell Java, prefix commands with Java 21:

env JAVA_HOME=/Library/Java/JavaVirtualMachines/temurin-21.jdk/Contents/Home ./gradlew :client:run

Clean and Build All

To clean & build all sub-projects, execute the following:

./gradlew clean 
./gradlew build

Clean and Build Core

You must build, preferably in a clean environment, the core sub-project before building server, editor, or client.

To clean & build only the core sub-project, execute the following:

./gradlew :core:clean 
./gradlew :core:build

Clean and Build Server

To clean & build only the server sub-project, execute the following:

./gradlew :server:clean 
./gradlew :server:build

Clean and Build Editor

To clean & build only the editor sub-project, execute the following:

./gradlew :editor:clean 
./gradlew :editor:build

Clean and Build Client

To clean & build only the client sub-project, execute the following:

./gradlew :client:clean 
./gradlew :client:build

Execution

Running the Server

You must run the server sub-project before editor or client.

To run the server, execute the following:

./gradlew :server:run

To run server in debug mode, execute the following instead:

./gradlew :server:debug

Running the Editor

To run the editor, execute the following:

./gradlew :editor:run

To run editor in debug mode, execute the following instead:

./gradlew :editor:debug

Running the Client

To run the client, execute the following:

./gradlew :client:run

To run client in debug mode, execute the following instead:

./gradlew :client:debug

Distribution

| TODO

Errata

Current planned Milestones are alpha, beta, rc1, rc2, and rtm.

For a little background, take a look at these links:

Of course, make sure you also visit us at [atomixsoft.dev] !

If you would like to follow our development tasks, check that out at our Trello Board!

We hope you find Eclipse Origins 4: Solar Eclipse a very clean, somewhat nostalgic, highly performant, and infinitely flexible engine. For any issues or contributions, please refer to our issue tracker or contributing guide.

Enjoy!

About

A Java 2D ORPG engine

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Java 99.6%
  • GLSL 0.4%