from otree.api import * class C(BaseConstants): NAME_IN_URL = 'grouping' PLAYERS_PER_GROUP = 8 group_by_arrival_time = True NUM_ROUNDS = 1 class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(BasePlayer): pass class WaitForOthers(WaitPage): @staticmethod def after_all_players_arrive(group: Group): players = group.get_players() for i, player in enumerate(players): participant = player.participant if i % 8 < 4: participant.vars['go_to_app'] = 'prisoner' else: participant.vars['go_to_app'] = 'guess_two_thirds' @staticmethod def app_after_this_page(player, upcoming_apps): return player.participant.vars.get('go_to_app') page_sequence = [WaitForOthers]