PyWeek 29 challenge: “The butterfly effect”
- caterpillar-game-master.zip — The game!
As the rules say – if it crashes, it's on me. So you can mark it as "Failed to run". But if you'd still like to play the game on Windows, a fixed version is available on GitHub (link to archive). Thanks to claxo for sending be a backtrace and testing the fix!
Screenshots are not up to date, obviously. The boat is not a white rectangle anymore. Don't let that throw you off.
Also check out the game's itch.io page!
Download + Run Instructions
Make sure you have the following dependencies installed:
- pygame 1.9+
- pytmx 3.2+
These are listed in the requirements.txt file, which you can use to pip install these packages.
After that, extract the file and run main.py in python 3.
Extract the contents of the zip file, and run main.exe in the PYWEEK29 folder.
- Butterfly-Destroyers-1.1.zip — Final 1.1
In the year 20XX, butterflies have started to overpopulate the Earth (a problem of the future that you wouldn't understand). It is up to humans, the only intelligent species in the world, to reduce the butterfly populations. But the butterfly army and their leader, "Big Butta", won't go without a fight! :O
How to Play
pip install -r requirements.txt
Or in a virtual environement :
git clone https://github.com/PythonixCoders/PyWeek29.git butterfly-destroyer
python -m venv .env
pip install -r requirements.txt
- WASD or arrows to move
- Space or enter to shoot
- Shift to change weapons after unlock
But the game is better with a controler,
and there is no guarantee that it will work with
correct mappings on others.
- Main sticks to move
- A/B or RB/LB to shoot
- X/Y to change weapons after unlock
One of the most important thing missing is
a way to select the level. If you quit the game and
want to start at a certain level, just pass the number of
the level to the command line. For instance:
python run_game.py 4 # Any number between 1 and 7 included
python run_game.py intro
python run_game.py credits
Most of the game is done, but as the deadline approched,
we did not have enough time to make all the levels we wanted
and the last levels need a lot more love that they received.
Some of them were even abandoned in a hurry.
Let's have a minute of silence for them.
If you want to know what the rest of the game would
have looked like, you can check the scenario
and use your imagination to design good levels with well balanced
ButtaBombers and Flyers. Also imagine the final boss with nice
CreditsShip graphic: https://opengameart.org/users/pitrizzo
The Team:Group of students trying to make the best of quarantine.
As queen of an ant colony, you have many responsibilities and decisions to make. Every action you take affects your colony, and, little do you know, the entire world. You are presented with choices to make, from entering an alliance with a nearby bee hive, to choosing to explore, to paying termites for protection. There will be tough decisions and trade-offs, but you can only hope you do what is best for your colony. After each season, newspapers brought in from the human world can show the true impact of your decisions and the ways you might end up changing the world as we know it.
The game ends when you follow one of 4 paths of decisions to one of 5 possible endings.
(Running from source requires python3, pygame, and pygame_gui)
The Sound Attributions:
Button sound by Mike Koenig on SoundBible
Altered, trimmed so it's only half of the button sound effect
Newspaper music by John Stracke on SoundBible
Altered, trimmed so only the first trumpet notes can be heard
Game music by Bensound.com
- Journey_Of_The_Monarch.zip — Our game, Journey of the Monarch
And here's our result ...
You are a Monarch butterfly migrating to Mexico. This is the final leg of your 3000 mile journey from Canada and it will be the most perilous. You are weak and getting tangled in a bush is a real possibility. If that wasn't enough, you'll also have to contend with predatory birds swooping in for a butterfly flavored snack.
Thankfully there are Milkweed flowers here and there on your route. You can glide onto them to replenish some of your energy which decreases with every flap of your wings. The faster you fly, the more energy you use.
It's suggested that you run the game within its own virtualenv to avoid any dependency conflicts.
- Unzip the source archive
- Open the directory that was extracted from the archive
- Run pip install pgzero==1.2
- Run python butterfly.py
- Up Arrow: speed up
- Down Arrow: slow down
- Left/Right Arrows: go left and right
- Spacebar (hold): glide (uses glide power, conserves energy)
- Glide onto flowers for energy
- Avoid or glide over bushes
- Speed up or slow down to dodge birds
Glide power is used up faster than it is gained. Choose when to glide wisely. You'll need to glide to land on flowers to replenish energy. You can also glide over bushes if you can't dodge them. Once you've depleted your glide power, it has to build up to a certain point before you can glide again.
Going faster isn't necessarily better. It's harder to dodge bushes and plot your course to the next milkweed. On the other hand it can be useful for avoiding birds. Speaking of that, sometimes you might need to leave a flower before you've gathered all of its nectar.
Take deep breaths and relax. Try and balance energy, glide power, staying alive and completing your journey.
Built with Python, PyGame Zero, Mu and PyCharm. All graphics created in MS Paint 3D by Christian and Eli Wyglendowski.
Animated butterfly (graphics and code) by Eli Wyglendowski. Bushes and bird graphics also by Eli.
Original musical score by Christian Wyglendowski.
Uses the PixelLetters font by GeelynEdits.
- PyWeek29ButterflyEffect.7z — A simple shmup themed around the butterfly effect
Theme: The butterfly effect
Arrow keys: Move
Butterfly Effect: Z
WHAT TO SEE:
A simple shmup. When you kill an enemy, you gain a hurricane charge. After 4 successful kills, you can fire the Butterfly Effect, an unstoppable large whirlwind that kills everything in its path.
Hillbilly Swing by Kevin MacLeod Link: https://incompetech.filmmusic.io/song/5705-hillbilly-swing License: http://creativecommons.org/licenses/by/4.0/
necro-windB by ludist Link: https://freesound.org/people/ludist/sounds/204446/ License: https://creativecommons.org/licenses/by/3.0/
Check credits.txt file for additional resource links under CC0 license
- badwing-src.zip — Source
* This is the PyWeek#29 version. For the latest go to https://github.com/kfields/badwing
!!! If you encounter a sound problem try badwing-nosound-src instead !!!
Embark on an enchanting adventure as Larry the Lepodopterist AKA BadWing
2D Physics Skateboarding/Adventure Game using Arcade & Pymunk
The Python Arcade Library: https://arcade.academy/
All assets except for the butterflies came from The Python Arcade Library. See their site for further copyright info
The original source for most of these assets can be found at https://www.kenney.nl/
The butterflies can be found at: https://wenrexa.itch.io/animated-butterflies-sprites. No attribution required
Consult README.md for instructions on how to install and run this game
Movement: WASD + arrow keys (press up to do an Ollie!)
Pause/Menu: Escape key
This was my second PyWeek competition since #6 way back in 2008. I entered one week before the competition when I found out I would be temporarily unemployed because of the Corona Virus epidemic and would have time to give it my full effort. I'm so glad I did because I learned and accomplished so much!!!
Special thanks to @jtrip for being a friend and beta tester on the journey
How long can you make your planet survive?
Try to increase the time of your life in the planet, make it to civilization, you can get more force to control your planet.
Do let it crush by other big planets, don't let it become a star!
The Universe is shrinking and Gravity is increasing! Watch Out!
First choice is more important than other things --> Butterfly Effect!
Gameplay video on youtube:
- go_forth_and_butterfly-master.zip — Zipped copy of GitHub repository. See README or details on the pyweek entry page for instructions
https://github.com/CompassMentis/go_forth_and_butterfly.git, python 3.6 or 3.7, pygame 2.0.0(dev)
Lead your flock through the levels. Sleep at night or perish. Eat when hungry or perish
When it is mating season, make little butterflies (oops, no level for this - functionality is mostly but not quite there - so no mating)
(Steps 1 and 2 - you can also download the zip file, either from github or the uploaded file for this pyweek entry, unzip it and change into the newly created directory with the unzipped files)
(Steps 3 and 4 to create a virtual environment - optional but recommended)
(Step 3, this needs at least python 3.6, but doesn't work with 3.8 - so 3.6 or 3.7)
(Step 5, the only dependency is pygame. It only works with 2.0.0(dev), not 1.9.6)
- git clone email@example.com:CompassMentis/go_forth_and_butterfly.git
- cd go_forth_and_butterfly/
- python3.7 -m venv .env
- source .env/bin/activate
- pip install -r requirements.txt
- python main.py
Sorry, I couldn't get it to work with pyinstaller Please run it in Python instead
- pollen-source.zip — Final source code
- pollen-win64.zip — Windows binaries (extract, then click run_game.exe)
- pollen-linux.zip — Linux binaries
- pollen-macOS.zip — macOS .app (click System Prefs, Security, Open Anyway)
- pollen-master.zip — Snapshot of master at deadline.
Many thanks to lordmauve and all the other PyWeek participants for a great challenge!
- gridfly-0.0.0_manylinux1_x86_64.tar.gz — linux build, added icons
- gridfly-0.0.0_macosx_10_6_x86_64.zip — fixed mac, added icons
- gridfly-source.zip — Source
- gridfly-0.0.0_macosx_10_6_x86_64.zip — Mac bin
- gridfly-0.0.0_win_amd64.zip — Windows bin
- gridfly-0.0.0_manylinux1_x86_64.tar.gz — linux bin
- Use the arrow keys or left analog stick to move your butterfly and destroy all evil snakeys.
- Get the flower to activate your handy dandy flowerpower butterzapper.
- Avoid the immortal Great Queen Spider.
- Pull off super-combos by destroying an entire snakey from head to tail in one swoop.
- Always try to shoot the heads or be punished with laser mines, score a fraction of points and ruin your combo.
- Get an extra life every 25000 points.
- Infinite levels!
You should be able to jump right in. See the README for tips, settings (resolution etc.) and cheat codes.
pip users: see kfields's suggested requirements.txt here.
v2 contains one additional in-game instruction based on playtesting feedback. They're mechanically identical, though, so feel free to play/rate v1. Just check the README if you get stuck.
- title.png — title
- NothingSuspiciousHere-src.zip — Source Files
- NothingSuspiciousHere-exe.zip — Executable version
Nothing Suspicious Here: where a small action of yours will bring chaos to the world
Recommended volume: 30% or above
Note: it may take a few seconds to load the game, please be patient
- You woke up in a rather empty room, with just a boring chat bot besides you
- "What else is there to do?" you thought, and you tried talking to the box...
- You will need to solve three simple puzzles to result in two different endings
- The third ending requires.. a little effort, by talking to the box
- While the fourth, is the most boring one, only try to find that if you have a plenty of time!
- Sorry if there's any typo, I do think there are some typos, I'm not very good at English :(
***Please try playing the game first before watching the walkthrough video!***
***also watch the video instead if the game is not working on your computer!***
- Walkthrough Video: https://www.youtube.com/watch?v=6WImKzi5NLI
There is supposed to be a fifth ending! But I didn't have time to finish that one, so I will just explain it here:
- After you've finished all three endings(except the boring one), you will unlock a secret dialog with the box!
- The box will talk about how you can free him by trying to crash the game, this dialog is actually included in the time travel ending, go check it out!
- After the dialog is finished, a calculator will appear in the room, if you try to enter anything divided by 0, the game will crash(exit).
- If you re-open the game, the game opens in a command line format. If you type "free chatbox" in the command line, the game restarts with the chat box gone.
- This is more like an easter egg, but I didn't have enough time left to work on that. I will try to add an easter egg in the next pyweek project!
The README.txt is also included in each zip fileREADME.txt:
- Requires pygame 1.9.4 or above if you are using source version, the source code is compatible with both python2 and python3, python3 is recommended. Do "pip install pygame" to install this module.
- Run "run_game.py" if you are using source version, run "main.exe" if you are using executable version.
- You can use [K] to inspect an item or exit a GUI, [R] to restart a game, [ESC] to exit the game, [WASD] to move, you can use your cursor when inside a GUI.
- There are four endings in the game, and three puzzles to solve, always talk to the chat box when you are stuck!
- Please check the "copyrights.txt" in "texture" and "audio" folder for the copyright info about the textures or musics.
- ButterFlingv0.1.zip — First version of the game!
The aim of the game is to direct a ball to the target (in blue) using positionable blocks, while avoiding obstacles (in red). But if some of the blocks is positioned slightly out, the errors will accumulate and the butterfly effect will mean that the ball ends up nowhere close to the target!
- Click to place a block
- Left and right arrow to change rotation of most recently placed block
- X to delete most recently placed blocks
- Once you have arranged the blocks, hit space to start the ball moving straight ahead