March 2023 challenge: “In the shadows”

31 entries

Shadow Embiggener

Hello I am new to Python and just seeing if I can make something for this challenge! I have only made one game before and it runs in console, for this I am dipping my toes into a proper game library with Arcade.

Embiggen your shadow to a cromulent size. This game plays like a SHMUP (shoot'em up). Shadow barriers will hurt your shadow if they come in contact so blast them away! If you lose your shadow, you lose the game! Collect power ups to embiggen your shadow. You win when you embiggen to 100%

Entrant: Lanecrest

Chinkara goat paradise

like best quality chinkara always I strive for glory only I number one tetam

REQUIRES PYTHON3.11 and PYGAME 2.3.0 or above!!!!!

This goat farm will never sell you any goats but they are so beautiful so you become very angry and raid it. But what you discover will shock the world...... and the game will show you this exactly.

Controls: arrow keys and space to skip cutscenes

Gameplay: Hide in shadows or in goat to avoid the guards. Then collect key to beat level.

Music, art and code all by team chinkaraoshiman

Play through:

Team: speedlimit35, meatyy, Name624

Shadow Combat

Shadow Combat

A streetfighter style game with the main theme being shadows, you and the enemy both being shadows.

pygame 2.1.3 or higher required to run this game
datetime 4.4 or higher required to run this game
Python version higher then 3.6 required to run this game

Moves List:
WASD - movement
J - punch (-2 health)
K - uppercut (-2 health)
L - lunge (sword attack -5 health)
JJK - special combo (-5 health), make sure to press very quickly

Credits for artwork/sounds can be found in the assets folder.

In depth explanation of game mechanics:
The enemy has 1 main attack which deals 4 damage and a special attack which deals 8 damage.
The special attack is obtained by the enemy after dealing a certain amount of hits (8, 10, or 12 depending on difficulty).
The enemy always has 100 health, the player can have 80, 100, or 120 depending on the difficulty.
The player has a chance to throw a critical hit which downs the enemy. The chances are 3%, 5%, and 8% depending on the difficulty.
The enemy "AI" has 4 states, spinning around to confuse the player, rushing the player dealing anywhere from 3 to 7 hits, waiting for the player to make a move, and waiting for the player to get closer so the enemy can use their special attack.


Entrant: JustAnotherCode

Tetris in Ohio

Heyyy! Everyone. I only got a couple of days this time :(
Anyways the game is complete heres a video

Please view for proper formatting. I am `BeautifulRequest` on pydis-server and `Ibrahim2750mi` on arcade server.

## How to run
Theres no addditional dependancies other than arcade. Supports python3.8-11. Although if you want to use run the `dev_tools` directory make sure to keep it below python3.10 due to a limitation with PyAudio. The `dev_tools` is not used by the game itself but was used by me to handle the assets.
$ pip install arcade==3.0.0.dev18 || pip install -r requirements.txt
There are two parameters you can pass to run the game i.e debug and performance. Pass true for performance if you have a low end pc. Also don't cd into the source directory to run the game. $ python src/ # normal run $ python src/ true # debug run $ python src/ false true # performance run

## Production
+ The player has 6 animations -> (Death, Hurt, Idle, Jump, Push, Run) + Has two background music
+ Has a rainy effect for the loosing screen
+ Has a different music which for dying(the famous gregorian chant dies irae) which is coded by me see `src/dev_tools/`
+ Uses shaders for lighting effect

## Innovation
+ The game is an extract of the age old game Tetris, but instead of normally controlling the columns in which the boxes fall in you get a character which does that
+ Tetris in Ohio comes from the meme "Only in Ohio" which basically means things are different in Ohio, thus reflecting the concept of the game
+ Theres a backstory included in the game's `Story?` button, which co-relates with the theme
+ Dies Irae(literally means day of wrath in latin) the Gregorian Chant starts playing when you die, showing the extent of darkness

## Fun
Did you had fun playing it? I hope you did. The game contains meme references also hope you had a laugh.

## Bugs
+ Sometimes(rare) the player the gets stuck between two press 'R' to reset the player's position.

Entrant: BeautifulReques

Echoes in the Dark

Two Python Developers using Ursina Engine to create an awesome game!

make sure to have the ursina package installed aswell as ursina[extras], refer to the bottom of the page for the requirements list.

We hope you enjoy this game!

Team: RangerRhino23, Itsbailey-X3525

The fine dinner

I tried to call this entry DefinitionOfInsanity but it is too long so... I have failed to write a game many times. But this is OK. I will try again.

This time the game is ready. Not so polished as my successful attempts but I'm happy!

Entrant: yarolig

shadow monster

**the source version is OP numbers, in set the following four numbers will change it to normal mode:

self.starting_energy = 2

self.attack = 10

self.current_hp = 50

self.max_hp = 50

Thank you sid for letting me know about this**

**It's possible for windows defender to flag the exe version as dangerous since it's complied using pyinstaller, please download and play source version or watch the walkthrough video on youtube if you are concerned about it. The game does not make or read any files other than its assets**

A strategy turn based game where you get stronger by defeating enemies

The shadow monster

You are a shadow monster that has been asleep in the cave

A group of intruders came to claim your bounty

Defeating them all is the only option, but the hope is grim, they are too strong

However you are in the shadows, take advantage of that and get out alive


exe version:

  • download the normal version or OPVersion(you start will super high HP and Attack), run main.exe

source version:

  • download the source zip, install pygame that that's all you'll need


If you find the game confusing, feel free to play the OP version instead to start with exceptional HP and Attack

Or you can also watch the walkthrough:

There is a known bug that if both of you and the enemy die together, you will die immediately in the next battle after first action(negative hp)

Controls & Battle System:

  • [W] [A] [S] [D] to move, hover cursor on enemies and yourself to check power levels
  • During battle, you can "attack"(costs 1 energy), "defend"(protect you from damage this turn), "rest"(gain 1 energy), "finisher"(spend 5 energies for a powerful move)
  • Some attacks cannot be blocked, such as "smite" 

Entrant: chrisyan2000

Journey To Fairy City


This is the second time I'm making a game for the pyweek game jam (and third time for game jam in general). I'm happy with my progress, but I still need to improve. Many things that I wanted to do I couldn't (mostly because my time was shorter than I expected...) but that's okay, I know now a lot more and I'm ready to keep working in this project for more time!

I tried to do something simple, I needed to feel like I'm doing something in my level and not trying to exceed my knownledgeThis way I now what I can and can't do to study even more those things!!

I hope everyone that play it, will like it! If not, I'm sorry to disapoint you.


This game is simple: 'E' is the action button, you use it to get the axe, cut the trees and kill the spiders!!The arrows move the character around.

And that's all ... For now!

About the game

You are lost in the middle of the woods... When you lay down to rest you remember a clear path in front of you but now you only see trees everywhere... And it's getting darker and darker as the firepit goes off. You need to do something quickly and get out of there, you don't know what is lurking in the shadows.

Known Issues

You want to help me with the bugs? I would love that! You can make push requests and help me with those basic things I don't know!

So let's list everything that I know that is not working:

Yeah, you can't play forever (in a single run)... You can only once click the "continue" button, the second time the game freezes :(

The spiders can kill you and everything in the game ...... if they get inside you. It's creepy, but it's true. (It's because the code I'm using for the spiders to follow you, if they reach the same position as you, it can't calculate where to go...)

Sometimes the spiders get lazy and just stay in their place... Sometimes it's because they can't see you, sometimes it's because they don't know how to get to you.

You can pass all the trees if you use the action button and arrow keys at the same time in some situations. It looks like you are cheating hehe.

The spritecollide don't work all the time with the spiders and sometimes it takes a lot of attacks to kill one... I could say it's a feature, but I don't know how exactly I could fix it... I needed to redo all the sprites, maybe?

There is no sound. I know it's sad... But I didn't have time to do that :((((

There is no other levels. I couldn't make them... But I promise I'll do it after the end of pyweek (at least once a month I'll update the game!)

There is no fairy city...yet. If you finish the game, you can only see the beatiful emptyness and think about your life choices. I hope it's not much for you.

There is no movements. BUT 99% of this is not an issue. I just need movement for the attacks and repel the spiders so the player don't die so fast...


If you read all this, a huge thanks for you! If you read and tried to help, I like you a lot! If you did all that and voted in my game. I like you a lot! If you did all that and made a push request. I love you! If you did all that and solve one of the issues. I love you a loooooooooot!!!!!!!

(Just kidding, I like everyone the same :) thanks everyone.)

Entrant: Shyr

None Shall Pass

A dungeon defense game of packing and juggling traps.

Entrant: Tee

Shadow Heist

Shadow Heist: Use the shadows to sneak past the guards and complete your mission in metabooks datacenter.

Dear Game Tester,
  • If you run into any problems, bug or have overall feedback, feel free to join our discord for help or chat.
  • If you get  "type=raw_object["type"],KeyError: 'type'"  error, update your arcade version to 2.6.16 or higher

Cat Burglers

Team: Jeb, Krzysztof, MrTanoshii, mihett05, EveryoneHATEme, Prerendered, Derek0312

Scotch Games

Team: ano002, Eliot999

Slayer in the Shadows

Unfortunately, we were unable to complete the game. We wanted to add in levels, enemy sprites, and ranged weapons, but we all got busy with life. However, we still want to show off what we had, and we will still probably work on it and finish later. Feel free to try it out.

You can either install and run the game from the zip file or get it from PyPI with the following:

python -m pip install slayer-in-the-shadows

python -m slayer_in_the_shadows

Team: Anonymous4045, shenanigansd, Thornily, FieryIceStickie, onClimber, Robin5605, elpupper, Canttuchdiz, Abdullah, ilcheese2, noai

Shadow Paths

  • — Extract and run the .py file with pygame installed, and it will start up the game!
I've been learning Python for several years now, but am just now learning how to make games in it. As an aspiring game developer, I took up the challenge immediately. While my games aren't very good right now, a lot of work was put into them, and I'm excited to make more!

You know that feeling you get when you have to turn off the lights in the kitchen, and then run back to your room in the dark? Yeah, this game is kinda like that. Make your pathway in the daytime, and then navigate it in the nighttime to earn points. Careful though, the farther you travel, the faster you get, and if you go off the path, you have to start from the beginning. Use the shop to spend your points on things like half speed, half size, and even point orbs.

Clarifications - This game uses the keys WASD for navigating the menu and making pathways. E is for interacting with the menu and for switching time to night. Point orbs are supposed to disappear in the daytime, you need to memorize where they are and make your path accordingly. Your goal is always the center of the blue dot, not just touching it. Point orbs need to be fully engulfed by the player to count.

Entrant: TheEPICArt

Shadow Boy

A shady underground research laboratory conducting shady experiments has developed ... Shadow Boy! Able to leap across large unlit distances and soar through the night sky! But Shadow Boy is tired of his life locked in the lab, so switch those lights off and get your platforming A-game ready!

Requires: Pygame and Pymunk (tested on Pygame 2.0.1, Pymunk 6.2.1)


  • In the latest version of pygame (or version 2.2.0+), lights and electric hazards render incorrectly across the screen when they go too far to the left (works fine in pygame 2.0.0 and 2.1.0): you can fix by either (a) "pip install pygame==2.1.0" or (b) by adding one line of code in two locations: at line 56 of src/, and at line 65 of src/, add: "if p[0] < 0: return" (Thanks Cosmo for picking this up! ... and unfortunately didn't get a chance to fix it before deadline :( ) ...

Game Playing Notes:

  • Controls are explained in-game: uses the arrow keys, space and x.
  • Once in-game, press ESC to pause: you can reset the level from the pause screen if you need to

Playthrough (Contains Spoilers!):

Entrant: mit-mit

Shadowback Trail of the Curse


Kairos Nightshade, a skilled adventurer, has successfully obtained 5 of the elemental purifying gems.
However, the final 3 gems - the Life Gem, the Spirit Gem, and the Shadow Gem - are the toughest and
hardest to collect.

Kairos's weapon of choice is the Stun Staff, which he uses to defend himself. There are two enemies
Kairos must face off against while trying to retrieve the gems: gem guardians and police officers.
The officers believe Kairos is responsible for many attacks on civilians, and the guardians have been
corrupted by the shadow. The shadow will consume anyone who approaches Kairos, killing them within an instant.

The player must be cautious not to get too close to the police officers and guardians. If the shadow kills
someone, it grows and the player will be one step closer to being consumed by the shadow. Additionally, the
shadow will automatically grow every 15 seconds, and if the player gets shot by a police officer, the shadow
will grow. Keep in mind, Kairos cannot be killed or hurt by the officers and guardians; only the shadow can
hurt or kill him.

Control Kairos using 'W' for up, 'S' for down, 'A' for left, and 'D' for right.
Defend against gem guardians and police officers using the Stun Staff by pressing the space bar to shoot.
Aim the Stun Staff using the mouse.

In the top center, there is an elemental purifying gem. Once Kairos defeats all the enemies, he can collect
the gem and move on to the next level. There are 3 levels in total. Good luck!


Control Kairos using 'W' for up, 'S' for down, 'A' for left, and 'D' for right.
Defend against gem guardians and police officers using the Stun Staff by pressing the space bar to shoot.
Aim the Stun Staff by pointing and clicking the mouse.

Team: smoktwix, Doger, Pykemon010

In The Dark

A vampire town builder where you keep on moving around the world avoiding the sun.

Collect resources, create new vampires and work towards a project to block out the sun.

How to run:

Change directory to the unzipped Sturdy-Waffle file. Run the command 'python ./src/'

Running directly file from within the src folder may cause the image files to not be found, due to conflicts with the different ways Linux and Windows handle paths.

How to play:

Press left, right or a and d keys to scroll. 

Left click to select units on the map, or buildings from the menu.

Right click to move a unit to a location, or place a unit in a building.

Right click to place buildings selected from the menu, and to empty occupied buildings.

You can move vampires into buildings to produce resources. Move vampires intohouses to produce more vampires. 

BEWARE: vampires die in sunlight, even whilst in buildings.

Vampires can be sacrificed in the pyramid building. Once 10 vampires have been sacrificed the sun will be blocked out and you win the game.

If all your vampires die before this point you lose the game. You can see your progress towards winning in the red bar at the top of the screen.

Your population cap is determined by the amount of blood you have. 1 blood is 1 population.


preatomicprince - lead programmer 

Jsteele - Art design/ junior programmer

Vaugbe - Sound design

Team: preatomicprince, Jsteele, Vaugbe

The Shady Wood

Help Anne find her way out of the cursed Shady Wood forest. If she becomes too scared, she'll be turned to stone and be lost forever!

Use the arrow keys to navigate the forest and the C, F, and S keys to use items. The items don't respawn, so be sure to ration them if you get lost.

The forest is also procedurally generated, so you'll get a different map everytime you play!

Good luck and enjoy!

edit: If you try to run `` and it gives an error like `Python was not found`, try removing the shebang on line 1 of ``. (Thanks Lanecrest!)

Team: siddhartha13, Lemonadehead

Space Repair

We created game where you have 30 seconds to repair spaceship. Controls are in the game! It is working for Windows, MacOS as well as Linux. 

Team: David3001, MikiHleb, Momcilo, nodak, JennyO512, dima

Shadow jump

a score based platformer game where the player jumps up a set of blocks and tries to avoid hitting the hidden enemies

Entrant: Hammish47

Phantasma's Dark House Simulator

This project was originally intended to be a horror game but a lot of the elements didn't get implemented in time and forced to make last minute cuts. Getting the title screen menu running and Navigating between room to room as as much as I can get done from a gameplay perspective.

Have fun exploring the "house".

Entrant: Phantasma

Shadow Parkour

Shadow parkour is a game developed by PyNon,Waffles,Scollier and Skrish. Fortunately, to run this, you only need to install PyGame and play! Try and beat Waffles’ high score of 53! 


Press the up arrow to jump

Press Z and X to increase and decrease your gravity respectively

Press the spacebar to restart the game


PyNon - Management, Music and Sprites (went to waste lol)

Waffles - The code and Co-management 

Scollier - Art

Skrish - Some little part of the assets and code

Also, a tutorial by Clear Code which wrote/inspired probably 50 percent of this code (as waffles says!)

Team: PyNon, Waffles, Scollier, skrish


Shadeshaper is a short puzzle game with 3 levels. Hold left click to place the light. It can't be near tiles, and will glow when the placement is valid. Once there is a valid placement, use A and D to move, and space to jump. The goal is to reach the green platform without touching the light. Press R to restart the level. Have fun!

Pygame and shapely are the required packages for this game. Use `pip install -r requirements.txt` to install them, or feel free to use another method. Python 3.11 is also technically required, but this can be bypassed by directly running the `main.pyw` file instead of `` (should work for most versions of Python).

Try making your own levels in the editor (``)! Left click to place tiles, middle click to place goal tiles, and right click to place the light. Use M to save the level. For now, the player position needs to be manually written in the .lvl file by replacing one of the tiles with P.

Please report any bugs/issues you have with the game in the Python discord! Feel free to mention/message me (ncro#0259).

Entrant: ncrohawk

Robo Bake Gothenburg

Robo Bake Gothenburg Robot Pie

We're four students from Gothenburg, Sweden studying Python developement with a special focus on Artificial Inteligence. Our fifth member is our mascot, he likes pie(py)s, being generally cute, as well as world domination (just keep him well fed and he wont persue his ulterior motive).
This will be our first entry into PyWeek as well as game developement in general. We're all exited and curious to see what the theme is going to be. And to hopefully create something that is both fun and creative! (and if nothing some working runnable code)

Please cheer for in our struggle :D

GLHF everyone

Team: BKBender, FatherWilliam, Shmillibonka, DivineTofu

First pyweek!

  • — Shadow Run! Extract and run the file to play the game PYGAME ZERO IS NEEDED TO RUN
This is my first every pyweek and I am just looking to have fun!

Entrant: TheGooose


Turn-based puzzle game on a hex grid. Play as a jewel thief live streaming his exploits. Stay in the shadows of the security system to avoid being caught.

There are 4 quick tutorial stages, 7 regular stages, and 1 very optional final free-play stage. I recommend completing at least the tutorial plus one more stage (either London or Copenhagen) before rating the game. This should take 5-10 minutes at most. The entire game might take 30 minutes, but it depends a lot on how tricky you find the puzzles. Progress is saved when you complete a stage.

How it fits the theme (In the Shadows): the main mechanic is blocking beams of light to remain out of sight.

See the README for more info, including resolution options and cheat codes.

Entrant: Cosmologicon

In the Shadows

 You are a child who lives on a farm in a rural area in a cyberpunk-alien future.

 Your parents tell you to not go outside during the night.

 Your parents tell you that it is dangerous to run in the fields during the night.

 Your parents tell you there are monsters hiding...


 You don't care!

 Use WASD or the arrow keys to run in the field. Kite the monsters to gain points.

 Avoid the cow-shit and gain the high-score.

Team: gurkwaan, Herjeman, Nils_W, Gulbyxan, timduvet, jollilala

The Almighty Sun

The Almighty Sun



You are in a desert planet, water scarce, the shadow move, you need to find a way out of this mess. A survivor game where you will need to collect water and hide from the sun in the shadows to survive.

Play it in the Browser!!!

Click here

Game Play

How to run

Install all the dependencies from `requirements.txt`

pip install -r requirements.txt

To run the game:

py scr


  • Python version 3.10.4
  • Pyxel version 1.9.13

The game was only tested on these versions

How to Play

Move with the `UP`, `DOWN`, `LEFT` and `RIGHT` arrows

Press `ESC` to exit

Press `Alt` + `ENTER` to fullscreen

Watch your WATER LEVEL, it will drop down with time, to refill it you can search for water bottles.

The sun will make you thirsty, so try to avoid it and hide in the shadows.

Find the RADIO to escape the desert


All the assets were made by me, using the Pyxels Image and Sound Editors

Thanks for Playing

Entrant: RicBin


Collaboration and fun ✨

Good luck everyone!

Team: vagish, tacchan, Shahnawaz28, Arpi369, Gods_gift, deb01, Ryugean


Kind of a cross between tangrams and shadow puppets.

Entrant: gcewing


  • — In Shadow Phoenix, you will embark on a thrilling adventure as a shadow on a mission to collect souls in a broken down and fading world.

Team: Snoggy, Kevin-Dono

The Cove

The Cove


python 3.11
pygame -or- pygame-ce

Run using: python -OO  or py -3.11 -OO

More of a tech demo than a game due to some struggles and time constraints.

Entrant: DR0ID