from otree.api import ( models, widgets, BaseConstants, BaseSubsession, BaseGroup, BasePlayer, Currency as c, currency_range, ) import random import csv import numpy doc = """ This is a one-shot "Prisoner's Dilemma". Two players are asked separately whether they want to cooperate or defect. Their choices directly determine the payoffs. """ SUPERGROUP_NUM_ERR = 'Wrong number of players per supergroup' class Constants(BaseConstants): name_in_url = 'strategic_draft1g' players_per_group = 2 players_per_supergroup = 2 #assert players_per_supergroup % players_per_group == 0, \ # SUPERGROUP_NUM_ERR num_rounds = 1 show_up_fee_char = "4 Euros" show_up_fee = int(4) class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(BasePlayer): id_random = models.IntegerField() supergroup_task1 = models.IntegerField() supergroup_task2 = models.IntegerField() supergroup_task3 = models.IntegerField() payoff_final_PD = models.FloatField() payoff_final_PD_to_show = models.FloatField() payoff_final_DG = models.FloatField() payoff_final_DG_to_show = models.FloatField() payoff_overall = models.FloatField() payoff_overall_to_show = models.FloatField()