All Projects → danilolc → pk2

danilolc / pk2

Licence: MIT license
Pekka Kana 2, a platformer game

Programming Languages

C++
36643 projects - #6 most used programming language

Projects that are alternatives of or similar to pk2

tnt
A 2d Game Engine written in C++20.
Stars: ✭ 30 (-48.28%)
Mutual labels:  sdl2, sdl2-mixer, sdl2-image
sdl2-image
Haskell bindings to SDL2_image.
Stars: ✭ 16 (-72.41%)
Mutual labels:  sdl2, sdl2-image
PokeChat
UNIX compatible, Discord and Telegram inspired, Pokémon-themed instant messaging service.
Stars: ✭ 11 (-81.03%)
Mutual labels:  sdl2, sdl2-mixer
neural-network-training-with-games
Neural network training with games
Stars: ✭ 25 (-56.9%)
Mutual labels:  sdl2, sdl2-image
koboredux
Kobo Redux - Kobo Deluxe Revived
Stars: ✭ 25 (-56.9%)
Mutual labels:  sdl2, sdl2-image
gnuboy
latest version of original laguna source, with a handful fixes for modern compilers and systems
Stars: ✭ 70 (+20.69%)
Mutual labels:  sdl2
RawSalmonEngine
A game engine utilising "Tiled" map files
Stars: ✭ 15 (-74.14%)
Mutual labels:  sdl2
SDL net
A simple, cross-platform wrapper over TCP/IP sockets.
Stars: ✭ 93 (+60.34%)
Mutual labels:  sdl2
brogue-android-port
Brogue Android Port
Stars: ✭ 47 (-18.97%)
Mutual labels:  sdl2
SDL mixer
An audio mixer that supports various file formats for Simple Directmedia Layer.
Stars: ✭ 178 (+206.9%)
Mutual labels:  sdl2-mixer
ffi-sdl
PHP FFI SDL bindings
Stars: ✭ 23 (-60.34%)
Mutual labels:  sdl2
sdl2-raycast
SDL2 C++ raycasting engine with vertical movement, floor/ceiling texture mapping and sprites.
Stars: ✭ 80 (+37.93%)
Mutual labels:  sdl2
sdl stb font
Renders text using STB_Truetype in pure SDL
Stars: ✭ 40 (-31.03%)
Mutual labels:  sdl2
fermium
An easy to build and use set of SDL2 bindings.
Stars: ✭ 48 (-17.24%)
Mutual labels:  sdl2
shiromino
A fast-paced puzzle game with roots in the arcade.
Stars: ✭ 28 (-51.72%)
Mutual labels:  sdl2
endbasic
BASIC environment with a REPL, a web interface, a graphical console, and RPi support written in Rust
Stars: ✭ 220 (+279.31%)
Mutual labels:  sdl2
gameframework2d
Core Example Program for 2D Game Programming Class
Stars: ✭ 16 (-72.41%)
Mutual labels:  sdl2
RustTetris
Tetris Made in Rust and SDL2
Stars: ✭ 18 (-68.97%)
Mutual labels:  sdl2
ParsecSoda
Parsec Soda is a custom open-source game streaming app that integrates with Parsec API and is focused in Host experience.
Stars: ✭ 135 (+132.76%)
Mutual labels:  sdl2
openmom
A cross-platform open source port of Master of Magic game from Microprose
Stars: ✭ 90 (+55.17%)
Mutual labels:  sdl2

pekka

Copyright (c) 2003 Janne Kivilahti

Ported to SDL by Samuli Tuomola (2010) https://github.com/stt/pk2

Translated and ported to SDL2 by Danilo Lemos (2016-2020)

"Pekka Kana 2 (Pekka the Rooster 2) is a jump 'n run game made in the spirit of old classic platformers such as Super Mario, Sonic the Hedgehog, Jazz Jackrabbit, Super Frog and so on." http://kiwi.mbnet.fi/pistegamez/pk2/

This repository contains the source code and resource files for the game Pekka Kana 2 created by Janne Kivilahti in 2003. The source code was released by the original author on a forum thread.

Since then a lot of things changed, including an initial SDL port by Samuli Tuomola in 2010 and then the SDL2 port, bug fixes, and code redesign by Danilo Lemos (2016-2020).

This game was tested on Windows, GNU/Linux and Android.

Binary distibution

Windows

There is a compiled binary with the version 1.3.5. https://files.fm/f/9q2np9y6h

Compiling

Windows

To compile on Windows, you will need the mingw c++ compiler with SDL2 and Zip (optional) libs. There is a Makefile on /mingw/i686/ that defines the needed stuff and include /mingw/mingw.mk. Edit the /mingw/i686/Makefile as you need and run Make on this directory.

Debian

To compile Pekka Kana 2 into Debian GNU/Linux based distributions, you need the SDL2, SDL2_image and SDL2_mixer libraries installed on the system. To get everything you need, just run the following command on the terminal:

$ apt install g++ make libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev

Then run the "make" command inside the "Pekka Kana 2" directory.

$ make

The PK2 binary will be in "bin/" directory.

$ ./bin/pekka-kana-2

To make the removal, within the compiled directory, execute this command:

$ make clean

Android

Run git submodule init then git submodule update to get the SDL libs. Then ./gradlew build on android/ with the SDK and the NDK installed may work.

macOS - not tested

Use Homebrew to install SDL2 packages:

brew install sdl2 sdl2_gfx sdl2_image sdl2_mixer

Now just clone the code and run make on pk2 directory, the PK2 binary will be in bin/ directory.

User made episodes:

http://mapstore.the.cz/ To add a new episode, just download the zip and put it inside "mapstore/" on local data.

The game can be started with the "dev" argument to enable the cheats and "test" following by the episode and level to open directly on the level.

This example starts the level13.map on dev mode:

./pekka-kana-2 dev test "rooster island 2/level13.map"

FIXMEs

  • Android import zip, delete zip, zip file on save (can't load save with no zip)
  • New graphics and controllers menu
  • SDL_QUIT on Android
  • Autosave settings option, ask when overwriting save, select save on new game
  • Remove repeated languages
  • Low volume sounds not played on low volume - music playing on volume 0
  • Jump frames when fps is low
  • Better sound quality

PLANS

  • Speed-run mode (frame counter, ghost)
  • Better documentation
  • Implement new layer on .map (regions)
  • Find image (load .bmp or .png)
  • New weather
  • OpenGL ES
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].