This report contains various information pertaining to our project. We have outlined the requirements that were gathered during the requirements elicitation phase of the project and shown which requirements have been successfully met by our project. This document also contains diagrams that will help the reader to gain a deeper understanding of our project. Through this project we strived to develop a simple multiplayer game with various different social services. One of the driving factors for any human being is belonging and the ability to express oneself creatively. Through the development of this project, we aimed to create something for others to enjoy and to socialize through.
In this section we have outlined various functionalities and features of our project “I’m Slime”. As previously mentioned we sought to create an communicative and engaging web-based platform with a fun and interactive game for users to enjoy.
We settled on making a Player-Versus-Player based game using engaging slime characters. The game consists of two users battling with their selected characters to try and defeat the opponent by shooting bullets at them. This helped us achieve our goal of making the game easy to understand through simplicity, but still engaging through strategy and technical skill. This goal was set to help us focus more on the services provided outside of the game to create a comprehensive platform.
In addition to the gameplay we created an ecosystem through additional features on the website such as a social page, character page, and gacha page. In the social page users can chat on the global chat, make friends and chat privately with their friends. The character page allows users to spend the in-game currency that they have earned to purchase new characters, skins and customize their character. Finally, in the gacha page users can purchase more in-game currency or unlock random items such as other in-game currencies, banners and character skins by buying rolls. The in-game currency used to roll could be bought with real money by the user inputting their credit card information. (For the sake of this project the feature currently prompts input but the user does not need to input their info).
We used JavaScript, HTML, CSS , React library, Redux library, Node.js and Firebase for the making of this project. We also made extensive use of the database by storing user data and messages, and also applied many architecture and design patterns to benefit the platform. Through use of the Redux library we applied MVC in our frontend and through the React library we applied component and microservice based architecture.