Coder Social home page Coder Social logo

aaronstar-mcclure / atlauncher Goto Github PK

View Code? Open in Web Editor NEW

This project forked from atlauncher/atlauncher

0.0 0.0 0.0 8.72 MB

ATLauncher is a Launcher for Minecraft which integrates multiple different ModPacks to allow you to download and install ModPacks easily and quickly.

License: Other

Java 99.77% CSS 0.01% Dockerfile 0.04% Batchfile 0.10% Shell 0.08% Go 0.01%

atlauncher's Introduction

ATLauncher

CircleCI Discord

What is it

ATLauncher is a Launcher for Minecraft which integrates multiple different ModPacks to allow you to download and install ModPacks easily and quickly.

Links

Coding Standards & Styling Guidelines

Please see the STYLE.md file for coding standards and style guidelines.

Contributing to ATLauncher

Take a look at CONTRIBUTING.md

Testing

Please see the TESTING.md file for information on how we write tests.

Building

To build this project, simply run:

./gradlew build

This will build the application and output the resulting files for Windows, Linux and OSX in the dist directory.

Running in test

If you want to run the launcher while developing with it, you can use your IDE (if you have one) to do that for you.

Alternatively you can run:

./gradlew run --args="--debug --debug-level 3 --working-dir=test"

Using VSCode

This project is setup to use VSCode for development. You're free to use any other IDE that you're accustomed to (if any), but by using VSCode, you get the benefit of predefined tasks and launch commands.

Checking for dependency updates

To check for dependency updates with gradle, simply run:

./gradlew dependencyUpdates

This will print a report to the console about any dependencies which have updates.

Plugging In Your Data

To get started with the code and plug in your own data, you need to edit the /src/main/java/com/atlauncher/data/Constants.java file.

By using this source code you don't get permissions to use our CDN/files/assets/modpacks. See the License section at the bottom for more.

See below for explanations as to what each constant means.

VERSION

This is a LauncherVersion object passed in the reserved, major, minor, revision ints for this version of the launcher. See the 'Versioning System' section below.

API_BASE_URL

This is a link to your server side API for processing of leaderboard times and pack installs. This is optional and can be removed. We do not give implementation code, this is your own doing.

PASTE_CHECK_URL

This is a link to the url where an instance of stikked is running (For instance http://www.mypaste.com) this is how the launcher knows if the paste was successful by checking the response from the API for the url of the software.

Please note that the domain given above IS NOT REAL. You must install stikked on your own domain and reference it, the domain is only there as an example of what a valid value is.

PASTE_API_URL

Same as above

SERVERS

This is an array of Server type elements the launcher uses as a base to download files.

LAUNCHER_NAME

This is the name of the launcher.

How to make your data

To make the data the Launcher needs you will need to figure out your own server side way of doing that. You can create a system to do it automatically or you can manually do it by just popping the files on the server. The best way to get the file structure and contents is to examine the source code and the ATLauncher files it downloads.

Versioning System

Starting with version 3.2.1.0 a new versioning system was put into place. It works off the following:

Reserved.Major.Minor.Revision.Build

So for 3.2.1.0.0 the major number is 2 and minor number is 1 and revision number is 0. Reserved is used as a base, only incremented on complete rewrites. The build number is optional and should be 0 on releases.

Major should be incremented when large changes/features are made.

Minor should be incremented when small changes/features are made.

Revision should be incremented when there are no new features and only contains bug fixes for the previous minor.

Build is used for beta releases allowing you to have higher version numbers but force users to update when the real release comes.

Updating The Version

The version should be updated manually in the following files:

  • CHANGELOG.md
  • build.gradle
  • /src/main/java/com/atlauncher/data/Constants.java

Translating

ATLauncher is written for English speakers. All our translations are community run by those who take their time and submit updates to the text in a different language.

If you wish to help translate ATLauncher, please visit our page on Crowdin and start translating.

Updating the template file

If new strings are added to the launcher, the template file will need to be updated in order to take into account the new strings.

In order to do this, run ./gradlew generatePots which will scan the source files and create a build/gettext/translations.pot file.

Note that out of the box, this will not generate in the correct format. The file should be opened with POEdit, which will automatically fix the file, which then you can save to translations.pot in the root directory, which will then get picked up by Crowdin.

Need Help/Have Questions?

If you have questions please don't hesitate to contact us

License

This work is licensed under the GNU General Public License v3.0. To view a copy of this license, visit http://www.gnu.org/licenses/gpl-3.0.txt.

A simple way to keep in terms of the license is by forking this repository and leaving it open source under the same license. We love free software, seeing people use our code and then not share the code, breaking the license, is saddening. So please take a look at the license and respect what we're doing.

Also, while we cannot enforce this under the license, you cannot use our CDN/files/assets/modpacks on your own launcher. Again we cannot enforce this under the license, but needless to say, we'd be very unhappy if you did that and really would like to leave cease and desist letters as a last resort.

If you have any questions or concerns as to the license or what we consider to be good and bad in your clone/fork, please use the contact link in the section right above this one.

atlauncher's People

Contributors

alisonjenkins avatar asyncronous avatar atlauncher-bot avatar bashton-ajenkins avatar cherry avatar dgelessus avatar expertmac2 avatar flaw600 avatar hakanai avatar hossammohsen7 avatar iarspider avatar ipeaches avatar jamierocks avatar kihira avatar modmuss50 avatar ryantheallmighty avatar shegorath123 avatar tetha avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.