Welcome, Guest. Please login or register. Did you miss your activation email?

Author Topic: Alkali, a physics inspired precision platformer  (Read 8644 times)

0 Members and 1 Guest are viewing this topic.

SleipnerGames

  • Newbie
  • *
  • Posts: 5
    • View Profile
    • Email
Alkali, a physics inspired precision platformer
« on: August 20, 2021, 05:21:33 pm »


Hi everyone!

We are a developer duo that have been working on Alkali for over 3 years alongside university. We are using C++ and SFML with no other libraries. A goal with this project was to make everything from scratch except for anything that is platform dependent.

Alkali is a precision platformer inspired by the chemical reactions of alkali metals. Use your physical properties to propel yourself across a variety of dangerous levels, coupling traditional platforming mechanics with the mass-based mechanics of the alkalic main character. Collect chunks of metal to grow yourself, leap into the water for an explosive jump, or barely graze past a whirring saw with just a sliver of body remaining.

https://youtu.be/o0dxGJelDcA

Some notes about the project
  • Custom collision detection using SAT, supporting all convex polygons and circles.
  • Custom menu system created from the ground up (this took waaay longer than expected… but it now supports a variety of menu objects such as buttons, bindable keys, sliders, etc.).
  • Rebindable controls where the game automatically identifies connected controllers based on the SDL controller mapping database and displays sprites from Xelu’s OpenGameArt submission.
  • Custom level editor coded from scratch, with selection and undo-redo functionality.
  • Language support that’s easy to extend by the community, based on simple txt-files.
  • Ground tile sprites are loaded as a large block, and cut-and-connected as sf::Images for the various shapes.
  • GLSL fragment shaders for water, as well as Dark World effects.

Website: https://www.alkaligame.com/

The game is currently released as an alpha version, on itch.io as PWYW, $0 or more: https://sleipner-games.itch.io/alkali

We have a big focus on speedrunning, with a speedrun.com leaderboard. The fastest any% run so far is actually insanely fast.
https://youtu.be/glH1hGJ5-4I

Screen shots

A level in world 2 with rising water


World map of world 1


Level editor


Custom level selection menu
« Last Edit: August 20, 2021, 05:30:29 pm by SleipnerGames »

SleipnerGames

  • Newbie
  • *
  • Posts: 5
    • View Profile
    • Email
Re: Alkali, a physics inspired precision platformer
« Reply #1 on: August 27, 2021, 02:29:31 pm »
Patch 0.4.4 just got released. It contains fixes to the dashgrip mechanic (when you dash into a wall you get temporarily stuck and can jump out from it) and shader fixes. Several players are playing on really old computers, so we have changed some GLSL functions to older ones. The only GLSL error that we still know of but haven't been able to solve is the following error message: "ERROR: 0:1: '=' :  c". We are loading the shader from a const string.

Hapax

  • Hero Member
  • *****
  • Posts: 3054
  • My number of posts is shown in hexadecimal.
    • View Profile
Re: Alkali, a physics inspired precision platformer
« Reply #2 on: August 30, 2021, 05:59:48 pm »
This looks pretty nice. Good work and congrats on getting something playable out there :)
Selba Ward - SFML drawables
Kairos - Timing Library
Rectangular Boundary Collision - Rectangular SAT Collision

@Hapaxiation - Hapaxia on Twitter

SleipnerGames

  • Newbie
  • *
  • Posts: 5
    • View Profile
    • Email
Re: Alkali, a physics inspired precision platformer
« Reply #3 on: August 30, 2021, 09:37:43 pm »
This looks pretty nice. Good work and congrats on getting something playable out there :)
Thank you! Feels really good to finally have something that is released and playable.

SleipnerGames

  • Newbie
  • *
  • Posts: 5
    • View Profile
    • Email
Re: Alkali, a physics inspired precision platformer
« Reply #4 on: September 20, 2021, 11:12:24 am »
The water shader uses the following technique to create the waves: https://gamedevelopment.tutsplus.com/tutorials/make-a-splash-with-dynamic-2d-water-effects--gamedev-236

In the new patch we included an option for shader quality, that also affected the number of springs used for the waves. It greatly improved performance on lower end machines, but took some time to make the waves look similar on the different settings. We could probably optimize the shader much more but that's nothing we prioritize at the moment.

SleipnerGames

  • Newbie
  • *
  • Posts: 5
    • View Profile
    • Email
Re: Alkali, a physics inspired precision platformer
« Reply #5 on: October 15, 2021, 04:15:31 pm »
We got several requests about an easy way to see your stats. Especially time for each level and aggregated time, both used by speedrunners. We did this by adding the “Journal”, a book you can open while you are in the overworld that tracks all this data. We also added general stats like “number of double jumps” and “time in water”, which can be used for challenge runs. Previously there was no easy way to verify challenge runs, making it less accessible.


World stats in the Journal


General stats in the Journal