EDUCON 2017. Digital Education in the Classroom: uAdventure: The eAdventure reboot. 26/04/17.
Combining the experience of
commercial gaming tools and
tailored educational tools
Ivan J. Perez-Colado, Victor M. Perez-Colado, Ivan Martínez-Ortiz, Manuel Freire-Moran,
Dept. of Software Engineering and Artificial Intelligence, Facultad de Informática,
Universidad Complutense de Madrid Madrid, Spain
2. From eAdventure to uAdventure
b. Why does eAdventure need a refurbishment?
a. uAdventure Architecture
b. The uAdventure editor
c. The uAdventure Interpreter: an emulator for eAdventure
d. Migrating SGs from eAdventure to uAdventure
4. New Educational Features in uAdventure
a. Learning Analytics for SGs
b. Embracing ubiquity: geolocated games
5. Conclussions and Future Work
From eAdventure to uAdventure: eAdventure
● The eAdventure (eA) provides an authoring tool that allows for SG development
without requiring advanced computer skills.
● Balancing both educational, practical (e.g. cost, maintenance) and technological
● eAdventure is a platform for simplifying the development of 2D point-and-click
adventure serious games
○ Game development can be achieved with small budgets
○ Maximizes the Return on Investment (ROI)
○ Customizes the learning experience
○ Facilitates both distribution and evaluation.
Why does eAdventure need a refurbishment?
● eA design started in 2007: First version delivered in early 2008.
○ Maintained by different contributors
○ Architectural and technological decisions that were correct at that time, but are
now hindering the maintenance and evolution of the platform.
● eA was built with Java technology: “build once run anywhere” -> Still on desktop
● Schools: Desktop computers -> Tablets
○ Java problems on mobile platforms
○ Mobile = Touchscreen = New interaction methods
● eA relied on Java Applets as deployment -> Deprecated
● eA: Usual game platform features + educational features
○ Maintain the platform and include mobile is not possible (too much effort)
● uA development aims to achieve the following goals
○ To address the technical issues of the eA platform
○ To face the project management/survival issues.
○ To provide a solid base platform to build new educational features
○ Maintain compatibility with eA (at least importing previous eA games).
● uA is built on top of Unity
○ Possibly the most popular (indy) game development platform
○ Multi-platform support
● uA is composed only of two main layers: Interpreter and Editor
● ad-hoc eA layers replaced by Unity’s standard layers:
○ Development effort can be used in educational features
● The Editor is focused on creating a game specification that, in conjunction with the
required game resources, will make it a game.
○ eA data model + new additions (new map scenes and new assessment
● The Interpreter relays on Unity’s representation core and translates all eA model
components into Unity game elements, will make it a game.
The uAdventure editor
● The Editor allows users to modify the game specification, manage and
create new game resources
○ Replicated from eA: main graphical user interface, including menus,
windows and general appearance.
○ Easier for the current eA users to migrate to uA
● Include also a brand-new Unity-Unified GUI
○ Unity views for advanced users : Scene preview and object hierarchy,
Unity animator, or element inspector.
● As uA evolves inside Unity, it will be able to benefit from other Unity
○ 3D assets (downloadable from the Unity Asset Store),
○ the physics engine
○ navigation meshes for movement ...
● ∆ Richier Games (mobile) + ∇ Less time to produce them
Fade transition from players appearance view on
uAdventure (left) to previous players appearance view on
The editor is quite similar in both systems.
uAdventure Conversation editor
(top) and condition editor (left)
uAdventure Interpreter: an emulator for eAdventure
● The Interpreter loads eA game file and makes it playable.
○ developing behaviors for every element that is visible or plays a role in
● Manages the GameState, including: flags, variables, global-states, inventory...
● Handling user interaction:
○ PC/Mouse-Keyboard system -> Older eA games
■ Cursors, floating names, and lists of answers at the bottom of the screen
○ Tablet/Touch system -> New features:
■ interactive elements glow periodically to capture the player's attention
● Touchscreen players can’t “mouse-over” scenes to find interactive
● uA also includes a multi-platform eA game emulator that can
take a “.jar” executable eA game and run it on every platform
available within uA
Migrating SGs from eAdventure to uAdventure
● Games reliability: games stop working due to technological issues
● eA’s SG life cycle improvement ->uA Interpreter
○ Most of the games developed with eA -> supported by uA
● Cost reduction: If uA doesn’t exist -> complete redevelopment
○ That is, the use of uA avoids the high cost in time and money
● Case study of adapting a game to Unity by the e-UCM research group
○ reproduced the First Aid Game inside Unity
50 Hours -> 85% of the game
60 Hours for full support
60h * 20€/h = 1.200€ per game
CATEDU has 6 games -> 7.200€
Original Budget ≈ 35.000€ -> 20%
New Educational Features in uAdventure
Two main educational features that are being implemented in uA:
● Learning Analytics as an assessment tool
● Geolocated games
Integrating Learning Analytics for SGs
● Assessment in eAdventure
○ Condition -> Assert: If the user fails send: “The learner has failed the test”
● uA Learning analytics
○ Every user interaction in the game is traced.
○ Default game-independent analytics and game-specific analytics
● xAPI support: integrate analytics with H2020 RAGE and BEACONING
Embracing ubiquity: geolocated games
● Ubiquity -> Ubiquitous Learning -> Mobile learning
● Mobile allows games to be played anywhere and anytime
○ Pokemon GO
● uA takes advantage of the GPS, Compass and Camera:
○ Gymkhanas, interactive tours, or cultural visitor guides
○ GPS: Outdoor
○ Compass: Orientation
○ Camera: QR Codes -> Indoor
● Extending xAPI analytics for geolocated games
● From eAdventure to uAdventure
○ Addresses the technological limitations, and provides new
● The uA tool has been created around two main elements:
○ The Game Editor and the Game Interpreter (open code in github)
● The interpreter has same model used in eA -> compatibility.
● Improve game lifecycle: reduce 85% maintenance and migration
● Integration of uAdventure with the real-time Game Learning
Analytics platform used in the H2020 RAGE and BEACONING
● Although uAdventure still requires significant work before public
Want to be involved in uAdventure?
check our Github repository
- Mail: firstname.lastname@example.org
- Twitter: @BaltaFM
- GScholar: https://scholar.google.es/citations?user=eNJxjcwAAAAJ&hl=en
- ResearchGate: https://www.researchgate.net/profile/Baltasar_Fernandez-Manjon
- SlideShare: https://www.slideshare.net/BaltasarFernandezManjon