Federal State Autonomous Educational Institution
Federal State Autonomous Educational Institution
Higher education
National Research University Higher School of Economics
Contexto Game
(Project Name)
Performed by student.
Anwar Ibrahim
(Full name)
___________________________
(Signed)
Project Manager:
Dmitry I. Ignatov
(position, full name of the project manager)
_________________________
(assessment)
___________ _______________
(Date) (Signed)
Moscow 2023
Anwar Ibrahim
My contributions to the Contexto Project:
In this project, I was mainly responsible for creating the Graphical User Interface. To
implement this game, I am going to use python programing language “Python
3.10.10”, and to create the graphical user interface “GUI” I will use the open-source
python app framework “Streamlit” (streamlit library, n.d.).
To implement this task, I decided to split the application into two classes, a wrapper
class “Game” and an “Application” class.
The previous figure, shows the initial design of the program, and this design was
inspired by the Reinforcement learning game libraries, so I tried to implement all the
methods that we could need from the game environment such as:
The second class is the core of my work, which is creating the GUI, I was inspired by
user interface of the main game of Contexto (Group, n.d.)
I tried to mimic their design, because I believe it servers the purpose of the game
well, and I tried to make my code as generic as possible, we only need to change a
few lines to make the code work for any other language.
Sequence diagram:
The following figure shows the sequence diagram of the study case of a player
interacting with our application:
There are two ways to deploy our application for players to play with it:
github
Google Colab
I am going to use the Google Colab method, and this code is explained thoroughly in
the file “DeploymentColab.ipynb” running this file alone, will give you the
opportunity to play our game, using this method allows different type of players to
interact with our game, normal players that are only interested in the game “they
can just visit our link and start playing” and experts who are more interested in
checking the code “they can just rerun the given colab code and enjoy checking the
code and playing at the same time”.
The difficulties:
I encountered several difficulties, since this is my first time working with the
streamlit environment, so it was challenging and interesting to work with this
library, some of my difficulties:
References
[1] Group, S. N. (б.д.). Contexto. Получено из https://contexto.me