Skip to main content

Tight Integration of Rule-Based Tools in Game Development

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 11946))

Abstract

In the wider perspective of narrowing down some of the gaps that prevent the adoption of declarative logic programming within highly dynamically changing environments, we focus in this paper on the context of integrating reasoning modules in real-time videogames. Integrating rule-based AI within the commercial game development life-cycle poses a number of unsolved challenges, each with non-obvious solution. For instance, it is necessary to cope with strict time performance requirements; the duality between procedural code and declarative specifications prevents easy integration; the concurrent execution of reasoning tasks and game updates requires proper information passing strategies between the two involved sides. In this work we illustrate our recent progress on how to embed rule-based reasoning modules into the well-known Unity game development engine. To this end, we report about ThinkEngine, a framework in which a tight integration of declarative formalisms within the typical game development workflow is made possible. We prove the viability of our approach by developing a proof-of-concept Unity game that makes use of ASP-based AI modules.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    https://assetstore.unity.com/categories/tools/ai.

  2. 2.

    For space reasons we will not describe how matrices are translated.

  3. 3.

    https://github.com/MaciejKitowski/Tetris.

  4. 4.

    I.e. a window similar to the Unity inspector. The inspector displays detailed information about the currently selected game object, including all attached components.

  5. 5.

    Conditions are selected from a set of boolean functions customized by the developer.

  6. 6.

    This assertion maps facts derived from the ArenaGrid sensor mapped by the predicate arenaGrid(arena(arena(tiles(X,Y,arenaTile(empty(T)))))).

References

  1. Buccafurri, F., Leone, N., Rullo, P.: Strong and weak constraints in disjunctive datalog. In: Dix, J., Furbach, U., Nerode, A. (eds.) LPNMR 1997. LNCS, vol. 1265, pp. 2–17. Springer, Heidelberg (1997). https://doi.org/10.1007/3-540-63255-7_2

    Chapter  Google Scholar 

  2. Calimeri, F., Fuscà, D., Germano, S., Perri, S., Zangari, J.: Fostering the use of declarative formalisms for real-world applications: the EmbASP framework. New Gener. Comput. 37(1), 29–65 (2019)

    Article  Google Scholar 

  3. Calimeri, F., Germano, S., Ianni, G., Pacenza, F., Perri, S., Zangari, J.: Integrating rule-based AI tools into mainstream game development. In: Benzmüller, C., Ricca, F., Parent, X., Roman, D. (eds.) RuleML+RR 2018. LNCS, vol. 11092, pp. 310–317. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-99906-7_23

    Chapter  Google Scholar 

  4. Creighton, R.H.: Unity 3D game development by example: a seat-of-your-pants manual for building fun, groovy little games quickly. Packt Publishing Ltd (2010)

    Google Scholar 

  5. Eiter, T., Ianni, G., Krennwallner, T.: Answer set programming: a primer. In: Tessaris, S., et al. (eds.) Reasoning Web 2009. LNCS, vol. 5689, pp. 40–110. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-03754-2_2

    Chapter  Google Scholar 

  6. Febbraro, O., Leone, N., Grasso, G., Ricca, F.: JASP: a framework for integrating answer set programming with Java. In: KR (2012)

    Google Scholar 

  7. Fink, M., Germano, S., Ianni, G., Redl, C., Schüller, P.: ActHEX: implementing HEX programs with action atoms. In: Cabalar, P., Son, T.C. (eds.) LPNMR 2013. LNCS (LNAI), vol. 8148, pp. 317–322. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-40564-8_31

    Chapter  Google Scholar 

  8. Gebser, M., Kaminski, R., Kaufmann, B., Ostrowski, M., Schaub, T., Wanko, P.: Theory solving made easy with clingo 5. In: ICLP. Technical Communications (2016)

    Google Scholar 

  9. Oetsch, J., Pührer, J., Seidl, M., Tompits, H., Zwickl, P.: VIDEAS: a development tool for answer-set programs based on model-driven engineering technology. In: Delgrande, J.P., Faber, W. (eds.) LPNMR 2011. LNCS (LNAI), vol. 6645, pp. 382–387. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-20895-9_45

    Chapter  Google Scholar 

  10. Rath, J., Redl, C.: Integrating answer set programming with object-oriented languages. In: Lierler, Y., Taha, W. (eds.) PADL 2017. LNCS, vol. 10137, pp. 50–67. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-51676-9_4

    Chapter  Google Scholar 

  11. Ricca, F.: The DLV Java wrapper. In: de Vos, M., Provetti, A. (eds.) ASP 2003, pp. 305–316 (2003)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Francesco Pacenza .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Angilica, D., Ianni, G., Pacenza, F. (2019). Tight Integration of Rule-Based Tools in Game Development. In: Alviano, M., Greco, G., Scarcello, F. (eds) AI*IA 2019 – Advances in Artificial Intelligence. AI*IA 2019. Lecture Notes in Computer Science(), vol 11946. Springer, Cham. https://doi.org/10.1007/978-3-030-35166-3_1

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-35166-3_1

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-35165-6

  • Online ISBN: 978-3-030-35166-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics