CPC H04L 67/125 (2013.01) [G06F 9/542 (2013.01); G06F 16/24568 (2019.01); G06F 16/27 (2019.01); H04L 67/34 (2013.01); G06N 20/00 (2019.01); H04L 67/55 (2022.05)] | 20 Claims |
1. A user device comprising at least one processor and at least one memory, the at least one processor and at least one memory implementing, by the at least one processor executing instructions stored in the at least one memory, a plurality of modules supporting an application configured to provide a computer implemented game, the plurality of modules being provided in the user device and comprising:
a stream processing module;
a message distribution module for distributing events between modules;
at least one game module;
at least one game option module; and
a prediction module
wherein:
at least one of the at least one game module is configured to generate one or more game events and provide the one or more game events to the message distribution module;
the message distribution module is configured to provide one or more of the one or more game events to the stream processing module;
the stream processing module is configured to determine based on the one or more game events received from the message distribution module that the prediction module is to be triggered to make a prediction, said stream processing module sending a request for the prediction to the message distribution module;
the message distribution module is configured to send the request for the prediction to the prediction module;
the prediction module is configured in response to the request for the prediction to provide a prediction based on one or more of the game events and send the prediction to the message distribution module, to control one or more of the game option modules;
the message distribution module is configured to send the prediction to the stream processing modules; and
the stream processing module is configured to provide an output, based on the prediction to trigger an action in the one or more of the at least one game option module, said action comprising controlling one or more options provided to a user in the computer implemented game.
|