KIRANA MOBILE GAME SHARIFAH AQUILLA ALHABSHI BINTI SYED SAGAFF A project report submitted in partial fulfillment of the requirements for the award of the degree of Master of Science (Information Technology – Entrepreneurship) Faculty of Computer Science and Information Systems Universiti Teknologi Malaysia APRIL 2008 Bismillahirrahmanirrahim, To my parents who made my life possible, for their love, for their sacrifices. To fisha who make my life worth living, thanks for your support. To faeiz and aliya, my beloved siblings, thanks for your love. To all my friends, especially ima, ira, fae, suzie, tina and eina, who always standing beside me, thanks for your support. If I have been able to see a few new things in useful and different ways, it is only because of the kindness and patience of those who have taken the time to lead me up the hill and point my head in the right direction. Thank you all. Wassalam ACKNOWLEDGEMENT IN THE NAME OF ALLAH, THE MOST GRACIOUS MOST MERCIFUL With the opportunity given here, I would like to express my profound appreciation to my mentor and his partner, who gave me the major support during the development of this project, En.. Hishamudin bin Mohd Amin and En.. Kamaruzzaman bin Jahidin. Also special appreciation to my supervisor for their supportive encouragement, PM. Dr. Dzulkifli Mohamed from FSKSM, PM Dr Mohd Hassan bin Mohd Osman from FPPSM and En. Abdullah bin Bade from FSKSM. Also to my program coordinator, En. Nor Hashim bin Abu Samah and En. Iskandar bin Illyas. My sincere appreciation also extends to BIP and all my colleagues. I am also indebted to Majlis Amanah Rakyat (MARA) for funding my Msc. Last but not least, to those who have been involved either directly or indirectly in development of this project, thanks a lot of your support and kindness. Wassalam. ABSTRACT Mobile game development is growing rapidly in all aspects. As many mobile game developers emerge everyday, the mobile gaming and innovations in this field improves rapidly. Since Mobile phone users’ growth is rapid every year, the entertainment industries have shown a good interest towards mobile games. Kirana is a mobile game based on the ancient epics of Malaysia and Indonesia literature, Hikayat Panji Semirang. The game will be developed by Flash and using J2ME platform. The player will sent SMS to the game server and download the game through GPRS. Player can download accessories or weapons to increase power in a certain level. Revenue can be generating from this process. Firstly, the player should register and then download the game. Player can choose whether they want to submit their score to the game server or not. We will give prizes to the player that gets the highest score. Scores will be published on the web site. User will get all information about game on the website. Advertising new products through mobile games become familiar in mobile game industries today. For example, advertising the painkiller. This painkiller can be used to heal gamers. ABSTRAK Pembangunan permainan mobile sedang berkembang dengan pantas di dalam semua aspek. Seiring dengan pertambahan bilangan pembangun permainan setiap hari, bidang permainan mobile dan inovasinya semakin meningkat dengan pantas. Sejak berlakunya pertambahan pengguna telefon bimbit pada setiap tahun, industri hiburan telah menunjukkan minat yang baik terhadap permainan mobile. Kirana adalah sebuah permainan mobile yang diadaptasikan dari kisah epik, hikayat kesusasteraan Melayu dan Indonesia, Panji Semirang. Ia dihasilkan menggunakan Flash dan platform J2ME. Permainan ini perlu dimuatturun oleh pemain menggunakan GPRS dengan menghantar SMS ke pelayan permainan. Pemain boleh memuatturun aksesori atau senjata bagi menambah kuasa di dalam sesebuah tahap permainan. Keuntungan boleh diperolehi dari memuatturun aksesori tersebut. Pemain perlu mendaftar terlebih dahulu dan kemudian memuatturun permainan. Pemain mempunyai pilihan sama ada ingin menghantar markah ke pelayan permainan ataupun tidak. Kami menyediakan hadiah kepada pemain yang mendapat markah tertinggi. Markah akan dipaparkan di laman web. Pengguna boleh mendapatkan semua informasi mengenai permainan di laman web. Pengiklanan produk baru di dalam permainan mobile telah menjadi sesuatu yang biasa di dalam industri permainan mobile pada hari ini. Contohnya, pengiklanan ubat tahan sakit. Ubat tersebut boleh digunakan di dalam permainan untuk merawat pemain. TABLE OF CONTENT CHAPTER I TITLE PAGE DECLARATION ii DEDICATION iii ACKNOWLEDGEMENTS iv ABSTRACT v ABSTRAK vi TABLE OF CONTENT vii LIST OF FIGURES xiii LIST OF TABLES xviii LIST OF ABBREVIATIONS xix LIST OF APPENDICES xxi PROJECT OVERVIEW 1 1.1 Project Overview 1 1.2 Background of Problem 2 1.3 Project Objective 2 1.4 Scope 3 1.5 Importance of Project 4 1.6 II 1.5.1 Enabling Technology 5 Structure of the Thesis 5 LITERATURE REVIEW 8 2.1 Introduction 8 2.2 History of Mobile Games 8 2.2.1 10 Mobile Game Characteristics 2.2.2 Requirements 11 2.2.3 Types of Mobile Games 12 2.2.4 The Mobile Value Chain 13 2.3 Short Message Service 14 2.4 History of Flash 15 2.5 Overview of the Java Environment 19 2.5.1 20 Elements of a Typical J2ME MIDP Business Application 2.5.2 Wireless Networking on the MIDP 23 2.6 The Client-Server Architecture 24 2.7 The World Wide Web 24 2.8 Apache 27 2.9 MySQL 28 2.10 Macromedia Dreamweaver 8 29 2.11 PHP 29 2.12 Similar Product Analysis 30 2.13 Example of Malaysian J2ME Games 31 2.14 Compatible Phones 35 2.15 III VI Summary 36 METHODOLOGY 37 3.1 Introduction 37 3.2 Methodology 38 3.3 Project Development Technology 38 3.3.1 Methodology Project 39 3.3.2 Agile Game Development 39 3.3.3 Scrum Background 41 3.3.4 Characteristic of Scrum 43 3.3.5 Scrum Process 46 3.3.6 46 Kirana Mobile Game Development Process 3.4 Object-Oriented Programming 50 3.5 The Unified Modeling Language (UML) 50 3.6 Describing an Architecture Using UML 51 3.7 Methodology Justification 51 3.8 Game Architecture 53 3.9 Project Schedule 54 3.10 Summary 55 FINDING / ANALYSIS 56 4.1 Introduction 56 4.2 Markup, Native OS or Messaging for Games 56 4.3 Designing J2ME Applications: MIDP and UI Design 58 4.3.1 58 Java 2 Platform Micro Edition (J2ME) Architecture 4.4 V 4.3.2 The Application Environment 59 Component Design 60 4.4.1 Use Case Description 66 4.4.2 Sequence Diagram 68 4.4.3 Class Diagram 69 4.4.4 State-Chart Diagram 70 4.4.5 Activity Diagram 70 4.5 Web Interface 71 4.6 Mobile Game Interface 72 4.7 Game Documentation 75 4.8 Mobile Game Testing 75 4.9 Summary 76 BUSINESS PLAN 77 5.1 Executive Summary 77 5.2 Industry Background: Current Status 78 5.3 Industry Background: Future Trends 80 5.4 General Description of the Product 82 5.4.1 Product Description 83 Business Goals and Growth Potential of the Venture 83 5.5.1 Growth Potential 84 5.5.2 Situation Analysis 85 5.5.3 The Mobile Game Markets 86 5.5.4 88 5.5 5.6 Business Model and Workflow Uniqueness of the Product 90 5.7 5.8 5.6.1 Competitive Edge 91 5.6.2 Competitor Analysis 91 5.6.3 SWOT Analysis Competitors 92 Marketing Strategy 94 5.7.1 Method to Identify and Contacting Potential Customers 94 5.7.2 Sales Strategy 95 5.7.3 Distribution Strategy 96 5.7.4 Estimated Market Share 96 5.7.5 Pricing Strategy 97 5.7.6 Advertising Plan and Promotions Strategy 97 5.7.7 Sales Programs 98 5.7.8 98 Marketing Analysis Management 103 5.8.1 Management Team Gaps 104 5.8.2 Organizational Structure 104 5.8.3 Technopreneur Capabilities 105 5.8.4 Support Team 105 5.9 Identify Location 106 5.10 Research Analysis 106 5.10.1 Mobile Phone User 107 5.10.2 Teenagers 109 5.10.3 Young Adults 110 5.10.4 Understanding the Industry 112 5.10.5 Understanding the User 112 5.10.6 Demographic Segmentation 113 Operations Plan 113 5.11.1 Business Partnership 114 5.11.2 Quality Control 114 5.11.3 Customer Support 115 5.12 Critical Analysis 116 5.13 Long-term Development and Exit Plan 117 5.14 Financial Planning 118 5.14.1 Resources Needed for Development 119 Summary 121 5.11 5.15 VI DISCUSSION AND CONCLUSION 122 6.1 Achievement 122 6.2 Constraints and Challenges 123 6.3 Discussions and Recommendations 124 REFERENCES 125 LIST OF FIGURES FIGURE NO. TITLE PAGE 2.1 Overview of the Java environment 20 2.2 Application features 131 2.3 J2ME, MIDP, CLDC and related Java packages 21 Typical operation of a MIDP application using HTTP 22 CDLC generic connection framework HTTPConnection 132 2.4 2.5 2.6 A server communicating with 2 client programs 26 2.7 Game snapshot: Badang 31 2.8 Game snapshot: Puteri Gunung Ledang 32 2.9 Game snapshot: Rage of Mages 32 2.10 Game snapshot: Rogue Lords 33 2.11 Game snapshot: Hammer & Sickle 34 3.1 Project noise level 40 3.2 Agile process 40 3.3 A defined process 41 3.4 A simple visualization of scrum 42 3.5 Productivity scrum team 43 3.6 Scrum team chart 44 3.7 Detailed scrum team chart 44 3.8 Scrum structure 45 3.9 Scrum process 46 3.10 Phase flow chart 47 3.11 Practices and inputs of sprint 48 3.12 Sustainable pace 49 3.13 Test-Driven development 49 3.14 Game architecture 53 4.1 Java 2 Platform Edition architecture 59 4.2 Use case diagram for mobile user 61 4.3 Use case diagram for web user 61 4.4 Use case diagram for web admin 62 4.5 Use case diagram for game Writers 62 4.6 Use case diagram for game producer 63 4.7 Use case diagram for game artist 63 4.8 Use case diagram for game designer 64 4.9 Use case diagram for game developer 64 4.10 Use case diagram for Level designer 65 4.11 Use case diagram for game programmers 65 4.12 Web interface 72 4.13 Kirana mobile game interfaces 73 4.14 Sequence diagram for mobile registration 133 4.15 Sequence diagram for download game 134 4.16 Sequence diagram for play game 135 4.17 Sequence diagram for submit score 136 4.18 Sequence diagram for web registration 137 4.19 Sequence diagram for login process 138 4.20 Sequence diagram for logout 139 4.21 Sequence diagram for login admin 140 4.22 Sequence diagram for logout admin 141 4.23 Sequence diagram for update score 142 4.24 Sequence diagram for update user record 143 4.25 Sequence diagram for update info 144 4.26 Sequence diagram for write game 145 4.27 Sequence diagram for write dialog for NPC 146 4.28 Sequence diagram for developing schedules 147 4.29 Sequence diagram for maintaining schedules 148 4.30 Sequence diagram for developing budgets 149 4.31 Sequence diagram for maintaining budgets 150 4.32 Sequence diagram for negotiating contracts 151 4.33 Sequence diagram for arranging beta testing 152 4.34 Sequence diagram for creates art 153 4.35 Sequence diagram for develop Game Asset 154 4.36 Sequence diagram for develop volume of sketches 155 4.37 Sequence diagram for implements game design 156 4.38 Sequence diagram for modify game design 157 4.39 Sequence diagram for develop Gameplay 158 4.40 Sequence diagram for develop concept 159 4.41 Sequence diagram for develop layout 160 4.42 Sequence diagram for design game 161 4.43 Sequence diagram for develop game 162 4.44 Sequence diagram for approve game idea 163 4.45 Sequence diagram for altering game rules 164 4.46 Sequence diagram for producing scenarios 165 4.47 Sequence diagram for create advanced levels 166 4.48 Sequence diagram for create levels 167 4.49 Sequence diagram for challenges or missions 168 4.50 Sequence diagram for develop prototypes 169 4.51 Sequence diagram for develop technical framework 170 4.52 Sequence diagram for write source codes 171 4.53 Class diagram for admin 172 4.54 Class diagram for user 173 4.55 State chart diagram for mobile 174 4.56 State chart diagram for web 175 4.57 Activity diagram for mobile 176 4.58 Activity diagram for web 177 5.1 Expected revenues to be generated from some major regions 83 Growth of mobile users against population in Malaysia 85 5.3 Mobile game business area 87 5.4 Traditional and mobile game value 87 5.5 The Mobile value chain 88 5.6 Subscription vs per-download business model 90 5.2 5.7 Percentage distribution of hand phone subscribers by ethnic origin 96 5.8 Gender of the respondents 98 5.9 User that play mobile game 99 5.10 User that download mobile game 99 5.11 Mobile game absorption in Malaysia 100 5.12 User interest to download mobile game 100 5.13 Affordable price of mobile game 101 5.14 Mobile phone that supported by the GPRS services 101 5.15 User acceptance for strategy games 102 5.16 User that has interest to download accessories 103 5.17 Type of games 103 5.18 Organizational chart 104 5.19 Penetration rate per 100 inhabitants 109 5.20 Sales projection for Kirana mobile game 119 5.21 Sales projection for ten games 120 5.22 Break even point 120 5.23 Profit and loss 121 LIST OF TABLES TABLE NO. 5.1 TITLE PAGE Content That Mobile Phone Users expect to be Accessing in 12 Months Time 79 5.2 Pricing Analysis 92 5.3 National & International Mobile Phone Users 108 5.4 Penetration Rate for Cellular Phones in Malaysia 108 5.5 Teenagers Population in Malaysia 110 5.6 Young Adults Population in Malaysia 111 5.7 Cellular Phone Demographic Groupings 113 5.8 Project Milestones 118 LIST OF ABBREVIATIONS SMS - Short Message Service J2ME - Java 2 Micro Edition MIDP - Mobile Information Device Profile GPS - Global Positioning System MMS - Multimedia Messaging Service OOSE - Object Oriented Software Engineer PHP - Hypertext Preprocessor JVM - Java Virtual Machine JRE - Java Runtime Environment JIT - Just In Time Computer J2SE - Java 2 Standard Edition GFC - Generic Connection Framework CDLC - Constrained devices with limited network connecting WWW - World Wide Web HTTP - Hypertext Transport Protocol URL - Uniform Resources Locaters OOP - Object Oriented Programming UML - Unified Modeling Language OS - Operating System API - Application Programmer Interfaces SDK - Software Development Kit LIST OF APPENDICES APPENDIX TITLE PAGE A Gantt Chart Project I & II 127 B Gantt Chart Project III 130 C Application Features 131 D CLDC Generic Connection Framework with HttpConnection 132 E Sequence Diagram 133 F Class Diagram 172 G State Chart Diagram 174 H Activity Diagram 176 I Game Documentation 178 J User Testing 194 K Financial Planning 197 CHAPTER 1 PROJECT OVERVIEW 1.1 Project Overview A mobile game is a video game played on a mobile phone, smartphone, PDA or handheld computer. Mobile games may be played using the communications technologies present in the device itself, such as by text message (SMS), multimedia message (MMS) or GPRS location identification. With the number of mobile gamers around the world expected to reach 220 million by 2009, the mobile gaming business is projected to expand to higher levels and constitute a bigger portion of the profit pie for the cellular carriers and handset makers. Basically, this project will apply this method: Users will sent SMS and get SMS from the server. Then, they will get a link that will connect them to the game. The process of downloading the game will start immediately after the users connect the link through GPRS. It just takes a minute to download the game. Then, the user can start play the game. Initially, our target market will be the teenagers and young adults. Our core focus is the development of mobile games for J2ME platform. 1.2 Background of Problem We can see that there’s a vast growth in number of mobile game developers in countries from the West as well as players from Hong Kong and Japan. Although there are many mobile game developers globally, but it has yet to be taken seriously in our local market. i. Satisfying the need that motivates a user to interact with a mobile game is not enough to guarantee a positive user experience. Game performance must match or exceed the user’s expectations. ii. Less interested in learning about customs and cultures of Malaysia. iii. Lack of interest as the primary reasons mobile phone users did not purchase another game (after an initial play or purchase). 1.3 Project Objective Kirana mobile game’s objective is: i. To design a prototype model of mobile games based on the ancient epics of Malaysia and Indonesia literature, Hikayat Panji Semirang. ii. To develop the model (level 1) of the games. iii. To publish mobile game using Sun’s J2ME (Java 2 Micro Edition, recently rebranded simply “Java me”) platforms. 1.4 Scope The project scope has been identified to develop the prototype of the game as listed below: 1. The game will be based on the ancient epics of Malaysia and Indonesia literature, Hikayat Panji Semirang. 2. The development of mobile games for J2ME platform. 3. The typical customer profile for this project falls in two separate categories, which are teenagers and adults. Based on several reasons, younger users or the youth market are more likely to be comfortable with the intrusive nature of mobile communications.Most teenagers own mobile phones and are very aware of the latest technology trends in the market. 4. The backgrounds of the game for each level are static. The background / environment will change for each stage. Game Features: i. We will provide the interactive user interface to make sure it is easy for gamers to use the interactive features of the game. a. Interactive User Interface – Every stage will be different in term of environment and background. ii. User friendly regardless of age and mobile friendly. a. Gamers can download easily through SMS and GPRS. b. We provide simple user manual before the game start. iii. Easy-to- navigate play experience. a. We provide simple user instruction for the key manual. 1.5 Importance of Project The importances of this project are: i. The mobile gaming market is growing very fast and it will capture the market of pc games soon. Day by day, game developers are increasing in this field because of the increasing mobile phone users all around the world. ii. Mobile gaming makes a lot of noise but little real impact locally at present. Most of the impressive mobile game developers are Westerners or joint ventures with them. In Asia it is considered a new trend and still at an infant stage. It will need some more time before the move to mobile gaming really takes off – but when it does, it will be a huge new market contributing to big success. We take this as a positive sign. This is the right time to venture into mobile game business before it really takes off and by the time it happens, we will established a brand name in the mobile game market. (Longoria, 2004) iii. To instills Malay cultural and positive values because nowadays, people are less interested in learning about customs and cultures of Malaysia. 1.5.1 Enabling Technology The enabling technology that we applied to develop the total system are: 1. The total system that will be developed is for Microsoft Windows environment. 2. The scheduling system will be using Flash as a programming language. 3. Mobile games are developed using Sun's J2ME (Java 2 Micro Edition, recently rebranded simply "Java ME") platforms and technologies. 1.6 Structure of the Thesis 1. Chapter 1 Chapter 1 covers background of the project. The complete description of the project will be explained more details in subsequent chapters. We will grab the opportunity from the problem that we see in mobile game markets. The scope and objectives of the project have been identified to guide us in the process of development. The contribution and important of the project also been discussed in this chapter. The enabling technology that will be applied to develop this project has been identified. 2. Chapter 2 Chapter 2 describes about the literature review. The history of mobile games is reviewed. The technology in mobile game and programming language that will apply in the development of this project are pointed out. The mobile game characteristics, types of mobile games, the mobile value chain, short message service, history of flash, overview of the JAVA Environment, the client-server architecture, the world wide web, apache, MySQL, Macromedia Dreamweaver 8 and PHP are then decsribed on detail. We also did a similar product analysis and gave the example of Malaysian J2ME games. 3. Chapter 3 Chapter3 introduces the methodology that will be applied to this project. A project methodology covers all things that need to do until the project complete. Agile Game methodology was the methodology that we choose to apply in this project. The traditional method is compared with this method. Scrum is a more specific implementation of the agile method. The characteristics of scrum, the process and each phase have been defined. The UML has been applied at the design stage to ensure that each process is clearly defined. We used the Gantt chart for planning and scheduling operations. 4. Chapter 4 Chapter 4 presents about the design aspects of the development of mobile games. We will use Java 2 Platform Micro Edition (J2ME) as the platform. In this chapter, the J2ME Architecture has been discussed. The component design of this project which includes the class and sequence diagrams is pointed out. The use-case has been decribes detailed in this chapter. The state-chart diagram and activity diagram also been documented. The main difference between activity diagrams and state charts is activity diagrams are activity centric, while state charts are state centric. The example of the web interface for this project is also been shown. 5. Chapter 5 Chapter 5 presents the business plan for this project. Each aspects of marketing, market research, operation, risk analysis, competitor analysis, business and revenue model, customer support and financial planning has been clearly identified. The product description and value propositions also been discussed. 6. Chapter 6 Chapter 6 summarizes the achievement, constraints and challenges and recommendations for this project. CHAPTER 2 LITERATURE REVIEW 2.1 Introduction This chapter will be described about the technology in mobile game and programming language that will apply in the development of this project. Research has been done on similar product analysis and competitors that provide Java games in Malaysia. Beside that, the example of Malaysian Java games also been discussed. 2.2 History of Mobile Games Mobile computer games have their history in Nintendo’s portable LCD game series “Games & Watch3”. These games became very popular in the 1980s. These simple miniature consoles introduced a concept of keeping small Sources of digitized entertainment in the pocket – constantly available. There were nearly 70 different kind of LCD games4. In this series, Nintendo also introduced its most know game character, Mario, as well as brought licensing into active use with using Disney’s characters in their games. In 1990s, Nintendo’s markets became more and more competitive with multiple competing LCD game manufactures and thus it introduced a new kind of game consoles – the Gameboy-console with changeable came cartridges. The device became the dominant one in the markets and marks currently nearly a synonym for portable game consoles. Nintendo with its partners has launched hundreds of game titles for the device and its more advanced successors. Wireless gaming (games on mobile phones) emerged with Nokia’s launch of the Snake game in 1997. The simple Snake-game became surprisingly popular and Nokia brought additional titles to their devices. Simple mobile phone games, similar to the original Snake, are played on small breaks to provide relaxation and a small escape from routines. These games were originally installed permanently on the phones, but nowadays more and more they can be purchased through the mobile networks. In the end of the 1990s, Japanese success of I-Mode network based games created a boom for WAP-games – games that mobile phone users would use through their WAP-browsers in the phones. In Europe, Nokia’s 7100-series of phones were the first ones capable for this activity. The slow connection speeds made these games a very disappointing experience and thus they never reached the mainstream markets. Yet, some SMS-based games have gained popularity, especially when supported with television broadcasting. In 2001, the introduction of downloadable games and colour screens on mobile devices has brought wireless games into mass markets. Suddenly, consumers were willing to start purchasing small chunks of entertainment to broaden their game selections on the mobile devices. In addition, mobile phones are constantly developing towards small microcomputers – smartphones and thus game play is nowadays much richer than the simple Snake-like-gaming used to be. 3D-graphics and natural sounds are entering also wireless games. Nokia has continued to pioneer in the field of wireless gaming. In 2003, it introduced its N-Gage game deck and wireless online gaming with N-gage Arena. This device is a full-scale game console with changeable cartridges and smartphone fuaddition, the N-Gage started a new era in online gaming – the device and some of its game titles are linked into a game server via GPRS networks and thus enable group games in an online community. Furthermore, N-Gage has Bluetooth gaming functionalities for short-range (~10 m) group games. The N-Gage launch was carried out with large scale. Yet, there are still no guarantees of business success of the device7.Nevertheless, the N-Gage has created increasing interest towards mobile games and Nokia’s competitors (e.g. Sony) are also planning on similar activities in the handheld game device markets. 2.2.1 Mobile Game Characteristics Mobile games' financial appeal comes from their wide reach. Mobile phones have become tightly integrated into the modern lifestyle. They are second only to keys and wallets as the most commonly carried personal items. Unlike traditional console games that target geeks and teenagers, mobile games are accessible to anyone, anywhere and anytime. Although each mobile game is inexpensive, the projected large volume (e.g., a new game per week per person) will make this market immense and profitable. However, for developers, mobile games present a big paradigm shift from console games due to the vastly different target audience, lifestyle, and distribution models. 2.2.2 Requirements A successful mobile game will likely have one of the following characteristics: 1. Easy to learn: Since mobile games target general consumers not computersavvy techies, they cannot have steep learning curves. Consumers will not spend hours studying an operation manual of a game. The game must be playable the moment it is downloaded. It is essential to keep the game simple. 2. Interruptible: Multitasking is a basic characteristic of the mobile lifestyle. A mobile user often has small chunks of free time available between tasks (e.g., while waiting for an email or a taxi to arrive). The same device is used for games, calendar management, messaging, and work data access. A good mobile game should provide entertainment value for short time periods and allow users to switch smoothly between game and work modes. 3. Subscription based: Mobile games' financial success depends on their large volume. It is expensive to design and develop each game from scratch. For a mobile game developer to make money, it is important to offer multiple titles from the same game engine along similar basic storylines. Subscriptionbased games are the best way to generate sustained revenue. 4. Rich social interactions: No matter how good a game design is, it quickly becomes boring when the player figures out the underlying pattern or has exhausted all the play routes. For subscription-based games, it is important to incorporate other human players to increase the intelligence and randomness of the game play. Games with rich social interactions have proven successful in many of today's massively multiplayer games. 5. Take advantage of mobile innovations: A huge amount of mobile technology research dollars have been spent on improving the usability and reliability of devices and networks. As a result, the mobile device hardware and network protocols are very different from the desktop/console world (e.g., Global Positioning System (GPS) extensions, barcode scanner, and Short Message Service (SMS)/Multimedia Message Service (MMS) messaging). Good mobile games should take advantage of those innovative device features and network infrastructures. 6. Nonexplicit content: Since all age/gender groups play mobile games and often in public/work settings, you should avoid explicit violent or sexual content. 2.2.3 Types of Mobile Games Based on the above criteria, the most successful future mobile games are casual games that provide entertainment value to a broad range of players in all social settings. In particular, the following types of games are emerging as tomorrow's killer games: 1. Multiplayer games: Those games could provide mobile access to established online game communities. Or, they could create completely different social structures taking advantage of mobile-specific features such as the multimedia messaging and location-based services. Good game design and management are crucial to this type of game's success. 2. Content-based games: Those games deliver copyrighted multimedia entertainment content, such as celebrity photos, video clips, voice ringtones, and personalized sports games to music/movie/sports fans. The key to success is to provide a flow of high-quality content that justifies the subscription cost. 3. High-impact visual games: PC and console games have evolved from 2D to 3D. Mobile games will follow this trend too. There are already several mobile 3D toolkits and handsets available. However, 3D games are very resource intensive. They require expertise from both developers and graphic designers. Professional shops will most likely develop these games. During mobile games' early days, most developers were enthusiasts who wanted to play with their devices, learn new skills, and make a quick buck. However, as more developers enter this space, mobile games have evolved into major productions that involve professional designers, architects, developers, business dealers, lawyers, and artists. This is an inevitable trend as the industry matures. For developers, this change poses both challenges and opportunities. While it is harder to develop and sell simple games in one's spare time, more pro shops will offer better employment opportunities for many people. 2.2.4 The Mobile Value Chain To fully understand the mobile game landscape, you must understand how the money flows. This business's value chain is considerably different from traditional games or enterprise applications: 1. Developers: Software developers drive the value chain by creating great applications. However, most developers do not have the capacity to handle mass marketing. They also lack the distribution channels to reach consumers. 2. Publishers: Game publishers aggregate titles from developers. They build a brand name, certify the game for technical correctness, promote the game, and build business relationships with wireless carriers. Publishers also handle billing on the developer's behalf and typically share revenue with the developer. 3. Wireless carriers: Wireless carriers are at the center of mobile game distribution channels. Carriers not only control the network but also own the customer information. It is up to them to decide what devices and services to support. Carriers take a big chunk of money out of the overall profit. Carriers can also bill the customers through existing service agreements. 4. Wireless device manufacturers: Device manufacturers drive the technical innovation. They make new hardware and support development platforms. In fact, J2ME's success is largely due to major device manufacturer adoption. Device manufacturers represent an independent force between carriers and consumers. 5. Consumers: Consumers eventually pay for the costs and margins incurred for the providers along the chain. A consumer can purchase games from the publisher's Website or through content provisioning systems provided by the carrier. 2.3 Short Message Service SMS is the abbreviation for Short Message Service. SMS is a way of sending short messages to mobile telephones and receiving short messages from mobile telephones. Short means a maximum of 160 bytes. According to the GSM Association, each short message is up to 160 characters in length when Latin alphabets are used and 70 characters in length when non-Latin alphabets such as Arabic and Chinese are used. The message can consist of text characters, in which case the messages can be read and written by human beings. SMS text messages can be read and written by human beings. SMS text messages have become a staple of wireless communications in Europe and Asia/Pacific and are gradually gaining popularity in North America. The messages also can consist of sequences of arbitrary 8-bit bytes, in which case the message probably is created by a computer one end and intended to be handled by a computer on the other. There are six kinds of messages that flow in the SMS network. One of the six message types, two go from the mobile device (whether it is serving as an air modem or out walking around somewhere) into the network: i. SMS-SUBMIT “submit” a message to the SMSC, generally for forward transmission to another mobile device. ii. SMS-COMMAND goes to the SMSC and tells it to do something. iii. SMS-DELIVER delivers a message from another mobile. iv. SMS-SUBMIT-REPORT reports on the results of an SMS-SUBMIT or an SMS-COMMAND. v. SMS-DELIVER-REPORT reports on the success or failure of the delivery of an SMS-DELIVER or SMS-STATUS-REPORT message. vi. SMS-STATUS REPORT reports on the results of an SMS-COMMAND message. (Guthery and Cronin, 2002) 2.4 History of Flash Flash grew out of a chain of thought that started in the 1980s with some ideas Jonathan Gay had at school, then at college and later while working for Silicon Beach Software and its successors. In January 1993, Charlie Jackson, Jonathan Gay, and Michelle Welsh started a small software company called FutureWave Software and created their first product, SmartSketch. A drawing application, SmartSketch was designed to make creating computer graphics as simple as drawing on paper. Although SmartSketch was an innovative drawing application, it didn't gain enough of a foothold in its market. As the Internet began to thrive, FutureWave began to realize the potential for a vector-based web animation tool that might easily challenge Macromedia's often slow-to-download Shockwave technology. In 1995, FutureWave modified SmartSketch by adding frame-by-frame animation features and re-released it as FutureSplash Animator on Macintosh and PC. By that time, the company had added a second programmer Robert Tatsumi, artist Adam Grofcsik, and PR specialist Ralph Mittman. The product was offered to Adobe and used by Microsoft in its early (MSN) work with the Internet. In December 1996, Macromedia acquired the vectorbased animation software and later released it as Flash 1.0. a. Macromedia Flash 2 (1997) Features: Support of stereo sound, enhanced bitmap integration, buttons, the Library, and the capability to tween color changes. b. Macromedia Flash 3 (1998) Features: Brought improvements to animation, playback, and publishing, as well as the introduction of simple script commands for interactivity. Macromedia ships its 100,000th Flash product this year, as well. c. Macromedia Flash 4 (1999) Features: Achieved 100 million installations of the Flash Player, thanks in part to its inclusion with Microsoft Internet Explorer 5. Flash 4 saw the introduction of streaming MP3s and the Motion Tween. Initially, the Flash Player plug-in was not bundled with popular web browsers and users had to visit Macromedia website to download it, but as of year 2000, the Flash Player was already being distributed with all AOL, Netscape and Internet Explorer browsers. Two years later it shipped with all releases of Windows XP. The install-base of the Flash Player reached 92% of all Internet users. d. Macromedia Flash 5 (2000) Features: Flash 5 was a major leap forward in capability, with the evolution of Flash's scripting capabilities as released as ActionScript. Flash 5 also saw the ability to customize the authoring environment's interface. e. Macromedia Generator was the first initiative from Macromedia to separate design from content in Flash files. Generator 2.0 was released in April 2000 and featured real-time server-side generation of Flash content in its Enterprise Edition. Generator was discontinued in 2002 in favor of new technologies such as Flash Remoting, which allows for seamless transmission of data between the server and the client, and ColdFusion Server. In October 2000, usability guru Jakob Nielsen wrote a polemic article regarding usability of Flash content entitled "Flash 99% Bad". (Macromedia later hired Nielsen to help them improve Flash usability). In September 2001, a survey made for Macromedia by Media Metrix showed that out of the 10 biggest websites in the United States, 7 were making use of Flash content. f. On March 15, 2002, Macromedia announced the availability of acromedia Flash MX and Macromedia Flash Player 6, with support for video, application components, shared libraries, and accessibility. g. Flash Communication Server MX, also released in 2002, allowed video to be streamed to Flash Player 6 (otherwise the video could be embedded into the Flash movie). h. Flash MX 2004 was released in September 2003, with features such as faster runtime performance up to 8 times with the enhanced compiler and the new Macromedia Flash Player 7, ability to create charts, graphs and additional text effects with the new support for extensions (sold separately), high fidelity import of PDF and Adobe Illustrator 10 files, mobile and device development and a forms-based development environment. i. ActionScript 2.0 was also introduced, giving developers a formal ObjectOriented approach to ActionScript. V2 Components replaced Flash MX's components, being rewritten from the ground up to take advantage of ActionScript 2.0 and Object-Oriented principles. Flash MX 2004 was the first release of Flash to be segmented into "Basic" and "Professional" versions. The Basic version was targeted at traditional Flash animators while the Professional version brought more advanced capabilities that developers would use, for example the data components. j. In 2004, the "Flash Platform" was introduced. This expanded Flash to more than the Flash authoring tool. Flex 1.0 and Breeze 1.0 were released, both of which utilized the Flash Player as a delivery method but relied on tools other than the Flash authoring program to create Flash applications and presentations. Flash Lite 1.1 was also released, enabling mobile phones to play Flash content. k. Macromedia Flash 8 (2005) is touted by Macromedia as the most significant upgrade to Flash since Flash 5. New features included filter effects and blending modes, bitmap caching, a new video codec called On2 VP6, an enhanced type rendering engine called FlashType, an emulator for mobile devices, and several enhancements to the ActionScript 2.0 spec, such as the BitmapData class, several geometric classes, and the ConvolutionFilter and DisplacmentMapFilter classes. l. Flash Lite 2 was also released in 2005, which brought its capabilities in line with Flash Player 7. m. On December 3, 2005, Adobe Systems acquired Macromedia and its product portfolio (including Flash). n. Adobe Flash Player 9 was released for Windows and Mac OS in 2006, which marked the first time a Flash Player major release occurred without a simultaneous Flash authoring program major release. o. Flex 2.0 was released in conjunction with Flash Player 9, and the player will be continued when Flash Authoring 9 is released in 2007. For the first time in the history of Flash, the Flash Player will have had an opportunity to become widely installed before the release of the equivalent Flash program. p. Adobe Flash Player 9 was released for Linux in January 2007. Adobe Flash 9 Public Alpha was released in 2006, and was a preview of ActionScript 3.0. q. Adobe Flash CS3 in 2007, originated from Flash 9 Public Alpha with several updates for integrating into other Adobe products, is released as bundled software of the Adobe Creative Suite 3. This currently-newest version also brings ActionScript 3.0 and a new xml engine to the Flash authoring tool. Also has an improved and optimized GUI like the rest of the CS3 suite. 2.5 Overview of the Java Environment Figure 2.1 presents an overview of the Java execution environment. At the bottom we have the host computers that support the execution of an implementation of the JVM. At the top we have the applications that are the programs that need to be executed using the JVM. In between we have the Java execution system which comprises the Java Runtime Environment (JRE) and below that the JVM itself. The Just in Time compiler (JIT) is an optional part of the JVM that can considerably speed up execution of Java code. The JRE comprises various internal tools for loading and verifying applications as well as the class library. The JVM not only has the byte code interpreter, it also has the peer interface which is used to connect Java graphics to the graphics system of the operating system of the host computer. The Java execution environment provides not just a Java execution engine; it provides a safe execution environment. Every time Java code is loaded it is verified to check that it has not been tampered with, that the compiled code is internally selfconsistent and consistent with the Java standard. Also each Java program is associated with a security manager which verifies that, when executing, the program has permission to access the resources such as files and network connections that it attempts to use. This ability to control resources available to executing programs is crucially important as it allows untrusted programs to be downloaded and executed with confidence that they cannot do any damage to the computer on which they are executing. (Wu, 2006) Figure 2.1: Overview of the Java environment (Sources: “An Introduction to Object-Oriented Programming With Java. 4th ed”. USA : Mc Graw Hill.) 2.5.1 Elements of a Typical J2ME MIDP Business Application a. Java 2 Micro Edition (J2ME) Java 2 Micro Edition (J2ME) is part of Sun's Java 2 family of platforms. Its siblings are the Java 2 Enterprise Edition (J2EE) and the Java 2 Standard Edition (J2SE). The J2ME platform is a set of core Java APIs and execution environment particularly tailored for resource-constrained devices such as cell phones, interactive pagers, PDAs and electronics devices such as set-top boxes. J2ME is the result of the joint efforts between Sun Microsystems and the Java Community Process well as from the lessons learned from previous editions of Java for small devices. Prominent wireless analysts have predicted by the year 2004 J2ME will become a dominant development platform for mobile devices such as cellphones, two-way pagers and PDAs. Today a number of major devices manufacture including Motorola, RIM, Nokia and Panasonic as well as major wireless network carriers such as Nextel, SprintPCS and BT Cellnet have all committed to the technology b. Mobile Applications for the Enterprise J2ME MIDP has its place in the enterprise. The application features that are typically found on enterprise-class/mission-critical mobile applications, Figure 2.2 can refer to APPENDIX C. c. Mobile Information Device Profile (MIDP) The MIDP and CLDC are the industry's first J2ME profile and configuration. When we combine these two we have set of packages/APIs that allow developers to create small network aware applications with local data persistence and user interfaces specifically for cell phones and interactive 2-way-pagers and low-end PDAs. Figure 2.3: J2ME MIDP, CLDC, and related Java packages (Sources: “http://www.microjava.com”) Within the CLDC we have the core Java packages to support constrained devices with some network capabilities. CLDC defines packages such as java.lang, java.io, java.util and javax.microedition.io. Core java.lang, java.util and java.io are subsets of their J2SE counterpart. The javax.microedition.io is a new package defined by the CLDC that defines the new generic connection framework (GCF), a new I/O abstraction that we will cover later on. Let’s cover some of the things CLDC does not support: i. No floating point ii. No finalization iii. No JNI iv. No Reflection v. No thread groups vi. No weak references vii. No User defined class loaders viii. No serialization The introduction of a new I/O package is because of the memory footprint. Let's look at some numbers: i. The J2SE java.io and java.net (JDK1.3) packages total 16 Interfaces, 71 Classes and 24 Exception Classes for a total of ~316KB. ii. The CLDC/MIDP javax.microedition.io (GCF) and java.io packages total 11 Interfaces, 12 Classes and 6 Exceptions Classes for a total of ~28KB. Within the Mobile Information Device Profile we have the Java packages targeted at constrained devices with limited network connectivity (CDLC) as well devices with limited local data persistence and user interface capabilities. For this we have the javax.microedition.lcdui for the User Interface, javax.microedition.rms for local data persistence and javax.microedition.midlet, which defines the attributes and behavior of MIDP applications also known as MIDlet. In addition, the MIDP also adds a new HttpConnection interface to the GFC. 2.5.2 Wireless Networking on the MIDP Wireless networking on the MIDP 1.0 is primarily based on (a subset of) the HTTP/1.1 protocol. Even though support for Datagrams is specified by the MIDP 1.0 specification and is implemented on some devices such as the Motorola i85, its implementation/availability is not required by the specification, meaning this that you must ensure the device you are targeting do provide support for Datagrams. The best bet for wireless networking on the MIDP is HTTP, not only for its guaranteed availability but also for the ease of integration and interoperability with existing systems. A typical operation of an enterprise MIDP application (MIDlet) is one where a mobile worker accesses the corporate network wirelessly over HTTP. On the enterprise premises a web or application server or a wireless application gateway interfaces with the device (typically through some kind of gateway that resides at the network operator premises), providing access to the corporate servers and services, typically found behind a firewall: Figure 2.4: Typical operation of a MIDP application using HTTP (Sources: “http://www.microjava.com”) Typical operation of a MIDP business application would leverage XML and HTTP. In this scenario, a MIDlet client makes request over HTTP and gets responses in XML. Leveraging XML over HTTP allows for easier integration and interoperability than any other approach. An attractive alternative approach to HTTP is the use of messaging, for example JMS. Messaging in general provides excellent features including loosely coupled sender and receivers and guaranteed message delivery. However, JMS is not native to J2ME/MIDP. Networking on the MIDP is based on a new I/O framework defined in javax.microedition.io known as the CLDC Generic Connection Framework (GCF). This framework is composed of 2 classes and a hierarchy of interfaces. You can refer to APPENDIX D. 2.6 The Client-Server Architecture A distributed system is a system in which computations are performed by separate programs, normally running on separate pieces of hardware that cooperate to perform the task of the system as a whole. A server is a program that provides some service for other programs that connect to it using a communication channel. A client is a program that accesses a server; a client may access many servers to perform different functions, and a server may be accessed by many clients simultaneously. A client-server system is a distributed system involving at least one server and one client. Figure 2.6 illustrates a server program communicating with two client programs. The vertical lines represent the three programs involved. After connecting, Client1 sends a message, receives a reply and disconnects. Client2 connects while Client1 is still connected; it simply sends a message and then disconnects. In general, the components of a client-server system interact as follows: i. The server starts running. ii. The server waits for clients to connect. This waiting process is called listening. iii. Clients start running and perform various operations, some of which require connecting to the server to request a service. iv. When a client attempts to connect, the server accepts the connection if it is willing. v. The server waits for message to arrive from connected clients. vi. When a message from a client arrives, the server takes some action in response, and then resumes waiting. vii. Clients and servers continue functioning in this manner until one of them decides to shut down. Normally, the action taken by the server includes sending a message back to the client. Most servers have to be able to handle connections from many clients and respond to messages from all the connected clients. (Lethbridge and Laganiere, 2005) Figure 2.6: A server communicating with two client programs (Sources: “Object-Oriented Software Engineering Practical Software Development Using UML, Java. 2nd ed”. UK : Mc Graw Hill.) 2.7 The World Wide Web The three main components of a World Wide Web (WWW) information system are clients, documents, and information servers. The user interacts with the system using a Web client, which lets the user name and load documents from servers for viewing. Web clients typically support a number of a different document types, such as files available via ftp, netnews, and Hypertext Markup Language (HTML), and support connections with a variety of information servers, such as ftp, daemons, news servers, and Hypertext Transport Protocol (HTTP) daemons. Documents are files on a server referenced by Uniform Resources Locators (URLs), and they can contain a variety of data types, including ASCII text formatted according to HTML directives, embedded pictures, and audio and video clips, as well as embedded URLs that are used as hypertext links to other documents. URL can also name programs on HTTP daemons that, when executed, produce an HTML document as output. (Imielinski and Korth, 1996) 2.8 Apache The Apache HTTP Server, commonly referred to simply as Apache, is a web server no table for playing a key role in the initial growth of the World Wide Web. Apache was the first viable alternative to the Netscape Communications Corporation web server (currently known as Sun Java System Web Server), and has since evolved to rival other Unix-based web servers in terms of functionality and performance. Since April 1996 Apache has been the most popular HTTP server on the World Wide Web; since March 2006 however it has experienced a steady decline of its market share. As of August 2007 Apache served 50% of all websites. The project's name was chosen for two reasons: out of respect for the Native American Indian tribe of Apache (Indé), well-known for their endurance and their skills in warfare, and due to the project's roots as a set of patches to the codebase of NCSA HTTPd 1.3 - making it "a patchy" server. Apache is developed and maintained by an open community of developers under the auspices of the Apache Software Foundation. The application is available for a wide variety of operating systems including Microsoft Windows, Novell NetWare and Unix-like operating systems such as Linux and Mac OS X. Released under the Apache License, Apache is free and open Sources software. 2.9 MySQL MySQL is a multithreaded, multi-user SQL database management system (DBMS) which has, according to MySQL AB, more than 10 million installations. The basic program runs as a server providing multiuser access to a number of databases. MySQL is owned and sponsored by a single for-profit firm, the Swedish company MySQL AB, which holds the copyright to most of the codebase. This is similar to the JBoss model. It is dissimilar to the Apache project, where the software is developed by a public community and the copyright to the codebase is owned by its individual authors. The company develops and maintains the system, selling support and service contracts, as well as proprietary-licensed copies of MySQL, and employing people all over the world who collaborate via the Internet. MySQL AB was founded by David Axmark, Allan Larsson, and Michael "Monty" Widenius. The CEO is Mårten Mickos. The MySQL company also sells another DBMS, MaxDB, which is from an unrelated codebase. 2.10 Macromedia Dreamweaver 8 Professional Web designers and developers need look no further to find the perfect Web authoring tool. Dreamweaver 8 offers support for modern browsers and standards and makes it easy for you to get your site up to speed with those technologies. In fact, the biggest drawback to Dreamweaver 8 is that it is so complex that amateur Web designers will find it overwhelming. There is a lot to learn and use in Dreamweaver 8 and unless you're willing to take the time, it can be a steep learning curve. Dreamweaver continues to produce good clean XHTML code without a lot of extraneous tags and special codes. In code-view, Dreamweaver offers color-coding and code formatting similar to the Code Sweeper in Homesite. In design-view, Dreamweaver provides more visual cues for layout and design elements so that CSS is easier to review and update quickly. If you are an amateur Web designer who has never used Dreamweaver before, you might want to get another software package such as FrontPage or Namo Web Editor. But if you're looking to move into a professional space or have used Dreamweaver in the past, you'll be thrilled with the improvements and won't be upset with the new additions. 2.11 PHP PHP is a server-side, cross-platform; HTML embedded scripting language that lets us create dynamic web pages. PHP-enabled web pages are treated just like regular HTML pages and we can create and edit them the same way we normally create regular HTML pages. Hypertext Preprocessor is an open Sources server side programming language extensively used for web scripts and to process data passed via the Common Gateway Interface from HTML forms etc. PHP can be written as scripts that reside on the server and may produce HTML output that downloads to the web browser. Alternatively, PHP can be embedded within HTML pages that are then saved with a .php file extension. The PHP sections of the page are then parsed by the PHP engine on the server and the PHP code stripped out before the page is downloaded to the web browser. The name is a bit of a programming joke (if there is such a thing) since it's a recursive acronym i.e. the P in PHP stands for PHP. (Ref 5) 2.12 Similar Product Analysis Ozura is a wholly owned subsidiary of Nextnation Communication. The company distributes games for mobile phones using Java, BREW or Symbian technology. Ozura game engine provides entertainment applications and technologies that support multiple wireless handsets, servicing wireless carriers, aggregators, mobile phone manufacturers, media companies and content developers worldwide. Wizardome is a mobile application developer. Wizardome currently focuses on the mobile entertainment industry by designing and developing mobile games according to the needs and attitudes of our audience as well as network operator by incorporating the J2ME-MIDP technology. Besides the standard game play, Wizardome also plans to venture into other customized mobile games based on the needs & request from corporate clients. 2.13 Example of Malaysian J2ME Games Figure 2.7: Game Snapshot (Sources: “http://my.fonwar.com”) i. Badang The legend tell a story about Badang, a child of a slave, the stongest person and wise after swallowing jewel from stomach of a genie. The news about his strength and intelligence already be known by Raja Wira. Wira appoint Badang become advisory royal and chief military in Temasik. Diraja's palace has been attacked by supernatural forces. Now, the country depends on Badang to uphold Royal Palace from this attack. Figure 2.8: Game Snapshot (Sources: “http://my.fonwar.com”) ii. Puteri Gunung Ledang Whisper of the wind tells a daughter legend from Gunung Ledang. The news about the beauty of the princess has been intriguing king Mansur Shah. Then, the majesty sends Tun Mamat to Puteri Gunung Ledang. At the mount of legend, Tun Mamat traverses various obstacles before he can convey the sultan’s wish to the mystery princess. Figure 2.9: Game Snapshot (Sources: “http://my.fonwar.com”) iii. Rage of Mages The mobile Allods is a stunning turn-based RPG in a magnificent fantasy environment revealing the prehistory of the world of Allods. The hero's team consists of 4 characters, each possessing defined skills. The knight himself possesses the power of a mighty blow and durable defense which make him the perfect melee fighter; the knight's lady-friend, an agile and well-aimed archer covers the hero's back; the healer, equipped with magical healing powers helps treat wounds received in battles; the battle mage aims his magic energy at the enemies, helping your characters in battles. Turn-based gameplay gives the player the chance to thoroughly analyze decisions and build up strategy for mission completion. Figure 2.10: Game Snapshot (Sources: “http://my.fonwar.com”) iv. Range Lords: The Tears of Sitanel The days of the Empire are numbered. The Council realizes that the imminent death of the last Overlord of Essgert will bring war and chaos to the realm. However, the dying Overlord will not let his life extinguish without one last throw of the dice. Legend has it that beneath the mountains depths, deeper than hell itself, the fallen angel Sitanel bemoans his fate. According to the legend his tears will grant immortality. However, it is only a legend and everyone knows legends rarely tell all the aspects of truth. A 3D action game from the Rogue Lords trilogy. Immerse yourself in the dark world of a medieval executioner arming yourself with swords, axes and even crossbows. Collect various special items such as keys, elixirs and armour. Uncover all the secrets of the dark dungeons and conquer 10 expansive levels full to the brim with gruesome monsters to obtain the tears of the Fallen Angel. Figure 2.11: Game Snapshot (Sources: “http://my.fonwar.com”) v. Hammer and Sickle Hammer and Sickle for mobile phones is the mobile version of an existing PC game. One of the key features of the project is the support of multiplayer mode, realised via the GPRS function of the mobile phone. Turn-based system of movement and battle, non-linear game plot, additional missions and a welldeveloped role play system will make the time of playing unforgettable. 2.14 Compatible Phones 1. Nokia Nokia SERIES 40 3rd edition: Nokia 6125, Nokia 6126, Nokia 5300, Nokia 5200, Nokia 6086, Nokia 6085, Nokia 6300, Nokia 6133, Nokia 6288, Nokia 8800, Nokia 7390, Nokia 7373, Nokia 6151 Nokia SERIES 60 2nd edition: Nokia 6670 Nokia SERIES 60 3rd edition: Nokia 3250, Nokia E50, Nokia E60, Nokia E61, Nokia E62, Nokia E70, Nokia N71, Nokia N73, Nokia N75, Nokia N76, Nokia N80, Nokia N91, Nokia N92, Nokia N95, Nokia N93, Nokia N93i, Nokia 6290, Nokia 5500 (Sport) 2. Sony Ericson Sony Ericsson k600, Sony Ericsson k600i, Sony Ericsson k600c, Sony Ericsson k606i, Sony Ericsson k606c, Sony Ericsson k608i, Sony Ericsson k608c, Sony Ericsson k610i, Sony Ericsson k618i, Sony Ericsson V800, Sony Ericsson w300i, Sony Ericsson w550, Sony Ericsson w550i, Sony Ericsson W200i, Sony Ericsson W600, Sony Ericsson W900, Sony Ericsson W900i, Sony Ericsson W710i, Sony Ericsson W850i, SonyEricssonW810i, Sony Ericsson Z530i, Sony Ericsson Z800 2.15 Summary The platform, programming language and technologies that supports mobile gaming has been discussed in this chapter. Competitors, pricing and similar product analysis also been discussed. The example of interface and summary about a few of Malaysian Java Games also been discussed. CHAPTER 3 METHODOLOGY 3.1 Introduction This chapter will be discussed about the research methodology that has been applied to this project. A software engineering project involves people working with a collection of tools to produce documents and code guided by common goals and strategies. The tools include compilers, debuggers, environments, change management, sources control, project management, document processors, and domain modeling tools. 3.2 Methodology The documents produced include the requirements which define the problem, the user manuals, the test plans, the scenarios, the design which define the architecture, and the implementation plans. The code may deal with objects, data structures, algorithms, methods, modules, protocols, and interface definitions. The strategies are materialized through the collection of the architecture, methods, paradigms, risk analysis, conventions, and a mission statement. These steps together define the cradle-to-grave life cycle of the software product. Managing software engineering projects is tough. The body of methods, rules, postulates, procedures, and processes that are used to manage a software engineering project are collectively referred to as a methodology. 3.3 Project Development Methodology Any methodology is not the way all projects will operate. It is a best fit. There will be variations for very good reasons. That is not to say it is variable at the whim of each team. There needs to be some guidance provided as to what is the sensible pragmatic approach for each project. It is important to differentiate between a project methodology and a system development methodology or software development methodology. A project methodology covers all the things that need to do until the project complete. It is a methodology that the projects should be broken down into phases and there should be a plan in place before each phase begins. Thus, Iterative Development Methodology will apply in this project. It focuses on incremental analysis and design to avoid the high complexity that is introduced by a large upfront analysis and design phase and to allow the adoption to changing requirements. 3.3.1 Methodology Project The methodology selection was based on the research that have done before. Software engineering driven by three main factors: cost, schedule and quality. Agile Game methodology was the methodology that we choose to apply in this project. The UML has been applied at the design stage to ensure that each of the process is clearly defined. 3.3.2 Agile Game Development Agile Methodology focuses on an iterative and incremental approach to the creation of games. Most games are developed in phases; a design phase is followed by a prototype phase, followed by production and then an Alpha/Beta phase at the end. This approach assumes that if we create a big document and plan and develop to that plan, we can create a game that not only meets its budget, schedule and scope, but also be fun. New methodology for game development called Agile. Scrum is a more specific implementation of the agile method: Traditional game development uses a production methodology that spends a lot of front-end time, defining intended functionality, often with implementation of important elements such as mechanics and levels waiting around until the mad scramble at the end. The traditional methodology, often called Waterfall, isn’t dissimilar to an assembly line, with the beginning of the line starting the process of piecing together the product while the end of the line waits to add polish. Agile puts the emphasis on producing demonstrable iterations of a game almost immediately into production, creating prioritized vertical slices that iterate on the most critical elements and features. The method also puts great emphasis on the organization of teams and the relationships therein, as well as the cycles in which teams must plan and carry out their project objectives. Figure 3.1: Project Noise Level (Sources: “www.gdconf.com”) Figure 3.2: Agile Process (Sources: “www.gdconf.com”) Scrum breaks down production into short work cycles called Sprints. At the beginning of each Sprint, the entire project team meets to create objectives and selforganize into small Scrum teams. The Scrum teams are interdisciplinary, with artists working alongside designers working alongside programmers. Figure 3.3 below illustrated about game task. When given a well-defined set of inputs, the same outputs are generated every time. Every task must be completely understood. Figure 3.3: A Defined Process (Sources: “www.gdconf.com”) 3.3.3 Scrum Background The approach was first described by Takeuchi and Nonaka. They noted that projects using small, cross-functional teams historically produce the best results, and likened these high-performing teams to the scrum formation in Rugby. Ken Schwaber used an approach that led to Scrum at his company, Advanced Development Methods, in the early 1990's. At the same time, Jeff Sutherland, John Scumniotales, and Jeff McKenna developed a similar approach at Easel Corporation and were the first to call it Scrum. Sutherland and Schwaber jointly presented a paper describing Scrum at OOPSLA '96 in Austin, its first public appearance. Schwaber and Sutherland collaborated during the following years to merge the above writings, their experiences, and industry best practices into what is now known as Scrum. Although Scrum was intended to be for management of software development projects, it can be used in running maintenance teams, or as a program management approach: Scrum of Scrums. Figure 3.4: A Simple Visualization of Scrum (Sources: “www.gdconf.com”) Figure 3.4 above is illustrated about the visualization of scrum. Game features are broken down into individual tasks by programmers, artists and designers, they then work on these for an iteration of two weeks to a month, accounting for their tasks and to each other in a daily meeting. At the end of the iteration a product review occurs of all work done for that iteration where project directors and publishers can determine how to prioritize the next iteration based on the work done in the latest. 3.3.4 Characteristics of Scrum The characteristics of scrum are: i. A product backlog of prioritized work to be done. ii. Completion of a fixed set of backlog items in a series of short iterations or sprints. iii. A brief daily meeting or scrum, at which progress is explained, upcoming work is described and impediments are raised. iv. A brief sprint planning session in which the backlog items for the sprint will be defined. v. A brief sprint retrospective, at which all team members reflect about the past sprint. Scrum is facilitated by a ScrumMaster, whose primary job is to remove impediments to the ability of the team to deliver the sprint goal. The ScrumMaster is not the leader of the team (as they are self-organising) but acts as a buffer between the team and any distracting influences. Figure 3.5: Productivity Scrum Team (Sources: “www.gdconf.com”) Figure 3.6: Scrum Team Chart (Sources: “www.gdconf.com”) Figure 3.7: Detailed Scrum Team Chart (Sources: “www.gdconf.com”) Scrum enables the creation of self-organizing teams by encouraging colocation of all team members, and verbal communication across all team members and disciplines that are involved in the project. A key principle of Scrum is its recognition that fundamentally empirical challenges cannot be addressed successfully in a traditional predictive or planned manner. As such, Scrum adopts an empirical approach – accepting that the problem cannot be fully understood or defined, focusing instead on maximizing the team's ability to deliver quickly and respond to emerging requirements. Figure 3.8: Scrum Structure (Sources: “www.gdconf.com”) 3.3.5 Scrum Process Figure 3.9: Scrum Process (Sources: “Agile Software Development Methods. Review and Analysis”. Finland : VTT Publication.) 3.3.6 Kirana Mobile Game Development Process Kirana mobile game is developed in phases; pre-game phase (planning and architecture / high level design), development phase and post-game phase. A design phase is followed by a prototype phase, followed by production and then an Alpha/Beta phase at the end. Pre-Game Planning Architecture / High Level Design Development Post-Game Figure 3.10: Phase Flow Chart Pre – Game Phase a. Planning Phase Planning includes the definition of the definition of the system being developed. A Product Backlog is created containing all the requirements that are currently known. At every iteration, the updated Product Backlog is reviewed by the team so as to gain their commitment for the next iteration. b. Architecture / High Level Design Phase In the architecture phase, the high level design of the system including the architecture is planned based on the current items in the Product Backlog. A design review meeting is held to go over the proposals for the implementation and decisions are made on the basis of this review. Development Phase The development phase (also called the game phase) is the agile part of the Scrum approach the different environmental and technical variables (such as time frame, quality, requirements, resources, implementation technologies and tools, and even development methods) identified in Scrum, which may change during the process, are observed and controlled through various scrum practices during the sprints of the development phase. In the development phase, the system is developed in sprints. Sprints are iterative cycles where the functionality is developed or enhanced to produce new increments. Each sprints includes the traditional phase of software development requirements, analysis, designs, evolution and delivery phases. Post-Game Phase The Post-Game phase contains the closure of the release. This phase is entered when an agreement has been made that the environmental variables such as the requirements are completed. In this case, no more items and issues can be found nor can any new ones be invented. The system is now ready for the release and the preparation for this is done during the post-game phase, including the task such as the integration, system testing and documentation. Figure 3.11: Practices and Inputs of Sprint (Sources: “Agile Software Development Methods. Review and Analysis”. Finland : VTT Publication.) Figure 3.12: Sustainable Pace (Sources: “www.gdconf.com”) Figure 3.13: Test-Driven Development (Sources: “www.gdconf.com”) 3.4 Object-Oriented Programming Object-oriented programming (OOP) is a programming paradigm that uses "objects" and their interactions to design applications and computer programs. It is based on several techniques, including inheritance, modularity, polymorphism, and encapsulation. It was not commonly used in mainstream software application development until the early 1990s. Many modern programming languages now support OOP. 3.5 The Unified Modeling Language (UML) The Unified modeling language (UML) provides graphical notation that can be used to model computer systems developed using object-oriented software engineering (OOSE). The focus of OOSE is identifying the problem elements that produce or consume information and describing the relationship among these elements. In OOSE, objects are defined to represent these elements during the system analysis and design process. UML diagrams allow software engineers to indicate the relationship among the objects used to define the system. Most of these objects will need to be implemented using software in the final system. UML is particularly useful when the plan is to implement the system in an object-oriented language like Java. (Lethbridge and Laganiere, 2005) 3.6 Describing an Architecture Using UML All UML diagrams can be useful to describe aspects of the architectural model. The goal of architecture is to describe the system at a very high level, with emphasis on software components and their interfaces. Use case diagrams can provide a good summary of the system from the user’s perspective. Class diagrams can be used to indicate the services offered by components and the main data to be stored. Interaction diagrams can be used to define the protocol used when two components communicate with each other. (Lethbridge and Laganiere, 2005) 3.7 Methodology Justification Two good reasons to use PHP objects: i. It’s a good way to distribute third-party code for reuse. ii. Many programmers, who are used to OO syntax from other languages, won’t feel comfortable unless they can use the same idioms in PHP. (Converse and Park, 2002) How OOP is PHP? i. Single inheritance – PHP allows a class definition to inherit from another class, using the extends clause. Both, member variables and member functions are inherited. ii. Multiple inheritance – PHP offers no support for multiple inheritance and no notion of interface inheritance as in Java. Each class inherits from, at most, one parent class. iii. Constructors – Every class can have one constructor function, which in current (Zend Engine 1) versions of PHP has the same name as the class. In future versions of PHP, which include the Zend Engine 2 parser, the constructor function in each class will be called _construct(). Constructors of parent classes are not automatically called but must be invoked explicility. iv. Destructors – Current versions of PHP (with Zend Engine 1) offer no destructors, largely because deallocation of memory in PHP is not under the programmer’s control. Future versions with Zend Engine 2 will include destructors. v. Encapsulation/access control – There is no support for encapsulation in PHP with Zend Engine 1. All member variables and member functions are public. Zend Engine 2 will offer private member variables. vi. Polymorphism/overloading – PHP supports polymorphism in the sense of allowing instance of subclasses to be used in place of parent instances. The correct member function will be dispatched to at runtime. There is no support for method overloading, where dispatch happens based on the method’s signature – each class only has one member function of a given name. However, PHP’s weak typing and support for variable numbers of arguments makes workarounds possible. a. Early vs. late binding – In PHP values are typed but variables are not, so there is no question about what method to call when the variable is of a different type than the value. The question doesn’t arise, due to PHP being loosely typed, and b. All binding is late. vii. Static (or class) functions – There is no explicit support for class functions, but it is possible to call member functions via the Classname : : function () syntax, without reference to an instance. Such a function can be treated as a class function as long as it does not refer to member variables. viii. Introspection – PHP offers a wide variety of functions here, including the capability to recover class names, member function names, and member variable names from an instance. (Converse and Park, 2002) 3.8 Game Architecture Figure 3.14 is the game architecture for Kirana mobile game. It describes from the aspects of game administration, game state and to the presentation of the game. Figure 3.14: Game Architecture 3.9 Project Schedule The Gantt chart is an effective tool for planning and scheduling operations involving a minimum of dependencies and interrelationships among the activities. The technique is best applied to activities for which time durations are not difficult to estimate, since there is no provision for treatment of uncertainty. On the other hand, the charts are easy to construct and understand, even though they may contain a great amount of information. In general, the charts are easily maintained provided the task requirements are somewhat static. An initial step in development of a Gantt chart may be to specify the tasks or activities making up a project, as shown in the illustration. The amount of time required for each activity is represented as a horizontal bar on the chart, with open triangles designating original start and finish dates in this example. The open start triangle is changed to a filled triangle upon inauguration of the activity, and the bar is filled in with vertical lines to indicate progress and completion. The open finish triangle is also filled upon completion. Slippage times are documented on the chart by broken lines, and the diamond symbols are employed to indicate rescheduled work. The vertical line on the chart is the current-date indicator and indicates present and future status of the project as of that date. The Project Timeline is described in the Project Plan, which is shown with the Gantt chart showing the interdependencies of the various activities in the project. The project plan shows major sections of the project which includes: i. Dependencies. ii. Milestones/Key Dates. iii. Project Deliverables. iv. High-Level Key project activities such as design, development, installation, test and training. v. Start and End Dates of the activities. The implementation timeline defines the tasks within each activity, estimated elapsed time frame and resources assigned to perform each of the tasks. In the execution of the project, some of the tasks are performed concurrent as they are not dependent on other tasks. However, some of the tasks need to be performed sequentially as they depend on the completion of other tasks before they can begin. As with each of our engagements, these project activities will be completed in a professional manner giving due consideration to strict confidentiality. The project schedule can be referred to APPENDIX A and APPENDIX B. 3.10 Summary In this chapter, we have discussed about project methodology. We will apply Agile Game Methodology based on several reasons. We also attached the project schedule in APPENDIX A and APPENDIX B. CHAPTER 4 FINDINGS / RESULT 4.1 Introduction This chapter will focus on the design aspects of the development of mobile game that includes the Java 2 Platform Micro Edition (J2ME) architecture, component, database, functional designs and UML diagrams. The designed is derived by the usage of UML and the evolutionary prototype model. 4.2 Markup, Native OS, or Messaging for Games The gaming experience on mobile devices is clearly still evolving. High end phones with speedy processors, large available memory, and large displays have the potential to provide a platform equal to that of dedicated gaming devices. Phones will likely continue to be limited to the physical constraints of their primary function. As new phone platforms emerge, the majority of them are not likely to have joy sticks or action buttons specifically tailored to game playing. Lower end, massmarket devices will continue to benefit from features that sediment down to the commodity level over time, and present even richer environments for gaming. There are several classes of games, from action game that require rapid responses from the user and from the device, to strategic games like chess or Othello, to casino or card games, to board games such as Monopoly, to role-playing games such as the classic adventure or dungeons and dragons. Any of these games could be played as a single player vs. device or in a head-to-head or even multiplayer mode. Action based games such as Asteroids provide a much more sophisticated and meaningful user experience if architected to run in a local application environment. The local nature of the application allows for “fast twitch” type responses that are simply not possible to accomplish over a network. Graphics performance can be optimized by redrawing only the portions of the screen that require updating, and every key press event can be captured and bound to an action. Furthermore, when the user exits the application, the game can stay in a paused state, and be resumed exactly at the point of suspension. The application may also interact with the browser and/or messaging applications in the handset. Even if the game does not require network access to operate, network resources could be used to provide new levels of play, upload high scores, provide “help” files, chat, and track usage and adoption. If the application is to be targeted at a variety of different devices, and the resources are available, the only way to ensure near universal availability is to develop discrete executable versions of the game for every targeted device. On the other hand, an application that does not require constant or rapid interaction from the end user may be more elegantly architected to run within the context of a browser. Consider a strategy game such as chess, or even bridge. The results of each round of action in the game are not dependent upon how quickly decisions are made, but more on the long-term impact of these decisions. In these cases, network latency is perfectly acceptable, and a game played wholly within the context of the browser on a device may not only be feasible, but desirable, from the standpoint of both the user and the application developer. (Longoria, 2004) 4.3 Designing J2ME Applications: MIDP and UI Design The Java 2 Platform, Micro Edition (J2ME) is the Java platform for consumer and embedded devices such as mobile phones, PDAs, television set-top boxes, and other embedded devices. Like its counterparts – Java 2 Platform, Enterprise Edition (J2EE platform), Java 2 Platform, Standard Edition (J2SE platform), and Java Card – the J2ME platform is a set of standard Java APIs defined through the Java Community Process platform. The Java Community Process program uses expert groups that include leading manufacturers, software vendors, and service providers to create the standard APIs. (Longoria, 2004) 4.3.1 Java 2 Platform Micro Edition (J2ME) Architecture The J2ME platform includes a flexible user interface, a robust security model, a broad range of built-in network protocols, and support for both networked and disconnected applications. With the J2ME platform, applications are written once for a wide range of devices, are downloaded dynamically, and leverage each device’s native capabilities. The J2ME platform architecture defines configurations, profile, and optional packages as elements for building complete Java runtime environments that meet the requirements for a broad range of devices and target markets. Figure 4.1 shows the relationships between these elements. Each combination is optimized for the memory, processing power, and I/O capabilities of a related category of devices. The result is a common Java platform that fully leverages each type of device to deliver a rich user experience. (Longoria, 2004) Figure 4.1: Java 2 Platform Edition Architecture (Sources: “Designing Software for the Mobile Context A Practitioner’s Guide”. USA : Springer) 4.3.2 The Application Environment There are a number of significant technology questions that must be answered when developing applications for 3G, above and beyond simple device constrains. The most immediate question is the environment in which an application will execute. The environment can be defined on a number of different dimensions, some of which are in the control of the developer, while some constraints are placed either by the device or the network on which it runs. Developers can build applications that run as a local executable on the device, with or without access to network resources. A simple single player game would be a local application not likely to require access to network resources. Alternatively, applications can be structured a s markup or browser-based where processing and logic are all controlled on a server, and presentation and interaction are accomplished in a pre-installed browser. Perhaps the most feature-rich applications built for 3G will be those built to run locally on the device. The 3G environment represents a step forward for developers as operating systems become more robust and powerful and over-the-air download mechanisms for applications are widely available. In addition, devices will also continue to ship with some set of pre-loaded applications such as messaging clients, browsers, phone books, and games which may (or may not) be possible to supplement or replace. This class of application will run on the native operating system (OS), and when building programs to run natively, developers have little choice over the programming language that must be used. Tools, sample code, compilers, and the device properties for native applications usually must come directly from the device manufacturer and the application must be tested and ported to the specific device. (Longoria, 2004) 4.4 Component Design Component Design is divided into two sections that include the class and sequence diagrams. The following use case diagrams illustrate user / player and system administrators use case diagrams. Figure 4.2: Use Case for Mobile User Figure 4.3: Use Case for Web User Figure 4.4: Use Case for Web Admin Figure 4.5: Use Case Diagram for Game Writers Figure 4.6: Use Case Diagram for Game Producer Figure 4.7: Use Case Diagram for Game Artist Figure 4.8: Use Case Diagram for Game Designer Figure 4.9: Use Case Diagram for Game Developer Figure 4.10: Use Case Diagram for Level Designer Figure 4.11: Use Case Diagram for Game Programmers 4.4.1 Use Case Description Use-case diagrams graphically depict system behavior (use cases). These diagrams present a high level view of how the system is used as viewed from an outsider’s (actor’s) perspective. A use-case diagram may depict all or some of the use cases of a system. A use-case diagram can contain: a. actors (“things” outside the system) b. use cases (system boundaries identifying what the system should do) c. interactions or relationships between actors and use cases in the system including the associations and generalizations Use-case diagrams can be used during analysis to capture the system requirements and to understand how the system should work. During the design phase, we can use use-case diagrams to specify the behavior of the system as implemented. Figure 4.2 illustrated the Use Case for Mobile User. This use case consists of one actor, user or player. This use case describes about the interaction between users with all process through mobile phone. Firstly, user should register using short message service (SMS). Then, they can download game through their mobile phone. After the downloading process finish, user can play the game. Then, after user complete a level, they will get instruction whether they want to submit their score to server or not. If they wish to submit their score, their credit, RM0.50 will be deducted and they have a chance to compete with other player and stand a chance to win a lot of prizes. All top scores will be announced through our web site. Figure 4.3 illustrated the Use Case for Web User. This use case consists of one actor, user or player. This use case describes the interaction between users with all process that involving them with our web site. User will fill in the registration form to sign up. Then, they will get confirmation through email and get their id and password. They will have to verify the id and password and can log in to the web site. After that, finish surfing through the web site, they have to log out from the web site. Figure 4.4 illustrated the Use Case for Web Admin. This use case consists of one actor, admin. This use case describes about the interaction between admin with the system. Admin have to login to enter the system. They have right to update score, update user record and information. All top scores will be announced through the web site. Admin will update the top scores ranking everyday. Admin will manage user records. The latest news about our game or other information will be announced through the web site. Admin will in charge to make the announcement. Figure 4.5 illustrated the Use Case for Game Writers. This use case consists of one actor, writer. This use case describes about the writer’s responsibility on game development. Writers will write game and dialog for Non Player Character (NPC). Figure 4.6 illustrated the Use Case for Game Producer. This use case consists of one actor, producer. This use case describes about the producer’s responsibility on game development. Producer is the one who negotiating contracts with team work, developing and maintaining schedules, developing and maintaining budgets. Producer will arrange beta testing for the game. Figure 4.7 illustrated the Use Case for Game Artist. This use case consists of one actor, artist. This use case describes about the artist’s responsibility on game development. Firstly, the game artist will develop volumes of sketches. Then, they will develop game asset and creates visual art. Figure 4.8 illustrated the Use Case for Game Designers. This use case consists of one actor, designer. This use case describes about the designer’s responsibility on game development. Game designer will design game, develops layout, concept and gameplay. They also will implement and modify game design. Figure 4.9 illustrated the Use Case for Game Developer. This use case consists of one actor, developer. This use case describes about the developer’s responsibility on game development. Game Developer is the one who develop game and have rights to give approval for game idea. Figure 4.10 illustrated the Use Case for Level Designers. This use case consists of one actor, level designer. This use case describes about the level designer’s responsibility on game development. Level Designer is a person who creates levels and advanced levels, challengers or missions. They also produce scenarios and altering game rules. Figure 4.11 illustrated the Use Case for Game Programmers. This use case consists of one actor, programmer. This use case describes about the programmer’s responsibility on game development. Game Programmers is an important position on game development. They will develop prototypes and technical framework. The game source code will be written by the programmers. 4.4.2 Sequence Diagram Sequence Diagram is the diagram that shows the sequence of functions in a system, derived from use case. The sequence diagrams describe the system activity in completing a relevant task to meet user requirement. The processes include interconnection between components or modules that ensure that the queries are responded to promptly. Sequence diagram depicts the sequence of actions that occur in a system. The invocation of methods in each object, and the order in which the invocation occurs is captured in a Sequence diagram. This makes the Sequence diagram a very useful tool to easily represent the dynamic behavior of a system. A Sequence diagram is two-dimensional in nature. On the horizontal axis, it shows the life of the object that it represents, while on the vertical axis, it shows the sequence of the creation or invocation of these objects. Because it uses class name and object name references, the Sequence diagram is very useful in elaborating and detailing the dynamic design and the sequence and origin of invocation of objects. Hence, the Sequence diagram is one of the most widely used dynamic diagrams in UML. The sequence diagrams figure for all process is documented and can be referred to APPENDIX E. 4.4.3 Class Diagram A class diagram is a picture for describing generic descriptions of possible systems. Class diagrams and collaboration diagrams are alternate representations of object models. Class diagrams contain classes and object diagrams contain objects, but it is possible to mix classes and objects when dealing with various kinds of metadata, so the separation is not rigid. Class diagrams are more prevalent than object diagrams. Normally we will build class diagrams plus occasional object diagrams illustrating complicated data structures or message-passing structures. Class diagrams contain icons representing classes, interfaces, and their relationships. We can create one or more class diagrams to depict the classes at the top level of the current model; such class diagrams are themselves contained by the top level of the current model. We can also create one or more class diagrams to depict classes contained by each package in your model; such class diagrams are themselves contained by the package enclosing the classes they depict; the icons representing logical packages and classes in class diagrams. The class diagrams figure is documented and can be referred to APPENDIX F. 4.4.4 State-Chart Diagram State chart diagrams model the dynamic behavior of individual classes or any other kind of object. They show the sequences of states that an object goes through, the events that cause a transition from one state or activity to another and the actions that result from a state or activity change. State chart diagrams are closely related to activity diagrams. The main difference between the two diagrams is state chart diagrams are state centric, while activity diagrams are activity centric. A state chart diagram is typically used to model the discrete stages of an object’s lifetime, whereas an activity diagram is better suited to model the sequence of activities in a process. Each state represents a named condition during the life of an object during which it satisfies some condition or waits for some event. A state chart diagram typically contains one start state and multiple end states. Transitions connect the various states on the diagram. As with activity diagrams, decisions, synchronizations, and activities may also appear on state chart diagrams. The state chart diagrams figure is documented and can be referred to APPENDIX G. 4.4.5 Activity Diagram Activity diagrams provide a way to model the workflow of a business process or a way to model a class operation. These diagrams are very similar to a flowchart because you can model a workflow from activity to activity or from activity to state. Activity diagrams can model many different types of workflows. For example, a company could use activity diagrams to model the flow for an approval of orders or model the paper trail of invoices. An accounting firm could use activity diagrams to model any number of financial transactions. A software company could use activity diagrams to model part of a software development process. An activity diagram is considered a special case of a state machine in which most of the states are activities and most of the transitions are implicitly triggered by completion of the actions in the source activities. The main difference between activity diagrams and state charts is activity diagrams are activity centric, while state charts are state centric. An activity diagram is typically used for modeling the sequence of activities in a process, whereas a state chart is better suited to model the discrete stages of an object’s lifetime. The activity diagrams figure is documented and can be referred to APPENDIX H. 4.5 Web Interface Figure 4.12 is a screen shot for the web interface. Our company provides a website. The website will be a platform to all players. Figure 4.12: Web Interface 4.6 Mobile Game Interface Figure 4.13 (a) and 4.13 (b) is a screen shot for the Kirana Mobile Game interface. Figure 4.13 (a): Kirana Mobile Game Interface Figure 4.13 (b): Kirana Mobile Game Interface 4.7 Game Documentation Documentation and information organization are an integral part of mobile game construction. Currently, game programmers and designers usually generate all the documentation associated with a game. Documenting a mobile game idea is the backbone on which the rest of the mobile game production rests. Game documentation is also used as a reference tool for others on a mobile game design team, so the importance of usable and understandable documents becomes apparent. The game documentation is documented and can be referred to APPENDIX I. 4.8 Mobile Game Testing Each mobile handset released which supports J2ME has a reference emulator for the developer to test his application or a game. Emulators can only be trusted for 10% of assurance. Most leading publishers and developers go for real device testing for their mobile games. We have done a real device testing. i. Testing: Functionality Testing ii. Environmental Testing iii. Performance Testing Testing a mobile application or game is mandatory to ensure, there is no crash or inconvenience for players. To test a game, it is not enough to do it on emulators and not all devices have emulators. So, we have arranged game testing with users. There are 10 users that involved in this process. The user testing has been done and the result or feedback from the user is documented and can be referred to APPENDIX J. 4.9 Summary This chapter has been discussed about J2ME architecture, component design, use case description, sequence diagram, activity diagram and state chart diagram. The game documentation and mobile game testing and results also has been discusses in this chapter and can be referred to appendix to view the full of the results and the game documentation. CHAPTER 5 BUSINESS PLAN 5.1 Executive Summary Kirana is a creative and interactive mobile game. Our core focus is the development of mobile games for java platform. Kirana is the adventures of Puteri Galuh Cendera Kirana and his companions in this role-playing rendition of the ancient epics of Malaysia and Indonesia literature, Hikayat Panji Semirang. The journeys will take player through a lot of challenges to complete every mission in every level. Kirana was different than other games in Malaysia because it gives an opportunity to player to download accessories and weapons to increase power in a certain level. We also offer the cheapest price among the competitors. Initially, our target market will be the teenagers. Our game engine provides entertainment applications and technologies that support multiple wireless handsets, servicing wireless carriers, aggregators, mobile phone manufacturers, media companies and content developers worldwide. Our core focus is the development of mobile games for J2ME platform. We will offer the cheapest price in Malaysia. Player can change the game’s character depending on the situation at every level. Player’s score will upload automatically by the system and will be awarded for at every level. As the world is evolve, the advancement in wireless technology is going through rapid improvement. One of the areas that will attract millions dollar revenue is entertainment in the mobile industry. Kirana sees this as an open opportunity to explore an already savvy market in mobile phone sector in Malaysia. Moreover, as advanced handsets are becoming more accessible to ordinary consumer coupled with the introduction of MMS (Multimedia Messaging Services) and implementation of 3G, the mobile game market will increase rapidly especially in Asia such as in Hong Kong, Taiwan, China and Singapore not to mention Malaysia as well as in the European countries. In future, when data transfer rate is enhanced with new generation networks, Kirana has plans to develop the massively multiplayer game (MMG) for mobile devices. This will offer our user with more interactive environment where there’s versatility and excitement compare to solo games. Unlike solo games, MMG offers player a wider gaming scope when they can communicate and interact with other player at a distance through the air. 5.2 Industry Background: Current Status 1. Industry Trends According to IDC Malaysia research manager Huei Min Lee, the mobile games market in Malaysia is largely confined to single-player games. She also noted that Java games gained traction last year. IDC recorded that in 2005, the amount consumers spent on mobile games content grew 36.2% have reach RM18.62mil. 2. Industry Size In Malaysia, the number of mobile user increased gradually from 8.9 million in 2002 to 13.4 million in 2006. Although the number of mobile users may not reflect the number of mobile games player, but there is ample room to convince and convert the non-player to be players looking at the fact that the trend of growth reflect more on the younger generations. We ensure our games are not complicated, easy to adapt and fun to play. 3. Industry Attractiveness About 15 years ago, the market was dominated by hardcore player who played hardcore games on their PCs or consoles. And today, we think what happened is that the public has caught on to the fact that games are interesting. Add in the social connections that can be made and you can see why we're attracting a much larger mass audience. For example, you'll find a huge number of women playing casual web games. 4. Industry Forecast At the other ends of the spectrum, a lot of adults who were hardcore player when they were younger and haven't got much time to play anymore. So, they prefer games that they can enjoy in shorter sessions. And clearly, the youth market is growing up and adopting these new platforms and they're also playing a lot of casual games on their mobile phones. (Ref 11) Table 5.1: Content that mobile phone users expect to be accessing in 12 month's time (Sources: “http://isuppli.com”) Asia Pacific Europe Games North South America America (%) (%) (%) (%) 49 15 11 30 5.3 Industry Background: Future Trends 1. Massive Multiplayer Mobile Game Development The 3rd generation games with AI computer players are getting outdated today and the global multiplayer is getting its value. For this reason Online Massive Multiplayer Mobile Game Development is introduced, where players play against many other people around the world with their mobile phones. Definitely in a few years massive multiplayer mobile games will hit the market like the PC game scenario. Today, there is very little number of global multiplayer mobile games available in the market like Find4 by Smackall.com. 2. Interactive Server This Massive Multiplayer Mobile Game is using the GPRS connection for the networking with a central server acting as router. It is almost the same as Nokia's SNAP technology. This trend will soon get popular around the mobile game players. Smackall.com has developed the Massive Multiplayer Mobile Game SDK for FIND4 game. A customize SDK and the server is now available for sale. 3. Advertising/Promoting Through Mobile Games Advertising and promoting a product is totally getting changed to new concept. Consumer product based companies are advertising their products through the PC games and with other entertainment products. As the mobile gaming have a very market and the advertisements reach very closer to the customers. It is very helpful for mobile game developer to make their games cost effectiveness and earn big revenue from them. 4. Promoting Cinemas/Movies through Mobile Games Nowadays, film promoters look for publishing their cinemas/movies through other entertainment Medias. For this reason many producers and film makers come up for developing a game based on the movie. This type of publishing or promoting will reach the right customer and the right age group which the film is aiming at. So that today's film directors are promoting their films through the mobile games with the help of custom mobile game developers. Games are developed based on the characters from the movie. These types of games will reach the customer soon and bring a good result as the character is familiar and the game story resembles the one they are impressed on. 5. Advertising New Products through Mobile Games Mobile Game Development is moving towards advertising market to make it cost effective and earn more revenue from each game. Some consumer product based companies have started investing on games. For example a famous painkiller in India has advertised on a mobile game in which they player uses their product for injuries. This type of advertising has become familiar in mobile game industries today. Soon there will be running displays in the bottom of the screen to hold advertisements and flash news. 6. 3d Real World Scenario Mobile Games Today in mobile game development there is lot of restrictions and minimal resources available for game development, like CPU and memory in the device. The mobile gaming industry has just reached 3D gaming and soon there will be real world scenario games on mobile phones. (Ref 12) 5.4 General Description of the Product Kirana is a strategy conceptualized mobile game adapted from IndoMalaysian literature folk story, Hikayat Panji Semirang. It’s an action adventure game that lead player to historical era of Java sovereignty. The game will be developed by Flash and using J2ME platform. The game comprises of action skill on fighting, item collection and cross word puzzle solution. The adventure goes on multiple roles from main character, Tuan Puteri Galuh Cendera Kirana or Raden Inu Kertapi which at different stage requires player to change role as main character friends. In this epic adventure, the main character, Tuan Puteri Galuh Cendera Kirana will cloak as a hero character called Panji Semirang Asmaratanka while second character Raden Inu Kertapi will cloak as Panji Jayeng Kesuma based from the original storyline. In order to create a unique and interesting, the game design had used original approach concept that is similar with movie based game like Harry Potter or Godfather from console game. The game offer player options to change character at every level in order to defeat the opponent. The story line itself is fully adapted from the original story, Hikayat Panji Semirang to the detail that the location of each level is similar to original story. Therefore, the character is changeable at each level to make it real as the original characters going through in the original story With the number of mobile gamers around the world expected to reach 220 million by 2009, the mobile gaming business is projected to expand to higher levels and constitute a bigger portion of the profit pie for the cellular carriers and handset makers. Mobile games can be classified into three broad categories: embedded games, sms games and browser games. 5.4.1 Product Description 1. Among these three categories, browser games are today's most popular type of mobile games for their innovative and multimedia-rich content, appealing presentation, and lower cost of gaming compared to SMS games. 2. So, we will combine two categories: SMS games and browser games. Users will sent SMS and get SMS from the server. Then, they will get a link that will connect them to the game. 3. The process of downloading the game will start immediately after the users connect the link through GPRS. It just takes a minute to download the game. Then, the user can start play the game. 5.5 Business Goals and Growth Potential of the Venture According to Juniper Research, by 2011, worldwide mobile games market is expected to generate cumulative revenues of US$56.9billion with 2.6 billion wireless subscribers playing games, annually. As below, breakdown of expected revenues to be generated from some major regions Figure 5.1: Expected revenues to be generated from some major regions (Sources: “http://www.isppli.com”) Besides, i-Suppli forecasts subscriber growth will drop to 9.6 per cent in 2008, to 7 per cent in 2009 and to 5.7 per cent in 2010. However, it also stated that subscriber growth is slowing while demand for mobile content is still growing. The firm also expects the revenues to grow from $7.7bn in 2005 to $36bn in 2010. (Ref 11) 5.5.1 Growth Potential 1. No doubt we start with various types of application for the mobile industry; Mobile Gaming is the preeminent approach for us to set a foothold in this arena. 2. We find that the consistent growth of mobile users against population in Malaysia is another positive factor that will influence the growth of mobile game players. (Please refer Figure 5.2) 3. In Malaysia, the number of mobile user increased gradually from 8.9 million in 2002 to 13.4 million in 2006. Although the number of mobile users may not reflect the number of mobile games players, but there is ample room to convince and convert the non-players to be players looking at the fact that the trend of growth reflect more on the younger generations. We ensure our games are not complicated, easy to adapt and fun to play. 4. As the globe is evolving everyday, the technology and advancement in wireless arena is going through rapid improvement. One of the areas that will attract millions dollar revenue is entertainment in the mobile industry. 5. We can see that there’s a vast growth in number of mobile game developers in countries from the West as well as players from Hong Kong and Japan. Although there are many mobile game developers globally, but it has yet to be taken seriously in our local market. Figure 5.2: Growth of Mobile Users against Population in Malaysia (Sources: “http://www.isppli.com”) 5.5.2 Situation Analysis A recent survey by Nokia has thrown up some information about the changing habits of mobile game players: The mobile phone player surveyed frequently play mobile games with the vast majority (80%) playing at least once a week and 34% playing every day. The average length of a session is 28 minutes with India (39 minutes), United States (31 minutes) and Thailand (29 minutes) playing longer than average. Mobile phone games are played on the move (61%) almost as much as they are played at home (62%). Also, mobile phone player are making the most of their idle time with 56% preferring to play while waiting. The survey also reveals that players preferred the richer experience of Nokia's next generation mobile games, particularly following game trials. The survey was conducted by Nielsen Entertainment, and saw 1,800 people surveyed in 6 countries. These research results further validate that consumers are looking to the next generation of mobile gaming to meet their gaming needs. Research firm Informa Telecoms & Media forecasts that the market for mobile content will be worth $42.8 billion (U.S.) by the year 2010, when mobile gaming is forecast to be worth $11.2 billion (U.S.), with an estimated 15 percent of handset users expected to download and play a game on their handset by 2010. (Ref 13) 5.5.3 The Mobile Game Markets Two business areas: Emerging mobile game markets are closely related to two existing business areas: 1. Mobile telecommunications content business and 2. Computer game publishing business. In both of these content creation areas a similar value creation pattern exists. As any content business, it has four main operational phases: content creation, content aggregation, content marketing and content distribution. Figure 5.3: Mobile Game Business Area (Sources: “http://www.acten.net”) The key actors in the markets are game developer companies and game publishers. In the traditional game publishing business, game distributors carry out marketing activities and sales take place mainly in retail outlets. In mobile game business, telecom operators and online/mobile portals generate most of the sales and implement to a great extent the marketing activities. In some cases (e.g. N-Gage cartridges), mobile games are also sold in retail stores. Consumers (the player) act as the key revenue source for the whole industry – and the money they generate with their game title purchases is distributed to rest of the industry value chain/web. Figure 5.4 below presents the game industry value chain and the main actor groups in the markets. Figure 5.4: Traditional and mobile game value (Sources: “http://www.acten.net”) To fully understand the mobile game landscape, you must understand how the money flows. Figure 5.5 shows the mobile value chain. Figure 5.5: The Mobile Value Chain (Sources: “http://www.javaworld.com”) 5.5.4 Business Model and Workflow As in any other business, the key objective for a game business-focused company is to make profits of its operations. Profits are simply created when companies’ revenues exceed to costs carried out to obtain these. Within the value chain (see Figure 5.4) for mobile gaming business the key revenue source for the industry as whole are the consumers and their willingness to purchase mobile game products. Consumers either pay a flat fee for their product or they subscribe to a monthly scheme of payments. Additional revenue sources are various kinds of advertising and sponsorship deals. Advertising can take place either at the place of distribution (online, mobile, retail) or at the mobile game itself. This kind of sponsoring has similar features as television shows and movie product placements. The game might take place in the preferred location of the brand or the brand may be brought to the attention to the game player as is already very commonly done in motion picture. Movies and game design do actually have very much in common as to their production methodology. It is more and more common that movies, PC/console games, web sites and mobile games consist of similar elements and promote the same sponsors/advertisers throughout the digital medium. Key issues from the revenue perspective are what kind of share each actor group takes of the consumer payments. Currently, publishers take 50-60 %, mobile operators 20-25 %, licensors 15-20 % and the game developers take 10-15 % of the total revenues. Advertising and sponsorship deals may naturally change the distribution ratios. We will generate our revenue from the user monthly subscription. User can download accessories and weapons to increase their power. So, we will get more revenue from this process. Mobile game development is moving towards advertising market to make it cost effective and earn more revenue from each game. We will try to advertise consumer product in our game. For example, a painkiller product. Kirana will apply the subscription business model. The subscription model creates a better long-term business. Figure 5.6: Subscription Vs Per-Download Business Model 5.6 Uniqueness of the Product / Value to Customers i. Simple user interface - We will provide the simple and interactive user interface to make sure it is easy for player to use the interactive features of the game. ii. Pricing – Pricing is available to suit just about everyone’s needs. For the beginning, we will offer only RM 1.00 for monthly registration and RM 3.00 for download a game. iii. Upload Score Function - Tournament game are mobile games which have the upload score function. With the ability to upload scores and battle it out with fellow gamer sans wires, people are starting to perceive mobile phones to be more than just for calling and messaging another person. iv. Prizes – Player can win prizes. To win prizes, first, they have to register as a member. Download and play our tournament game to earn points by uploading your score. Once they have gathered enough points, they can redeem points. 5.6.1 Competitive Edge Kirana’s competitive edge is that we already have a significant number of high quality relationships with Dewan Bahasa dan Pustaka (DBP) and Radio Televisyen Malaysia (RTM). So, it will help us to promote and advertise this game through comics and animation on mass media. Beside that, our competitive edge is our positioning as strategic ally with our clients, who are clients more than customers. By building a business based on long-standing relationships with satisfied clients, we simultaneously build defenses against competition. The longer the relationship stands, the more we help our clients understand what we offer them. 5.6.2 Competitor Analysis Our research and experience has indicated that our target market segments think about price, but would buy based on quality service if the offering were properly presented and very competitive. Table 5.2: Pricing Analysis 5.6.3 Name of Company Download Fees (monthly) Ozura Sdn Bhd RM 5.00 RM 2.50 UnrealMind Interactive Berhad RM 5.00 RM10.00 Our Company (Kirana) RM 3.00 RM 1.00 SWOT Analysis for Competitors 1. Ozura Sdn Bhd Strength Their games are currently distributed through thousands of partners in over 130 countries and this distribution network is still expanding rapidly. Ozura has offices in Singapore, Malaysia, Australia, Indonesia, and Thailand. Weaknesses Most of their games are pay per download. Pay per download just a shortterm business. Opportunities Ozura and Maxis Communication Berhad have jointly launched the world’s first mobile trading card game, “Master of Maya” in MaxGames, a tournament based mobile gaming and community portal. So, it gives an opportunity to Ozura to get more customers and the maxis user to subscribe to their games. Threat More new comers come to enter the barrier. 2. UnrealMind Interactive Berhad Strength Besides Malaysia, the Company has also established market presence in Indonesia, Brunei, Vietnam and Singapore. This enables the Company to distribute and publish its mobile content and services to mobile users in all those countries. Weaknesses Their monthly subscription fee is RM10.00. It was the highest monthly subscription fees among other competitors. Opportunities This Company had launched the Shabox JUMBO Plan. It is the first economic plan in Malaysia designed to give customer great discounts. Customer will be given 10 Shapoints when they subscribe to the JUMBO Plan and during the monthly subscription renewal. Threat More new comers come to enter the barrier. 5.7 Marketing Strategy Target customer group The typical customer profile for the company falls into two separate categories: i. Teenagers ii. Adult 5.7.1 Method to Identify and Contacting Potential Customers Based on several reasons, younger users or the youth market are more likely to be comfortable with the intrusive nature of mobile communications. Youngsters have more time for playing games and sending frivolous or flirtatious messages. Take for example, the Japanese market; it is teenagers who are driving the market. In Korea, although teenagers have lower disposable incomes than older age groups, they are spending around three times more per user on mobile data services. We did not target the older generation because lack of interest and they focus more on other things. We didn’t target the children. They are our potential future subscribers. Not now, but until they are financially dependent. So, we will focus on the specific market segments whose needs and seeking for an alternative way of advertising with a minimal budget but effective. Focusing on targeted segments is the key to our future. So, our approach towards target market segment will be based on G E L: • Great Customer • Easy Customer • Long lasting Customer So, we will aims for easy and long lasting customers. Therefore, our focus and marketing message will be the primary and secondary school students. We will develop our message, communicate it, and fulfill our commitment to excellence. 5.7.2 Sales strategy Sales strategy for Kirana is simple and straight forward: customer satisfaction. Happy customers will be repeat customers and they will provide referrals to new customers. iv. Upload Game – Upload game to the server. So, users will sent SMS and get SMS from the server. Then, they will get a link that will connect them to the game. v. Upload Score Function - Tournament game are mobile games which have the upload score function. vi. Advertising - Advertising and promoting a product is totally getting changed to new concept. As the mobile gaming have a very market and the advertisements reach very closer to the customers. vii. Advertising New Products through Mobile Games – Deal with some consumer product based companies to start investing on games. For example a famous painkiller in India has advertised on a mobile game in which they player uses their product for injuries. This type of advertising has become familiar in mobile game industries today. 5.7.3 Distribution Strategy Our distribution strategies are: 1. Advertising through internet, newspaper, radio, TV and magazines. 2. Through promotion booth during any related exhibition. 3. Put up a survey thru internet and by mailing – to understand customer needs. 4. On-line technical support (24 hours) – create customer support. Beside that, customers can call our technical support hotline day or night and speak live with one of our experts. 5. Make a road tours to understand customer needs. 5.7.4 Estimated Market Share We believe we can achieve a market share of 10% to 15% in Malaysian market. We target more Malay will download this game because it is based on the Indonesian and Malaysian epics. Figure 5.7: Percentage Distribution of Hand phone Subscriber by Ethnic Origin (Sources: “Malaysia Commission and Multimedia Communication”) 5.7.5 Pricing Strategy We offer the cheapest price among the competitors. We only charge RM 3.00 per download and RM1.00 for registration fees. All competitors in Malaysia charged RM5.00 per download. We will reduce the price more than 30% from normal price. 5.7.6 Advertising Plan and Promotions Strategy At the beginning, we will have to select a good “media mix” to enhance the business as the reputation of the web has not yet been established. The medium that we will select in which to place its commercial will be TV and radio. Our potential customers must see a newspaper advertisement, hear a radio spot, and see a TV commercial to reinforce the company’s message at the outset of business. The impact on these potential consumers will be far greater if our company uses the “media-mix” rather than just one of these media. Then, we will advertise the game through digital advertising. People that enter the mall will automatically stop to see the big screen. It will grab customer attention more easily than advertising through traditional way. In order to create a mobile games environment in Malaysia among the teenagers and adult, we will promote our game through our web site, email and advertise it on mass media. We will offer the cheapest price among the competitors. Beside that, we will give a lot of prizes if the players have completed a level of the game. We also will go through direct mail. We must radically improve our direct mail efforts, reaching our established customers with updates and prizes. 5.7.7 Sales Programs Our sales programs are: i. Direct mail: Use great detail to describe our game’s news and updates here. ii. SMS: Send SMS to customers to give any information about game. 5.7.8 Marketing Analysis A quick survey was done by Sharifah Aquila Alhabshi bt Syed Sagaff in March 2008. The result as stated: Survey was done on 150 teenagers and 150 young adults located in Johor Bahru. Figure 5.8: Gender of the Respondents Figure 5.8 shows the percentage of gender respondents. From the pie chart, it shows that the highest percentage is male which about 56 percent, while female only contributed about 44 percent. Play Mobile Game 20% Yes No 80% Figure 5.9: User that Play Mobile Game Figure 5.9 shows the percentage of the user that plays mobile game. 80% of the respondents have played mobile games. Download Mobile Game 30% Yes No 70% Figure 5.10: User that Download Mobile Game Figure 5.10 shows the percentage of user that downloads mobile game. 70% of the respondents had experiences download a mobile game. While 20% of them have no experiences download a mobile game. Mobile Game Absorption in Malaysia 16% Yes No 84% Figure 5.11: Mobile Game Absorption in Malaysia Figure 5.11 shows the percentage of mobile game absorption in Malaysia. From the survey, 84% of the respondents agreed that Malaysian people well accept for mobile games. User Interest to Download Game 40% Yes No 60% Figure 5.12: User Interest to Download Mobile Game Figure 5.12 shows the percentage of user interest to download mobile game. 60% of the respondents have interest to download a mobile game, while 40% of the respondents have no interest to download. Affordable Price for Mobile Games 8% 12% RM 3.00 RM 3.50 RM 4.00 12% RM 5.00 68% Figure 5.13: Affordable Price of Mobile Games Figure 5.13 shows the percentage of price that been chosen by the respondents. 68% of the respondents agreed the affordable price for mobile games is RM3.00, while 12% of the respondents agreed the affordable price for mobile games is RM3.50, another 12% of the respondents agreed the affordable price for mobile games is RM4.00 and 8% 12% of the respondents agreed the affordable price for mobile games is RM5.00. Mobile Phone that Support ed by the GPRS Services 16% Yes No 84% Figure 5.14: Mobile phone that Supported by the GPRS Services Figure 5.14 shows the percentage of user’s mobile phone that supported by the GPRS Services. 84% of the respondent’s hand phone supported by the GPRS Services. User Acceptance for Strategy Games 12% Yes No 88% Figure 5.15: User Acceptance for Strategy Games Figure 5.15 shows the percentage of user acceptance for strategy games. 88% of the respondents agreed the strategy game is well accepted than other games. Only 12% of them were disagreed. Download Acessories 24% Yes No 76% Figure 5.16: User that has Interest to Download Accessories Figure 5.16 shows the percentage of user that has interest to download accessories. 76% have interest to download accessories to increase power. Type of Games 20 15 No of Interest 10 5 0 Action Puzzle Casino Racing RPG Sports Strategy Type Figure 5.17: Type of Games Figure 5.17 shows no of user interest in various types of games. 5 of the respondents like to play action game. 4 of the respondents like to play puzzle, 2 of the respondents like to play casino, 8 of the respondents like to play racing, 2 of the respondents like to play RPG, 10 of the respondents like to play sports and 20 of the respondents like to play strategy. 5.8 Management Our management team consists of individuals whose background in Computer Science and Information Technology. Management team is very important. Potential investment sources place a tremendous of importance on the team of managers that will be making crucial day-to-day decisions. 5.8.1 Management Team Gaps We agree that the most obvious weakness at this point is the lack of seasoned professional management with experience. This is what the investors call the gray haired factor. We will be looking to add more experience to the team as we build our administrative and financial capabilities. 5.8.2 Organizational Structure We need an agile organizational structure that recognizes the need for a smooth flow of ideas and implementation between designer, programmer, sales, marketing, website and game development. MANAGING DIRECTOR MARKETING FINANCIAL MANAGEMENT TECHNICAL Figure 5.18: Organizational Chart 1. Manager – Managing recruitment exercise, training and business needs of the company. 2. Management (Trainee / Staff) – Human Resource. 3. Marketing – Make advertising to gain more customers. 4. Financial – Look after all expenditure goes in and out, and company’s account. 5. Technical – Maintain server, hardware and system. Graphic designer and programmer. 5.8.3 Technopreneur Capabilities Our technical expertise and capabilities are: 1. Technical Expertise i. With a strong interactive multimedia background. Deliver an interactive game’s content. ii. Build a strong relation with strong mobile knowledge. iii. Good in hardware and maintenance the hardware. 2. Experience and Ability 5.8.4 a. Closed relation with TELCO. b. Aware and quick response towards business world. Support Team i. Advisors, Consultants, Professional Support Resources Currently, we are getting a technical and non-technical support from UTM and established businessman. There are: Technical: En Hishamuddin Bin Mohd Amin En Abdullah Bin Bade PM Dr. Dzulkifli Bin Mohammad Non- Technical: PM Dr. Mohd Hassan Bin Mohd Osman ii. How these resources will be used The resources stated above are very useful and helpful to the projects. On technical aspect, En Hishamuddin Bin Mohd Amin, En Abdullah Bin Bade and Prof Dr. Dzulkifli Bin Mohamad will be a consultant in scheduling solution. En Hishamuddin Bin Mohd Amin also an expert in Flash. Besides that, he will be the consultant on the hardware and installation of the systems. Dr. Mohd Hassan Bin Mohd Osman who’s an expert in business management will be consulting on marketing strategy and financial control of total projects. 5.9 Identify Location Kirana will be located at best location which closes to Johor Bharu city. It also, will take only 10 minute from Taman University to PLUS highway, which enable customer access to city central more easily. Beside that, our company located conveniently close to downtown area. 5.10 Research Analysis The information in this research analysis was gathered from a wide range of sources, starting with the national statistical agencies. This information was cross- checked for consistency, probability and mathematical accuracy. Secondly, the researchers sought to fill in the gaps in the official national statistics by using private-sector surveys and official pan-regional and global sources. Furthermore, Euromonitor International has carried out an extensive amount of modelling in order to come up with interesting data sets to complement the national standards available. Without customers, a business cannot survive. Our target customer was teenagers and young adult. Each customer is unique to some degree. Since it is time consuming and not very profitable to develop a separate strategy for each customer, some grouping of customers into segments is often useful. 5.10.1 Mobile Phone Users Telecommunications in Malaysia is divided into fixed line and mobile services. A few main players dominate the telecommunications market. Telekom Malaysia is the incumbent player in landline services, while Maxis is the leading mobile service provider. Growth in mobile phone usage far exceeds that of fixed land lines in Malaysia. Mobile phones are widely used by all age groups, with nearly 15 million mobile users in 2005, according to an article in News Straits Times. According to AC Nielsen, the Asia-Pacific markets presenting the greatest opportunities are China, Malaysia, Thailand, the Philippines, Indonesia and India. In these countries mobile penetration sits at or below the 50% mark. Maxis and Celcom launched 3G technology in 2005. There are a wide variety of 3G phones available in the market, but currently 3G technologies is appealing only to the higher income group due to its relatively high cost. Table 5.3: National and International Mobile Phone Users (Sources: “National Statistical Office/International Telecommunications Union/World Bank/Trade sources/Euromonitor International”) National and International Mobile Phone Users: 1990/1995/2000/2003-2005 Mobile telephone users 1990 1995 2000 2003 2004 2005 87 1,005 5,122 11,266 13,110 14,689 ('000) Table 5.4: Penetration Rate for Cellular Phones in Malaysia (Sources: “Malaysia Commission and Multimedia Communication”) Figure 5.19: Penetration Rate per 100 Inhabitants (Sources: “Malaysia Commission and Multimedia Communication”) 5.10.2 Teenagers Teenagers develop attitudes towards life and the products and services they will associate themselves with. During this stage they consider themselves to be more mature than tweenagers. Experimentation and the desire to be cool in their circle of friends will build opinions and desire for certain products and services. This is the point where parents will often attempt to control their teenagers’ ever-changing appetites for trying out new styles and fashions. This age group is more susceptible to vices, such as smoking and drinking. They have a more developed taste in fashion, toys, entertainment, such as music and movies. Recently, more teenagers are spending a lot of time on the computer chatting and surfing online. Their main activities include spending time at the mall, watching movies, playing video games or spending time on the computer. Most teenagers own mobile phones and are very aware of the latest technology trends in the market. Music is also a major part of their lifestyle. Lucrative consumer products targeted at teenagers include IT products and gadgets, video games, DVDs, Music CDs, fashion and fast food. Table 5.5: Teenagers Population in Malaysia (Sources:”Euromonitor International from National Statistical Office, UN”) Teenagers: 1990-2015 '000 1990 1995 2000 2005 2010 2015 Male 1,308 1,494 1,689 1,843 1,903 1,896 Female 1,275 1,440 1,638 1,756 1,788 1,797 TOTAL 2,583 2,934 3,327 3,599 3,691 3,694 as % of total population 14.27 14.18 14.16 13.79 12.95 12.03 Note: Teenagers (13-19 years old) 5.10.3 Young Adults The young adult population grew over the review period and this trend is set to continue over the next decade. This growing number of young adults offers a very lucrative market for financial services, home appliances, entertainment, fashion and food. Young adults have relatively good purchasing power despite lower incomes as they have less obligations and responsibilities, as most young adults are single. Purchasing tendencies depend on the level of income in this first phase of working life, as they manage their own income and expenses for the first time. Young adults working in multinational companies tend to earn more than those in local companies. Those on the west coast are considered more sophisticated than those on the east of the peninsular. However, a large number of people working in major city centres on the west coast are not local. There has been some public concern about quality time spent with family and living a meaningful life rather than spending too much time at the office. People are increasingly moving towards setting up their own small business at home due to instable work opportunities. Most young professionals aim to gain financial freedom by the age of 40 years. Main activities include shopping and entertainment on weekends and work on weekdays. They seldom cook at home and prefer dining out. This group is likely to purchase electronic products such as entertainment systems, video games, cars etc, as they have more financial freedom to indulge and spend for themselves. Table 5.6: Young Adults Population in Malaysia (Sources:”Euromonitor International from National Statistical Office, UN”) Young Adults: 1990-2015 '000 1990 1995 2000 2005 2010 2015 Male 2,564 2,943 3,208 3,567 3,934 4,107 Female 2,520 2,804 3,136 3,450 3,705 3,810 TOTAL 5,084 5,747 6,344 7,016 7,639 7,917 as % of total population 28.08 27.78 27.00 26.88 26.80 25.79 Note: Young adults (15-29 years old) 5.10.4 Understanding the Industry There are many factors to consider when designing for mobile phones. Region, technology, and customer diversity must be taken into account, along with trends and adoption patterns. 5.10.5 Understanding the User Ease of learning and ease of use are essential to the success of consumer products. Users bring a plethora of expectations and mental models to bear when they encounter new products, especially if they have acquired an item based on advertising hype about advanced features. Consumers want a device to work intuitively out of the box. They will probably not read the manual beyond the basic instructions, if at all, and will not remember how to use advanced features. So, it’s not surprising that they are intolerant of hard-to-use products and will return or stop using these products if they are frustrated with the experience. Consumers don’t hesitate to give the product bad word-of-mouth to friends and relatives, reducing the likelihood that others in their circles will buy the same thing. For example, it’s unusual for teen groups to have a de facto technical leader, often a dominant personality in the group, who informally screens devices for coolness, style, ease of use, and compatibility, and often influences device and service plan selection for peers. The group shares information about upgrades, cool (especially free) stuff such as ring tones, screen savers, and images, and ways to get better mileage from devices. Business users can expect to receive on-the-job training or take tutorials to use job-related products, and can always ask colleagues for advice when they have difficulty. But business users are also consumers when buying for themselves. (Longoria, 2004) 5.10.6 Demographic Segmentation While income level and other factors are significant for many markets, the dominant demographic segmentation for mobile phones users is age, as shown in figure. (Longoria, 2004) Table 5.7: Cellular Phone Demographic Groupings. (Source: Designing Software for the Mobile Context A Practitioner’s Guide. USA : Springer) Group Ages Pre-teens 10 to 12 Young teens 13 to 15 Older teens 16 to 19 Young adults 20 to 25 Adults 26 to 35 36 to 49 50 + 5.11 Operations Plan The Operations Plan is the processes that must be performed to serve customers every day (short-term processes). 5.11.1 Business Partnership Kirana will be working very closely with selected business partner in terms of technical support and marketing. Initially, we will be working very closely with Radio Televisyen Malaysia (RTM) and Dewan Bahasa dan Pustaka (DBP). Radio Televisyen Malaysia (RTM) had plan out an animation TV series about Panji Semirang. Dewan Bahasa dan Pustaka (DBP) had plan out an online gaming and comic about Panji Semirang. 5.11.2 Quality Control Quality Control is necessary as to keep customer satisfaction. Quality is an important facet of our products and needs to be taken seriously throughout the whole design, development and production lifecycle. Quality assurance (QA) can offer lots of skills and understanding in games areas, as testers tend to be player with a wide repertoire of experiences, as well as having bug finding skills. Having people focused on quality (both qualitative and quantitative) from the start allows the creative people to concentrate on being creative, knowing that someone is watching their back’s from a quality perspective. Besides that, our designer team will be assisting the user on the creativity of the game design, to attract customer to buy the product. 5.11.3 Customer Support The operation of Kirana will be running at 12 hours a day with 365 days a year. Most customers have a simple download problem; we will help them to overcome that problem. Here are the quick steps that can be taken to resolve almost all support requests: 1. Every customer is automatically created a customer account with their first purchase. This is designed to allow them to keep a record of transactions & download links, a quicker method to browse games for their phone and full access to our customer support team. They should have been sent their username and password along with their first purchase. 2. If customer do not know their username and password use the forget username feature. If the system cannot find the customer, it will give you the opportunity to create a free account which you should do and then proceed to the support area and post a support request. (If it says it has sent customer details but they do not receive them, first check any spam/filters on their email account and if they still do not get them, they can create an account in our website). Once the customers have username and password, they should: Login via the web site and their WAP link will be shown in their transaction history. They should type this link into the WAP browser on their phone only. It can only be downloaded via the WAP browser on your phone. Customer should be careful as all WAP links are case sensitive, so they should ensure they have enter it exactly as shown and do not confuse O's and Zero's. 5.12 Critical Risks i. Potential problems Mobile gaming makes a lot of noise but little real impact locally at present. Most of the impressive mobile game developers are Westerners or joint ventures with them. In Asia it is considered a new trend and still at an infant stage. It will need some more time before the move to mobile gaming really takes off – but when it does, it will be a huge new market contributing to big success. ii. Obstacles and risk The risk of the business at the moment is risks associated with moving Real’s PC games to mobile handsets; and competition from other mobile games operators. iii. Alternative course of action We take the problem that we mentioned earlier as a positive sign. This is the right time to venture into mobile game business before it really takes off and by the time it happens, we has all the ‘know’ ‘how’ and established a brand name in the mobile game market. Supported by the extra bandwidth of 3G, it will be added advantage for us, as it allows us to further venture into massively multi-player games (MMG) using mobile devices in years to come. 5.13 Long -term Development and Exit Plan a. Goals To develop a mobile game based on the ancient epics of Malay and Indonesian literature, Hikayat Panji Semirang. b. Strategies The keys to success in this business are: i. Pricing: Cheapest price among the competitors. ii. Services: 24x7 technical supports are available when you need it at no extra charge. iii. Networking: Build a close relationship with TELCO. iv. Knowledge: A strong technical knowledge staff. v. Marketing: At the beginning, we will have to select a good media mix to enhance the business as the reputation of the web has not yet been established. The medium that we will select in which to place its commercial will be TV and radio. Our potential customers must see a newspaper advertisement, hear a radio spot, and see a TV commercial to reinforce the company’s message at the outset of business. The impact on these potential consumers will be far greater if our company uses the media-mix rather than just one of these media. vi. Customer Care: Our expert Customer Care agents are always available to assist you. They can contact us anytime for questions or support, via phone, SMS or email. c. Milestones We will use the following activities as critical milestones to plan and time the operations of the venture: Table 5.8: Project Milestones Start End Responsible Business Plan Completion 25/03/07 02/04/07 Owner Setup Project Team 05/05/07 15/08/07 Directors Financing 05/05/07 23/07/07 Directors Product completion 03/06/07 06/01/08 Technical Marketing Plan 22/12/07 Product Launch 10/04/08 13/04/08 All c. Exit Plan For us, aside from generating revenues and making profits, we want to satisfy player or users with our interactive game. We want our users to keep coming back to us for more games or other future applications through our value-added service. In conjunction with the edutainment trend, Kirana will plan out an animation TV series and product gifts as part of continuous marketing and support for valuable customer. 5.14 Financial Planning We had prepared our financial planning for five years. Gross Development Value, Gross Development Cost, Initial Investment, Labour Cost Estimation, Loan Repayment, Depreciation Table, Cash Flow, Profit and Loss, Balance Sheet and Sales Projection. All are well documented in APPENDIX K. The financial planning is for one company and we estimated for sales of ten games, including Kirana as a debut game. 5.14.1 Resources Needed for Development A detail financial planning is needed for this project. But thru rough estimation, to kick off the project, fund needed is about RM100, 000.00. At the moment, best funding resources is loan from bank or any angels that has a positive thinking towards this project. Sales Projection 3,000,000.00 2,500,000.00 2,000,000.00 Profit 1,500,000.00 Sales 1,000,000.00 500,000.00 Year 1 Year 2 Year 3 Year 4 Year 5 Year Figure 5.20: Sales Projection for Kirana Mobile Game Figure 5.20 shows sales projection for five years. This sales projection is only for Kirana mobile game. Please refer to APPENDIX K for detail estimation. Sales Projection 450000 400000 350000 300000 250000 Profit Year 200000 Sales 150000 100000 50000 0 1 2 3 4 5 Year Figure 5.21: Sales Projection for Ten Games Figure 5.21 shows sales projection for five years. This sales projection is for ten mobile games. Please refer to APPENDIX K for detail estimation. Sales VS Cost (1st Year) 70,000.00 60,000.00 RM 50,000.00 40,000.00 Sales 30,000.00 Cost 20,000.00 10,000.00 1 2 3 4 5 6 7 8 9 10 11 12 Month Figure 5.22: Break Even Figure 5.22 shows break even point for the first years. The first six month is a game development period. This calculation is for ten mobile games. Please refer to APPENDIX K for detail estimation. Profit&Loss 1,400,000.00 1,200,000.00 1,000,000.00 800,000.00 Amount Profit&Loss 600,000.00 400,000.00 200,000.00 Year 1 Year 2 Year 3 Year 4 Year 5 Year Figure 5.23: Profit and Loss Figure 5.23 shows profit and loss for the five years. This calculation is for ten mobile games. Please refer APPENDIX K for detail estimation. 5.15 Summary In this chapter, we have clearly discussed about the whole business operations in a complete business plan to start up a company and business. Each aspects of marketing, research analysis, market research, operation, risk analysis, competitor analysis, business and revenue model, customer support and financial planning has been clearly identified. REFERENCES REFERENCES 1. Converse, T and Park, J. (2002). PHP Bible. 2nd ed. Canada : Wiley Publishing. 2. Guthery B.S and Cronin J.M. (2002) Mobile Application Development with SMS and the SIM Toolkit. USA: Mc Graw Hill. 3. Imielinski.T and Korth F.H. (1996) Mobile Computing. USA: Kluwer Academic Publisher. 4. Lethbridge C.T and Laganiere,T. (2005) Object-Oriented Software Engineering Practical Software Development Using UML, Java. 2nd ed. UK : Mc Graw Hill. 5. Longoria R.(2004) Designing Software for the Mobile Context A Practitioner’s Guide. USA : Springer. 6. Tymann, P.T and Schneider M.G. (2005). Modern Software Development Using Java. USA : Thomson Learning. 7. Vincent, H.J. (2002). Java : A graphical approach. UK :Mc Graw Hill. 8. Vliet . V.H. (2000)Software Engineering Principles and Practice, 2nd ed. USA : Wiley Publishing. 9. Winder, R and Roberts, G. (2006). Developing Java Software. UK : John Wiley&Sons, Ltd. 10. Wu, C.T. (2006). An Introduction to Object-Oriented Programming With Java. 4th ed. USA : Mc Graw Hill. 11. J2ME Applications http://www.javaworld.com(10 February 2008) 12. Java Mobile Toolkit http://www.microjava.com ( 8 January 2008) 13. Definitions of mobile game http://en.wikipedia.org (14 September 2007) 14. Web Design http://webdesign.about.com(19 February 2007) 15. Mobile Games Applications http://www.faqs.org (14 January 2007) 16. Game, Ring tone, Wallpaper Download http://myfonwar.com (14 September 2007) 17. Mobile Games Development http://www.faqs.org (10 September 2007) 18. Game Market Survey http://isupli.com (14 September 2007) APPENDIX APPENDIX A Gantt Chart Project I & II APPENDIX B Gantt Chart Project III APPENDIX C APPENDIX C Figure 2.2: Application Features Application Features Characteristics * Small footprint versions of application logic and local processing: thick, Standalone applications intelligent, client/server or smart client applications. * Applications can run on devices with intermittent network coverage. * Intelligent use of wireless bandwidth. Rich user interface High and low level UI APIs allow for simple but richer user interfaces (when compared to WML) for mobile business applications and games * Support for HTTP/XML and other web standards Network aware * Direct device-to-device network communications * Client/Server and distributed applications * Occasionally connected Reliable messaging Guaranteed message delivery ensures transactions are not lost due to lost of network coverage. Local data store allows for persistence at the device. Key to offline Local persistence functionality and caching and guaranteed message delivery and better utilization of wireless bandwidth. End-to-End security Small footprint TLS implementation allows for end-to-end security without translations at the network provider Data synchronization Synchronize data when/as needed Notifications Real-time asynchronous notifications Multi language support Target application to different languages Cross platform and low cost of development and Develop 'once' deploy to any J2ME device w/ appropriate profile ownership Access to corporate servers Integrate and interoperate with existing corporate servers APPENDIX D APPENDIX D Figure 2.5: CLDC Generic Connection Framework with HttpConnection APPENDIX E APPENDIX E APPENDIX E1 Figure 4.14: Sequence Diagram for Mobile Registration APPENDIX E2 Figure 4.15: Sequence Diagram for Download Game APPENDIX E3 Figure 4.16: Sequence Diagram for Play Game APPENDIX E4 Figure 4.17: Sequence Diagram for Submit Score APPENDIX E5 Figure 4.18: Sequence Diagram for Web Registration APPENDIX E6 Figure 4.19: Sequence Diagram for Login Process APPENDIX E7 Figure 4.20: Sequence Diagram for Logout Process APPENDIX E8 Figure 4.21: Sequence Diagram for Login Admin APPENDIX E9 Figure 4.22: Sequence Diagram for Logout Admin APPENDIX E10 Figure 4.23: Sequence Diagram for Update Score APPENDIX E11 Figure 4.24: Sequence Diagram for Update User Record APPENDIX E12 Figure 4.25: Sequence Diagram for Update Info APPENDIX E13 Figure 4.26: Sequence Diagram for Write Game APPENDIX E14 Figure 4.27: Sequence Diagram for Write Dialog for NPC APPENDIX E15 Figure 4.28: Sequence Diagram for Developing Schedules APPENDIX E16 Figure 4.29: Sequence Diagram for Maintaining Schedules APPENDIX E17 Figure 4.30: Sequence Diagram for Developing Budgets APPENDIX E18 Figure 4.31: Sequence Diagram for Maintaining Budgets APPENDIX E19 Figure 4.32: Sequence Diagram for Negotiating Contracts APPENDIX E20 Figure 4.33: Sequence Diagram for Arranging Beta Testing APPENDIX E21 Figure 4.34: Sequence Diagram for Creates Art APPENDIX E22 Figure 4.35: Sequence Diagram for Develop Game Asset APPENDIX E23 Figure 4.36: Sequence Diagram for Develop Volume of Sketches APPENDIX E24 Figure 4.37: Sequence Diagram for Implements Game Design APPENDIX E25 Figure 4.38: Sequence Diagram for Modify Game Design APPENDIX E26 Figure 4.39: Sequence Diagram for Develop Gameplay APPENDIX E27 Figure 4.40: Sequence Diagram for Develop Concept APPENDIX E28 Figure 4.41: Sequence Diagram for Develop Layout APPENDIX E29 Figure 4.42: Sequence Diagram for Design Game APPENDIX E30 Figure 4.43: Sequence Diagram for Develop Game APPENDIX E31 Figure 4.44: Sequence Diagram for Approve Game Idea APPENDIX E32 Figure 4.45: Sequence Diagram for Altering Game Rules APPENDIX E33 Figure 4.46: Sequence Diagram for Producing Scenarios APPENDIX E34 Figure 4.47: Sequence Diagram for Create Advanced Levels APPENDIX E35 Figure 4.48: Sequence Diagram for Create Levels APPENDIX E36 Figure 4.49: Sequence Diagram for Challenges or Missions APPENDIX E37 Figure 4.50: Sequence Diagram for Develop Prototypes APPENDIX E38 Figure 4.51: Sequence Diagram for Develop Technical Framework APPENDIX E39 Figure 4.52: Sequence Diagram for Write Source Codes APPENDIX F APPENDIX F APPENDIX F1 Figure 4.53: Class Diagram for Admin APPENDIX F2 Figure 4.54: Class Diagram for User APPENDIX G APPENDIX G APPENDIX G1 Figure 4.55: State Chart Diagram for Mobile APPENDIX G2 Figure 4.56: State Chart Diagram for Web APPENDIX H APPENDIX H APPENDIX H1 Figure 4.57: Activity Diagram for Mobile APPENDIX H2 Figure 4.58: Activity Diagram for Web APPENDIX I Game Documentation APPENDIX I Game Documentation Story Line Kirana is a strategy conceptualized mobile game adapted from IndoMalaysian literature folk story,Hikayat Panji Semirang. Its an action adventure game that lead player to historical era of Java sovereignty. The game comprises of action skill on fighting, item collection and cross word puzzle solution. The adventure goes on multiple role from main character, Tuan Puteri Galuh Cendera Kirana or Raden Inu Kertapi which at different stage requires player to change role as main character friends. In this epic adventure, the main character, Tuan Puteri Galuh Cendera Kirana will cloak as a hero character called Panji Semirang Asmaratanka while second character Raden Inu Kertapi will cloak as Panji Jayeng Kesuma based from the original storyline. What make the Storyline Become Unique and Interesting? In order to create a unique and interesting, the game design had used original approach concept that is similar with movie based game like Harry Potter or Godfather from console game. The game offer player options to change character at every level in order to defeat the opponent. The story line itself is fully adapted from the original story, Hikayat Panji Semirang to the detail that the location of each level is similar to original story. Therefore, the character is changeable at each level to make it real as the original characters going through in the original story Characters’ List Non Player Character (NPC) Character : Women and kids. This character will appear in second stage of the game. Player can not defeat them and will encounter them again along the adventure. The game rule requires player to avoid them or game point will be deducted if they got defeated. Game Prototype: Level 1. Character: Panji Semirang Asmarantaka Galuh Cendera Kirana had changed her name to Panji Simerang Asmaratanka to cloak as man with strong character and a good warrior. Fighting Technique : Great skilled in war. Able to fight with ‚’keris’, jumping and running. Grand Opponent: Paduka Liku Paduka Liku is the stepmother to Puteri Galuh Cendera Kirana or Panji Semirang Asmarantaka. Her character is cruel and jealousy towards Panji Semirang and her mother. She is willing to do anything to achieve her goal though she has to poison Panji Semirang’s mother. Fighting Technique: Able to flash lightning with her sorcerer power.. Other opponents: Castle warrior/soldier These warriors are on effort to stop Panji Semirang adventure. They will be in many stages and guarding outside Ratu Daha Castle. Fighting Technique: .Sword fighting Player amount Since Kirana is a mobile game it has a constraint on limited display screen size. Therefore, in brief it only allows single player game. Story Plot This game is set the player in adventure starting from Ratu Daha Castle and will end at the same castle also. There are ten different locations in this game indicating difficulties level and based on original story plot. Each plot is designed to challenge play skill and creativity in order to accomplish the mission. Each completed mission will lead player to new level of the adventure. Conflict Player has to choose different character at different level. Other than that, the game also allows player to change the current character during battle. Different ability of each character will create option for player to use his creativity and skill to defeat the opponent. If player do not familiar with the characters, the game will be halted from completing the mission. Mission and Challenge LEVEL 1 Location: Ratu Daha Castle, castle courtyard and old market surrounding. Opponent: Paduka Liku Mission: To earn game point by collecting golden pot. Each of golden pot will earn player 10 points. There are a total of 30 golden pots available in this level. Prime Mission: At the end of this level, player will face Paduka Liku. Player has to defeat her in order to move to Level 2. She has a special weapon, flash lightning from her sorcerer power. Weapon: Player will be equipped with ’keris’ to defeat the soldiers a long the way to Ratu Daha castle and to defeat Paduka Liku’s flash lightning power. Market Area Obstacles: In early part of the journey, player will pass market area where there are two types of traps. The first trap is in a form of oil stain which if the character step on it, the player will fall and game point will be deducted. Second trap is in a form of broken plate. Player has to avoid from step on it. It is location near to booth in market area. Both of these traps will deduct 5 game point. . Castle Courtyard Obstacles: Player has to be careful while crossing the courtyard for at any time the guardian soldier will appear to attack. Which such obstacles, player can collect red potion from market area to defeat them. It allows the character to hit the guardian soldier with no game effect. At normal hit where the soldier still alive, the character will die lead to game over. Castle Indoor Obstacles: Player will face the prime opponent, Paduka Liku and has to defeat her to move to Level 2. Game Concept There are two modes for the game play in this game. : Story Mode Player will have an adventure in a city/country following the command from game to complete the mission. This mode will give player the experience of living in the era of Java sovereignty. Player will go through lots of challenge based from the story plot. Each of these plots provides continuity to fit the story mode. Scenario Mode This mode will provide easy way to be in the game play scenario for multiple players. More action skill is required to challenge other player skills due to gain more game point. Most of the game level will require player to battle with opponent’s soldiers. At the end of game, player will be battle with the prime opponent. Game Structure Game structure at each level of story mode and scenario mode, is based on the mission given to the player. Player has to use the action skill and creativity to solve the mission. Certain mission will need player to plan and structuring the strategy to defeat the opponent, for example: many opponent attack at a time and at certain mission also, player have to manage the skill of character – defense, attack, special weapon usage – to defeat a difficult opponent. Gameplay The goal and mission of this game are comprises of battle, defense and player creativity to reach the end of the game. Story Mode Level 1 Location: Market Area, Castle Courtyard and Inside Ratu Daha Castle Kirana its an action adventure game that lead player to historical era of Java sovereignty. Tuan Puteri Galuh Cendera Kirana will cloak as a hero character called Panji Semirang Asmaratanka. Paduka Liku, Panji Semirang’s stepmother is cruel and jealousy towards Panji Semirang and her mother. She is willing to do anything to achieve her goal though she has to poison Panji Semirang’s mother. Planning Phase: Group Tasks Distribution Game Design 1. System i. The applied technology will enable handphone to display game using J2ME (Java 2 Micro Edition) platform. 2. Scenario i. Each of the scenario in this game was authored by game writer assissted by game designer and new ideas from other artists. 3. Game level i. Kirana consist of ten level of difficulties to be solve by player. Each level has a maximum time of 15 minute with different challenge and mission at each level. Game Graphics 1. Character and Animation i. Producing the character, animation and background. 2. Surrounding/Object i. Related object both moveable and non-moveable in the game background, for example hut and tree. 3. Effect i. Game effect is the detailed part of the graphic providing sound and visual effect to create realism, for example step sound, running horse sound, clinging weapon, fog and smoke. 4. Interface i. Game interface produced from the main menu to each level of the game. Game Designer Tasks: 1. Design game 2. Develop layout 3. Develop concept 4. Implementation game design 5. Modify game design 6. Develop gameplay Game Artist Tasks: 1. Create visual art 2. Develop volumes of sketches 3. Develop game assest Game Writer Tasks: 1. Write game 2. Write dialog for NPC Game Producer Tasks: 1. Negotiating contracts 2. Developing schedule 3. Developing budget 4. Maintaining schedule 5. Developing schedule 6. Arranging beta testing Game Developer Tasks: 1. Develop game 2. Approve game idea Level Designer Tasks: 1. Producing Scenarios 2. Create advanced levels 3. Create levels 4. Create challenges or mission 5. Altering game rules Game Programmer Tasks: 1. Develop Prototypes 2. Develop technical framework 3. Write source codes Keypad Control Enter = Play “keris” Left = Move Left Right = Move Right Up = Jump Particle Effects (for ten levels) 1. Burning 2. Weapon slashing sound 3. Fogging effect at Level 7. Wilis Mountain 4. Debris effect during horse galloping. Sound Effects (for ten levels) 1. Weapon blade slashing 2. Arrow firing. 3. Main menu background music 4. Golden pot collected indicator. 5. Horse steps. 6. Collected item indicator. 7. Grand entrance opening. 8. Fighting Storyboard Level 1 At this level, player will be at market area, castle courtyard and also in Ratu Daha castle. Player will be assigned to collect items and the main mission is to defeat Paduka Liku to enable Level 2 in this game. Panji Semirang Asmaratanka character will be used to complete te mission. Sprite Sprites create an effective illusion when: • The image inside the sprite already depicts a three dimensional object • The animation is constantly changing or depicts rotation • The sprite exists only for a short period of time • The depicted object has a similar appearance from many common viewing angles. • The viewer accepts that the depicted object only has one perspective. 1. Objects (Buildings) 2. Background i. Market Area ii. Castle Courtyard iii. Inside Ratu Daha Castle 3. Characters Game Scoring Level 1 Fore each of golden pot collected, the player will gain 10 game point. When player defeat the Paduka Liku, player will gain 100game point. At this level, player is required to gain 150 point to go to Level 2. The rules set player to avoid traps like broken plate and oil statistic. 5 game point will be deducted if rules in order to reach points. Table : Workers Salary Estimation (estimated for 5 games) Year Basic 1 Salary Monthly KWSP SOCSO Salary Total Per Annum 12% 1) Project Director 2,000.00 240.00 30.65 2,270.65 27,247.80 2) Game Designer 1,500.00 180.00 30.65 1,710.65 20,527.80 3) Programmer 1,500.00 180.00 30.65 1,710.65 20,527.80 700.00 84.00 30.65 814.65 9,775.80 5,700.00 684.00 122.60 6,506.60 78,079.20 4) Office Assistant TOTAL Diagram : Clas Diagram for game APPENDIX J User Testing APPENDIX J User Testing A quick testing was done by Sharifah Aquila Alhabshi bt Syed Sagaff in April 2008. The result as stated: The testing process was done to 10 users. User Opinion Towards Game 20% Bad Good Very Good 80% Figure above shows the percentage of user opinion towards Kirana mobile game. 80% of the user likes to play Kirana and think the game was good, while only 20% agreed that Kirana is a very good game. Game Graphic and Interface 0% 40% Bad Average Good 60% Figure above shows the percentage of user’s opinion towards the game graphic and interface. 60% of the user agreed that Kirana have a good graphic and user friendly interface. While, others think that the level of graphic and interfaces are average. Malaysian Acceptance 20% Yes No 80% Figure above shows the percentage of user’s opinion about the Malaysian people acceptance to this game. 80% of the user thinks that Malaysian people can accept well to this game. While, 20% of them think that Malaysian people cannot accept this game. Game Attractions to Other Ethnic Groups 10% Yes No 90% Figure above shows the percentage of user’s opinion about this game. 90% of the user agreed that other ethnic groups, other than Malays can be attracted to Kirana mobile game, while 10% disagreed. Background Interface and Music Suitability 20% Yes No 80% Figure above shows the percentage of user’s opinion towards the background interface and the music of this game. 80% of them think that the background interface and music are suitable with Malaysian culture and the themes of this game. While, 20% of the user think that the background interface and music are not suitable with Malaysian culture and the themes of this game. APPENDIX K Financial Planning