Inspiration

The only things inspire me, The Challenges to develop the things which I can imagine in my mind. When I saw the Flutter Puzzle Hack Challenge on devpost, I accept the challenge. The reason behind it I also want to know my limits like can I do this task or not. This is a playground for me I enjoy to play with code and always be exited to see the output whatever I have wrote. The main inspiration behind this creation was, I am so far(from last two years) creating the logical applications but never think about a game in flutter. I was assure that at least a light weight game can be written in flutter with current flutter assets. But Flutter really was powerful !

What it does

This is a simple puzzle where player will got a pattern of simulate numbers according to current level. for level 1 it will be started from 1 to 9 and so on. On the board the number are randomly arranged initially, player need to rearrange them by sliding the tiles with the adjacent empty space. When one level is complete the next will be started.

How we built it

I am using a single screen to show the boards and the things to do on board. The screen contains a tag line then after current level and the control buttons to increase and decrease the levels. Then we are showing current level's elapsed time and moves taken by user so far for that level After this we have our main thing The Puzzle Board. Then we have a control to shuffle the cards on board and it has a nice animation, then we have hint button to help the player. After this we have a control to show the final output for the current level. then in last we have a control for change the theme of the game. For state management in the application I am using provider pacakge. For Hint control I have try to implement A Start Algorithm in my way. Also we are maintaining the score for the each completed level in the forms of how much time and moves user takes to complete the respective level. We are using Hive database dependency for achieve the same. Also this application built to run in both Portrait and Landscape mode with responsiveness. For responsiveness I have checked screen by build this project for web.

Challenges we ran into

The first and complex challenge I have got that was for the my imagined Animations in the game. I have tried another animation when I got stuck But I am the kind of person when I took any challenge then I can not feel free until I made it as I want. So I have made all animations pretty as I want in the game in efficient line of code. Another open challenge I have to put the sound effect in the game but I don't have music asset also don't have balance to buy online assets. And do not want to use locally I have due to copyright issue. Another big challenge I faced to develop in this game to create this algorithm for give a hint to user, But after hard work of 4 to 5 days I have did it but not 100 percent.

Accomplishments that we're proud of

Yeah I have learn so many thing, specially an algorithm like how it can be useful and do our life simple. Then the animations and UI for look and feel are very important from a user's perspective. And the Important one that we can make a light weight game like puzzles in Flutter easily without using any heavy weight engine or lot's of heavy weight process and UI rendering.

What we learned

So here I have learned a lots of things about Algorithms, Animations and State management. Algorithms are really important part of coding, specially when it comes to time and space complexity obviously while developing the games. So I have learned that how to write an efficient Algorithm for the tasks in our applications. Animations also important when it comes to developing a game. I have learned how to perform animation in our application with using less memory and light weight code like less lines of code. also I have maintain frame counts in my app during the performance of the the animations. Themes also can be a good part of a colorful application to achieve the same I have learned how to change the theme in the application and what are the best color combinations be for a user.

What's next for FlutterPuzzle

Yes for up next I want to give a tutorial or it can be a showcase for the first time user interaction that how the things will work in our application and what are the things which are player needs to perform. Then next I will give some audio to my game otherwise it will not give a really game feel (this is my personal opinion for a game, it must be have some sound effects). Then as have made this for 3*3 tiles so my next try will be that I made the same for 4*4 tiles this the same order.

In the end I want to thank to the Google and Team Flutter for give us such a powerful and light weight framework. I really enjoy to write the code in flutter and Hope I will learn more new and interesting things in Future. Happy Coding !

Git repo for the game: link

Built With

Share this project:

Updates