from otree.api import * c = Currency doc = """ Your app description """ class Constants(BaseConstants): name_in_url = 'prisoners_dilema' players_per_group = 2 num_rounds = 1 remaining_time = 10 payoff_both_cooperate = 0 payoff_one_cooperate_defect = -5 payoff_one_defect_cooperate = 0 payoff_both_defect = -2 class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(BasePlayer): has_defected = models.BooleanField( label="", choises=[[True, "Verraten"], [False, "Nicht Verraten"]]) # PAGES class MyPage(Page): form_model = "player" form_fields = ["has_defected"] class ResultsWaitPage(WaitPage): def after_all_players_arrive(group: Group): player1,player2 = group.get_players() player2.payoff = player1.payoff = 10 if player1.has_defected: if player2.has_defected: player1.payoff += Constants.payoff_both_defect player2.payoff += Constants.payoff_both_defect else: player1.payoff += Constants.payoff_one_cooperate_defect player2.payoff += Constants.payoff_one_defect_cooperate else: if player2.has_defected: player1.payoff += Constants.payoff_one_defect_cooperate player2.payoff += Constants.payoff_one_cooperate_defect else: player1.payoff += Constants.payoff_both_cooperate player2.payoff += Constants.payoff_both_cooperate class Results(Page): pass page_sequence = [MyPage, ResultsWaitPage, Results]