from otree.api import ( models, widgets, BaseConstants, BaseSubsession, BaseGroup, BasePlayer, Currency as c, currency_range ) author = 'Your name here' doc = """ Your app description """ class Constants(BaseConstants): name_in_url = 'forecastinggame' players_per_group = None num_rounds = 4 item1_name = '1-16GHIB-D' item2_name = '2-16DF42-H' item3_name = '3-AHJS54-C' item4_name = '4-G2H2JK-B' class Subsession(BaseSubsession): product_name = models.StringField() def creating_session(self): if self.round_number == 1: self.product_name = Constants.item1_name if self.round_number == 2: self.product_name = Constants.item2_name if self.round_number == 3: self.product_name = Constants.item3_name if self.round_number == 4: self.product_name = Constants.item4_name class Group(BaseGroup): pass class Player(BasePlayer): forecast_p13 = models.IntegerField(min=0, label='Forecast for period 13:') forecast_p14 = models.IntegerField(min=0, label='Forecast for period 14:') forecast_p15 = models.IntegerField(min=0, label='Forecast for period 15:') forecast_p16 = models.IntegerField(min=0, label='Forecast for period 16:') forecast_p17 = models.IntegerField(min=0, label='Forecast for period 17:') forecast_p18 = models.IntegerField(min=0, label='Forecast for period 18:') payoff = models.CurrencyField()