Table of Contents
Scharzweiss is a tank game for 2 players written in python and pygame.
Video and screenshot history
SchwarzWeiss is german and means “black/white”. This game was created 2010 (?) during a 48-hour-game-creating contest at Viennas Metalab computer lab. The theme was “black and white” (or was it “grid”?) and only public available resources were allowed. Lucky for me, that included ThePythonGameBook. In effect i worked around 3 hours in the evening and around 4 hours in the next morning. After that i lost interest and presented the game to the other participants in the Metalab to make use of the weekend for non-computer related activities. While i'm proud to report that i was the first participant to present a “playable” game (way bebfore the deadline) i'm less proud to report the results of test-playing against the other coders. It turned out that while my game is playable, it is simply boring and not much fun. Also i got beaten in my own game by people who never played the game before
The most annoying aspect was that usually the player wins who do not manoever his tank but instead simply shoot horizontally until a row is done and than moves to the next row.
While modifying the game for the reddit game jam 06, i replaced the obstacle balls with tanks and added some kind of energy management (the topic of the reddit game jam 06 was “energy”).
- 2011-04-06: finally the menu is working, submitted game to www.pygame.org
- 2011-03-31: Playtesting with 2 students. Result: enabling field-conversion for the small tracer ammo again.
- 2011-03-28: submitting to reddit game jam 06. please vote for it.
- 2011-03-27: thanks to the open-source sound-effect-generator form drpepper i have now sound effects for this game.
- 2011-03-27: submitted for reddit game jam 06
- 2011-03-26: i merged the game with the tankdemo (pygame step022). Theme for reddit game jam is “energy”
- 2011-03-25: i made the bouncing balls static and more colorful. The game is a bit more playable. I try to set up an github account for the game.
- game must be quit by player if both players convert exact 50% of all fields
2 players (WASD, cursor keys) must steer their tanks and fire at the grey tiles of the field between them. Each shot crossing a tile makes the tile darker (player1) or lighter (player2). If a single tile is shot at enough times by the same color, it is displayed crossed and do not change color any more. First player who convert more than 50% of all tiles to his color wins.
Each player action cost energy: (yellow bar on top).
- moving, rotating the turret, firing or being hit cost energy
- hitting other tanks, converting fields and waiting gains energy
The player-controlled tanks can shoot with 3 different weapons:
- Machine gun (Tracer): has the lowest energy requirement. Can not convert fields slowly. Has a limited range. Can shoot down cannon rounds and rockets.
- Cannon (Bullet): needs a certain amount of energy to shoot (indicated by a vertical line in the yellow energy bar. It is the best weapon to convert fields (tiles). Has a longer range but a slower rate of fire than the machine gun. The Cannon is necessary to win the game. If any tank is hit by a cannon round, he becomes immobile for a short time (see immobile bar at the top).
- Rocket: automatically launched if the players energy ball is full. The rocket tracks the other players movement. If not shot down by machine gun fire, the rocket steals all the opponents energy and transfer this energy toward the player (vampiric).
Some static and movable orange-glowing obstacles (barriers) are in the game. Those obstacles destroy Machine gun rounds and cannon rounds upon impact, thus acting as some sort of cover for the player.
You can customzie the game by changing the values in the game menu, such as number of tiles, number of neutral tanks etc. For more customizing, edit directly the values inside the class Config in the file ''schwarzweiss.py'
you can find the latest version and a history of all versions on github:
links & feedback
- Fresmeat entry: http://freshmeat.net/projects/schwarzweiss
- pygame entry: http://www.pygame.org/project/1815/?release_id=3184
- reddit game jam 2011 entry: http://www.reddit.com/r/RedditGameJam/comments/gcp1v/reddit_game_jam_06_final_submissions_thread/c1mo2nc