MDD FOR G ENERATING RPG G AMES FOR M OBILE P HONES Eduardo Marques , - - PowerPoint PPT Presentation

mdd for g enerating rpg g ames
SMART_READER_LITE
LIVE PREVIEW

MDD FOR G ENERATING RPG G AMES FOR M OBILE P HONES Eduardo Marques , - - PowerPoint PPT Presentation

T HE RPG DSL: A CASE STUDY OF LANGUAGE ENGINEERING USING MDD FOR G ENERATING RPG G AMES FOR M OBILE P HONES Eduardo Marques , Valte Balegas, Bruno Barroca, Ankica Barisic, Vasco Amaral T HE P ROJECT Development of a language to create RPG


slide-1
SLIDE 1

THE RPG DSL: A CASE STUDY OF

LANGUAGE ENGINEERING USING

MDD FOR GENERATING RPG GAMES

FOR MOBILE PHONES

Eduardo Marques , Valte Balegas, Bruno Barroca, Ankica Barisic, Vasco Amaral

slide-2
SLIDE 2

THE PROJECT

 Development of a language to create RPG games  Domain analysis  Language Design  Textual/Graphical language editor  Generate framework code  Game properties verification  Target users: domain experts

slide-3
SLIDE 3

RPG language Metamodel Graphical language Choose target platform Generate framework’s Metamodel RPG language instance APN Verification Source code generation Framework’s Metamodel instance Transformed to Transformed to Domain Analysis

slide-4
SLIDE 4

DOMAIN ANALYSIS(1)

 Identify the RPG Domain characteristics  Restrict the domain  80% approach  Textual description  Feature model

slide-5
SLIDE 5

DOMAIN ANALYSIS(2)

 World Map  Scenes

 Tile map

 Agents  Hero

 Inventory

 Hostile

 Interaction: Fight

 Friendly

 Interaction: Dialogue

 Resources  Gold, Wood and Metal  Magics

slide-6
SLIDE 6

DOMAIN ANALYSIS(3)

 Agent properties  Life points, magic points, strength, agility, intelligence,

experience

 Objects  Artifacts, equipment, keys, doors, obstacles, traps and

switches

 Objectives  Reach a specific scene  Pick an artifact  Interact with an agent  Time

slide-7
SLIDE 7

DOMAIN ANALYSIS(4)

slide-8
SLIDE 8

DOMAIN ANALYSIS(5)

slide-9
SLIDE 9

RPG language Metamodel Graphical language Choose target platform Generate framework’s Metamodel RPG language instance APN Verification Source code generation Framework’s Metamodel instance Transformed to Transformed to Domain Analysis

slide-10
SLIDE 10

TARGET PLATFORM(1)

 Platform analysis:  Advantages and drawbacks  Ease of learning/development

Framework Characteristics Slick Java based language; Uses LWJGL Sphere Scripting language; Abstraction level that allows typical RPG features implementation Corona Scripting language; Cross-platform compilation for Android and iOS

slide-11
SLIDE 11

TARGET PLATFORM(2)

 Corona Framework  Development of an abstraction layer  Implements RPG features  Data structure library

 Decision trees, graphs, menu lists

 Simplify inter-model transformation

slide-12
SLIDE 12

RPG language Metamodel Graphical language Choose target platform Generate framework’s Metamodel RPG language instance APN Verification Source code generation Framework’s Metamodel instance Transformed to Transformed to Domain Analysis

slide-13
SLIDE 13

METAMODELS CREATION

 RPG language metamodel:  Based on domain analysis  Framework metamodel:  Based on API layer developed over the framework  1-1 relation between models (whenever possible)

slide-14
SLIDE 14

RPG language Metamodel Graphical language Choose target platform Generate framework’s Metamodel RPG language instance APN Verification Source code generation Framework’s Metamodel instance Transformed to Transformed to Domain Analysis

slide-15
SLIDE 15

GRAPHICAL LANGUAGE

 Drag and drop approach  Ease of use  Developed using Eugenia and Emfatic

slide-16
SLIDE 16

RPG language Metamodel Graphical language Choose target platform Generate framework’s Metamodel RPG language instance APN Verification Source code generation Framework’s Metamodel instance Transformed to Transformed to Domain Analysis

slide-17
SLIDE 17

METAMODEL TRANSFORMATIONS

 Generate target platform model instances  Generate Petri-Nets for verification  Using ATL  Language and toolkit for model transformation

slide-18
SLIDE 18

RPG language Metamodel Graphical language Choose target platform Generate framework’s Metamodel RPG language instance APN Verification Source code generation Framework’s Metamodel instance Transformed to Transformed to Domain Analysis

slide-19
SLIDE 19

SOURCE CODE GENERATION

 From RPG language to target platform language  To generate verification rules  Using Xpand – Template based language

slide-20
SLIDE 20

RPG language Metamodel Graphical language Choose target platform Generate framework’s Metamodel RPG language instance APN Verification Source code generation Framework’s Metamodel instance Transformed to Transformed to Domain Analysis

slide-21
SLIDE 21

VERIFICATION(1)

 Create a minimal model of RPG language specific

for verification purposes.

 An abstraction to simplify Petri-net generation

slide-22
SLIDE 22

VERIFICATION(2)

 Verified properties:  User can finish game

 Player completes the final objective

 User can finish game with maximum score

 Player completes all the objectives

 Player can complete an objective if he can reach

the scene where it is

slide-23
SLIDE 23

QUESTIONS?