Skip to content

AlexRITIAN/FriceEngine

 
 

Repository files navigation

FriceEngine

image

CI status
Travis CI Build Status
AppVeyor Build status
CircleCI CircleCI
CodeShip CodeShip

License: GPL v3 Awesome Kotlin Badge

An easy, light, native game engine running on JVM.
View APIs or wiki to learn more about Frice Engine.

Why easy?

A flappy bird game uses just 65 lines of code only.
Written in Kotlin, also work on Java, JRuby, Groovy and Scala.

Why light?

The release build jar is about 200kb only.

Why native?

This engine is completely platform-independent: no JNI linkage, no native methods, everything is written in pure Kotlin.

Build

Add code below to your gradle scrip:

allprojects {
  repositories {
    /// ...
    maven { url 'https://jitpack.io' }
  }
}

dependencies {
  compile 'com.github.icela:FriceEngine:v1.0.3'
}

Usage

Supported

Languages

  • Kotlin
  • Java
  • Groovy
  • Scala

Progress

  • Game Objects (from image or shape, image from file or web)
  • Life cycle
  • Collision detecting
  • Audio playing (*.wav only)
  • Dialogs
  • Cursor overriding
  • Clock system
  • Animations (frames, moving, scaling, accelerations, etc.)
  • A simple key-value database
  • Screen cut
  • Buttons
  • Particle effects
  • Easy time controlling
  • Language extensions(for Kotlin only)
  • Smart auto garbage collection(you can close it)

DSL

see DSL for FriceEngine

Basics

FriceEngine is based on the life cycle mode.
To build games based on frice engine, follow these steps:

  1. Import the jar in the latest release to your project.
  2. Create a class extends Game in org.frice.game package.
  3. Implement the abstract methods, just understand them by name.
  4. call the empty constructor in the public static void main.
  5. For full API doc please view APIs

Demos

see FriceDemo

About

Make game developing easy again!

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Kotlin 99.4%
  • Java 0.6%