The "Quizer" e-learning platform as a tool for creating interactive quizzes with multiplayer functionality

Modern IT and teaching solutions are increasingly used in the distance learning process. The introduction of game elements in the e-learning allows to increase the interest and motivation of the user when performing tasks. The "Quizer" e-learning platform has been designed to create interactive multimedia courses with elements of gameplay, including the multiplayer format. The paper discusses the technologies and tools used to build the platform. An example of a game designed in a multiplayer format is presented.


Introduction
Modern information technologies are increasingly used in education as well as trainings and courses. The use of a laptop, projector, interactive board, the Internet and specialised computer software has become a standard in the work of many teachers [1][2][3]. Constant progress in information technology and new technologies prompts search and, consequently, the emergence of new solutions that meet the needs of teachers. This is also the case in distance learning [4]. Information technologies supporting distance learning have been evolving since the 1980s. However, it was only the development of the Internet and its dissemination that caused the rapid development of e-learning. Currently, virtually every school, university or training centre uses e-learning to some extent in its operations [5]. In their work numerous scientists note the positive aspects of the use of e-learning in the process of educating pupils and students. They point to the improvement of their 'hard' skills such as the use of new technologies, as well as 'soft' skills such as communication and presentation skills [6]. Currently, Moodle, Udemy, Olat, LinkedIn Learning and Blackboard are the most commonly used e-learning platforms. They enable course management and are often referred to as LMS (Learning Management System) or LCMS (Learning Content Management System) platforms [7,8]. SCORM and newer xAPI are the most commonly used formats for sharing didactic content. Among the tools for creating courses, the solutions that one may choose from include Articulate Storylane, Articulate Rise, Adobe Captivate, iSpiring, Gomo or Active Presenter free for individual users. Extensions are also being developed that add new opportunities to commercial solutions present on the market. An example thereof would be the MoodleRec plugin for content search presented in De Medio's paper [9]. MoodleRec can sort a set of supported standard repositories of educational objects and suggest an ordered list of them, upon a simple query based on keywords. New possibilities for the development of technology and e-learning solutions are also sought and researched in many works. In his paper, Marciniak presented intelligent e-learning systems. This is a new approach to e-learning that allows to conduct learning in an adaptive manner, so that when giving content it is possible to take into account the specific needs of learners. The personalised approach is especially useful when working with large groups of learners. In the e-learning systems discussed by the author, the ability to make independent decisions concerning what teaching content is to be delivered to the learner in response to identified needs is implemented with the use of so-called teaching strategies and an IT module implemented in the LMS system, the so-called ITS agent. The basic function of an ITS Agent is to confront the teacher's expectations with the learner's real progress and make decisions as to the content provided. There is a lot of research and development work being carried out that deals with the problem of personalisation of the curriculum, without focusing on a specific LMS platform [10]. Dorça et al. shows three different strategies for automatic detection and accurate adaptation of the learning content taking into account student results [11]. The need to monitor the e-learning process is vital in this situation, which is emphasised in many works. This facilitates the adaptation and personalisation of courses by the teacher, and in many cases also by the student. The e-learning platform used at Kajaani University of Applied Sciences, applying adaptive mechanisms for adjusting courses for students' needs, is an example here [12].
The constantly growing popularity of computer games, especially among young people, should be used in educational processes. Gamification is an approach applied in the educational process, which is currently gaining popularity and is being used more and more frequently. Introducing elements of gameplay allows to boost the user's interest and motivation in the content presented. Gamification is successfully applied to educational games: elements of strategy and gameplay are combined with the educational content [13]. Participants of such gameplay often have to show prompt reactions and knowledge connected with the questions asked. Their activity and correctness of responses are measured and recorded for further analysis [14]. Simulation games are increasingly used in higher education with students, in particular future engineers, doctors and pilots [15]. Modern solutions such as virtual and augmented reality as well as artificial intelligence combined with simulation games allow to enhance and increase the realism of the presented content [16]. This contributes to a better understanding of them.
In the distance learning process, elements of gameplay may also be successfully introduced into the process of both employee training and student education [17]. Designing gamification in e-learning requires a multidisciplinary approach and includes, among others, areas of game design, information technology, psychology or pedagogy. Its application should focus on the long-term activity to increase or maintain the level of commitment and motivation of pupils, students or employees. Positive effects of using a programming course with elements of gamification via an e-learning platform are presented in Pankiewicz's paper. He draws attention to the need for further research and development work on the use of elements of gamification in e-learning [18].
This article is devoted to a new solution in e-learning, namely the "Quizer" platform for creating interactive multimedia courses.

Construction of the Quizer e-learning platform
The "Quizer" e-learning platform was designed to create interactive multimedia courses. It is characterised by the functionality of a multimedia course creator that enables the introduction of elements of gamification and a module that monitors user activity during quiz solving. The platform is a new solution targeted at companies and institutions as well as at schools and universities that would like to improve the qualifications of their employees, teachers and students, conduct online trainings as well as monitor the progress of the implementation of training plans. It allows the preparation of training materials, presentations as well as final tests with extensive statistics of final results. The ability to access courses from various types of mobile devices has reduced the barrier of having to conduct stationary trainings. The QUIZER platform is also an alternative for companies that professionally deal with the preparation and conduct of trainings. Thanks to the solutions applied in the QUIZER platform, one may effectively prepare stationary as well as online trainings, monitor and check the results of carried out activities. The diagram of the Quizer interactive e-learning platform is shown in Fig  Technologies such as Bootstrap, PHP Laravel, MySQL were used for its construction. The platform operates in the cloud. The cloud infrastructure used is Oktawave and it provides uniform support for the Quizer platform from various devices, including PCs, notebooks, tablets and smartphones. Its use increases reliability, data security and at the same time reduces the costs of the Quizer platform maintenance. The virtual application server was running on the Linux operating system. Comparison of average data recording speed for three different files is shown in Fig. 2.
Figure2: Average data recording speed for Oktawave cloud Cloud infrastructure was tested by attempting to record data in real time, taking into account different file sizes. During these attempts, 3 different file sizes were used, namely 1 MB, 100 MB and 1024 MB, corresponding to typical file sizes used and giving a comparison when attempting to record them in real time. An instance with the Debian system in version 4.9.65-3 was used for testing. The recording speed decreases as the file size increases. The recording time decreases as the file size decreases. The obtained results have confirmed the legitimacy of using cloud infrastructure to build the Quizer platform.

Interactive quiz wizard with the functionality of creating quizzes with elements of gamification in single-player and multiplayer formats
The Interactive Quiz Wizard is a tool that allows you to create quizzes. In the Quizer platform two solutions have been used: quizzes can be created in single-player (a single player) and multiplayer (many players) formats. The games may be played against a computer or other users. The quiz wizard screen when designing a quiz is shown in Fig. 3. In the first case, the single player wizard allows to create multimedia educational courses and presentations. Thanks to the built-in functions, it enables to create interactions such as pick one, pick many, drag and drop, type, crossword, word search, connect the lines and more. The wizard also enables to design conditional interactions, depending on previous user actions, using built-in or user-defined variables. By using variables, one may also monitor and examine user activity in a given course. The wizard also enables to assign, count and present points scored by individual users. It allows the use of text, graphics, audio, video as well as assigning various animations and transition effects of individual components on a single screen. With the option of random selection of screens, one can obtain the effect of several different quizzes in one package. The quizzes prepared in the wizard can be exported to SCORM or HTML formats and played on computers even without internet access. It is also possible to publish the quiz directly to the Presenter, thanks to which it is automatically located on the presentation platform, which constitutes a separate component of the QUIZER platform.
In the second case, the multiplayer wizard is a component of the QUIZER platform that enables to design multiplayer games for one or many users at the same time. The wizard makes it possible to define the type of games such as: pick one, pick many, type, drag and drop, who's first. When designing a game, we have influence on such game parameters as its name, description, type of interaction, number and type of questions, number of correct answers or answer variants for each question, random selection of questions from a defined set and the time for providing an answer. Questions may be in the form of text, graphics or audio. Thanks to the implemented logic of awarding points, one can receive additional points depending on the achievements of individual players in a group play. The diagram of the quiz wizard application with the technologies specified for its construction is shown in Fig. 4. The interactive quiz wizard consists of content management modules and an editor for creating courses that enable sending and downloading data from the publication portal. It operates in the Oktawave cloud infrastructure on Linux Debian.

Presenter function for single-player and multiplayer quizzes
A presenter is a very important component of the Quizer platform. As in the case of the wizard, one may distinguish a single-player and multiplayer presenter. The game edition in the presenter is shown in Fig. 5. courses created in the wizard in a transparent and organised manner. By connecting the wizard with the presenter, it is possible to immediately publish courses directly to the presenter without the need for additional operations. Thanks to the presentation platform, one may create end-user and parent accounts, assign accounts to defined groups, and assign courses to specific groups or users. Thanks to the solutions introduced, courses on the presenter platform may be accessed from a personal computer, tablet and smartphone. Users receive points for completing courses, so that course progress and the degree of knowledge acquisition may be monitored.
The multiplayer presenter is a component of the QUIZER platform that enables to conduct a game among numerous players at the same time. The player has a possibility to create a game in the wizard component or choose one of those previously prepared. After choosing a game, the user can invite friends to the game or set its status to public. In this situation, all logged-in users will be able to join the game. The option of notifications about new available games allows users to stay informed about invitations to participate in the game. Games prepared in the creator can have a group (cooperative) or competitive character. Depending on the chosen variant, the game proceeds according to established rules.
The Vue.js library that is used to build Single Page applications has been used in multiplayer games. It can support the structure, logic and style of a component in one file, enabling to create flexible components very easily. The created components may also be reused in other projects. Vue.je allows the use of small reactive components in existing templates. The choice of library was dictated by the small file size (18 KB). This allows Vue.js users to separate the template for the virtual DOM (document object model) from the compiler, thus reducing execution time. Despite its size, Vue.js has an advantage over extensive frameworks such as Angu-larJS or Ember JS. Vue uses the most frequently used internet technologies. It uses the EventBus mechanism that enables to keep the status of events between active users on an ongoing basis. Listing 1 demonstrates a code snippet that shows what variables are passed between users who play multiplayer games. Vue.js uses standard HTML-based templates and single file components, which has allowed developers to write in a language used to describe the form of CSS presentation (with support for CSS modules and preprocessors) resulting in smaller complexity and compilation size. In the case of Vue.js, developing templates on a large scale is very simple, which was an important aspect when choosing this technology for the multiplayer system design process. In addition, the uncomplicated structure makes searching for code blocks containing errors fast.
When writing communication between users, the socket.io library was used, thanks to which data can be exchanged between the server and users. The initialisations of the socket.io library are shown in example 2. Bootstrap operates under MIT license, is based on ready-made CSS and HTML solutions and uses JavaScript. It has a number of solutions that significantly facilitate the work of creating a graphic interface for responsive websites and applications thanks to the option of styling components. Bootstrap is one of the solutions that allows the construction of responsive websites. A responsive website (RWD from Responsible Web Design) is a type of page that adjusts the layout of elements and its width to the screen resolution of the device on which it is displayed.
The advantages of responsive websites include: • adjusting the displayed content depending on the device and its screen resolution, • eliminating problems related to device detection, domain redirection and template switching, • eliminating the need to update content in different places due to the fact that there is only one version of the site, • eliminating the duplication of content (Duplicate content phenomenon) that occurs when identical text content appears in several URLs.
The Gulp tool was used to optimise the solution and make the multiplayer work faster in the project. Gulp is a task runner tool, whose aim is to automate tasks, and thus improve the programming workflow.
The game editors used the jQuery library, which optimally enabled the editing of HTML fields. jQuery is a JavaScript programming library that facilitates the manipulation of the DOM tree. jQuery includes efficient methods for the change and manipulation of attributes and HTML elements, dynamic addition of CSS styles to DOM tree elements, and manipulation of the DOM tree. DOM is a document object model that is a way of representing HTML and XML documents as an object model. It is independent of the programming language. DOM provides a structured representation of the document, which makes it possible to modify its content and virtual presentation. The use of jQuery library in the multiplayer game wizard has made it easier to manipulate the course structure.
The Laravel PHP framework is responsible for the Wizard and Presenter module on the backend side. Laravel has functionalities that allow easy implementation of authorisation. As a result, unauthorised persons do not gain access to protected content. Laravel uses MVC (Model-View-Controller), thanks to which developers have at their disposal a number of additional builtin functions and may develop applications at various levels of advancement. Predefined framework packages enable personalisation tailored to specific business requirements.
MySQL, which is a database with a number of addons created by various groups of programmers, is the database used in the project. These tools may be downloaded additionally, but the database also has extensions already built in, including tools that allow the use of graphical interfaces. MySQL also has functions to increase database security. Databases running on MySQL engine provide Immediate Consistency.

The "What animal is this?" game as an example of a multiplayer game
Educational games are a form of teaching that helps students acquire knowledge and skills. They should have a clearly defined teaching goal and be adapted to the age and abilities of students. The game rules applied should be comprehensible and respected by students. Educational games are especially attractive for teenagers and children. The interactive quiz wizard allows the creation of games in a single-player and multiplayer format adapted to virtually every age group and subject. It is possible to use several modes such as cooperative dynamic, competitive dynamic, cooperative turn-based, competitive turn-based. The game "What animal is this?" for the youngest children is an example of an educational game in the multiplayer format with a cooperative and dynamic mode. In the type of gameplay used, the game itself is the opponent of the group of players. For the game to be successful, a group of players must score a certain percentage result by working together (e.g. if players achieve 60% -the game is com-pleted successfully, with a lower score -players lose the game). This is an example of semi-cooperation because all people pursue the same group goal, but they also earn points individually. The response time is limited. The game combines learning the names of animals and orientation. Students are asked to indicate which animal the person specified in the question has. During the game players respond to: • text questions that can be enriched with graphics, photos or audio files. Due to the size limitations of the screens of mobile devices, the number of response options to choose from amounts to a maximum of 4. These can be single or multiple choice questions, • drag and drop questions consisting in assigning appropriate elements (words / graphics) to appropriate places (word order / group of items), • type-in questions, enter the correct word / enter the appropriate number. These are input questions where the user must enter the predefined variable in the field to complete them.
An example of a game screen is shown in Fig. 6. The advantage of using games in this age group is the ability to create a situation where teaching is associated with fun. It enables to activate and motivate all students to learn as well as encourages the use of computer technologies to increase their knowledge. Educational games are an alternative to other types of games that most frequently do not bring benefits, especially to the youngest children.

Conclusions
The Quizer e-learning platform is a new solution that enables the creation of interactive quizzes with the option of creating single-player and multiplayer games. It allows to make learning more attractive and increase user's interest and motivation by introducing elements of gamification into the educational process. The Quizer e-learning platform may be used by schools, universities, companies and institutions to create courses and trainings. The use of tools such as the Oktawave cloud infrastructure, Vue.js., Bootstrap, Gulp, Laravel, jQuery and MySQL database has enabled the development of an e-learning platform. Educational games in a single or multiplayer format can be used to complement or enhance the traditional teaching process, but they should not completely replace it.