My Portfolio

A sentence about me:

A mathematical mind who does not stop learning something useful in life.

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.

Congratulate! This is NOT an ordinary adventure that you’ve ever played before.

Role-Playing? Adventure? Puzzle?

You do NOT need to follow A PREDEFINED STORY to play!!!!!

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.

6. My GitHub

https://github.com/shrewdacumen

All the important projects are either private or local. And the project in public is usually for testing new features of SwiftUI2.0/3.0 or Combine. (MVVM principled tests, Web endpoint accessing testing apps can be seen)

CRDT or Conflict-free Replicated Data Type in Swift 5.5:

Convergent and Commutative Replicated Data Types or Conflict-free replicated data type

% The reference: the link

SwiftUI and MVVM: a simple project that sneak-peaks my skills, can be accessed by clicking the left, underlined in BLUE text.

However, those projects with Combine and URLSesssion and Vapor (through REST or GraphQL) are still private.

– 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 employed in the game.

9-1. . Dispatch (GCD): a deep understanding of ‘framework Dispatch’ as well: the game contains 

  1. 94 dispatch serial queues and 7 dispatch target queues.  
  2. Plus none of the memory leakages which is common to ill-designed threading codes
  3. Plus none of the data race issues and removed the possible race conditions.

9-2. Rule System (GKRuleSystem) with NSPredicate.

9-3. Decision Tree (GKDecisionTree).

9-4. Path Finding Component (GKObstacleGraph + GKMeshGraph).

9-5. Agent (GKAgent).

Related Readings: