MonsterEOS: Creating your First Monster in EOS Jungle Testnet

in #eos6 years ago

Inspired by EOSIO release (the most waited and wanted revolutionary software of the last years), by EOS Mainnet Launch, and also by @ajose01 post How to Create an Account and use Scatter in EOS Jungle Testnet, I'm redeploying MonsterEOS which is kind of a "Tamagotchi" game for EOS blockchain. It's more of an experimental project that I created while I was studying about specific smart contracts topics that I believe can help the community while people are having fun!

Access MonsterEOS here to Play and Test

The code is open source and you can feel free to tweak it here: https://github.com/leordev/monstereos - Actually this is my goal: group blockchain and smart-contracts developers to share ideas about improvements, best practices, storage, ram, bandwith and cpu optimizations etc.

Ok, no more talk, let's create your first monster.

1. Create an Account in Jungle Testnet and Associate it to your Scatter

That's easy! You already know, just follow the steps here: Scatter and the EOS JUNGLE (testnet)!

2. Sign-in to MonsterEOS

Simply go to MonsterEOS Junglenet page here: http://monstereos-jungle.s3.amazonaws.com/index.html and click in "Enter with Scatter" on the right top menu button. You should see a Scatter popup like this:

Click in "Select Identity" and click in "Accept".

If you followed step one and still don't have any identity to select, please add it manually with the same keypair that you already created (Scatter > Identities > New > Network: eos:chain:7d47aae...) - it happened because I needed to add the Junglenet chain Id in the current version of eosjs to make it work, you can double check Github issues eosjs#149 and eosjs#131.

Now if everything goes right you should have been redirected to the initial screen:

3. Create Monster

Just click in this shiny green "New Monster" button, choose a pretty cool and unique name to your lovely monster and confirm. You should see another Scatter confirmation screen:

In this screen you can just press the Accept button, but here's an interesting Scatter feature: Whitelist. If you click in the Whitelist checkbox you will be able to select which fields you want to whitelist, so the next time you repeat this transaction (in this case a New Monster) you don't need to confirm it again! Super cool huh?!

4. Don't let your monster die!!!

Now that you have your monster, just keep it alive! While he's sleeping you can only wake him up. Try it!

Just keep waking, feeding and bedding him, at least once or twice a day. The clean and play options is still under development.

Ps: He's not going to wake up right now, try it again in about 4 hours :)

5. Eldest Monsters Ranking

If you do your job and keep your monster alive you will be in the hall of fame of the Eldest Alive monsters! And unfortunately that's the only multiplayer interaction for now, compete to have the eldest monster alive.

Don't get it any serious because it's just a testnet and your monster will not survive, probably more than one week! The staff in Junglenet works so hard and they are always resetting the chain, testing, upgrading versions etc!

What now?

There's a lot to do to add cool functionalities and interactions between players. I welcome you all to come to MonsterEOS github repository and share ideas, open issues, discussions. Let's learn and build fun stuff together!

Few ideas:

  • Multiplayer minigames: like the old msn that had sudoku, tic tac toe, battleship and so on.
  • Experience points: we could add evolution system like egg > baby > adult
  • Items: we should have cool items/wearables to equip pets
  • Tokenization: this allows people to buy/trade items
  • Transfers: players could sell their monsters
  • Implementation of Non-Fungible Tokens of course, thanks @syedjafri and @unico.global!
  • Profile/Avatar: wouldn't be cool to have people attaching their pets to their EOS account? Like an avatar image, instead people would show off how they take care of their pet based on their age and items!

As you can see, even like a fun experimental project, it already shows the power of EOS blockchain. Can you ever imagine need to pay for feeding, cleaning and playing with your pet? Yeah, forget about the "ponzi-scheme" games out there, it's over. The next-gen blockchain is real. The future has already begun!

Sort:  

Great work on this! With the mainnet so close I might just wait and try to boot this up after launch.

Is it completely free to play?

Thanks for the feedback, I really appreciate it. So, I'm not planning to release this game in EOS Mainnet, it's just a proof of concept for now. Maybe, one day, if the project really advances it could be a cool open source game that could serve as a nice knowledge source for developers to fork it and create other games extensions, add-ons etc.

I wonder why it takes so long for a scatter pop-up to come up after clicking on a button on the page. Takes about 10 seconds before it appears.

In some of my tests I noticed it being an issue of the Testnet Latency. We were using dev.cryptolions.com:28888 instead of a monstereos dedicated full node. And to create a transaction eosjs does some actions like get the current block, validate the abi parameters etc. so it's like 2/3 requests before the popup comes out.

I wonder if I can get some help getting it started.
When I try enter with Scatter I get an error:

Seems there is a problem loading account balance in Scatter. It never completes.

Ok, looks like I managed to create a monster, but balance loading problem is still there. Reported a bug on scatter repo.

Thanks for the info! I'm glad you found the solution! Sorry to not be able to help you by the time!

Thank you for the fun game on EOS!
Great work.

Congratulations @leordev! You have completed some achievement on Steemit and have been rewarded with new badge(s) :

You published your First Post
You got a First Vote

Click on the badge to view your Board of Honor.
If you no longer want to receive notifications, reply to this comment with the word STOP

Do you like SteemitBoard's project? Then Vote for its witness and get one more award!

Congratulations @leordev! You have completed some achievement on Steemit and have been rewarded with new badge(s) :

Award for the number of upvotes received

Click on the badge to view your Board of Honor.
If you no longer want to receive notifications, reply to this comment with the word STOP

Do you like SteemitBoard's project? Then Vote for its witness and get one more award!