-
Notifications
You must be signed in to change notification settings - Fork 7
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
Development of a "Monopoly" game #74
Comments
Good idea |
I think this game will be in demand, because the games are now the most popular segment of the cryptomarket. A good solution for the current situation. |
Good idea, I feel it's a bit expensive production cost considering today's market value of CLO. |
@Spigfish , thank you for your feedback. Also, payment can be divided into 8 parts of $250 per week. It will be softer. And perhaps the rate will grow during this time and the costs of CLO will be less. @Dexaran , @yograterol , Please tell us about your position, let's discuss. |
Идея хорошая. Поддерживаю ))) |
@gorbunovperm Question: Could this be done in English as well? With the divided funding i change my standpoint and would like to see this ASAP |
Alexander, your project looks great 👍. I support you. 1 suggestion if you would like to consider:
All the best. |
@Spigfish
My English is not so good, but I will try. Thank you for your supporting.
Thank you for the idea, I think there will be several themes for this game in the future. Let's see. |
Есть замечания: |
@Dexaran прошу вас допилить Callisto Hub. И не нужно будет никому платить - разрабы сами придут на нашу платформу |
|
Let's do some calculations. Now every month the Treasury receives ~ 7 500 000 CLO. So, the author suggests paying him 13% of the treasury's profit per month (within two months), as a reward for developing the game. If I understand correctly, then the author is one of the auditors of the Callisto department. Will Callisto have copyright issues after one of its employees develops a game owned by Hasbro? |
@gorbunovperm maybe you can consider an option to split the funds between the Treasury and crowdfunding the balance amongst the CLO community? Not sure if this is workable but funders get tokens to play (or to sell them to other players) |
Accepted. 50% of the proposal funding goal will be paid immediately. The remaining 50% will be paid after the completion of the final product. Paid: $235 in ETH: https://etherscan.io/tx/0x0ebb04a167dd1de3bfca8156ff3dfc7553f7b34ea02f1b9436c157bc0d960a5f $765 in CLO: https://explorer2.callisto.network/tx/0x5e7ad2060422f06134253eb0cc54ad9417c37c7f326663997d2d10b8a709358b |
Alright! lets game some Monopoly! :) |
* Русская версия описана ниже / The Russian version is described below. Hello, everyone! I invite you to play the beta version of the game. Minimal embodiment is ready. Further development will depend on feedback.
To play, invite friends to one of the rooms. "2max" - for two players, etc.: There are still some bugs and a number of ideas for implementation. But at this stage we need to play, test, collect feedback and then set new tasks for the game. A security audit will be conducted when the contract is well tested. Русская версия/Russian version Всем, привет! Приглашаю поиграть в бета-версию игры. Минимальное воплощение готово. Дальнейшее развитие будет зависеть от отзывов.
Чтобы поиграть пригласите товарищей в одну из комнат. "2max" - на два игрока и т.п.: Есть ещё недоработки и ряд идей для воплощения. Но на данном этапе нужно поиграть, потестировать, собрать обратную связь и уже потом ставить новые задачи по игре. Аудит безопасности будет проведен когда контракт будет хорошо протестирован. |
Here I'd like to highlight some aspects of the proposal that confuse me somehow. 1. The game requires paymentsWhy do the contract enforce a hardcoded 1 CLO fee? You have proposed to introduce a certain gambling element to the game or just an incentive for players to be the winner. However 1 CLO is not a good incentive as well as the requirement to pay it to the contract is something unnecessary. Some could play with more stake and some could just play for the sake of playing. It would be better to make it variable and make players agree on the stake before the start the match. It could be either 0 or 500,000 CLO depending on players decision. 2. RNGThe lack of Random Number Generator and the source of entropy is a major problem of all smart-contract platforms nowadays. This is not a reliable source of entropy: https://github.com/gorbunovperm/Cryptopolis/blob/master/contracts/Cryptopolis.sol#L514 If you introduce the "gambling element" to the game and let players put significant amounts of funds at stake then it will be a problem for the game because the outcome of each step is predictable. Obviously a player can not predict the outcome of the whole match because he does not know the hash of all future blocks in advance but the player can manipulate the RNG because he knows the hash of the previous block. He can wait without actually submitting a transaction if he does not like the move it will result in. Then he can submit a transaction once he likes the outcome based on the block hash. SUGGESTION: None of on-chain variables are reliable sources of entropy. Only the player-generated input can serve as a source of entropy for ANOTHER PLAYER. However something that is not known by both players can serve as a source of entropy for the game. The reliable source of entropy can be obtained by requiring both players to provide a number privately and then revealing both numbers when players can no longer manipulate it. The sum of this numbers is a source of entropy that can not be manipulated by any of the players.
Throw away the seeds and calculate the sum of all secret_number's. This can serve as a source of entropy.
3. RoomsThe organization of rooms is something weird. There are multiple rooms but only one room for a certain number of players. There is only one room for two players at a time. Its obvious that it is likely that most players will want to play in 2-3 player rooms and there could be separate groups of players willing to play at a time. I would recommend to let players create/close rooms with custom parameters or at least add more rooms for 2-3 players by sacrificing large rooms. The 15-second delay will not allow large groups of players to finish a match in a resonable timeframe anyways. 4. TX optimization. The game is taking too long. Like REALLY too long.The main problem here is 15 second transaction delay. Monopoly game is long on its own. I have started the game: Then I have gone afk and returned 4 hours later: https://explorer2.callisto.network/tx/0xc89ff03e87ad3e16dbc902aaf0d6dcd2f4794feeb54c73607fbd2333697f937d The game was still far from completion. These 15 second delays are really annoying and some specific optimization strategies are necessary. The problem of micro-payments still stands. The price of CLO is low so its not a problem to worry about however it will be costly to run the game on ETH or any other platform with micro-transaction issues. 4.1 TX optimization: creating a chat is impossible.For such a game it would be nice to have an in-game chat. I had an idea to create an on-chain messaging service earlier but TX fees kill the possibility of having this feature in game managed by smart-contract. At least on Ethereum-like chain. 5. Metamask is asking to confirm each actionIf there is a possible way to make MetaMask whitelist some transactions and send them without confirmation then it is necessary to utilize this feature. Otherwise I recommend to look into Scatter wallet. It should support Ethereum-like chains now and it has a feature that allows to whitelist transactions so that the requirement to confirm each action manually will not be a problem. 6. The gameplayDespite some inconveniences/small bugs/lack of feedback regarding the game state from UI - the game flow is fine. This MVP is playable. |
@Dexaran
The gambling element will be present, payment to the winner takes place here. 1 CLO is not a good incentive of course, it's just for first tests.
That's a good suggestion, thank you.
I thought about this option, but it's a bit complicated for the first release. I'll schedule it.
That's a good suggestion. I was planning something like this. But faced with the problem of the maximum size of the contract. Decided not to remodel and make the rooms manually.
Green button is not a confirmation of the turn completion, it is like throwing the dice for movements of players. But other actions(buying, upgrading, teleporting) can be performed at any time (asynchronic), not only in your turn. I agree that there is a lack in the interface that it is not intuitively clear.
This will reduce the number of transactions, but it will slow down the game. The idea is to press the green button as soon as your turn comes. And other actions to do the outside of the flow of turns(throwing of the dice). Partually I solve this problem the appointment of penalties, if the player did not roll the dice within 6 blocks.
Unfortunately the MetaMask has no whitelists, each transaction should be confirmed.
Thank you, I will try it. 4+5. Built-in web3 wallet.I think it is possible to speed up the game and improve the feel of the game by abandoning the wallet plugins. It is possible to use autogenerated account using web3 on front-end and use it only for current game session. And deposit to it only the cost of the ticket. At the end of the game, the reward is sent to the user's wallet (not web3 wallet). This will avoid any confirmations and greatly speed up the game. Not see here security issues. What do you think about this, @Dexaran |
This would be nice. However the private key must be stored in browser cache. The user should be able to continue the game session if he accidentally closed the window or the computer was rebooted.
This can be a solution but it may hurt the UX. Using private keys and wallets is something that most users are abstracted from. You will need to provide the sufficient guidelines and descriptions afterall. |
Now a couple of theoretical thoughts. Imagine that you were using EOS as a platform for the game. The issues 1 and 2 (gambling element and RNG) will stand.
The issue with rooms and the limit of bytecode size will no longer be a problem. The issue 3 will resolve automatically.
This issue will not be a problem since transactions are currently free (this may change in future however). This also allows to build an on-chain in-game chat for each room and record chat history. The number of transaction does not matter since transaction confirmation will only take 0.5sec VS the current 15 sec which is 30x boost in performance and significant reduction in time delays.
This issue will also resolve automatically since EOS wallets allow to whitelist a transaction and general account permission scheme can simplify the process of repeatedly sended actions a lot. Built-in wallet will not be necessary which will save your developer's time. Thats why we look at EOS as a new code base for CLO in future. |
The next steps that I see and am going to implement (Dec 2019 - Jan 2020)1. Rooms with various settingsA page with a list of all available rooms will be created. Rooms will be with different price of tickets and with different number of players. Like @Dexaran says but only pre-generated rooms at the moment. 2. Getting rid of the confirmation of each step through the pluginOne option is too use Scatter wallet(or another without confirmations) and another to implement build-in web3 wallet. I will research these options and implement one of them. 3. Smart-contract optimiztion
It is also necessary to have enough gas for rooms with a large number of players. 4. Improving the UX
If the community likes the game, the work will continue (Dates are not defined)5. Random Number Generator@Dexaran suggestion will be realized. 6. Rooms generated by gamersA possibility to create new rooms with custom settings like ticket price and number of players and may be design of the city. 7. AvatarsThe ability to choose the skin for the character. Ability to improve the character. May be some unique properties of the character. Acquisition of rare characters. ERC-721 as option for this purpose. 8. City designDifferent design options for different rooms. I would very much like to implement (Dates are not defined)X. Common worldA big "city" with a lot of fields and players. Each player can enter the game by paying for a ticket at any time and receiving the starting money. Or exit the game by selling all their buildings and changing the game money to CLO. He can stay in the game and develop his property and character. There is no need to play a big game session, he can go sometimes to make a few moves and go AFK further. There are a lot of issues with the balance of the game. It's just a thoughts at the moment. |
This is a very reasonable idea. I like it. |
Proposal is fully paid: https://explorer2.callisto.network/tx/0xffb5c6a705fdd13db3d178a1e7063cc3eecd6567b5cd813064716cd726843938 |
@gorbunovperm any updates on this proposal? |
@Dexaran Some research and development is in progress. I expect an update in 2 weeks. |
@gorbunovperm |
отпишите в телеграмме @Hadian_one_life есть предложения |
* Русская версия Предложения описана ниже / The Russian version of the Proposal is described below.
Proposal
I propose to develop a game on the Callisto Network blockchain based on the classic board game - Monopoly.
Description
The classic rules of Monopoly can be found here. It will be taken as a basis, but some changes will be made.
All logic of the game will be implemented using a smart contract in the Callisto Network. The contract will Verified (with open source), which will allow everyone to see the logic of the contract and make sure that the game takes place in fair conditions. Moreover, the contract code will take a security audit in Callisto (in this case, without my participation as an auditor). The game will have a web interface that will provide the game with convenience and interesting gameplay.
Blockchain technology has not yet been widely used, but games are a great way to use blockchain and cryptocurrency. All transactions are visible to everyone, high speed of making payments, a rigid algorithm of the smart contract that complies with all the rules of interaction of participants and the security of your funds, no one will be able to block your account or write off the tax on winnings.
For Callisto Network, this project can be a great opportunity to attract additional attention, as well as raise the mood and morale of the friendly Callisto community. The game will also allow you to use CLO to pay for the round and get a benefit if you win. The use of own assets gives an additional sense of the usefulness of these funds, raises the value.
I have sufficient experience in the development of websites, web applications and smart contracts to fully implement this project within two months. During development, I'll cover the process in this youtube channel that will make the process of development interesting - kind of shows and educational courses.
Video version of the Proposal(russian).
Funding goal
For active development of the project and the first production version after 2 months (01.11.2019) I need 2000$.
My address:
CLO:
0xf235e9098d9f25c8cab4a28963c0c23ab1661138
BTC:
bc1qpphqv9vhdna4zs2sq3zgayvwqnrkde9m4a7s9q
Русская версия / Russian version
Предложение
Предлагаю разработать игру на блокчейне Callisto Network, основанную на классической настольной игре Монополия.
Описание
С классическими правилами Монополии можно ознакомиться здесь. Они будут взяты за основу, но будут внесены и некоторые изменения.
Вся логика будет реализована с помощью смарт-контракта в сети Callisto. Контракт будет иметь открытый код, что позволит каждому посмотреть логику работы контракта и убедиться, что игра проходит в честных условиях. Более того, код контракта будет проходить аудит безопасности в Callisto (в данном случае без моего участия как аудитора). Игра будет иметь веб-интерфейс, что обеспечит игровой процесс удобством и интересным геймплеем.
Блокчейн технологии пока не получили широкого использования, но игры - это отличный вариант использования блокчейна и криптовалют. Все транзакции видны каждому желающему, высокая скорость совершения платежей, жесткий алгоритм смарт-контракта, соблюдающий все правила взаимодействия участников и безопасность ваших средств, никто не сможет заблокировать ваш счёт или списать налог на выигрыш.
Для Callisto Network этот проект может стать отличной возможностью привлечь дополнительное внимание, а также поднять настроение и боевой дух дружного сообщества Callisto. Игра позволит использовать CLO для оплаты раунда и получения выигрыша в случае победы. Использование своих активов даёт дополнительное ощущение полезности этих средств, поднимает ценность.
Я имею достаточный опыт в разработке сайтов, веб-приложений и смарт-контрактов, чтобы полностью реализовать этот проект в течении двух месяцев. Ход разработки я буду освещать на этом youtube-канале, что позволит сделать и сам процесс разработки интересным - своеобразным шоу и образовательным курсом.
Русская видео-версия предложения.
Финансирование
Для активной разработки проекта и предоставления первой рабочей версии через 2 месяца (01.11.2019) мне понадобится 2000$.
Адреса для финансирования:
CLO:
0xf235e9098d9f25c8cab4a28963c0c23ab1661138
BTC:
bc1qpphqv9vhdna4zs2sq3zgayvwqnrkde9m4a7s9q
The text was updated successfully, but these errors were encountered: