from otree.api import ( models, widgets, BaseConstants, BaseSubsession, BaseGroup, BasePlayer, Currency as c, currency_range ) doc = """communication""" import random class Constants(BaseConstants): name_in_url = 'c_redistributionbaseU_payment_CH' players_per_group = None num_rounds = 1 class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(BasePlayer): share_payoff = models.CurrencyField() Dice_game = models.IntegerField() Post_total = models.CurrencyField() total_payoff = models.CurrencyField() dictator = models.IntegerField() Reject = models.IntegerField() risk_task = models.IntegerField() risk_choice = models.IntegerField() def set_payoff(self): self.share_payoff = round(self.participant.vars['game_share'],2) self.Post_total = self.participant.vars['Post'] self.total_payoff = round(10 + self.share_payoff + self.Post_total*0.33) self.dictator = self.participant.vars['Dictator'] self.Reject = self.participant.vars['reject'] self.risk_task = self.participant.vars['Dice_risk'] self.risk_choice = self.participant.vars['Choice_risk']