While there are over 40 smart contracts that make up the system, here are the four primary ones that contribute to the base game operation.
This is the blockchain “brain” for a game. For example, in CropXYZ, all the requests that users make, in one way or another, goes through this set of smart contracts.
This is a UniSwap-inspired constant product, automated market maker that hosts 24 different liquidity pools for CropXYZ. This is extensible enough to support any ERC20 token in relation to the internal currency (“zGOLD”).
This can be thought of as an on-chain log of the other blockchain parts a game. Inspired by ENS, it maps human-readable words to blockchain addresses. This makes it easier for developers to reference other contracts without knowing the actual addresses.
When dealing with so many different contracts, there needs to be a way to manage which have access to certain functions. Within the smart contracts, there are checks with the role registry to verify that those permissions are allowed for said contract or user invocation.