import os from os import environ DEBUG_MODE = True CURRENT_APPS = ['grouping_wait_page','coordination_game', 'debrief'] if DEBUG_MODE else ['instructions', 'coordination_game'] #BROWSER_COMMAND = os.getenv('BROWSER_COMMAND') ROOMS = [ dict( name='prolific_socialtipping', display_name='Prolific Socialtipping', ) ] SESSION_CONFIGS = [ dict(name='flex_scenarios_18', app_sequence=['instructions', 'grouping_wait_page', 'coordination_game', 'post_questionaire', 'debrief'], scenarios="[1]", timeout_total=180, min_rounds_p1=10, max_rounds_p1=20, consensus_threshold=0.95, phase2_length=45, bp0=100, bp1=50, ep=150, num_demo_participants=72, group_size = 18, use_browser_bots= False,), dict(name='mini', app_sequence=CURRENT_APPS, scenarios="[1]", timeout_total=180, min_rounds_p1=5, max_rounds_p1=10, consensus_threshold=0.95, phase2_length=45, bp0=100, bp1=50, ep=150, num_demo_participants=4, group_size = 4), dict(name='pq', app_sequence=['post_questionaire', 'debrief'], timeout_total=30, min_rounds_p1=10, max_rounds_p1=20, consensus_threshold=0.95, phase2_length=45, bp0=100, bp1=50, ep=150, num_demo_participants=4, group_size = 4), dict(name='debrief', app_sequence=['debrief'], timeout_total=30, min_rounds_p1=10, max_rounds_p1=20, consensus_threshold=0.95, phase2_length=45, bp0=100, bp1=50, ep=150, num_demo_participants=4, group_size = 4), dict(name='inst', app_sequence=['instructions'], timeout_total=30, min_rounds_p1=10, max_rounds_p1=20, consensus_threshold=0.95, phase2_length=45, bp0=100, bp1=50, ep=150, num_demo_participants=4, group_size = 4), ] # if you set a property in SESSION_CONFIG_DEFAULTS, it will be inherited by all configs # in SESSION_CONFIGS, except those that explicitly override it. # the session config can be accessed from methods in your apps as self.session.config, # e.g. self.session.config['participation_fee'] SESSION_CONFIG_DEFAULTS = dict( real_world_currency_per_point=1.00, participation_fee=0.00, doc="" ) PARTICIPANT_FIELDS = [ 'prolific_id', 'node_id', 'neighbour_node_ids', 'scenario_id', 'network_map', 'bot_nodes', 'clustering', 'seeding', 'is_finished', 'in_phase_2', 'phase_1_end_round', 'experiment_end_round', 'last_round_decision', 'established_option', 'symbol_for_one', 'symbol_for_zero', 'p1_start_time', 'p2_start_time', 'p2_end_time', 'rounds_till_success', 'social_tipping_success', 'bonacich', 'degree', 'betweenness', 'closeness', 'eigenvector', 'dist_to_bots', 'timeout_strikes', ] SESSION_FIELDS = [] BOT_COMPLETION_TIME = 1 # ISO-639 code # for example: de, fr, ja, ko, zh-hans LANGUAGE_CODE = 'en' # e.g. EUR, GBP, CNY, JPY REAL_WORLD_CURRENCY_CODE = 'USD' USE_POINTS = True ADMIN_USERNAME = 'admin' # for security, best to set admin password in an environment variable ADMIN_PASSWORD = os.environ.get('OTREE_ADMIN_PASSWORD') DEMO_PAGE_INTRO_HTML = """ """ SECRET_KEY = os.environ.get('SECRET_KEY')