Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Yet another free game engine for roguelike games. WARNING: API IS UNSTABLE SO FAR

License

Notifications You must be signed in to change notification settings

DarthAkiraNihil/Konna

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

671 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo

Konna

Maven Central Version

Yet another free and open-source game engine (that is possibly like a framework) for roguelike games. It is the hobby project so far, but it may turn into something bigger

Project Roadmap

The core principles

The Hyperpurism

The project should use as few dependencies as possible. A dependency is to be included only in case if it implements functionality that would be too complex to implement an independent solution (such as byte-code manipulation, code generation)

The Hypertuningability

The engine is not for all types of games. It is not universal in that aspect. However, it could be easily modified with engine components that you can create by yourself

The Hyperindependency

No Engine component should know about other components. They should communicate with events, tunnels and messages

Module structure

Konna/
├── core/ // Konna core module
├── konna-bom/ // Konna BOM
├── libfrontend/ // Libfrontend modules (often native library interfaces)
│   └── ...
├── backend/ // Backends - libfrontend implementations
│   └── ...
├── components/ // Standard Konna components
│   └── ...
├── annotaions/ // Annotations
│   └── ...
├── compilers/ // Annotation processors
│   └── ...
└── ... // other source code

Getting started

  1. Install JDK 21. Adoptium (Temurin) is preferred but you can use another one that you like.
  2. Be sure you use Maven Central in your project
    repositories {
        mavenCentral()
    }
  3. Use Konna platform in your dependencies and install required Konna modules
    dependencies {
        implementation platform("io.github.darthakiranihil:konna.bom:0.3.0")
    
        implementation "io.github.darthakiranihil:konna.core" // Konna core. It is a required module!
        implementation "io.github.darthakiranihil:konna.implementations-std-core" // Standard implementations of Konna Core classes. So far it is also a required module
       
        implementation "io.github.darthakiranihil:konna.component-graphics" 
        implementation "io.github.darthakiranihil:konna.backend-lwjgl" 
        implementation "io.github.darthakiranihil:konna.implementations-opengl33" 
        // Other modules and dependencies
    }

Building from source

  1. Install JDK 21. Adoptium (Temurin) is preferred but you can use another one that you like.
  2. Clone this repository
    git clone https://github.com/DarthAkiraNihil/Konna.git
  3. Change gradlew permissions (Linux/MacOS)
    chmod +x ./gradlew
  4. Build Konna
    ./gradlew build 
  5. Additionally, you can create Konna bundles
    ./gradlew createBundle
    As its result you will get three zip archives with jars, sources and docs for each module inside this project P.S. You also can clone the project and open it with IntellijIDEA and it will do its initialization automatically so you only have to run the build command (also IDEA is the preferred IDE to develop for Konna)

Project status

Repobeats analytics

Contributing

See CONTRIBUTING.md for more information

About

Yet another free game engine for roguelike games. WARNING: API IS UNSTABLE SO FAR

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages