[ANSWERED]Question about holding tournament

Hello, I’m new to not just moralis and web3, but web development as a whole. I am wondering about how to execute a feature I wish to have in my eventual NFT project.

User’s NFTs are entered into a competition with a combat theme. Each day in the competition, NFTs are matched into pairs to fight, and half of them are ousted from the competition. In the event there is an odd number of NFTs in the competition, one of the NFTs that lost previously is selected based on performance to rejoin the competition. This process continues until there is a final winner. The winner is awarded an NFT representing the trophy.

Combat in this is supposed to happen automatically, and by extension the progression of rounds in the competition are supposed to happen automatically aswell. Can this automatic feature be done? If it doesn’t concern blockchain or moralis, where should I look to learn?

Also, would this count as a form of NFT staking despite the nature of the reward?

This sounds more like a game. You can implement it full on chain, but it will require interaction from users to make the transactions in order to join those fights (will cost gas). Or partially on chain and partially on your application server (in this case you will have to take care of extra security and also to find a way to update from time to time the information on chain).

The way you have mentioned being able to “implement it full on chain” seems to imply that changes or updates only occur when users interact with the site or the blockchain. Have I understood this correctly?

The “partially on chain and partially on your application server” sounds closer to my original intention. Is this refering to moralis servers or something else?

For first option, yes, it implies a lot of user interaction on chain with transactions.

For second option, user could have the NFT on chain, add it to a contract to participate in a game. Game takes part offline to the chain, and at the end the winners can get the prize when making a transaction to the smart contract. And the game takes place somehow on your server. It is not easy to do it, but not impossible.
Depending on the chain that you choose, you could make some transactions on chain (easier) or let the users make the final transactions on chain to get the prize (more complicated). Like how someone would claim some reward or token.

Thank you for the information thus far. For now I am intending to use the Polygon network, I mention this just in case there is some outlying reason not to use it.

Just to clarify, for every instance of the word “server” you use, does it refer to moralis servers or something else?

Moralis server or a different server that you have in case that you want to use your own server.