from otree.api import ( models, widgets, BaseConstants, BaseSubsession, BaseGroup, BasePlayer, Currency as c, currency_range ) doc = '' class Constants(BaseConstants): name_in_url = 'free_sampling2' players_per_group = None num_rounds = 60 class Subsession(BaseSubsession): pass class Group(BaseGroup): def my_method(self): players = self.get_players() for p in players: if p.payoff != 100: return "Your payoff is: " + str(p.payoff) else: return "Congratulations! Your training rounds are over." def groupmethod(self): import random players = self.get_players() nr = random.uniform(0,1) for p in players: if p.prova ==100: p.payoff = p.prova if p.prova == 3: if nr <= 0.25: p.payoff = 3 else: p.payoff = 0 print (nr) if p.prova == 4: if nr <= 0.2: p.payoff = 4 else: p.payoff = 0 print (nr) class Player(BasePlayer): prova = models.IntegerField(choices=[[4, 'A'], [3, 'B'], [100, 'Finish']], label='Choose:', widget=widgets.RadioSelect)