Escape The Computer Lab
A downloadable game
EDIT
we had this set to "draft" so didn't show up for judging. We had fun regardless
Team 0x34302773
Three Things: Grunting, baddie, soldier
Who?
Team 0x34302773 (a hexadecimal reference to our age range) is:
Dave Knowles – Computer Science (Software Engineering) MSc Graduate 2007
Steve Earle – Computer Science w/ Business Information Engineering BSc Graduate 2007
We both work for a local NHS Trust in a Systems Development team of around 15 members. The team develops in-house software solutions in the field of BI / Data-Warehousing, Web Based applications, Windows Services, Systems Integration and Data Capture Forms.
Dave is the Systems Development Manager, Steve is a SQL Server Database Administrator
The Game – Escape the Computer Lab
The game is inspired by text-based adventure games of the 1980s, the kind that had awesome box art but were a very disappointing reality once you actually played the game and realised you had to type commands to move between poorly described scenes in the game. The game is called ”Escape the Computer Lab” you play as a Hull Computer Science alumni who is attending the CS50 event and has awoken in a haze in the now haunted Fenner computer lab. Your mission is to get to the student union to meet your peers, overcoming the obstacles in your way.
The game is a turned based adventure game – the player issues movement via a console to move between rooms.
There are 9 rooms in the game, the rooms are numbered in the same way as a keyboard numeric keypad. Each wall in every room is numbered 1 to 4, clockwise from the bottom.
The player must move from the starting room (Fenner Computer Lab) to the final room (Sports Hall) and out of the final door to the student union. Some doors have “obstacles” which require an object or an action to defeat them, enabling the player to move through that door. The final door is guarded by the final boss, a Ju-Jitsu master, who simply goes by the name of “Neil”
In keeping with the above, we asked ChatGPT to generate us some boxart which would cause the player a suitable level of hype before the inevitable gameplay disappointment.
The Technology / Architecture
The games persistence layer is built in Microsoft SQL Server. This is a tool we utilise in our day job on a daily basis and a totally inappropriate choice for a game’s persistence layer but that is why we chose it – the challenge of bashing a square peg into a round hole all in the name of ‘fun’
The game state is stored in the database and the logic behind whether a player’s action is valid is processed in the database, in the form of Stored Procedures, each stored procedure that is called by the player returns true or false – a reference to whether the thing they tried to do is valid
There is a C# data access layer which queries the data, it makes calls to the database using the System.Data.SqlClient namespace.
Three thing Adherence
The three things were to be shamelessly shoe-horned in as characters and objects in the game
What we didn't Do
We have spent a total of 6 hours on evenings after work on this. The aim was to point one of Dave's University Graphics projects at the database class and have the animation reflect the game state returned by the database however, time has got away from us as we have attended other events on the day. The game isn't very playable (I know, right!) because you get stuck in room 2, needing an object you can't get until later on. However, this is "just" missing a bit of decent game design :)
What We Would do differently
Ask Neil Gordon which two paragraphs he typed into ChatGPT to make a text based adventure game (he mentioned this in his talk this afternoon!)
The Submission
We have submitted the database files and a zipped c# project as well as "gameplay" screenshots.
The most basic gameplay is via stored procedure calls - even less exciting for the user! The "advanced" gameplay is via a command line.
No video is required for such an advanced game :)
Status | Prototype |
Author | steveearle86 |
Genre | Adventure |
Download
Install instructions
Run the four SQL scripts against a MS SQL server instance
Run the console app and hope your SQL server instance name is the same as the one hardcoded in the connection string :)