Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[demos] add Geniteam.move module with desired monster, farm, cosmetic… #435

Merged
merged 1 commit into from
Feb 11, 2022

Conversation

sblackshear
Copy link
Collaborator

@sblackshear sblackshear commented Feb 11, 2022

… logic

This is my best attempt to understand what Geniteam wants as their smart contract logic. The idea is that they can use the

  • create_ entrypoints to create players, monsters, and farms with some default attributes
  • add_ entrypoints to equip farms with monsters and cosmetics, etc.
  • update_ entrypoints to change the metadata associated with each of these
  • remove_ entrypoint to de-equip a monster from a farm. If you want to equip cosmetics to a monster or update its attributes, it cannot be associate with a farm (at least for now)--you must remove it first.

For now, we add the module in the Sui framework because there is not (I think) an easy way to configure genesis to include modules other than the framework ones. Obviously, this module should be moved outside the framework once we can figure that one out.

@sblackshear sblackshear force-pushed the geniteam_move branch 2 times, most recently from f4e9598 to b0c92d1 Compare February 11, 2022 21:13
… logic

This is my best attempt to understand what Geniteam is doing and make it accessible from Move code.

Helping out Geniteam by writing the Move code for their game. For now, we add the module in the Sui framework because there is not (I think) an easy way to configure genesis to include modules other than the framework ones. Obviously, this module should be moved outside the framework once we can figure that one out;
Copy link
Contributor

@stella3d stella3d left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The code all looks good - the structs align with the Java classes, and I trust that you know the move-specific details.

Having a number of different methods for updates might make things harder for the demo team vs. having single bulky update methods for each type, but that's a limitation we're working around.

@sblackshear
Copy link
Collaborator Author

Having a number of different methods for updates might make things harder for the demo team vs. having single bulky update methods for each type, but that's a limitation we're working around.

Agreed. But I'm comfortable with pushing them toward using a smaller update methods, which I think will also push them toward putting more game logic on-chain (as we are hoping for).

@sblackshear sblackshear merged commit 919a7eb into MystenLabs:main Feb 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants