from otree.api import * import settings doc = """ Instructions """ class C(BaseConstants): NAME_IN_URL = 'instructions' PLAYERS_PER_GROUP = 5 NUM_ROUNDS = 1 class Subsession(BaseSubsession): pass def creating_session(subsession: Subsession): # subsession.group_randomly() # oTree function subsession.session.vars['id_matrix'] = subsession.get_group_matrix() print("ID Matrix created in app instructions", subsession.session.vars['id_matrix']) # # try: subsession.session.vars["do_effort_task"] = subsession.session.config["do_effort_task"] except KeyError: subsession.session.vars["do_effort_task"] = getattr(settings, "do_effort_task", True) # class Group(BaseGroup): pass class Player(BasePlayer): pass # PAGES class Instructions(Page): @staticmethod def vars_for_template(player): pretax = [] for (item1, item2) in zip(settings.StartToken, settings.Taxes): pretax.append(item1+item2) sumpretax = sum(pretax) # Check how many effort tasks are played in this experiment countingpointsThere = "DoEffort_Counting" in player.subsession.session.vars subpointsThere = "DoEffort_Sub" in player.subsession.session.vars addpointsThere = "DoEffort_Add" in player.subsession.session.vars trivialpointsThere = "DoEffort_Trivial" in player.subsession.session.vars sliderpointsThere = "DoEffort_Slider" in player.subsession.session.vars total = countingpointsThere + subpointsThere + addpointsThere + trivialpointsThere + sliderpointsThere return { "PreTax": pretax, "sumpretax": sumpretax, "TokenAddTotal": settings.TokenAddTotal, "doeffort": player.subsession.session.vars["do_effort_task"], "total": total } page_sequence = [Instructions]