ADVANCED GAME STUDIO

53-472/672 | Carnegie Mellon University | Spring 2023

Silly Little Guys #4

It’s Alpha Week ladies and germs! This week was an absolute sprint to the finish as we pushed, pulled, and cried over our computers.

While we initially set out to have our first quest done by the Alpha Presentation, we sadly missed the mark! We made incredible progress with art assets (UI, Character Vectorization, Map, and 3d models) but we had issues with getting the build to function as both the camera and dialogue system were refusing to function.

With all that being said, we ultimately triumphed at the last moment and were able to scrounge everything together. The camera functioned and displayed characters correctly, the dialogue functions, and the UI is interactive. As well, players can explore campus and encounter ghosts. We have the building blocks to finish our first quest, we just need to connect everything together.

Now let’s get into updates section by section!

This week, programmers switched to the production branch, and we started working on core game scripts and (almost) finished the first quest.

Map Programming

  • Location tracking works, with boundaries at the edges of CMU campus and an “out of bounds” detection. We prompt the user for location permissions when first opened.
  • Map normalizes to player location (if within bounds).
  • Touch movement implemented to view the entire map
  • NPC detection implemented for Daniel (Postman); when the player is close to a NPC, there is a pop-up option to talk to the NPC and an ingress into the AR works.
  • Map UI implemented for inventory and notebook.

Map Location demo:

Map UI demo:

Backend Programming

In terms of backend programming, we were able to create basic data structures to represent the ghosts, quests, and items the player can acquire. Currently, the data structures only exist and do not serve a functional purpose, but this will be added for Beta.

Additionally, several task-specific managers were created to handle tasks such as switching between scenes, updating quest statuses, and handling UI. These are the GameSceneManager, GameManager, and UIManager, respectively. We also created an ARManager to handle the AR functions of the game, specifically in the AR scene.

The Game Manager is set up to keep track of whether or not the player has completed the tutorial. Basic saving functions were also implemented into the game, but this is not yet extensive. The Game Manager also spawns the correct ghost, based on the player’s location and quest completion states.

The UI Manager is responsible for making the UI functional. Currently, structure exists for modifying settings, though settings themselves haven’t been implemented. It does, however, toggle displaying the inventory and the notebook.

AR Scene Programming

For the AR Scene, we created a simple system that keeps track of the dialogue and advances the dialogue whenever the screen is pressed. The dialogue is handled by the DialogueManager. The Dialogue Manager keeps track of the dialogue for two people in a conversation, in our Alpha these were the Postman and the Player. The Dialogue Manager also has a list of boolean values; these represent when to switch who is talking in the conversation.

Art

3D Models

For the Alpha test, we build the 3D assets to embed into side quest: Daniel-postman and letter & envelop. We also build the lil guy, Rose, and other items in advance to support next steps in Beta test. Some need to do for next steps that haven’t finished in Alpha:

  • Refine the materials and shader to make Characters look better in AR view
  • Character’s animation

2D Vectorization

We decided to make all of the characters not only 3d, but 2d as well. These designs will be utilized when players are talking to the characters (dialogue voice) or trying to find them on the map (nearby ghosts). We plan to digitize more of these ghosts so that the visual language is consistent.

UI

We made lots of big leaps in UI this week! We created a prototype in Figma to show how the initial encounter with Daniel the postman would go. Players can approach him on the map, talk to him, and show you how to play the game. He would walk you through aspects of the game like the journal and the inventory system.

And that’s it for this week! We hope you enjoyed it!


Posted

in

by

Tags: