Git Product home page Git Product logo

dodgetodrums's Introduction

Dodge to Drums

Discord server: https://discord.gg/jKUd9Ny Pyinstaller build latest-release

What is this?

This is a game in development. It's planned to become something between "Just Shapes and Beats" and "Cuphead". That means it'll become a bullet hell with focus on music and rhythm and with an open Level selection menu.

Who made this?

You will also be able to see this in the ingame credits once they're implemented, but here's the crew so far:

Programming

  • Riedler
  • Philip Damianik

Sketches & Art:

  • Dark Rosemary

Playtesting:

  • Andreas S. (Windows)
  • Philip Damianik (dual-screen Windows)

Compiling:

  • Riedler (Linux)
  • Andreas S. (Windows)
  • Philip Damianik (build pipeline)

Music:

  • Riedler
  • Dark Rosemary

Levels:

  • Riedler

Compatibility

You don't need any special libraries to run it on Windows or Linux. MacOS is currently unsupported, so please refer to compiling and figure it out with the guides for Linux and/or Windows. This may improve in the future. It should run on all major Linux distributions, but only Ubuntu and Arch Linux are supported. It should also run on everything above including Windows XP, but only Windows 10 is supported. Feel free to file an issue for any incompatibilities.

Screenshots

No screenshots are yet available, because it's so early in development right now, but Dark Rosemary drew an amazing sketch of what it's going to look like: Sketch of DTD

Usage

Download the matching executable for your OS and save it somewhere where you'll easily find it again, e.g. in a new folder on your Desktop. Then download the level archive (base_levels.zip or base_levels.tar.xz) and the data archive (base_data.zip or base_data.tar.xz) and extract them into the executable folder as levels/ and data/. Make sure that your extraction program of choice doesn't pack those folders into new ones (base_levels and base_data). When you first start the program, all settings are assumed to be the defaults. A config file conf.json will be created after changing the settings and saving them. The menu is controllable with the mouse and a few keys. ESC is usually for going back and Enter for confirming stuff. In the main game, the character is controllable with WASD. You can pause with ESC. All of those controls can be changed in the settings, as well as various other stuff.

Adding resources

All resources are in the data/ subfolder. All textures are specified in data/sprites.json, in the format "sprite_name":["file_name",true], where "file_name" is the relative file path without file extension (only png is allowed) and true is a boolean that determines if the upscaling method is set as Nearest-Neighbour or Linear. Animations are also supported, and can be specified in the format "animation_name":[["file1","file2",โ€ฆ],[18,true]], where as many files as necessary can be specified and 18 is the number of frames one picture should last. Animations aren't supported in all objects, but in most. If they're not supported, the animation will stay at frame 0. All sound effects are specified in data/sfx.json, in the format "sfx_name":["file_name",false], where "file_name" is the relative file path without file extension in the opus format, and false is a boolean that determines if the file is streamed to playback or loaded on program startup. false is heavily recommended here, and true can lead to crashes in some circumstances. All levels are in seperate folders in levels/. A tutorial on how to create new levels will be made soon.

Compiling

on windows

You'll need python for this. Make sure to download the newest version. In the cmd: First run pip3 install -r requirements.txt Then run python3 setup.py. If this doesn't produce any output, try pyinstaller \args\, where \args\ is all the options that aren't commented out in setup.py. I haven't figured out why this happens in windows yet, if you know, please file an issue. After the command finished successfully, there should be a build/ and a dist/ directory. You can delete the build/ directory, and move the executable from the dist/ directory wherever you want. If you encounter any error that's not explained in this guide, please file an issue in the repo.

on Linux

In bash (or zsh probably too): First run pip3 install -r requirements.txt --user. Then run python3 setup.py, which, after a short wait, produces a build/ and a dist/ directory. You can delete the build/ directory, and move the executable from the dist/ directory wherever you want. If you encounter any error that's not explained in this guide, please file an issue in the repo.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.