Asteroid Destroyer How it Works
|
|
- Suzanna Cox
- 6 years ago
- Views:
Transcription
1 Asteroid Destroyer How it Works This is a summary of some of the more advance coding associated with the Asteroid Destroyer Game. Many of the events with in the game are common sense other than the following topics Asteroid Handling Explained The "Asteroid"'s properties, the "Set angle" property is set to "No". This way, the bullet behavior will still make the asteroid move along the screen, but the rotate behavior will define the angle at which the texture will be displayed, giving the "illusion" the asteroid is rotating on itself while following a straight trajectory. Then any time the asteroid will leave the play field, the wrap behavior will automatically make it appear on the other side of the screen. The idea there is that when an "Asteroid" is being shot, it will "break" into two smaller asteroids. "Asteroid" has an instance variable that keeps a "size ratio", to check if, when the asteroid gets shot, it should break into smaller parts or simply disappear. The instance variable is therefore called "Size" and is a number variable, that be used in the "sizing formula". The default value is 1. Breaking down the code (Asteroid Handling) In "esgame" the group "AsteroidHandling" (event 18) contains the code for this game mechanic. Everything happens on a collision between an "Asteroid" and a "Bullet" The first action taken is to destroy the "Bullet" to prevent this event to be executed again next tick, to prevent the "Bullet" to hit another "Asteroid". Event 20 is empty (it has no condition) so will be executed every tick. As it is a sub event to the event 19, it will only execute if the event 19 executes. And the event 19 being a triggered condition (in the "Events run top to bottom" section of the article) this sub event will only run for one tick each time. This allows to create local variables and store values in those. Using a local variable here make sure that those values are reset each tick and can't be modified/used from outside of the current event. So once a collision is detected the first step is to keep the UID (Unique Identification Number) of the "Asteroid" in a local variable. (event 20)
2 UID (Unique Identification Number) All objects at runtime have a unique ID assigned, which is a number starting at 0 for the first instance and incrementing by 1 for every other instance. It is returned by the object's UID expression. This number can be used to uniquely identify a single instance throughout an entire game. For example, it can be stored in instance variables or event variables and later picked again by using the Pick by unique ID condition. This will allow Construct 2 to pick this asteroid again at the end of the process to destroy it. This is in anticipation of the fact that we might spawn two new "Asteroid" instances and that Construct 2 always picks the latest spawned object. The current angle of motion of the bullet behavior of this "Asteroid" instance is also kept in a local variable. It will be used later when spawning new asteroids as trajectory basis from which the newly instances will diverge. Event 21 is a sub event to event 19 and is "paired" with event 25. This event is a test on the current picked instance (the "Asteroid" instance that has collided with a "Bullet") to see if its "Size"'s value is less than 2.5. If it is, this means that we will split the asteroid into two smaller ones. System: Set CurrentSize to Asteroid.Size This action stores the current "Size" (instance variable) value and adds 0.5 to it. This is for the splitting of asteroids which is explained a few lines below. System: Add 1 to Score Adds 1 to the global variable "Score", the player just scored 1 point because he hit a "split able" "Asteroid" with one of his "Bullet". The splitting into two new instances happens event 22 which is a "Repeat 2 times" sub event. It will only execute if it's parent event is executed (event 21, so when Asteroid.Size < 2.5) and will repeat the bunch of actions two times. System: Create Asteroid at Asteroid.X, Asteroid.Y on layer 0 The system creates a new "Asteroid" at the position of the currently picked "Asteroid" instance. The first time the event runs, the picked instance is the instance that was in collision with "Bullet", the second time it is this newly spawned instance. And actually, from this action, this is also the picked instance. All the following actions will apply to this newly spawned instance and only this one.
3 Asteroid: Set Bullet angle of motion to int((currentaom + random(125))%180) degrees This action contains a bit of math and a bit of system expressions. (the expressions each have a definition, be sure to check the manual out whenever you're wondering about them) Let's break it down: int() Is a system expression that will make the content between the parenthesis an integer. CurrentAOM Is a local variable we set earlier that contains the Bullet angle of motion of the parent Asteroid instance. random(125) Is another system expression that will return (generate) a random number. In this case it will generate a number between 0 and 124 (included) to add to the parent s angle of motion, and make sure the child s trajectory is different from its parent s. The value 125 was achieved arbitrary and through trials and errors/tweaking. ()%180 Is the mathematical "modulo" (or "modulus"?) that makes sure the result between the parenthesis can't be greater than 180. The modulo is necessary here because the bullet angle of motion can be expressed in the range of 180 to 180. Asteroid: Set size (width, height) to ( 96 / CurrentSize, 96 / CurrentSize ) Affects the width and height properties of the Sprite object type and sets the current size of the texture/object to 96 (an arbitrary start value) divided by the value of the local variable CurrentSize which is the "Size" (instance variable) value of the parent instance Dividing a value by a greater value returns a diminished result. So the newly spawned "Asteroid" is CurentSize smaller than its parent. Asteroid: Set "Size" (instance variable) value to CurrentSize Sets the current instance's "Size" value to the value of the local variable CurrentSize. As on each split the "Size" value is incremented, the "Asteroid"'s size gets smaller, and it allows for the event21/event25 pairing/logic. Asteroid: Set Rotate speed to random(20,180) degrees per second As earlier, the random() system expression returns a float number here (because there is no int() in the formula) between 20 and 179 (included). It sets the rotation speed (on itself, Rotate behavior) for the current "Asteroid" instance,
4 allowing for a bit of visual diversity on screen (not all asteroids rotates at the same speed). Asteroid: Set Bullet speed to random(asteroidmaxspeed 10,AsteroidMaxSpeed) The two last actions are here for a visual final touch. Asteroid: Set angle to Asteroid.Bullet.AngleOfMotion degrees Asteroid: Move forward random(5,15) pixels The newly spawned "Asteroid" is moved away by a few pixels from its parent. For it to work, for this one tick, the angle of the Sprite is set to its Bullet angle of motion. Then the "Asteroid" is "forwarded" by a random amount of pixels (at least 5, at max 14). This is it for the split. System: Pick all Asteroid And so now, we need to "reset the picking" thanks to the system condition "Pick all". At this point of the code, the instance picked is the second "Asteroid" child instance we spawned. That's why there's the need to "Pick all (instances" here. Picking all "Asteroids" tells Construct 2 that we want to select another instance among all of the "Asteroid" instances available. System: CurrentUID not = 0 CurrentUID being a local variable, each tick its value is reset to 0. It is unlikely that an "Asteroid" instance has the UID 0 (this UID is reserved to the very first object that was created in the project, and it wasn't an "Asteroid"). This check is not really useful, but it prevent execution if an incorrect UID (the local variable default value: 0) is stored. It's only a check, it's not worth much, and it could prevent deleting the wrong instance. Asteroid: Pick instance with UID CurrentUID Finally this common condition pi cks the parent "Asteroid" instance by its UID, which we had kept at the beginning of this process in the local variable CurrentUID. (the blank event 20) The action "Asteroid: destroy" will apply to this instance, and this instance only. Event 25 is a "Else" condition that will occur when event 21 (a test to see if the size of the "Asteroid" in collision is less than 2.5) is not executed (because its condition is not true, the "Asteroid"'s size is 3). If this event executes, it means that the "Asteroid" instance in collision with a "Bullet" "Size" instance variable value is equal to 3. In the game logic, and because that's the value chose via tweaking, it means it is the last piece, it won't split, just be destroyed. It also adds 10 points to the player's score. This closes the "AsteroidHandling" group!
5 Player Health Explained The last point is handled in the group "PlayerHandling" (event 14) Event 15 the "Player" collides with an "Asteroid". Player: Substract int(35/ Asteroid.Size) from Health This action does reduce the "Health" instance variable value according to the "Asteroid"'s "Size" value. If the "Player" collides with a big "Asteroid" ("Size" = 1) it will lose 35 health points. (35/1 = 35) If the "Player" collides with a small "Asteroid" ("Size" = 3) it will lose around 11 health points. (35/3 = ) The "Health" is then displayed by the "LifeBar Asteroid: Destroy The "Asteroid" is simply destroyed. Event 17, the "Player"'s "Health" is equal or less than 0. This is game over. This closes the Player Health! Wave System Explained Each wave "spawns" a limited numbers of asteroids. Once every asteroids have been destroyed, the wave is ended, we wait for an input (press return) from the player and we start the next wave. The background picture is changed every wave. This is where all the previous code and the setting of the "Asteroid" object type comes in play. Every "Asteroid" instances will have the same mechanism/game behavior. They will all react the same way to the events. And "all" that there is to do is to spawn a few of those object at the start of the wave, and the game will play as expected. The wave system is in the group "WaveSystem" in "esgame" (event 25) and makes use of the global variable "Wave" (defined in the same event sheet).
6 The event 28 is actually the event that checks if the wave has ended. Event 29 is useless as long as the wave hasn't ended. The conditions to check if the wave has ended are : Make sure that all the "Asteroid" have been destroyed Make sure that we are not at the start of the game, before the very first wave Make sure that "Player" is still alive That's exactly what the 3 conditions of the event 28 do. Breaking down the code (WaveSystem) System: Asteroid.count = 0 The system condition "Compare two values", first value being the common expression "Count" that returns the number of instances for the object. If the number of instances is 0, it means the player has destroyed all the asteroids. System: Wave > 0 The system condition "Compare global variable" checks the "Wave" global variable to see if it is greater than 0. 0 is the default value of the variable, and is used for the start of the game. As the wave number only increments when the player presses "Return" in between waves, on beginning of the game, the code doesn't consider the situation as an end of wave. Player: Health > 0 Checking if the instance variable "Health" of the "Player" (our ship) is greater than 0, alive. We don't want death of the player to be interpreted as wave ending. As soon as those 3 conditions are true, it is considered as the wave's end. System: Set group "PlayerMovement" deactivated txtwave: Set visible txtwave: Set text to "Wave number: " & Wave + 1 & newline & "Press ""Return"" to play" So once again "PlayerMovement" is deactivated, preventing the player from inputting any control, "txtwave" is displayed to carry the feedback to the user.
7 Player: Set custom movement Overall speed to 0 On end of the wave, the ship is stopped at once. This is done by neutralizing the "Custom movement" behavior "Speed" property. Brakes: Set invisible Thrust: Set invisible If the player was pressing forward or brake when the last "Asteroid" got destroyed, the according sprite(s) might still be displayed, even if the player releases the button (the "PlayerMovement" group is deactivated remember). So even if the sprites are not displayed, these actions makes sure the visuals are not displayed on wave end. Event 30 is the expected input of the player to start in a new wave. System: Set group "PlayerMovement" activated The controls to the player so that he can control the ship. txtwave: Set invisible Simply hiding the text object. The text will be modified either by the Wave System on next wave's end or by the Pausing System. System: Add 1 to Wave The global variable "Wave" gets incremented (1 is added to its current value). System: Add 0.2 to AsteroidMaxSpeed Each wave, the "general" speed of the "Asteroid" gets slightly raised. It modulates the challenge for the player. The value here is totally arbitrary and might be a strong subject to tweaking. You could even use "Wave" in this formula. ex: System: Add (Wave * 10)/100 to AsteroidMaxSpeed This formula would for example add 10% of the "Wave" value to AsteroidMaxSpeed. The first wave would then add 0.1 to the variable. The second wave would add 0.2. Etc... Sub event 32 is the spawning of new "Asteroid" instances. It is repeated "Wave times", meaning that each wave spawns as much "Asteroid" instance (wave 1 spawns one "Asteroid", wave 2 spawns 2, wave 3 spawns 3, etc...) The actions are pretty much the same as in the "AsteroidHandling" group when "Asteroid" was split into two new instances. (Event 22)
8 System: Create object "Asteroid" on layer 1 at ( random(windowwidth), int(choose( 90, 25,825, 890)) ) The "Asteroid" instances are not spawned from one another, they are created at a fixed position on screen, in the layer 1. They can appear randomly on all the screen's width (X), but will appear at either 90, 25, 825 or 890 (Y). int() Is still the system expression that allows to returns the content between parenthesis as an integer. choose() Is a system expression that will return one of the elements in between its parenthesis (separated by comas ","). In this action, it will return one of the four values as the spawning Y position for the "Asteroid". All four positions are out of the screen. I wanted the "Asteroid" instances to come from "outer space" to the closed world (wrap). Asteroid: Set Bullet angle of motion to angle(asteroid.x,asteroid.y,player.x,player.y) degrees Unlike the splitting, the first trajectory for the "Asteroid" will point directly to the player's ship. It forces the player to quickly react to the setting of the new wave and engage in a strategy/action. angle() Another system expression that returns the angle (in a 360 range) between the two sets of coordinates entered as parameter. The rest of the actions are the very same as the splitting method. This is the wave system.
Fruit Snake SECTION 1
Fruit Snake SECTION 1 For the first full Construct 2 game you're going to create a snake game. In this game, you'll have a snake that will "eat" fruit, and grow longer with each object or piece of fruit
More informationCreating Breakout - Part 2
Creating Breakout - Part 2 Adapted from Basic Projects: Game Maker by David Waller So the game works, it is a functioning game. It s not very challenging though, and it could use some more work to make
More informationB - Broken Track Page 1 of 8
B - Broken Track There's a gap in the track! We need to make our robot even more intelligent so it won't get stuck, and can find the track again on its own. 2017 https://www.hamiltonbuhl.com/teacher-resources
More informationMITOCW watch?v=w_-sx4vr53m
MITOCW watch?v=w_-sx4vr53m The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high-quality educational resources for free. To
More informationPong in Unity a basic Intro
This tutorial recreates the classic game Pong, for those unfamiliar with the game, shame on you what have you been doing, living under a rock?! Go google it. Go on. For those that now know the game, this
More informationAN INTRODUCTION TO SCRATCH (2) PROGRAMMING
AN INTRODUCTION TO SCRATCH (2) PROGRAMMING Document Version 2 (04/10/2014) INTRODUCTION SCRATCH is a visual programming environment and language. It was launched by the MIT Media Lab in 2007 in an effort
More informationMoleMash for App Inventor 2. Getting Started. Introduction. Workshop, S.1
In the game MoleMash, a mole pops up at random positions on a playing field, and the player scores points by hitting the mole before it jumps away. This tutorial shows how to build MoleMash as an example
More informationTechnical Manual Urban Ninja
Sarah Somers B00330887 CS1106 Section 1 sarah.somers000@gmail.com Technical Manual Urban Ninja Kevin Leach B00321788 CS1106 Section x leach@cs.dal.ca INTRODUCTION Our game is called defend the dojo, you
More informationThese are the four symbols which we will use in the picture box to represent the sum instructions.
Create a Maths quiz game in Visual studio with C# Guess the symbol This you will need resource images for the symbols 4 labels 1 picture box called symbol num1 will show the first number num2 will show
More informationSmart formatting for better compatibility between OpenOffice.org and Microsoft Office
Smart formatting for better compatibility between OpenOffice.org and Microsoft Office I'm going to talk about the backbreaking labor of helping someone move and a seemingly unrelated topic, OpenOffice.org
More information(Refer Slide Time: 00:51)
Programming, Data Structures and Algorithms Prof. Shankar Balachandran Department of Computer Science and Engineering Indian Institute Technology, Madras Module 10 E Lecture 24 Content Example: factorial
More informationIn further discussion, the books make other kinds of distinction between high level languages:
Max and Programming This essay looks at Max from the point of view of someone with a bit of experience in traditional computer programming. There are several questions that come up from time to time on
More informationCreating joints for the NovodeX MAX exporter
Creating joints for the NovodeX MAX exporter (a step-by-step tutorial by Pierre Terdiman) p.terdiman@wanadoo.fr Version 0.3 I) Creating a hinge Here we'll see how to create a hinge joint compatible with
More informationCS 201 Advanced Object-Oriented Programming Lab 4 - Asteroids, Part 2 Due: February 24/25, 11:30 PM
CS 201 Advanced Object-Oriented Programming Lab 4 - Asteroids, Part 2 Due: February 24/25, 11:30 PM Introduction to the Assignment In this lab, you will complete the Asteroids program that you started
More informationCS 142 Style Guide Grading and Details
CS 142 Style Guide Grading and Details In the English language, there are many different ways to convey a message or idea: some ways are acceptable, whereas others are not. Similarly, there are acceptable
More informationCSCI 1100L: Topics in Computing Lab Lab 11: Programming with Scratch
CSCI 1100L: Topics in Computing Lab Lab 11: Programming with Scratch Purpose: We will take a look at programming this week using a language called Scratch. Scratch is a programming language that was developed
More information6.001 Notes: Section 17.5
6.001 Notes: Section 17.5 Slide 17.5.1 Now, let's look at one example in which changing the evaluation model allows us to explore a very different kind of computational problem. Our goal is to show how
More information--APOPHYSIS INSTALLATION AND BASIC USE TUTORIAL--
--APOPHYSIS INSTALLATION AND BASIC USE TUTORIAL-- Table of Contents INSTALLATION... 3 SECTION ONE - INSTALLATION... 3 SIDE LESSON - INSTALLING PLUG-INS... 4 APOPHYSIS, THE BASICS... 6 THE TRANSFORM EDITOR...
More informationDecisions, Decisions. Testing, testing C H A P T E R 7
C H A P T E R 7 In the first few chapters, we saw some of the basic building blocks of a program. We can now make a program with input, processing, and output. We can even make our input and output a little
More informationBONE CONTROLLER ASSET VERSION 0.1 REV 1
Foreword Thank you for purchasing the Bone Controller! I m an independent developer and your feedback and support really means a lot to me. Please don t ever hesitate to contact me if you have a question,
More informationPacman. you want to see how the maze was created, open the file named unity_pacman_create_maze.
Pacman Note: I have started this exercise for you so you do not have to make all of the box colliders. If you want to see how the maze was created, open the file named unity_pacman_create_maze. Adding
More informationBEGINNER PHP Table of Contents
Table of Contents 4 5 6 7 8 9 0 Introduction Getting Setup Your first PHP webpage Working with text Talking to the user Comparison & If statements If & Else Cleaning up the game Remembering values Finishing
More informationINFORMATICS LABORATORY WORK #4
KHARKIV NATIONAL UNIVERSITY OF RADIO ELECTRONICS INFORMATICS LABORATORY WORK #4 MAZE GAME CREATION Associate Professor A.S. Eremenko, Associate Professor A.V. Persikov Maze In this lab, you build a maze
More informationDamaging, Attacking and Interaction
Damaging, Attacking and Interaction In this tutorial we ll go through some ways to add damage, health and interaction to our scene, as always this isn t the only way, but it s the way I will show you.
More informationFormal Methods of Software Design, Eric Hehner, segment 24 page 1 out of 5
Formal Methods of Software Design, Eric Hehner, segment 24 page 1 out of 5 [talking head] This lecture we study theory design and implementation. Programmers have two roles to play here. In one role, they
More informationBetter UI Makes ugui Better!
Better UI Makes ugui Better! 2016 Thera Bytes UG Developed by Salomon Zwecker TABLE OF CONTENTS Better UI... 1 Better UI Elements... 4 1 Workflow: Make Better... 4 2 UI and Layout Elements Overview...
More informationAnimations involving numbers
136 Chapter 8 Animations involving numbers 8.1 Model and view The examples of Chapter 6 all compute the next picture in the animation from the previous picture. This turns out to be a rather restrictive
More informationIntroduction to Unreal Engine Blueprints for Beginners. By Chaven R Yenketswamy
Introduction to Unreal Engine Blueprints for Beginners By Chaven R Yenketswamy Introduction My first two tutorials covered creating and painting 3D objects for inclusion in your Unreal Project. In this
More informationSetting up A Basic Scene in Unity
Setting up A Basic Scene in Unity So begins the first of this series of tutorials aimed at helping you gain the basic understanding of skills needed in Unity to develop a 3D game. As this is a programming
More informationSPRITES Moving Two At the Same Using Game State
If you recall our collision detection lesson, you ll likely remember that you couldn t move both sprites at the same time unless you hit a movement key for each at exactly the same time. Why was that?
More informationWe created a few different effects and animations using this technique as applied to clones.
Contents Scratch Advanced: Tick technique and Clones... 1 The tick-technique!... 1 Part 1: The Game Time Loop... 1 Part 2: The setup... 2 Part 3: The sprites react to each game tick... 2 The Spinning Shape
More informationHi everyone. Starting this week I'm going to make a couple tweaks to how section is run. The first thing is that I'm going to go over all the slides
Hi everyone. Starting this week I'm going to make a couple tweaks to how section is run. The first thing is that I'm going to go over all the slides for both problems first, and let you guys code them
More informationTEAM 12: TERMANATOR PROJECT PROPOSAL. TEAM MEMBERS: Donald Eng Rodrigo Ipince Kevin Luu
TEAM 12: TERMANATOR PROJECT PROPOSAL TEAM MEMBERS: Donald Eng Rodrigo Ipince Kevin Luu 1. INTRODUCTION: This project involves the design and implementation of a unique, first-person shooting game. The
More informationAdding Depth to Games
Game Maker Tutorial Adding Depth to Games Written by Mark Overmars Copyright 2007-2009 YoYo Games Ltd Last changed: December 23, 2009 Uses: Game Maker 8.0, Pro Edition, Advanced Mode Level: Intermediate
More informationSmasher Video Game Design
Smasher Video Game Design CSEE 4840 Spring 2012 Project Design Prepared for Prof. Stephen Edwards Prepared By Jian Liu, jl3784 Tong Zhang, tz2176, Chaoying Kang, ck2566 Yunfan Dong, yd2238 Mar 20 th,2012
More informationSpell Casting Motion Pack 5/5/2017
The Spell Casting Motion pack requires the following: Motion Controller v2.49 or higher Mixamo s free Pro Magic Pack (using Y Bot) Importing and running without these assets will generate errors! Overview
More information12/15/2008. All about Game Maker. Integrated Development Environment for 2D games Global idea
Game Design 2008 Lecture 09 All about Game Maker Which is required for last assignment Integrated Development Environment for 2D games Global idea Simple to use, using drag-and-drop Still considerable
More informationThe Stack, Free Store, and Global Namespace
Pointers This tutorial is my attempt at clarifying pointers for anyone still confused about them. Pointers are notoriously hard to grasp, so I thought I'd take a shot at explaining them. The more information
More informationBurning CDs in Windows XP
B 770 / 1 Make CD Burning a Breeze with Windows XP's Built-in Tools If your PC is equipped with a rewritable CD drive you ve almost certainly got some specialised software for copying files to CDs. If
More informationMicrosoft Access 2016 Intro to Forms and Reports
Microsoft Access 2016 Intro to Forms and Reports training@health.ufl.edu Access 2016: Intro to Forms and Reports 2.0 hours Topics include using the AutoForm/AutoReport tool, and the Form and Report Wizards.
More informationDissolving Models with Particle Flow and Animated Opacity Map
Dissolving Models with Particle Flow and Animated Opacity Map In this tutorial we are going to start taking a look at Particle Flow, and one of its uses in digital effects of making a model look as though
More informationMITOCW watch?v=0jljzrnhwoi
MITOCW watch?v=0jljzrnhwoi The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To
More informationpygame Lecture #5 (Examples: fruitgame)
pygame Lecture #5 (Examples: fruitgame) MOUSE INPUT IN PYGAME I. Detecting Mouse Input in pygame In addition to waiting for a keyboard event to precipitate some action, pygame allows us to wait for a mouse
More informationRENDERING TECHNIQUES
RENDERING TECHNIQUES Colors in Flash In Flash, colors are specified as numbers. A color number can be anything from 0 to 16,777,215 for 24- bit color which is 256 * 256 * 256. Flash uses RGB color, meaning
More informationVANSTEENKISTE LEO DAE GD ENG UNFOLD SHADER. Introduction
VANSTEENKISTE LEO 2015 G E O M E T RY S H A D E R 2 DAE GD ENG UNFOLD SHADER Introduction Geometry shaders are a powerful tool for technical artists, but they always seem to be used for the same kind of
More informationHow to approach a computational problem
How to approach a computational problem A lot of people find computer programming difficult, especially when they first get started with it. Sometimes the problems are problems specifically related to
More informationFlowmap Generator Reference
Flowmap Generator Reference Table of Contents Flowmap Overview... 3 What is a flowmap?... 3 Using a flowmap in a shader... 4 Performance... 4 Creating flowmaps by hand... 4 Creating flowmaps using Flowmap
More informationTacky Golf Senior Project Write-Up By Robert Crosby
Tacky Golf Senior Project Write-Up By Robert Crosby Abstract This project implements a simple miniature golf game in 3d for the iphone. Using a modular approach the game engine was written in several modules
More informationHandout Objectives: a. b. c. d. 3. a. b. c. d. e a. b. 6. a. b. c. d. Overview:
Computer Basics I Handout Objectives: 1. Control program windows and menus. 2. Graphical user interface (GUI) a. Desktop b. Manage Windows c. Recycle Bin d. Creating a New Folder 3. Control Panel. a. Appearance
More informationAdvanced Reporting Tool
Advanced Reporting Tool The Advanced Reporting tool is designed to allow users to quickly and easily create new reports or modify existing reports for use in the Rewards system. The tool utilizes the Active
More informationPractice Exam Sample Solutions
CS 675 Computer Vision Instructor: Marc Pomplun Practice Exam Sample Solutions Note that in the actual exam, no calculators, no books, and no notes allowed. Question 1: out of points Question 2: out of
More informationInvent Your Own Computer Games with Python
Dragon Realm Invent Your Own Computer Games with Python Heejin Park College of Information and Communications Hanyang University Introduction Dragon Realm Sample Run Source Code Code Explanation def statements
More informationMITOCW watch?v=kz7jjltq9r4
MITOCW watch?v=kz7jjltq9r4 PROFESSOR: We're going to look at the most fundamental of all mathematical data types, namely sets, and let's begin with the definitions. So informally, a set is a collection
More informationClick on the empty form and apply the following options to the properties Windows.
Start New Project In Visual Studio Choose C# Windows Form Application Name it SpaceInvaders and Click OK. Click on the empty form and apply the following options to the properties Windows. This is the
More informationPython & PixelPAD. FIRST Robotics. Power Up Tutorial. Introduction to App Dev with PixelPAD
Python & PixelPAD Introduction to App Dev with PixelPAD FIRST Robotics Power Up Tutorial 1 Table of Contents Getting Started... 4 What is PixelPAD?... 4 Scripts... 6 Scripts... 6 The Game Script... 7 Default
More informationMobile Touch Floating Joysticks with Options version 1.1 (Unity Asset Store) by Kevin Blake
Mobile Touch Floating Joysticks with Options version 1.1 (Unity Asset Store) by Kevin Blake Change in version 1.1 of this document: only 2 changes to this document (the unity asset store item has not changed)
More informationSkill 1: Multiplying Polynomials
CS103 Spring 2018 Mathematical Prerequisites Although CS103 is primarily a math class, this course does not require any higher math as a prerequisite. The most advanced level of mathematics you'll need
More informationIntroduction pixels (but it is allowed to come out of limits)
The SMBX1...64 *.LVL file specification Reverse-engined by Wohlstand 02/12/2014 (100% done) Level file is a TEXT file. All parameters are written sequentially with separating by CRLF newline character
More informationLightning Strikes. In this tutorial we are going to take a look at a method of creating some electricity zapper effects using Particle Flow.
Lightning Strikes In this tutorial we are going to take a look at a method of creating some electricity zapper effects using Particle Flow. Open a new scene in 3DS Max and press 6 to open particle view.
More informationStart Visual Studio, create a new project called Helicopter Game and press OK
C# Tutorial Create a helicopter flying and shooting game in visual studio In this tutorial we will create a fun little helicopter game in visual studio. You will be flying the helicopter which can shoot
More informationGetting help with Edline 2. Edline basics 3. Displaying a class picture and description 6. Using the News box 7. Using the Calendar box 9
Teacher Guide 1 Henry County Middle School EDLINE March 3, 2003 This guide gives you quick instructions for the most common class-related activities in Edline. Please refer to the online Help for additional
More information>print "hello" [a command in the Python programming language]
What Is Programming? Programming is the process of writing the code of computer programs. A program is just a sequence of instructions that a computer is able to read and execute, to make something happen,
More informationGame Board: Enabling Simple Games in TouchDevelop
Game Board: Enabling Simple Games in TouchDevelop Manuel Fähndrich Microsoft Research One Microsoft Way, Redmond WA 98052, USA maf@microsoft.com February 23, 2012 Abstract TouchDevelop is a novel application
More informationPython & PixelPAD. FIRST Robotics. Maker Labs Tutorial. Introduction to App Dev with PixelPAD
Python & PixelPAD Introduction to App Dev with PixelPAD FIRST Robotics Maker Labs Tutorial 1 Table of Contents Getting Started... 4 What is PixelPAD?... 4 Scripts... 6 Scripts... 6 The Game Script... 7
More informationWhat You're Building 2. Getting Started 3 Introduction 4 Iteration or how we will get to Finished App. 4
Table of Contents What You're Building 2 Getting Started 3 Introduction 4 Iteration or how we will get to Finished App. 4 Iteration 1 Create still image of our Game 5 Getting Ready 5 Set up the Components
More informationChaos Culture. Multiclip Editor / Multiclip Note preview 1.5. Edited by Jason Cowling
Chaos Culture Introduction... 2 Important stuff... 2 Setup... 3 Editing clips... 4 Using the editor... 5 Settings... 9 Workflow settings... 10 Performance... 13 Future updates... 13 Editor 1.6.61 / Note
More informationIntro. Speed V Growth
Intro Good code is two things. It's elegant, and it's fast. In other words, we got a need for speed. We want to find out what's fast, what's slow, and what we can optimize. First, we'll take a tour of
More informationBlitz2D Newbies: Definitive Guide to Types by MutteringGoblin
Blitz2D Newbies: Definitive Guide to Types by MutteringGoblin Types are probably the hardest thing to understand about Blitz Basic. If you're using types for the first time, you've probably got an uneasy
More informationBeginning a New Project
3 Beginning a New Project Introducing Projects 000 Creating and Naming a Project 000 Importing Assets 000 Importing Photoshop Documents 000 Importing Illustrator Documents 000 Importing QuickTime Movies
More informationTo use the keyboard emulation, you must activate it in the tray icon menu (see 2.6 Enable keyboard emulation)
LEA USER GUIDE Notice: To use LEA you have to buy the client and download the free server at: https://www.leaextendedinput.com/download.php The Client is available in the App Store for IOS and Android
More informationOpen GL Framework For A Computer Graphics Course
Open GL Framework For A Computer Graphics Course Programmer: Daniel Odle Sponsor / Advisor: Dr. Morse University of Evansville 4-26-03 Table of Contents Introduction 3 Statement of Problem 3 Design Approach
More information[ the academy_of_code] Senior Beginners
[ the academy_of_code] Senior Beginners 1 Drawing Circles First step open Processing Open Processing by clicking on the Processing icon (that s the white P on the blue background your teacher will tell
More informationTable of Laplace Transforms
Table of Laplace Transforms 1 1 2 3 4, p > -1 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 Heaviside Function 27 28. Dirac Delta Function 29 30. 31 32. 1 33 34. 35 36. 37 Laplace Transforms
More informationLAB 2: DATA FILTERING AND NOISE REDUCTION
NAME: LAB TIME: LAB 2: DATA FILTERING AND NOISE REDUCTION In this exercise, you will use Microsoft Excel to generate several synthetic data sets based on a simplified model of daily high temperatures in
More informationMax and Programming Is Max a Programming Language?
There are several questions that come up from time to time on the Max discussion list. Is Max a real programming language? if so how do I do [loop, switch, bitmap, recursion] and other programming tricks
More informationTroubleshooting Maple Worksheets: Common Problems
Troubleshooting Maple Worksheets: Common Problems So you've seen plenty of worksheets that work just fine, but that doesn't always help you much when your worksheet isn't doing what you want it to. This
More informationGame Programming with. presented by Nathan Baur
Game Programming with presented by Nathan Baur What is libgdx? Free, open source cross-platform game library Supports Desktop, Android, HTML5, and experimental ios support available with MonoTouch license
More informationErasmus+ Project: Yestermorrow Year 1 Maths: Pythagorean Theorem
Erasmus+ Project: Yestermorrow Year 1 Maths: Pythagorean Theorem Workshop (Coding Android Mobile Apps): Collision Detection and the Pythagorean Theorem (Based on the code.org worksheet) WORKSHOP OVERVIEW
More informationUnderstanding an App s Architecture
Chapter 14 Understanding an App s Architecture This chapter examines the structure of an app from a programmer s perspective. It begins with the traditional analogy that an app is like a recipe and then
More informationDarkBASIC Pro: Counters and Timers Copyright 2011 A. Stewart 1
DarkBASIC Pro: Counters and Timers Copyright 2011 A. Stewart 1 Counters and Timers Introduction Many games need to display either counters, or timers, or both. We need to count how many points you ve accumulated
More informationDesigning and Printing Address Labels
Designing and Printing Address Labels This file will show you one way to use your computer for producing stick-on address labels, helping you to reduce the time involved in preparing the year's set of
More informationPaintPot: (Part 1) What You're Building. Before starting
PaintPot: (Part 1) This tutorial introduces the Canvas component for creating simple two-dimensional graphics. You'll build an app that lets you draw on the phone screen in different colors. Historical
More information08 NSBasic Moving Target Page = 1 = 13 October 2015
08 NSBasic Moving Target Page = 1 = 13 October 2015 08 NSBasic Moving Target Download the Moving Target V3.00 NSBasic start file from your home folder. This is the file that you will start with in the
More informationHow to Create Greeting Cards using LibreOffice Draw
by Len Nasman, Bristol Village Ohio Computer Club If you want to create your own greeting cards, but you do not want to spend a lot of money on special software, you are in luck. It turns out that with
More informationMaking use of other Applications
AppGameKit 2 Collision Using Arrays Making use of other Applications Although we need game software to help makes games for modern devices, we should not exclude the use of other applications to aid the
More informationIP subnetting made easy
Version 1.0 June 28, 2006 By George Ou Introduction IP subnetting is a fundamental subject that's critical for any IP network engineer to understand, yet students have traditionally had a difficult time
More informationCS102: Standard I/O. %<flag(s)><width><precision><size>conversion-code
CS102: Standard I/O Our next topic is standard input and standard output in C. The adjective "standard" when applied to "input" or "output" could be interpreted to mean "default". Typically, standard output
More informationHello World! Computer Programming for Kids and Other Beginners. Chapter 1. by Warren Sande and Carter Sande. Copyright 2009 Manning Publications
Hello World! Computer Programming for Kids and Other Beginners by Warren Sande and Carter Sande Chapter 1 Copyright 2009 Manning Publications brief contents Preface xiii Acknowledgments xix About this
More informationTracking changes in Word 2007 Table of Contents
Tracking changes in Word 2007 Table of Contents TRACK CHANGES: OVERVIEW... 2 UNDERSTANDING THE TRACK CHANGES FEATURE... 2 HOW DID THOSE TRACKED CHANGES AND COMMENTS GET THERE?... 2 WHY MICROSOFT OFFICE
More informationExcel Basics Rice Digital Media Commons Guide Written for Microsoft Excel 2010 Windows Edition by Eric Miller
Excel Basics Rice Digital Media Commons Guide Written for Microsoft Excel 2010 Windows Edition by Eric Miller Table of Contents Introduction!... 1 Part 1: Entering Data!... 2 1.a: Typing!... 2 1.b: Editing
More informationIntroduction to Game Programming Lesson 4 Lecture Notes
Introduction to Game Programming Lesson 4 Lecture Notes Learning Objectives: Following this lecture, the student should be able to: Define frame rate List the factors that affect the amount of time a game
More informationScreenshots Made Easy
Screenshots Made Easy Welcome to the simplest screenshot tutorial ever. We'll be using the simplest graphic editing tool ever: Microsoft Paint. The goal of this tutorial is to get you making your own screenshots
More informationSimulator. Chapter 4 Tutorial: The SDL
4 Tutorial: The SDL Simulator The SDL Simulator is the tool that you use for testing the behavior of your SDL systems. In this tutorial, you will practice hands-on on the DemonGame system. To be properly
More informationSoftware Prototyping. & App Inventor
Software Prototyping & App Inventor Prototyping This & next several slides distilled from: http://appinventor.mit.edu/explore/teaching-app-creation.html Prototype: preliminary, interactive model of an
More informationReggieNet: Content Organization Workshop. Facilitators: Mayuko Nakamura (mnakamu), Charles Bristow (cebrist) & Linda Summers (lsummer)
ReggieNet: Content Organization Workshop Facilitators: Mayuko Nakamura (mnakamu), Charles Bristow (cebrist) & Linda Summers (lsummer) Content Organization Overview There are many ways to organize content
More informationChapter 1 Operations With Numbers
Chapter 1 Operations With Numbers Part I Negative Numbers You may already know what negative numbers are, but even if you don t, then you have probably seen them several times over the past few days. If
More informationLesson 4: Who Goes There?
Lesson 4: Who Goes There? In this lesson we will write a program that asks for your name and a password, and prints a secret message if you give the right password. While doing this we will learn: 1. What
More informationIntroduction to Programming in C Department of Computer Science and Engineering. Lecture No. #43. Multidimensional Arrays
Introduction to Programming in C Department of Computer Science and Engineering Lecture No. #43 Multidimensional Arrays In this video will look at multi-dimensional arrays. (Refer Slide Time: 00:03) In
More informationWritten test, 25 problems / 90 minutes
Sponsored by: UGA Math Department and UGA Math Club Written test, 5 problems / 90 minutes October 1, 017 Instructions 1. At the top of the left of side 1 of your scan-tron answer sheet, fill in your last
More informationTable of Contents 1.1. Introduction Installation Quick Start Documentation Asynchronous Configuration 1.4.
Table of Contents Introduction 1 Installation 2 Quick Start 3 Documentation Asynchronous Configuration Level Streaming Saving And Loading Slot Templates 1.1 1.2 1.3 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1
More information