Poblano: Difference between revisions
(form) |
|||
(5 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{Olpcboxtop|toptext=[[{{PAGENAME}}|Poblano]]}} |
|||
== Poblano, a Pygame clone of the board game Abalone == |
|||
{{ OBX activity <!--|[[Image:Web.png]]-->|2=extra|3=[[Pygame]] clone of the board game [http://en.wikipedia.org/wiki/Abalone_(board_game) Abalone]}} |
|||
{{ OBX source other|[https://olpc.coderanger.net/svn/poblano coderanger.net]|SVN}} |
|||
{{ OBX pot |
|||
<!-- |
|||
| root = [http://translate.fedoraproject.org/module/olpc-web-activity fedora] |
|||
| pot = http://translate.fedoraproject.org/POT/olpc-web-activity.master/web-activity.master.pot |
|||
| po-root= http://translate.fedoraproject.org/POT/olpc-web-activity.master/ |
|||
--> |
|||
<!-- explicit codes: am, ar, en, es, fr, ha, ig, ne, pt, ro, ru, rw, th, ur, yo // green countries --> |
|||
<!-- |
|||
| ar = web-activity.master.ar.po |
|||
| others = [http://translate.fedoraproject.org/POT/olpc-web-activity.master/web-activity.master.pt_BR.po pt_BR] |
|||
--> |
|||
}} |
|||
<small>see more [[:Category:OBX templates|templates]] or [[OBX proposals|propose new]]</small> |
|||
{{Olpcboxbottom}} |
|||
== About the game == |
|||
{{WikipediaSummary|wikipage=http://en.wikipedia.org/wiki/Abalone_(board_game)|summary=Abalone is a two-player strategy [http://en.wikipedia.org/wiki/Board_game board game] which can be quaintly summarized as "[http://en.wikipedia.org/wiki/Sumo_wrestling sumo wrestling] with [http://en.wikipedia.org/wiki/Marbles marbles]", as the objective is to push opposing marbles off the edge of the board. The rules can be mastered in a minute or two, and the flow of the game is fast-paced.}} |
|||
As with Conway's Game of Life, Abalone has a simple ruleset and rich resulting behavior. Although the default configuration has been known to lead to stalemates, for alternate configurations used in championship matches Abalone is as yet an unsolved game. We'd like to bring this exciting and interesting game to the XO. |
As with Conway's Game of Life, Abalone has a simple ruleset and rich resulting behavior. Although the default configuration has been known to lead to stalemates, for alternate configurations used in championship matches Abalone is as yet an unsolved game. We'd like to bring this exciting and interesting game to the XO. |
||
== Plan for Game Jam == |
|||
Objectives: |
Objectives: |
||
Line 17: | Line 33: | ||
* Computer player AI |
* Computer player AI |
||
== Rules for Abalone == |
|||
From [http://en.wikipedia.org/wiki/Abalone_(board_game) Wikipedia] |
From [http://en.wikipedia.org/wiki/Abalone_(board_game) Wikipedia] |
||
[http://uk.abalonegames.com/rules/basic_rules/official_rules.html Abalone Official Rules] |
[http://uk.abalonegames.com/rules/basic_rules/official_rules.html Abalone Official Rules] |
||
Board: 61 circles, 5/side |
Board: 61 circles, 5/side |
||
I O O O O O |
I O O O O O |
||
H O O O O O O |
H O O O O O O |
||
G + + O O O + + |
G + + O O O + + |
||
F + + + + + + + + |
F + + + + + + + + |
||
E + + + + + + + + + |
E + + + + + + + + + |
||
D + + + + + + + + 9 |
D + + + + + + + + 9 |
||
C + + @ @ @ + + 8 |
C + + @ @ @ + + 8 |
||
B @ @ @ @ @ @ 7 |
B @ @ @ @ @ @ 7 |
||
A @ @ @ @ @ 6 |
A @ @ @ @ @ 6 |
||
1 2 3 4 5 |
1 2 3 4 5 |
||
14 marbles/player |
14 marbles/player |
||
Line 49: | Line 69: | ||
Winner: first to push 6 opposing marbles off. |
Winner: first to push 6 opposing marbles off. |
||
== Development == |
|||
For the latest source code, see [https://olpc.coderanger.net/svn/poblano our SVN folder]. |
|||
The good news: the ruleset works. The program is stable, and we worked out most of the rendering glitches. |
|||
The less good news: the code is still basically what you'd expect after three days of rushed development: a bloody hack. We simply have not found time to work on it since Game Jam. |
|||
=== Code === |
|||
Function-level encapsulation is pretty good; module-level encapsulation is wanting and the flow of execution and data doesn't make a whole lot of sense. I'm dissatisfied with the coordinate mapping system I chose, and would like to rewrite things entirely in terms of a linearly dependent set of 3 cardinal vectors. At some point we anticipate an extensive reorganization and reimplementation, hopefully with the aid of someone considerably more skilled with Pygame design than either of us. |
|||
=== Artwork === |
|||
We need: |
|||
* A logo, splash screen and player avatars (I really liked Mel's depiction of a dueling chili and sweet pepper). |
|||
* Something off to the sides of the screen to hold dead marbles |
|||
* A scoreboard |
|||
* Effects for knocking marbles off the board (an explosion of pepper seeds was suggested |
|||
=== Sound/Music === |
|||
=== Sugar Bundle === |
|||
[[Category:Games]] |
|||
{{Activity page |
|||
|genre=Games |
|||
|short description=Pygame version of Abalone: a two-player strategy board game which can be quaintly summarized as "sumo wrestling with marbles", as the objective is to push opposing marbles off the edge of the board. The rules can be mastered in a minute or two, and the flow of the game is fast-paced. |
|||
|contact person=Unknown |
|||
|activity source=https://olpc.coderanger.net/svn/poblano |
|||
}} |
Latest revision as of 23:19, 7 August 2008
see more templates or propose new |
About the game
This article contains content from a Wikipedia article which is licensed under the GNU Free Documentation License.
As with Conway's Game of Life, Abalone has a simple ruleset and rich resulting behavior. Although the default configuration has been known to lead to stalemates, for alternate configurations used in championship matches Abalone is as yet an unsolved game. We'd like to bring this exciting and interesting game to the XO.
Plan for Game Jam
Objectives:
- Basic UI and graphics
- Encode Abalone ruleset
- Additional program logic
- Splash screen or intro animation
- Alternate start configurations Abalone Rule Variations
- Computer player AI
Rules for Abalone
From Wikipedia Abalone Official Rules
Board: 61 circles, 5/side
I O O O O O H O O O O O O G + + O O O + + F + + + + + + + + E + + + + + + + + + D + + + + + + + + 9 C + + @ @ @ + + 8 B @ @ @ @ @ @ 7 A @ @ @ @ @ 6 1 2 3 4 5
14 marbles/player
Toss for color, black moves first Players move in turn Once played, a move cannot be changed
“Move”: line of one, two, or 3 marbles one space inline or broadside Numerical superiority (three to two, three to one, or two to one) allows a push. Push ONLY inline, NOT broadside. Pushing is not allowed if: There is no free space behind your opponent's group. There is an empty space between your group and the opponent's. The marbles are not in line.
"Pac": inline marbles deadlocked for that line (1:1, 2:2, 3:3)
Winner: first to push 6 opposing marbles off.
Development
For the latest source code, see our SVN folder.
The good news: the ruleset works. The program is stable, and we worked out most of the rendering glitches.
The less good news: the code is still basically what you'd expect after three days of rushed development: a bloody hack. We simply have not found time to work on it since Game Jam.
Code
Function-level encapsulation is pretty good; module-level encapsulation is wanting and the flow of execution and data doesn't make a whole lot of sense. I'm dissatisfied with the coordinate mapping system I chose, and would like to rewrite things entirely in terms of a linearly dependent set of 3 cardinal vectors. At some point we anticipate an extensive reorganization and reimplementation, hopefully with the aid of someone considerably more skilled with Pygame design than either of us.
Artwork
We need:
- A logo, splash screen and player avatars (I really liked Mel's depiction of a dueling chili and sweet pepper).
- Something off to the sides of the screen to hold dead marbles
- A scoreboard
- Effects for knocking marbles off the board (an explosion of pepper seeds was suggested
Sound/Music
Sugar Bundle
Activity Summary
Icon: | Sugar icon:: |
Genre: | Activity genre::Games |
Activity group: | ,|x|Activity group::x}} |
Short description: | [[Short description::Pygame version of Abalone: a two-player strategy board game which can be quaintly summarized as "sumo wrestling with marbles", as the objective is to push opposing marbles off the edge of the board. The rules can be mastered in a minute or two, and the flow of the game is fast-paced.]] |
Description: | |
Maintainers: | ,|x|Contact person::x}} |
Repository URL: | Source code::https://olpc.coderanger.net/svn/poblano |
Available languages: | ,|x|Available languages::x}} |
Available languages (codes): | ,|x|Language code::x}} |
Pootle URL: | |
Related projects: | Related projects,|x|Related projects::x}} |
Contributors: | ,|x|Team member::x}} |
URL from which to download the latest .xo bundle | Activity bundle:: |
Last tested version number: | |
The releases with which this version of the activity has been tested. | ,|x|Software release::x}} |
Development status: | |
Ready for testing (development has progressed to the point where testers should try it out): | ,|x|Ready for testing::x}} |
smoke tested : | |
test plan available : | |
test plan executed : | |
developer response to testing : |