ROUTINE TO SELECT FOM A TABLE AND UPDATE ANOTHER TABLE
The update command for Table 1 to update all names score

Would look like

UPDATE table1 as t1 
INNER JOIN (SELECT DISTINCT(name) AS distname, SUM(points)-SUM(penalizes) AS score 
  FROM table2
  GROUP BY name) t2
ON t1.distname = t2.distname SET t1.score = t2.score;


But better would be a trigger, which update only the rows in table1, username is actualy updated or inserted

DELIMITER $$

CREATE TRIGGER after_table2_Insert
    AFTER INSERT
    ON tabel2 FOR EACH ROW
BEGIN
    UPDATE table1 as t1 
    INNER JOIN (SELECT DISTINCT(name) AS distname, SUM(points)-SUM(penalizes) AS score 
      FROM table2
      Where name = NEW.name
      GROUP BY name ) t2
    ON t1.distname = t2.distname SET t1.score = t2.score;

END$$    

DELIMITER ;


And something similar for updating table2

DELIMITER $$

CREATE TRIGGER after_table_update
AFTER UPDATE
ON table FOR EACH ROW
BEGIN
        UPDATE table1 as t1 
        INNER JOIN (SELECT DISTINCT(name) AS distname, SUM(points)-SUM(penalizes) AS score 
          FROM table2
          Where name = NEW.name
          GROUP BY name ) t2
        ON t1.distname = t2.distname SET t1.score = t2.score;
END$$

DELIMITER ;