A "siesta" according to the Merriam Webster Dictionary is "an afternoon rest or nap, especially one taken during the hottest hours of the day in a hot climate". On the other hand, a "fiesta" according to the Collins English Dictionary is "a time of public entertainment and parties". These represent the dichotomy of "restful and fun" that we, CS-TA FIESTA, aimed to achieve here at HackGT 2017.
This all started when one of our team members, who loves cats, decided to take a plunge in suggesting a "cat game". Not knowing where to start, we decided to explore our options by branching out into the gargantuan world of possibilities ranging from simple text-based output adventures to grand-scale virtual reality journeys involving augmented reality eventually culminating into the final product you see before you.
What it does
At the basis of it all, there are two parts to our code as a whole. A game titled, "Cat Simulator" in which the user utilizes keyboard and mouse inputs to interact with their choice of predetermined 'cats'. Each cat was coded to have unique attributes and interactions with each combination of possible button presses. The second portion of our code utilizes HTML and CSS to create a landing page in which the user can navigate through basic information about the game itself as well as the people who created the program.
How we built it
We were able to build the Python game through the usage of Python libraries such as pygame link which assisted in the creation of more complex functions and graphical outputs. Utilizing Python 3.6 along with imported libraries, code was written to take in a multitude of parameters and output their corresponding graphical changes in a vibrant way that both appealed to sight and sound. The web development side of things was decidedly more droll, but in every way still played an integral role in the encapsulation of the project as a whole. The website was written in HTML along with graphical formatting created by external CSS files.
Challenges we ran into
A challenge that we ran into was installing the software needed to properly run the code we had written. Another challenge we faced was that there was no compatibility with the file formats that we had hoped to use. For example, during the decision to include audio files within the program, .mp3 files caused the program to crash. An extremely large error faced during the creation of the website was that the domain.com site that was chose did not respond when files were uploaded to the database even when the home pointers were pointed towards the home directory where the index.html files were contained.
Accomplishments that we're proud of
We greatly exceeded our initial goals of a text-based game, turning simple command prompt output into a graphical user interface. The ability to code in extra levels of interactivity such as audio output with the user allows for a much more deep-rooted experience than we had originally expected. The feature to accept multiple inputs at the same instance was also a hugely beneficial aspect of the program because it allowed us to unlock greater potential in the output interfaces. An accomplishment that was more than just technical was that we came together as a team while becoming more attentive to each other's ideas and input.
What we learned
Technically, as first years, planning, executing, and publishing code in any capacity is difficult. In detail, having to study the intricacies of pygame and reading a multitude of documentation on specific programming semantics and accomplishing small goals through major troubleshooting was by far the most educational event that we faced throughout the hackathon. Being able to study, implement, and push code in a language that many of us were not familiar in was a truly enlightening experience. Furthermore as a team, something we have learned is that time is always of the essence and that a minute spent doing something other than the task at hand is almost always a time wasted. While, the idea of procrastination seemed like a welcome idea in the hectic nature of the hackathon, much of the code written was coded during the wee hours of morning showing us the importance of ample preparation and a focused mind on the tasks at hand.
What's next for CS-TA FIESTA Cat Simulator
We hope to turn this program into a more fully-fledged idea that would become a viable opportunity for an expansion. For example. we could implement a point system which would incentivize continual interaction and participation in a seemingly monotonous activity, something that could be a potential benefit in the health community for those who have trouble focusing or among those who are in need of an emotional boost.