Computer Science and Engineering

p-ISSN: 2163-1484    e-ISSN: 2163-1492

July, 2012;

doi: 10.5923/j.computer.20120001.10

Sistema Inteligente para Auxílio na Seleção e Execução de Tarefas num Jogo Social

Luís Paulo Reis 1, Romina Neves 2, Pedro Abreu 3, Brígida Mónica Faria 4

1EEUM/DSI , Escola de Engenharia da Universidade do Minho LIACC , Laboratório de Inteligência Artificial e Ciência de Computadores da Universidade do Porto Guimarães e Porto, Portugal

2FEUP , Faculdade de Engenharia da Universidade do Porto LIACC , Laboratório de Inteligência Artificial e Ciência de Computadores da Universidade do Porto Porto, Portugal

3DEI/UC , Departamento de Engenharia Informática da Universidade de Coimbra Coimbra, Portugal

4DETI/UA , Departamento de Eletrónica, Telecomunicações e Informática / Universidade de Aveiro ESTSP/IPP , Escola Superior de Tecnologia da Saúde do Porto / Instituto Politécnico do Porto Aveiro e Porto, Portugal

Correspondence to: Luís Paulo Reis , EEUM/DSI , Escola de Engenharia da Universidade do Minho LIACC , Laboratório de Inteligência Artificial e Ciência de Computadores da Universidade do Porto Guimarães e Porto, Portugal.

Email:

Copyright © 2012 Scientific & Academic Publishing. All Rights Reserved.

Abstract

Nowadays social networks are used for various recreational purposes. It is believed that every day a user spend, on average, two hours playing this type of networkgames. Farmville is a social game available at one of the most successful social networks: Facebook.Farmville game allows each user to use a diverse set of actions in order to manage a virtual farm. However, this management quickly becomes a boring and time consuming process and often the user quitsplaying this game. In this context this project main objective was related with the development of an intelligent system able to effectively assist the player when playing Farmville. The system will help the user in most of his management tasks on the farm such as seeding and harvesting, receiving and sending gifts and managing the farm animals. The use of the implemented system ensures greater progress in the game, because there is a decrease in the time spent in performing the tasks enabling the user to focus on the strategies for advancingin the game.

Keywords: Social Networks, Social Games, Farmville, Intelligent Systems

1. Introdução

A Rede Social Facebook tem sido desde o seu lançamento um dos sites mais visitados do mundo. Em 2011 foi o líder mundial de sites visitados com cerca de 880 milhões de utilizadores ativos e 1 bilião de páginas visitadas[1]. Os jogos são aplicativos muito usados no Facebook, sendo frequentemente usados pelos utilizadores como forma de entretenimento e de interação com outros utilizadores. O FarmVille consiste num jogo de gestão de uma quinta virtual onde cada utilizador de forma cooperativa, ou não, pode realizar um conjunto diversificado de tarefas que lhe permitirão progredir no jogo. Este tem regras muito simples, é de fácil aprendizagem e as suas actividades básicas são o preparo da terra, a plantação de sementes, a colheita de diversos produtos, a criação de animais e a colheita dos frutos de vários tipos de árvores. Com vista à evolução no jogo, o utilizador interage com o ambiente através de cliques do rato. Contudo, estas ações tornam-se rapidamente fastidiosas e cansativas. Um exemplo desta problemática éum jogador que possui na sua quinta um número elevado deárvores e que os seus frutos necessitam de ser colhidos uma vez por dia. Isso irá acarretar a necessidade de um clique em cada árvore em cada dia. Se o utilizador, por exemplo, possuir mil árvores terá de efetuar mil cliques só para executar essa tarefa.
O FarmVille exige muita disponibilidade por ser um jogo que se desenrola em tempo real, e muita responsabilidade no cumprimento dos horários das colheitas dos produtos. O não cumprimento destes horários leva à perda dos produtos plantados e do dinheiro investido na sua plantação, prejudicando assim o avanço do jogo.
No FarmVille existem várias tarefas, várias sementes que podem ser plantadas, vários tipos de árvores e animais, cada um deles com custos de aquisição e lucro diferentes. Alguns itens são mais rentáveis e/ou fornecem mais pontos de experiência do que outros, e contribuem de forma diferente para o avanço do jogo. Portanto, o estudo de estratégias de jogo que facilitem o avanço no jogo é importante para os jogadores do FarmVille.
Neste trabalho foi criado um sistema multi agente que permitindo ao utilizador a utilização de diferentes estratégias, possibilitou a redução do número de cliques por operação, o cumprimento de horários e uma evolução mais rápida no jogo. Testes realizados com o sistema implementado permitiram observar a utilidade do sistema. Utilizando duas quintas diferentes, verificou-se que a quinta que fez uso do sistema implementado evoluiu mais rapidamente, obtendo mais pontos de experiência e moedas FarmVille, do que a quinta que não utilizou o sistema.
Este artigo descreve o trabalho desenvolvido. Na seção 2 encontra-se uma descrição de alguns jogos sociais e das regras e objetivos do FarmVille. Na seção 3 é realizada uma descrição do trabalho realizado. A seção 4 é dedicada às experiências realizadas e aos resultados obtidos. Por último são efectuadas algumas conclusões e descrição do trabalho futuro.

2. Jogos Sociais e Farmville

Os jogos sociais (social games), categoria a que pertence o FarmVille, são uma modalidade de jogos online, desenvolvida para ser usado em Redes Sociais, onde os utilizadores interagem entre si dentro do contexto do jogo. São jogos normalmente de baixa complexidade, que exigem uma conexão à Internet, e que não exigem um elevado tempo de aprendizagem. Têm tipicamente as seguintes características[2]:
• São jogos que envolvem mais que um jogador, tipicamente muitos utilizadores;
• Baseados em turnos (Turn-based): permitem que os jogadores façam turnos, entrando e saindo do jogo a qualquer instante;
• Os jogadores têm conhecimento das ações realizadas pelos outros jogadores, através de feeds de notícias e outros meios de comunicação
• As ações de um jogador afetam de algum modo os outros jogadores do jogo;
• São baseados em plataformas sociais que fornecem aos utilizadores uma identidade e facilitam as formas de comunicação.
O mercado dos social games tem estado em constante crescimento em todo o mundo, tendo no ano de 2011 atingido os 3.85 biliões de euros, mais 32% que em 2010, em que foi de aproximadamente de 2.85 biliões de euros. Prevê-se que até 2014 o mercado deverá atingir mais de 6.5 biliões de euros[3].
Segundo estatísticas realizadas pela programadora de jogos PopCap Games, a idade média dos jogadores dos social games ronda os 43 anos, sendo que 55% são mulheres e 45% são homens. Uma boa parte dos jogadores (33% das mulheres e 29% dos homens) admitem jogar várias vezes ao dia. O Facebook é a rede social em que mais pessoas jogam, visto que 83% dos utilizadores afirma já ter jogado algum jogo no Facebook. 28% dos jogadores admitem já terem comprado moedas com dinheiro real para progredir no jogo e a média de jogos por cada utilizador é de 5 jogos[4].
Estudos sobre os social games têm sido desenvolvidos desde o seu surgimento. Alguns destes estudos foram referidos do trabalho desenvolvido. Em 2010 foi realizado um workshop académico, com o título Social Games Studies: What We Know, What Might We Learn, no âmbito da convenção Games Convencion Online 2010, que decorreu em Leipzig, Alemanha[5]. Teve como objetivos principais o estudo dos social games, suas características, e o estudo dos aspectos que diferenciam este tipo de jogos dos outros. Um outro ponto importante abordado no workshop foram as pesquisas académicas e industriais já realizadas, ou em curso, relacionadas com o tema e a identificação de novos temas para pesquisas futuras.
Rebeca Recuero Rebs também analisou a forma como se dá a busca e a aquisição de bens virtuais em social games no artigo[5]. Os bens virtuais são itens que têm uma funcionalidade ligada ao jogo, ou que permitem o alcance de determinados objetivos, que podem ser adquiridos pelos jogadores com dinheiro virtual ou dinheiro real. O objetivo do referido estudo foi entender o que motiva os jogadores dos social games a comprar estes bens virtuais, e traçar as características destes utilizadores. Chegou-se à conclusão que a aquisição dos bens virtuais pelos jogadores, além de ajudar no progresso do jogo, tem outras motivações, como cumprimento de missões do jogo, aquisição de estatuto social, desejos de consumo pessoal, personalização do utilizador, enquadramento social, simbolismos culturais e adquisição de mais dinheiro no jogo. O estudo ainda permitiu a classificação dos bens virtuais de acordo com as necessidades de busca por bens virtuais de cada jogador: bens virtuais de diferenciação social, bens virtuais de reputação social, bens virtuais de satisfação pessoal e bens virtuais funcionais.
Luca Rossi também se debruçou sobre o tema dos social games no artigo "Playing your network: gaming in social network sites"[6]. O estudo visou compreender de que forma os social games tiram partido dos sites das redes sociais e as relações sociais entre os jogadores. O estudo focou-se no Facebook, por ser a rede social líder na maioria países ocidentais. Faz uma reflexão sobre as relações sociais entre os jogadores dos social games. Os jogos sociais foram divididos em duas categorias, de acordo com a forma como o jogo lida com a rede de amigos dos jogadores. Isto porque existem aqueles jogos em que as relações sociais estão relacionadas com os resultados do jogo, e existem aqueles que não fazem sentido se forem jogados individualmente. As categorias são: Jogos de habilidade/conhecimento e os jogos truly social games (verdadeiros social games). Nos jogos de habilidade/conhecimento os jogadores executam tarefas específicas ou respondem a perguntas específicas, acumulando uma certa quantidade de pontos. Os truly social games, possuem um estilo de jogo diferente, em vez de reproduzir os jogos várias vezes para melhorar a pontuação, os jogadores jogam de uma forma contínua, fazendo sempre pequenas coisas (por exemplo, limpar o seu restaurante, vestir o seu animal de estimação, visitar o animal de um vizinho). Estes jogos exigem uma atenção contínua, mas de baixo nível por parte dos jogadores, ao contrário dos jogos de habilidade/conhecimento que podem ser baseados em tempo e requerem atenção completa dos jogadores.
Um outro estudo realizado por Rebeca Recuero Rebs teve como objetivo compreender como as dinâmicas sociais de competição, conflito e cooperação dos social games contribuem para a constituição da identidade dos indivíduos presentes nas redes sociais[7]. O estudo foi feito no jogo FarmVille do Facebook, por ser um dos social games mais populares da altura, por estar disponível numa das redes sociais mais populares, e por possibilitar várias interações sociais. Deste estudo concluiu-se que os utilizadores das redes sociais e dos social games parecem ter procedimentos e desempenhos diferentes, de acordo com o grupo em que estão inseridos, com a intenção de enquadrar-se nos grupos, constituindo uma identidade colectiva capaz de facilitar e permitir a sua sociabilidade na rede. Verificou-se então que as dinâmicas socias de competição, cooperação e conflito provenientes de social games como o FarmVille, estipulam comportamentos que são seguidos por grupos sociais que assumem uma identidade colectiva a partir da partilha de valores comuns.
Muitos bots são criados e utilizados no FarmVille. Os bots do FarmVille são programas que auxiliam na execução das tarefas da quinta. A utilização destes bots permite minimizar os cliques e o tempo gasto na realização de tarefas, facilitando a obtenção de moedas e pontos de experiências e consequentemente facilitando a subida mais rápida do nível de jogo. Estes bots funcionam a qualquer hora, mesmo quando o jogador está ausente da sua quinta e têm normalmente várias funcionalidades. Estas funcionalidades vão desde a plantação de sementes até a colheita de árvores e a criação de animais. Os bots funcionam por ordem dos jogadores, ou seja, têm de ser programados para executar uma determinada ação. É o jogador que determina por exemplo, que sementes devem ser plantadas, ou, que animais devem ser colhidos quando estiverem prontos. A utilização dos bots tem portanto algumas vantagens: diminuição do número de cliques, diminuição do tempo de jogo, aumentando ou mantendo o lucro em moedas, notas e pontos de experiência e maior rapidez na obtenção de ribbons. Exemplos de bots são: FarmHelper[11], FarmBot[8], FarmVille Extreme Manager[9] e FarmVille Bot[10].
Todos os bots estudados permitem a realização das tarefas “preparar a terra”, “plantação de sementes” e “colheita das plantações”. Os bots FarmVille Extreme Manager e FarmBot não são gratuitos. O FarmVille Bot funciona por envio de pedidos ao servidor, enquanto que os outros funcionam por cliques.

3. Sistema Inteligente de Apoio ao Utilizador no Farmville

3.1. Inquérito

Foi realizado no início do projeto um inquérito sobre o uso do FarmVille no Facebook, com o objetivo de se perceber as motivações que levam ao jogo, os hábitos dos jogadores, os conhecimentos das regras do jogo e os problemas que os jogadores encontram. O inquérito teve ainda como objetivos perceber se os jogadores conhecem e utilizam os bots. A Tabela 1 resume os resultados do inquérito. A amostra é caracterizada por indivíduos jogadores do FarmVille com idades compreendida entre os 20 e os 30 anos, e são na sua maioria do sexo feminino. Possuem geralmente o 12ºano, a Licenciatura ou o Mestrado, e bons conhecimentos de informática e das regras do jogo. Os inquiridos consideram as tarefas de plantar, colher, cuidar dos animais e ajudar os vizinhos como sendo as tarefas mais produtivas do jogo. Consideram ainda que as maiores dificuldades do jogo são as tarefas repetitivas e muito cansativas. No geral os jogadores desejam ter ajudas no cumprimento dos horários, na realização de tarefas e na escolha das actividades mais rentáveis. Quanto ao conhecimento e utilização dos bots, verificou-se que estes são pouco conhecidos e utilizados.
Tabela 1. Resultados do Inquérito
     

3.2. Arquitetura do Sistema

O sistema é constituído por um Agente Central, que trabalha em conjunto com Agentes Farm, para os ajudar a satisfazer o seu objetivo principal. Os Agentes Farm representam várias quintas, de vários jogadores. A Fig. 1 representa a arquitetura do Sistema.
Figura 1. Arquitetura do Sistema
O Agente Central tem a função de determinar e informar qual a melhor estratégia a ser seguida por um Agente Farm. A estratégia consiste na plantação de uma determinada semente, que maximize os FarmCoins, ou os FarmCash ou os XPs. Os Agentes Farm têm como função, definir e informar ao Agente Central, o objetivo pretendido. Existem três objetivos possíveis: maximizar o número de moedas (FarmCoins), maximizar o número de notas (FarmCash) e maximizar o número de pontos de experiência (XP). Os Agentes Farm têm ainda a função de ao receber a resposta do Agente Central, executar o bot FarmHelper com a ação pretendida. A descrição do bot FarmHelper utilizado, bem como a comunicação entre os agentes, é feita nas seguintes seções C e D do artigo.

3.3. Bot FarmHelper

O bot utilizado no sistema é o FarmHelper[11]. Foi escolhido por ser de acesso livre, e por permitir a manipulação do código, que é escrito em PHP[13,14].
Figura 2. Arquitectura do bot FarmHelper
Na Fig. 2 é apresentada a estrutura do bot FarmHelper. Com este bot é possivel realizar diversas tarefas na Farmville de forma mais rápida e automática, tais como preparar a terra, plantar e colher, alimentar animais, ajudar nas quintas vizinhas entre outras.
Figura 3. Conexão/Comunicação entre os Agentes

3.4. Comunicação entre os Agentes

A comunicação entre os agentes é feita através do uso de sockets UDP Multicast, que suporta o envio de mensagens para um grupo de destinatários. Após a criação de sockets por cada um dos Agentes, são enviadas e recebidas datagramas com as mensagens necessárias à comunicação.A Fig. 3 ilustra a conexão e comunicação entre dois agentes.
Para a comunicação entre os agentes foi desenvolvida a linguagem FarmLang, descrita na seção F.

3.5. Protocolo de Mensagens

O protocolo de mensagens implementado no sistema correspondeaum subconjunto do FarmLang. O diagrama de sequência da Fig. 4ilustra a troca de mensagens entre o Agente Central e um Agente Farm.
Figura 4. Diagrama de sequência da troca de mensagens entre agentes

3.6. FarmLang

Para facilitar a troca de informações entre os Agentes foi desenvolvida a linguagem FarmLang, que define o formato, o conteúdo e a sintaxe das mensagens trocadas. Segue a sintaxe das linguagens COACH UNILANG[12] e ECOLANG[13] e a notação BNF (Backus Normal Form).
Uma mensagem do protocolo tem assim o seguinte formato:
Os parâmetros da mensagem são: o identificador da mensagem, o remetente, o receptor, a data e a hora de envio da mensagem e o conteúdo da mensagem. O conteúdo da mensagem pode ser uma mensagem de ação ou uma mensagem de percepção. As mensagens de ação (ACTION_MSG) representam as ações que podem ser tomadas por qualquer um dos agentes. As mensagens de percepção (PERCEPTION_MSG) indicam o resultado de uma determinada ação. As mensagens de ação implementadas foram:
• sendGoal: mensagem em que um Agente Farm envia o objetivo pretendido ao Agente Central;
• extractData: mensagem enviada pelo Agente Central ao Agente Farm com quem está a comunicar, quando extrai os dados da quinta do Agente Farm;
• Inform: mensagens usadas pelos dois tipos de agentes para informarem sobre o estado das ações;
• Strategy: Mensagem de informação da estratégia a ser usada pelo Agente Farm;
• runningBot: mensagem enviada ao Agente Central pelo Agente Farm, quando executa o bot com as ações necessárias.
• As mensagens de percepção implementadas foram:
• goalsResult: em que o Agente Central informa ao Farm se recebeu ou não o objetivo pretendido
• confirmData: o Agente Farm confirma ao Agente Central se os dados recebidos estão correctos.

3.7. Linguagens de Programação e ferramentas Utilizadas

A aplicação foi desenvolvida em Java, linguagem de programação multiplataforma e orientada a objectos, que é compilada pela máquina virtual JVM (Java Virtual Machine)[14, 15].
A plataforma de desenvolvimento utilizada foi o Eclipse para desenvolvedores Java, um IDE, desenvolvido em Java, open source, composto por frameworks extensíveis, ferramentas e tempos de execução para a construção, implementação e gerenciamento de software[16].
O bot FarmHelper utilizado neste projeto foi desenvolvido em PHP (PHP: Hypertext Preprocesssor), linguagem de script open source, utilizada para o desenvolvimento de aplicações Web, e que pode ser incorporada dentro do HTML[17, 18].

4. Experiências e Resultados Obtidos

Foram realizadas duas experiências no decorrer do trabalho. A primeira experiência teve como objetivo testar o bot FarmHelper utilizado, enquanto que a segunda testou o sistema implementado.
Para melhor se perceber o funcionamento do bot FarmHelper e as estratégias a serem utilizadas no FarmVille, realizou-se uma experiência com o bot. Para esta experiência foram criadas duas contas do Facebook, e nas duas contas começou-se a jogar o FarmVille. Cada uma das contas seguiu uma estratégia diferente. Numa das contas (Conta 1), foram plantadas somente as sementes que fornecem mais pontos de experiência e ainda foram visitados os vizinhos diariamente. Na outra conta (Conta 2), foram plantadas as sementes mais rentáveis, e não foram efectuadas visitas a vizinhos em nenhum dia.Foram obtidos os seguintes resultados no final da experiência:
Tabela 2. Resultados da experiência 1
ResultadosConta 1Conta 2
Nível2417
Xp (pontos de experiência)173585628
FarmCoins (moedas FarmVille)13514199547
Nº de vizinhos2724
Ribbons1113
Presentes recebidos235210
Figura 5. Evolução dos FarmCoins obtidos nas duas Contas
A Fig. 5 apresenta a evolução dos FarmCoins obtidos. Seria de esperar que a Conta 2 obtivesse mais FarmCoins, pois a estratégia seguida nesta conta foi a de se plantar as sementes mais rentáveis. Como se pode verificar isso aconteceu nas primeiras etapas. No entanto, a partir da 7ª etapa, a Conta 1 obteve mais FarmCoins. Isso deve-se a dois aspectos: em alguns casos, as sementes que mais fornecem pontos de experiência, são também os mais rentáveis (foi o caso da semente do Mirtilo, que começou a ser plantado a partir do nível 17 na Conta 1) e aConta 1 por ter visitado os vizinhos diariamente, obteve FarmCoins extras, o que levou a que recebesse mais presentes e outras ajudas dos vizinhos, permitindo atingir níveis mais elevados de ribbons.
Conclui-se desta experiência, que o bot FarmHelper pode ajudar o jogador do FarmVille a alcançar os seus objetivos, pois permite de entre outras coisas, plantar qualquer semente que se deseje, colher as colheitas quando estiverem prontas rapidamente, ajudar todos os vizinhos através do plugin próprio, e receber os presentes de forma automática também através do plugin adequado. O inconveniente que se observou no contexto da experiência foi o facto de as sementes mais rentáveis e/ou que fornecem mais pontos de experiência a cada nível têm de ser escolhidas pelo jogador, pois o bot não disponibiliza esta informação.
Foi ainda realizado um teste com o Sistema Multiagente implementado com o objetivo de se analisar a evolução do jogo tirando partido das funcionalidades implementadas. Para esta experiência também foram criadas duas contas do Facebook e do FarmVille. Uma das contas ficou associada ao Sistema Multiagente, enquanto que a outra ficou associada ao bot FarmHelper.
Na conta associada ao Sistema Multiagente, a cada etapa da experiência foi sendo escolhida a (s) estratégia (s) pretendida (s): maximizar o número de FarmCoins, e/ou maximizar o número de pontos de experiências. O sistema tratou portanto de determinar as melhores estratégias a seguir a cada etapa. Na conta associada ao bot, a cada etapa foram sendo plantadas sementes aleatoriamente, de acordo com as sementes desbloqueadas em cada nível, sem ter em conta a rentabilidade das sementes. Em cada uma das contas foram sendo adicionadas mais terras para cultivo, de acordo com o número de FarmCoins obtidos. Em cada etapa foram plantadas uma ou mais sementes, conforme o número de terras disponíveis. Em nenhuma das contas foi tida em conta o número de vizinhos, e as ajudas aos vizinhos. Foram obtidos os seguintes resultados no final da experiência:
Tabela 3. Resultados da experiência 2
ResultadosConta 1Conta 2
Nível1411
Xp (pontos de experiência)33241592
FarmCoins (moedas FarmVille)3091018673
Ribbons108
Pode-se concluir dessa experiência que o sistema implementado poderá ajudar o jogador do FarmVille na evolução da sua quinta, pois ajuda-o a definir estratégias, ao mesmo tempo que o ajuda na diminuição do tempo despendido nas tarefas repetitivas e o ajuda no cumprimento dos horários das colheitas.

5. Conclusões e Trabalho Futuro

Da primeira experiência realizada com os bots pode-se concluir que apesar dos bots existentes serem muito úteis aos jogadores, na realização das tarefas do jogo, não definem estratégias de jogo. Simplesmente fazem o que lhes for pedido para fazer.
Com os resultados obtidos na experiência realizada com o sistema e o bot, conclui-se, que o sistema implementado pode ser de grande ajuda aos jogadores do FarmVille que o quiserem utilizar. Comparado com o bot, verificou-se uma mais rápida evolução do jogo, tanto em termos de ganhos de FarmCoins, como em ganhos de pontos de experiência. Se a evolução do jogo com o uso do sistema é mais rápida do que a evolução do jogo com o uso do bot, muito mais rápida será também do que a evolução do jogo, sem recurso a nenhum programa auxiliar.
O trabalho futuro passa pela melhoria da arquitetura do sistema multi-agente utilizando o trabalho realizado em[19-25], e a melhoria da linguagem Farmlang[12, 13, 26]. A criação de uma interface natural para permitir um jogo mais fácil[27-29] e a utilização de metodologias de aprendizagem[30-33] para a criação de perfis do utilizador[34-35] são também melhorias possíveis. Outras melhorias futuras seriam a aplicação de metodologias de desenvolvimento de software educativo[36-38] no sentido de transformar o agente num jogo didático que permita utilizar o Farmville como um jogo sério.
A curto prazo pretende-se a exploração da cooperação entre os jogadores que sejam vizinhos no FarmVille, desenvolvendo um sistema multiagente em que exista cooperação entre os vários agentes do tipo Farm para se atingir objetivos comuns. Isso pode ser feito de três formas:
• Envio de presentes: adicionando ao sistema uma funcionalidade em que um agente associado a uma determinada quinta, informasse aos outros, ou ao Agente Central que necessita de um item da quinta (materiais de construção, itens de decoração, animais e árvores raras, entre outros), e estes agentes vizinhos o ajudariam enviado o objecto desejado;
• Ajudas na quinta: tendo uma opção no sistema que permitisse que um agente visitasse uma quinta de um agente vizinho que estivesse ausente, estudasse a sua quinta, para saber o que deve fazer, e através do bot executar as tarefas necessárias. Por exemplo, um agente que ao perceber que o seu vizinho tem de colher as plantações, para não correr o risco de as perder, deverá ajudá-lo na colheita;
• Ajudas nos co-op farming: sendo uma actividade que exige cooperação entre os vizinhos, uma opção seria estipular mini tarefas e atribui-las a cada um dos Agentes de cada quinta, para garantir o cumprimento do co-op job, ficando todos os jogadores em vantagem.

AGRADECIMENTOS

Este trabalho foi parcialmente suportado pelo Governo Português através da Fundação para a Ciência e Tecnologia (FCT) e pela União Europeia (COMPETE, FEDER) através do projeto PTDC/EIA-EIA/114868/2009 intitulado “ERAS -Expeditious Reconstruction of Virtual Cultural Heritage Sites”.

References

[1]  D. a. planner. The 1000 most-visited sites on the web. Disponível em: http://www.google.com/adplanner/static/top1000/index.html, Acedido em 17/01/2012.
[2]  N. O'Neill. (2008). What exactly are social games? Disponível em: http://socialtimes.com/social-games_b690, Acedido em 3/11/2011.
[3]  M. Snider. (2011). Rivals challenge Facebook on social games. USA TODAY. Disponível em: http://www.usatoday.com/tech/gaming/story/2011-10-09/social-gaming-facebook/50712646/1, Acedido em 10/09/2011.
[4]  S. Axon. (2010). Who's Playing Social Games? Disponível em: http://mashable.com/2010/02/17/social-gaming-survey/, Acedido em 10/10/2010.
[5]  R. R. Rebs, "Bens Virtuais em Social Games," in Encontro da Associação Nacional de Programas de Pós-Graduação em Comunicação, Porto Alegre, 2011, in press.
[6]  L. Rossi, "Playing your network: gaming in social network sites," in Breaking New Ground: Innovation in Games, Play, Practice and Theory, London, Brunel University, 2009, in press.
[7]  R. R. Rebs, "As Dinâmicas do Social Game Farmville e o Processo de Identificação," in XXXIII Congresso Brasileiro de Ciências da Comunicação, Caxias do Sul, RS, 2010, in press.
[8]  FBBots. FBBots - Bots for facebook games. Disponível em: http://www.fbbots.com/index.php?id=farmvillebot, Acedido em 20/05/2011.
[9]  F. E. Manager. Farming Extreme Manager - Automatically manage your farm,animals and trees - While you are away. Disponível em: http://www.automationlabs.org/ , Acedido em 20/05/2011.
[10]  B. f. FarmVille. Bot for FarmVille - The best bot for FarmVille with the plug-in support. Disponível em : http://farmvillebot.net/, Acedido em 20/05/2011.
[11]  F. Helper. FarmHelper. Disponível em: http://www.farmvillebot.org/, Acedido em 20/05/2011.
[12]  L. P. Reis and N. Lau, "COACH UNILANG - A Standard Language for Coaching a (Robo)Soccer Team," in RoboCup-2001: Robot Soccer World Cup V, Berlin, 2002, pp. 183-192.
[13]  António Pereira, Luis Paulo Reis e Pedro Duarte, ECOLANG - A Communication Language for Simulations of Complex Ecological Systems, In Y. Merkuriev, R. Zobel and E. Kerckhoffs (eds.) Proceedings of the. 19th European Conference Modelling and Simulation, ECMS’2005, pp. 493-500, Riga Latvia, 2005
[14]  E. R. Harold. (2004). Java network programming. Disponível em : http://books.google.pt/books?id=NyxObrhTv5oC , Acedido em 20/10/2011.
[15]  B. Eckel. Thinking in Java (4ª ed.).
[16]  E. Fundation. (2001). Eclipse. Disponível em : http://www.eclipse.org/, Acedido em 20/10/2011.
[17]  PHP. PHP. Disponível em: http://www.php.net/, Acedido em 1/10/2011.
[18]  L. Welling and L. Thomson. (2005). PHP e MySQL Desenvolvimento Web (3ª ed.)..
[19]  F.Cruz, A.Pereira, L.P.Reis, P.Duarte, P.Valente, Intelligent Farmer Agent for Multi-Agent Ecological Simulations Optimization, In Progress in Artificial Intelligence, 13th EPIA 2007, Guimarães, Portugal, December 3-6, 2007, Springer LCNS, Vol. 4874, pp. 593-604, 2007
[20]  António Pereira, Pedro Duarte, Luis Paulo Reis, Agent-Based Simulation of Ecological Models. In: H. Coelho, B.Espinasse (eds.) 5th Workshop on Agent-Based Simulation, pp. 135-140, Lisbon, May 3-5, 2004,
[21]  João Certo, Nuno Lau and Luís Paulo Reis, A Generic Strategic Layer for Collaborative Networks, In IFIP International Federation for Information Processing, Vol. 243, Establishing the Foundations for Collaborative Networks, Springer, pp. 273-282, September 2007,
[22]  António Pereira, Pedro Duarte e Luís Paulo Reis, An Integrated Ecological Modelling and Decision Support Methodology, 21st European Conference on Modelling and Simulation – ECMS 2007, pp. 497-502, Prague, Czech Republic, 4-6 June 2007
[23]  António Mota, António J. M. Castro, Luís Paulo Reis: Recovering from Airline Operational Problems with a Multi-Agent System: A Case Study. in 14th Portuguese Conference on Artificial Intelligence, EPIA'2009, Aveiro, LNAI 5816, Springer, pp. 461-472, October 12-15, 2009
[24]  António Pereira, Luís Paulo Reis, Pedro Duarte: EcoSimNet: A Multi-Agent System for Ecological Simulation and Optimization. in 14th Portuguese Conference on Artificial Intelligence, EPIA'2009, Aveiro, LNAI 5816, Springer, pp. 473-484, October 12-15, 2009
[25]  D.Silva, R.A.M. Braga, L.P.Reis, E.Oliveira. Designing a Meta-Model for a Generic Robotic Agent System using GAIA Methodology. Information Sciences, Vol. 195, pp. 190-210, July 2012, Elsevier, ISSN: 0020-0255
[26]  Luís Paulo Reis and Eugénio Oliveira, A Language for Specifying Complete Timetabling Problems, in Selected Papers from Practice and Theory of Automated Timetabling III, PATAT 2000, Konstanz, Germany, August 2000, Springer LNCS, Vol. 2079, pp. 322-341, 2001
[27]  P.A.Rego, P.M.Moreira, L.P.Reis, Natural user interfaces in serious games for rehabilitation, (2011) 6th Iberian Conf. on Information, Systems and Technologies, CISTI 2011, art. no. 5974331.
[28]  Paula Rego, Pedro Miguel Moreira, Luis Paulo Reis, Serious Games for Rehabilitation: A Survey and a Classification Towards a Taxonomy, In A. Rocha, C. F. Sexto, L. P. Reis, & M. P. Cota (Eds.), Proceedings of the 5th Iberian Conf. on Information Systems and Technologies, CISTI 2010, June 16–19 2010, Santiago de Compostela, Spain, pp. 349–354.
[29]  M.Silva, L.P.Reis, A.Sousa, B.M.Faria and A.P.Costa, iiBOARD - Development of a Low-Cost Interactive Whiteboard using the Wiimote Controller, Fourth Int. Conf. on Computer Graphics Theory and Applications, pp.337-344, Lisboa, Portugal, February 5-8, 2009
[30]  Brigida Mónica Faria, Luis Paulo Reis, Nuno Lau, G. Castillo, Machine Learning Algorithms applied to the Classification of Robotic Soccer Formations and Opponent Teams, 2010 IEEE Int. Conf. Cybernetics and Intelligent Systems (CIS 2010), June 2010, Singapore (pp. 344-349)
[31]  Pedro H. Abreu, J.Moura, Daniel C. Silva, Luís Paulo Reis, Júlio Garganta, Performance Analysis in Soccer: a Cartesian Coordinates based Approach using RoboCup Data, Soft Computin, Springer Verlag, Germany, Vol. 16, pp. 47–61, ISSN: 1432-7643, January 2012
[32]  J-Portela, P.Abreu, L.P.Reis, E.C.Oliveira, J.Garganta, An Intelligent Framework for Automatic Event Detection in Robotic Soccer Games: An Auxiliar Tool to Help Coaches Improving their Teams Performance, ICEIS 2010, INSTICCPress, pp. 244-249, 2010
[33]  B.M.Faria, N.Lau, L.P.Reis, Classification of Facial Expressions using Data Mining and Machine Learning Algorithms, In, A.Rocha, F.Restivo, L.P.Reis, S.Torrão, editors, 4ª Conf.Ibérica e Sistemas e Tecnologias de Informação, APPACDM, pp. 197-202, P.Varzim, June 2009
[34]  B.M.Faria, S.Vasconcelos, L.P.Reis, N.Lau, A Methodology for Creating Intelligent Wheelchair Users’Profiles, ICAART 2012, Int.Conf.on Agents and AI, pp. 171-179, Feb 2012, Algarve, Portugal
[35]  R.A.M. Braga, Marcelo Petry, Luís Paulo Reis, A. Paulo .Moreira, IntellWheels: A Modular Development Platform for Intelligent Wheelchairs. JRRD - Journal of Rehabilitation Research and Development, Department of Veterans Affairs, USA, Vol. 48, Issue 9, pp. 1061-1076, December 2011, ISSN: 0748-7711
[36]  António Pedro Costa, Maria João Loureiro and Luís Paulo Reis, Metodologia Híbrida de Desenvolvimento Centrado no Utilizador aplicada ao Software Educativo. RISTI - Iberian Journal on Information Systems and Technology / Revista Ibérica de Sistemas e Tecnologias de Informação, Vol. 6, pp. 1-15, December 2010, ISSN: 1646-9895
[37]  António Pedro Costa, Maria João Loureiro, Luís Paulo Reis, Hybrid User Centered Development Methodology: The practical case of Courseware Sere, In 5th Iberian Conf. on Inf.Systems and Technologies, CISTI 2010, June 2010, S.Compostela, Spain, pp. 192-197
[38]  António Pedro Costa, Maria João Loureiro, Luís Paulo Reis, Courseware Sere: Technical and Didactic Evaluation Made by Students. In 5th Iberian Conference on Information Systems and Technologies, CISTI 2010, June 16–19 2010, Santiago de Compostela, Spain, pp. 198-203,