Last updates of the year ❄

Hello all! First of all, I wish a Merry Christmas and a happy new year! I hope that this year will bring us more luck, more happiness and more ProDnD maps and lots of merry campaigns…
This week’s been less job and more education. I only did some last minute refactoring and added anchor points to the screenshot. When you print your maps you’ll see tiny red dots on the top right corner. This is an indicator that tells you the orientation of the pages so you won’t be confused.
We prepared our release builds, pushed them to the markets and before the New Year craziness and holiday spirit we decided to have an educational last day of the year at Gray Lake Studios. Our Senior developer Arda has taught us a several Unity and programming tips and tricks, via Unite conference YouTube videos and such. I’m sharing the links with you so you can watch as well.
This video is about SOLID principle and how do you apply this on Unity.
This video is about Entitas, an entity based framework on Unity.
And also you can look at my notes that I took while Arda was lecturing 🙂
See you in next year! 🙂

Merry Chrismas and happy new year everyone!


Hello all! This week I brought you some Christmas gifts! Now you can add snow effect on your maps (Thanks to Arda!) and also you can generate a snowflake shaped map!


In this map, you can choose three types of snowflakes as well. Different flavors for the snowflake!


I had 4 days to do this map and I researched about snowflake generators on the internet. The things I encountered were more like research papers and Koch snowflake (which I do not prefer because I wanted my snowflake more like branch-y, like trees.). Then I figured it how to do it; making the main branch and then make the other sub-branches that extend from the main branch in a structured way.

Sub-branches extends from the main branch by the amount of sub-branch count. (You can adjust their maximum and minimum branch count values to add some randomity). Also, you can adjust the sub-branch length, main branch length and map size to shape it for your taste.

So here you go, you can use them when the new update arrives! I wish you a very Merry Chrismas and a happy new year!


Screenshot Feature is DONE. Here is what I learnt.


Hello folks. I really can say that I finished screenshot refactoring… For real. Yes, it took four weeks, it was a slow and a hard process. I didn’t do any extensive refactoring before, and also I didn’t read legacy codes before, neither in my projects nor in school projects. In real life, on the other hand, you’ll be like, always reading others’ codes and implement additional features onto the codes that you never wrote before. And I can say that it really taught me how to do so.

First of all, I suggest you to read and UNDERSTAND the code, carefully. My mistake was to be in rush and passed lots of important things that I needed most. Later I had to read the code, again and again, to find the things that I was searching.

The second lesson is that, planning. What tools, what patterns, what methods, whatever you’ll need, you should decide. Rather than changing methods in the middle of the project, you should plan it before implementing. At the beginning, it may look like unnecessary work and it takes time. However, when you’re done with the planning phase and start coding, you’ll realize that it’ll save your time and energy to use on the essential things. And also it’ll save you from burnout. Because failure upon failure really takes a toll on your stamina and this will hinder your ability to maintain a project later on.

The last but not the least lesson is researching and asking! If I wasn’t eager to ask, I couldn’t be able to learn, especially as a junior developer. For example, I asked about variables that will be used and updated in several classes. Then, my senior made me watch a Unite conference video about scriptable objects and dependency injection. That changed my approach and I was able to pull off the issue and it saved me lots of time and energy. But do not ask mundane and repetitive questions. Because it’ll bore the seniors and also hinder their workflow. So, if you cannot answer your questions by yourself or by searching on the net, then, ask them.

So, these are experiences of my four weeks adventure on Screenshot feature refactoring. I hope that I will be more knowledgeable and faster in future.

Stay in tune!

Update: Screenshot Feature is almost done


After four weeks, I managed to finish most of the Screenshot refactoring and I should say it really taught me lots of things. How to read the code carefully, how to read a legacy code, how to apply clean code rules…

But now it’s working as intended and I want to show the results. (2).gif

As you can see, the feature is available as Simple and Pro. With Simple, you can take the screenshot without labels, events, and props. The background is enabled by default. With Pro, you can select the quality of the image and enable/disable background, labels, events, and props.


This is the result when the props are disabled.


And this is the result when the background is disabled.

In the next week, I will be refactoring events. In this iteration, Events cannot be shown in the screenshot so I will be fixing this issue.

Stay in tune!

Update : Screenshot Manager


In this week, I developed the last stages of refactoring the Screenshot feature. There were a few issues, such as showing the saving percentage properly, getting the result prompt twice, getting a jagged screenshot image and not being able to show events on the map. The last two issues were the critical issues that affected the desired result badly. But I could fix jagged screenshot, which is caused by an if chunk that was not handled properly. The code piece was responsible for flipping and rotation of tilesets. The tilesets can be rotated 90°, 180° or flipped. But due to an error that is caused by not refactoring properly.

Like this:


But it’s now fixed. I am planning to finish its refactoring once and for all this week and proceed to other tasks.

See you in next week.