Search Unity

  1. We are migrating the Unity Forums to Unity Discussions. On July 12, the Unity Forums will become read-only. On July 15, Unity Discussions will become read-only until July 18, when the new design and the migrated forum contents will go live. Read our full announcement for more information and let us know if you have any questions.

Question Is it feasible to train on collected player behaviour?

Discussion in 'ML-Agents' started by victornor, Feb 24, 2024.

  1. victornor


    Jan 17, 2014
    Hey, i've been wondering if it's feasible or even possible to collect demonstration data from every player, send it to my server and use all of the collected demonstration as an AI Model for my agents?

    This would allow me to group demonstrations based on completion times and or player expertise, thus allowing me to create different ai difficulty levels with less training and more realistic human player behaviour.

    Any thoughts?
  2. CodeSmile


    Apr 10, 2014
    To be able to record "demo data" from players your game must be fully deterministic. Which means the recorded input events when played back lead to the exact same end state. This may be tricky to do with Unity, and near impossible if you use Physics for gameplay.

    The alternative of grabbing the entire game state every frame, essentially regarding every rendered frame as a keyframe also has issues. For one, the amount of data collected may be prohibitive, may even degrade user's performance significantly. And playback needs to occur at the same rate as the player's which may vary.

    Generally, if you have instructive player demo data on how to overcome obstacles or perform tasks this can be helpful guidance for the AI.

    The problem with taking any user data is the quality of that data. Perhaps the player was just strolling around, not playing seriously. Or even knowing that you'll use these recordings to train AI so player's might actually be keen on submitting recordings that dumb down the AI, if only to mess with you. ;)

    So you'd have to trust the data from selected players or screen it.