Holy shit, the idea of enemies that also have deft control over time itself did not even occur to me.
Oh god, that could be baffling to try to concept and balance, oh man, but if you could, dang, and you sound like you’ve got a simple enough in basic concept, bounded enough… but so many possible things within those bounds…
I have some similar ideas about a story driven time travel game where it’s set up so that at one point you face an anonymous enemy, which forces you to trigger certain conditions in the stage and then they escape.
Later in the game you return to this stage at the same point in time, expecting to face that enemy again, but you are this “enemy”, and the game nudges you into replicating the exact same sequence of events so that you take the actions which the “enemy” did so your (NPC) past self can replay the exact steps you previously took.
But the game doesn’t show this clearly to you the player until you completed the stage - while your character is shown to have noticed something strange, the game doesn’t show you the player (or you character’s party) that you faced yourself until the end of the stage, using different positions and camera angles to hide it from you and the party. And if you manage to replicate the event chain perfectly, you’ll get to see your party members being visibly stunned when you see them realize it was a time loop (your actions in the stage breaks the loop), and hopefully the player can be made to feel like they experienced a time loop, as if they really faced off with themselves twice (“how did the game know I would do it that way?”)
That sounds difficult to pull off, but incredible if you could.
Not only is a time loop built into the main story, recreating something from another perspective… it also has branching paths in the more linear sense of a roleplaying game / imsim.
I like this idea too, but …‘nudging’ the player, without it being too estoeric, or too obvious… that ain’t easy lol.
I can see a few ways to nudge people, like a puzzle that’s more linear than it looks like, or selecting the tasks in the next version of the encounter based on the events in the previous version of it to match (you wouldn’t see clearly what the “enemy” is doing so you wouldn’t notice that those actions the second round weren’t fixed, the game is just trying to replicate the interactions between past/future self and the rest of the stage is completely arbitrary). Basically treating it as a choreography problem.
Maybe even make it feel more “wild” by recording how the player controls the character during the game before that point, use something like generative ML to make the “enemy” AI act as the game think you would respond to your past self, then when you’re the future you returning to the stage the game nudges you into using your abilities in the same way (altering how you have to use your powers to solve puzzles to match how the previous “predicted AI you”, making you face other enemies and use your abilities in similar ways to win fights)
I was going to suggest basically what you said in the first paragraph, but I didn’t want to influence your own creativity =D
As for the second paragraph… depending on exactly what you mean by machine learning… say, possibly a more brute force, genetic-mutation, run 100s or 1000s of iterations to generate a ‘strategy’ … that may be overkill.
I would suggest looking into Goal Oriented Action Planning, GOAP. GOAP is basically a theory, a conceptual framework of how to program AI, in the video game sense of AI… but it is way, way more computational lightweight.
It is also what made FEAR’s AI so distinct, (the FEAR AI programmer invented it and named, has either an academically published or at least technical ‘white paper’ on it), convincing players that it was actually intelligently reacting to them, the environment, and making its own decisions… because arguably, it was, or at least doing a much more ‘realistic’ approximation of this at a fundamental level.
The difference between this game, your game’s implementation of GOAP and most other ones… would be that it is like, the levels themselves, the sort of plot line itself, the ‘dungeon master’… that is the Goal Oriented thinking agent, not just an npc entity in the world.
You can find some good explanations of how it works, how to implement it in a game engine, on youtube… though ironically I must warn you that a lot of tutorials from basicslly indie devs… they often do not fully even grasp the concept.
Which is funny to me, as they are not intelligent enough to understand a model of machine intelligence, yet feel confident enough to explain it or criticize it, lol.
But yeah, if you have both a comprehensive tracking and logging system for the player’s actions… well, oversimplified, GOAP roughly invovles a sort of pathfinding algo traversing a node graph, with weights between nodes… and connections between nodes, or the ‘cost’ of traversing them… changing based on the agent’s current situation.
So… you would roughly be trying to do a ‘best fit approximation’ of the player’s own decision making process… into the the node graph the game itself uses… and then you could maybe reproduce the player themselve’s approach to decision making, and then make that into an npc agent, if you wanted them to truly like, mirror fight someone that ‘thinks’ like them, at some point.
Holy shit, the idea of enemies that also have deft control over time itself did not even occur to me.
Oh god, that could be baffling to try to concept and balance, oh man, but if you could, dang, and you sound like you’ve got a simple enough in basic concept, bounded enough… but so many possible things within those bounds…
Run with your idea! I like this!
I have some similar ideas about a story driven time travel game where it’s set up so that at one point you face an anonymous enemy, which forces you to trigger certain conditions in the stage and then they escape.
Later in the game you return to this stage at the same point in time, expecting to face that enemy again, but you are this “enemy”, and the game nudges you into replicating the exact same sequence of events so that you take the actions which the “enemy” did so your (NPC) past self can replay the exact steps you previously took.
But the game doesn’t show this clearly to you the player until you completed the stage - while your character is shown to have noticed something strange, the game doesn’t show you the player (or you character’s party) that you faced yourself until the end of the stage, using different positions and camera angles to hide it from you and the party. And if you manage to replicate the event chain perfectly, you’ll get to see your party members being visibly stunned when you see them realize it was a time loop (your actions in the stage breaks the loop), and hopefully the player can be made to feel like they experienced a time loop, as if they really faced off with themselves twice (“how did the game know I would do it that way?”)
That sounds difficult to pull off, but incredible if you could.
Not only is a time loop built into the main story, recreating something from another perspective… it also has branching paths in the more linear sense of a roleplaying game / imsim.
I like this idea too, but …‘nudging’ the player, without it being too estoeric, or too obvious… that ain’t easy lol.
I can see a few ways to nudge people, like a puzzle that’s more linear than it looks like, or selecting the tasks in the next version of the encounter based on the events in the previous version of it to match (you wouldn’t see clearly what the “enemy” is doing so you wouldn’t notice that those actions the second round weren’t fixed, the game is just trying to replicate the interactions between past/future self and the rest of the stage is completely arbitrary). Basically treating it as a choreography problem.
Maybe even make it feel more “wild” by recording how the player controls the character during the game before that point, use something like generative ML to make the “enemy” AI act as the game think you would respond to your past self, then when you’re the future you returning to the stage the game nudges you into using your abilities in the same way (altering how you have to use your powers to solve puzzles to match how the previous “predicted AI you”, making you face other enemies and use your abilities in similar ways to win fights)
I was going to suggest basically what you said in the first paragraph, but I didn’t want to influence your own creativity =D
As for the second paragraph… depending on exactly what you mean by machine learning… say, possibly a more brute force, genetic-mutation, run 100s or 1000s of iterations to generate a ‘strategy’ … that may be overkill.
I would suggest looking into Goal Oriented Action Planning, GOAP. GOAP is basically a theory, a conceptual framework of how to program AI, in the video game sense of AI… but it is way, way more computational lightweight.
It is also what made FEAR’s AI so distinct, (the FEAR AI programmer invented it and named, has either an academically published or at least technical ‘white paper’ on it), convincing players that it was actually intelligently reacting to them, the environment, and making its own decisions… because arguably, it was, or at least doing a much more ‘realistic’ approximation of this at a fundamental level.
The difference between this game, your game’s implementation of GOAP and most other ones… would be that it is like, the levels themselves, the sort of plot line itself, the ‘dungeon master’… that is the Goal Oriented thinking agent, not just an npc entity in the world.
You can find some good explanations of how it works, how to implement it in a game engine, on youtube… though ironically I must warn you that a lot of tutorials from basicslly indie devs… they often do not fully even grasp the concept.
Which is funny to me, as they are not intelligent enough to understand a model of machine intelligence, yet feel confident enough to explain it or criticize it, lol.
But yeah, if you have both a comprehensive tracking and logging system for the player’s actions… well, oversimplified, GOAP roughly invovles a sort of pathfinding algo traversing a node graph, with weights between nodes… and connections between nodes, or the ‘cost’ of traversing them… changing based on the agent’s current situation.
So… you would roughly be trying to do a ‘best fit approximation’ of the player’s own decision making process… into the the node graph the game itself uses… and then you could maybe reproduce the player themselve’s approach to decision making, and then make that into an npc agent, if you wanted them to truly like, mirror fight someone that ‘thinks’ like them, at some point.