Blog
Week 13 - Fin
May 5, 2021
I had ideas on how to save a game and import from a server, but I priortized my presentation instead. Now that I have presented my Capstone, I was able to work on these two other requirements before my defense tomorrow on May 6th. I also added some new UI elements to allow for a better user experience. This was a great Capstone experience and I hope to further improve this application in the future but I am proud of what I have done during the time allotted. Farewell.
Week 12 - Presentation
April 28, 2021
Hints are working in a way that is unlimited at the moment where it highlights every first letter of every word on the Grid. I can limit hints after my presentation is over with as I am busy practicing for it presently. I have added animations and created a new result screen which is shown in the video above. I have ideas on how to import from a server and saving the game but I will be priortizing my presentation at the moment.
Week 11 - Advancement
April 21, 2021
I have successfully converted my C++ application to Java and have integrated it into the GridView library I found after fully documenting it myself. The GridView is now able to display a 10x10 row. All 8 directions are accounted for now and the highlight color has been changed from green to orange. I have advanced immensely this week. Furthermore, I have created the scramble button in order for the user to be able to scramble the game and play again with a new randomized Word Search grid. The Word Bank is no longer a ScrollView but instead TextViews which change color/text size when the word is found in the actual Word Search grid. I have an idea on how to allow for saving game and resuming game but I can not get it to work at the moment. I will come back to it later and work on providing Hints and make sure Create Game works reliably.
Week 10 - Analyze
April 14, 2021
I have analyzed and documented where to implement the algorithm for the word search generation. I forgot to previously attach an image of my Create Game screen, so it is attached above this post along with the images of my scrolling Word Bank. For the Word Bank, all I have to figure out is making sure it gets crossed out or highlighted a different color when that particular word is found. My immediate next steps are to work on the GridView to reduce its limitations and implement the algorithm into the actual application. Documentation of the GridView library I found is coming along smoothly and I am analyzing how each section of code works.
Week 9 - Easter Break
April 7, 2021
Rested and created an indepth schedule for the next 4 weeks.
Week 8 - Pinnacle
March 31, 2021
It's been four weeks since I have started my algorithm. Its been quite the journey, but its come to an end. The algorithm is fully functional, but I still need to implement it into my application as I did it in C++. The algorithm took longer than expected and I have burnt myself out on it, but I am planning to finish full implementation from C++ to Java this Easter weekend. There are various ways in which you could have done the Word Search Generation algorithm for this type of application. I initially did it in a very inefficient, overcomplex way but thanks to recently meeting with Dr. McVey again, I got help to use a more efficient and less complex algorithm that gets the job done. I also have found a public library online that allows me to display a Grid for my word search puzzles as I have wasted so much time trying to figure out how to solve the problem of my GridView not displaying the letters correctly. The library also came with some touch event/gesture listeners that will be helpful in fully implementing my algorithm and making a fully functional game.
Week 7 - Progress
March 24, 2021
I am currently working on Intents, Word Categories, and Create Game activity in my android app. I hope to do more this weekend and provide screenshots of my progress soon.
Week 6 - Learning
March 17, 2021
On March 18th I met with Dr. McVey and got my algorithm situation sorted out. I will be working on the actual android application rather than the C++ application for my algorithm from now on as its about time I make better use of my time elsewhere. I will come back to my C++ application after a while.
Week 5 - Hindrances
March 10, 2021
I have found bugs in my algorithm after trying out new test cases and I had to input more code into my algorithm to accomodate for these bugs. I did solve the issue with my GridView not allowing letters to be displayed, but now I am working on getting every row to appear. This kind of stuff happens to everyone, but its evident that I need to allocate more time to my Capstone to overcome these hindrances in my project.
Week 4 - Construction
March 3, 2021
I met with Dr. McVey as I was stuck on displaying my GridView over the weekend. Before I met with her, I worked on other aspects of my project and conceptualizing more ideas to meet the requirements of the project and putting in some code as a base for those ideas to become fully functional in the end. Its better to ask for help rather than wasting more time not getting it right. After I met with her, she helped me realize a more efficient way of specific steps in my algorithm, but the general idea remains the same. I am using a 2D array that is initially going to be filled with stars instead of letters as previously indicated in Week 3. The algorithm will look at the word placed in the grid and see if the next word in the list can overlap on it. It will repeat this process until all words are placed on the grid and then generate random letters in the end. I was not the best in generating algorithms in the past years, but I have developed so much experience and knowledge in the past four years here at St. Norbert and I felt like I understood what to do better than I ever had before. Programming the algorithm itself might be difficult, however, even though I understand what I want it to do. I am making progress, slow but at a steady pace. I've been suggested by Dr. McVey that I should create a C++ application for the algorithm while we figure out what is going wrong with my GridView. The images above show what I have done so far.
Week 3 - Algorithm
Feb 24, 2021
The image above shows what I have in mind for the algorithm. Some things I did not include is what to do when words do not overlap with any other word, and for that I plan to place the word randomly on the GridView which hopefully it will not interfere with any other word. Furthermore, there will be a limit to the amount of words that can be generated on the GridView so this algorithm will not go on forever. The algorithm will also determine if the letter being looked at can become an actual word in the category chosen for the word search and if it can't it will move on to the next letter. I took some inspiration from the KnightsTour algorithm as it checks every possible move of the knight in all possible directions in order to determine if a "tour" is possible for the knight. Using this idea, for my algorithm I am looking at letters and checking if it can become a word and possibly overlap any other words in order to determine if a word is possible to arise and placed in the GridView from the letter looked at. I think on track to follow the timeline I created for myself in the form of a Gantt chart. I am going to keep working on this algorithm and hope to tackle on some other revisions that were given to me during the poster board session.
Week 2 - Screens
Feb 17, 2021
The first image is the Splash Screen, followed by the Title Screen, followed by the GamePlay Screen, and followed by the Result Screen. The images above depict the screens in my application in its prototype form. After reviewing the basics, which was done in Week 1, I proceeded to create a prototype of my application. Once I started, I experimented with Android Studio a bit as its different to actually use the enviornment rather than reading or hearing about it. I made temendous progress over the week and today on Feb 17 I have got the prototype of a Word Search Box going where the letters will be displayed. I will make sure to display the letters in the GridView of the Word Search Box more accurately. I hope to tackle the algorithm that will deal with finding actual words in the GridView I have created next week.
Week 1 - Basics
Feb 10, 2021
The images above depicts the initial plans I had for the application. Our projects got assigned and I had to refamiliarize myself with Android Studio since its been a couple of years since I have used it. I looked at what Sam Naville did in 2019 and Android Studio was new to him. Due to my prior knowledge of Android Studio, I hope to make this Word Search application more intricate and creative. The algorithm will be the hardest part as this time around I will have to find out where words overlap as Sam did not do that. I will also be looking at previous Android applications I have created such as Connect Four and the Quiz Game. Our projects were assigned a tad late so as a result we had a late start. The refamiliarization of Android Studio, looking at past Android applications, reading MMM, and the creation of this website has taken all of my time the first week. The second week should hopefully allow for more planning and creating the base for the application.