Tuesday, March 28, 2017

Blobby Volley Unity Remake Beta Released

The first beta version of the game is out! To play it, be sure to join the Blobby Volley Beta Testers group on Google+ and then register for testing on Google Play. Make sure to leave me some feedback afterwards.

Blobby Volley screenshot

Here's what I've done so far:

  • I created a Bitbucket repository
  • I created a basic game scene with a background, a net, a ball and two players
  • I added basic physics to the scene as well as special physics for the ball and players
  • I created a keyboard controller and a touch controller for the players
  • I added ball and player shadows
  • I handled respawning the ball when it hits the ground
For a more complete list of features done, in progress and pending, see the Trello board. I'll be keeping it up to date, so you can follow the progress more closely.

It took me 20h to create the current version of the game. I'm still learning Unity on the way, so it's probably slower than it would take a more skilled programmer, but I'm happy about the result nonetheless. I use Toggl to track my work time. I quite like the tool so far and I see a lot of new features added since I last used it four years ago.
Here's what I'll be working on next:
  • I'll add ball hitting sounds and whistles when the ball hits the ground
  • I'll add different player controllers, so you can use the one that suits you
  • I'll fix the bug causing the ball to start falling when a player gets close to it but doesn't touch it
  • I'll add player animations
  • I'll add an indicator pointing at the ball when it's off the screen
For a more complete list, go to the Trello board.

Once again, I encourage you to become a beta tester if you haven't done it already. I know the game is still in its early stages, but I'll be grateful for any feedback you give me.

The next update will come at the beginning of April, so in more than a week. Until then, I hope you have fun playing and are as excited for more features as I am.

Wednesday, March 15, 2017

Blobby Volley Unity Remake

It's been almost 3.5 years since I finished my Blobby Volley game. It certainly is my most successful app on Google Play with more than 130k downloads. Unfortunately, it hasn't been very profitable and its retention rate is miserable. However, I still believe that it has a lot of potential. That's why I'll be rewriting it in Unity.

I want not only to recreate the existing version of the game, but also add new features to it like user activity tracking, achievements, more diverse levels or game modes, less intrusive ads, better controls and probably other things that will come to my mind on the way. I'll be tracking my work time and giving you progress updates every week or two. I expect the project to take up around 3 months.

If you want to keep a close eye on the results of my work and perhaps give me some feedback, you can join the Blobby Volley Beta Testers group on Google+ and later go get the beta version of the game from Google Play (mind that it's not there yet at the time of writing this post). I'll be grateful for any constructive comments and I hope you'll have fun testing the game in its new form.

Now, go play the existing version of Blobby Volley and don't forget to tell me what I should keep, add or change!

Wednesday, March 8, 2017

Complete Unity Developer on Udemy - Review

Last week I finished the Complete Unity Developer Course on Udemy. I'd like to share with you a couple of thoughts on it.

The course consists of more than 50h of video, during which you create six complete games as well as cover some additional materials. It teaches making both 2D and 3D games. It touches a lot of subjects, among which you can find C# scripting, basic Unity editor usage, physics, sound, music, animations, exporting to different platforms, publishing your work on the web, importing models from Blender, unit testing, using plugins from the Asset Store, implementing multiplayer, and others. The course is targeted at beginners and intermediates.

What I liked about the course was its comprehensiveness. What I mean by it is that it wasn't just a bunch of random tutorials that you can find on YouTube and in other places, but rather a complete set of well-structured lessons that were teaching you new skills with every single game. The course covers a huge amount of material and, having finished it, I feel that I'm able to create simple games of various type without problems. Just to help you understand the amount of content offered, imagine that to only watch the videos, you'd have to spend 2h every day for a month, let alone doing the exercises and tests that consume a similar amount of time.

What I didn't particularly like was the part on scripting, which isn't useful for those who already know programming, and being mixed up with other information, you can't easily skip it. To be honest, if I didn't know how to code, I'm not sure if I'd be able to get a grasp of it during the course either. Just make sure you know the basics of any language before you start the course and you should be fine.

There were other minor details that I wasn't fond of. Most of the lessons use Unity 4.6 while the current version is 5.5. There aren't too many differences between them, but there are some that may cause your project not to compile or make you look for some editor functions. Also, the course gets a bit chaotic at times, using different coding styles or introducing compilation errors and typos to only fix them in subsequent videos. Finally, the last two subjects abandon the idea of creating complete games in favor of explaining specific topics like networking or handling cross-platform input.

All in all, the Complete Unity Developer is a great course. I'd give it 4.5/5. It was definitely worth the discounted price that I paid for it (12€). Was it not for the much lower price though, I don't think I would have paid 195€ for it. However, I have to say that having paid a small amount of money, it definitely made me more motivated to get to the very end. If you're a beginner or you have little knowledge of Unity, I can easily recommend the course and you don't have to take my word for it - just look at other people's reviews on Udemy. Although, if you are more experienced, you have already created stuff with Unity and you're looking to deepen your knowledge, I'd perhaps look at the official Unity Manual and other places like YouTube first.

My plan for the next weeks/months now is to rewrite my Blobby Volley game in Unity. I want to add some features too (a better menu and perhaps a multiplayer). I'll be tracking my work time and progress, so you can follow me in my struggle. I'll also create a group for beta testers, so you can see the results and help me during the development process. I'll post some more information soon. Stay put and I'll see you next time.

Saturday, February 18, 2017

Facebook Photo Gallery on CodeCanyon

They accepted my Facebook Photo Gallery on CodeCanyon! I'm really proud of my work. So far, it only has a couple of sales, but it's been less than a week since it got published, so I still have high hopes for the future.

After they'd rejected my first submission, saying that my documentation was a little lacking, I added a Quick Start Guide along with some screenshots. Apparently, it was enough to get through the second round of reviews. You can read my thread on the Envato forum to get more helpful tips from other people who got their submissions rejected:

So, what does my app do? It lets you transform Facebook albums into a beautiful photo gallery. Just pick a Facebook page (it can be your own profile) and the albums you want to show in the app (you can filter them by name, id or date). Photos will get synchronized with the app and they will continue to stay up to date, displaying a notification whenever new ones appear.

As to the technical details, the app uses some pretty slick stuff like SyncAdapters, Material Design, Immersive ModeFacebook Audience Network ads, Facebook Graph APIRxJava 2, Moshi, Glide, JUnit 4, Mockito. It might be worth buying just for the sake of learning how to use some of those libraries.

Here are some promotional images, if you're lazy enough not to go to CodeCanyon to actually see my app there:

If you feel like giving me feedback on the app or just leaving a comment on CodeCanyon, please do. I'll keep you posted on how the sales go. Keep your fingers crossed :)

Tuesday, February 7, 2017

Envato Market: The documentation is a little lacking

The title phrase will haunt me for a long time. And here's why...

I managed to finish my Facebook Photo Gallery app that I wanted to publish on CodeCanyon. It took me a bit more time than expected, but still I was quite proud of it. However, it turned out that they required you to upload numerous resources along with your code: a thumbnail, an inline preview image, screenshots in specific dimensions, promotional materials, documentation, etc. Slightly discouraged that my work was not yet complete, I set out to prepare the missing artifacts. They weren't easy to produce, because I'm not a professional designer nor copywriter, but eventually I was able to achieve results that satisfied me. I gathered the code and all the new materials, and I finally hit the upload button.

Happy to see my app in the store, I was disappointed that it wasn't there immediately. I had to wait - I thought, and so I did. A day passed, then a second one, and a third one. On the fourth day I got the following email:

You're nearly there!

Hi Bartosz Wesolowski,

Thanks for your submission.

‘Facebook Photo Gallery’ isn’t quite ready for CodeCanyon. But don’t fret, we’d love to see you resubmit after making the changes outlined by the reviewer below. When you’re ready, you can upload your changes here.

Here is the comment from your Envato Quality team reviewer:

The documentation is a little lacking.

Most importantly, remember that buyers may not be technically inclined. They may just be looking for an item to drop into their existing code base. Also keep in mind that a typical user won't really know about all the features your system brings to the table. With them in mind, you should also look into providing a quick start guide of some sort. It need not be long: a short one will do.

You can use a premade template or the Documenter tool for your documentation, both linked below:

We look forward to reviewing your submission once you’ve made the changes!

Envato Market Team

Still have questions? Check out our Help Center.

P.S. The team have invested considerable time in reviewing and providing feedback on your submission. If we feel that you have not invested enough time in making the required changes before re-submitting, this may be considered misuse of the review process. Where continued misuse of the review process is identified, your submission rights may be restricted or suspended.

My first thought was that it was nothing serious and that I would fix my documentation quickly and re-submit. But wait, what was there to fix? They actually didn't say it! To make things worse, after browsing Envato Forums I found out that the message I got was just a generic template they were sending to many people.

Out of my frustration, I created my own thread on the forum and I filed a ticket to Envato Market Help. In return, I got some help from my thread (but not much), and the following response from Envato Market Help:

Hi Bartosz,

Thank you for contacting Envato Help, my name's Katherine and I am more than glad to assist you today.

Rejection could happen to all of us and no one really likes it when one of the created files gets rejected on the Marketplaces. I hope that you won't be discouraged.

Given the sharp rise in submissions of all quality levels, staff can no longer afford to take longer to elaborate reasons and deploy custom messages for hard rejecting submissions where several or important aspects of a composition, arrangement and/or production are deemed insufficient for acceptance.

The reviewers have thousands of submissions to listen to. The reality is that our marketplaces are stocks and we are not yet able to afford to provide tutorial services for authors, so it’s simply not practical for business purposes to allot significant additional time to explain to thousands of individuals how to specifically improve the composition, arrangement, mixing or mastering for an item that misses the mark by too wide a margin. My apologies.

You may also want to read the following public Help articles:
Rejected Items
Common Rejection Reasons for Envato Market

Please let me know if you need further assistance.

Warm regards,

Katherine S.

Right now, I honestly don't know what to do. I answered all threads on the forum related to the lacking documentation, asking for help. Some people claim there that sometimes it's enough to re-submit without any changes or after reordering some fragments. I'm afraid to try it without at least making an effort to get to know what's wrong.

I don't agree with what Envato answered me. If they were giving at least a hint of what should be corrected, they would spare people lots of frustration, and they wouldn't have to review the same submissions again and again. In fact, they probably spent more time responding to my help request than they would pointing me to the right direction.

So, unfortunately, I can't give you a link to the store yet but just a little sneak peak of the app. Hopefully, someone will help me or I'll succeed in re-submitting a slightly corrected documentation soon. In the meantime, if you feel that you can give me any advice, please do.

Wednesday, December 28, 2016

December updates

I wrote in November that there had been some unexpected events messing up my plans. Well, this month brought me even more "excitement" and surprises. Unfortunately, not all of them are positive. The biggest upset is that...

I've been laid off

December 5 was my last work day at Fandom (former Wikia). There was a company meeting in the evening, during which they told us that things hadn't been going great and that we got invitations in our calendars to smaller meetings where they'd explain to us the details of the situation. I wasn't paying too much attention to the exact words because I was working on a big programming task that I wanted to finish that day. Without suspecting anything, I went to a smaller room, perhaps only noticing that most of my team went elsewhere. There I found roughly 15 people all sitting in silence and in a stern atmosphere. Then our chief of engineering and chief of HR came in and said that they were sorry to announce that we were all being laid off. They didn't give us much explanation. The rest of the company left the building in the meantime. We were called out one by one to sign some documents while they were wiping out our computers. I went to pack my stuff from my desk and that was pretty much it.

I wasn't particularly sorry to lose the job, even though I liked it a lot; perhaps even the most from all my jobs so far. The thing that hit me the most was the way they let us go: without any prior notice, without a way to say goodbye to others, without thanking us for what we'd been doing. I'd never heard of anything similar happening in Poland before. I guess I had to learn the hard way not to have too much trust in my employer and always have a plan B. I think more people felt similarly, because they left bad reviews on Glassdoor. Around 70 people were laid off across the globe.

Every cloud has a silver lining

Surprisingly, there are a couple positive sides to what happened. Firstly, they are paying me until the end of January, even though I don't have to work right now. Perhaps it's not very long, but being on this paid vacation has been great so far. Secondly, they let us keep our computers, which in my case is pretty awesome, because my 8-year-old PC is not getting any faster and now I have a late 2015 MacBook Pro that I can use. Lastly, I think I already found a new, perhaps even better, job.

New job

I'm supposed to start at Allegro (which is like Polish eBay) in February. I haven't signed any documents yet, but it should just be a formality. I'd been sporadically going to interviews even before losing my job. I didn't expect getting a much better offer, but I'm of the opinion that knowing the job market, the questions they ask at interviews and work conditions in other companies can come in handy. This notion might have saved me from being very miserable right now. Anyway, going to interviews, I'd sometimes get a job offer that I'd reject, but it would give me a sense of security and self-esteem. Allegro was one of those offers. Fortunately, they still hadn't found anyone when I was let go of. All I had to do was ask if the position was still open.

The nicest thing, that I haven't mentioned so far, is that I'll be working part time, or 4/5 full time if you will. It means that I'll have one day off each week. One full day! How much faster can I go with my own projects right now? I think at least twice as fast. And should I decide to switch to full time some day, it should be rather straightforward. It's much harder to go the other way and reduce the amount of hours you work. Obviously, working part time will give me less money, but the salary is high enough for me as it is and I'm really excited to try my new schedule.

I'm getting married

Yes, you read it right. Me and my girlfriend decided to get married in March. It's just a bit more than two months from now. We've been together for a good couple of years now and we thought that it was high time we took our relationship to the next level. It's going to be a civil marriage, because neither of us is particularly religious. We're not organizing a huge wedding, just a dinner for the closest family. We'll think of a bigger party for friends when it gets warmer here.

Updates on my projects

Thanks to my unexpected vacation I've been able to work on my own stuff quite a lot. My Facebook Gallery project is getting to an end and I really like what I've done so far. I probably need a week or so at the beginning of 2017 to finish it, so I won't give you too many details right now. In short, I updated the libraries it was using, I revamped the UI, I sped up the synchronization process almost 3 times through RxJava 2 and I refactored the hell out of it. Left to be done is some more synchronization corrections and unit tests and then adding Facebook Audience Network. After it's ready, I'm going to try to sell it on CodeCanyon.

I completed 28% of the Unity course on Udemy that I wrote about last time. The whole thing is 52h, not counting coding time. I really like it and I'm learning a lot, but I watch it on 2x speed because of the way the instructors talk. Perhaps the only thing I don't particularly appreciate in the course are the parts explaining C# programming, because they're targeted at absolute beginners. The rest is pretty awesome. I'm not sure if I'm going to complete the course or just its 2D part and then proceed to rewrite my Blobby Volley game. We'll see. In any case, rewriting Blobby Volley in Unity will be my next big project and I'm hoping to finish, at least a basic version, before I come back to real work.

My friend got me to buy and play TIS-100. It was a part of Humble Bundle. The game is basically an assembly language simulator with a bit of a plot, so its target audience is quite limited, but I enjoy it very much. I've managed to beat 16 levels so far. I'm hoping to solve more when not working on other stuff.

That's pretty much it, folks. I should be able to show you something more tangible instead of personal life news next time. Come back in January for more updates and wish me luck for the married chapter in my life.

Sunday, November 20, 2016

November updates

This is just a quick update on what I've been up to this month. There were a couple of unexpected events that messed up my original plans a bit, but still I managed to move a step forward.


I went to Mobilization and I'm going to Droidcon Poland in three weeks. I have to say that I really like such events, not only for the sake of presentations, but also for their networking value. Every time I go somewhere I meet my colleagues and their work mates, and discussing with them often brings me more value than what the speaker has to offer. At some point I was even wondering why someone doesn't organize meetings for people from various companies during which they could discuss how they handle specific programming aspects, like storing data or testing. Perhaps I'll do it some day.

Learning Unity

I got a notification that Udemy had a huge discount on a nice Unity course so I bought it. It cost me 12 €, but the price goes up every day, so you'd better hurry up if you're interested. I haven't started watching the lessons yet, but with the coming Christmas period, I'm hoping to be able to give it a try. I'll let you know how it goes.

Facebook Gallery

Remember my Facebook Gallery template app? No? Well, some time ago I made a couple of apps using the same template that I'd created. Each app was basically a gallery of images from a specific Facebook channel/profile. You could also adjust the theme, strings, icons, etc. for them. See Banksy for example.
My plan for the nearest future is to refresh the project a bit and try to sell the code on some portal. I've already done a bit of refactoring: I updated the libraries, I switched from Picasso to Glide and I started working on Activity transitions to make it look nicer. There's still a lot to be done, but I'm hoping to finish before the end of the year.
For the next part, I did a quick research on where I could try to sell the template. It turns out that there aren't many sites dedicated to it. I found Chupamobile, SellMyApp and CodeCanyon. The first two look somewhat sketchy though, so I'll probably go with CodeCanyon in the end. They check every submission manually, they have user comments and ratings, and they are open about how many people bought an app. The only thing that worries me is that their suggested prices are quite low (<$20). I don't know why people decide to post their apps that required months of work for such a price. Perhaps buyers choose the more expensive extended license?
If you have any experience with selling your code to people, let me know in the comments. I'll be grateful for any advice.


That's pretty much what's going on at the moment. My priority is to finish the Facebook Gallery app. In the meantime, I'll be watching an occasional Unity lesson. Starting next year, I want to commit more time to game development, because that's what excites me the most, even though it might not be the most lucrative choice. I'd like to polish my Blobby Volley, but that's a whole different subject and I won't go into it now.
I hope to see you next time with more progress updates and news. Peace.