Gravity Evolved

Total Page:16

File Type:pdf, Size:1020Kb

Gravity Evolved Senior Project Spring 2013 By Clark DuVall Table of Contents Acknowledgements....................................................................................................................................3 Introduction................................................................................................................................................4 The Game ± Gravity Evolved....................................................................................................................5 What It Is...............................................................................................................................................5 How It Was Made..................................................................................................................................5 Related Work.............................................................................................................................................7 Orbits/Orbits HD ± rSchulet Software [5].............................................................................................7 Gravity 2.0 ± Clark DuVall [6].............................................................................................................7 Comparison...........................................................................................................................................8 Design......................................................................................................................................................10 Fireables ± Dependency Injection.......................................................................................................10 The Problem...................................................................................................................................10 The Solution...................................................................................................................................10 JSON Configuration Files ± Separate Data and Logic........................................................................11 The Problem...................................................................................................................................11 The Solution...................................................................................................................................11 Platform Dependent Code ± Delegates...............................................................................................11 The Problem...................................................................................................................................11 The Solution...................................................................................................................................12 Asynchronous Function Calls ± Callbacks..........................................................................................12 The Problem...................................................................................................................................12 The Solution...................................................................................................................................13 Game Events ± Notifications and Observers.......................................................................................13 The Problem...................................................................................................................................13 The Solution...................................................................................................................................14 Game Mode Constraints ± Referees....................................................................................................14 The Problem...................................................................................................................................14 The Solution...................................................................................................................................14 Results......................................................................................................................................................16 Features...............................................................................................................................................16 Screenshots..........................................................................................................................................17 Sandbox Mode................................................................................................................................17 Battle Mode....................................................................................................................................18 Future Work.............................................................................................................................................21 Cloud Storage of Solar Systems..........................................................................................................21 Ranking System...................................................................................................................................21 Multiple Battle Solar Systems.............................................................................................................21 Optimizations......................................................................................................................................22 References................................................................................................................................................23 Acknowledgements Senior Project Advisor Professor Zoë Wood Programmer Clark DuVall Graphic Designer Josh Schiesl Introduction The mobile gaming industry has exploded in popularity in the last few years. In the year 2000 there were 20 million mobile gamers in the United States. In 2013, there are over two hundred million mobile gamers in the United States, an incredible 955% growth [1]. Almost any developer has access to tools that can be used to create a game for popular mobile platforms such as iOS and Android, meaning that even independent developers can access this huge market. Creating a mobile game presents many challenges that do not apply or are greatly reduced when creating a standard video game. Mobile devices have much less RAM and CPU power than desktop or laptop computers, which constrains the assets used and computation on a mobile device. Current mobile devices usually receive user input through a touch screen, which presents a different form of interaction than is handled in standard video games. Mobile devices also come in all shapes and sizes, which means mobile games have to deal with varying screen sizes. This combination of factors makes creating a mobile game an interesting and challenging experience for the developer. The Game – Gravity Evolved What It Is Because of the challenges and opportunities of the mobile game industry, I decided to create the game Gravity Evolved with the help of graphic designer Josh Schiesl. Gravity Evolved is a galactic physics game. In the game, users are able to create their own solar system, placing planets and weapons. Planets and weapons can be customized, changing the size of the planets and the firing power of the weapons. Players are able to play in two different modes, Sandbox and Battle. In Sandbox mode, the user can create a solar system and fire the weapons in the solar system. The gravitational physics and collisions of the planets and projectiles are then simulated. The main part of the game is Battle mode. In Battle mode, players start with a set amount of money. They use this money to build up their solar system, adding and upgrading planets and weapons. Money is earned by fighting other solar systems, which increase in difficulty. The battles are real-time, with the two solar systems continuously firing. The player is able to readjust the weapons during the battle, choosing how to best destroy the opponent. Players are able to choose from 45 different weapon types and three different planet types, allowing them to use various strategies to make the most powerful solar system. How It Was Made Gravity Evolved is written entirely in C++ using Marmalade SDK [2]. Marmalade SDK is a tool allowing cross-platform mobile applications to be written using C++. From a single codebase, these applications can then be compiled to run natively on any of the current major mobile platforms, including iOS, Android, BlackBerry, and Windows Phone. Although Marmalade has obvious benefits such as cross-platform support and the ability to use C++, there are also some drawbacks. For one, it is much more difficult to create user interface elements with Marmalade than with the native iOS or Android development environments. Some native features are also not available by default in Marmalade. The biggest reason why I chose Marmalade was because it allowed me to develop high performance iOS apps without using an Apple computer. Gravity Evolved uses the Box2D physics library for all physics calculations [3]. It also uses much of the Boost C++ libraries, with heavy use of the Boost smart pointers [4]. Related Work Orbits/Orbits HD ± rSchulet Software [5] Orbits is a realistic solar system simulation game for iOS. In this game, users are able to change the properties of planets including the mass, velocity, and others. Time can be sped up or slowed down to
Recommended publications
  • Mobile Developer's Guide to the Galaxy
    Don’t Panic MOBILE DEVELOPER’S GUIDE TO THE GALAXY U PD A TE D & EX TE ND 12th ED EDITION published by: Services and Tools for All Mobile Platforms Enough Software GmbH + Co. KG Sögestrasse 70 28195 Bremen Germany www.enough.de Please send your feedback, questions or sponsorship requests to: [email protected] Follow us on Twitter: @enoughsoftware 12th Edition February 2013 This Developer Guide is licensed under the Creative Commons Some Rights Reserved License. Editors: Marco Tabor (Enough Software) Julian Harty Izabella Balce Art Direction and Design by Andrej Balaz (Enough Software) Mobile Developer’s Guide Contents I Prologue 1 The Galaxy of Mobile: An Introduction 1 Topology: Form Factors and Usage Patterns 2 Star Formation: Creating a Mobile Service 6 The Universe of Mobile Operating Systems 12 About Time and Space 12 Lost in Space 14 Conceptional Design For Mobile 14 Capturing The Idea 16 Designing User Experience 22 Android 22 The Ecosystem 24 Prerequisites 25 Implementation 28 Testing 30 Building 30 Signing 31 Distribution 32 Monetization 34 BlackBerry Java Apps 34 The Ecosystem 35 Prerequisites 36 Implementation 38 Testing 39 Signing 39 Distribution 40 Learn More 42 BlackBerry 10 42 The Ecosystem 43 Development 51 Testing 51 Signing 52 Distribution 54 iOS 54 The Ecosystem 55 Technology Overview 57 Testing & Debugging 59 Learn More 62 Java ME (J2ME) 62 The Ecosystem 63 Prerequisites 64 Implementation 67 Testing 68 Porting 70 Signing 71 Distribution 72 Learn More 4 75 Windows Phone 75 The Ecosystem 76 Implementation 82 Testing
    [Show full text]
  • Development of a 2D Lateral Action Videogame for Android Platforms
    Escola Politècnica Superior Universitat de Girona Development of a 2D lateral action videogame for Android platforms. Desenvolupament d’un videojoc d’acció lateral per a plataformes Android. Projecte/Treball Fi de Carrera GEINF. Pla 2016 Document: Memòria Autor: Robert Bosch Director: Gustavo Patow Departament: Informàtica, Matemàtica Aplicada i Estadística Àrea: LSI Convocatoria: JUNY/2016 Contents 1 Introduction6 1.1 Introduction . .6 1.2 Personal motivations . .7 1.3 Project motivations . .7 1.4 Project purposes . .7 1.5 Objectives . .7 1.6 Structure of this memory . .8 2 Feasibility study9 2.1 Resources needed to develop this project . .9 2.1.1 Developer requirements . .9 2.1.2 Player requirements . .9 2.2 Initial budget . 10 2.3 Human resources . 10 2.4 Technological viability . 11 2.4.1 Economic viability . 11 2.4.2 Human costs . 11 2.4.3 Equipment costs . 11 2.4.4 Total costs . 11 3 Methodology 12 4 Planning 14 4.1 Working plan . 14 4.2 Planned tasks . 14 4.2.1 Planning . 14 4.2.2 Learning . 14 4.2.3 Implementation . 14 4.2.4 Verification . 15 4.2.5 Documentation . 15 4.3 Estimated scheduling . 16 4.4 Expected results of every task . 17 4.4.1 Planning . 17 4.4.2 Learning . 17 4.4.3 Implementation . 17 4.4.4 Verification . 17 4.4.5 Documentation . 17 5 Framework 18 5.1 Videogame engines . 18 5.2 Examples of videogame engines . 18 5.2.1 Unreal Engine . 18 2 Contents Contents 5.2.2 CryEngine . 19 5.2.3 GameMaker .
    [Show full text]
  • Marking WWII's End, Virtually
    Some insights into Looking for a new Preview of Tigers’ substance abuse pet? Shelter has ideas game vs. Starfires Area State Page 3 Page 5 Sports Page 6 The News-Bannerwww.News-Banner.com THURSDAY, SEPTEMBER 3, 2020 BLUFFTON, INDIANA • Wells County’s Hometown Connection $1.00 Two studies give potential options at Lancaster Park By DEVAN FILCHAK During the meeting, Sundling The Bluffton Parks Department also briefly presented the feasibil- and board discussed the possibili- ity studies he obtained for Lan- ties for Lancaster Park Tuesday, as caster Park. It has been known for well as the results of two feasibil- some time that the land, which is ity studies for projects at the park. where the former Lancaster school The park, which is across the was, will need some work before street from Lancaster Central Ele- anything can be built on it. mentary School on Jackson Street, Mayor John Whicker has tenta- has been the topic of discussion tively said that he would like Sun- for years now. dling to present the studies at the In 2018, Roger Thornton pro- Bluffton Common Council meet- posed a sports complex and park ing on Sept. 29. in the 18-acre space. However, “It gives a month for people Pam Vanderkolk, superintendent to look at this stuff instead of a of the department, said the park weekend,” Sundling said. board has had plans for the park Two feasibility studies were for more than 10 years. obtained — one from Engineer- The parks department would ing Resources, which is the firm A focus on hygiene like for the area to have a trail that has done previous work with School desks have to be wiped head on the Interurban Trail and the park on Thornton’s behalf, and down between classes, and fre- serve as a greenspace.
    [Show full text]
  • Nitro Games Vuosikertomus ENG FINAL
    ANNUAL REPORT 2019 NITRO GAMES OYJ Contents • Highlights 4 • Facts and Key Figures 5 • Revenue 5 • 2 Studios in Finland 5 • New Game portfolio 5 • Share price development 5 • A word from the CEO 6 • NITRO GAMES IN SHORT 9 • STRATEGY AND BUSINESS MODEL 10 • Market 11 • Strategy and Goals 11 • Market position and customers 11 • Business model 12 • Technology and processes 13 • Games and Portfolio 14 • Lootland 15 • New Game Projects 15 • New Serice Projects 15 • Old Projects 15 • Team 15 • CORPORATE GOVERNANCE 16 • General Information on the Administration of the Company 16 • Annual General meeting 16 • General information on the Board of Directors of the Company 17 • Presentation of the members of the Board of Directors 18 • Committees 20 • Auditor 22 • Related Party Transactions 22 • Insiders 22 • REMUNERATION REPORTS 23 • Compensation of the Board 23 • Options 23 • Shareholders 23 • FINANCIAL STATEMENTS 24 • Report by the Board of Directions for 2019 26 • Nitro Games PLc Income Statement 37 • Nitro Games PLc Balance Sheet 38 • Nitro Games PLc Cashflow Statement 40 • Accointing Policies 41 • List of Accounting Books and Document Types 45 • Signatures to the Financial Statements 45 • Auditors Report 46 3 Highlights • Company focused on the category of shooter games on mobile • Expanded game portfolio with new games • Heroes of Warland development continued with a complete remake of the game • Lootland, a new game announced for soft-launch in 2020 • Started co-operation with Avalanche Studios on a mobile game production • Continued business
    [Show full text]
  • A Case Study on One-Source Multi-Platform Mobile Game Development Using Cocos2d-X
    International Journal of Engineering and Applied Sciences (IJEAS) ISSN: 2394-3661, Volume-3, Issue-11, November 2016 A Case Study on One-Source Multi-Platform Mobile Game Development Using Cocos2d-x Jinseok Seo, Hun Choi Abstract— In this paper, by introducing a case study on of "ResourceMaker", a tool developed for efficient game development of a first-person shooter game “Biosis” playable in resource sharing and management. This chapter also both iOS and Android platforms, we present guidelines for describes the level engine implemented to reflect the game developing one-source multi-platform mobile games using designers’ intention freely. Finally, Chapter V concludes the cocos2d-x game engine. This paper also describes the paper. “ResourceMaker” implemented to share and manage game assets efficiently in our multi-targeted development environment and the level engine by using which game planners can easily apply their designs to game levels. We expect that the presented guidelines will help game developers reduce the time and cost for development in the mobile game ecosystem, the life-cycle of which is very short. Index Terms—cocos2d-x, mobile game, multi-platform I. INTRODUCTION Recently, as the mobile platforms including smart phones have achieved popular success, the size of the mobile game market is also rapidly increasing [1]. As the market grows, more and more types of smart devices are emerging. Even on platforms that support the same operating system, many various types of devices with different screen resolutions are being announced. Therefore, it is inevitable that the cost required to develop a game for various platforms and display types as described above is greatly increased.
    [Show full text]
  • Immersion Releases Haptic Muse Effect Preview App for Android Game Developers
    July 11, 2013 Immersion Releases Haptic Muse Effect Preview App for Android Game Developers Free, animated app invites developers to experience over 120 pre-designed haptic effects, showcasing the value of multi-modal game design SAN JOSE, Calif.--(BUSINESS WIRE)-- Immersion Corporation (Nasdaq:IMMR), the leading developer and licensor of touch feedback technology, has released the Haptic Muse effect preview app on Google Play as part of the company's Haptic SDK developer tool kit. The free animated effect preview app illustrates the Haptic SDK's library of 124 pre-designed haptic effects in a gaming context and is designed to inspire creativity for game developers looking for ways to enhance their Android games with tactile effects. The Haptic Muse app invites developers into a haptic museum with galleries built around common gaming use cases, like sports, transportation, combat and casinos. As developers browse through the museum, they can select items on display, and then watch, feel and hear them come to life. The effect library significantly reduces integration time by allowing developers to select from a comprehensive list of effects designed to enhance a wide range of gaming environments. "One of the most powerful tools in the Immersion Haptic SDK is our library of 124 pre- designed haptic effects," explains Suzanne Nguyen, Director of Developer Marketing at Immersion. "We designed the Haptic Muse app The Haptic Muse app invites to explore galleries where users feel tactile effects as a way to provide both experienced and new being used in different gaming contexts. (Photo: Business Wire) game developers with a fun, interactive tool to assess which tactile effects work best for their games as well as to illustrate the capabilities of integrating video, audio and haptics." SEGA® of America uses Immersion's Haptic SDK in their Sonic The Hedgehog 4™ Episode II and Sonic CD™ titles, available on Google Play.
    [Show full text]
  • Top 2D Game Engines
    1 / 2 Top 2d Game Engines Edgelib – 2D and 3D middleware game engine that supports iOS, ... See all mobile app development companies to find the best fit for your .... Whereas Unreal Engine is best-suited for more robust games—especially from a ... Oxygine is completely free and open source (MIT license) 2D game engine, .... Unity is an amazing game engine, which is designed for 2D and 3D games. The engine is very easy to pickup for beginners and experts. The engine is very .... Godot is an advanced, feature-packed, multi-platform 2D and 3D open source game engine. It provides a huge set of tools with a visual editor, an .... It features hardware-accelerated 2D graphics, integrated GUI, audio support, lighting, map editor supporting top-down and isometric maps, pathfinding, virtual .... The powerful game development tool is capable of designing many different types of games including 2D and 3D type projects. Unity can develop .... Defold is a free and open game engine used for development of console, desktop, mobile and web games.. Whether they are 2D or 3D based, they offer tools to aid in asset creation and placement. The report offers detailed coverage of Game Engines ... 5d game creation framework with support for different isometric perspectives. ... 3D, 2D Game Sprites – Isometric, Pre-rendered, Top-down, Tiles Artwork .... Compare and contrast the various HTML5 Game Engines to find which best suits your needs. Play scary games at Y8.com. Try out games that can cause fright or .... I'm working on a 2D game using Paper2D in Unreal and found some tutorials for ..
    [Show full text]
  • Overview and Comparative Analysis of Game Engines for Desktop And
    pag. 21 Overview and Comparative Analysis of Game Engines for Desktop and Mobile Devices Eleftheria Christopoulou, Stelios Xinogalos Department of Applied Informatics, University of Macedonia, Greece {mai1519, stelios}@uom.edu.gr Abstract Game engines are tools that expedite the highly demanding process of developing games. Nowadays, the great interest of people from various fields on serious games has made even more demanding the usage of game engines, since people with limited coding skills are also involved in developing serious games. Literature in the field has studied game engines focusing on specific needs, such as 3D mobile game engines or open source 3D game engines. The motivation of this article and at the same time the advancement brought by it in the field, lies in the extension of an existing framework for the comparative analysis of several game engines that export games at least on Android and iOS mobile devices and cover a wide range of different user profiles and needs. In order to validate the results of this comparative analysis a shooter game was developed for Android devices based on official tutorials of the two game engines that came out to be more powerful, namely Unity and Unreal Engine 4. In conclusion, there is not a single game engine that is better for every purpose and the extensive overview provided can help users choose the most suitable game engine for their needs. Keywords: Game Engines, Comparison, Mobile devices, Android, Unity, Unreal Engine 4 1. Introduction Nowadays, serious games as well as mobile games development are on the rise. Day by day, desktop and console games are replaced by games which run on mobile phones and tablets.
    [Show full text]
  • Fiske Wordpower
    New_Fiske Final 5/10/06 9:14 AM Page 1 Raise A POWERFUL VOCABULARY WILL OPEN UP Your THE MOST EFFECTIVE SYSTEM FOR BUILDING A WORLD OF OPPORTUNITY Word IQ A VOCABULARY THAT GETS RESULTS FAST With Fiske WordPower you will quickly learn to write FISKE more effectively, communicate clearly, score higher Raise Your W Learn on standardized tests like the SAT, ACT or GRE Word IQ 1,000 Words and be more confident and persuasive in everything in Weeks you do. OR FISKE Using the exclusive Fiske system, you will no longer need to memorize words.You will learn their meanings and how to use them correctly. The Fiske system will enhance and expand your permanent vocabulary. This knowledge will stay with you longer and be easier to recall—and it doesn’t take any longer than less-effective memorization. D Fiske WordPower uses a simple three-part system: WORD 1. Patterns: Words aren’t arranged randomly or alphabetically, but in P similar groups that make words easier to remember over time. 2. Deeper Meanings, More Examples: Full explanations—not just brief definitions—of what the words mean, plus multiple examples of OW the words in sentences. POWER 3. Quick Quizzes: Frequent short quizzes help you test how much you’ve learned, while helping you retain word meanings. words you need to know (and can 1,0001,000 learn quickly) to: ✔ Build a powerful and persuasive vocabulary Fiske WordPower— E ✔ The MOST EFFECTIVE vocabulary-building Raise your word IQ ✔ Communicate clearly and effectively system that GETS RESULTS FAST. R ✔ Improve your writing skills ✔ Dramatically increase your reading comprehension Study Aids $11.95 U.S.
    [Show full text]
  • Introduction Main Elements
    Game Engines Introduction Game Engines are software platforms used to create and run video games. One of the reasons that Game Engines exist is because creating computer games requires a lot of different kinds of complex software. Computer games include video elements, user interface elements, a variety of resources that must be loaded and used, and other complex systems. If each game developer had to create these various software systems for each game, the development time required to create a new game would be too long. One thing that most software developers do is save old code. If a developer can just plug in software elements that have been previously used and have been tested, then this makes the development cycle shorter. Why write the same code again when a developer can just plug-in already written code. This same idea is behind game engines. In the early days, game developers saved their old code and systems and just reused them on new games. At some point, the idea was to create modular systems that are more self-contained and easier to reused. This was one of the driving elements for Game Engines. The other reason for modern Game Engines was that games were being developed for multiple platforms. These include computers, consoles, hand-held devices, and the Internet. Game developers wanted to sell their games on multiple platforms so they added a game run-time element to game engines. The run-time element was a layer where the game hardware was virtualized. This means that when the game engine code sends a draw command to the hardware, the draw command first goes through a layer that translates it to the appropriate hardware commands.
    [Show full text]
  • Cross-Platform Mobile Application Testing
    CROSS-PLATFORM MOBILE APPLICATION TESTING Anna Latonina CROSS-PLATFORM MOBILE APPLICATION TESTING Anna Latonina Bachelor’s thesis Autumn 2014 Business Information Technology Oulu University of Applied Sciences 2 ABSTRACT Oulu University of Applied Sciences Degree in Business Information Technology Author: Anna Latonina Title of Bachelor’s thesis: Cross –platform Mobile Application Testing Supervisor: Matti Viitala Term and Year of Completion: Autumn 2014 Number of pages: 37 This bachelor thesis describes multi platform mobile application testing process. Marmalade Software Development Kit was used as a primer environment for development and testing process. The thesis is divided into three major parts. The first describes development environment and target platforms. The second part introduces testing basics. The third part describes actual process of testing of the application. Arcade type game Glow Hockey 3D was a part of research part. This application was tested from the beginning of the development process and is still monitored. The application was successfully released on Google Play market and received mostly positive reviews from the critics. Post release problems appeared, however, their number was not great. As a result, multiplatform testing and development saved a lot of time and money since there was no need to double the application on another platform with different environment. Keywords: testing, mobile application, game, cross-platform, Marmalade SDK 3 CONTENTS 1 INTRODUCTION ......................................................................................................................................
    [Show full text]
  • Music Library 2020 Part 2: Ensemble Repertoire Table of Contents
    Music Library 2020 part 2: ensemble repertoire Table of Contents Concert Band 3 beginning 4 very easy 9 easy 28 medium easy 54 medium 83 medium advanced 104 advanced 114 not rated 119 Choir 120 unison 121 2-part 121 SA 123 SSA 123 3-part mixed 124 SAB 125 SATB 126 SSAA 130 SSAATTBB 130 SSATBB 130 TB 131 TBB 131 TTB 131 TTBB 131 Full Orchestra 133 very easy 134 easy 134 medium easy 135 medium 136 medium advanced 137 advanced 138 String Orchestra 139 beginning 140 very easy 140 easy 148 medium easy 164 medium 179 medium advanced 191 advanced 193 Jazz Band 195 very easy 196 easy 197 medium easy 201 medium 206 medium advanced 211 advanced 213 ©2020 MakeMusic. All rights reserved. 2 Concert Band beginning 4 very easy 9 easy 28 medium easy 54 medium 83 medium advanced 104 advanced 114 not rated 119 ©2020 MakeMusic. All rights reserved. 3 Concert Band beginning Title Composer Arranger Publisher Print on Demand 10 to the Power Grice, Rob Composers' Planet 12 the Clock Strikes Grice, Rob C.L. Barnhouse Co. 1st Classic Suite Hannickel, Mike Curnow Music Press, Inc. Admiration March Clark, Larry Carl Fischer LLC. All Aboard! Conaway, Matt C.L. Barnhouse Co. Along Came a Spider Hannickel, Mike Curnow Music Press, Inc. Anasazi Legend Compello, Joseph Carl Fischer LLC. Android Attack Oare, Michael Hal Leonard Corp. Andromeda Connection, The Barrett, Roland Belwin Attack of the Slide Trombones Hannickel, Mike Curnow Music Press, Inc. Ayre and Dance Pearson, Bruce Neil A. Kjos Music Co. Band on Parade Sweeney, Michael Hal Leonard Corp.
    [Show full text]