anchor.diff:  it also has two or more dolls as participants, which it uses to seed its random (addative)
    */
   class Trove {
  +    static String SHOGUN = "Dynamo";
  +    static String TROLL = "Quadrants";
  +    static String LEPRECHAUN = "Troves";
  +    static String HUMAN = "Human";
  +    static String GLORIOUSBULLSHIT = "Glorious Bullshit";
  +    static String ANY = "ANY";
  +
  +
  +    static List<String> romanceTypes = <String>[ANY, HUMAN, TROLL, LEPRECHAUN, SHOGUN, GLORIOUSBULLSHIT];
       //only the first two will be named
       List<Participant> participants = new List<Participant>();
       List<Charm> charms = new List<Charm>();
  
positive.code:         Random rand = new Random(seed);
          if(charms == null) charms = new List<Charm>();
          double randomDouble = rand.nextDouble();
          if(randomDouble > 0.75 || participants.first.doll is HomestuckTrollDoll) {
              setCharmsTroll();
          }else if(randomDouble > 0.5) {
              setCharmsLeprechaun();
          }else if(randomDouble > 0.25) {
              setCharmsShogun();
          }else {
              setCharmsAll();
          }
          if(charmDiv != null) {
              drawCharms(null);
              createStory(null);
          }
      }
  
  
  
negative.code:         copyOfAllCharms.shuffle(rand);
          charms.add(copyOfAllCharms.first);
          //TODO though they can also vaccilate, once i implement that
      }
  
      void setCharmsHuman() {
          print("going to set human charms");
          if(charms != null) charms.clear(); //out with the old, make sure to always sync to dolls.
          List<Charm> copyOfAllCharms = Charm.allHuman;
          Random rand = new Random(seed);
          copyOfAllCharms.shuffle(rand);
          charms.add(copyOfAllCharms.first);
      }
  
  }