Copyleft Games Group
businessMailing List:
Copyleft Games Group is a non-profit association that promotes entertainment software licensed under copyleft licenses such as the GNU General Public License. For Google Code-In 2012 we serve as an umbrella for several projects;
The Battle for Wesnoth is a turn-based tactical strategy game with a high fantasy theme. Its primarily written in C++ and Lua, interested students should join #wesnoth-dev on irc.freenode.net to chat with mentors.
Hedgewars is a turn based strategy, artillery, action and comedy game, featuring the antics of pink hedgehogs with attitude as they battle from the depths of hell to the depths of space. Its primarily written in C++ with Lua for scripting. Mentors can be found in #hedgewars on irc.freenode.net
PySoy is a 3d cloud game engine under heavy development. The engine core and most of our clients is written in C, Genie, and Python. Join #PySoy on irc.freenode.net to chat with mentors.
SweetSoy, an Android client for PySoy, is written in C (NDK), Java, and XML. It was primarily developed by David Czech, a Google Code-In 2010 grand prize winner, for his Google Summer of Code 2012 project. He's serving as a Google Code-In mentor this year.
WebSoy is a PySoy client as a browser plugin for Google Chrome, Mozilla Firefox, and Safari written primarily in Genie. While basic rendering is working, a great deal of work is still needed before this will be ready for use especially in terms of cross-platform support.
Unknown Horizons (UH) is a 2D realtime strategy simulation with an emphasis on economy and city building. Its primarily written in Python. Join #unknown-horizons on irc.freenode.net to chat with mentors.
Completed Tasks
- Bitfighter: Create 4 icons for Bitfighter
- Bitfighter: Create Linux Game Notifier
- Bitfighter: Create OSX Game Notifier
- Bitfighter: Create Windows Game Notifier
- Bitfighter: Implement /announce command
- Bitfighter: Parameterize Lua Constructor for TestItem and ResourceItem
- Bitfighter: Parameterize Lua Constructor for Various Objects 3
- Bitfighter: Parameterize Lua Constructor for Various Objects Group 1
- Bitfighter: Parameterize Lua Constructor for Various Objects Group 2
- Hedgewars: Abstract Hedgewars dialogs
- Hedgewars: Abstract Page Load
- Hedgewars: Add description to CMake variables
- Hedgewars: Advanced keyboard configuration
- Hedgewars: Automatic bind detection button
- Hedgewars: Automatic translation tool
- Hedgewars: Autoupdate button in settings
- Hedgewars: Beautify network page
- Hedgewars: Better audio/video options
- Hedgewars: Center help text field
- Hedgewars: Change argument passing between frontend and engine
- Hedgewars: Check for Clang version in CMake
- Hedgewars: Check for non-standard recorder framerate
- Hedgewars: Clean up password fields
- Hedgewars: CMake List Append
- Hedgewars: Command line parsing
- Hedgewars: Constant button size
- Hedgewars: Convert feedback page in a modal window
- Hedgewars: Convert uMobile into a callback record
- Hedgewars: Create a FindSDL2 CMake module
- Hedgewars: Custom CMake modules polishing
- Hedgewars: Different OpenGL 2.0 shader syntax
- Hedgewars: Display library information
- Hedgewars: Doxygen module for frontlib
- Hedgewars: Draw Hedgewars style icons for dialogs
- Hedgewars: Easy to download
- Hedgewars: Embed system info
- Hedgewars: Empty list help text
- Hedgewars: Feedback Redo
- Hedgewars: Find out what is causing this problem
- Hedgewars: Fix cancelling video uploads
- Hedgewars: Full Changelog
- Hedgewars: Google Issue Login
- Hedgewars: Hide "Video Record" keybind option
- Hedgewars: Improve authors page
- Hedgewars: Improve game configuration widget
- Hedgewars: In-game chat commands
- Hedgewars: Invert Macro
- Hedgewars: Lobby commands
- Hedgewars: Lowercase CMake functions
- Hedgewars: Lua GameFlags Extension
- Hedgewars: Move Freepascal discovery code into a CMake module
- Hedgewars: Move platform code in its own folder
- Hedgewars: Move platform specific instructions
- Hedgewars: Move video preferences in setings tab
- Hedgewars: Native dialogs appearance
- Hedgewars: Navigation output
- Hedgewars: No More Hovering
- Hedgewars: Optional First Argument
- Hedgewars: Optional Second Argument
- Hedgewars: Prepend 'b' to every engine boolean
- Hedgewars: Refactor authors page
- Hedgewars: Refactor tips
- Hedgewars: Remove "Structure" weapon code
- Hedgewars: Remove quit prompt on mouse click
- Hedgewars: Remove Wiggle code
- Hedgewars: Resolution freedom
- Hedgewars: Restore branch
- Hedgewars: Rework hat selection
- Hedgewars: Silence every engine compilation warning
- Hedgewars: Sound option, hear only music
- Hedgewars: Subscribe for network
- Hedgewars: Too many variables
- Hedgewars: Unix Qt signals
- Hedgewars: Update command line documentation
- Hedgewars: Use player's name for the default team
- Hedgewars: User/pass single prompt
- Hedgewars: Verify Issues (4th iteration)
- Hedgewars: What is testing?
- Hedgewars: What lies in the clones?
- Hedgewars: Why is this codec combination not good?
- PySoy: Alpha Blending
- PySoy: Atomics: Color Compare
- PySoy: Atomics: Color Math
- PySoy: Atomics: Size Compare
- PySoy: Basic Cubemap
- PySoy: Better Checkered
- PySoy: Body Refactor
- PySoy: Box Face Correction
- PySoy: Box Rounded Edges
- PySoy: Box Size
- PySoy: Box Subdivision
- PySoy: Bumpmap Class
- PySoy: Bumpmap Emboss
- PySoy: Bumpmap Primary Combiner
- PySoy: Checkered Cubemap
- PySoy: Clean Docs Build
- PySoy: Color Names Dict
- PySoy: Debug SVG Texture
- PySoy: Delete Textures
- PySoy: Distance Squared
- PySoy: Document soy.atoms Prototype
- PySoy: Document soy.bodies Prototype
- PySoy: Faster Palette
- PySoy: Find 10 Generic Sound FX
- PySoy: Find 5 Obsolete Bugs
- PySoy: Fix a Compiler Warning
- PySoy: Fix Box Tangents
- PySoy: Fix Joint Axis
- PySoy: Fix Sphere Hole
- PySoy: Flat Materials
- PySoy: Fold Mass into Body
- PySoy: Game Icons
- PySoy: Handle soy.net Errors
- PySoy: Heightmap Class
- PySoy: Improve Box.material
- PySoy: Improve Named Materials
- PySoy: Improve Orc Waf Tool
- PySoy: Joint Visual: Fixed
- PySoy: Light Rendering
- PySoy: Load RGB Texture
- PySoy: Load RGBA Texture
- PySoy: Make Scene a Dict of Bodies
- PySoy: Make Widgets List-like
- PySoy: Materials: Blue Colors
- PySoy: Metallic Materials
- PySoy: Normalization Cubemap
- PySoy: Orc Double Constants
- PySoy: Orc Float Constants
- PySoy: Palette Texture
- PySoy: Planar LoD
- PySoy: Planar Texcoords
- PySoy: Prune Dead Pyrex Code
- PySoy: PySoy Primer 1
- PySoy: Rainbow Pattern
- PySoy: Refactor Billboard
- PySoy: Refactor soy.scenes.Landscape
- PySoy: Refactor soy.scenes.Planar
- PySoy: Refactor TSLV Calc
- PySoy: Room Walls
- PySoy: Scene Gravity
- PySoy: Scene Skybox
- PySoy: Sphere Comments
- PySoy: Sphere Texturing
- PySoy: Sphere VBO
- PySoy: Static instance calls
- PySoy: Texture Load Error
- PySoy: Texture SVG by String
- PySoy: Textured.glowmap
- PySoy: Unittest soy.joints.Fixed
- PySoy: Unittest soy.scenes.Scene
- PySoy: Unittest soy.textures.Texture
- PySoy: Unittest Vector
- PySoy: Update Blocks Examples
- PySoy: Upgrade RW Locks
- PySoy: Upgrade Threading
- PySoy: Vector Math
- PySoy: Vertex Packing
- PySoy: WAF for PySoy
- PySoy: Window Close Bug
- PySoy: Window Size Set
- PySoy: Window Title Set
- PySoy: Write Buggy Example
- PySoy: Write Docs for soy.joints
- PySoy: Write Docs for soy.materials
- PySoy: Write soy.fields Bindings
- PySoy: Write soy.joints Bindings
- SweetSoy: About Dialog
- SweetSoy: Android Alerts
- SweetSoy: Buddy List
- SweetSoy: Settings Screen
- SweetSoy: Sweetsoy Input Handling 1: Controller API detection
- SweetSoy: Write INSTALL
- SweetSoy: XMPP Auto-Away
- UH: ATI driver issue suspected
- UH: Graphics and color blindness
- UH: Icons unified
- UH: Scroll settings
- UH: Split buildingtool.py
- UH: Trade route GUI test
- Wesnoth: Generalize Micro AIs - Forest Animals and Swarm
- Wesnoth: Generalize Micro AIs - Sheep, Big Animals and Lurkers
- Wesnoth: Micro AI 'Animals' Step 1
- Wesnoth: Micro AI 'Animals' Step 2
- Wesnoth: Micro AI 'Animals' Step 3a
- Wesnoth: Micro AI 'Animals' Step 3b
- Wesnoth: Micro AI 'Animals' Step 3c
- Wesnoth: Micro AI 'Animals' Step 3d
- Wesnoth: Micro AI 'Animals' Step 3e
- Wesnoth: Micro AI 'Animals' Step 3f
- Wesnoth: Micro AI 'Guardian' Step 1
- Wesnoth: Micro AI 'Guardian' Step 2
- Wesnoth: Micro AI 'Guardian' Step 3a
- Wesnoth: Micro AI 'Guardian' Step 3b
- Wesnoth: Micro AI 'Lurkers' Step 1
- Wesnoth: Micro AI 'Lurkers' Step 2
- Wesnoth: Micro AI 'Messenger' Step 1
- Wesnoth: Micro AI 'Messenger' Step 2
- Wesnoth: Micro AI 'Patrol' - Occupied Waypoints
- Wesnoth: Micro AI 'Patrol' Step 1
- Wesnoth: Micro AI 'Patrol' Step 2
- Wesnoth: Micro AI 'Protect Unit' Step 1
- Wesnoth: Micro AI 'Protect Unit' Step 2
- Wesnoth: Micro AI 'Random Recruit'
- Wesnoth: Micro AI 'Wolves Multipacks' - Generalize
- Wesnoth: Micro AI 'Wolves' - Generalize
- Wesnoth: Remove almost-transparent pixels
- Wesnoth: Serialize parameter transfer to Micro AIs