Talk:Implode: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
Line 9: Line 9:


: Yes, it is similar to Same Gnome, but I think the goal is slightly different. With Implode, you need to remove at least three contiguous blocks instead of two in Same Gnome, and Implode's objective is to clear the entire board instead of maximizing the score. I'm not sure if Same Gnome guarantees that some sequence of moves clears the board as Implode does; I believe Simon Tatham's puzzle collection contains a Same Gnome clone with such a guarantee, though. —[[User:Leejc|Joe]] 01:21, 27 February 2008 (EST)
: Yes, it is similar to Same Gnome, but I think the goal is slightly different. With Implode, you need to remove at least three contiguous blocks instead of two in Same Gnome, and Implode's objective is to clear the entire board instead of maximizing the score. I'm not sure if Same Gnome guarantees that some sequence of moves clears the board as Implode does; I believe Simon Tatham's puzzle collection contains a Same Gnome clone with such a guarantee, though. —[[User:Leejc|Joe]] 01:21, 27 February 2008 (EST)

== Bugs ==
Implode fails in joyride. I'm running 2137 and Implode fails to start. As this code will become mainstream sometime, it's worth figuring out what's causing the failure. Log follows [[User:Rmyers|Rmyers]] 03:04, 12 July 2008 (UTC)

1215822035.098977 WARNING root: Bundle Implode: MANIFEST includes itself: MANIFEST
1215822040.302242 WARNING root: No gtk.AccelGroup in the top level window.
1215822040.397893 WARNING root: No gtk.AccelGroup in the top level window.
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)

/usr/bin/sugar-activity in <module>()
144 module.start()
145
--> 146 create_activity_instance(activity_constructor, activity_handle)
global create_activity_instance = <function create_activity_instance at 0xa24ee9c>
global activity_constructor = <class 'implodeactivity.ImplodeActivity'>
global activity_handle = <sugar.activity.activityhandle.ActivityHandle object at 0xa72044c>
147
148 gtk.main()

/usr/bin/sugar-activity in create_activity_instance(constructor=<class 'implodeactivity.ImplodeActivity'>, handle=<sugar.activity.activityhandle.ActivityHandle object at 0xa72044c>)
41
42 def create_activity_instance(constructor, handle):
---> 43 activity = constructor(handle)
activity = undefined
constructor = <class 'implodeactivity.ImplodeActivity'>
handle = <sugar.activity.activityhandle.ActivityHandle object at 0xa72044c>
44 activity.connect('destroy', activity_destroy_cb)
45 activity.show()

/home/olpc/Activities/Implode.activity/implodeactivity.py in __init__(self=<ImplodeActivity object at 0xa25602c (SugarActivity at 0xa80e840)>, handle=<sugar.activity.activityhandle.ActivityHandle object at 0xa72044c>)
48 self._game = implodegame.ImplodeGame()
49
---> 50 toolbox = _Toolbox(self)
toolbox = undefined
global _Toolbox = <class 'implodeactivity._Toolbox'>
self = <ImplodeActivity object at 0xa25602c (SugarActivity at 0xa80e840)>
51 self.set_toolbox(toolbox)
52 toolbox.show()

/home/olpc/Activities/Implode.activity/implodeactivity.py in __init__(self=<_Toolbox object at 0xa8df284 (implodeactivity+_Toolbox at 0xa164650)>, activity=<ImplodeActivity object at 0xa25602c (SugarActivity at 0xa80e840)>)
149 button.set_tooltip(tooltip)
150
--> 151 add_level_button('easy-level' , _("Easy") , 'easy-clicked')
add_level_button = <function add_level_button at 0xa8db80c>
global _ = <function gettext at 0xb788b80c>
152 add_level_button('medium-level', _("Medium"), 'medium-clicked')
153 add_level_button('hard-level' , _("Hard") , 'hard-clicked')

/home/olpc/Activities/Implode.activity/implodeactivity.py in add_level_button(icon_name='easy-level', tooltip='Easy', signal_name='easy-clicked')
139 button = RadioToolButton(icon_name, levels[0])
140 else:
--> 141 button = RadioToolButton(icon_name)
button = undefined
global RadioToolButton = <class 'sugar.graphics.radiotoolbutton.RadioToolButton'>
icon_name = 'easy-level'
142 levels.append(button)
143 toolbar.add(button)

TypeError: __init__() takes exactly 1 argument (2 given)

Revision as of 03:04, 12 July 2008

General Reaction

My small child (preschool age) really likes Implode. Especially the smiley face that it displays after successfully clearing a screen. He calls it "my BOOM game" due to the silly noises that I made when we first started playing it. Except for the finer points of strategy, he is now able to play it by himself. I agree that some audible cues would be good eventually. Bouncey 12:42, 19 January 2008 (EST)

Thanks for the feedback! I'll have to investigate how to make noise on the XO. Any preference as to the sounds the game should make? —Joe 00:59, 21 January 2008 (EST)

Sounds like Same Gnome that comes with Ubuntu. Indeed, it's a fund game. My college age son plays Same Gnome. fholson at cohousing.org

Yes, it is similar to Same Gnome, but I think the goal is slightly different. With Implode, you need to remove at least three contiguous blocks instead of two in Same Gnome, and Implode's objective is to clear the entire board instead of maximizing the score. I'm not sure if Same Gnome guarantees that some sequence of moves clears the board as Implode does; I believe Simon Tatham's puzzle collection contains a Same Gnome clone with such a guarantee, though. —Joe 01:21, 27 February 2008 (EST)

Bugs

Implode fails in joyride. I'm running 2137 and Implode fails to start. As this code will become mainstream sometime, it's worth figuring out what's causing the failure. Log follows Rmyers 03:04, 12 July 2008 (UTC)

1215822035.098977 WARNING root: Bundle Implode: MANIFEST includes itself: MANIFEST 1215822040.302242 WARNING root: No gtk.AccelGroup in the top level window. 1215822040.397893 WARNING root: No gtk.AccelGroup in the top level window.


TypeError Traceback (most recent call last)

/usr/bin/sugar-activity in <module>()

   144     module.start()
   145 

--> 146 create_activity_instance(activity_constructor, activity_handle)

       global create_activity_instance = <function create_activity_instance at 0xa24ee9c>
       global activity_constructor = <class 'implodeactivity.ImplodeActivity'>
       global activity_handle = <sugar.activity.activityhandle.ActivityHandle object at 0xa72044c>
   147 
   148 gtk.main()

/usr/bin/sugar-activity in create_activity_instance(constructor=<class 'implodeactivity.ImplodeActivity'>, handle=<sugar.activity.activityhandle.ActivityHandle object at 0xa72044c>)

    41 
    42 def create_activity_instance(constructor, handle):

---> 43 activity = constructor(handle)

       activity = undefined
       constructor = <class 'implodeactivity.ImplodeActivity'>
       handle = <sugar.activity.activityhandle.ActivityHandle object at 0xa72044c>
    44     activity.connect('destroy', activity_destroy_cb)
    45     activity.show()

/home/olpc/Activities/Implode.activity/implodeactivity.py in __init__(self=<ImplodeActivity object at 0xa25602c (SugarActivity at 0xa80e840)>, handle=<sugar.activity.activityhandle.ActivityHandle object at 0xa72044c>)

    48         self._game = implodegame.ImplodeGame()
    49 

---> 50 toolbox = _Toolbox(self)

       toolbox = undefined
       global _Toolbox = <class 'implodeactivity._Toolbox'>
       self = <ImplodeActivity object at 0xa25602c (SugarActivity at 0xa80e840)>
    51         self.set_toolbox(toolbox)
    52         toolbox.show()

/home/olpc/Activities/Implode.activity/implodeactivity.py in __init__(self=<_Toolbox object at 0xa8df284 (implodeactivity+_Toolbox at 0xa164650)>, activity=<ImplodeActivity object at 0xa25602c (SugarActivity at 0xa80e840)>)

   149             button.set_tooltip(tooltip)
   150 

--> 151 add_level_button('easy-level' , _("Easy") , 'easy-clicked')

       add_level_button = <function add_level_button at 0xa8db80c>
       global _ = <function gettext at 0xb788b80c>
   152         add_level_button('medium-level', _("Medium"), 'medium-clicked')
   153         add_level_button('hard-level'  , _("Hard")  , 'hard-clicked')

/home/olpc/Activities/Implode.activity/implodeactivity.py in add_level_button(icon_name='easy-level', tooltip='Easy', signal_name='easy-clicked')

   139                 button = RadioToolButton(icon_name, levels[0])
   140             else:

--> 141 button = RadioToolButton(icon_name)

       button = undefined
       global RadioToolButton = <class 'sugar.graphics.radiotoolbutton.RadioToolButton'>
       icon_name = 'easy-level'
   142             levels.append(button)
   143             toolbar.add(button)

TypeError: __init__() takes exactly 1 argument (2 given)