IIntro

Syllabus

Instructor Contact info

Instructor: Dr. John F. Santore
Office: Science Center 333
E-Mail: jsantore@bridgew.edu
Website:http://webhost.bridgew.edu/jsantore/Fall2025/Games


Office Hours For Fall 2025

  • Monday 2-3pm
  • Tuesday 2-3pm
  • Wednesday 4:45-5:45 am
  •  Friday 10-11am
  • or by appointment

I   also will take appointments if you cannot make my other office hours, however, I generally have meetings and work prepared for a day or two ahead so plan on about 48 hours from the time I get your request to us being able to meet.

Course Description:

In this course we will look at the whole life cycle of game development. We will focus on 2D games, avoiding some of the implementation details that hinder the development of 3D games. Students will begin with sketching out ideas, implement 2D graphics-based games. Students will experiment with 2D game concepts like scrolling, tiled maps and creating the illusion of infinite space. We will look at game Artificial Intelligence including pathing and goal selection. Students will also explore issues of art selection for games, including copyright issues and intellectual property.


Course Outcomes

At the end of the course Students will:

  • Implement basic 2d techniques like tiling, scrolling, parallax and others
  • Understand the intellectual property laws associated with game development and design
  • Understand and implement the client server and secure server techniques needed for a multiplayer game
  • Understand and implement some basic game AI
  • Understand the various game publication and target venues and the strengths and weaknesses of each
  • Understand and try the formal elements of game design and how they can be used in designing your own games 

Textbooks:

1 required Textbook:


Title:

Practical Game Design: A modern and comprehensive guide to video game design 2nd ed

Author:

       Adam Kramarzewski and Ennio De Nucci

ISBN 978-1803245157

    Class Requirements and Grading

    • Programming projects: 30%
    • Game Development Projects 25%
    • Exams 35%% : One Midterm (15%) and Final(20%)
    • Everything else (quizzes, participation, homeworks etc.): 10%

Game Programming Project Work

This is a computer science course in game development. We will write a number of game and game-like programs starting from simple toys and working up to more complex games. All programming projects are to be done individually unless otherwise indicated on the assignment page. However, this is an upper level computer science class; You will often query resources when you are doing 'real' development beyond the basics (which need to be deep in your bones). Therefore you can use the internet to look things  up and up to 40% of your final code can be either emitted from an AI assistant or a taken from someplace like stack exchange or the game engine forums so long as you credit the source of the code in your code with comments. That way if I find the same thing in several submissions I know how it happened.

Game Development Projects:

This class will also require you to work through some more theoretical exercises in game development. This part of the course will require writing, analysis, and perhaps even some cutting and pasting (with like scissors and glue not a swipe or mouse). These assignments will be individual to begin with, but many will allow or require coordination later on. Each assignment will specify whether it is individual or group work.


Everything Else.

We will have quizzes worth a very small portion of your grade in the weeks leading up to the midterm and the final. These quizzes are intended to prepare you for the exams which are worth much more of your grade. We may have homeworks from time to time, particularly if a class is cancelled for any reason.

Students with special needs:

Anyone who has special needs should contact me in the first week of classes (and bring me the student accessibility services letter) so that reasonable accommodations can be agreed on.

Academic Integrity:

See the BSU Academic Integrity statement (most recent available at the moment) for a complete description of the academic integrity procedure at Bridgewater.

Academic integrity will be taken very seriously in this class. All individual work must be your own. If you cheat or otherwise represent the work of others as your own. You will receive an F for the course.

Guidelines for proper academic integrity:

Discussing problems with your classmates can help you understand the problems and kinds of solutions to those problems that you will learn about in this class. In an effort to make in clear what sort of discussions are appropriate and encouraged in this class and which cross the line to academic dishonesty I use the following guidelines: You may discuss any out of class problem I assign in this class with your classmates or other so long as no one is using any sort of recording implement including, but not limited to, computers, digital recorders, pens, pencils, phones etc. This lets you talk about theoretical solutions without sharing the actual implementations. As soon as anyone in the group is typing, writing etc, all conversations must stop. You may look at someone else's program code only very briefly in order to spot a simple syntax error. As a rule of thumb, if you find yourself looking at someone else's code for more than about 30-45 seconds it is probably time to stop. If you are having trouble with your program, come to the instructors office hours for more help.

Furthermore, this is an upper level computer science class, using examples and online resources as *part* of your solution is reasonable and expected. If you use something from an online resource, you need to comment that section of your code (one at the beginning and one at the end) with the source of the borrowed code. This borrowed code can't be more than 40% of the assignment. (including AI generated code)

You may use any AI generated image and sound assets that you create (since as of recent court cases there is no copyright on such AI generated assets.)

Some in class exams and quizzes are closed book and closed neighbor. If you are found using a data storage device of any kind during one of these evaluations, you will be failed for the course.

Those that are open book, will allow electronic storage so long as no AI assistants or search facilities are used.

Of course for your group work, your entire group is intended to produce a single deliverable and are expected to work together on all parts of that so the above does not apply to members of a group working together on their group work.

Standards for in class behavior:

You are all adults and are expected to act as adults in this class. While questions are encouraged in this class, if a particular line of questioning is taking us too far afield, I will ask the student to come by my office hours or to see me after class.

Cell phones,  electronic organizers and other devices should be silenced while in class. If you work for EMS or are the emergency contact for a loved one or something similar, please turn your cell phones etc to vibrate mode so that you are not disrupting others in the class.

In the unlikely case of trouble makers in the class, those who are simply attempting to disrupt the class will be asked to stop; those who will not, will be referred to the University for appropriate action.

Tentative Schedule:

I may well change the order of the topics depending on how things are going in the semester.

Week
Tentative Topic
Week 1  Introduction to the class
Week 2
Introduction to Go programming for Game Developers
Week 3 Ebitengine, Basic Game programming concepts, Git and friends.
Game design basics:
Week 4 Introduction to Game Design
Week 5 Early Game programming Techniques/ Games and Players
Week 6 Tiled Maps/ Questions and Data for game Designers.
Week 7 Review and Midterm/From life to Game Systems
Week 8 Multi-player/networked Games
Week 9 Statistics for Games and the psychology of games
Week 10 Game AI
Week 11 Balancing Games
Week 12 Game AI or Networked Games 2
Week 13 Slip time and future topics
Week 14 Slip time and future topics
Week 15 Final Exam