{"id":15047744,"url":"https://github.com/deathkiller/jazz2-native","last_synced_at":"2025-05-15T12:06:11.487Z","repository":{"id":45734078,"uuid":"514256691","full_name":"deathkiller/jazz2-native","owner":"deathkiller","description":"🎮 · Jazz² Resurrection: Native C++ reimplementation of Jazz Jackrabbit 2","archived":false,"fork":false,"pushed_at":"2025-05-08T18:38:56.000Z","size":17002,"stargazers_count":599,"open_issues_count":7,"forks_count":40,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-05-08T19:25:14.925Z","etag":null,"topics":["2d","2d-game","android","cpp","cpp20","emscripten","game","game-2d","gamedev","jazz-jackrabbit","linux","macos","multi-platform","ncine","opengl","reimplementation","steamdeck","uwp","windows","windows-10"],"latest_commit_sha":null,"homepage":"https://deat.tk/jazz2/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/deathkiller.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2022-07-15T12:11:02.000Z","updated_at":"2025-05-08T18:38:59.000Z","dependencies_parsed_at":"2023-10-17T02:03:05.594Z","dependency_job_id":"ff3c1f41-5aee-462a-bc65-611b55ec3d25","html_url":"https://github.com/deathkiller/jazz2-native","commit_stats":{"total_commits":886,"total_committers":11,"mean_commits":80.54545454545455,"dds":0.02708803611738153,"last_synced_commit":"dc8fc10631e92c776ccb57af9fdab43e091599d1"},"previous_names":[],"tags_count":30,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deathkiller%2Fjazz2-native","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deathkiller%2Fjazz2-native/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deathkiller%2Fjazz2-native/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deathkiller%2Fjazz2-native/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/deathkiller","download_url":"https://codeload.github.com/deathkiller/jazz2-native/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254337613,"owners_count":22054253,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["2d","2d-game","android","cpp","cpp20","emscripten","game","game-2d","gamedev","jazz-jackrabbit","linux","macos","multi-platform","ncine","opengl","reimplementation","steamdeck","uwp","windows","windows-10"],"created_at":"2024-09-24T21:04:09.121Z","updated_at":"2025-05-15T12:06:06.472Z","avatar_url":"https://github.com/deathkiller.png","language":"C++","readme":"\u003cdiv align=\"center\"\u003e\n    \u003ca href=\"https://github.com/deathkiller/jazz2-native\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/deathkiller/jazz2/master/Docs/Logo.gif\" alt=\"Jazz² Resurrection\" title=\"Jazz² Resurrection\"\u003e\u003c/a\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n    Open-source \u003cstrong\u003eJazz Jackrabbit 2\u003c/strong\u003e reimplementation\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003csub\u003e\n    Brought to you by \u003ca href=\"https://github.com/deathkiller\"\u003e@deathkiller\u003c/a\u003e\n  \u003c/sub\u003e\n\u003c/div\u003e\n\u003chr/\u003e\n\n\n## Introduction\nJazz² Resurrection is reimplementation of the game **Jazz Jackrabbit 2** released in 1998. Supports various versions of the game (Shareware Demo, Holiday Hare '98, The Secret Files and Christmas Chronicles). Also, it partially supports some features of JJ2+ extension and MLLE. This repository contains fully rewritten game in C++ with better performance and many improvements. Further information can be found [here](https://deat.tk/jazz2/).\n\n[![Build Status](https://img.shields.io/github/actions/workflow/status/deathkiller/jazz2-native/linux.yml?branch=master\u0026logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZmlsbD0iI2ZmZmZmZiIgZD0iTTI0IDIuNXYxOUwxOCAyNCAwIDE4LjV2LS41NjFsMTggMS41NDVWMHpNMSAxMy4xMTFMNC4zODUgMTAgMSA2Ljg4OWwxLjQxOC0uODI3TDUuODUzIDguNjUgMTIgM2wzIDEuNDU2djExLjA4OEwxMiAxN2wtNi4xNDctNS42NS0zLjQzNCAyLjU4OXpNNy42NDQgMTBMMTIgMTMuMjgzVjYuNzE3eiI+PC9wYXRoPjwvc3ZnPg==)](https://github.com/deathkiller/jazz2-native/actions)\n[![Latest Release](https://img.shields.io/github/v/tag/deathkiller/jazz2?label=release)](https://github.com/deathkiller/jazz2/releases/latest)\n[![All Downloads](https://img.shields.io/github/downloads/deathkiller/jazz2/total.svg?color=blueviolet)](https://github.com/deathkiller/jazz2/releases)\n[![Code Quality](https://img.shields.io/codacy/grade/64eb3ca12bd04c64bf3f3515744b591a.svg?logo=codacy\u0026logoColor=ffffff)](https://www.codacy.com/app/deathkiller/jazz2-native)\n[![License](https://img.shields.io/github/license/deathkiller/jazz2-native.svg)](https://github.com/deathkiller/jazz2-native/blob/master/LICENSE)\n[![Discord](https://img.shields.io/discord/355651795390955520.svg?color=839ef7\u0026label=chat\u0026logo=discord\u0026logoColor=ffffff\u0026labelColor=586eb5)](https://discord.gg/Y7SBvkD)\n\n\n## Preview\n\u003cdiv align=\"center\"\u003e\n    \u003cimg src=\"https://raw.githubusercontent.com/deathkiller/jazz2/master/Docs/Screen2.gif\" alt=\"Preview\"\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\u003ca href=\"https://www.youtube.com/playlist?list=PLfrN-pyVL7k6n2VJF197F0yVOZq4EPTsP\"\u003e:tv: Watch gameplay videos\u003c/a\u003e\u003c/div\u003e\n\n\n## Running the application\n### Windows\n* Download the game\n* Copy contents of original *Jazz Jackrabbit 2* directory to `‹Game›\\Source\\`\n* Run `‹Game›\\Jazz2.exe`, `‹Game›\\Jazz2_avx2.exe` or `‹Game›\\Jazz2_sdl2.exe` application\n\n`‹Game›` *denotes path to Jazz² Resurrection. The game requires **Windows 7** (or newer) and GPU with **OpenGL 3.0** support. Game files should **not** be copied to* `Program Files`*. Cache is recreated during intro cinematics on the first startup, so it can't be skipped.*\n\n### Linux\n* Download the game\n* Install dependencies: `sudo apt install libglew2.2 libglfw3 libsdl2-2.0-0 libopenal1 libvorbisfile3 libopenmpt0`\n  * Alternatively, install provided `.deb` or `.rpm` package and dependencies should be installed automatically\n* Copy contents of original *Jazz Jackrabbit 2* directory to `‹Game›/Source/`\n  * If packages are used, the files must be copied to `~/.local/share/Jazz² Resurrection/Source/` or `/usr/local/share/Jazz² Resurrection/Source/` instead, please follow instructions of specific package\n* Run `‹Game›/jazz2` or `‹Game›/jazz2_sdl2` application\n  * If packages are used, the game should be visible in application list\n\n`‹Game›` *denotes path to Jazz² Resurrection.* `~` *denotes user's home directory. The game requires GPU with **OpenGL 3.0** or **OpenGL ES 3.0** (ARM) support. Cache is recreated during intro cinematics on the first startup, so it can't be skipped.*\n\n\u003csup\u003eAlternatively, you can use package repository for your Linux distribution:\u003c/sup\u003e\u003cbr\u003e\n[![ArchLinux](https://img.shields.io/badge/Arch%20Linux-grey?logo=archlinux\u0026logoColor=ffffff)](https://aur.archlinux.org/packages/jazz2-bin)\n[![Flathub](https://img.shields.io/flathub/v/tk.deat.Jazz2Resurrection?label=Flathub\u0026logo=flathub\u0026logoColor=ffffff)](https://flathub.org/apps/tk.deat.Jazz2Resurrection)\n[![Gentoo](https://img.shields.io/badge/Gentoo-grey?logo=gentoo\u0026logoColor=ffffff)](https://packages.gentoo.org/packages/games-arcade/jazz2)\n[![NixOS](https://img.shields.io/badge/NixOS-grey?logo=nixos\u0026logoColor=ffffff)](https://search.nixos.org/packages?channel=unstable\u0026show=jazz2\u0026from=0\u0026size=50\u0026sort=relevance\u0026type=packages\u0026query=jazz2)\n[![OpenSUSE](https://img.shields.io/obs/games/jazz2/openSUSE_Tumbleweed/x86_64?label=OpenSUSE\u0026logo=opensuse\u0026logoColor=ffffff)](https://build.opensuse.org/package/show/games/jazz2)\n[![Ubuntu](https://img.shields.io/badge/Ubuntu-grey?logo=ubuntu\u0026logoColor=ffffff)](https://xtradeb.net/play/jazz2/)\n\n### macOS\n* Download the game and install provided `.dmg` application bundle\n* Copy contents of original *Jazz Jackrabbit 2* directory to `~/Library/Application Support/Jazz² Resurrection/Source/`\n* Run the newly installed application\n\n`~` *denotes user's home directory. Cache is recreated during intro cinematics on the first startup, so it can't be skipped.*\n\nAlternatively, you can install it using \u003csub\u003e\u003csub\u003e[![Homebrew](https://img.shields.io/homebrew/cask/v/jazz2-resurrection?logo=homebrew\u0026logoColor=ffffff\u0026label=Homebrew\u0026color=b56b2b)](https://formulae.brew.sh/cask/jazz2-resurrection)\u003c/sub\u003e\u003c/sub\u003e `brew install --cask jazz2-resurrection`\n\n### Android\n* Download the game\n* Install `Jazz2.apk` or `Jazz2_x64.apk` on the device\n* Copy contents of original *Jazz Jackrabbit 2* directory to `‹Storage›/Android/data/jazz2.resurrection/files/Source/`\n  * On **Android 11** or newer, you can *Allow access to external storage* in main menu, then you can use these additional paths:\n    * `‹Storage›/Games/Jazz² Resurrection/Source/`\n    * `‹Storage›/Download/Jazz² Resurrection/Source/`\n* Run the newly installed application\n\n`‹Storage›` *usually denotes internal storage on your device.* `Content` *directory is included directly in APK file, no action is needed. The game requires **Android 5.0** (or newer) and GPU with **OpenGL ES 3.0** support. Cache is recreated during intro cinematics on the first startup.*\n\n### Nintendo Switch\n* Download the game\n* Install `Jazz2.nro` package (custom firmware is needed)\n* Copy contents of original *Jazz Jackrabbit 2* directory to `/Games/Jazz2/Source/` on SD card\n* Run the newly installed application with enabled full RAM access\n\n*Cache is recreated during intro cinematics on the first startup, so it can't be skipped. It may take more time, so white screen could be shown longer than expected.*\n\n### Web (Emscripten)\n* Go to https://deat.tk/jazz2/wasm/\n* Import episodes from original *Jazz Jackrabbit 2* directory in main menu to unlock additional content\n\n*The game requires browser with **WebAssembly** and **WebGL 2.0** support – usually any modern web browser.*\n\n### Xbox (Universal Windows Platform)\n* Download the game\n* Install `Jazz2.cer` certificate if needed (the application is self-signed)\n* Install `Jazz2.msixbundle` package\n* Run the newly installed application\n* Copy contents of original *Jazz Jackrabbit 2* directory to destination shown in the main menu\n  * Alternatively, copy the files to `\\Games\\Jazz² Resurrection\\Source\\` on an external drive to preserve settings across installations, the application must be set to `Game` type, `exFAT` is recommended or correct read/write permissions must be assigned\n* Run the application again\n\n\n## Building the application\n\nThis section contains only a brief explanation of the build process. For a more detailed explanation, including build configuration parameters, please refer to [the developer documentation](https://deat.tk/jazz2/docs/).\n\n### Windows\n* Build dependencies will be downloaded automatically by *CMake*\n  * Can be disabled with `NCINE_DOWNLOAD_DEPENDENCIES` option, then download [build dependencies](https://github.com/deathkiller/jazz2-libraries) manually to `.\\Libs\\`\n* Build the project with *CMake*\n  * Alternatively, download [build dependencies](https://github.com/deathkiller/jazz2-libraries) to `.\\Libs\\`, open the solution in [Microsoft Visual Studio 2019](https://www.visualstudio.com/) (or newer) and build it\n\n### Linux\n* Build dependencies will be downloaded automatically by *CMake*\n  * Can be disabled with `NCINE_DOWNLOAD_DEPENDENCIES` option, then download [build dependencies](https://github.com/deathkiller/jazz2-libraries) manually to `./Libs/`\n  * System libraries always have higher priority, there is no need to download them separately if your system already contains all dependencies\n  * In case of build errors, install following packages (or equivalent for your distribution):\u003cbr\u003e`libgl1-mesa-dev libglew-dev libglfw3-dev libsdl2-dev libopenal-dev libopenmpt-dev libcurl4-openssl-dev zlib1g-dev`\n* Build the project with *CMake*\n\n### macOS\n* Build dependencies will be downloaded automatically by *CMake*\n  * Can be disabled with `NCINE_DOWNLOAD_DEPENDENCIES` option, then download [build dependencies](https://github.com/deathkiller/jazz2-libraries/tree/macos) manually to `./Libs/`\n* Build the project with *CMake*\n\n### Android\n* Install Android SDK (preferably to `../android-sdk/`)\n* Install Android NDK (preferably to `../android-ndk/`)\n* Install Gradle (preferably to `../gradle/`)\n* Build dependencies will be downloaded automatically by *CMake*\n  * Can be disabled with `NCINE_DOWNLOAD_DEPENDENCIES` option, then download [build dependencies](https://github.com/deathkiller/jazz2-libraries/tree/android) manually to `./Libs/`\n* Build the project with *CMake* and `NCINE_BUILD_ANDROID` option\n\n### Nintendo Switch\n* Install [devkitPro toolchain](https://devkitpro.org/wiki/devkitPro_pacman)\n* Build the project with *CMake* and devkitPro toolchain\n```bash\ncmake -D CMAKE_TOOLCHAIN_FILE=${DEVKITPRO}/cmake/Switch.cmake -D NCINE_PREFERRED_BACKEND=SDL2\n```\n\n### Web (Emscripten)\n* Install [Emscripten SDK](https://emscripten.org/docs/getting_started/downloads.html) (preferably to `../emsdk/`)\n```bash\ncd ..\ngit clone https://github.com/emscripten-core/emsdk.git\ncd emsdk\n./emsdk install latest\n./emsdk activate latest\n```\n* Build dependencies will be downloaded automatically by *CMake*\n  * Can be disabled with `NCINE_DOWNLOAD_DEPENDENCIES` option\n* Copy required game files to `./Content/` directory – the files must be provided in advance\n* Build the project with *CMake* and Emscripten toolchain\n\n### Xbox (Universal Windows Platform)\n* Build dependencies will be downloaded automatically by *CMake*\n  * Can be disabled with `NCINE_DOWNLOAD_DEPENDENCIES` option, then download [build dependencies](https://github.com/deathkiller/jazz2-libraries) manually to `.\\Libs\\`\n* Run *CMake* to create [Microsoft Visual Studio 2019](https://www.visualstudio.com/) (or newer) solution\n```bash\ncmake -D CMAKE_SYSTEM_NAME=WindowsStore -D CMAKE_SYSTEM_VERSION=\"10.0\"\n```\n\n\n## License\nThis project is licensed under the terms of the [GNU General Public License v3.0](./LICENSE) and uses extensively modified [nCine](https://github.com/nCine/nCine) game engine.","funding_links":[],"categories":["Games"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeathkiller%2Fjazz2-native","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdeathkiller%2Fjazz2-native","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeathkiller%2Fjazz2-native/lists"}