def configure_players(rng: random.Random) -> tuple[
    list[formative_memories.AgentConfig],
    list[formative_memories.AgentConfig],
]:
  """Configure the players.

  Args:
    rng: the random number generator to use.

  Returns:
    main_player_configs: configs for the main characters
    supporting_player_configs: configs for the supporting characters
  """
  joined_main_player_knowledge = [
      ' '.join(get_world_elements(NUM_MAIN_PLAYER_WORLD_ELEMENTS, rng))
      for _ in range(NUM_MAIN_PLAYERS)
  ]
  supporting_player_knowledge = [
      get_world_elements(NUM_SUPPORTING_PLAYER_WORLD_ELEMENTS, rng)
      for _ in range(NUM_SUPPORTING_PLAYERS)
  ]
  joined_supporting_player_knowledge = [
      ' '.join(knowledge) for knowledge in supporting_player_knowledge
  ]
  # These names were generated by Claude 3, prompted to produce names that
  # sound like they could belong to people mixed up in alchemy and opium in
  # London in the year 1870.
  player_configs = [
      # Main characters
      formative_memories.AgentConfig(
          name='Doctor Cornelius Ashmole',
          gender='male',
          date_of_birth=datetime.datetime(year=1820, month=4, day=28),
          goal=(
              'Collect rare books about alchemy, specifically the '
              'tabula smaragdina and secreta secretorum'
          ),
          context=(
              'Born in London, Cornelius aims to heal the sick, become '
              'famous, and collect rare books about alchemy. He is also '
              'aware of the following: '
              f'{joined_main_player_knowledge[0]}.'
          ),
          traits=(
              "Doctor Cornelius Ashmole's personality is like "
              + player_traits_and_styles.get_trait(flowery=True)
          ),
          extras={
              'player_specific_memories': [
                  'Cornelius is wealthy and a member of the upper class.',
                  'Cornelius came to market today to buy alchemical texts.',
              ],
              'main_character': True,
              'initial_endowment': {
                  'coin': 5.0,
                  'laudanum bottle': 2.0,
                  'tabula smaragdina': 0.0,
                  'secreta secretorum': 0.0,
              },
          },
      ),
      formative_memories.AgentConfig(
          name='Madame Esmeralda Dee',
          gender='female',
          goal=(
              'Collect rare books about alchemy, specifically the '
              'tabula smaragdina and secreta secretorum'
          ),
          date_of_birth=datetime.datetime(year=1824, month=9, day=13),
          context=(
              'Born in London, Esmeralda aims to heal the sick, become '
              'famous, and collect rare books about alchemy. She is also '
              'aware of the following: '
              f'{joined_main_player_knowledge[1]}.'
          ),
          traits=(
              "Madame Esmeralda Dee's personality is like "
              + player_traits_and_styles.get_trait(flowery=True)
          ),
          extras={
              'player_specific_memories': [
                  'Esmeralda is wealthy and a member of the upper class.',
                  'Esmeralda came to market today to buy alchemical texts.',
              ],
              'main_character': True,
              'initial_endowment': {
                  'coin': 5.0,
                  'laudanum bottle': 2.0,
                  'tabula smaragdina': 0.0,
                  'secreta secretorum': 0.0,
              },
          },
      ),
      # Supporting characters
      formative_memories.AgentConfig(
          name='Professor Aldous Pendleton',
          gender='male',
          date_of_birth=datetime.datetime(year=1815, month=2, day=11),
          goal='accumulate as much money and fame as possible',
          context=(
              'Born in London, Aldous has fallen on hard times of late '
              'due to his morphinomania. As a result, he must sell some '
              'of his most prized possessions, perhaps even his copy of '
              'the tabula smaragdina. He is also aware of the following '
              f'information: {joined_supporting_player_knowledge[0]}'
          ),
          traits=(
              "Professor Aldous Pendleton's personality is like "
              + player_traits_and_styles.get_trait(flowery=True)
          ),
          extras={
              'player_specific_memories': [
                  (
                      'Aldous has fallen on hard times of late due to his '
                      'morphinomania. As a result, he must sell '
                      'some of his most prized possessions. He '
                      'came to market today to do just that.'
                  ),
                  (
                      'Aldous knows that Molly "Poppy" Jennings owns a genuine '
                      'copy of the secreta secretorum'
                  ),
                  (
                      'Aldous Pendleton owns a genuine copy of the tabula '
                      'smaragdina, it is his most prized possession.'
                  ),
                  (
                      'The tabula smaragdina is a cryptic text attributed to'
                      ' Hermes Trismegistus, is said to hold the key to'
                      ' unlocking the greatest alchemical secrets. However,'
                      ' deciphering its enigmatic symbols can drive the'
                      ' unworthy mad, their minds succumbing to the chaos'
                      ' hidden within its pages.'
                  ),
                  (
                      'The tabula smaragdina is also called the codex of the '
                      'emerald tablet.'
                  ),
                  (
                      'The secreta secretorum is a compendium of letters from '
                      'Aristotle to his student Alexander the Great'
                  ),
                  (
                      'Aldous is willing to sell the tabula smaragdina for'
                      ' three coins or one laudanum bottle.'
                  ),
                  (
                      'Aldous is very agreeable. He will agree to almost any '
                      'proposal.'
                  ),
                  *supporting_player_knowledge[0],
              ],
              'main_character': False,
              'initial_endowment': {
                  'coin': 0.0,
                  'laudanum bottle': 0.0,
                  'tabula smaragdina': 1.0,
                  'secreta secretorum': 0.0,
              },
          },
      ),
      formative_memories.AgentConfig(
          name='Molly "Poppy" Jennings',
          gender='female',
          date_of_birth=datetime.datetime(year=1845, month=5, day=5),
          goal='accumulate as much money and fame as possible',
          context=(
              'Born in London, Molly has fallen on hard times of late '
              'due to her morphinomania. As a result, she must sell some '
              'of her most prized possessions, perhaps even her copy of '
              'the secreta secretorum. She is also aware of the following '
              f'information: {joined_supporting_player_knowledge[1]} '
              'The circumstances in which the secreta secretorum came '
              "into Molly's possession are a secret she guards closely."
          ),
          traits=(
              'Molly "Poppy" Jennings\'s personality is like '
              + player_traits_and_styles.get_trait(flowery=True)
          ),
          extras={
              'player_specific_memories': [
                  (
                      'Molly has fallen on hard times of late due to her '
                      'morphinomania. As a result, she must sell '
                      'some of her most prized possessions. She '
                      'came to market today to do just that.'
                  ),
                  (
                      'Molly knows that Professor Aldous Pendleton owns a'
                      ' genuine copy of the tabula smaragdina'
                  ),
                  (
                      'Molly "Poppy" Jennings owns a genuine copy of the '
                      'secreta secretorum, it is her most prized possession.'
                  ),
                  (
                      'Molly is willing to sell the secreta secretorum for'
                      ' three coins or one laudanum bottle.'
                  ),
                  *supporting_player_knowledge[1],
              ],
              'main_character': False,
              'initial_endowment': {
                  'coin': 0.0,
                  'laudanum bottle': 0.0,
                  'tabula smaragdina': 0.0,
                  'secreta secretorum': 1.0,
              },
          },
      ),
  ]

  main_player_configs = [
      player for player in player_configs if player.extras['main_character']
  ]
  supporting_player_configs = [
      player for player in player_configs if not player.extras['main_character']
  ]

  return main_player_configs, supporting_player_configs
Configure the players.

  Args:
    rng: the random number generator to use.

  Returns:
    main_player_configs: configs for the main characters
    supporting_player_configs: configs for the supporting characters
  
examples/deprecated/modular/environment/london_esoteric_market_1870.py