Skip to content
This repository has been archived by the owner on Nov 13, 2022. It is now read-only.

Releases: Torbuntu/Leikr

Official 1.0 release for flatpak

29 Sep 20:31
Compare
Choose a tag to compare
1.0.1

-- update app ID

Flatpak

29 Sep 01:10
Compare
Choose a tag to compare
Flatpak Pre-release
Pre-release
1.0.0-flatpak

-- Refactor for flatpak

Drag and Drop

23 Sep 23:20
Compare
Choose a tag to compare
Drag and Drop Pre-release
Pre-release

Official first "full" release! It is now in a place where I consider it to have everything I set out to do initially! 🎉 🥳 🎉

This release had a major refactor of the entire code base. Cleaned up and even added unit tests! Which is quite exciting as it now enforces a finalized API, so at this point the API is essentially locked in, and any new changes to the API will be properly tagged with Deprecated and will be slowly phased out, instead of just sweeping changes that break everybody's projects (terribly sorry about that!)

Major Additions:

  • Drag and drop support! You can now drag a project folder from your Programs directory and drop it directly on the Leikr window to launch the project.
  • New Graphical Menu Screen. I know there was one at the start, but this one will be much slimmer and focused on "console" like deployment (use with gamepads). To enter the Terminal for dev mode on a computer, press ctrl + alt + T (Note: Currently Controller support is mostly secondary to the Keyboard and Mouse)
  • Controller fixes. 2 controllers are now identified independently, no longer overwriting each other. There will be more updates coming to controllers, such as individual controller mapping, soon.

It has been a long time in development on this project, and I have had a lot of fun. I hope to continue having fun and making this a really great platform for folks to make small games in Groovy :)

If this is the full release, why does it say SNAPSHOT? - Well, simple. Just because it has all the features, doesn't mean I think they are solid enough for the true 1.0.0 release ;)

A few more notes:

  • JDK version 14+ required. You can grab it here: https://adoptopenjdk.net/ (I use hotspot) or using a tool like sdkman: https://sdkman.io/ (I highly recommend sdkman. It makes things so much easier)
  • Controllers "work" but mapping is still a big pain. I'll be focusing on that for the big full release.
  • Arm devices now work! Thanks to libgdx finally supporting arm32 and aarch64 devices, one Leikr release now works across the platforms! I put this in the notes section because I've only had a chance to test on my Pinebook Pro aarch64 machine, so it may be needing some more tweaks on Raspberry Pi (the intended target).

Things under heavy focus for the full release:

  • Revamp the docs!!!
  • Finalize the controller setup and settings. (controller being gamepads)
  • bug fixes if I find them or folks report them :D they are there. Probably just hiding.

Thanks for playing! Happy hacking!

Get and Set 0.0.18

19 Jul 22:03
Compare
Choose a tag to compare
Get and Set 0.0.18 Pre-release
Pre-release
  • Added getPixels(name). Returns an array list of all colors in a given texture image (in the Art directory)

  • Added getPixel(name, x, y). Same as the current getPixel(x, y) except it works from a given texture in the Art directory instead of the whole screen.

  • Fixing drawCircle command. On smaller circle sizes the right side got really wonky.

  • Updated the windows Leikr.bat launcher to use system java version instead of a (no longer) bundled JRE.

  • Added get command to get a program's property value by name.

  • Added set command to set the property of a program's given property by name.

  • Added compile command to compile a program from the terminal. This compiles the program's "Code" directory into the correct "Compiled" sub directory, allowing a game to be run from the compiled class files (if set to use_compiled)

  • When running ls without a directory name, projects with compiled sources will show an asterisk. These should start up much quicker (again, if use_compiled is true in the program.properties).

Note:

I am working on adding an aarch64 version, but this might come later. The benefit of this is to run it on PinePhone, Pinebook Pro and other aarch64 compatible linux operating systems.

0.0.17 - It's the Terminal

07 Jan 17:24
Compare
Choose a tag to compare
Pre-release

Note that in this release I am not bundling a JRE, Leikr will require Java 13 to run. I get it from here: Adopt OpenJDK

Breaking changes:

  • Files loaded from Audio and Art directories now require the file extensions (this allows more file types to be supported)

From pixelbath (https://github.com/pixelbath/):

  • Font updated (removed trailing pixel)

  • Fixed a phantom pixel issue with the mouse cursor on Windows

  • Adding an Icon for Windows and updating the base logo

  • Cursor is now "catched" to the window during programming Running. Released in Pause or Error

  • Loading screen overhauled to be entirely new, and gorgeous

  • Helped debug a path bug on exporting projects from Windows host

  • Updated default projects to not be so boring and stupid.

  • Updated/Fixed the language/template of the contributors file to be more friendly to new contributors.

(In the https://github.com/torbuntu/Leikr-samples repo)

  • Added and updated many of the demo projects to be epic.

  • Released Flappy Birb!

From Uberoverlord (https://github.com/uberoverlord):

  • A redesigned Terminal Command system that is 100% better than the previous hard coded version.

  • First official game released for Leikr: whackamole

Other updates from Torbuntu:

  • export, install and uninstall commands updated and now public terminal commands.

  • Terminal now has command history (20 places) with the up and down arrow keys.

  • GIF Recorder full screen toggle added (Left Ctrl + F or F11)

  • Audio now has added support for mp3 and ogg.

  • Textures from the Art directory now also support jpg and bmp.

  • Added window resize on Terminal and Pause screens using Left Ctrl + Num (where Num is 1,2 or 3)

  • Fixed a bug where setting the launch_title in system.properties didn't force a launch of the project.

  • Sprite indexing to display a more user friendly error when index out of bounds than just "null"

  • Using drawMap() when a map hasn't been loaded now displays a user friendly error instead of just "null"

  • Fixed crashing on GameShell due to controller dispose bug.

  • Added Page Up/Down for easier selecting games to run especially on GameShell)

  • Adding package [game] command to create a zip bundle of your single game for sharing as a stand alone project. Will place the zip in the Deploy/ directory.

Release 0.0.16 -Episode V - WAR!

16 Dec 21:25
Compare
Choose a tag to compare
Pre-release

Release 0.0.16 is one of the largest releases in a while.

From pixelbath (https://github.com/pixelbath/):

  • All new Start up screen! Looks amazing.
  • Default font is now smaller, leaving much more room for messages in Terminal Screen.
  • Added a tint(String color) method.

The API has gone through a number of changes in regards to graphics.

  • spriteSc has been upgraded adding a size param.
  • Some bugs in spriteSc have been fixed.
  • New sprite method taking ArrayList of ID's.
  • Draw calls and other graphics api methods have been updated with a new Color override.
  • Color is now a native object in Leikr! With commands getColor(String) and getColor(int)
  • getPixel(x,y) now returns a Color object.
  • getPixel(x,y) had a bug where y was off by 1 pixel. That was fixed.
  • TerminalScreen has seen a few updates to the commands provided, and a bug fixed with loading newly generated projects.
  • Custom Program Properties and asset folders are no longer required to run.
  • Tools are now their own program type inside Data/Tools/
  • create(String[] args) is now available as a replacement to create() for passing in arguments from TerminalScreen
  • New Program Generator has gone through significant updates to provide an easier way to generate new projects. Includes a template option from Data/Templates/
  • collides method was broken. Fixed now.
  • Layer options to maps are now available!
  • Sprite draw limit is now 128, because 2048 was ridiculous for this system.
  • Added/Fixed the about command to return all the program properties info.
  • Added an update() option that does not require a delta.
  • audio was behaving oddly, made a few bug fixes to that.
  • Removed the unnecessary JVM param to limit memory usage. (Caused crashes using Gif recorder).
  • Added a wiki command to open the wiki on the TerminalScreen

And I am sure many other small bugfixes and enhancements overall that I missed. This is a really exciting update because it has had the most amount of community contributed feedback and code.

I am really excited to see where things go from here!

0.0.15 API and Polish

23 Nov 04:41
Compare
Choose a tag to compare
0.0.15 API and Polish Pre-release
Pre-release

This release focused a big deal on polishing the 0.0.14 framebuffer release.

  • Removed some API methods that no longer were used (whoops)
  • Added back in the String RGB color arguments for drawing commands!
  • Added GIF Recorder from the gdx plugin by Anuken
  • New Program tool has been updated to now actually set the appropriate class name for new program's groovy files.
  • Added a getPixel(x,y) command to get the color of a selected pixel.
  • Added back in drawCircle and fillCircle commands.
  • Audio now stops when a program errors.
  • Assets for Textures and Sprites are now being reloaded properly (asset managers were not being disposed between loads).
  • Cleaned up the engine initialization and rendering process.
  • Fixed and packaged ControllerUtils for this release.

Various other minor bug fixes and performance enhancements were littered throughout this build.

Happy hacking!

The FrameBuffer Update

16 Nov 05:12
Compare
Choose a tag to compare
Pre-release

Leikr 0.0.14 is probably one of the most exciting releases, I think.

This has also been one of the easiest releases and one of the first to have a build for Arm ready along with the desktop targets. Be aware that the Arm version is specifically for the Raspberry Pi. I'm still trying to work out the issues relating to the GameShell.

  • All new Frame Buffer! The Leikr screen is actually for real 240x160 now!
  • Features some new terminal commands: pwd and find.
    pwd will print the location of the Programs directory to the screen as well as attempt to open it with the host file manager. Find is similar except it takes a program name and opens directly to that if it finds it.
  • A few of the draw commands have been updated to have a more consistent API, taking a color id or rgb String value as an initial argument. bgColor now clears the screen with the given value, instead of just drawing a screen sized rectangle (whoops).
  • Along with arguments changing on the draw methods, some have been completely overhauled under the hood to be more consistent with the Leikr look and feel.
  • Asset directories in projects such as Sprite and Audio are now optional! So if someone is only making a drawing demo, they can use just the Code directory.
  • The Leikr window now has the Leikr logo (work in progress logo) as the window icon instead of lwjgl's logo.
  • Remove the terminal command "load" which wasn't useful at all and only caused confusion.
  • Removed the credits screen.

Project structure updates:

  • Upgraded to Gradle 6! This will help pave the way to newer JDK versions (such as 13).

0.0.13

05 Nov 23:36
Compare
Choose a tag to compare
0.0.13 Pre-release
Pre-release

Just a quick release!

Export/Install, and another Pi release!

30 Sep 01:36
Compare
Choose a tag to compare
Pre-release

NEW! Export and Install

Another ARM build for the Raspberry Pi

The documentation in the wiki is now more up to date (still needs details filled in).

Added an Export tool to zip up completed games to be shared with others. To install, they need to be put in a "Packages" directory and then in the Leikr terminal simply install [name] to have it uncompressed into the Programs directory. (This system is still being worked on and will be cleaned up)

A few loader bugs were cleaned up (trying to load directories as assets).

Mostly a cleanup release from the major API overhaul and version update. More stable, but Leikr is still in pre release.

Note: This release does NOT bundle a JRE.

You will need a minimum of JDK 12.

For the Raspberry Pi build this means you will need to download it yourself because the repo on Raspbian doesn't have that yet. I use AdoptOpenJDK from here: https://adoptopenjdk.net/releases.html?variant=openjdk12&jvmVariant=hotspot#arm32_linux