Writing Real-Time .Net Games in Casanova

  • Giuseppe Maggiore
  • Pieter Spronck
  • Renzo Orsini
  • Michele Bugliesi
  • Enrico Steffinlongo
  • Mohamed Abbadi
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7522)


In this paper we show the Casanova language (and its accompanying design pattern, Rule-Script-Draw) in action by building a series of games with it. In particular we discuss how Casanova is suitable for making games regardless of their genre: the Game of Life, a shooter game, an adventure game and a strategy game. We also discuss the difference between Casanova and existing frameworks.


Game development Casanova databases languages functional programming F# 


  1. 1.
    Fullerton, T., Swain, C., Hoffman, S.: Game design workshop: a playcentric approach to creating innovative games. Morgan Kaufman (2008)Google Scholar
  2. 2.
    Ritterfeld, U., Cody, M., Vorderer, P.: Serious Games: Mechanisms and Effects (2009)Google Scholar
  3. 3.
    Entertainment Software Association: Industry Facts (2010)Google Scholar
  4. 4.
    Buckland, M.: Programming Game AI by Example, Sudbury, MA (2004)Google Scholar
  5. 5.
    Giuseppe Maggiore, M.: Monadic Scripting in F# for Computer Games, Oslo, Norway (2011)Google Scholar
  6. 6.
    Maggiore, G., Spanò, A., Orsini, R., Costantini, G., Bugliesi, M., Abbadi, M.: Designing Casanova: A Language for Games. In: van den Herik, H.J., Plaat, A. (eds.) ACG 2011. LNCS, vol. 7168, pp. 320–332. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  7. 7.
    Maggiore, G., Bugliesi, M., Orsini, R.: Casanova Papers. In: Casanova project page, (accessed 2011)
  8. 8.
  9. 9.
    Ampatzoglou, A., Chatzigeorgiou, A.: Evaluation of object-oriented design patterns in game development. Journal of Information and Software Technology 49 (2007)Google Scholar
  10. 10.
    Folmer, E.: Component Based Game Development – A Solution to Escalating Costs and Expanding Deadlines? In: Schmidt, H.W., Crnković, I., Heineman, G.T., Stafford, J.A. (eds.) CBSE 2007. LNCS, vol. 4608, pp. 66–73. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  11. 11.
    Conal, E., Hudak, P.: Functional reactive animation. In: International Conference on Functional Programming (ICFP), pp. 263–273 (1997)Google Scholar
  12. 12.
    Walker White, A.: Scaling games to epic proportions. In: Proceedings of the 2007 ACM SIGMOD International Conference on Management of Data (SIGMOD), New York, NY, USA, pp. 31–42 (2007)Google Scholar
  13. 13.
    Maggiore, G.: Casanova project page (2011),
  14. 14.
    Maggiore, G.: Galaxy Wars Project Page (2010),,
  15. 15.
    Zhao, R., Szafron, D.: Generating Believable Virtual Characters Using Behavior Capture and Hidden Markov Models. In: van den Herik, H.J., Plaat, A. (eds.) ACG 2011. LNCS, vol. 7168, pp. 342–353. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  16. 16.
    Garcia-molina, H., Ullman, J., Widom, J.: Database System Implementation (1999)Google Scholar

Copyright information

© IFIP International Federation for Information Processing 2012

Authors and Affiliations

  • Giuseppe Maggiore
    • 1
  • Pieter Spronck
    • 2
  • Renzo Orsini
    • 1
  • Michele Bugliesi
    • 1
  • Enrico Steffinlongo
    • 1
  • Mohamed Abbadi
    • 1
  1. 1.DAIS - Computer ScienceUniversità Ca’ Foscari VeneziaItaly
  2. 2.Tilburg Center for Creative ComputingTilburg UniversityNetherlands

Personalised recommendations