Hello,
I'm not sure if this is the right place to post this, so I apologize in advance if it is not.
I'm currently trying to create a legally distinct program similar to the current VGC format for a school project. In the game, the player will battle a simple AI I've created, with a few preset teams that are inspired by popular and strong teams in the current VGC regulation I. The program will be simplified greatly compared to actual Pokemon, with less types at the moment, less moves and one less status effect (those being included in the game are burn, para, poison and sleep). The player will have access to a few different teams, all of which will be modeled after the current meta teams. The team that the AI uses will be chosen from a random set of preset teams to try to reduce repetition, but there is only so much I can do, especially if the player brings the same team every time.
The pokepastes of some of the teams I plan to add are:
Choice specs Miraidon and clear amulet Groudon team:
https://pokepast.es/313e35a77bf4c61e
Life orb Calyrex-Shadow and Zamazenta-C team:
https://pokepast.es/89d18c940f39794f
Clear amulet Calyrex-Ice and power herb Lunala trick room team:
https://pokepast.es/3191de3d1789cbff
(Of course everything will have different names and such).
Those aren't the only teams I will add, I plan on adding at least 10 teams, to try to cover the most prevalent restricted cores/teams and add more variety for the player.
If anyone has any suggestions for changes to any of these teams or other teams you'd like me to add, please tell me.
I don't plan on adding tera - I feel like it will be a nightmare to code - but if you think it is a necessary thing, please reply to tell me that, and I will attempt to add it.
The games will ideally be best of 3, with an option for open team sheets. The reason it will ideally be best of 3 is that I am not entirely sure how I will be able to give the AI the decision-making ability to choose whether or not to change its strategy each game, and how to change its strategy without just randomizing these decisions, as that would remove all strategy from an important part of the game.
As for the AI, I plan to give it simple prediction by providing it access to every damage calc for every mon on the field, and if an outspeed 2HKO or OHKO is threatening any of its mons, it will switch (unless it can't switch). This is obviously limited in terms of its ability to understand which mon it is switching the threatened mon out for and overall why it is bringing that other mon in. If there is no threat of an outspeed 2HKO or OHKO, then the AI will either choose to setup or attack. If anyone has any ideas how I can improve this while keeping it simple, please let me know.
The aim of this project is to try to create an AI that can model a real human player, and provide a challenge for the player. It can also be used to learn the basic gameplay of VGC for new players, but this is secondary due to the existence of things like Showdown.
Finally, I'd like to know if anyone has any suggestions at all for other things I should add or may have missed, or any changes you think would make it a more strategic and enjoyable game. Any feedback is useful!
Thanks for reading all this, I hope I didn't waste your time and have a good day!
I'm not sure if this is the right place to post this, so I apologize in advance if it is not.
I'm currently trying to create a legally distinct program similar to the current VGC format for a school project. In the game, the player will battle a simple AI I've created, with a few preset teams that are inspired by popular and strong teams in the current VGC regulation I. The program will be simplified greatly compared to actual Pokemon, with less types at the moment, less moves and one less status effect (those being included in the game are burn, para, poison and sleep). The player will have access to a few different teams, all of which will be modeled after the current meta teams. The team that the AI uses will be chosen from a random set of preset teams to try to reduce repetition, but there is only so much I can do, especially if the player brings the same team every time.
The pokepastes of some of the teams I plan to add are:
Choice specs Miraidon and clear amulet Groudon team:
https://pokepast.es/313e35a77bf4c61e
Life orb Calyrex-Shadow and Zamazenta-C team:
https://pokepast.es/89d18c940f39794f
Clear amulet Calyrex-Ice and power herb Lunala trick room team:
https://pokepast.es/3191de3d1789cbff
(Of course everything will have different names and such).
Those aren't the only teams I will add, I plan on adding at least 10 teams, to try to cover the most prevalent restricted cores/teams and add more variety for the player.
If anyone has any suggestions for changes to any of these teams or other teams you'd like me to add, please tell me.
I don't plan on adding tera - I feel like it will be a nightmare to code - but if you think it is a necessary thing, please reply to tell me that, and I will attempt to add it.
The games will ideally be best of 3, with an option for open team sheets. The reason it will ideally be best of 3 is that I am not entirely sure how I will be able to give the AI the decision-making ability to choose whether or not to change its strategy each game, and how to change its strategy without just randomizing these decisions, as that would remove all strategy from an important part of the game.
As for the AI, I plan to give it simple prediction by providing it access to every damage calc for every mon on the field, and if an outspeed 2HKO or OHKO is threatening any of its mons, it will switch (unless it can't switch). This is obviously limited in terms of its ability to understand which mon it is switching the threatened mon out for and overall why it is bringing that other mon in. If there is no threat of an outspeed 2HKO or OHKO, then the AI will either choose to setup or attack. If anyone has any ideas how I can improve this while keeping it simple, please let me know.
The aim of this project is to try to create an AI that can model a real human player, and provide a challenge for the player. It can also be used to learn the basic gameplay of VGC for new players, but this is secondary due to the existence of things like Showdown.
Finally, I'd like to know if anyone has any suggestions at all for other things I should add or may have missed, or any changes you think would make it a more strategic and enjoyable game. Any feedback is useful!
Thanks for reading all this, I hope I didn't waste your time and have a good day!