Page 1
5/17/2018 Advance Learning and Processing Indonesian Using Role Playing Game - slide...
http://slidepdf.com/reader/full/advance-learning-and-processing-indonesian-using-role
1
Advance Learning and Processing Indonesian using Role Playing Game
Jasson Prestiliano [email protected]
Eko [email protected]
Faculty of Information Technology, Satya Wacana Christian University
Jln. Diponegoro 52-60 Salatiga
Central Java, Indonesia
Abstract
This paper discusses a game as a tool to learn
language. In this case we focus on Indonesian
language learning for non Indonesian speakers. This
research is the advanced research about learning and
processing Indonesian using Role Playing Game
(RPG).
In the first research, we implement RPG by using
RPG Maker VX, while in this research we use RPG
Maker XP. This new tool supports Ruby script that
called RGSS. With this facility users can enter the
word with keyboard, so that user can type any word
and then the game will process it. Besides, this engine
supports more editable graphics to provide better
performance.
This paper uses the difference concept from the
preceding paper. The first and second stage in the previous RPG was removed, while the third stage, that
is sentence completion, was used as a first stage in the
current RPG. The second and third stage in the
current RPG is completely new, that is writing a good
simple sentence and command sentence. All of the
stage use natural language processing algorithm to
correct the input sentence.
According to the survey, the current RPG more
reliable and more interesting than before , so it can
be a better tool for learning Indonesian language.
Keywords: RPG, NLP, Robust Syntactic Parsing
1. Introduction
The role of the teacher is important in learning a
language. It is necessary to fasten the transfer of
knowledge, but with just the usual manner, students
still feel hard to understand the language. Teachers
have to try many ways to teach language in order not
to lack of communication and boredom. The teacher
must teach in the class, doing conversation, and
learning by listening the conversation or narration
from the tape-recorder. These conventional methods
need more teachers’ effort, like good quality on
teaching language. These problems make the learnerto try to look for language learning tools that make
them improve their language knowledge. An
alternative learning method is using a computer
technology especially the game technology.
Game technology that tries to combine the
important of education and the fun factor of playing a
game is often called “Serious Game” [9]. In this
serious game, we can simulate or learn something by
playing a game. Examples of this type of game are
Darwars, a game that support the training of United
States Army and Jeux de Mots, French web games in
NLP (Natural Language Processing) to create lexical
resources. This paper also tries to develop a serious
game to learn Indonesian Language by using Robust
Syntactic Parsing algorithm to process inputs from the
player.
An RPG (Role Playing Game) is a good alternative
for language learning like Indonesian. RPG is a game
in which the participants are assumed to be the role of
fictional characters and collaboratively create or
follow stories. Warren Spector [7] define RPG as a
game in which character development and character
interaction take precedence over other factors and
where each player's experience of the story is
determined by individual choice. Without bothcharacter development and genuine choices placed
within a player's control, a game cannot be called a
role-playing game [6]. This kind of game can motivate
the student as a player to always make some progress
in his or her study [5]. Some examples of this type of
game are Final Fantasy series from Squaresoft (now it
Page 2
5/17/2018 Advance Learning and Processing Indonesian Using Role Playing Game - slide...
http://slidepdf.com/reader/full/advance-learning-and-processing-indonesian-using-role
2
is known as Square Enix) [8], Diablo series from
Blizzard and so on.
This paper is a result of the advanced research in
Indonesian Language Learning using RPG without
ignoring the fun factor of playing it. In the first
research there are some weaknesses and problems.
The weaknesses of the first prototype are lack of natural language processing. The natural language
processing is provided only in third stage. Beside that,
the RPG has less of fun factor in playing RPG itself.
We try to solve those cases by making the advance
natural language processing to recover them using
RPG with all of three stages using natural language
processing and provide better language learning.
2. Language Learning Concept in RPG
When we play a game, we will meet something
called stage or in some other words it called chapter.
Stage in a game usually represents the difficulty of the
game. The stage arrange from the lowest to the
highest.
In the first game that has been made, Stage 1
provides word spelling and Stage 2 provides word
matching that didn’t use the natural language
processing [5]. In the last stage the game use it for
sentence completion. In this paper, the advance RPG
uses natural language processing in every stage. The
first stage is still using the third stage of the first
game, sentence completion. The second and third
stage use improved natural language processingalgorithm to process simple sentence and command
sentence.
The main concept of learning language with RPG
is that the users will learn the language structure and
meaning while he/she play a game. So, the learning
process will be presented to the user in RPG ways. For
example in the first stage, when the user tries to
complete the sentence, he/she will encounter the
monsters that try to make user’s mission to be failed,
so the user will be encourage to play and learn
language harder. From now on the user will be called
as the player, because they play RPG.
2.1. First Stage: Sentence Completion
Sentence completion is the easiest way to introduce
language for the players. They will be given an
incomplete sentence and then try to complete it with
the word or phrase that the meaning was given in the
brackets. The Robust Syntactic Parsing will search in
the dictionary included in RPG engine, and then it
will collect the meaning of the word or phrase that had
been inputted by player, after that it match the
meaning with the meaning that was reserved for the
question and process the result.
One example that explains about what the game
does in the first stage is the random seed generatorgets the question “Saya … (eat/ am eating/ will eat)
pagi ini”. This kind of sentence can have the meaning
“I eat this morning” or “I’m eating this morning”
even “I will eat this morning”, so the answer “makan”
or “sedang makan” even “mau makan” can be the
correct answers. The variation of answers given by the
user will be processed by the Natural Language
Processing in order to give the result whether the user
enters the right or wrong answers.
Figure 1: The Process of Sentence Completion in
Stage 1
In RPG way it is represented by the storyline that
the player should find a couple in an area full of
monster. He/she can use his sword techniques and
magic to fight against monster. This couple will give
him/her the questions and if they answered correctly,
the couple will give the key to the next stages. Figure
1 is the representation of the sentence completion that
occurs in Stage 1.
2.2. Second Stage: Simple Sentence
In the second stage the player should pass the areawith tougher monsters. So the player should be more
careful to fight in order meet to the NPC (Non
Playable Character) that will give him/her the
question. After passed the area, the player will be
given a question that has the certain meaning and
he/she should type a simple sentence that will be
processed by the game. Figure 2 is the representation
Page 3
5/17/2018 Advance Learning and Processing Indonesian Using Role Playing Game - slide...
http://slidepdf.com/reader/full/advance-learning-and-processing-indonesian-using-role
3
of the simple sentence processing that occurs in Stage
2.
The RPG engine will randomize the question that
will be sent as a random number to the NPC. Then the
NPC will give the question to the player as the random
number they received before. After that, the player can
input his/her answer that will be processed by theRobust Syntactic Parsing that was included in RPG
engine. This algorithm will parse word by word from
the player input, each word will be parsed from the
dictionary whether it was in the right place or not. If it
was in the right place, the next word will be parsed to
match the meaning given. Finally it will give the
result whether the answer is accepted or isn’t
accepted.
Figure 2: The Process of Simple SentenceProcessing in Stage 2
For example, the question is “You want to go tosomeplace”. With this kind of question, it can be many
variations of answers. The user can input “Saya mau
pergi ke Jakarta”, or “Aku ingin berangkat ke
Singapura” and so on. In this second stage, RPG use
Natural Language Processing to process the sentence
that was inputted by the user. If the typed sentence has
the right meaning, he/she will pass this stage. We can
see the explanations about how the natural language
processing runs in the game in the next part of this
paper.
2.3. Third Stage: Command Sentence
In the last stage the player is given a simple
mission that makes him to think what the series of
commands to solve the mission. The player should
fight the boss of the stage by commanding the NPC to
do something and the NLP will process whether the
command sentence is right or wrong. If the player can
give the right command to the NPC, the NPC will do
the command that player ask and then wait for the
next command. If all of commands are right, the
player solves the mission. Figure 3 is the
representation of the command sentence processing
that occurs in Stage 3.
For example there is a series command that makes
the NPC take a tomato and throw it to the boss. So the player can input the first command “Ambilkan
Tomat” or “Ambil Pisau itu” or some other sentence
that has meaning “Take the tomato” and then the NLP
will process it. If the result is true, then the NPC will
take the tomato and wait for another command. The
player can input the second commands such as
“Lemparkan tomat pada Boss” or “Lempar tomat itu
ke Boss” or some other sentence that has meaning
“Throw the tomato to the Boss”. This command will
be processed with Robust Syntactic Parsing. First, it
will search the command word or phrase, and then it
will parse the adjacent word and match the meaning.
If the result is true, NPC will do it. If the commandinputted gives the false result, the NPC will do
nothing and give the player explanation about the
right command that should be inputted by him/her.
Figure 3: The Process of Command Sentence
Processing in Stage 3
3. Robust Syntactic Parsing Algorithm
Before we go further with Robust Syntactic Parsing
Algorithm, we should know that a simple sentence in
Indonesian language has four kinds of patterns, they
are:
1. S-P: the simplest sentence that only consists of
Subject and Predicate.
Page 4
5/17/2018 Advance Learning and Processing Indonesian Using Role Playing Game - slide...
http://slidepdf.com/reader/full/advance-learning-and-processing-indonesian-using-role
4
2. S-P-O: sentence that consists of Subject,
Predicate and Object.
3. S-P-K: sentence that consists of Subject,
Predicate and Adverb (in Indonesian language
an adverb is called “Keterangan”)
4. S-P-O-K: complete simple sentence that
consists of Subject, Predicate, Object andAdverb.
The RPG engine will process the sentence that was
given by the user with parsing algorithm called Robust
Parsing Algorithm. This algorithm is used to search
the relationship between patterns in a sentence [5].
The steps of this algorithm are:
1. Give index to each word
2. Know the type and category of each word; in this
case we use Indonesian language systems such
as S (Subject), P (Predicate), O (Object), etc.
3. Match with Indonesian language system
patterns.
As it is explained, every word has disjunction andhas word connectors like in the formula (1).
(1)
In formula (1) d is a disjunction, while l and r are
the left or right connector every word has.
In the other hands, some words that have identical
connector are called “linking” (Look at Figure 4).
After that, this disjunction will be grouped into some
groups such as noun, verb, adjective, adverb etc. [5].
((left)(right))((left)(right))((left)(right))
Connector: right left
Left right
Figure 4: Linking for Some Words with Identical
Connector
We will list the map of the Indonesian language
sentence pattern to know how the NLP will work in
Indonesian sentence pattern. Here are the mappings
from the connector to the Indonesian language
pattern.
S S- = subject (it can be person’s or location’s
name or a noun, it can be followed by
pointer such as “ini “ or “itu”)
S+= Nominative pronoun (in Indonesian
language such as: ”aku”, “saya”, “kau”,
“kamu”, “kita”, “kami”, “mereka”, “dia”,
“ia”, “kalian”, it can be followed by
pointer such as “ini “ or “itu”))
P P- = Intransitive predicate (a verb that doesn’t
need any object)
P+ = Transitive predicate (a verb that needs
object)
O O- = object (it can be person’s name location’s name or a noun)
O+= Accusative pronoun (in Indonesian
language a nominative pronoun can be
exchanged to be an accusative pronoun,
because it’s identical)
K KS= Adjective (this is one of adverb, for
example in Indonesian language such as:
”baik”, ”buruk”, ”tinggi”,
”cepat”, etc.)
KW=Adverb of time (in Indonesia such as
“besok”, “kemarin”, “dulu”, etc.)
KT = adverb of place (in Indonesian language
such as “sana”, “sini”, “situ”, etc) @ @D=Conjunction word such as “di”, “ke”,
“dari“ in Indonesian language.
@A=Assisted word for the Subject or Object
such as “si” or “sang” in Indonesian
language.
@M=Modals such as “telah”, “sudah”,
“sedang”, “belum”, “akan”, “mau”,
“ingin” and “hendak”.
@T = Pointer such as “ini” and “itu”.
A predicate in Indonesian structure works like a
verb in English structure. @D, A@, @M and @T can
be given between the Subject and predicate, between
Predicate and Object, between Predicate and Adverb
or between Object and Adverb.
We try to analyze two kinds of simple sentence
disjunction in Indonesian language. The first sentence
is “Setiawan pergi ke Sekolah” that means “Setiawan
goes to school”, and the other one is “Kita akan
berlibur ke Singapura bulan depan” that mean “We
will have a vacation to Singapore next month”.
The disjunction for the first sentence is like this:
Setiawan Pergi ke Sekolah
(S-) (P+) (@D (KT))
S P K
The first sentence has S-P-K patterns and we can
translate it directly into English with direct word
translation like Setiawan (person’s name, is not
included in the dictionary) goes (translation of “pergi”
to accompany third person pronoun) to (a preposition
that has means in Indonesian “ke”) school (a noun
Page 5
5/17/2018 Advance Learning and Processing Indonesian Using Role Playing Game - slide...
http://slidepdf.com/reader/full/advance-learning-and-processing-indonesian-using-role
5
that become translation of “sekolah”, it will be the
adverb of place).
The disjunction of second sentence is like this:
Kita akan berlibur ke Singapura bulan depan
(S-) (@M) (P+) (@D) (O+) (KW)S+(@M) P (@D)+O K
S P O K
The second sentence has S-P-O-K patterns. Beside
the sentence patterns, it also has one Modal “akan”
that means “will” (future tense) and one preposition
“ke” that’s mean “to”. The subject is a nominative
pronoun “kita” that means “we”. While the predicate
is a verb “berlibur” that means “has a vacation”. The
object of this sentence is a location’s name that is
“Jakarta”, and the last one is an adverb of time “bulan
depan” that means “next month”, this phrase have the
role as adverb of time. So, we can translate it to
English as “We will have a vacation to Singapore next
month”. Figure 5 represents the architecture of the
dictionary database that can help the processing of the
language. The symbol PK is the Primary key of a
table, while the symbol FK is the Foreign Key of a
table in a database.
Figure 5: The Architecture of the DictionaryDatabase
If the user has made a mistake to the structure of
the sentence, then the game will not accept the
sentence as the correct one. It can be done because in
the dictionary database there are some fields that
represent the functions of each word and the suitable
function in the left and in the right side of the word.
Table 1 and 2 shows an example of the contents of thedictionary database from Words table and also from
Disjunction table.
Table 1. Words Table
WordID
(FK)
WordEng WordIndo WordMeaning
… … … …
W0122 will akan used for
expressing the
simple future,
to be willing to
W0123 win menang to be the best or
the first, not
losingW0124 wind angin strongly
moving air
… … … …
Table 2. Disjunction Table (Related to TableWords)
DisjID
(PK)
WordID
(FK)
DisjF
unc
DisjS
truct
Disj
Left
DisjR
ight
… … … … … …
001231 W0122 @M S S- P-
001232 W0122 @M S S- P+
001233 W0122 @M S S+ P-
001234 W0122 @M S S+ P+
001235 W0123 P- P S- O-
… … … … … …
That process of robust parsing algorithm is
represented in a Flowchart. Flowchart of Robust
Parsing Algorithm is shown in Figure 6.
Words
WordID (PK)
WordEng
WordIndo
WordMeaning
Disjunction
DisjID (PK)
WordID (FK)
DisjFunc
DisjStructDisjLeft
DisjRight
Page 6
5/17/2018 Advance Learning and Processing Indonesian Using Role Playing Game - slide...
http://slidepdf.com/reader/full/advance-learning-and-processing-indonesian-using-role
6
Start
TakeInput
Sentence
Indexing
Words
Take The NextWord
Give the DisjunctionsFunction and
Structure
Examine Leftside Word
Null?
Match?Examine Right
side Word
No
Yes
Yes
Null?
Match?
Go to NextDisjunction
Go to Next
Word
Yes
No
Dictionary
Database
All words isused up?
End
No
Yes
No
No
Yes
All Disjunctions is
used up?
No
Give Result:
True
Give Result:
False
Yes
Figure 6: Steps to Match the Function and
Structure of the Sentence
The process begins with taking the sentence thathas been inputted. Then the word is indexed one by
one by using the dictionary database as the word
catalog. Next, the engine will examine the left side, if
match it proceed to examine the right side of the word.
If the left match with the right side then the result
comes true.
In some cases, there are several words that have no
disjunctions whether at the left side or the right one. If
this condition occurs, the engine will continue the
process to the next disjunction. The false result will
come if all of the disjunctions are not match [6].
4. Implementation and Evaluation of RolePlaying Game
The game was designed and implemented with the
engine called RPG Maker XP version 1.02A [3]. RPG
Maker XP supports Ruby script that called RGSS.
With this facility users can enter the word with
keyboard, so that user can type any word and then the
game will process it. Figure 7 show the user interface
of the game battle scene.
Figure 7: User Interface of Battle Scene of theRPG That Was Developed
The game is evaluated by using survey that
involved about 75 students from different faculties.
They play the game and give responses about the
game. Aspects to be responded are about the
difficulties, fun factor, user interface, and the language
learning. The result of survey shows that the game is
fairly good. It can be seen in Table 3.
Table 3. Survey Result of the Game
Page 7
5/17/2018 Advance Learning and Processing Indonesian Using Role Playing Game - slide...
http://slidepdf.com/reader/full/advance-learning-and-processing-indonesian-using-role
7
Question Great Good Fair Bad
Difficulty 0% 68% 28% 4%
Fun factor 40% 36% 24% 0%
User friendly 28% 44% 12% 4%
Language learning 20% 56% 24% 0%
The work of Robust Syntactic Parsing in the RPG
engine was evaluated by examining every stage resultwith many types of possible answers.
In first stage we can try many kind of possible word
or phrase. The engine could process all the single
word that inputted by the player, but only can process
phrases that consist of two words.
The Second stage we try many possibilities of
simple sentence and try to vary many kinds of
subjects, predicates, objects and adverbs. The engine
will very strict in parsing predicates and adverbs, but
for the subject or object that usually noun or name, the
engine sometimes could not differentiate whether it
really a subject or not. In example, the sentence “Budi
makan nasi”, that has meaning “Budi eats rice” will
be given same result with “Budi makan kayu”, that
has meaning “Budi eats wood” because nasi and kayu
are nouns and can be placed as object.
Finally, we take an example of Robust Syntactic
Parsing in third stage. The player will be given a
request. For example, the request is “Do you want me
to take something from the table? Please tell it in
Indonesian.” Questions like this example will be
appeared randomly. There are 240 words in the
library. Those words are words frequently used in
Indonesian daily conversation.
In this example, there are three tables withdifferent items on them. Those items are a book, a
crystal and a vase. The player should type a sentence
in the game. For example, the player wants to take a
book on the table. The player should type “Tolong
ambil buku itu” or “Ambilkan sebuah buku” or any
other similar sentences to make the NPC take the
book.
The sentence will be processed by the engine. If the
result is true, then the engine will command the NPC
to do what the player has commanded. This situation
can be seen in Figure 8. Otherwise, if the result is
false, then the engine will give a right sentence. The
example of this situation is shown in Figure 9.
Or
Become
Figure 8: Example of Right Sentence
Page 8
5/17/2018 Advance Learning and Processing Indonesian Using Role Playing Game - slide...
http://slidepdf.com/reader/full/advance-learning-and-processing-indonesian-using-role
8
Become
Figure 9: Example of Wrong Sentence
5. ConclusionFrom the explanation above we conclude that
language learning can be implemented by using a role
Playing Game (RPG). The usage of RPG here is to
help the user to understand the language concept and
get the fun factor of gaming at once, so the user will
get a new experience when he or she learns
Indonesian language.
The advance RPG used Natural Language
Processing in all three stages. At the first stages, theplayers can learn sentence completion; in the second
one they can make simple sentence in Indonesian that
has certain meaning in English, and the last stage
teaches the user about the using of command sentence
in Indonesian.
The algorithm used in this paper is Robust Parsing
Algorithm, which matches the disjunction between
words in the sentence according to the Indonesian
grammar.In the future, this RPG can be developed to receive
more complex sentence, such as complex sentence
structure, conversation, and many more. So the
process of learning Indonesian language is much more
advance and fun.
6. References
[1] Sleator D. D. K. and D. Temperley. Parsing English
with a link grammar . Technical Report CMU-CS-91-
196, School of Computer Science, Carnegie Mellon
University, 5000 Forbes Avenue, Pittsburg, PA 15213,
1991.[2] D. Grinberg, J. Lafferty and D. D. K. Sleator. A Robust
Parsing Algorithm for link grammar. Technical Report
CMU-CS-95-125, School of Computer Science,
Carnegie Mellon University, 5000 Forbes Avenue,
Pittsburg, PA 15213, 1995.
[3] Habgood, Jacob and Marc Overmars. The Game
Maker’s Apprentice. Springer-Verlag New York:
Appress. 2006.
[4] Pedersen, Roger E. Game Design Foundation. Los Rios
Boulevard Texas: Wordware Publishing, Inc. 2003.
[5] Prestiliano, Jasson, Krismiyati and Eko Sediyono.
Learning and Processing Indonesian using Role
Playing Game. Second International Malindo
Workshop (p27-34). 2008
[6] Saltzman, Marc, Ed. Game Design: Secrets of the
Sages. Brady Games, Indianapolis. 2000.
[7] Spector, Warren. "Remodeling RPGs for the New
Millennium". Gamasutra January 15, 1999 Vol.
3: Issue 2, http://www.gamasutra.com. March 15,
2001.
[8] Vestal, Andrew. "Review of Final Fantasy VIII".
ZDNet: GameSpot. July 31, 1999.
http://www.zdnet.com/gamespot/. March 15, 2001
[9] Zyda, Mike. "From visual simulation to virtual
reality to games". IEEE. Vol. 38, Issue 9, (p 25-
32). 2005.