Skip to main content

Pal's World

"Pal's Shack"

It is about time I spoke a bit about this project. After finally venturing into game development, completing four games that don't really feel complete, I wanted to make something that gives some satisfaction to those who play. The game is a 2D RPG meant for iOS, the core gameplay will revolve around a burger shack where the player has to go about running and serving a burger joint.

The theme is inspired by my favourite restaurant on Franklin Street that adjoins my university, Al's Burger Shack. Al's is pretty much a regular in my week these days, somehow I never get bored of their burgers. I wanted to show my appreciation for these experiences at UNC, which no doubt many students and alumni share. Eating a juicy burger at Al's, getting a pickleback shot at Goodfellas, a blue cup at He's Not Here, froyo at YoPo, are just a few experiences I want to highlight in this game. 

After spending about a week on art, I have made enough assets for the restaurant itself and I can finally dive into coding this project. For now, this restaurant is quite empty, so let's create some customers.

Customers are pretty straightforward, they will enter either in a group of 2 or alone, choose a table, and finally order. They need to be waited by the player, spend some time eating, and leave. Most importantly, they need a script for movement. A simple way is to have multiple points that lead to the target.

"Draft Movement"

The path is highlighted in yellow. Making 16 different paths for the 16 seats is a bit cumbersome, and goes against my instincts as a programmer. I believe we can use a similar concept where the points are a grid system of where the customer can go, and make a script that finds the shortest route to the selected target. Since the customer has a different exit path we might also add pointers to the next possible points the customer can go to, hopefully, it will make decisions easier in the script.

Turns out there already exists a tool for this exact purpose called AIPathfinder. As far as I can tell, it creates a grid of points on the canvas and uses dynamic programming to calculate the path. It also detects objects by layer thus allowing it to avoid walls and furniture, an obstacle that I am glad I do not need to overcome.

"Movement"

To lead the customer to the table, I settled on allowing the player to lead the customer to the table. Once, player arrives at the table, like all interactable objects, the table will darken and a small UI on the bottom left will appear allowing the player to seat the customer.

"Seating"

From here, the next step is to get the customer to order and get the player to add the order to the list. For this, I managed to create a small menu that appears when the player arrives to the checkout counter. From the menu, the player will be able to add and remove orders from the cooking queue. 

"Orders"

Since I last updated this blog, the crushing weight of building a game has been set on me. That is not to say I have given up on this endeavour. There has been a lot of progress in art, sound, and UI in the game. I found a fellow game developer in the UNC Game Developers Club, Aristotle, who very generously made some characters for the game to act as customers. He made a total of 27 characters, all with cartoony-eating animations that I feel are a wonderful addition to the feeling of the game.

"Customer Spritesheet"

Using this template I created my own spritesheet for the manager. Meet the Boss! He will be responsible for introducing the player to all the tools in the shack.