<?xml version="1.0" encoding="UTF-8"?>
<wiki>
  <body>&lt;p&gt;Last updated: Feburary 09, 2009&lt;/p&gt;
&lt;h2&gt;Recently Updated or Finished Items:&lt;/h2&gt;
&lt;ol&gt;
	&lt;li&gt;AI implementation is undergoing, finished most of the required basic facilities. Now it is going back to design stage, working on the AI state-machine &amp;amp; strategies design.&lt;/li&gt;
	&lt;li&gt;overheat mechanism added.&lt;/li&gt;
	&lt;li&gt;the death-countdown mechanism is now working more properly.&lt;/li&gt;
	&lt;li&gt;Test: check if the new attack formula is good: (current_num-1)/2 * chain + (chain-2)*2; After the addition of overheat mechanism, this formula still seems like too powerful. more testing is required.&lt;/li&gt;
	&lt;li&gt;multi-mice feature. (half done, the replugging problem remains, and for now, it won&amp;#8217;t work on X11.)&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Gameplay &amp;amp; Balancing adjustments:&lt;/h2&gt;
&lt;ol&gt;
	&lt;li&gt;AI implementations.&lt;/li&gt;
	&lt;li&gt;Test: make the number of default color set more than 4. Maybe 5, 6 at most.&lt;/li&gt;
	&lt;li&gt;puzzle mode needs a more specific and focused gameplay.&lt;/li&gt;
	&lt;li&gt;other game modes such as score attack a time attack.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Distribution &amp;amp; Core development:&lt;/h2&gt;
&lt;ol&gt;
	&lt;li&gt;separate view lib and model lib. build them into .so, .dll, .dylib, etc.&lt;/li&gt;
	&lt;li&gt;create ruby binding for control flow, to ease the creation for module via Rice, &lt;span class=&quot;caps&quot;&gt;SWIG&lt;/span&gt;, etc.&lt;/li&gt;
	&lt;li&gt;pull Timer out of EventDispatcher, and try to design a formal holder of timer, not dummy.&lt;/li&gt;
	&lt;li&gt;make aliases of all standard library usages. lest the change from std::tr1 &amp;#8594; std in the c++0x causes trouble.&lt;/li&gt;
	&lt;li&gt;UI improvements such as adaption of different screen resolutions.&lt;/li&gt;
	&lt;li&gt;code clean up. remove unneeded comments or temporary codes.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Tools &amp;amp; Utilities adjustments:&lt;/h2&gt;
&lt;ol&gt;
	&lt;li&gt;pull puzzle generator from ludy.&lt;/li&gt;
	&lt;li&gt;make puzzle generator&amp;#8217;s command be rake based?&lt;/li&gt;
	&lt;li&gt;choose a unit test tool, such as cxx unit, google unit, etc.&lt;/li&gt;
	&lt;li&gt;try to translate puzzle generator to C++ if the real-time generation of big puzzles is crucial someday.&lt;/li&gt;
	&lt;li&gt;the utils::dictionary needs writing and error-logging functionalities.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Bugs &amp;amp; Issues fixing list:&lt;/h2&gt;
&lt;ol&gt;
	&lt;li&gt;SplineAnimator has a bug which will crash the game when used in garbage throwing effects.&lt;/li&gt;
	&lt;li&gt;wiimote&amp;#8217;s rumble functionality always crash the game in the long run. (after about 1 hrs of play using wiimote)&lt;/li&gt;
	&lt;li&gt;multimice will not run on Mac (using X11 on Mac) for now, because the underlying library (ManyMouse) currently doesn&amp;#8217;t support X11.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Others:&lt;/h2&gt;
&lt;ol&gt;
	&lt;li&gt;more visual effects. better particle emitter interface and functionality.&lt;/li&gt;
	&lt;li&gt;cpu performance issues in X11 / Mac game builds. (probably a mysterious sleep in Irrlicht)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Other minor or more specific descriptions are in the archilifelin&amp;#8217;s memo. but that memo is a mess for now.&lt;br /&gt;
There are also a few inconsistency between implementation and the original game design documentation,&lt;br /&gt;
some of the changes and decisions are made on-the-fly but the doc wasn&amp;#8217;t revised. So the &lt;span class=&quot;caps&quot;&gt;GDD&lt;/span&gt; needs&lt;br /&gt;
to be revised, in the future anyways&amp;#8230;.&lt;br /&gt;
Also, there were so many things in &lt;span class=&quot;caps&quot;&gt;GDD&lt;/span&gt; didn&amp;#8217;t come to the implementation because we were running&lt;br /&gt;
out time then. Thus, expect this &lt;span class=&quot;caps&quot;&gt;TODO&lt;/span&gt; list to keep growing in the coming months and years.&lt;/p&gt;</body>
  <created-at type="datetime">2008-11-04T19:28:14-08:00</created-at>
  <id type="integer">76516</id>
  <permalink>todo</permalink>
  <repository-id type="integer">25193</repository-id>
  <title>TODO</title>
  <updated-at type="datetime">2009-02-08T23:56:43-08:00</updated-at>
  <user-id type="integer">16171</user-id>
</wiki>
