An Indie Game 2 Coming Soon

So some time ago, there was this game called “An Indie Game” that was released and many enjoyed it. They enjoyed it so much in fact that I created an unnecessary sequel called “An Indie Game 2”.

I wanted to go a little bigger and improved on the things that made the first game good. Adding in boss battles, in game unlockable content, achievements, and three different playable characters that you switch between as you run, I thought this was all pretty cool. Of course, I wanted to add more though. Then something happened.

What happened? Well, to be blunt, the game engine that I decided on using sorta started dying out. Yup, cocos2d-xna was not supporting the newer awesome platforms that I wanted to take the game to. This made supporting the game rather difficult and updates for the game stopped. I was stuck and sad. All these great plans for this game, just put on hold, stopped in its tracks.

So I titled this post, “An Indie Game 2 Coming Soon”, mostly for two reasons: 1, The game has been remade on a better game engine, cocos2d-x. 2. Because of 1, this game feels brand-new and I feel deserves to be treated more like a re-release. So this is why I say “Coming Soon”.

I’m really excited about this new engine, it brings all the possibility that I was hoping for in the last game engine, and hopefully much more. You can be sure that all the awesome that was originally planned is now back on track. I hope you all enjoy the game as it starts to unfold with new updates to come.

I know some may be wondering what exactly happened, or why things happened. To that I say, check out part 1 of “The Great Journey”. This will be a series of posts that go deeper into the technical issues with a failing game engine and trying to go about picking out a new one and all the annoying hardships in between.

That’s all for now, be on the look out for the post on An Indie Game 2 once the updates start rolling out for the new game engine.

IoT Project – Relox

Today I’m excited to share the first of many IoT projects that I’ve been working on, primarily for fun and for challenges on Hackster.io.

So without delay let me go into the first project, Relox!

In this project I’ve built a Windows IoT Core app, a REST service, and an Android app. The Windows IoT Core app runs on the Raspberry Pi 2 Model B and communicates to a SQL db hosted by Azure, where our REST service is also hosted. Then the Android app is run on an Android device, preferably the phone you want to communicate with to pass messages over to the Raspberry Pi, and it will manage devices under your account.

Basically what I was going for is a relay box that you can put in any room in the house and it will communicate with your phone. So when you’re in a different room of the house or just cant get to your phone right away, the little relay box will pass along your missed call or text for you to hear. I think a project like has a lot more potential than what I was able to do within my time frame but let’s go ahead and dive into what I did manage to get done 🙂

This project is broken up into three main parts:

– Web service, built with Azure for hosting and insights

– Windows IoT Core app, built with Raspberry Pi

– Android app, used for keeping track of our IoT devices

 

How does this work?

Above a diagram to show more or less how the project is structured. We run an Android app on a phone, this will push messages to our queue, like SMS or phone calls. The Raspberry Pi is listening for these updates on the queue through the Web Services hosted on Azure. This is high level of what’s going on.

So here is what’s happening a little lower:

Something to note before getting started: The current code is already pointing to the Web Services I have hosted on Azure, this is useful for helping you get started and trying out the project sooner and with less effort but it is recommended to host your own Web Service, the current Web Service code is included in the repository so feel free to use that and just change the database connection string to point to whatever database you would like.

The Android app is loaded up on the Phone you want messages to be pushed from.

On the Android app you should see a way to sign in and register a new account.

So the idea of creating an account is so that you can manage multiple devices and if you want to extend to multiple users (for example, other people in the home) this would be supported.

The first thing you may want to do is create your account, this is a straight forward form, provide an email and password with some minor validation like making sure you enter a valid email and a password with a minimum of 6 characters. You can see more about these validations in the Android project in code.

Once you have an account then you can go ahead and login into the app. When you are logged in, you should see a blank screen, this is because you’ve yet to add any devices yet (assuming you’re following along). This is alright, we’ll add the device later on, but more importantly to know, the Android app is in charge of pushing things like SMS and phone calls to the message queue for the Raspberry Pi to pick up later on.

So that’s it for now with the Android app. Let’s move on to the IoT app.

Before moving on to the IoT app, I recommend checking out Microsoft’s samples and documentation for Windows 10 Iot Core and get familiar with deploying code on your own Raspberry Pi. Getting started: http://ms-iot.github.io/content/en-US/GetStarted.htm

So once you’ve gotten the hang of some of the samples, let’s move on to the Relox IoT app. Deploy the app to your device and when it’s loaded you should see a login screen.

Using your account, login on the device. You may want to plug in a mouse and keyboard, this is only needed for setting up.

Once you log in you should see a new screen to enter a name for your Raspberry Pi.

Once you enter in a valid name (there is a 6 characters minimum in this project, feel free to change it in yours) you’ll end up on the main screen.

Yay! If you see this screen then you’ve successfully setup a new device. So something cool has now happened. Let’s back to the Android app.

We can now see our new device showing in the list. And that’s it! You now have a basic setup of the project running. Below is a quick overview of the project working:

Quick Overview of the Relox Project in action

So something else you may want to do is unregister your Raspberry Pi, maybe to swap it out or you just don’t want messages to go to it anymore. I tried to make unregistering simple, you can do this through two ways, either unregistering from the Raspberry Pi itself or, my favorite, unregistering from the Android app.

Load up the Android app and select the device you want to unregister. Once you select it you should see this screen.

And simply just hit the unregister device button and that’s it! Your Raspberry Pi will no longer receive messages and something cool happens, the Raspberry Pi will unregister itself on it’s end as well. Below is a quick run through of unregistering a device through the Android app.

Quick run through of unregistering a device

This project was a lot of fun to build and I think it has a lot more potential and many more uses that can be implemented just as it is.

Just wanted to also add here some of the apps I used to build everything. The Android app was built using Android Studio and a Moto X for testing, the Windows 10 IoT Core and Web Services were built using Visual Studio and a Raspberry Pi 2 Model B for testing the IoT app. Azure was used for collecting application insights and hosting the Web Service and SQL database.

Aside from the bill of materials, other parts used in this project are:

– Wifi module for the Raspberry Pi

– Microsoft Coloud Bang Wired Speaker –http://www.microsoftstore.com/store/msusa/en_US/pdp/Microsoft-Coloud-Bang-Wired-Speaker-MD-1C/productID.308101200

– Small monitor hooked up through HDMI

I hope you like this project and enjoy making your own version of the Relox project. 😀

 

For more details and access to the code please feel free to checkout the project on Hackster.io – Relox.

Sunsetting Task That – A Super Awesome To-Do App

Hey there everyone! Have some big, probably unfortunate, news, Task That is heading for the sunset. I have to say it has been a fun project, something that started out really for myself, and then eventually released for anyone to use. I saw a lot of activity and users signing up for the app and I can only be amazed and pleased with how well it did.

Now the time has come though for me to move on to other projects, and to completed development on this app. So as of the start of the next year, Jan 1, 2017, development will officially be stopped and the project essentially shelved. For those of you still using Task That, you can totally keep using it.

Support for the app will continue but will only be limited to keeping the services running. So no more bug fixes or minor updates, but the app will continue to work as it does today.

I’ll have more details on the process that will take place in order to sunset Task That properly as the date gets closer.

I really want to say a big THANK YOU to everyone that has used the app and helped make it so awesome and just a fun experience to build. This really was a community app, and the first that I got to make.

As I mentioned, this app was really meant to help me prioritize and keep track of the many other projects I have going on, but it turns out it has been able to do the same for hundreds of others. And this app became something for everyone.

Anyways, more details to follow later on and sincerely thank you!

The Great Journey – The Fall of cocos2d-xna

Finally, a story to share that isn’t about a new release or update for an app or game. I decided to sit myself down and start telling the wonderful story of how I landed on using cocos2d-x after using cocos2d-xna and Xamarin for a couple years. It’s a bit of a long story, so I decided to break it up into “chapters” or separate posts. (Probably two or three)

 

About a year ago I ran into a few problems, Windows 10, iOS 9, and an expired Xamarin Subscription.

A few things happened, iOS 9 came out and caused many apps previously made with Xamarin to crash pretty much immediately when you launch the app. My Xamarin subscription had already expired. This was pretty bad, and a sign that “silver bullet” frameworks, like Xamarin, were not what they were all cracked up to be. To Xamarin’s credit, they did quickly get a fix out and offered a very good explanation for the crashes. Unfortunately, it required developers to update their version of Xamarin, and in my case, renew a license just to get the update.

As you might guess, this made writing games natively, far more reliable and affordable, and most importantly, attractive again. These type of issues probably would not have happened if I had originally made the game for iOS using Swift and SpriteKit or Java and OpenGL for Android.

The attractiveness of going away from Xamarin was irrelevant at the time, what was more important was figuring out the quickest way to get games and apps back up and running on iOS 9. This led me to sadly paying up and renewing the license so I could update the apps with the latest version of Xamarin. A $300 bug can leave quite the sting.

After quickly pushing updates out to fix the crashing, I was left wondering “What if this happens again? How can I be better protected from something like this?”. First thing I had to consider, cocos2d-xna. You see, cocos2d-xna was the game engine that was picked because of how easily games could be ported over, using Xamarin and MonoGame.

Truly building a game for multiple platforms under one codebase. It was awesome, it was fun, it made development very magical. Until iOS 9 and eventually, Windows 10 came along.

It was obvious continuing with Xamarin would be expensive, but that also means changing from cocos2d-xna to a different game engine. What could possibly replace this? Could there be another cross-platform game engine out there? After this fiasco, does it even make sense to continue down the cross-platform path? There were so many questions running through my mind, and so many more answers I needed to find. One thing was for sure, cocos2d-xna’s time was beginning to run out and dependence on Xamarin needed to change.

The search was on for the next great amazing game engine, there were a ton of requirements that this new engine needed to fill in: support nearly the same amount of platforms, easy to implement, preferably in a more comfortable language like C#, strong support and community, just to name a few. As I started this search, something else crossed my mind, Windows 10. This is something that I know is going to come out soon and would love to be ready for and have games ready to jump on the platform.

This is where I hit the pause button in this story. I can only write for so long without a distraction, and I’m pretty sure the same is true for reading articles online. Look out for the next “chapter” coming soon!

Dev Diary Updated for UWP and Android – iOS Coming Soon

Woo! Another update out for Dev Diary and here is what’s new:

Windows 10 (UWP) Version 1.2.4.0

  • Added shortcut to open articles in browser

 

Android Version 1.1

  • Added support to save app to SD
  • Added shortcut to open articles in browser

 

Aside from the obvious “fixed minor stuff”, the list is a little short but as you might guess, the app for iOS is on its way out! That’s right! It has already been submitted and soon those of you on an iOS device will be able to download the app 🙂

So just to go through real quick, with a shortcut you can now open articles in browser if you’d like (some prefer this and that’s cool) or make it a little easier to share articles (SPOILER: Feature coming soon!)

 

Stay tuned for cool updates coming out real soon.

 

Download for Android

Download for Windows 10 (UWP)

Band-Aid Update Released – Android and Windows (UWP)

It’s been some time now that Band-Aid has been available for Windows, Android, and iOS. And today I’m pleased to announce that there are updates available now, yes right now!

At the moment, the update is available for both Android and Windows (UWP, which is fancy for PC and mobile). Don’t freak out, there’s an update for iOS going through the usual week long Apple review process, that should be out soon and I’ll make sure to post an update on that once it’s out too. 🙂

So you may be wondering…what’s new in this super awesome update?

Well for Windows, the version has bumped up to 1.6.6.0 and Android has bumped up to 1.5. Here are the changes below:

Windows (UWP) Version 1.6.6.0

  • Fix for Battery Percentage not displaying when Personalization is not turned on
  • Battery theme has been optimized to update more efficiently
  • Seconds have been removed from the timestamp in the Band-Aid tile

 

Android Version 1.5

  • Fix for Battery Percentage not displaying when Personalization is not turned on
  • Battery theme has been optimized to update more efficiently
  • Fix orientation issues with the Personalization settings
  • Seconds have been removed from the timestamp in the Band-Aid tile

 

That’s about it folks for this update, be back soon for the iOS update.

Download for Android

Download for Windows (UWP)

Band-Aid Released for Android

Woo! Finally, Band-Aid makes it’s way to Android!

After quite some time, scheduling and other projects, we finally released Band-Aid on Android. It aims to bring the same amazing functionality that exists today that the Windows 10 Universal app offers.

There are some differences under the hood though that I had to keep in mind about when developing the app for Android, biggest difference is Doze. Turns out Doze is very good about putting background services into a “stand-by” state. Which causes background services to not fire off when expected. Instead, we rely on Intents to help kick the service out of its “hibernated” state. One cool thing that Android offers is listening to battery change events, and as you may guess, Band-Aid is a lot about battery changes on the phone. So combined this with a background service to try to deliver a more reliable reading when you view the phone’s battery percentage from the Band.

Download Band-Aid for Android

There will be an update coming out soon, as well as the iOS app! So stay tuned!

Band-Aid Update Released – New UI and More

Greetings and salutations! 😀

 

This is an exciting announcement for me as I get to introduce the new and improved UI for Band-Aid on Windows 10!

wp_ss_20160406_0002

The new UI shows off more of the new Windows 10 Universal app design. Now you’ll see a hamburger menu which elegantly expands the side menu. And another cool thing to notice are the icons that are now included in the menu items!

There much to explore in this new design and I hope that those that are using the app really like it and those that haven’t discovered it yet will find it very pleasing.

Download Band-Aid for Windows 10

As always, stay tuned for more to come!

Band-Aid Updated and Released for Windows 10

First off, wow it has sure been a long time since I last posted on here. Going to try to fix that with more frequently updated content, maybe something out weekly and see how that goes.

So as you can guess, Band-Aid has been updated! And it has been released for Windows 10 as a Universal app.

Today we are looking at the release of version 1.5.6 and what’s new since the last post. Of course, there is improved stability and performance and bug fixes and any other generic change log items that people usual say. So what’s cool? We have added support for the Microsoft Band 2 for Windows 10, sorry Windows 8.1 folks but don’t worry support will be coming very soon. I promise 🙂

Another cool feature, at least to me, is a new alert which lets you know when your phone is low on battery. You can specify the percentage for when you would like to receive the alert, for example when your phone drops below 10% push out an alert to your Band to let you know that you may want to charge your phone.

The design for the app has also changed slightly, there is now just the left pane with the main app sections, versus that weird left/right pane, which unfortunately still exists for Windows Phone 8.1, again sorry guys but you can always upgrade at any time to Windows 10 by joining the Windows Insider Program.

Suppose I should talk about the Android and iOS versions of the app too before wrapping up. So they are still totally happening, it’s just been a little challenging with some of the other projects that had to take priority. Believe me, it’s a lot harder to start a new project than to update an existing one. (In case you were wondering why there have been updates for Windows and nothing yet for the other platforms.)

That’s mostly it for now, there will be much more coming soon. And please check out the new update for Windows 10 below:

Download Band-Aid for Windows 10

Thanks for reading and as always, stay tuned!

Band-Aid for Windows Phone Released!

Hey everyone! I’ve been working on something pretty neat for the past few months, Band-Aid! Currently it’s released now for Windows Phone, but soon to come to Android and iOS.

Band-Aid is an awesome app made to make the Microsoft Band even better and aims to bring in more features for both the phone and Band! It has two main features for right now, “Battery” and “Move It”.

So let me go ahead and tell you a little bit about Band-Aid 🙂 starting with the two main features:

– Battery – lets you quickly see your phone’s battery percentage on your Band by either making the theme of your Band change color based on the percentage level of your phone and displaying the actual number within a tile on the Band. It’s pretty cool 😉

– Move It – lets you set a reminder for how often you should be told to get moving when you’ve been idle for too long. Very useful for those of us that sit in an office throughout the day :\

There are a ton of other features that I’m planning on releasing soon and also make the app available for Android and iOS. Stay tuned!

 

Download Band-Aid for Windows Phone

© 2016 Dev Diary

Theme by Anders NorénUp ↑