[DAO: QmWVpte] Endless Mafia

by 0x9f9d3024bc0d05f7e9330ac0a0d50057b511c63b

Should the following Tier 3: up to $5,000 USD in MANA, 3 months vesting (1 month cliff) grant in the Gaming category be approved?

Abstract

We’re seeking funding for the development of a party game. The game is Mafia – social deduction game, modeling a conflict between two groups, the mafiosi and villagers. The game has two alternating phases: first, a night phase, during which those with night killing powers may covertly kill other players, and second, a day phase, in which surviving players debate the identities of players and vote to eliminate a suspect.
For now, we want to create a simple working build, to see how it works and see community reaction. If it receives good feedback, we will continue development, create 3d models, polish and add more mechanics to it.

Grant size

3,200 USD

Beneficiary address

0x7dC0c1E2F54b619B423104c77c9783B1716640a5

Description

Mafia is a social deduction game about a conflict between two groups of people, playing against each other during two alternating phases. In a classic version of the game, win conditions are met by eliminating the opponent group. But we want to make it possible to join a game instance that has already started.

Specification

Game mechanic

Minimum is 4 players. A game is usually played by 7-16 people. With fewer players games tend to be too short, with more players – game loses meaning. For this version 4 players for a start should be enough.
A player get near a table, click on it, gets a message in a window if he is able to join a game instance. Users are able to join during a certain phase of the game. If there are not enough players in a game instance, the user will receive a message that he has to wait until more people join.

Zero phase – Players are waiting when there will be enough people to join. Players receive roles. Roles are assigned randomly, max number of mafia is limited by a formula: M = N / K
Where M = number of mafia members. N = all players. K = minimum players.
First phase – Night. Mafia picks a victim silently by voting collectively. A majority of votes defines a victim. If the mafia does not reach consensus within a given period of time, no one gets killed.
Second phase – Day. A victim gets the final word, allowed to talk for a minute, and then gets kicked out of the game. During this period, anyone can join. New players get roles. Mafia gets informed what roles new players get.
Then everyone has a discussion, and votes for accusing a player of being a mafia member. A player accused by a majority of players gets excluded.

If a mafia member disconnects, this mafia member will be announced as dead. If a villager disconnects, the villager will be announced as dead. The game continues as long as there are still mafia members and villagers, and there are less mafia members than villagers.

After the games ends, users get info about games results. A new round begins, players get new roles. If there are not enough players, players get the message that they should wait for 2-3 players.

New players that just entered a game will be given the roles of villagers or mafiosi, villagers are not going to know what roles are given to new players, or players that rejoined a game. That way, it will make it easier for people to find people to play with, users won’t have to look for another lobby if there is an already going game.

If within a single scene, several games will be played, voice chat can be disturbing, so it will be blocked within a scene.

Planned features

This project, aside from Mafia gameplay, will introduce an ability to kick people from a scene via a voting system. Currently, in Decentraland to kick users, one, or a few predefined users have to be given admin rights, which is convenient for small events, but not for an extended period of time.
Voting to kick players that are ruining others’ experience from a scene can help people to moderate scenes, to have a better time playing.
We plan to give the Decentraland community one more place, where people can play and interact with each other, to create a meaningful scene.

Personnel

We are M-social Production, web and web3 developers, we have been doing digital projects since 2008.
There will be 4 people engaged in development:

  • Frontend dev
  • Backend dev
  • QA specialist
  • Project manager

If you want to know more about our experience, you can visit our website: https://msocialproduction.com

Roadmap and milestones

We expect a working alpha to be done within 3 weeks.
Within 2 weeks, we plan to make the functional code. Next, we will test it and fix bugs that will pop up. We’re not planning to create a 3d model for interior and exterior for the alpha version.
To give players a motivation to join back into a game instance, and to motivate users to play in general, we plan to implement a play-to-earn mechanic. Players will gain points for surviving a set number of phases, and for meeting win conditions. Play-to-earn mechanic can be further improved.

Vote on this proposal on the Decentraland DAO

View this proposal on Snapshot

Voting No, $5,000 USD in MANA seems like a lot to get from DAO to create the feature quoted, without having the working alpha out yet.

Apologies if the alpha is indeed available/playable at the moment (then link/coordinates should be included as reference). For now it seems its not.

1 Like

i feel like asking 3000 USD is almost nothing if you are able to create an interesting gameplay mechanic

1 Like

Definitely, my point is so far gameplay is not available. How would we measure how interesting it is?

Also, Planned Features talks about adding the ability to kick people from scene. Which makes this grant a bit confusing.

Are funds going to be used to create and help develop the game or are funds solely for the purpose of the planned feature? For what it looks like, funds are to be able to kick people from scene via votes, will this be an open source tool for everyone to use?

1 Like

yeah, totally valid point - and i 100% agree about the open source aspect.

1 Like

Voting Yes. Mafia is extremely successful in other platforms. Would be nice to see how it can work on Decentraland.

Endless Mafia

This proposal is now in status: PASSED.

Voting Results:

  • Yes 99% 1,235,103 VP (30 votes)
  • No 1% 4,159 VP (5 votes)
1 Like

Hi!,

Congratulations on receiving a Grant to contribute to Decentraland! Our mission is to support grantees to update their progress and achieve their goals, and thus contribute to the growth of this great community that is Decentraland.

Here is some information that will be helpful for you:

  • Your Grant is TIER is 3 and your current status is PASSED. The DAO Committee is working on your Vesting Contract, which will be available in a few days. You can check in your Proposal Page to see when your Grant turns into ENACTED.
  • It’s very important to share your progress with the community. Inside your grant proposal -in the Decentraland governance platform- you will find a Project Update Section to publish updates once a month for transparency purposes.

The Grant Support Squad

1 Like

Endless Mafia

This proposal has been ENACTED by a DAO Committee Member (0xfe91c0c482e09600f2d1dbca10fd705bc6de60bc)

Vesting Contract Address: 0x2d6f7aab7f262aa953981e2b9de7df01597a3ba9
View Transaction

Hi Mafia Crew,

Did you read/get the welcoming message?
Btw, i have sent you an email to info@msocialproduction.com
We are excited to have some news from the team!

Zino

Hello everyone! We thank you for your trust, we will not let you down.

We have started development, and for now we have ready:

  1. Players can be kicked. (they are kicked after voting)

  1. Voting

One player voting to kick the other.

In the next report, we will post everything on github, stay in tune.

4 Likes

Hello, M-Social here

Development continues, and it is already possible to check something.

There are many things in the gameplay, we continue to work on the implementation, while the core is ready:

https://github.com/m-social/dcl-dao-mafia/tree/master

For those who are only interested in the voting functionality, we left it in a separate branch:

https://github.com/m-social/dcl-dao-mafia/tree/kick-ui

In the next report, we will add some models. We are waiting for feedback on the current functionality.

2 Likes

Hello, M-social here

Mafia project is almost done. Currently, players can receive roles, votings and games stages work correctly. Players with mafia roles can kill other villagers when it’s their turn, villagers in their turn can vote to kill other player. Depending on their decisions, either mafia or a villager team is announced as a winner. So, the core mechanic of the game is implemented. Next we need to test it for a couple of weeks, fix the bugs that will come up, and make some improvements in general. We will also update the code on github.

The code is available for everyone, when we will finish the project everyone will be able to deploy on their land, make whatever changes they want.

We said earlier that we plan to finish the project in three weeks, but we made a mistake, the code for a multiplayer game is much more complicated than we first expected.

3 Likes

We continue to work on Mafia and we were very close to complete the project, because everything worked perfectly locally. But we deployed the Mafia table to DCL and something, that never repeated while testing happened: when the Day phase supposed to start, the mafia interface stopped being displayed, which made it impossible to play further.

But we still have something to show, and therefore we are in hurry with the report:

  • Changed UI. On the right the window is displayed, which shows:
    • Before the start of the game, the number of players that are not enough to start the game. List of players who are connected and waiting to start. Time until the start of the game, if there are enough players.
    • For a day and night phases – a phase with a number is indicated (example: day 1, night 1, day 2, etc.) Time until the end of the phase. A brief description of current phase, instructions for action for villagers and the mafia during the day phase, for the mafia during the night phase.
    • After the victory of one of the parties, a message is shown that the mafia or villagers won. Players are offered to until the start of the next game to continue, or leave the game if they wish.
  • Changed the order of the phases – now the game starts with the introduction of the players, after which the day, and then the night.
  • You can see who other villagers voted for during the previous vote. (appears after the first Day voting). The list can be hidden if not needed.
  • Inactive players are eliminated to not take place in the queue.
  • The default cube was replaced with a 3D model of a table with a city.

The changes were added to the github repository:

We are glad to announce that we have completed the main development of the Mafia game!
The errors that were previously written about were fixed.

Of course, the project can be improved and we will definitely work in this direction.
If you have comments or ideas for improvement, then you can always write to us: info@msocialproduction.com

The updated game code is posted on the github and you can use it for your own purposes, for example, to place it on your land.

We are glad that we had the opportunity to work with Decentraland, it was a very interesting and useful experience!