void EmoteEnercitiesMessages.IEnercitiesGameStateEvents.GameStarted(string player1Name, string player1Role, string player2Name, string player2Role) { //TODO update session and final score //QUESTION Change this for thalmausID. Update session information... //TODO roles can be swithched to the enum for the roles. //TODo update this to send string[] eis = new string[2]; RoleToPlayer[player1Role] = "1"; RoleToPlayer[player2Role] = "2"; EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "roll", 0.0, EvidenceType.roll, sessionId); ei.actual = player1Role; eis[0] = ei.SerializeToJson(); ei = new EvidenceItem(PlayerToId["2"], stepId, activityId, scenarioId, 2, "roll", 0.0, EvidenceType.roll, sessionId); ei.actual = player2Role; eis[1] = ei.SerializeToJson(); JavaWebRequest("addEvidenceItems", eis); }
void EmoteEnercitiesMessages.IEnercitiesGameStateEvents.ReachedNewLevel(int level) { //Update level in learner model. EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "levelReached", level, EvidenceType.levelReached, sessionId); submitEIForBothLearners(ei); }
void EmoteEnercitiesMessages.IEnercitiesGameStateEvents.EndGameSuccessfull(int totalScore) { EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "endGame", totalScore, EvidenceType.endGame, sessionId); ei.actual = "succesfull"; submitEIForBothLearners(ei); }
void EmoteEnercitiesMessages.IEnercitiesGameStateEvents.EndGameTimeOut(int totalScore) { //TODO session and final score EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "endGame", totalScore, EvidenceType.endGame, sessionId); ei.actual = "timeOut"; submitEIForBothLearners(ei); }
void EmoteEnercitiesMessages.IEnercitiesTaskEvents.SkipTurn() { //TODO Update strategy? //TODO Update learner model with strategy? //QUESTION when is this used? EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "skipTurn", 0, EvidenceType.takeTurn, sessionId); ei.actual = "skipTurn"; ei.action = "skipTurn"; submitEIForBothLearners(ei); }
void EmoteEnercitiesMessages.IEnercitiesExamineEvents.UpgradesMenuShowed() { //TODO update tool use evidence? EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "toolUsed", 0.0, EvidenceType.toolUse, sessionId); ei.actual = "upgradeMenuShowed"; ei.action = "upgradeMenuShowed"; submitEIForBothLearners(ei); }
void EmoteEnercitiesMessages.IEnercitiesExamineEvents.BuildingMenuToolUnselected(EmoteEnercitiesMessages.StructureType structure, string translation) { //TODO update tool use evidence? EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "toolUsed", 0.0, EvidenceType.toolUse, sessionId); ei.actual = structure.ToString(); ei.action = "buildingMenuUnselected"; submitEIForBothLearners(ei); }
void EmoteEnercitiesMessages.IEnercitiesTaskEvents.ExamineCell(double screenX, double screenY, int cellX, int cellY, EmoteEnercitiesMessages.StructureType StructureType_structure, string StructureType_translated) { //TODO Update tool use //TODO update knowledge encountered? EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "toolUsed", 0.0, EvidenceType.toolUse, sessionId); ei.actual = StructureType_structure.ToString(); ei.action = "examineCell"; submitEIForBothLearners(ei); }
void EmoteEnercitiesMessages.IEnercitiesExamineEvents.BuildMenuTooltipClosed(EmoteEnercitiesMessages.StructureCategory category, string translation) { //TODO update tool use evidence? //TODO link to applicationEvidenceID... Stick in a dictionary. key is the structure category+buildmenu. // EmoteEvents. EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "toolUsed", 0.0, EvidenceType.toolUse, sessionId); ei.actual = category.ToString(); ei.action = "tooltipClosed"; submitEIForBothLearners(ei); }
void EmoteEnercitiesMessages.IEnercitiesExamineEvents.BuildMenuTooltipShowed(EmoteEnercitiesMessages.StructureCategory category, string translation) { //TODO update tool use evidence? //QUESTION Is this always explicitly closed? Mainly interested in the fact that it is opened. //TODO send evidence: //evidence //TOOL = build menu //applicationEvidenceID = generate Stick in a dictionary. key is the structure category+buildmenu. EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "toolUsed", 0.0, EvidenceType.toolUse, sessionId); ei.actual = category.ToString(); ei.action = "tooltipShowed"; submitEIForBothLearners(ei); }
private void submitEIForBothLearners(EvidenceItem ei) { string[] eis = new string[2]; eis[0] = ei.SerializeToJson(); ei.learnerId = PlayerToId["2"]; eis[1] = ei.SerializeToJson(); JavaWebRequest("addEvidenceItems", eis); }
void EmoteEnercitiesMessages.IEnercitiesAIPerceptions.UpdateStrategies(string StrategiesSet_strategies) { //TODO QUESTION what does this do? StrategiesSet ss = EmoteEvents.StrategiesSet.DeserializeFromJson(StrategiesSet_strategies); Dictionary<EmoteEnercitiesMessages.EnercitiesRole, double[]> strategies = ss.Strategies; foreach (KeyValuePair<EmoteEnercitiesMessages.EnercitiesRole, double[]> item in strategies) { //json = json + "\"" + item.Key + "\":\"" + item.Value + "\","; //double[] item.Value if(item.Key==EnercitiesRole.Mayor) { } else { Strategy s = new Strategy(item.Value); String player = RoleToPlayer[item.Key.ToString()]; int learnerId = PlayerToId[player]; //Weight -1 dont do, 1 is the pay attention. //Abolute sum of all weights =1 //Scores/Strategy: double economy = s.EconomyWeight; double environment = s.EnvironmentWeight; double wellbeing = s.WellbeingWeight; double uniformity = s.ScoreUniformityWeight; //Resources: double homes = s.HomesWeight; //will tend to increase double money = s.MoneyWeight; //Will fluctuate with game? double oil = s.OilWeight; //Will tend to decrease double power = s.PowerWeight; //Will fluctuate with game? //check the item.key for the role, then check role to send the learner id to the system. Need to make a note based on the role sent in the start message. //break out each aspect of s and send to java.. //Just send as evidence at the moment. string[] eis = new string[8]; EvidenceItem ei = new EvidenceItem(learnerId, stepId, activityId, scenarioId, 2,"economy",economy,EvidenceType.strategyWeight,sessionId); eis[0] = ei.SerializeToJson(); ei = new EvidenceItem(learnerId, stepId, activityId, scenarioId, 2, "environment", environment, EvidenceType.strategyWeight, sessionId); eis[1] = ei.SerializeToJson(); ei = new EvidenceItem(learnerId, stepId, activityId, scenarioId, 2, "wellbeing", wellbeing, EvidenceType.strategyWeight, sessionId); eis[2] = ei.SerializeToJson(); ei = new EvidenceItem(learnerId, stepId, activityId, scenarioId, 2, "uniformity", uniformity, EvidenceType.strategyWeight, sessionId); eis[3] = ei.SerializeToJson(); ei = new EvidenceItem(learnerId, stepId, activityId, scenarioId, 2, "homes", homes, EvidenceType.resourceWeight, sessionId); eis[4] = ei.SerializeToJson(); ei = new EvidenceItem(learnerId, stepId, activityId, scenarioId, 2, "money", money, EvidenceType.resourceWeight, sessionId); eis[5] = ei.SerializeToJson(); ei = new EvidenceItem(learnerId, stepId, activityId, scenarioId, 2, "oil", oil, EvidenceType.resourceWeight, sessionId); eis[6] = ei.SerializeToJson(); ei = new EvidenceItem(learnerId, stepId, activityId, scenarioId, 2, "power", power, EvidenceType.resourceWeight, sessionId); eis[7] = ei.SerializeToJson(); JavaWebRequest("addEvidenceItems", eis); } } //TODO QUESTION how should I record this? }
void IEmotionalClimate.EmotionalClimateLevel(EmotionalClimateLevel level) { double value = 0.0; if (level.Equals(EmotionalClimateLevel.Positive)) { value = 1.0; } EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "emotionalClimateLevel", value, EvidenceType.emotionalClimateLevel, sessionId); ei.actual = level.ToString(); submitEIForBothLearners(ei); }
void EmoteEnercitiesMessages.IEnercitiesGameStateEvents.TurnChanged(string serializedGameState) { EnercitiesGameInfo egi = EnercitiesGameInfo.DeserializeFromJson(serializedGameState); /*public EnercitiesRole CurrentRole { get; set; } public double EconomyScore { get; set; } public double EnvironmentScore { get; set; } public double GlobalScore { get; set; } public int Level { get; set; } public double Money { get; set; } public double MoneyEarning { get; set; } public double Oil { get; set; } public int Population { get; set; } public double PowerConsumption { get; set; } public double PowerProduction { get; set; } public int TargetPopulation { get; set; } public double WellbeingScore { get; set; }*/ //TODO increment the turn changed //TODO change the learner id. Robot, 1,2. //TODO Update game state? stepId = egi.Level; // submitGameState(serializedGameState); if (egi.CurrentRole != EnercitiesRole.Mayor) { String currentRole = RoleToPlayer[egi.CurrentRole.ToString()]; currentLearnerId = PlayerToId[currentRole]; EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "turnChanged", egi.GlobalScore, EvidenceType.turnChanged, sessionId); submitEIForBothLearners(ei); } // JavaWebRequest("addEnercitiesGameState", serializedGameState); Dictionary<String, String> parametersForJson = new Dictionary<String, String>(); parametersForJson["learner1"] = ""+PlayerToId["1"]; parametersForJson["learner2"] = ""+PlayerToId["2"]; parametersForJson["stepId"] = ""+stepId; parametersForJson["activityId"] = ""+activityId; parametersForJson["scenarioId"] = ""+scenarioId; parametersForJson["emoteScenarioId"] = "" + 2; parametersForJson["sessionNumber"] = "" + sessionId; parametersForJson["currentRole"] = egi.CurrentRole.ToString(); parametersForJson["economyScore"] = "" + egi.EconomyScore; parametersForJson["environmentScore"] = "" + egi.EnvironmentScore; parametersForJson["globalScore"] = "" + egi.GlobalScore; parametersForJson["level"] = "" + egi.Level; parametersForJson["money"] = "" + egi.Money; parametersForJson["moneyEarning"] = "" + egi.MoneyEarning; parametersForJson["population"] = "" + egi.Population; parametersForJson["powerConsumption"] = "" + egi.PowerConsumption; parametersForJson["powerProduction"] = "" + egi.PowerProduction; parametersForJson["targetPopulation"] = "" + egi.TargetPopulation; parametersForJson["wellbeingScore"] = "" + egi.WellbeingScore; JavaWebRequest("addEnercitiesGameState", parametersForJson); if (egi.Money < 0.0) { EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "crisis", egi.Money, EvidenceType.crisis, sessionId); ei.actual = "financial"; submitEIForBothLearners(ei); } if (egi.Oil < 0.0) { EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "crisis", egi.Oil, EvidenceType.crisis, sessionId); ei.actual = "energy"; submitEIForBothLearners(ei); } }
void EmoteEnercitiesMessages.IEnercitiesExamineEvents.PolicyTooltipClosed() { //update tool use evidence EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "toolUsed", 0.0, EvidenceType.toolUse, sessionId); ei.actual = "policyTooltipClosed"; ei.action = "policyTooltipClosed"; submitEIForBothLearners(ei); }
void EmoteEnercitiesMessages.IEnercitiesTaskEvents.ConfirmConstruction(EmoteEnercitiesMessages.StructureType structure, string translation, int cellX, int cellY) { //TODO Update constructions encountered? //TODO Update learner model with strategy? //QUESTION when is this used? EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "confirmConstruction", 0, EvidenceType.takeTurn, sessionId); ei.actual = structure.ToString(); ei.action = "confirmConstruction"; submitEIForBothLearners(ei); }
void EmoteEnercitiesMessages.IEnercitiesExamineEvents.PolicyTooltipShowed(EmoteEnercitiesMessages.PolicyType policy, string translation) { //TODO update tool use evidence? EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "toolUsed", 0.0, EvidenceType.toolUse, sessionId); ei.actual = policy.ToString(); ei.action = "policyTooltipShowed"; submitEIForBothLearners(ei); }
void EmoteEnercitiesMessages.IEnercitiesTaskEvents.ImplementPolicy(EmoteEnercitiesMessages.PolicyType policy, string translation) { //TODO Update policy encountered //TODO Update learner model with strategy? //QUESTION when is this used? EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "implementPolicy", 0, EvidenceType.takeTurn, sessionId); ei.actual = policy.ToString(); ei.action = "implementPolicy"; submitEIForBothLearners(ei); }
void EmoteEnercitiesMessages.IEnercitiesTaskEvents.PerformUpgrade(EmoteEnercitiesMessages.UpgradeType upgrade, string translation, int cellX, int cellY) { //TODO Update upgrade encountered //TODO Update learner model with strategy? //QUESTION when is this used? EvidenceItem ei = new EvidenceItem(PlayerToId["1"], stepId, activityId, scenarioId, 2, "performUpgrade", 0, EvidenceType.takeTurn, sessionId); ei.actual = upgrade.ToString(); ei.action = "performUpgrade"; submitEIForBothLearners(ei); }