My Portfolio

My Portfolio: games, iOS Apps

– Birdie’s Dream, Beta-Version Gameplay Trailer

Birdie's Dream, Gameplay Trailer - Updated Mar 12, 2021
Watch this video on YouTube.

I spent more than 5 years making this game: 1 year of experimenting, 3 years of design, 2 years 7 months programming in Swift.

It is adventure + puzzle + role-playing.

You evade, scare off, punch away A.I. monsters in a vast space of the unknown world as you find the puzzle entities and solving their puzzles.
Upon successful solving the puzzle, you’ll regenerate health and gain a new ability and control button, depending on the character of the puzzle entity in the game.

– The Developer Story:

The game is a unique adventure with role-playing plus puzzles: it does not require a predefined order of solving puzzles to finish the level. Because I made the rules of the game system, monsters, puzzle entities in the rule-based system of GameplayKit. And each puzzle has its entity as well. And I hate to wholly follow predefined procedures which are common in role-playing games or adventures. If anyone merely follows a predefined procedure of a role-playing game, the game can not amuse the person beyond what a book can provide. I think that if it is a role-playing game, it should be more flexible and dynamic in the story than a book should be. Furthermore, it is also educational. In the game, every time the gamer finishes each level, the person will learn something important to his life.  I don’t like to make a game for entertainment only but also education.

– My Dev Log, Making The Game in Swift, Birdie’s Dream

My Dev Log, Making The Game in Swift, Birdie's Dream
Watch this video on YouTube.

– Technologies in my learning

9-1. GraphQL

Rather than using various path-based URIs and HTTP verbs, GraphQL uses a single endpoint with a defined schema that specifies how to not only fetch data but also mutate data. GraphQL schemas are the heart of GraphQL and provide a much richer interaction over the data.

Therefore, GraphQL shall be my replacement for REST API.

9-2. Cassandra

This NoSQL database is for scalability.

9-3. Vapor open-source framework

This enables me to do all back-end programming in Swift without having to resort to Java or Javascript + NodeJS.

9-4. WebAssembly

This empowers (web) front-end programming of javascript by Swift.

Related Readings: