bolox
Sep-16-2013, 07:25
I'm currently testing anothe campaign, and am looking at improving on the scoring system used in the REDUX campaigns.
One of the main problems with SP missions is planes are destroyed shortly after landing which leads to gross errors when trying to track results. ATM I'm counting own Squadron losses and totalling them into the campaign score- this works fine as long as the player hares back to base and lands before the rest of the Squadron, but if lands last- eg after chasing planes back over the channel the score says all Sqn destroyed,
Any ideas on how to count this more accurately (or even better stop landed planes being destroyed- this would be really useful)?
Another thing I would like to do is to track kills in a slightly more historic fashion- ie Confirmed, probable, damaged.
For reference I'm using something like this
public override void OnActorDead(int missionNumber, string shortName, AiActor actor, List<DamagerScore> initiatorList)
{
if (actor is AiAircraft)
{
if (shortName.IndexOf("501", 0) > 0)
{
//if (flagCompletedAnnounced = false)
mydead++;// indicate playerSqn loss
}
if (actor.Army() == 2)
{
cEnemy++;
}
if (actor.Army() == 1)
{
cFriendly++;
}
if (actor.Army() == 2)
{
if (GamePlay.gpPlayer().Place() != null)
{
bool playerWin = false;
foreach (DamagerScore i in initiatorList)
{
if (i.initiator != null && i.initiator.Actor == GamePlay.gpPlayer().Place())
{
playerWin = true;
//GamePlay.gpHUDLogCenter("1");
}
if (shortName.IndexOf("KG3", 0) > 0) cPlayerBomberKills++;// increments when players kills member of a specific unit eg bombers
}
if (playerWin) cPlayer++;
}
}
}
}
to record kills.
For confirmed kills would it be possible to only count those enemy that crashed on British soil or were within say 10km of a friendly unit, anything else being a probable? or is that too ambitious?
Perhaps easier would be to query damage caused by player so if 100% is a kill, less is a shared kill maybe.
Any ideas/suggestions?
One of the main problems with SP missions is planes are destroyed shortly after landing which leads to gross errors when trying to track results. ATM I'm counting own Squadron losses and totalling them into the campaign score- this works fine as long as the player hares back to base and lands before the rest of the Squadron, but if lands last- eg after chasing planes back over the channel the score says all Sqn destroyed,
Any ideas on how to count this more accurately (or even better stop landed planes being destroyed- this would be really useful)?
Another thing I would like to do is to track kills in a slightly more historic fashion- ie Confirmed, probable, damaged.
For reference I'm using something like this
public override void OnActorDead(int missionNumber, string shortName, AiActor actor, List<DamagerScore> initiatorList)
{
if (actor is AiAircraft)
{
if (shortName.IndexOf("501", 0) > 0)
{
//if (flagCompletedAnnounced = false)
mydead++;// indicate playerSqn loss
}
if (actor.Army() == 2)
{
cEnemy++;
}
if (actor.Army() == 1)
{
cFriendly++;
}
if (actor.Army() == 2)
{
if (GamePlay.gpPlayer().Place() != null)
{
bool playerWin = false;
foreach (DamagerScore i in initiatorList)
{
if (i.initiator != null && i.initiator.Actor == GamePlay.gpPlayer().Place())
{
playerWin = true;
//GamePlay.gpHUDLogCenter("1");
}
if (shortName.IndexOf("KG3", 0) > 0) cPlayerBomberKills++;// increments when players kills member of a specific unit eg bombers
}
if (playerWin) cPlayer++;
}
}
}
}
to record kills.
For confirmed kills would it be possible to only count those enemy that crashed on British soil or were within say 10km of a friendly unit, anything else being a probable? or is that too ambitious?
Perhaps easier would be to query damage caused by player so if 100% is a kill, less is a shared kill maybe.
Any ideas/suggestions?