From fd70165074a14d1b2bed1d7c17558a3a80761719 Mon Sep 17 00:00:00 2001 From: Joshua Minor Date: Sat, 22 Dec 2007 16:12:29 +0000 Subject: Trying to sync git with actual files... --- (limited to 'docs') diff --git a/docs/HostingRequest.txt b/docs/HostingRequest.txt new file mode 100644 index 0000000..52a7af9 --- /dev/null +++ b/docs/HostingRequest.txt @@ -0,0 +1,88 @@ +1. Project name : Maze +2. Existing website, if any : http://lux.vu/blog/2007/12/11/one-maze-per-child/ +3. One-line description : A multiplayer maze game. + +4. Longer description : A multiplayer maze game that uses the olpcgames + : module and pygame. + : + : + +5. URLs of similar projects : + +6. Committer list + Please list the maintainer (lead developer) as the first entry. Only list + developers who need to be given accounts so that they can commit to your + project's code repository, or push their own. There is no need to list + non-committer developers. + + Username Full name SSH2 key URL E-mail + -------- --------- ------------ ------ + #1 jminor Joshua Minor j@lux.vu + #2 + #3 + ... + + If any developers don't have their SSH2 keys on the web, please attach them + to the application e-mail. + +7. Preferred development model + + [X] Central tree. Every developer can push his changes directly to the + project's git tree. This is the standard model that will be familiar to + CVS and Subversion users, and that tends to work well for most projects. + + [ ] Maintainer-owned tree. Every developer creates his own git tree, or + multiple git trees. He periodically asks the maintainer to look at one + or more of these trees, and merge changes into the maintainer-owned, + "main" tree. This is the model used by the Linux kernel, and is + well-suited to projects wishing to maintain a tighter control on code + entering the main tree. + + If you choose the maintainer-owned tree model, but wish to set up some + shared trees where all of your project's committers can commit directly, + as might be the case with a "discussion" tree, or a tree for an individual + feature, you may send us such a request by e-mail, and we will set up the + tree for you. + +8. Set up a project mailing list: + + [ ] Yes, named after our project name + [ ] Yes, named ______________________ + [X] No + + When your project is just getting off the ground, we suggest you eschew + a separate mailing list and instead keep discussion about your project + on the main OLPC development list. This will give you more input and + potentially attract more developers to your project; when the volume of + messages related to your project reaches some critical mass, we can + trivially create a separate mailing list for you. + + If you need multiple lists, let us know. We discourage having many + mailing lists for smaller projects, as this tends to + stunt the growth of your project community. You can always add more lists + later. + +9. Commit notifications + + [ ] Notification of commits to the main tree should be e-mailed to the list + we chose to create above + [ ] A separate mailing list, -git, should be created for commit + notifications + [X] No commit notifications, please + +10. Shell accounts + + As a general rule, we don't provide shell accounts to developers unless + there's a demonstrated need. If you have one, please explain here, and + list the usernames of the committers above needing shell access. + +11. Translation + [X] Set up the laptop.org Pootle server to allow translation commits to be made + [ ] Translation arrangements have already been made at _______________ + +12. Notes/comments: + This game might fill the role of a Maze Game Template as mentioned +here: http://wiki.laptop.org/go/Game_templates Also, there is no text in the game +by design, so only the title of the activity would need to be translated. I have +only tested it under emulation. + diff --git a/docs/MazeActivity.gif b/docs/MazeActivity.gif new file mode 100644 index 0000000..b5fb9cf --- /dev/null +++ b/docs/MazeActivity.gif Binary files differ diff --git a/docs/NOTES.txt b/docs/NOTES.txt new file mode 100644 index 0000000..32f8981 --- /dev/null +++ b/docs/NOTES.txt @@ -0,0 +1,92 @@ +Idea: + A maze game for the XO laptop. + +Basics: + Use the arrow keys to move around a maze. + When you get to the goal, jump to a harder maze. + +Collaboration: + Multiple players can play on the same maze. + The first one to the goal "wins" + When one player reaches the end, all players jump to the next maze. + +Enhancements: + Show XO buddy icons instead of colored dots (only for easy mazes, when icons are large). + Measure time-to-goal and rank players to formalize the winning condition. + Separate easy/hard from small/large maze. + Easy mazes could have extra holes punched in them to make for multiple solutions. + Different maze-building algorithms + Adjust random direction choice to favor twisty vs straight hallways + Add larger rooms + Bonus items could be sprinkled around the maze. + Speed up self/opponents + Slow down self/opponents + Punch extra holes + Move some walls - make sure there is still a valid solution + Teleport + Keys/locked doors + Toggle switches/doors + Enemies + Block you + Eat you + Players could block/eat each other. + This might require adding a "facing" to control who eats who. + Players could draw their own maps + Save, load, share + Would have to xfer whole map, not just random seed + Add multiple floors with ramps, ladders, pits, etc. + Add a light source at each player that reveals the map as you travel through it. + Add a fog that slowly fades areas you have seen already. + + + + self.icon = self.iconFromBuddy(buddy) + +def iconFromBuddy(self, buddy): + data = buddy.props.icon + fn = "/tmp/buddy.icon.jpg" + f = open(fn,"w") + f.write(data) + f.close() + # class StringFile: + # def __init__(self, data): + # self.data = data + # def read(bytes=None): + # if bytes is None: + # bytes = len(self.data) + # d = self.data[:bytes] + # self.data = self.data[bytes:] + # return d + # return pygame.image.load(StringFile(data)).convert_alpha() + img = pygame.image.load(fn) + img.convert_alpha() + return img + + + + + icon = CanvasIcon( + icon_name='computer-xo', + xo_color=XoColor(buddy.props.color)) + print icon + #print icon.get_pixbuf() + print icon.get_image() + + + + + icon = player.icon + if icon: + pygame.display.get_surface().blit(icon, rect) + else: + + + + + + # self.img = self.readSVG( + # file = rsvg.Handle(filename) + # (w,h,w2,h2) = file.get_dimension_data() + # srf = cairo.ImageSurface(cairo.FORMAT_ARGB32, w, h) + # file.render_cairo(cairo.Context(srf)) + # return surface.CairoSurface(srf) -- cgit v0.9.1