Software Framework for Generic Game Development in CGDG

  • Hao-Yun Liu
  • I-Chen Wu
  • Ting-Fu Liao
  • Hao-Hua Kang
  • Lung-Pin Chen
Part of the Smart Innovation, Systems and Technologies book series (SIST, volume 20)


In this paper, we propose a software framework for easily facilitating computer game developments. Using the software framework, the developers can easily implement game record editors for computer game AI analysis. Additionally, using the framework, the developers can easily design job-level (JL) search algorithm to dispatch jobs to workers of a desktop grid, named CGDG. Based on the framework, we successfully developed several record editors for many games, such as Connect6, Go, Chinese Chess, Mahjong, and also developed some JL search algorithms, such as JL proof number search (JL-PNS), JL Monte-Carlo tree search (JL-MCTS), JL alpha-beta search (JL-ABS). Most importantly, once a JL algorithm such as JL-PNS is implemented, it can be applied to all games. This demonstrates the excellence of this framework.


software framework game record editor job-level algorithm CGDG 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Allis, L.V.: Searching for solutions in games and artificial intelligence, Ph.D. Thesis, University of Limburg, Maastricht, The Netherlands (1994)Google Scholar
  2. 2.
    Allis, L.V., van der Meulen, M., van den Herik, H.J.: Proof-number search. Artificial Intelligence 66(1), 91–124 (1994)MathSciNetMATHCrossRefGoogle Scholar
  3. 3.
    Beck, K.: Test-Driven Development by Example. Addison Wesley - Vaseem (2003)Google Scholar
  4. 4.
    Beck, K., et al.: Manifesto for Agile Software Development. Agile Alliance (2001) (retrieved June 14, 2010)Google Scholar
  5. 5.
  6. 6.
    Browne, C., Powley, E., Whitehouse, D., Lucas, S., Cowling, P., Rohlfshagen, P., Tavener, S., Perez, D., Samothrakis, S., Colton, S.: A Survey of Monte Carlo Tree Search Methods. IEEE Transactions on Computational Intelligence and AI in Games 4(1) (forthcoming 2012)Google Scholar
  7. 7.
    Chen, C.-P., Wu, I.-C., Chan, Y.-C.: ConnectLib – A Connect6 Editor (2009),
  8. 8.
    Chou, C.-W., Yen, S.-J., Wu, I.-C.: TAAI 2011 Computer Go Tournaments. ICGA Journal 34(4), 251–252 (2011)Google Scholar
  9. 9.
  10. 10.
    Coulom, R.: Efficient Selectivity and Backup Operators in Monte-Carlo Tree Search. In: van den Herik, H.J., Ciancarini, P., Donkers, H.H.L.M(J.) (eds.) CG 2006. LNCS, vol. 4630, pp. 72–83. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  11. 11.
    Design Patterns and Refactoring, University of Pennsylvania (2003), lecture slide at
  12. 12.
    Extreme Programming,, lecture paper at
  13. 13.
    Feathers, M.: Working Effectively with Legacy Code. Prentice Hall (2004)Google Scholar
  14. 14.
    Gelly, S., Silver, D.: Monte-Carlo Tree Search and Rapid Action Value Estimation in Computer Go. Artificial Intelligence 175, 1856–1875 (2011)MathSciNetCrossRefGoogle Scholar
  15. 15.
    Human Centred Technology Workshop 2005 (2005), PDF webpage:
  16. 16.
    Chen, K.-Y.: The Development of the Multi-Broker Desktop Grid for Computer Games, National Chiao-Tung University, master thesisGoogle Scholar
  17. 17.
    Copeland, L.: Extreme Programming. Computerworld (December 2001) (retrieved January 11, 2011)Google Scholar
  18. 18.
    Lin, H.-H., Sun, D.-J., Wu, I.-C., Yen, S.-J.: The 2010 TAAI Computer-Game Tournaments. ICGA Journal (SCI) 34(1) (March 2011)Google Scholar
  19. 19.
    Liu, H.-Y., Wu, I.-C., Kang, H.-H., Liao, T.-F.: System Demonstration for Generic Game Development Framework. In: The 2012 Conference on Technologies and Applications of Artificial Intelligence (TAAI 2012), Tainan, Taiwan (November 2012)Google Scholar
  20. 20.
    Newkirk, J.W., Vorontsov, A.A.: Test-Driven Development in Microsoft .NET. Microsoft Press (2004)Google Scholar
  21. 21.
    Renlib, Renju – A Renju Editor,
  22. 22.
    Smarr, L., Catlett, C.: Metacomputing. Communications of the ACM 35(6), 44–52 (1992)CrossRefGoogle Scholar
  23. 23.
    Reenskaug, T.: Models-Views-Controllers (1979)Google Scholar
  24. 24.
    Reenskaug, T.: THING-MODEL-VIEW-EDITOR an Example from a planningsystem (1979)Google Scholar
  25. 25.
    Wu, I.-C., Chen, C.-P., Lin, P.-H., Huang, K.-C., Chen, L.-P., Sun, D.-J., Chan, Y.-C., Tsou, H.-Y.: A Volunteer-computing-based grid environment for Connect6 applications. In: IEEE Int. Conf. Comput. Sci. Eng., Vancouver, BC, Canada, August 29-31, pp. 110–117 (2009)Google Scholar
  26. 26.
    Wu, I.-C., Huang, D.-Y., Chang, H.-C.: Connect6. ICGA Journal 28(4), 234–242 (2006)Google Scholar
  27. 27.
    Wu, I.-C., Huang, D.-Y.: A New Family of k-in-a-Row Games. In: van den Herik, H.J., Hsu, S.-C., Hsu, T.-S., Donkers, H.H.L.M(J.) (eds.) ACG11. LNCS, vol. 4250, pp. 180–194. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  28. 28.
    Wu, I.-C., Lin, H.-H., Lin, P.-H., Sun, D.-J., Chan, Y.-C., Chen, B.-T.: Job-Level Proof-Number Search for Connect6. In: van den Herik, H.J., Iida, H., Plaat, A. (eds.) CG 2010. LNCS, vol. 6515, pp. 11–22. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  29. 29.
    Wu, I.-C., Lin, H.-H., Sun, D.-J., Kao, K.-Y., Lin, P.-H., Chan, Y.-C., Chen, B.-T.: Job-Level Proof-Number Search. Accepted by IEEE Transactions on Computational Intelligence and AI in Games (2012)Google Scholar
  30. 30.
    Wu, I.-C., Lin, P.-H.: NCTU6-Lite Wins Connect6 Tournament. ICGA Journal 31(4) (2008)Google Scholar
  31. 31.
    Wu, I.-C., Lin, Y.-S., Tsai, H.-T., Lin, P.-H.: The Man-Machine Connect6 Championship 2011. ICGA Journal (SCI) 34(2) (June 2011)Google Scholar
  32. 32.
    XtremWeb website,
  33. 33.
    Yang, J.-K., Su, T.C., Wu, I.-C.: TCGA 2012 Computer Game Tournament Report. Submitted to ICGA Journal (2012)Google Scholar
  34. 34.
    Yen, S.-J., Su, T.-C., Wu, I.-C.: The TCGA 2011 Computer-Games Tournament. ICGA Journal (SCI) 34(2) (June 2011)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Hao-Yun Liu
    • 1
  • I-Chen Wu
    • 1
  • Ting-Fu Liao
    • 1
  • Hao-Hua Kang
    • 1
  • Lung-Pin Chen
    • 1
  1. 1.Department of Computer ScienceNational Chiao Tung UniversityHsinchuTaiwan

Personalised recommendations