Introduction to Maths-Tutor

Maths-Tutor is an innovative game aimed at revolutionizing math education for the visually impaired. By leveraging inclusive game design and being both free and open source, it strives to make learning mathematics an engaging and enjoyable experience for all learners. This initiative not only helps individuals in judging their abilities but also enhances their mathematical skills in a supportive environment. 

The fact that visually impaired people can now use Abacus and Taylor Frame, along with some software Maths-Tutor underscores the commitment to accessibility and effectiveness in teaching mathematics. The development of Maths-Tutor fills a crucial gap by providing a relevant and accessible alternative to currently used software, ensuring that everyone, regardless of visual ability, has access to quality math education. 

Changing system theme and enabling the screen reader

Although the game has speech support, the user can turn on screen reader from the operating system so that the answers will be read to them. Additionally, for changing the themes of the game, the user can change using ‘common task’ option in ‘system settings’ (supported in case of Linux flavour). 

Playing Maths-Tutor

Upon opening the Maths-Tutor game, users are presented with a language selection dialog box. Users can choose a language from the options provided and enable the ‘remember selection’ option to avoid seeing the language selection dialog box every time they open the game in the future. After selecting the language, users can proceed to the gaming page by clicking ‘OK.’ 

Once the gaming page opens, the user is requested to press the ‘Enter’ key to start the game. Number concept will be the first to start. Number concept means introducing numbers from 0 to 9. The numbers will appear on the screen randomly, and you must enter them. The numbers on the screen will be announced and sometimes a bell will ring instead of announcing the number. After typing their answer users can press ‘Enter’ again to submit and can get feedback such as ‘excellent’, ‘very good’, ‘good,’ ‘fair’ or ‘okay.’ The feedback is based on allotted time. Players are allowed three attempts to answer each question correctly. If they answer incorrectly three times, the correct answer will display on the screen. Upon completing a level, marks and time taken are displayed on the screen, and pressing the ‘Enter’ key, proceeds to the next level.  

Initially we launch the application the game starts with simple addition as default. Once you select an operator and have difficulty, that will become the default. 

Appreciation time Calculation

The allotted time will vary depending on the operator’s level and difficulty level. 

For example, if the allotted time is 1 minute 

  1. If the answer is given within 50% of the allotted time (i.e., within 30 seconds), ‘excellent’ or alternative words of appreciation will be awarded. 
  2. If the answer is provided within 75% of the allotted time (i.e., within 45 seconds), ‘very good’ or alternative words of appreciation will be awarded. 
  3. If the answer is provided within the allotted time (i.e., within 1 minute), ‘good’ or alternative words of appreciation will be awarded. 
  4. If the answer is given within allocated time + 25% more than the allotted time (i.e.,1 minute and 15 seconds), ‘Fair’ or alternative words of appreciation will be awarded. 
  5. Anything above allocated time + 25% of allocated time, it is ‘Okay’ or alternative words for Okay from dictionary will be awarded. 

          Calculating score

          The method of calculating the score is given below:  

          1. Marks will be awarded to each question played.  
          2. Initially the score is set to zero.  

            Grade 

            Points 

            Excellent 

            50 

            Very Good 

            40 

            Good 

            30 

            Fair 

            20 

            Okay 

            10 

            Wrong Answer 

            -10 

            The final grade is determined by the total score multiplied by 100 and divided by 50 multiplied by number of questions attended. 

             

             

                    Settings of Maths-Tutor

                    At any point in the gaming page, users can use the Alt + S shortcut keys to open the game ‘Settings’ menu.   

                    From the settings,  

                    1. User can choose a different operator or difficulty level  
                    2. Use speech synthesizer to pick voice modulations of the game  
                      1. espeak-ng  
                      2. flite  
                      3. rh-voice  
                    3. Speech language allow user to select the suitable language. 
                    4. Use Speech person to pick different voice modulation depends on the speech synthesizer.  
                    5. After updating the setting, user can use the Start button to restart the game with updated settings.  
                    6. The load question option is used for uploading their own question file. This option is used for children to test their skills by creating their own question files and for teachers to conduct the exam. 
                    7. If we enable ‘remember selection’ option from the launching time of the game, it will not come again when we open the application. If we want the language selection option again, we use ‘reset’ option. After selecting the ‘reset’ option simply exit the application and reopen it. The box for selecting a language will show up. It also the resets operator, difficulty as Addition Simple and Text to speech.  

                    Note: This is dependent on the operating system. Users should have speech synthesizer installed to use this functionality.  

                    Load a question file

                    The question file should be saved with filename .txt extension format. After creating the question file, you need to open it using the ‘load question’ option. That is, if you click on the ‘load question’ option, a window will appear to select the question file. And if you choose the question file and click on ‘open’, the question file will open on the game page. After that, if you click the ‘enter’ key, those questions will load to the game page. (How to prepare a question file is given at the end of this document [section 9]). 

                    Keyboard shortcuts

                    1. Users can utilize the ‘apostrophe’ key to shorten the speech rate and ‘semicolon’ key utilize increasing the speech rate.  
                    2. ‘Space’ key used to read the questions again.  
                    3. ‘Shift’ key used to hear the question in verbose mode (The verbose mode is used to pronounce numbers one by one. For example, instead of saying ‘one lakh and twenty thousand’ all at once, each digit is announced individually to avoid confusion. So, ‘one, two, zero, zero, zero, zero’ will be announced separately.). 

                         

                        How to prepare question file

                        Maths-Tutor application has the feature to load a set of questions, and this can be used to evaluate the competency or learning of students. To do this, first a lesson / question file needs to be created. 

                        1. The Lesson file can be created using normal text editors and the file should be saved with .txt extension.  
                        2. After creating the Lesson file, you can test it using the ‘load question’ option.  
                        3. A Lesson file contains questions written in line by line; it should not contain blank lines. 
                        4. Each question is written in following format  
                        5. Question expression === allotted time === bell ring needed or not. 
                        6. That is a Question expression followed by triple equals followed by Allotted time in seconds to answer followed by triple equals and end with bell ring needed or not. 
                        7. Here the first argument Question expression can be one or more operands separated by operators.
                        8. Each operand can be specified using any of the following method. 

                        Method 1: Simple fixed number, Example: 4  

                        Method 2: Numbers separated by coma, Example: 20,30,40  (Here 20 or 30 or 40 will be selected randomly) 

                        Method 3: Numbers between range specified using colon Example: 5:15  (Here a number will randomly choose between 5 to 15 including the 5 and 15.)

                        Method 4: Number multiplied by a number between a range.  Example: 3;5;10 (Here any number between 5 to 10 including the 5 and 10 will be randomly selected and multiplied by 3.)

                        Method 4 is used in the case of division to avoid fractional parts.  

                        Example of Question 

                        • 2===10===1 

                        This is an example of a simple fixed number, where 2 represents the question expression, 10 (seconds) indicates the time to answer, and 1 signifies the need for a bell ring. 

                        • 4===10===0 

                        Here, 4 represents the question expression, 10 indicates the time to answer (seconds), and 0 signifies the not need for a bell ring.  

                        • 2+2+2===20===1 

                         This is an example that contain three fixed number and two operators, where 2+2+2 represents the question expression, 20 (seconds) indicates the time, and 1 signifies the need for a bell ring. 

                        • 1:9===20===1 

                        This is an example of Numbers between range specified using colon, where 1:9 represents the question expression, 20 indicates the time(seconds), and 1 signifies the need for a bell ring. 

                        • 30+10,20,30===15===0 

                        This is an example of Numbers separated by coma, where 30+10,20,30 represents the question expression (30 will add with 10 or 20 or 30), 15 indicates the time(seconds), and 0 signifies the not need for a bell ring. 

                        • 30-10:20===15===0 

                        This is an example of Numbers between range specified using colon, where 30-10:20 represents the question expression, 15 indicates the time(seconds), and 0 signifies the not need for a bell ring. 

                        •  10;20;30/2===25===0 

                        This method is used only in the case of division to avoid fractional parts. That is, 20 or 30 or any number in between this will multiply by 10 and then its result will divide by 2 

                        • 100;20;40/2,5,10===60===0 

                        This is an example of Number multiplied by a number between a range, where 100:20;40/2,5,10 represents the question expression(Here any number between 20 to 40 including the 20 and 40 will be randomly selected and multiplied by 2 or 5 or 10), 60 (seconds) indicates the time, and 0 signifies the not need for a bell ring. 

                         Built-in lessons can be visited for better clarity: https://github.com/zendalona/maths-tutor/tree/main/lessons