ITCS 3153 Introduction to Artificial Intelligence

ITCS 3153 Introduction to Artificial Intelligence InstructionsUsing the provided Bomber Belts Unity Project, write your own AI Script for the character to play the game.…

ITCS 3153
Introduction to Artificial Intelligence

InstructionsUsing
the provided Bomber Belts Unity Project, write your own AI Script for
the character to play the game. Your script will be used on a
character while another classmate’s script will be used on the
opposing character. Please refer to the information below on how
and where to write the code.

Download the Bomber Belts
2014 Project from Moodle

Open the Scene named Menu
inside of the Assets folder

Locate the AI_Template.cs
file inside of the Assets / Resources / AI Scripts folder

This is the script you will
modify to create your AI algorithm

Refer to the information
below on available functions to call

You may also use the
AI_Sample.cs script to see an example implementation

Change
the name of the script to AIScript_YourName.cs

You
will also need to change the class name

Do NOT make any
modifications to any other scripts in the project

Any
modifications to the speed of the bombs or players, or any
adjustments to the game that grants an unfair advantage to a player
will automatically result in a zero for this assignment.

To test your script, simply
run the Menu screen and select your script.

Coding Framework
InformationAll of the functionality for moving your
character, sending bombs, and positional/state information of the
belts and bombs have been written for you inside other scripts. You
can access those functions by using the mainScript variable
that is already declared and initialized for you inside of the
AI_Template.cs file. Below is a complete list of functions.

void
moveUp()

Moves the player up. The player will continue to move up until
otherwise instructed.

void
moveDown()

Moves the player down. The player will continue to move down
until otherwise instructed.

void
push()

Attempts to push the closest button. If the character is too
far from the button, the button is already engaged, or is on
cooldown, nothing will happen.

float
getCharacterLocation()

Returns the position of the character as a float

float
getOpponentLocation()

Returns the position of the opposing character as a float

float[]
getButtonLocations()

Returns an array of floats for representing the position of
each button on your side

float[]
getButtonCooldowns()

Returns an array of floats representing the time remaining
before each button may be pressed again.

bool[]
getBeltDirection()

Returns an array of Boolean values that corresponds to whether
or not the buttons on your side of the board have been engaged.
True means the belt/button is engaged and the bomb is moving
towards your opponent.

float[]
getBombDistances()

Returns an array of float values that represent the distance
each bomb is from its corresponding button on your side

float
getPlayerSpeed()

Returns the speed at which the characters move

float
getBombSpeed()

Returns the speed at which the bombs move

Submission InformationMake
sure that you’ve changed the name of the script to
AIScript_YourName.cs and that you’ve also changed the class
name to match the file name. Upload your completed AI script to
Moodle.

A Few Points

Whenever a button is pressed,
that belt becomes disabled for 1.0 second. Neither player may press
a button on that belt until the second has elapsed. Example: the
blue player presses the button on belt 1. Both the blue player’s
button 1 and the red player’s button 1 become disabled for 1.0
second.

You can access the list of
each bomb’s current cooldown by calling getButtonCooldowns().

Calling moveUp()at
the very top will have no effect. This is likewise true for
moveDown()at the bottom.

Make sure your script has
elements of AI. Simply copying what the opponent is doing (i.e.,
following) or doing the same time every time regardless of what
environmental percepts dictate is not AI.

Let’s block ads! (Why?)

Do you need any assistance with this question?
Send us your paper details now
We’ll find the best professional writer for you!

 



error: Content is protected !!