A game server which connects to a client terminal through a network and receives information relating to a game play operation on the client terminal to carry out a game process and then transmits output image data obtained as a result of the game process to the client terminal which requests the output image data, comprising: an input information reception unit configured to acquire information relating to the game play operation as input information; an input information storage unit configured to store a history of the input information; an information processing unit configured to immediately carry out a game process on a basis of the input information acquired by the input information reception unit to generate primary output image data to be transmitted in response to the game play operation and carry out, after the game ends, a game process for the second time on a basis of the history of the input information read out from the input information storage unit to re-generate output image data as secondary output image data of a higher picture quality than the primary output image data; an output data storage unit configured to store the secondary output image data; and a data transmission unit configured to transmit either: (i) the primary output image data generated by the information processing unit, if the secondary output image data are not stored in the output data storage unit, or: (ii) if the secondary output image data are stored in the output data storage unit, the secondary output image data read out from the output data storage unit to the client terminal in accordance with a request, wherein the information processing unit adjusts, during generation of the primary output data, the difficulty of the game in response to a communication situation with the client terminal and records a history of the adjustment, and carries out the same adjustment to adjust, in the information process for the second time, the difficulty of the game. an input information reception unit configured to acquire information relating to the game play operation as input information; an input information storage unit configured to store a history of the input information; an information processing unit configured to immediately carry out a game process on a basis of the input information acquired by the input information reception unit to generate primary output image data to be transmitted in response to the game play operation and carry out, after the game ends, a game process for the second time on a basis of the history of the input information read out from the input information storage unit to re-generate output image data as secondary output image data of a higher picture quality than the primary output image data; an output data storage unit configured to store the secondary output image data; and a data transmission unit configured to transmit either: (i) the primary output image data generated by the information processing unit, if the secondary output image data are not stored in the output data storage unit, or: (ii) if the secondary output image data are stored in the output data storage unit, the secondary output image data read out from the output data storage unit to the client terminal in accordance with a request, wherein (i) the primary output image data generated by the information processing unit, if the secondary output image data are not stored in the output data storage unit, or: (ii) if the secondary output image data are stored in the output data storage unit, the secondary output image data read out from the output data storage unit to the client terminal in accordance with a request, wherein the information processing unit adjusts, during generation of the primary output data, the difficulty of the game in response to a communication situation with the client terminal and records a history of the adjustment, and carries out the same adjustment to adjust, in the information process for the second time, the difficulty of the game.