Giter Site home page Giter Site logo

acdp's Introduction

Animal Crossing Dynamic Player (ACDP)

Hey there! This is a project I've been working on called ACDP, a Python program that plays Animal Crossing music according to you.

How it works

I am sure you are wondering, how does this work?? Well, it uses a few Python packages, mainly python-weather, to determine what to play. If it is raining where you are, the music will have rain, same with snow or sun. It also checks the time. If it is 1am, it'll play the 1am music, and same for any other time. You can only have one OST downloaded at a time to save space.

Here is a video demonstrating how to use: YouTube [OUTDATED]

Which version should I use?

ACDP currently has three available versions:

  • a download version (play.py)
  • a streamed version (network.py)
  • an iOS version (via Shortcuts)

The download version downloads the music to your computer for fast and easy listening, however, it could take a while. You only need to download once. As long as the downloads are available (you can check any time at oscie cloud), there should be no issues.

The streamed version streams the music directly. This is a new feature, and may not work 100% of the time. If anything happens, please let me know in my Discord server in #acdp, or create an issue on GitHub.

The iOS version streams the music directly and is accessed via the Shortcuts app. This is brand new and is barely tested, so it is not public. If you'd like to use it, please join my Discord server and ask in #acdp. It currently only supports games of normal type (New Leaf, New Horizons, City Folk), and likely will only ever.

Both the download and streamed versions require the configuration file to be filled out properly, so make sure to read below.

Space Requirements

Space requirements for the download version have been made dynamic, meaning they can only be viewed in the program.

You can also view the game list in list.json

Set-up

  1. Make sure you have Python installed! (This was tested on Python 3.10)
  2. Run pip install -r requirements.txt to install the required packages.
  3. Create a file called .env and fill the information below
  4. Make sure you have .env and play.py/network.py in the same folder!
  5. Run python3 play.py/python3 network.py (or py play.py/py network.py on Windows) and it should run!

That's it, you're all ready to go!

Configuration

The .env file is how the program gets the correct configuration.

An example:

VOLUME=15
AREA=Sutton, London
ROOST=True

VOLUME

The VOLUME setting allows you to set the volume that the application plays at, but backwards.

The volume will be 100 - VOLUME, so for example, having VOLUME=15 would mean the volume is 85%.

AREA

The area is used to figure out the weather in your location. For example, you could have AREA=Madrid, Spain.

ROOST

Currently, some games that support The Roost in-game will have a random chance of playing their song (1-in-1000). As long as the game is supported (check list.json) and ROOST is set to True in .env, it might play.

File list

Upon downloading, feel free to delete the README.md, list.json, and .gitignore files.

You only need .env and play.py to use (you will need requirements.txt to set up, but you can remove it later).

Bugs

If you have any bugs, please report them at the issues page or in #acdp at my Discord server!

Why use this / Use-Cases

Apparently I have to clarify this. This can be used to play music in the background while studying, sleeping, working, or doing anything really, that was the main intention.

acdp's People

Contributors

oscie57 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

sasan369

acdp's Issues

Rewrite program

ACDP has a LOT of issues. There are many problems with how it is written and is very inefficient. Rewriting will probably save a lot of hassle.

change weather location

currently, python-weather is being used. consider trying out another provider like bbc-feeds

make downloader more efficient

currently, there is a different function for each game. having a single function with the game code passed through as an argument would make it much more efficient.

write up on language

animal crossing games (at least new horizons) change the colour of the text depending on the word. make it easier to know what colour to use

'The Roost'

I feel like it'd be nice to just have 'The Roost' music from the games to play at random times of the hour!

[REQUEST] Cross-game Randomisation

I've currently got multiple copies of ACDP running each soundtrack with each one muted except one... But I think it would be way better if I could just have the player play the correct time/weather song from a random game every hour.
I love this program! Nice and simple to use.

Add new games

When you can, look into adding new game audio to this.

  • Pocket Camp
  • GameCube Version

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.