Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
CROWD CONTROLLED AUTOMATED FANTASY SPORT GAME
Document Type and Number:
WIPO Patent Application WO/2021/246996
Kind Code:
A1
Abstract:
The Crowd Controlled Automated Fantasy Sport Game is a plurality of automated machine learning capable software bots comprising the software functioning to operate a fantasy sports game simultaneously as an online game and video game controlled by automated machine learning software bots capable of replacing and recompiling its own software code for the purpose of improving its performance at accomplishing crowd controlled performance criteria. The Crowd Controlled Automated Fantasy Sport Game offers active user play before, during, and after league, season, or regular game play, as well as the simulation play for testing and practice to achieve vast room for improvement in all these areas. The computer based intelligence is in control of the operation, and system functionality and bookmaking offering wholly unbiased by, or influenced by, human interaction ensuring the fairness of the game and equality of play for all users.

Inventors:
GRAY GERMAINE (US)
Application Number:
PCT/US2020/032473
Publication Date:
December 09, 2021
Filing Date:
June 01, 2020
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
GRAY GERMAINE A (US)
International Classes:
A63F13/00
Foreign References:
US20160051895A12016-02-25
US20120330444A12012-12-27
US20160110963A12016-04-21
Attorney, Agent or Firm:
CARSON, Gregory, Donald (US)
Download PDF:
Claims:
CLAIMS

1. 1 claim a Crowd Controlled Automated Fantasy Sport Game comprising a plurality of automated machine learning capable software hots comprising the software functioning to operate a fantasy sports game simultaneously as an online game and video console game wherein game users may use players in their selected gaming sport and players from sports other than the sport selected for game play, and to provide player electronic training to augment and enhance that players game skills and data for use within said game controlled by said automated machine learning software hots further comprising the capability to replace and recompile said automated machine learning capable software bot’s software code and controls for the purpose of improving the performance of said automated machine learning capable software hots in achieving crowd determined performance criteria used to evaluate said automated machine learning capable software bot‘s performance based on crowd controlled rating scale.

2. 1 claim the Crowd Controlled Automated Fantasy Sport Game of claim 1, wherein said automated machine learning capable software hots further comprise the software functioning to operate to host and control game play for all games and offer predictions and analysis for future and simulated games.

3. 1 claim the Crowd Controlled Automated Fantasy Sport Game of claim 1, wherein said automated machine learning capable software hots further comprise the software functioning to operate to host and control game play for all games, offer predictions and analysis for future and simulated games, and the software functioning to operate as a self-sustaining bookmaking, wagering, and user payment system allowing it to function as an autonomous, independently crowdsourced sports book within said game.

Description:
TITLE: Crowd Controlled Automated Fantasy Sport Game

BACKGROUND OF THE INVENTION

[0001] Online fantasy sports games offer increased fan / user interaction in competitive sports for entertainment by allowing users to act as owners or managers who select teams and players to use to compete amongst themselves as they manage their teams to a limited degree.

[0002] There are significant features lacking in the current online fantasy sports games that limit the game play experience. There are features lacking in three major areas: before gameplay, during gameplay, and after gameplay. There is also the obvious limitation of the current fantasy sports games: they are only available during the competitive sports' respective seasons.

[0003] Before fantasy sports games begin, a user may choose to research the database of athletes of a particular sport and look for trends in the athletes' past performances. The user then selects athletes they hope will perform well in the upcoming competitive game / season, and then must wait days in-between real-world competitions to play their next fantasy sports game. The rosters assembled by users in the fantasy games are limited in many ways: only contemporary players from that sport are available to compete, only static databases of available players (athletes) are available for play, there are no controls offered to the users over the players (athletes) the user plays with, and there is only hopeful prognostication of player performances to apply points to the user's fantasy team's performance. [0004] During the fantasy sports game itself, the limitations continue. Once a team is assembled, there is no way to interact in the game action with your players / athletes in any significant or tangible way. The only method of engagement is as an "Owner" or "Manager.” The most exciting aspect of sport, the ability to view its play as a form of entertainment, is devoid in any current fantasy sports game experience. Further, there is the absence of highlight plays - those exceptional portions of the game that bring excitement and delight to sports fans and thus to fantasy sports game users. Also, when a live playing athlete is injured in their competitive sport, the fantasy sports game user is unable to replace that athlete in their fantasy lineup.

[0005] After fantasy sports games are complete, there is a complete lack of gaming and play activity until the next live game in that sport begins. In the case of football, where games are played weekly, this lack of game play leads to days of downtime in which the players / athletes on the user's fantasy team are being unused and unplayed because the entertainment is on hold until the next live game in that sport.

[0006] Users play by forecasting scenarios of player use combinations and the prognostication that comes with the preparation and setting of lineups for the next set of games, but the strategy and interaction is limited to user guessing and directed Artificial Intelligence (AI) predictions. In current games, there is no capacity to leverage concrete, historical data, and /or to be able to practice in non-live play mode, and / or to improve the user’s playing skills using simulation. Further, there is presently no capacity in existing fantasy games to add training and experience to a user’s players or teams and accordingly to offer the user the opportunity to improve their chances of wining during future play. [0007] The features lacking among the current fantasy sports games before, during, and after game play, as well as the lack of off-season play provides vast room for improvement in all these areas. Further, with the addition of computer based intelligence in game control, operation, and system functionality, there is a truly unparalleled opportunity to offer a new fantasy sports gaming experience wholly unbiased by or influenced by human interaction, ensuring the fairness of the game and equality of play for all users.

[0008] The AI sites that are available today, offer AI but only for improving prediction data for gameplay.

BRIEF SUMMARY OF THE INVENTION

[0009] The present invention presents a far more holistic approach to the use of machine learning to include the primary purpose of the AI being to include the provisioning and operation of a fair and neutral gaming experience run by an AI Robot. This provides a complete lack of human interaction with the control and operation of the AI Robot, allowing it to provide a neutral and fair gaming environment for users, where no one can cheat with any advantage not available to all, and where everyone gets the same data and predictions (depth determined by user status).

[0010] There are three AI robots in the present implementation: the GameBot, the DecisionMakingBot, and the CodeAdjustorBot. The three AI robots (hots) are computer software programmed as herein described that run (operate) on computer hardware suitable for running said software programming. Data stores (collections of electronic media data storage on database server software and hardware) are used to house the data collected, generated, and used by all features and functions of the present invention.

[0011] The GameBot populates and runs the website, runs the games (online and video game console based), manages the users, and provisions access to the DecisionBot(s) (the AI that does the prognostication, forecasting, and bookmaking).

[0012] The GameBot, to improve itself, searches the internet and polls and trolls social media for content and presentation format. This leads to the GameBot rebuilding the website content, and posting to social media. The GameBot builds and provisions the user interface.

[0013] The GameBot services the users and is driven by frameworks and axioms that are reduced to rules that have numeric performance score results based data on all interaction points of the GameBot' s predictive and user satisfaction performance that are used to drive the GameBot to improve its performance by searching for and trying new-code.

[0014] The GameBot uses frameworks or templates (such as themes and style sheets) for website construction, social media posting, user interaction screens and data presentation. All frameworks and templates can and will later change as the GameBot finds and implements better content and presentation formats and preferences, from its searching for content related to users and content useful to users. The GameBot will strive to find and try new content and formats in order to improve its performance in servicing its purposes. [0015] The GameBot can even offer a user version of itself to certain users (by status), and then that user can guide and direct their own UserBot by adjusting the user input and providing guidance and input to the purposes that the UserBot can service.

[0016] The DecisionBot(s) use frameworks or templates as well to compute probability, statistics, substantial similarities comparisons, relative risk analysis, weighting factors, risk factors, numerical analysis, actuarial analytics, accounting, etcetera. All frameworks and templates can and will later change as the DecisionBot(s) finds and implements better data analysis and predictive tools from its searching for that sort of new-code in order to implement it in an effort to improve its performance in scoring better on serving the purposes that the DecisionBot(s) service.

[0017] The GameBot and DecisionBot(s) can and will make changes to the frameworks and templates, just like they can and will make changes to their code using the CodeAdjustorBot.

The CodeAdjustorBot can locate and exchange program code, framework, and template sections in the systems software if and when a suitable software code section (new-code) is obtained in response to the system working to improve performance of the purposes.

[0018] The purposes that the Bots service are motivators for them to change their code and their content in order to improve their score in providing service to the purpose. The Bots are on a permanent mission to improve.

[0019] The purposes can even be opened to the users to control and contribute (add, subtract, edit) input. [0020] The purposes are things such as: increasing user satisfaction, increasing accuracy of predictions, increasing ease of viewing, summarizing lots of data for users into concise and relevant packages to offer improved interaction with the users and insights for the users that have mathematically evaluate-able performance criteria and results scoring to compare achieved success against relative to desired success, and trigger searching for improved new-code to test and incorporate in order to improve performance of the purpose.

[0021] In essence, the present invention is an electronic employee, an AI robot that both is, and runs, a new sort of fantasy sports (and betting) game.

BRIEF DESCRIPTION OF THE FIGURES

[0022] Figure 1 is the GameBot Flowchart showing the process flow that the software follows as it monitors and manages its web presence, analyzes its performance, and interfaces with the CodeAdjustBot show nin Figure 2.

[0023] Figure 2 is the CodeAdjustorBot Flowchart showing the process flow that the software follows when it runs the games and works on making changes to its software code, templates, or data structures.

[0024] Figure 3 is the Game Play Flowchart showing the process flow that the software follows when users interact with the software.

[0025] Figure 4 is the DecisionBot Flowchart showing the process flow that the software follows when it makes its predictions and analyses. [0026] Figure 5 is the CodeAlterationEngine Flowchart showing the process flow that the software follows when it makes changes to its software code, templates, or data structures.

DETAILED DESCRIPTION

[0027] The description of the present invention is a discussion of computer software running on appropriate computer hardware. The conventional computer servers and software available today are suitable for use in implementing the present invention. The description focuses on the making and using of the software that comprises the present invention and is not intended to create any limitations on the computer hardware or software used to make and use the present invention, other than the requirement that the computer hardware and software used must be capable of implementing the process of the present invention.

[0028] All software process elements as herein described consist of a sophisticated computer software system of independently callable sub-routines and software executables that perform its operations. These software process elements are collectively referred to as functions and always include all requisite computer hardware and software as needed to implement the function. All functions, regardless of flowchart or any hot specific discussion are intended to be independently callable as processes from any other function or process. [0029] Initial content is provided to the entire system before initial execution so that all functions have an available starting point and performance goals to attract users and get user input on its performance settings.

[0030] For all purposes, a user is defined as only a human person. Software verification is a suitable form of proof that a user requesting an account is a human person, but this does not preclude the use of any and all other available means and methods of verifying that the electronic user account request is in fact coming from a human person. As used herein a vote means that one vote that user may cast in favor of or against any presented content. No user can have more than one vote, and no person can have more than one user account.

[0031] As shown in Figure 1, the GameBot software application, Element 100, follows a process flow indefinitely repeated. In other words, once started, the GameBot (100) will continue to process by running its software in an endless loop. The GameBot (100) of the present invention is computer software and it runs its processes on and uses data stored and updated on computer hardware.

[0032] The process flow of the GameBot software (100) starts as shown in Figure 1. Figure 1, Element 110 is the start of the GameBot process flow. The GameBot always runs a 'Save Current State' function, Element 120, as its first set of software operations.

[0033] The Save Current State function (120) serves to provide an active operational state for the GameBot (100) to return to if the subsequent operations and procedures in its processes or the processes called into function by its processes fail, otherwise result in errors, or do not yield an operational or improved functioning. The Save Current State function (120) provides a complete computer software and data copy of the GameBot (100) and all associated and dependent software and data that are used by the GameBot (100). This full copy of the entirety of the GameBot (100) includes the software and data of all of its related components and can be and / or is used by the GameBot (100) to return to operation at this save point as needed to recover from or drop the implementation of any new code attempted by the GameBot (100) as a potential improvement in its operation. The Save Current State function (120) continues to operate saving the current state of the software and all associated data as the GameBot (100) software runs.

[0034] The Save Current State function (120) provides both the live backup needed by the GameBot (100) to ensure continuous operation of the present invention as needed when new code implementations are not effective or beneficial as well as a current software and data condition and set that is available for offline backup copying. The Save Current State function (120) includes the functions needed for offline backup copying and restoration.

[0035] Element 130, the Web Presence Analysis function, is a sophisticated software system of independently callable sub-routines and software executables that perform its operations. The Web Presence Analysis function (130) compares and evaluates the presently available state of the present invention as available to users. This includes the website, software applications, data stores and communications channels open and / or available.

[0036] The Web Presence Analysis function (130) uses a set of data elements to categorize its condition of operation and presentation. The data elements used by the Web Presence Analysis function (130) include, but are not limited to: databases; data templates and data verification / correction algorithms; website templates, style-sheets, themes, plugins, and applications; GameBot (100) performance criteria; and language templates and meaning translations.

[0037] The Web Presence Analysis function (130) uses a set of performance criteria that are laid open to the potential of user influence. The performance criteria are comprised of, but not limited to: user satisfaction data based on user input and voting; social media and ratings rankings relative to other similar games; and search engine result listing data / criteria, ratings, and rankings. The performance criteria are quantified numerically and scaled between 1 and 100. The level of success in performance is determined by the currently set range of desired performance (adjustable by the users by exposing the criteria and range settings to the users for them to vote on changes to the settings used by the GameBot (100) to evaluate its level of success in meeting its performance criteria.

[0038] The Web Presence Analysis function (130) compares its present state and present state of its website and all other user presentable data, as discussed below, with its current level of performance success in achieving the performance criteria. If the Web Presence Analysis function (130) finds that there is room for improvement in its performance, it then sets the current save state as in need of improvement and the Web Presence Analysis function (130) continues its evaluation and analysis after setting data triggers to facilitate the operation of other functions.

[0039] After saving, and analyzing its present state, the GameBot (100) then proceeds to search and / or scan available content on the internet for its use in improving itself and / or for use on its website for content or application changes. Element 140 is the Content and Code Search function. The Content and Code Search function (140) uses a set of data elements to include but not be limited to the names and descriptions of all of the algorithms, equations, analytics, analysis procedures, data elements, text descriptions, keywords, key-phrases, and the meanings of text phrases and translations. The Content and Code Search function (140) uses machine translation, as well as voice recognition software, as needed to locate, identify, and parse into useable code or content sections or segments to become new-code.

[0040] The data elements are scored and / or rated for desirability and usefulness to the users by the Analyze AI Performance function, Element 150 in Figure 1, and are then used as a quantitative means for the GameBot to decide whether or not t search and what data elements to search the internet for, looking to find other means and methods of accomplishing the same or similar functioning that is currently present in the software and data of the present invention.

[0041] As shown in Figure 1, Element 150 is the Analyze AI Performance function. The Analyze AI Performance function (150) is a set of software operations to evaluate the current operational state of the GameBot (100) to determine whether the GameBot (100) is currently operating at its peak performance based on the criteria implemented, evaluated, and rated from its user defined scale of success.

[0042] The Analyze AI Performance function (150) includes, but is not limited to, the software systems necessary to expose (show to and allow for input regarding) the stated performance objectives or goals used by the GameBot (100) to determine its relative success in achieving said objectives or goals. The Analyze AI Performance function (150) can, as needed, based on user voting and comments, determine that improvement is possible because it has not currently successfully achieved the maximum score possible within its user controlled goals.

[0043] The Analyze AI Performance function (150) serves to evaluate all of the software features and functions, as well as the website performance based on search engine results performance data. The Analyze AI Performance function (150) keeps in data stores a collection of statistics, rankings, and ratings on, but not limited to, performance results for each sub-routine, software executable or object, application, template, algorithm, and / or website content element (text, image, theme, template, plugin, etcetera). The Analyze AI Performance function (150) uses this data store to locate those elements of its program code or data that are not performing as well as desired based on the user controlled performance criteria. When it finds a code section that can be improved, the Analyze AI Performance function (150) sets the data elements in its data stores to indicate which pieces of its code are in need of improvement.

[0044] The Content and Search Code function (140) uses the performance data from the Analyze AI Performance function (150) to determine what type and kind of content to search the internet for or to ask the users to provide.

[0045] As shown in Figure 1, Element 160 is the Social Media Posting function. The Social Media Posting function (160) is the set of software routines and data stores used by the GameBot (100) to generate social media post content (text, images, video, audio, scripts, links, etcetera) and then to post said content on its social media accounts. Social media accounts can be provided to the GameBot (100) through an external connections user interface. [0046] The Social Media Posting function (160) posts content, using its own user accounts as provided, that was found by the Content and Code Search function (140) and is determined to be related to its performance goals as analyzed by the Analyze AI Performance function (150).

[0047] The external connections interface of the GameBot (100) is a set of user screen interface screens to display GameBot (100) settings, current performance, and user input / voting controls to change / update said settings. User text offerings are shown to other users for voting on the correct wording and exclusion based on the use of similar text offering that is already in operation with a functional numeric range for performance evaluation. Users, other than the user entering proposed input for the GameBot settings, can vote to have a performance suggestion approved, denied, stopped from further circulation, deleted, or noted as offensive, all of which is verified by other users.

[0048] The Analyze AI Performance function (150) continues in operation looking for sections within the code, scripts, themes, stylesheets, applications, data stores, sub-routines, executables, and other sections within all functions and data stores of the GameBot (100) thereby keeping current the state of its performance so that the other functions will know where to focus their improvement efforts. The place where the other functions will start with improvement attempts is the place where the Analyze AI Performance function (150) indicates the largest gap / difference between a stated performance goals performance score. The place in the systems of any given function where that function or hot will begin to search for and try implementing new-code solutions is that place in its systems the Analyze AI Performance function (150) indicates that there is the largest gap or difference between that function or systems performance and its performance score, ranking, or rating. Each successive performance goal is taken in turn, in order from largest to smallest gap or difference in performance. Given a tie as to difference in performance, the older goal or objective will get priority for code adjustment to enhance its performance.

[0049] Note that the settings of the Analyze AI Performance function (150) may be overridden by user controlled settings. For example it might be desirable to the users to limit the number of social media posts to one every eight hours or as otherwise chosen by user input.

[0050] After any needed social media posting is complete, the GameBot (100) will look to run or call into operation on its behalf, the CodeAdjustorBot (200) shown in Figure 2. Element 170 of Figure 1 is the GameBot (100) function to call the CodeAdjustorBot (200) shown in Figure 2. Element 170 is the Run CodeAdjustorBot function (170). The CodeAdjustorBot (200) is the hot of the present invention that runs the games and tries out new-code for another hot that was found by the Content and Code Search function (140) and is determined to be related to its performance goals as analyzed by the Analyze AI Performance function (150).

[0051] At the end of the operation of the CodeAdjustorBot (200), the GameBot (100) ends its basic flow of operational functions and returns control of operation of the system back to Element 110, the start of the GameBot (100).

[0052] As shown in Figure 2, the CodeAdjustorBot, Element 200, runs the games and tries out new-code as a possible improved means of accomplishing a performance objective or goal. The first function of the CodeAdjustorBot (200), below the Start, Element 210, is the Set/Revise

Goals function (220). The Set/Revise Goals function (220) is the set of software and data stores that are used to set and revise the objectives and goals of the present inventions' various Bots performance result, ranking, rating, or percentage. This is the place where the users enter performance criteria suggestions, vote on performance ranges, vote on settings and / or other user input, review other user suggestions, and thereby control the performance of the present invention.

[0053] The CodeAdjustorBot (200) is nearly always operating in the Set/Revise Goals function (220) running and collecting user data and vetting user controls with other users.

[0054] As shown in Figure 2, Element 230 is the Run Game function. The Run Game function (230) is a collection of software applications, algorithms, and / or scripts and data stores where the present invention runs the actual or imaginary games that the users play in. This function is available to all other functions of the present invention and any part, elements, or components therein. Games can be played in real time, delayed time, and any time scheduled or otherwise agreed upon by the users.

[0055] The software operational flow / sequence of game play is shown in Figure 3. Element 300 indicates the GamePlay function. Element 310 is the Start of game play, by the user selecting a sport upon which to establish a player / team roster to play. Element 320 is the Select Game function with which the user interfaces to select a game to play. Element 330 is the Select

Players function with which the user interfaces to select the players that the user is going to play with in the selected game. Element 340 is the Play Game function in which the selected game is played in real time, delayed time, and any time scheduled or otherwise agreed upon by the users.

Element 350 is the Rank Participants function in which the software computes the scoring order from highest scoring to lowest scoring for all users, players, and teams as against themselves and as against the collective group. Element 360 is the end of the Game Play function (300). It should be noted that all functions of the Game Play function (300) are available to and callable from any other function, script, or command line call that is part of the present invention. The Game Play function (300) offers users the ability to save players / teams to either use the same team later in the online game, or play the video game embodiment with the same players / teams used in the online game. Users may also save players / teams for tournament play, or other games, as well as run simulations for player / team combinations.

[0056] As shown in Figure 2, Element 240 is the Process Results function. The Process Results function (240) is a collection of software applications, algorithms, and / or scripts and data stores where the present invention processes the users' teams and players' game results from the game just played. The Process Results function (240) calls and uses the Rank Participants function (350) to conduct parts of its functions. The users' players and teams game play results are processed and their individual player and / or team results are ranked relative to each other, and relative to the players and teams of other users. The players and / or teams are then ranked in order from highest scoring to lowest scoring. The results are verified, the highest scoring player(s) is(are) notified and the results are posted for all users access to the results list. The results of this function are stored in the data stores of the present invention and are available to all other functions at all times. The Process Results function (240) is used and can be called as needed following the completion of its processing, following any game the present invention is processing, even if a separate instance of the data is created to allow for parallel processing, verification, or testing of new-code solutions or simulations.

[0057] The Process Results function (240) includes but is not limited to enabling and facilitating user rewards such as, but not limited to, payouts, assignment of users' players, customized versions of any bot(s), side betting (where legal), and other features as added by user input.

[0058] As shown in Figure 2, Element 250 is the Analyze AI Performance function. The Analyze AI Performance function (250) is a collection of software applications, algorithms, and / or scripts and data stores where the present invention processes the game results data and compares that to the prior predictions for analysis of accuracy of prediction and use in determining which areas of the present invention's software is in the greatest need of alteration for improvement.

[0059] The Analyze AI Performance function (250) calls the DecisionBot (400) shown in Figure 4. The DecisionBot (400) Starts (410) when called by any of the other functions that form the present invention. The DecisionBot (400) function begins its operation with the Save Current State function (120). The DecisionBot (400) then calls the Generate Prediction Data Sets function shown as Element 430. Using a collection, to include but not be limited to, of probability, statistics, substantial similarities comparison, relative risk analysis (statistical, numerical, actuarial, accounting principles), weather history, weather forecast, game field conditions, similarity of previous games, knowledge base content, commercial knowledge database projections or forecasts, historical player data, historical team data, user data, group data, team data, user/player/team affiliation data, previous predictions of the present invention, and the recorded accuracy history of the present invention. The user adjustable risk levels and weighting factors collected in the Set/Revise Goals function (220). At initiation, the system of the present invention is provided with executables, equations, and algorithms that conduct the standard mathematics, generally accepted accounting principles, and bookmaking systems of risk assessment and gaming odds generation.

[0060] After generating the game prediction data, and after the Run Game function (230) has the DecisionBot (400) calls and runs its Analyze Prediction Performance function (440), the present invention sets its data in the data stores and calls the Analyze AI Performance function (250) to analyze the performance of the systems predictions. When the system is found to be performing below the maximum score in any criteria as determined by the Analyze AI Performance function (250), the DecisionBot (400) will call and operate the Content and Code Search Function (140) to locate potential new-code for it to use to try and improve its performance. The DecisionBot (400) then calls and operates the Publish Predictions function (460) which copies the systems predictions and the results of those predictions to the data stores of the present invention for the website to display and other functions, to include but not be limited to, such as the Set/Revise Goals function (220) to utilize in its user interface.

[0061] The last function that the DecisionBot (400) calls into operation for its purposes is the Code Alteration Engine function (270). When the prediction performance of the system is less than the maximum score in its set numeric range that determines its level of performance, the DecisionBot (400) calls the Code Alteration Engine function (270) to test run the new-code that it found to determine if the new-code is a better solution than the existing solution that the system of the present invention has for the solution the new-code is found to be related to. [0062] After the predictions are made, used by the users in game play, and analyzed as herein described, supra, the CodeAdjustorBot (200) will call into operation for its purposes the Find New Code function (260). The Find New Code function (260) is a collection of software applications, algorithms, and / or scripts and data stores where the system of the present invention looks to (requests from) and queries the other Bots and the associated data stores of the present invention for new-code or content that has been found by the other bots. The Find New Code function (260) examines its own code and all of the code of all bots and functions of all components of the present invention (to include, but not be limited to execute-able code, compiled code, scripted code, templates, themes, data stores, and analysis predictions) to locate the place(s) within its own code where the functions similar to the functions of the new-code are located and operating. The place within the present invention's own code is determined based on inventorying the features and functions of the new-code or content and considering the new- codes documentation, notation, input and output variables and equations, as detailed below. The new-code or content is found by the searching functions of the other Bots that are part of the present invention.

[0063] As shown in Figure 2, Element 270 is the Run Code Alteration Engine function. The Run Code Alteration Engine function (270) is a collection of software applications, algorithms, and / or scripts and data stores wherein this function calls into operation (action) the

CodeAlterationEngineBot (500) as shown in Figure 5. The Run Code Alteration Engine function (270) is called and run by the CodeAdjustorBot (200) where there is new-code or content to test out using in order to improve performance of the present invention's hots and functions.

[0064] As shown in Figure 2, Element 280 is the Return to Start function. The Return to Start function (280) is the collection of software applications, algorithms, and / or scripts and data stores wherein this function calls the start function of the CodeAdjustorBot (200) and, therefore, the processes and functions of the CodeAdjustorBot (200) begin again at the Start (210) element.

[0065] The CodeAlterationEngineBot (500) is shown in Figure 5. Element 505 is the New Code start of the CodeAlterationEngineBot (500). This the beginning of the CodeAlterationEngineBot (500) process flow. The first step in this flow is the Viability (510) test. The new-code is subjected to a comparison, including but not limited to, to a determination regarding: 1. Whether the new-code is identified as the same type / kind of code that the current-code is (or it can be suitably substituted such as FORTRAN or C++ for C compiled code in a separate executable) currently and whether it results in the same type / kind of output data the code does currently. 2. Whether the new-code accepts the same number and types of all input variables, and outputs the same number and types of all output results (data mapping is acceptable if only the order or precision needs to be adjusted in order for the new-code to comply). 3. Whether the new-code is documented to perform the same function, operation, analysis, or customer service, and the degree of successful use in analysis, prediction, user engagement, or other criteria as defined herein.

[0066] If the new-code is not determined valid the CodeAlterationEngineBot (500) exits. If the new-code is valid, the CodeAlterationEngineBot (500) calls Element 515 the Code Duplicator function. The Code Duplicator function (515) archives the current code that the new-code will replace. It then calls the Code Parser function, Element 520, to locate and later remove the current code from the right place among the hots and functions of the present invention wherein the new-code is being tested as a potential suitable improvement. An additional function, Element 525, the Code Comparator function runs which copies the new-code into the parsed code and runs the hot or function in a separate computer hardware environment with the new- code in place so as to test the operation of the hot or function without influencing the currently operating systems.

[0067] If the new-code is determined to be a Valid Alternate (530) based on a test and comparisons of the old version's results with the new versions results provides complete results, and the new-code produces better results for any sub-part or the complete hot or function. If the results are not as good the CodeAlterationEngineBot (500) exits. If the results are better the CodeAlterationEngineBot (500) calls the Code Archiver function (535) to save and preserve the old code and create backup of the new-code for restoration purposes of the new version of the hot or function with the new-code in place for live use. The Code Substituter function (540) is called to parse out the old code from the live system's software, and replace it with the new-code. The Code Compiler function (545) is called to recompile the live hot or function's software. The New-Code Testing function (550) is called and run to test of operation of the new version of the code. A second test is done to ensure that the live system's new software is an improvement by running a simulation of the most recently completed game with the new-code in place to verify that the new-code is an improvement. If the new-code is verified as an improvement, the Code

Saver function (560) is called and the new version of the software is saved and / or backed-up and the CodeAlterationEngineBot (500) exits, returning pointer flow control to the hot or function that called it. If the new-code is not verified as an improvement, the Verify Prior Code function (565) is called and the most recent prior version of the hot or function software is run in a simulation against the most recent game played to ensure that the prior performance has returned. If prior performance has not returned the Verify Prior Code function (565) will roll the system back to the system's last software version and return to operation by calling the Code Archiver function (570) to save the unsuccessful new-code for analysis and comparison to future found new-code.

[0068] The present invention can and does offer a plurality of layers, or levels of access to data by user status. This is accomplished with a plurality of statuses. The lowest status, the basic user, has the basic player / team data access to all data and automated advice that it minimally needed to play the game. The highest status includes access to all available data and the full compliment of automated advice influence and input / guidance to maximize performance.

[0069] There are multiple facets to the game and multiple ways users may play the actual game and also interact with it online or via a console based video game system. Users can play the traditional daily fantasy sports tournaments, and league-based fantasy sports. The inclusion of historical data and artificial intelligence (AI) hots as a self-sustaining, active feature of the actual game creates a unique experience that creates and offers a myriad of opportunities for users to enjoy fair and equal gaming for any and all of the fantasy sports regardless of day or time.

[0070] Utilizing historic players and historical data in a traditional league model creates a year- round, around-the-clock fantasy gaming experience. During the competitive sports season, users may create hybrid lineups featuring both contemporary and historical players. While most of the historical data is complete and able to be utilized without issue, there are players and teams from before the modem era record-keeping that have more inconsistent statistics and / or data. In the earlier years of most sports, the statistics for professional sports were not as diligently taken, maintained, and recorded as they are today. In these instances, the AI hots will have the role of searching for databases of competitive sports leagues and media outlets to uncover the most complete stats for these early athletes and update its statistical database as new information becomes available.

[0071] The AI hots will seek out and populate the historical data of players when players are added to the database of the game. An example is the National Football League (NFL) season of Don Hutson in 1942, the cumulative end of the year stats for the player can be found but not how the player performed in each individual game. Until a complete historically accurate statistical record is located for that player, the AI hots will generate or fill in the previously unavailable statistics. The AI hots use, but are not limited to using: crowdsourced data compiled through polling, user trends and predictions from AI hots and users, and trend data calculated in that player's season from historical data using multiple factors, to include but not be limited to: weather conditions of the game, player injuries / availability, opposing team's defensive efforts against comparable teams and players during that season, the average performance of the player in the previous and the following season, and all other relevant data as determined by the users and the AI hots in performance testing. The AI hots will then populate the player's missing game statistics, allowing users to incorporate that player into their lineups with a complete season of statistics for each game. [0072] The AI hots are able to recommend players from any era to build team rosters and weekly lineups based on analyzing the historical statistics and the probability the player will score well for your team. The AI bots will also uniquely monitor the events occurring in contemporary games and make adjustments to rosters in real time, a feature currently unavailable in any fantasy sports game. For example, when a player is currently injured, their user would not gain any additional points from that player for the duration of the game due to the roster spot being "locked" at the onset of the competitive game due to the injury.

[0073] AI bots monitor the competitive games in real time, and thus the present invention will be able to alert a user of an injury in realtime, as well as stop the point accumulation of the injured player's roster spot, and suggest possible players on the user's player bench (alternate players) that may be substituted into that roster spot for that injured player. The points of that substitute can begin to accumulate in that roster spot for the user's team from the actual moment the new player was substituted into the lineup. Those points would be supplemented to the points previously accumulated by the injured player. The AI bot’s ability to adjust users' rosters and crowdsourced players’ abilities in real time make this gaming experience not only atypical but unique and exciting.

[0074] In daily fantasy formats, besides smaller user-led tournaments, the Fantasy Sports Game (FSG) AI bots will actually host a first-of-its-kind large tournament on a regular (weekly, daily, or other time period) basis. During the playing of the large tournament, the AI bots control the aspects of setting the stage for the tournament. Users will still select and submit a lineup of available contemporary athletes (on a competitive sports' game day) and historical athletes. The AI bots will calculate probability and odds for users’ lineups using data from trends and be able to make suggestions to users during the building of their lineup. Once all entries are received for that day's large tournament, the AI bots sort users into homogeneous competitive groups for the purposes of leveling the odds and to create similar wagering groups. The criteria of a user's success rate data and the crowdsourced data are utilized to sort users into groups suitable to any group size and / or configuration, such as options for 100 or 1000 challengers in order to play for larger or smaller winnings, respectively.

[0075] As a part of the large tournament, the FSG AI bots will also have other functions in addition to creating user groups and running games and competitions. The AI bots may use crowdsourced data to adjust player salaries, and remain respectively balanced within a user’s fixed budget. More popular players selected by users will be more expensive and lesser utilized players will cost, less thereby forming continuously evolving bargains and more interaction with the game as users seek out the bargain players of that tournament and trade players with other users.

[0076] Another feature is to generate highlights of selected players for users to enjoy during the competition. As players are added to the database, highlights of that player will be converted into a digitized / animated format. For contemporary players, highlights of the player's current game will be digitized and utilized for that day / week or until new highlights for that player are generated after the following game. The AI bots will then generate betting odds for the wagering for any customers wanting to wager on the outcome of the tournament. The odds of the wagers generated by the AI bots will be based on user success rates and the success rates of players selected on a user's team as well as the crowd controlled performance criteria. Additionally, the

FSG AI hot will enable and facilitate the distribution of all payouts to the winners after the completion of the tournament.

[0077] The automated game of the present invention offers ensured non-human biased gaming, gambling, and a multitude of unique opportunities for wagering currently not being used by any fantasy sports game. The ability for a user to offer a wager with an opponent is as old as time. But, the AI bot’s ability to adjust and post both players' and users' odds in real time, even as users adjust their lineups or as injuries are reported by competitive leagues, make the gaming experience of the present unique. The game offers users an opportunity to view the odds of any one of its competitors and place a wager for or against the success of a user’s team, whether it is seasonal league play, daily fantasy, tournaments, Head to Head (H2H) competitions, or even mock and / or simulated games.

[0078] The present invention includes opportunities for wagers to be placed on games where system or user AI bof s players / team play against other system or user AI hots for all manner of available competitions regularly scheduled or traditional fantasy sports games. Odds are available for all competitions, but also those featuring games / contests between the present inventions AI bof s players / teams and players / teams / or AI hots of other users. Other users can be users, groups of users, or users AI hots. As above, the competitions may be based on any or all of several criteria, to include but not be limited to: the AI hots selecting their own competitive teams based on the AI bof s best predictions and / or as limited or controlled by the crowd of users. [0079] The present invention is programmed to provide and offer a multitude of simultaneous competitive simulations (such as East vs West, 1990s athletes versus 2010s athletes, College athletes vs Pro athletes, etcetera) for either wagering or strictly for users' entertainment purposes. The ability of the AI to digitize and store players’ game footage would give the game a unique ability to utilize actual highlights of players’ historical performances while creating the fantasy game simulation.

[0080] The game of the present invention has the unique feature of a head-to-head (H2H) competition via a video game format that can be played by users with their fantasy players / teams. The roster for the user's team will consist of players selected by the user in a traditional fantasy sports manner. However, the video game will be available to users to challenge any other user. This will be particularly useful for user to enjoy active playing during days there is no competitive sport occurring, thus allowing users to continue play, interacting with the players on their fantasy sports teams. The video game feature of the game also unlocks unique opportunities for users to not only select players from any era of their sport, it also allows user to select players from any sport. For example, a user may select Lebron James to be the Tight End on their football team or Walter Payton to be a pinch runner in baseball.

[0080] In order to utilize the player from a different sport into your lineup, there will be an offline training component where the AI bots will have players running through simulations to increase their abilities to "train" them in the necessary skills to be competitive in that particular sport. Some of these athletic abilities (speed, catching, stamina, quickness, aggression, etcetera) will be influenced by a player's sport. For example, soccer players need training in using their hands, and football players are too aggressive for basketball and commit many fouls precipitating the need for player / team training. The enhanced players from these video game's rosters will be available to compete in H2H competitions against other users and tournaments / simulations when competing against users with similarly enhanced players. The AI hots have the ability to recommend other users as challengers based on certain criteria (players’ abilities, user scoring trends, etc.) in video game competitions or in the daily fantasy format. The AI would also recommend multiple users who could also agree to challenge each other in a small tournament of either the video game or daily fantasy format. Both versions of the challenge, the video game and daily fantasy include gaming and / gambling odds that are posted and made available for wagering by both users. The gambling / bookmaking is an automated hot function with crowd sourced and controlled performance criteria.

[0081] In the game show format, a select number of users challenge each other to create the best fantasy lineups based from a certain period of time (only players from the 1980s, 2010s, etc). Each user only has a few seconds to make selections based on a list of players from that timeframe. Each user/player combination is unique. After completing their roster spots, users compete by selecting players and a game number for the players' stats to be used as shown in Figure 3. The AI hots may then offer each user the opportunity to swap a player from a particular position that will generate more points than a selected player on their roster for a deduction of points. At this point, the point totals are calculated and a winner of the users is determined. Then, the winner of the users' competition would have the opportunity to challenge the AI hots of the present invention in creating a best lineup from a specific decade of the winner's choosing. One by one, the AI hot and the user will be given timed turns to select alternating players for their ultimate rosters. The AI hot may select its rosters based on crowdsourced data of the most popular selections from users in the game as well as the players with the highest probability to have a high score in a single game during that time period. The previous competitors would select the game number the stats will be taken from for the challenge to ensure neither the AI hots nor the winning user has an advantage in this round. In this format, rewards may be given to the winners of each level or, once again, the game could be enjoyed strictly for entertainment purposes.

[0082] Utilizing the AI hots as a key function of the actual game gives all users a full-time, ever learning and evolving assistant offering many features currently not associated with any fantasy sports game, such as real time crowdsourcing capabilities. For example, the AI hots will consistently seek feedback and input from users to constantly increase its database of available players for the game, but only with players users have shown a strong demand to include. The initial players added to the database of available players of the game are Hall of Fame inductees of the roster positions available on a fantasy sports roster, but all other players may be added.

The availability of these historic players will be continuously supplemented by the AI hot creating polls and monitoring the feedback received from the users.

[0083] The AI will be searching and polling for all types and categories of players, to include but not be limited to, those that have had historic seasons but were not consistent enough in their performances to earn a Hall of Fame career, or active players that have yet to be inducted into the Hall of Fame but have had statistically historic seasons. The number of players added to the database each month may be limited to ensure users return to the game and interact with the game in order to vote and update the players in the database.

[0084] The AI hots also proceed by polling on social media in addition to the game's users. Polls may be advertised and feedback requested to gauge the users' potentially desired features/ upgrades for the game and also advertise the game to potential users. The features could be anything from the payouts in a tournament to the color schemes used in the game. The AI will then seek out the features being requested by users in the form of other software found across the internet and reject or incorporate those features into its own code within the game. Through the use of the AI hots polling for crowdsourced data on social media and the game itself, the game will continuously improve upon itself for the users both to increase the number of players in the game's database and to change its own software code for improved user satisfaction with the game.

[0085] Although the invention has been explained in relation to various embodiments, it is to be understood that many other possible modifications and variations can be made without departing from the spirit and scope of the invention.