Non ti permetterà di aggiornare la tabella perché è già stata letta da INSERT INTO.. SELECT
query che richiama questo trigger.
Un modo alternativo sarebbe disabilitare il trigger e aggiornare la tabella degli utenti separatamente, ad esempio:
INSERT INTO signed (time_of_start, player)
SELECT time_of_game_id, users.user_id FROM time_of_game, users
WHERE time_of_game.time_of_start="2017-02-01 12:00:00"
AND users.steamid="1234567890123456";
UPDATE users join time_of_game SET users.credit = users.credit-1
where time_of_game.time_of_start="2017-02-01 12:00:00"
AND users.steamid="1234567890123456";
Puoi aggiungere una colonna di join con ON
clausola se esiste una colonna che collega queste due tabelle.