from ._builtin import Page, WaitPage from otree.api import Currency as c, currency_range from .models import Constants #class Introduction(Page): #timeout_seconds = 100 class DecisionWait(WaitPage): wait_for_all_groups = True class DecisionGuess(Page): def is_displayed(self): return self.round_number in [1, 5, 10] form_model = 'player' form_fields = ['decision_guess'] def before_next_page(self): if self.round_number == 1: self.participant.vars['decision_guess_task1_r1'] = self.player.decision_guess self.player.decision_guess_task1_r1 = str(self.participant.vars['decision_guess_task1_r1']) elif self.round_number == 5: self.participant.vars['decision_guess_task1_r5'] = self.player.decision_guess self.player.decision_guess_task1_r5 = str(self.participant.vars['decision_guess_task1_r5']) elif self.round_number == 10: self.participant.vars['decision_guess_task1_r10'] = self.player.decision_guess self.player.decision_guess_task1_r10 = str(self.participant.vars['decision_guess_task1_r10']) else: pass class Decision(Page): form_model = 'player' form_fields = ['decision'] def before_next_page(self): if self.round_number == 1: if self.player.decision == 1: self.participant.vars['decision_task1_r1'] = int(1) self.participant.vars['decision_task1_type_r1'] = str("X") else: self.participant.vars['decision_task1_r1'] = int(0) self.participant.vars['decision_task1_type_r1'] = str("Y") self.participant.vars['group_id_task1_r1'] = self.group.id_in_subsession self.player.decision_task1_r1 = int(self.participant.vars['decision_task1_r1']) self.player.decision_type = str(self.participant.vars['decision_task1_type_r1']) print(self.participant.vars) elif self.round_number == 2: if self.player.decision == 1: self.participant.vars['decision_task1_r2'] = int(1) self.participant.vars['decision_task1_type_r2'] = str("X") else: self.participant.vars['decision_task1_r2'] = int(0) self.participant.vars['decision_task1_type_r2'] = str("Y") self.participant.vars['group_id_task1_r2'] = self.group.id_in_subsession self.player.decision_task1_r2 = int(self.participant.vars['decision_task1_r2']) self.player.decision_type = str(self.participant.vars['decision_task1_type_r2']) elif self.round_number == 3: if self.player.decision == 1: self.participant.vars['decision_task1_r3'] = int(1) self.participant.vars['decision_task1_type_r3'] = str("X") else: self.participant.vars['decision_task1_r3'] = int(0) self.participant.vars['decision_task1_type_r3'] = str("Y") self.participant.vars['group_id_task1_r3'] = self.group.id_in_subsession self.player.decision_task1_r3 = int(self.participant.vars['decision_task1_r3']) self.player.decision_type = str(self.participant.vars['decision_task1_type_r3']) elif self.round_number == 4: if self.player.decision == 1: self.participant.vars['decision_task1_r4'] = int(1) self.participant.vars['decision_task1_type_r4'] = str("X") else: self.participant.vars['decision_task1_r4'] = int(0) self.participant.vars['decision_task1_type_r4'] = str("Y") self.participant.vars['group_id_task1_r4'] = self.group.id_in_subsession self.player.decision_task1_r4 = int(self.participant.vars['decision_task1_r4']) self.player.decision_type = str(self.participant.vars['decision_task1_type_r4']) elif self.round_number == 5: if self.player.decision == 1: self.participant.vars['decision_task1_r5'] = int(1) self.participant.vars['decision_task1_type_r5'] = str("X") else: self.participant.vars['decision_task1_r5'] = int(0) self.participant.vars['decision_task1_type_r5'] = str("Y") self.participant.vars['group_id_task1_r5'] = self.group.id_in_subsession self.player.decision_task1_r5 = int(self.participant.vars['decision_task1_r5']) self.player.decision_type = str(self.participant.vars['decision_task1_type_r5']) elif self.round_number == 6: if self.player.decision == 1: self.participant.vars['decision_task1_r6'] = int(1) self.participant.vars['decision_task1_type_r6'] = str("X") else: self.participant.vars['decision_task1_r6'] = int(0) self.participant.vars['decision_task1_type_r6'] = str("Y") self.participant.vars['group_id_task1_r6'] = self.group.id_in_subsession self.player.decision_task1_r4 = int(self.participant.vars['decision_task1_r6']) self.player.decision_type = str(self.participant.vars['decision_task1_type_r6']) elif self.round_number == 7: if self.player.decision == 1: self.participant.vars['decision_task1_r7'] = int(1) self.participant.vars['decision_task1_type_r7'] = str("X") else: self.participant.vars['decision_task1_r7'] = int(0) self.participant.vars['decision_task1_type_r7'] = str("Y") self.participant.vars['group_id_task1_r7'] = self.group.id_in_subsession self.player.decision_task1_r4 = int(self.participant.vars['decision_task1_r7']) self.player.decision_type = str(self.participant.vars['decision_task1_type_r7']) elif self.round_number == 8: if self.player.decision == 1: self.participant.vars['decision_task1_r8'] = int(1) self.participant.vars['decision_task1_type_r8'] = str("X") else: self.participant.vars['decision_task1_r8'] = int(0) self.participant.vars['decision_task1_type_r8'] = str("Y") self.participant.vars['group_id_task1_r8'] = self.group.id_in_subsession self.player.decision_task1_r4 = int(self.participant.vars['decision_task1_r8']) self.player.decision_type = str(self.participant.vars['decision_task1_type_r8']) elif self.round_number == 9: if self.player.decision == 1: self.participant.vars['decision_task1_r9'] = int(1) self.participant.vars['decision_task1_type_r9'] = str("X") else: self.participant.vars['decision_task1_r9'] = int(0) self.participant.vars['decision_task1_type_r9'] = str("Y") self.participant.vars['group_id_task1_r9'] = self.group.id_in_subsession self.player.decision_task1_r4 = int(self.participant.vars['decision_task1_r9']) self.player.decision_type = str(self.participant.vars['decision_task1_type_r9']) else: if self.player.decision == 1: self.participant.vars['decision_task1_r10'] = int(1) self.participant.vars['decision_task1_type_r10'] = str("X") else: self.participant.vars['decision_task1_r10'] = int(0) self.participant.vars['decision_task1_type_r10'] = str("Y") self.participant.vars['group_id_task1_r10'] = self.group.id_in_subsession self.player.decision_task1_r5 = int(self.participant.vars['decision_task1_r10']) self.player.decision_type = str(self.participant.vars['decision_task1_type_r10']) # class ResultsWaitPage2(WaitPage): # after_all_players_arrive = 'set_cooprates' class ResultsWaitPage1(WaitPage): wait_for_all_groups = True class ResultsWaitPage2(WaitPage): after_all_players_arrive = 'set_payoffs' class Results(Page): timeout_seconds = 10 def vars_for_template(self): me = self.player opponent = me.other_player() return dict( my_decision=me.decision_type, opponent_decision=opponent.decision_type, same_choice=me.decision_type == opponent.decision_type, ) def before_next_page(self): if self.round_number == 1: self.player.participant.vars['payoff_task1_r1_int'] = int(self.player.payoff_int) self.player.total_coop_s1 = sum([p.decision for p in self.subsession.get_players() if p.role() == '1']) self.player.total_coop_s2 = sum([p.decision for p in self.subsession.get_players() if p.role() == '2']) self.player.total_coop_s3 = sum([p.decision for p in self.subsession.get_players() if p.role() == '3']) self.player.total_coop_s4 = sum([p.decision for p in self.subsession.get_players() if p.role() == '4']) # self.player.coop_rate_s1 = int(self.player.total_coop_s1/Constants.players_per_supergroup*100) # self.player.coop_rate_s2 = int(self.player.total_coop_s2/Constants.players_per_supergroup*100) # self.player.coop_rate_s3 = int(self.player.total_coop_s3/Constants.players_per_supergroup*100) # self.player.coop_rate_s4 = int(self.player.total_coop_s4/Constants.players_per_supergroup*100) if self.player.supergroup_task1 == '1': self.participant.vars['total_coop_task1_r1'] = self.player.total_coop_s1 #self.player.participant.vars['cooprate_task1_r1'] = self.player.coop_rate_s1 elif self.player.supergroup_task1 == '2': #self.player.participant.vars['cooprate_task1_r1'] = self.player.coop_rate_s2 self.participant.vars['total_coop_task1_r1'] = self.player.total_coop_s2 elif self.player.supergroup_task1 == '3': #self.player.participant.vars['cooprate_task1_r1'] = self.player.coop_rate_s3 self.participant.vars['total_coop_task1_r1'] = self.player.total_coop_s3 else: #self.player.participant.vars['cooprate_task1_r1'] = self.player.coop_rate_s4 self.participant.vars['total_coop_task1_r1'] = self.player.total_coop_s4 #self.player.cooprate_task1_r1 = self.player.participant.vars['cooprate_task1_r1'] self.player.total_coop_task1_r1 = self.player.participant.vars['total_coop_task1_r1'] print(self.participant.vars) elif self.round_number == 2: self.player.participant.vars['payoff_task1_r2_int'] = int(self.player.payoff_int) self.player.total_coop_s1 = sum([p.decision for p in self.subsession.get_players() if p.role() == '1']) self.player.total_coop_s2 = sum([p.decision for p in self.subsession.get_players() if p.role() == '2']) self.player.total_coop_s3 = sum([p.decision for p in self.subsession.get_players() if p.role() == '3']) self.player.total_coop_s4 = sum([p.decision for p in self.subsession.get_players() if p.role() == '4']) # self.player.coop_rate_s1 = int(self.player.total_coop_s1 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s2 = int(self.player.total_coop_s2 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s3 = int(self.player.total_coop_s3 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s4 = int(self.player.total_coop_s4 / Constants.players_per_supergroup * 100) if self.player.supergroup_task1 == '1': self.participant.vars['total_coop_task1_r2'] = self.player.total_coop_s1 #self.player.participant.vars['cooprate_task1_r2'] = self.player.coop_rate_s1 elif self.player.supergroup_task1 == '2': #self.player.participant.vars['cooprate_task1_r2'] = self.player.coop_rate_s2 self.participant.vars['total_coop_task1_r2'] = self.player.total_coop_s2 elif self.player.supergroup_task1 == '3': #self.player.participant.vars['cooprate_task1_r2'] = self.player.coop_rate_s3 self.participant.vars['total_coop_task1_r2'] = self.player.total_coop_s3 else: #self.player.participant.vars['cooprate_task1_r2'] = self.player.coop_rate_s4 self.participant.vars['total_coop_task1_r2'] = self.player.total_coop_s4 #self.player.cooprate_task1_r2 = self.player.participant.vars['cooprate_task1_r2'] self.player.total_coop_task1_r2 = self.player.participant.vars['total_coop_task1_r2'] elif self.round_number == 3: self.player.participant.vars['payoff_task1_r3_int'] = int(self.player.payoff_int) self.player.total_coop_s1 = sum([p.decision for p in self.subsession.get_players() if p.role() == '1']) self.player.total_coop_s2 = sum([p.decision for p in self.subsession.get_players() if p.role() == '2']) self.player.total_coop_s3 = sum([p.decision for p in self.subsession.get_players() if p.role() == '3']) self.player.total_coop_s4 = sum([p.decision for p in self.subsession.get_players() if p.role() == '4']) # self.player.coop_rate_s1 = int(self.player.total_coop_s1 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s2 = int(self.player.total_coop_s2 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s3 = int(self.player.total_coop_s3 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s4 = int(self.player.total_coop_s4 / Constants.players_per_supergroup * 100) if self.player.supergroup_task1 == '1': self.participant.vars['total_coop_task1_r3'] = self.player.total_coop_s1 #self.player.participant.vars['cooprate_task1_r3'] = self.player.coop_rate_s1 elif self.player.supergroup_task1 == '2': #self.player.participant.vars['cooprate_task1_r3'] = self.player.coop_rate_s2 self.participant.vars['total_coop_task1_r3'] = self.player.total_coop_s2 elif self.player.supergroup_task1 == '3': #self.player.participant.vars['cooprate_task1_r3'] = self.player.coop_rate_s3 self.participant.vars['total_coop_task1_r3'] = self.player.total_coop_s3 else: #self.player.participant.vars['cooprate_task1_r3'] = self.player.coop_rate_s4 self.participant.vars['total_coop_task1_r3'] = self.player.total_coop_s4 #self.player.cooprate_task1_r3 = self.player.participant.vars['cooprate_task1_r3'] self.player.total_coop_task1_r3 = self.player.participant.vars['total_coop_task1_r3'] elif self.round_number == 4: self.player.participant.vars['payoff_task1_r4_int'] = int(self.player.payoff_int) self.player.total_coop_s1 = sum([p.decision for p in self.subsession.get_players() if p.role() == '1']) self.player.total_coop_s2 = sum([p.decision for p in self.subsession.get_players() if p.role() == '2']) self.player.total_coop_s3 = sum([p.decision for p in self.subsession.get_players() if p.role() == '3']) self.player.total_coop_s4 = sum([p.decision for p in self.subsession.get_players() if p.role() == '4']) # self.player.coop_rate_s1 = int(self.player.total_coop_s1 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s2 = int(self.player.total_coop_s2 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s3 = int(self.player.total_coop_s3 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s4 = int(self.player.total_coop_s4 / Constants.players_per_supergroup * 100) if self.player.supergroup_task1 == '1': self.participant.vars['total_coop_task1_r4'] = self.player.total_coop_s1 #self.player.participant.vars['cooprate_task1_r4'] = self.player.coop_rate_s1 elif self.player.supergroup_task1 == '2': #self.player.participant.vars['cooprate_task1_r4'] = self.player.coop_rate_s2 self.participant.vars['total_coop_task1_r4'] = self.player.total_coop_s2 elif self.player.supergroup_task1 == '3': #self.player.participant.vars['cooprate_task1_r4'] = self.player.coop_rate_s3 self.participant.vars['total_coop_task1_r4'] = self.player.total_coop_s3 else: #self.player.participant.vars['cooprate_task1_r4'] = self.player.coop_rate_s4 self.participant.vars['total_coop_task1_r4'] = self.player.total_coop_s4 #self.player.cooprate_task1_r4 = self.player.participant.vars['cooprate_task1_r4'] self.player.total_coop_task1_r4 = self.player.participant.vars['total_coop_task1_r4'] elif self.round_number == 5: self.player.participant.vars['payoff_task1_r5_int'] = int(self.player.payoff_int) self.player.total_coop_s1 = sum([p.decision for p in self.subsession.get_players() if p.role() == '1']) self.player.total_coop_s2 = sum([p.decision for p in self.subsession.get_players() if p.role() == '2']) self.player.total_coop_s3 = sum([p.decision for p in self.subsession.get_players() if p.role() == '3']) self.player.total_coop_s4 = sum([p.decision for p in self.subsession.get_players() if p.role() == '4']) # self.player.coop_rate_s1 = int(self.player.total_coop_s1 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s2 = int(self.player.total_coop_s2 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s3 = int(self.player.total_coop_s3 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s4 = int(self.player.total_coop_s4 / Constants.players_per_supergroup * 100) if self.player.supergroup_task1 == '1': self.participant.vars['total_coop_task1_r5'] = self.player.total_coop_s1 #self.player.participant.vars['cooprate_task1_r5'] = self.player.coop_rate_s1 elif self.player.supergroup_task1 == '2': #self.player.participant.vars['cooprate_task1_r5'] = self.player.coop_rate_s2 self.participant.vars['total_coop_task1_r5'] = self.player.total_coop_s2 elif self.player.supergroup_task1 == '3': #self.player.participant.vars['cooprate_task1_r5'] = self.player.coop_rate_s3 self.participant.vars['total_coop_task1_r5'] = self.player.total_coop_s3 else: #self.player.participant.vars['cooprate_task1_r5'] = self.player.coop_rate_s4 self.participant.vars['total_coop_task1_r5'] = self.player.total_coop_s4 #self.player.cooprate_task1_r5 = self.player.participant.vars['cooprate_task1_r5'] self.player.total_coop_task1_r5 = self.player.participant.vars['total_coop_task1_r5'] elif self.round_number == 6: self.player.participant.vars['payoff_task1_r6_int'] = int(self.player.payoff_int) self.player.total_coop_s1 = sum([p.decision for p in self.subsession.get_players() if p.role() == '1']) self.player.total_coop_s2 = sum([p.decision for p in self.subsession.get_players() if p.role() == '2']) self.player.total_coop_s3 = sum([p.decision for p in self.subsession.get_players() if p.role() == '3']) self.player.total_coop_s4 = sum([p.decision for p in self.subsession.get_players() if p.role() == '4']) # self.player.coop_rate_s1 = int(self.player.total_coop_s1 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s2 = int(self.player.total_coop_s2 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s3 = int(self.player.total_coop_s3 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s4 = int(self.player.total_coop_s4 / Constants.players_per_supergroup * 100) if self.player.supergroup_task1 == '1': self.participant.vars['total_coop_task1_r6'] = self.player.total_coop_s1 #self.player.participant.vars['cooprate_task1_r6'] = self.player.coop_rate_s1 elif self.player.supergroup_task1 == '2': #self.player.participant.vars['cooprate_task1_r6'] = self.player.coop_rate_s2 self.participant.vars['total_coop_task1_r6'] = self.player.total_coop_s2 elif self.player.supergroup_task1 == '3': #self.player.participant.vars['cooprate_task1_r6'] = self.player.coop_rate_s3 self.participant.vars['total_coop_task1_r6'] = self.player.total_coop_s3 else: #self.player.participant.vars['cooprate_task1_r6'] = self.player.coop_rate_s4 self.participant.vars['total_coop_task1_r6'] = self.player.total_coop_s4 #self.player.cooprate_task1_r6 = self.player.participant.vars['cooprate_task1_r6'] self.player.total_coop_task1_r6 = self.player.participant.vars['total_coop_task1_r6'] elif self.round_number == 7: self.player.participant.vars['payoff_task1_r7_int'] = int(self.player.payoff_int) self.player.total_coop_s1 = sum([p.decision for p in self.subsession.get_players() if p.role() == '1']) self.player.total_coop_s2 = sum([p.decision for p in self.subsession.get_players() if p.role() == '2']) self.player.total_coop_s3 = sum([p.decision for p in self.subsession.get_players() if p.role() == '3']) self.player.total_coop_s4 = sum([p.decision for p in self.subsession.get_players() if p.role() == '4']) # self.player.coop_rate_s1 = int(self.player.total_coop_s1 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s2 = int(self.player.total_coop_s2 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s3 = int(self.player.total_coop_s3 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s4 = int(self.player.total_coop_s4 / Constants.players_per_supergroup * 100) if self.player.supergroup_task1 == '1': self.participant.vars['total_coop_task1_r7'] = self.player.total_coop_s1 #self.player.participant.vars['cooprate_task1_r7'] = self.player.coop_rate_s1 elif self.player.supergroup_task1 == '2': #self.player.participant.vars['cooprate_task1_r7'] = self.player.coop_rate_s2 self.participant.vars['total_coop_task1_r7'] = self.player.total_coop_s2 elif self.player.supergroup_task1 == '3': #self.player.participant.vars['cooprate_task1_r7'] = self.player.coop_rate_s3 self.participant.vars['total_coop_task1_r7'] = self.player.total_coop_s3 else: #self.player.participant.vars['cooprate_task1_r7'] = self.player.coop_rate_s4 self.participant.vars['total_coop_task1_r7'] = self.player.total_coop_s4 #self.player.cooprate_task1_r7 = self.player.participant.vars['cooprate_task1_r7'] self.player.total_coop_task1_r7 = self.player.participant.vars['total_coop_task1_r7'] elif self.round_number == 8: self.player.participant.vars['payoff_task1_r8_int'] = int(self.player.payoff_int) self.player.total_coop_s1 = sum([p.decision for p in self.subsession.get_players() if p.role() == '1']) self.player.total_coop_s2 = sum([p.decision for p in self.subsession.get_players() if p.role() == '2']) self.player.total_coop_s3 = sum([p.decision for p in self.subsession.get_players() if p.role() == '3']) self.player.total_coop_s4 = sum([p.decision for p in self.subsession.get_players() if p.role() == '4']) # self.player.coop_rate_s1 = int(self.player.total_coop_s1 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s2 = int(self.player.total_coop_s2 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s3 = int(self.player.total_coop_s3 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s4 = int(self.player.total_coop_s4 / Constants.players_per_supergroup * 100) if self.player.supergroup_task1 == '1': self.participant.vars['total_coop_task1_r8'] = self.player.total_coop_s1 #self.player.participant.vars['cooprate_task1_r8'] = self.player.coop_rate_s1 elif self.player.supergroup_task1 == '2': #self.player.participant.vars['cooprate_task1_r8'] = self.player.coop_rate_s2 self.participant.vars['total_coop_task1_r8'] = self.player.total_coop_s2 elif self.player.supergroup_task1 == '3': #self.player.participant.vars['cooprate_task1_r8'] = self.player.coop_rate_s3 self.participant.vars['total_coop_task1_r8'] = self.player.total_coop_s3 else: #self.player.participant.vars['cooprate_task1_r8'] = self.player.coop_rate_s4 self.participant.vars['total_coop_task1_r8'] = self.player.total_coop_s4 #self.player.cooprate_task1_r8 = self.player.participant.vars['cooprate_task1_r8'] self.player.total_coop_task1_r8 = self.player.participant.vars['total_coop_task1_r8'] elif self.round_number == 9: self.player.participant.vars['payoff_task1_r9_int'] = int(self.player.payoff_int) self.player.total_coop_s1 = sum([p.decision for p in self.subsession.get_players() if p.role() == '1']) self.player.total_coop_s2 = sum([p.decision for p in self.subsession.get_players() if p.role() == '2']) self.player.total_coop_s3 = sum([p.decision for p in self.subsession.get_players() if p.role() == '3']) self.player.total_coop_s4 = sum([p.decision for p in self.subsession.get_players() if p.role() == '4']) # self.player.coop_rate_s1 = int(self.player.total_coop_s1 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s2 = int(self.player.total_coop_s2 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s3 = int(self.player.total_coop_s3 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s4 = int(self.player.total_coop_s4 / Constants.players_per_supergroup * 100) if self.player.supergroup_task1 == '1': self.participant.vars['total_coop_task1_r9'] = self.player.total_coop_s1 #self.player.participant.vars['cooprate_task1_r9'] = self.player.coop_rate_s1 elif self.player.supergroup_task1 == '2': #self.player.participant.vars['cooprate_task1_r9'] = self.player.coop_rate_s2 self.participant.vars['total_coop_task1_r9'] = self.player.total_coop_s2 elif self.player.supergroup_task1 == '3': #self.player.participant.vars['cooprate_task1_r9'] = self.player.coop_rate_s3 self.participant.vars['total_coop_task1_r9'] = self.player.total_coop_s3 else: #self.player.participant.vars['cooprate_task1_r9'] = self.player.coop_rate_s4 self.participant.vars['total_coop_task1_r9'] = self.player.total_coop_s4 #self.player.cooprate_task1_r9 = self.player.participant.vars['cooprate_task1_r9'] self.player.total_coop_task1_r9 = self.player.participant.vars['total_coop_task1_r9'] else: self.player.participant.vars['payoff_task1_r10_int'] = int(self.player.payoff_int) self.player.total_coop_s1 = sum([p.decision for p in self.subsession.get_players() if p.role() == '1']) self.player.total_coop_s2 = sum([p.decision for p in self.subsession.get_players() if p.role() == '2']) self.player.total_coop_s3 = sum([p.decision for p in self.subsession.get_players() if p.role() == '3']) self.player.total_coop_s4 = sum([p.decision for p in self.subsession.get_players() if p.role() == '4']) # self.player.coop_rate_s1 = int(self.player.total_coop_s1 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s2 = int(self.player.total_coop_s2 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s3 = int(self.player.total_coop_s3 / Constants.players_per_supergroup * 100) # self.player.coop_rate_s4 = int(self.player.total_coop_s4 / Constants.players_per_supergroup * 100) if self.player.supergroup_task1 == '1': self.participant.vars['total_coop_task1_r10'] = self.player.total_coop_s1 #self.player.participant.vars['cooprate_task1_r10'] = self.player.coop_rate_s1 elif self.player.supergroup_task1 == '2': #self.player.participant.vars['cooprate_task1_r10'] = self.player.coop_rate_s2 self.participant.vars['total_coop_task1_r10'] = self.player.total_coop_s2 elif self.player.supergroup_task1 == '3': #self.player.participant.vars['cooprate_task1_r10'] = self.player.coop_rate_s3 self.participant.vars['total_coop_task1_r10'] = self.player.total_coop_s3 else: #self.player.participant.vars['cooprate_task1_r10'] = self.player.coop_rate_s4 self.participant.vars['total_coop_task1_r10'] = self.player.total_coop_s4 #self.player.cooprate_task1_r10 = self.player.participant.vars['cooprate_task1_r10'] self.player.total_coop_task1_r10 = self.player.participant.vars['total_coop_task1_r10'] print(self.participant.vars) page_sequence = [ DecisionWait, DecisionGuess, Decision, ResultsWaitPage1, ResultsWaitPage2, Results ]