2015-08-02 14:59:51 Posted by RetroZelda

Nyanimals Early Alpha - Abandoned but not Forgotton

I have decided to start showing more of my "at home" work publicly on here. It will keep this place fresh with projects that I may or may not have stopped; have an area explaining a project I list on a resume, talk about in person, or even a way to share source code to share how my programming has evolved throughout time; and allow me to bore you with more of my poor grammatical posts with terrible misspellings and typing habits. In my previous post, I mentioned I was doing stuff within Unreal Engine 4. Well, None of that is going to be shown yet. Although It is at a point where a demo release is close, I will be talking about my previous endeavor that has been on and off for a few years now... I present you, the early alpha version of the virtual pet Nyanimals. Since the time when I first played with the Chao in the Sonic Adventure games, I have always wanted to create a virtual pet. At the time I started the project, I wanted to get in with engine development AND I wanted to know the ins and out of Android programming. So, I started talking with a friend and we started in. The engine its self has gone through many iterations of its architectural structure and had become an unmanageable mess. That is, until I decided to completely restructure everything. The code That I will provide publicly is the power behind the game, and the engine just kind of runs. That doesnt say much, but before this revamp literally everything was coupled. It was gross. It still is kinda gross, but I have since abandoned this project in light of other things, so it is what it is. The engine consists of an OpenGL ES 2.0 renderer, simple 2D sprite animations, basic 2D collision, object managers/factories, screen touch input handling, sensor handling, and early work for Facebook SDK integration and server data exchanging. The actual game is run by my FSMLibrary state machine. This state machine is the most powerful thing I think I have ever written. It is small, but it is the master of all. It handles game states, AI states, game substates, etc. The FSMLibrary was originally written in Java for android, but I have ports for it in C# and C++. Alongside the FSMLibrary, I have created an event system called Storybook. Storybook and FSMLibrary are recommended to be used together, but dont have to be. It is a powerful event system setup similar to the FSMLibrary, and it also has ports in C, C++, and C#. Since I started writing this, I have decided to just make the repo for nyanimals public. The repo contains multiple branches for particular systems that were being worked on. And please note: This project was half about my passion for games, and half about learning the ins and outs of Andoid, Java, source control, and various other programming-related tasks. So, with that said, you will see gross code of things I had done early on, and gross things with how I transitioned old ways into new ways. But, it is public and so feel free to fork the repo, and add a minigame, or anything really. I welcome it. Without further adoooooo: Repository: https://bitbucket.org/RetroZelda/nyanimals-a-mobile-pet builds: http://retrozelda.com/nyanimalbuilds/ You can also download a build from this post or in the games section on the side.