This project requires students to create a 3D first-person shooter game in Unity and C#. Key requirements include implementing first-person player control and weapons, collecting objects, AI-controlled enemies, sound effects, visual effects, and a UI. Students must submit their game assets, a standalone executable, and a gameplay video by November 3rd for grading based on implemented features.
Hybridoma Technology ( Production , Purification , and Application )
1 CMIS 3150 Game Programming & Development I CSC4820.docx
1. 1
CMIS 3150: Game Programming & Development I
CSC4820/6820: Interactive Computer Graphics
Project 3
In this project, you will develop a simple 3D first-person
shooter game. You will learn
how to implement first-person player control, ranged
weapon/projectile, collectable
objects, game AI/NPC navigation, UI, sound effects, and visual
effects.
Deadline: 11:59 pm, 11/3/2022
Requirements:
1. This is an individual project.
2. You must use Unity and C#. The project must involve
programming.
3. Player character
a. You must use first-person control.
b. The main character should be able to do the following:
2. i. walk (WASD keys or the arrow keys),
ii. run (SHIFT key + WASD or arrow keys)
iii. jump (SPACE key)
iv. switch weapon (Q or E key)
v. fire weapon (left mouse button)
vi. look around (mouse motion)
c. The character should have three lives.
4. Weapons
a. There are two types of weapons in this game: gun and rocket-
propelled
grenade (RPG).
b. To kill an enemy with the gun, you need to hit it 3 times.
c. To kill an enemy with the RPG, you only need to hit it once.
d. There is one gun and one RPG in the game. You do not have
any weapons at
the start of the game. You will need to find them and pick them
up by walking
or running over them.
e. The gun has 6 bullets.
f. You can only fire an RPG once.
g. There is additional ammunition (bullets and grenades) in the
game world for
you to pick them up.
i. You can use the 3D weapon models from the Unity Asset
Store or
other websites. The 3D models do not need to be precise. The
3. weapons can be attached to the avatar from the beginning but
are
invisible. Only when you pick up a weapon, the weapon is
visible.
2
5. Gameworld
a. The game world contains the following objects:
i. There is a house.
ii. To get to the house, you need to pass a gate.
iii. The house is guarded by two guards (NPCs). The two guards
will
patrol the house. The guards will pursue you if you get within a
certain
distance of the house. Each guard will shoot at you if it is close
enough. The guards have unlimited bullets.
Use Unity's game AI to navigate the NPCs.
The guards do not need to be realistic characters. A capsule is
fine.
Character animations are not required.
b. Only one level is required.
Figure 1. This is a sketch of the game world. It just illustrates
the general ideas of this
4. game. Your layout can be different from this.
The trigger colliders are invisible colliders that trigger attacks
from the guards.
6. Gameplay
3
a. Your goal is to eliminate the two guards and enter the house.
b. The only way to get close to the house is to pass a gate. If
you get within a
certain distance of the house, the two guards will pursue you. If
a guard is
within a certain distance to you, the guard will shoot at you. If
you are too far
from the house, the guard will go back to patrol.
c. If you are out of bullets or grenades, you can look for
additional ammunition.
d. If you are hit by a bullet, one life is lost.
7. Sound effects are required. Sound effects should be played in
the following events:
a. Shooting the gun
b. Shooting the RPG
5. c. RPG explosion
d. Hitting a guard
e. You are hit
f. Background music
8. Visual effects are required. When the bullet or the grenade
hits an object, there
should be a visual effect (i.e., particle system).
9. A Graphical User Interface (GUI) is required. The following
information should be
displayed in the GUI:
a. The number of lives left
b. Weapons you have collected
c. The number of bullets left
d. The number of kills
10. Lighting: You can add multiple point lights or sunlight in
Unity Editor. Adding regular
lights doesn't require coding, so this is not very difficult.
Experiment with multiple
lights.
11. You should build a standalone player of your game for
Windows, so my TA or I can
play it without having to open your project in Unity. If you use
Mac, you can create a
Mac version. But Windows is preferred.
6. a. For instructions on how to create standalone players, visit
this page.
b. Please test and make sure your standalone player is working
before
submission. It's not enough to just submit the standalone player
executable
file. You also need to include UnityPlayer.dll and the data
folder.
c. If my TA or I cannot run your game, we will deduct points.
12. Create a short gameplay video that includes at least one
successful playthrough
and at least one failure. You can record separate videos and edit
them together. You
can easily record gameplay on Windows 10 (see this link) and
Mac (see this link).
https://docs.unity3d.com/Documentation/Manual/PublishingBuil
ds.html
https://www.pcmag.com/news/349410/how-to-capture-video-
clips-in-windows-10
https://www.imore.com/how-screen-record-gameplay-mac
4
a. You may submit the video file or upload the video to
YouTube (or another
cloud server) and submit a link.
7. 13. Grading guideline
a. Game assets only (max 50 points).
i. If you only submit assets without a standalone player or
gameplay
video, I assume your game is unfinished. You will get at most
50
points, depending on how much work you have done.
ii. Without a playable standalone player, it's difficult for me to
check what
you have implemented. You will need to write a report detailing
what
you have implemented.
b. Game assets + Standalone player (max 90 points)
i. If you fail to submit a gameplay video, assuming your
standalone
player works, you will lose 10 points.
ii. For the grading of individual game features, see C.
c. Game assets + Standalone player + Gameplay video (max 100
points)
Assuming you submit everything and the standalone player
works, the
individual game features are graded as below.
i. First-person player control (10 points)
ii. Can the player character collect weapons and ammunition?
(10 points)
iii. Can the player shoot projectiles with the gun? (10 points)
iv. Can the player shoot projectiles with the RPG? (10 points)
v. Can the projectiles from the gun damage and kill the
enemies? (15
8. points)
vi. Can the projectiles from the RPG damage and kill the
enemies? (15
points)
vii. Can NPCs patrol and pursue the player character? (5 points)
viii. Sound effects (10 points)
ix. Visual effects (5 points)
x. UI (10 points)
14. Deliverables. Your final submission should be a zip file
that includes the following:
a. All the game assets and the source code
i. Please remove unused and unnecessary packages from your
Unity
project before submission. In previous classes, some students
submitted huge asset files that included many unused and
unnecessary files. It took a long time to unpack and load these
projects
into Unity which slowed down the grading.
b. A standalone application (executable file and data folder, if
any)
c. Gameplay video or a file that shows the link to your
gameplay video
d. Upload the zip file to the iCollege > Assignments, under the
folder "Project 3."