Prepared by: Ahmad Abu Sa’a Ibrahim Abdulhaq

Slides:



Advertisements
Similar presentations
Interaction Design: Visio
Advertisements

In this tutorial, we are going to create: A race car that the user can control with the arrow keys for direction and speed. A simulated road with a striped.
Chapter 6 Preparing and Publishing Applications. Chapter 6 Lessons 1.Publish movies 2.Reduce file size to optimize a movie 3.Create a preloader 4.Publish.
Discovering Computers: Chapter 1
How do games work? Game Workshop July 4, Parts Sprites/pictures Map/background Music/sounds Player character Enemies Objects.
CS371m - Mobile Computing Audio.
DEMONSTRATION FOR SIGMA DATA ACQUISITION MODULES Tempatron Ltd Data Measurements Division Darwin Close Reading RG2 0TB UK T : +44 (0) F :
GameMaker.  A lot of Different Definitions  Easier to Say What is NOT a Game  Movie is Not a Game  No Active Participation  Final Outcome is Fixed.
CSE 381 – Advanced Game Programming 3D Game Architecture.
Indoor Localization Carick Wienke Advisor: Dr. Nicholas Kirsch University of New Hampshire ECE 791H Using a Modern Smartphone.
Canyon Adventure Technology David Maung, Tristan Reichardt, Dan Bibyk, Juan Roman Department of Computer Science and Engineering The Ohio State University.
Town Defenders Strategy Game prepared by: Osama N
MULTIMEDIA DEFINITION OF MULTIMEDIA
` Prepared by: Amer Iskander Hamza Abuzahra. Outline  Introduction  Technologies  Map  Our Simple Vehicle  Car  Hardware  Mini map  Traffic System.
Game Maker Terminology
Envision Tutorial Horner APG, LLC July 18, Introduction The Cscape Remote Viewer allows remote interaction with the user interface on Horner OCS.
JDS5 Training Guide. On Start Up you will see this screen click the OK button Click OK.
CS378 - Mobile Computing Audio.
Allyson Coan Adult Services Librarian June 13, 2016 iPad Basics Part 1.
Computer Hardware Introduction What’s inside that box?
Google. Android What is Android ? -Android is Linux Based OS -Designed for use on cell phones, e-readers, tablet PCs. -Android provides easy access to.
A presentation on Android and Android project Around Me
Introduction to Operating Systems Concepts
Medical Education Center
DISCOVERING COMPUTERS 2018 Digital Technology, Data, and Devices
Safety, Security & Savings
North Attleboro High School
Downloading and Installing
Android Application Audio 1.
AUTOMATED security system
Wadley Medical Education Center
SPen & Camera Kit Experience App
Health Professional Education Building
Use Google PlayStore and download apps
Understanding Programming Mobile Web
Pilot Watcher Product Overview V5.3
ANDROID AN OPEN HANDSET ALLIANCE PROJECT
Monitoring Robot Prepared by: Hanin Mizyed ,Abdalla Melhem
Medical Education Center
Tracking and Booking Taxi
An-Najah National University Computer Engineering Department Software Graduation Project (66581) Supervised By: Dr. Luai M. Malhis Examiners.
Mazen Alkoa’ & Ahmad Nabulsi Submitted to Dr. Sufyan Samara
Smart Car Robot Prepared by Supervised by Mai Asem Abushamma
Chapter 14 User Datagram Program (UDP)
Prepared by: Gina Kadri Shahd Abdulhaq Supervised by: Dr.Raed Al-Qadi.
Fastdroid Produced by : Firas Abdalhaq Mohammad Amour Supervised by : Dr. Raed Alqadi.
Tarneeb Game.
Mobile Website vs. Mobile App
Introduction With TimeCard users can tag SharePoint events with information that converts them into time sheets. This way they can report.
Facing Problem with Hulu on Android and iPhone Device? (Check Here)
Software engineering in the mobile phone platform war.
Garmin. The GPS actually developed for the use by the us military in 1980, the us states government allowed this system for the civilian purpose later.
CarPlay Solutions.
Computer Application AutoCAD Program
Game Loop Frame Rate.
Chapter 11-Business and Technology
Tutorial Using the App help.ebsco.com.
MY RACING IDEA By Malik Lindsay.
Android Topics UI Thread and Limited processing resources
This course is based on a Samsung Product.
Maze Challenge Maze Challenge activity > TeachEngineering.org
Chapter 2: Operating-System Structures
Project 4 Creating an Image Map.
Tareq Khan, Ph.D. Assistant Professor,
CS 101 Test 2 Review.
Med-Fi Prototype Presentation
Shane B., Esther K., Curtis S., Jennifer W.
Chapter 2: Operating-System Structures
This course is based on a Samsung Product.
Report from the trenches of an HTML5 game provider
Presentation transcript:

Prepared by: Ahmad Abu Sa’a Ibrahim Abdulhaq NET RACE A Multiplayer Racing Game Prepared by: Ahmad Abu Sa’a Ibrahim Abdulhaq Submitted to: Dr. Raed Al-Qadi Dr. Hanal Abu Zant Dr. Haya Samaneh 14/5/2014

Introduction Mobile Games Market is huge world and it still growing and the value of the games can reach millions of dollars. The idea of the game is Multiplayer cars game running on Android smartphones and tablets. The multiplayer mode implementation is done using Wi-Fi modules in the smartphones. The game also includes single mode, one player can play with him self!!. The idea behind the multiplayer mode is the exciting it adds to the game.

Game Screen The Main Module, Contains: Controls: Physics world Cars The game Stage Road Blocks Remote Controller Controls: Physics world Orthographic camera

Game Screen – Physics world The physics world is used to drive the simulation : Car movements Car collisions The Box2D world object provides three important attributes that determine the precision of the simulation. Time Step Velocity iteration Position Iteration

Game Screen – The Orthographic Camera Acts like a very simple real world camera. It could be moved and rotated around, zoom in and out, change the viewport. Always follows the player car

Car module

Car – Forces affect the body Engine Force 𝐸𝑛𝑔𝑖𝑛𝑒 𝐹𝑜𝑟𝑐𝑒= Absolute Engine Force × 𝐺𝑒𝑎𝑟 𝐿𝑒𝑣𝑒𝑙 𝑅𝑎𝑡𝑖𝑜 Friction Force 𝑓𝑟𝑖𝑐𝑡𝑖𝑜𝑛 𝑟𝑎𝑡𝑖𝑜= 4× 𝑒 −𝑣 +0.01 ×𝑟 Where v is the car speed and r is the road friction ratio Other Forces Impulses to get rid of the Literal velocity

Car – Forces affect the body Other Force: This force applied to get rid of the car slipping movement in the horizontal direction (Lateral Velocity).

Road Draws the street and its two sides with the buildings and trees on each side Use a Hash Map to store street auxiliaries Store the Randomly generated auxiliaries Speed up the retrieving process

Road Draws three frames : The frame where car is in. Frame1 Y postion= (int)car y postion (int)frame hieght ×frame hieght Frame number The frame where car is in. A frame after that frame. And another one before it. Frame 3 Frame 1 Where player car is in Frame 2

Blocks Generate blocks body randomly across the road Store them in a hash map to speed up retrieving. Provide the indicators to these blocks. If distance between player car and block less than 100m.

Game Stage Simply the touch buttons on the screen. Gear Box Speed label , order label , fuel label Status Sender – broadcast commands upon the network

𝑠𝑜𝑢𝑛𝑑 𝑝𝑖𝑡𝑐ℎ= 0.5+ 𝑐𝑎𝑟 𝑠𝑝𝑒𝑒𝑑 𝑚𝑎𝑔 𝑐𝑎𝑟 𝑔𝑒𝑎𝑟 𝑙𝑒𝑣𝑒𝑙 𝑀𝑎𝑥 𝑆𝑝𝑒𝑒𝑑 Car Sound Simulate two sound of the car Engine Sound This engine sound always loops and runs but with different sound pitch speeds. Depending on the Car speed and on the gear level max speed.  𝑠𝑜𝑢𝑛𝑑 𝑝𝑖𝑡𝑐ℎ= 0.5+ 𝑐𝑎𝑟 𝑠𝑝𝑒𝑒𝑑 𝑚𝑎𝑔 𝑐𝑎𝑟 𝑔𝑒𝑎𝑟 𝑙𝑒𝑣𝑒𝑙 𝑀𝑎𝑥 𝑆𝑝𝑒𝑒𝑑 Brake Sound Played when the brake pedal touch button pressed

Engine Sound generate a sound that support looping Generating a sound that supports looping Remove silent periods

Engine Sound generate a sound that support looping smooth the looping process with this sound. make its start spectrums same as the end spectrums

Assets Manager used to load all resources (images ,sound files). The resources loading is done asynchronously. display a reactive loading screen while other things are loaded. If an asset is needed multiple times, it will actually be shared and only take up memory once. It guarantees that all assets exists and loaded successfully before the game starts. the game launching more stable and reliable and prevent any runtime failure due to assets miss.

Game Networking The network part is the distinctive part, that distinct the game from others traditional car games. The players in the game keep exchange the following information: the control pedal statues and the X,Y positions. Two main modules: the status sender and remote car controller. The statues sender keep sending the status massages to other players. The remote car controller receive statues massages from other players and apply it on the game screen.

game networking: massage The message class has two attribute the Message Type and the message Data. The Massage type may be one of the following: NEW_GAME_OFFER JOIN_REQUEST PLAYER_INFO ID  START 

Create-Game and Search-Game Classes

Statues Sender class This class provides a method that take the player car status attributes and sends them to all other players on the network. It formatted these data in a frame (byte array) as shown in the following figure.

Remote Car Controller This module is a receiver of the packets that the status sender module in other player devices sends. It receives the data and analyzes it and then decides which car to control and how to control it.

Network Massage content? The problem is what to exchange between the players and how to apply the exchanged massages? Two approaches: Exchange Commands: The players exchange commands between each other such as: set Fuel Pedal on or off set Brake Pedal on or off set Gear Level set Turn left or right Exchange Car Attributes: Players exchange the car position and velocity periodically every 60ms. Unfortunately, Depending only on these attributes will cause abrupt changes in the car position which noticed clearly by the players.

Solution! The hybrid solution is the best one we have: The commands are used to simulate the car movement in the rest of the 60ms the car positions and velocity are used as a correction factor. If there is any difference between the current car position and the received position then a small force is applied until the error become zero.

Sharing Intent Using Android Sharing intent to share the player Achievements using various social media apps.

The Game Flow Chart

Testing The game was tested: on different android Devices. different screen sizes and on different android platforms.

Results Game Networking Game physics Game graphics and Audio 4 to 5 players play the same game over a good wireless LAN (802.11g 54Mb/s) . No abrupt changes in the cars positions or incorrect car positions. Game physics Force simulation and Car collisions is very good. improving the car physics model. inserting two tires to the physics model and not to restrict it into a single rectangle body. Game graphics and Audio free or we design and draw it. As a result the game graphics is pretty simple.

Results The Game Size The User Friendly of the game: The game APK size is 5.2 MB. The size of installed game is 8.22 MB. The needed run time memory (RAM) is approximately 12 MB 1.5% of CPU time. The User Friendly of the game: Enhance the car gear level. Using the proximity sensor of the android device to turn left and right.

Thank you Any Question ?