aviks / GameZero.jl

Zero overhead game development library for the Julia programming language
Other
184 stars 23 forks source link
creating-games games hacktoberfest julialang

GameZero

Build Status version Stable Build Status

A zero overhead game development framework for beginners.

Overview

The aim of this package is to remove accidental complexity from the game development process. We therefore always choose simplicity and consistency over features. The users of this package will include young programmers learning their first language, maybe moving on from Scratch. While we aim to support reasonably sophisticated 2D games, our first priority will remain learners, and their teachers.

Running Games

Games created using GameZero are .jl files that live in any directory. To play the games, start the Julia REPL and:

pkg> add GameZero

pkg> add Colors

julia> using GameZero

julia> rungame("C:\\path\\to\\game\\Spaceship\\Spaceship.jl")

Creating Games

Read the documentation to get started. The best way to learn how to use this package is by looking at existing games created with it. There are some simple examples in the example subdirectory. More comprehensive examples are listed in the GZExamples repository. The documentation will also display the example sources.

Status

This is an early release. Please try to make new games, and report any bugs, usability issues or missing features. We particularly welcome more games in the GZExamples repository.

Acknowledgement

The design of this library is inspired by the python package PyGameZero by Daniel Pope. Much of the design however has been changed to make things more Julian, and the implementation is independent.

GameZero uses SDL2 via the Julia wrapper.