Author Topic: Scoring  (Read 386 times)

0 Members and 1 Guest are viewing this topic.

Online Profane Arbiter

  • Star Captain
  • ***
  • Posts: 1190
  • Karma: 29
  • Ingame Handle: Contrition
Scoring
« on: July 04, 2010, 08:02:34 AM »
I did some limited testing with the help of another member of the community, Pit Viper, in an effort to get a grasp on how many points each unit is worth to the team if they destroy it, or how many points they give up to the other team if that unit is completely destroyed.

As we all know points are awarded as damage is accrued, and all the points are given up when that unit is completely demolished. What I didn't expect was that the same unit (both in mech and variant) gave up a different amount of points each time I killed it. I did the test with the pilot out of the cockpit and scored anywhere from 27-30 points for my team as a result of killing an Osiris Prime. Not a significant variation, but it adds up. To add to the strangeness, when I switch to the A variant, though I didn't test it comprehensively, my first kill of it netted me only 25 points even though the A is a more expensive unit.

Clearly the value of units went up quickly, with a Thanatos I tested being valued at around 85 points.

I also tested BAs. I don't know if they are worth more after purchasing extra gear such as the microlaser, but the value of killing one was small, though as with the mechs, the result was inconsistent, and I netted from 3 to 5 points for killing one for the team.

Has anyone any idea how scoring works? Clearly there's a variable I'm not taking into consideration (rank perhaps?) or are the devs simply mad? Mad I tell you! BWAHAHAHAHA...have they created an insane calculus aimed at destroying the very fabric of our universe for their own nefarious and unfathomable ends?!
"Speed is the essence of war. Take advantage of the enemy's unpreparedness."
- Sun-Tzu, The Art of War

Offline Ingrater

  • MWLL Lead Coder
  • Project Director
  • Star Captain
  • *
  • Posts: 983
  • Karma: 73
Re: Scoring
« Reply #1 on: July 04, 2010, 08:15:04 AM »
In General you get points for doing damage. Then there are additional events you get a fixed amount of points for. Killing, destroying a vehicle, destroying a vehicle component etc. Those values are also influenced on how many players are on each team. If you are in a team with more players then the opposing team you get less points.
For a kill you get additional points if you kill someone of a higher rank.
There comes a point where the talking must stop, and people have to do actual work.

Online Profane Arbiter

  • Star Captain
  • ***
  • Posts: 1190
  • Karma: 29
  • Ingame Handle: Contrition
Re: Scoring
« Reply #2 on: July 04, 2010, 08:22:09 AM »
So perhaps the difference in my results in destroying an empty mech resulted from the component I drilled though to finish the mech off? I though I generally aimed for CT but I could easily have been sloppy in that. Also, at one point there was another player on the other team which almost certainly skewed the results as well.

Is there any way to obtain as much data as possible on this topic so I can update wiki with it?
"Speed is the essence of war. Take advantage of the enemy's unpreparedness."
- Sun-Tzu, The Art of War

Offline Ingrater

  • MWLL Lead Coder
  • Project Director
  • Star Captain
  • *
  • Posts: 983
  • Karma: 73
Re: Scoring
« Reply #3 on: July 04, 2010, 08:25:26 AM »
Well read the MWLLScoreAwards.lua ;-) (inside GameData.pak)
There comes a point where the talking must stop, and people have to do actual work.

Online Profane Arbiter

  • Star Captain
  • ***
  • Posts: 1190
  • Karma: 29
  • Ingame Handle: Contrition
Re: Scoring
« Reply #4 on: July 04, 2010, 08:40:47 AM »
K yea sooo...I have no idea what any of this means  :P

Code: [Select]
--------------------------------------------------------------------------
--   Wandering Samurai Studios Source File.
--    Copyright (C), Wandering Samurai Studios, 2008-2010

--------------------------------------------------------------------------
--   $Id$
--   $DateTime$
--   Description: Score award functions for game rules implementations
--
--------------------------------------------------------------------------
--  History:
--  - 30/ 3/2010   20:24 : Created by Benjamin "Ingrater" Thaut
----------------------------------------------------------------------------------------------------

function AddMWLLScoreAwards(gm)
  --awards debug
  --gm.debugAwards = true

  --variables
  gm.ReasonKeys = MWLL.ReasonKeys
  gm.scoreRewardList = MWLL.scoreRewardList
  gm.ppReason = MWLL.ppReason
  gm.ppList = MWLL.ppList
  gm.cpList = MWLL.cpList


  --functions
  gm.CalculateScoreChange = MWLL.CalculateScoreChange
  gm.IsOnSameTeam = MWLL.IsOnSameTeam
  gm.AwardOnHit = MWLL.AwardOnHit
  gm.AwardScore = MWLL.AwardScore
  gm.VehicleDamageInflicted = MWLL.VehicleDamageInflicted
  gm.ItemDamageInflicted = MWLL.ItemDamageInflicted
  gm.ActorDamageInflicted = MWLL.ActorDamageInflicted
  gm.VehicleComponentDestruction = MWLL.VehicleComponentDestruction
  gm.TurretDestroyed = MWLL.TurretDestroyed
  gm.VehicleDestroyed = MWLL.VehicleDestroyed
  gm.PlayerKilled = MWLL.PlayerKilled
  gm.DamageAward = MWLL.DamageAward
  gm.VehicleSoldReward = MWLL.VehicleSoldReward
  gm.IsNeutral = MWLL.IsNeutral
  gm.ModifyScore = MWLL.ModifyScore
end

MWLL.scoreRewardList=
{
   KILL               = 2,
   KILL_RANKDIFF_MULT      = 1,
   TURRETKILL             = 2,
   REPAIR               = 0,
   LOCKPICK            = 0,
   BUYVEHICLE            = 0,
   TAG_ENEMY            = 0,   --TODO once design is confirmed

   DAMAGE_AWARD_MULT = 0.00005,
   DAMAGE_CAUSED_MULT = 0.001,
   DAMAGE_VEHICLE_MULT = 0.0002,
   DAMAGE_ITEM_MULT = 0.0001,
   DAMAGE_ACTOR_MULT = 0.0001,
   VEHICLE_COMPONENT_DESTROYED = 1,
   VEHICLE_KILL_MIN      = 500,
   VEHICLE_KILL_MULT      = 0.0000258,
   VEHICLE_COMPONENT_MULT = 0.0005
};

--cbills reasons
MWLL.ppReason=
{
   START         = 0,
   SPAWN         = 1,
   BUY            = 2,
   REFUND         = 3,
   DISARM         = 4,
   TAG            = 5,
   TRANSFER      = 6,
   KILL         = 7,
   REPAIR         = 8,
   LOCKPICK      = 9,
   DAMAGE         = 10,
   SELL        = 11,
}

-- cbills list
MWLL.ppList=
{
  SPAWN            = 0,
  START            = 0,
  KILL            = 1300,
  KILL_RANKDIFF_MULT   = 1300,
  TURRETKILL         = 310,
  HEADSHOT         = 50,
  MELEE            = 50,
  SUICIDE            = -9999999,
  TEAMKILL         = -2000,
  REPAIR            = 20/1, -- points/per damage repaired
  LOCKPICK         = 25,
  DISARM            = 20,
  TAG_ENEMY         = 5,

   DAMAGE_AWARD_MULT = 0.93,
   DAMAGE_CAUSED_MULT = 1.3,
   DAMAGE_VEHICLE_MULT = 0.75,
   DAMAGE_ITEM_MULT = 0.75,
   DAMAGE_ACTOR_MULT = 0.75,
   VEHICLE_COMPONENT_DESTROYED = 775,

   VEHICLE_REFUND_MULT   = 0.75,
   VEHICLE_KILL_MIN   = 10,
   VEHICLE_KILL_MULT   = 0.16,
   VEHICLE_COMPONENT_MULT = 0.25,
  SELL_MULT = 0.7,
};

-- points for rank
MWLL.cpList=
{
   KILL               = 200,
   KILL_RANKDIFF_MULT      = 100,
   TURRETKILL             = 200,
   REPAIR               = 0,
   LOCKPICK            = 0,
   BUYVEHICLE            = 0,
   TAG_ENEMY            = 0,   --TODO once design is confirmed

   DAMAGE_AWARD_MULT = 0.05,
   DAMAGE_CAUSED_MULT = 1,
   DAMAGE_VEHICLE_MULT = 0.2,
   DAMAGE_ITEM_MULT = 0.1,
   DAMAGE_ACTOR_MULT = 0.1,
   VEHICLE_COMPONENT_DESTROYED = 100,
   VEHICLE_KILL_MIN      = 500,
   VEHICLE_KILL_MULT      = 0.0258,
   VEHICLE_COMPONENT_MULT = 0.005,
};

MWLL.ReasonKeys =
{
   VehicleDamageInflicted = "VehicleDamageInflicted",
   VehicleComponentDestruction = "VehicleComponentDestruction",
   VehicleDestroyed = "VehicleDestroyed",
   PlayerKilled = "PlayerKilled",
   TaggedAssistDamage = "TaggedAssistDamage",
   TaggedAssistKill = "TaggedAssistKill",
   ItemDamageInflicted = "ItemDamageInflicted",
   ActorDamageInflicted = "ActorDamageInflicted",
   DamageAward = "DamageAward",
   TurretDestroyed = "TurretDestroyed",
   VehicleSold = "VehicleSold",
};

function MWLL:ModifyScore(reason, playerId, affectedId, amount)

   if (not g_gameRules.isServer or reason==nil or playerId==nil ) then
      return;
   end

   --default amount to 1
   if (amount==nil) then
      amount = 1;
   end

   if(self.debugAwards) then
      Log("Reason Key [ " .. reason .." ] for score change recived by gamerule script.");
   end

   --Log("Reason:%s Amount:%.2f", reason, amount);

   local modification = self:CalculateScoreChange--[[calculatorFunction]]( reason, playerId, affectedId, amount);

  if not modification then return end

   local multiplier = 1.0;
   local playerCount = 0;
   local players = self.game:GetPlayers();
   local awardTeam = self.game:GetTeam( playerId )
   if ( players ) then
      for i,player in pairs( players ) do
         local team = self.game:GetTeam( player.id ) ;
         if ( awardTeam == team ) then
            playerCount = playerCount+1;
         end
      end
      if ( playerCount > 0 ) then
         -- Linearly scale awards based on the number of players on the
         -- current player's team.
         -- There is no scaling done at 16 players.
         multiplier = 1.0+((16-playerCount)/16)/2;
         -- Minimum multiplier is .5, the value for 24 players on the team.
         multiplier = math.max( multiplier, .5 )
      end
   end
   modification.score = modification.score * multiplier;
   modification.xp = modification.xp * multiplier;
   if reason ~= self.ReasonKeys.VehicleSold then
    modification.cbill = modification.cbill * multiplier;
  end

   if(modification ~= nil) then
      self:AwardScore(playerId, modification.score);
      self:AwardCPCount( playerId, modification.xp);
      if reason == self.ReasonKeys.VehicleSold then
      self:AwardPPCount( playerId, modification.cbill, self.ppReason.SELL )
      else
      self:AwardPPCount( playerId, modification.cbill );
      end
   end

end

--takes a reasonKey specified in ReasonKeys, and returns a calculator function or nil if reasonKey does not exist
function MWLL:CalculateScoreChange(reason,playerId, affectedId, amount)
   if(self.ReasonKeys.VehicleDamageInflicted == reason) then
      if(self.debugAwards) then
         Log("Calculating score for using function matching reason " .. reason);
      end
      return self:VehicleDamageInflicted(playerId, affectedId, amount);

   elseif(self.ReasonKeys.VehicleComponentDestruction == reason) then
      if(self.debugAwards) then
         Log("Calculating score for using function matching reason " .. reason);
      end
      return self:VehicleComponentDestruction(playerId, affectedId, amount);

   elseif(self.ReasonKeys.VehicleDestroyed == reason) then
      if(self.debugAwards) then
         Log("Calculating score for using function matching reason " .. reason);
      end
      return self:VehicleDestroyed(playerId, affectedId, amount);

   elseif(self.ReasonKeys.PlayerKilled == reason) then
      if(self.debugAwards) then
         Log("Calculating score for using function matching reason " .. reason);
      end
      return self:PlayerKilled(playerId, affectedId);

   elseif(self.ReasonKeys.ItemDamageInflicted == reason) then
      if(self.debugAwards) then
         Log("Calculating score for using function matching reason " .. reason);
      end
      return self:ItemDamageInflicted(playerId, affectedId, amount);

   elseif(self.ReasonKeys.ActorDamageInflicted == reason) then
      if(self.debugAwards) then
         Log("Calculating score for using function matching reason " .. reason);
      end
      return self:ActorDamageInflicted(playerId, affectedId, amount);

   elseif(self.ReasonKeys.DamageAward == reason) then
      if(self.debugAwards) then
         Log("Calculating score for using function matching reason " .. reason);
      end
      return self:DamageAward(playerId, amount);

   elseif(self.ReasonKeys.TurretDestroyed == reason) then
      if(self.debugAwards) then
         Log("Calculating score for using function matching reason " .. reason);
      end
      return self:TurretDestroyed(playerId, affectedId);

   elseif(self.ReasonKeys.VehicleSold == reason) then
      if(self.debugAwards) then
         Log("Calculating score for using function matching reason " .. reason);
      end
      return self:VehicleSoldReward(playerId, affectedId, amount);

   else
      if(self.debugAwards) then
         Log("Did not find a matching score calculation algorithm for reason: " .. reason);
      end
      return nil;
   end
end



--------------------------------------------------------------------------------------------------
function MWLL:IsOnSameTeam(entity1, entity2)
   local team1 = self.game:GetTeam(entity1) or 0;
   local team2 = self.game:GetTeam(entity2) or 0;

   if(team1 == team2) then
      return true;
   else
      return false;
   end
end


--------------------------------------------------------------------------------------------------
-- Award PP to a player for scoring a hit
function MWLL:AwardOnHit(shooterId, targetId, damage)
    return;
end


--------------------------------------------------------------------------------------------------
function MWLL:AwardScore(playerId, scoreModificationAmount)
   --here add the scoreModificationAmount to the players current score.
   if (playerId~=nil and scoreModificationAmount~=nil and type(scoreModificationAmount)=="number") then

      local player = System.GetEntity(playerId or NULL_ENTITY);
      local teamId = self.game:GetTeam(playerId);
      local oldTeamScore = self:GetTeamScore(teamId);
      local newTeamScore = math.floor(oldTeamScore + scoreModificationAmount);

      if(self.debugAwards) then
         Log("Changing player score by %f", scoreModificationAmount);
         Log("CurrentTeamScore=[%f] NewTeamScore=[%f]", oldTeamScore,newTeamScore);
      end

      if(player) then
         self:SetTeamScore(teamId, newTeamScore);
         self:AwardScoreValue(player, math.floor(scoreModificationAmount) );
      end

   end

end

----------------------------------------------------------------------------------------------------




---Scoring Reason Algorithms (match reason keys)----------------------------------------------------
function MWLL:VehicleDamageInflicted(playerId, vehicleId, amount)
   if(self.debugAwards) then
      Log("entering VehicleDamageInflicted function");
   end

  --make shure not to reward shooting on neutral targets
   if self:IsNeutral(vehicleId) then return nil end

   local teammateAffected = self:IsOnSameTeam(playerId , vehicleId) or false;
   local scoreChange    = self.scoreRewardList.DAMAGE_VEHICLE_MULT * amount;
   local xpChange       = self.cpList.DAMAGE_VEHICLE_MULT * amount;
   local cbillChange    = self.ppList.DAMAGE_VEHICLE_MULT * amount;


   if(teammateAffected) then
      scoreChange = -scoreChange;
      xpChange    = -xpChange;
      cbillChange = -cbillChange;
   end

   --create modification table
   local modification = {};

    modification.score = scoreChange;
    modification.xp = xpChange;
    modification.cbill = cbillChange;

   return modification;

end
----------------------------------------------------------------------------------------------------
function MWLL:ItemDamageInflicted(playerId, vehicleId, amount)
   if(self.debugAwards) then
      Log("entering ItemDamageInflicted function");
   end

  --make shure not to reward shooting on neutral targets
   if self:IsNeutral(vehicleId) then return nil end

   local teammateAffected = self:IsOnSameTeam(playerId , vehicleId) or false;
   local scoreChange    = self.scoreRewardList.DAMAGE_ITEM_MULT * amount;
   local xpChange       = self.cpList.DAMAGE_ITEM_MULT * amount;
   local cbillChange    = self.ppList.DAMAGE_ITEM_MULT * amount;


   if(teammateAffected) then
      scoreChange = -scoreChange;
      xpChange    = -xpChange;
      cbillChange = -cbillChange;
   end

   --create modification table
   local modification = {};

    modification.score = scoreChange;
    modification.xp = xpChange;
    modification.cbill = cbillChange;

   return modification;

end

----------------------------------------------------------------------------------------------------
function MWLL:ActorDamageInflicted(playerId, vehicleId, amount)
   if(self.debugAwards) then
      Log("entering ActorDamageInflicted function");
   end

  --make shure not to reward shooting on neutral targets
   if self:IsNeutral(vehicleId) then return nil end

   local teammateAffected = self:IsOnSameTeam(playerId , vehicleId) or false;
   local scoreChange    = self.scoreRewardList.DAMAGE_ACTOR_MULT * amount;
   local xpChange       = self.cpList.DAMAGE_ACTOR_MULT * amount;
   local cbillChange    = self.ppList.DAMAGE_ACTOR_MULT * amount;


   if(teammateAffected) then
      scoreChange = -scoreChange;
      xpChange    = -xpChange;
      cbillChange = -cbillChange;
   end

   --create modification table
   local modification = {};

    modification.score = scoreChange;
    modification.xp = xpChange;
    modification.cbill = cbillChange;

   return modification;

end

----------------------------------------------------------------------------------------------------
function MWLL:VehicleComponentDestruction(playerId, vehicleId, componentValue)
   if(self.debugAwards) then
      Log("entering VehicleComponentDestruction function");
   end

  --make shure not to reward shooting on neutral targets
   if self:IsNeutral(vehicleId) then return nil end

   local teammateAffected = self:IsOnSameTeam(playerId , vehicleId) or false;
   local scoreChange    = self.scoreRewardList.VEHICLE_COMPONENT_DESTROYED;
   local xpChange       = self.cpList.VEHICLE_COMPONENT_DESTROYED;
   local cbillChange    = self.ppList.VEHICLE_COMPONENT_DESTROYED;


   if(teammateAffected) then
      scoreChange = -scoreChange;
      xpChange    = -xpChange;
      cbillChange = -cbillChange;
   else
    scoreChange = scoreChange + (self.scoreRewardList.VEHICLE_COMPONENT_MULT * componentValue);
    xpChange = xpChange + (self.cpList.VEHICLE_COMPONENT_MULT * componentValue);
    cbillChange = cbillChange + (self.ppList.VEHICLE_COMPONENT_MULT * componentValue);
   end

   --create modification table
   local modification = {};

    modification.score = scoreChange;
    modification.xp = xpChange;
    modification.cbill = cbillChange;

   return modification;
end

----------------------------------------------------------------------------------------------------
function MWLL:TurretDestroyed(playerId, turretId)
   if(self.debugAwards) then
      Log("entering VehicleComponentDestruction function");
   end

  --make shure not to reward shooting on neutral targets
   if self:IsNeutral(turretId) then return nil end

   local teammateAffected = self:IsOnSameTeam(playerId , turretId) or false;
   local scoreChange    = self.scoreRewardList.TURRETKILL;
   local xpChange       = self.cpList.TURRETKILL;
   local cbillChange    = self.ppList.TURRETKILL;


   if(teammateAffected) then
      scoreChange = -scoreChange;
      xpChange    = -xpChange;
      cbillChange = -cbillChange;
   end

   --create modification table
   local modification = {};

    modification.score = scoreChange;
    modification.xp = xpChange;
    modification.cbill = cbillChange;

   return modification;
end

----------------------------------------------------------------------------------------------------
function MWLL:VehicleDestroyed(playerId, vehicleId)
   if(self.debugAwards) then
      Log("entering VehicleDestroyed function");
   end

  --make shure not to reward shooting on neutral targets
   if self:IsNeutral(vehicleId) then return nil end

   local teammateAffected = self:IsOnSameTeam(playerId , vehicleId) or false;
   local scoreChange = self.scoreRewardList.VEHICLE_KILL_MIN;
   local xpChange = self.cpList.VEHICLE_KILL_MIN;
   local cbillChange = self.ppList.VEHICLE_KILL_MIN;

   local vehicle = System.GetEntity(vehicleId or NULL_ENTITY);

   if (vehicle) then
      local def = self:GetItemDef(vehicle.builtas);

      if (def) then
         scoreChange =    math.max(scoreChange,    math.floor(def.price*self.scoreRewardList.VEHICLE_KILL_MULT)); -- we still need to give bonus for difference in tonnage
         xpChange    =    math.max(xpChange,       math.floor(def.price*self.cpList.VEHICLE_KILL_MULT)); -- we still need to give bonus for difference in tonnage
         cbillChange =    math.max(cbillChange,    math.floor(def.price*self.ppList.VEHICLE_KILL_MULT)); -- we still need to give bonus for difference in tonnage
      end
   end

   if(teammateAffected) then
      scoreChange = -scoreChange;
      xpChange    = -xpChange;
      cbillChange = -cbillChange;
   end



   --create modification table
   local modification = {};

    modification.score = scoreChange;
    modification.xp = xpChange;
    modification.cbill = cbillChange;

   return modification;
end


----------------------------------------------------------------------------------------------------
function MWLL:PlayerKilled(playerId, killedPlayer)
   if(self.debugAwards) then
      Log("entering PlayerKilled function");
   end

  --make shure not to reward shooting on neutral targets
   if self:IsNeutral(killedPlayer) then return nil end

   local teammateAffected = self:IsOnSameTeam(playerId , killedPlayer) or false;
   local scoreChange = self.scoreRewardList.KILL;
   local xpChange = self.cpList.KILL;
   local cbillChange = self.ppList.KILL;


   if(teammateAffected) then
      scoreChange = -scoreChange;
      xpChange = -xpChange;
      cbillChange = -cbillChange;

   else
      local killerRank = self:GetPlayerRank(playerId) or 0;
      local victimRank = self:GetPlayerRank(killedPlayer) or 0;
      local rankDifference = victimRank - killerRank;

      scoreChange = scoreChange + math.max(0, (rankDifference * self.scoreRewardList.KILL_RANKDIFF_MULT) );
      cbillChange = cbillChange + math.max(0, (rankDifference * self.ppList.KILL_RANKDIFF_MULT) );
      xpChange = xpChange + math.max(0, (rankDifference * self.cpList.KILL_RANKDIFF_MULT) );
   end

   --create modification table
   local modification = {};

    modification.score = scoreChange;
    modification.xp = xpChange;
    modification.cbill = cbillChange;

   return modification;

end

--------------------------------------------------------------------------------------------------
function MWLL:DamageAward(playerId, amount)
   if(self.debugAwards) then
      Log("entering DamageAward function");
   end

   local scoreChange = self.scoreRewardList.DAMAGE_AWARD_MULT * amount;
   local xpChange = self.cpList.DAMAGE_AWARD_MULT * amount;
   local cbillChange = self.ppList.DAMAGE_AWARD_MULT * amount;

   --create modification table
   local modification = {};

    modification.score = scoreChange;
    modification.xp = xpChange;
    modification.cbill = cbillChange;

   return modification;

end

------------------------------------------------------------------------------
function MWLL:VehicleSoldReward(playerId, affectedId, amount)
   if(self.debugAwards) then
      Log("entering VehicleSoldReward function");
   end

   local scoreChange = 0
   local xpChange = 0
   local cbillChange = amount * self.ppList.SELL_MULT

   --create modification table
   local modification = {};

  modification.score = scoreChange;
  modification.xp = xpChange;
  modification.cbill = cbillChange;

   return modification;
end

--------------------------------------------------------------------------------------------------
function MWLL:IsNeutral(entity)
  if self.game:GetTeam(entity) == 0 then
    return true
  end
  return false
end
« Last Edit: July 04, 2010, 11:57:56 PM by KingLeerUK »
"Speed is the essence of war. Take advantage of the enemy's unpreparedness."
- Sun-Tzu, The Art of War

Offline Virt

  • Star Colonel
  • ****
  • Posts: 1323
  • Karma: 53
Re: Scoring
« Reply #5 on: July 04, 2010, 09:23:57 AM »
Ah, that explains it then.
Creating Kodiak Moments since 1984.

Offline Incubus 24-7

  • Recruit
  • *
  • Posts: 141
  • Karma: 4
Re: Scoring
« Reply #6 on: July 04, 2010, 12:00:28 PM »
Ah, that explains it then.

yep i couldn't have phrased it better.

your honor, no more questions, your witness.
Home of the iMech - just apps no guns

Offline Pytak

  • MechWarrior
  • **
  • Posts: 218
  • Karma: 75
  • Weekend Warrior
    • pytak.org
Re: Scoring
« Reply #7 on: July 04, 2010, 12:21:15 PM »
I wouldn't copy paste the code here if I were you. The Devs might get sad about it.

Online Profane Arbiter

  • Star Captain
  • ***
  • Posts: 1190
  • Karma: 29
  • Ingame Handle: Contrition
Re: Scoring
« Reply #8 on: July 04, 2010, 02:35:49 PM »
Why? Well, if that's the case I fully understand if they remove it or ask that I do so.
"Speed is the essence of war. Take advantage of the enemy's unpreparedness."
- Sun-Tzu, The Art of War

Offline (TLL)Sky_walker

  • MWLL Developer
  • Living Legend
  • *
  • Posts: 2638
  • Karma: 65
  • Close Range Attack Forces
    • MWLL Wiki
Re: Scoring
« Reply #9 on: July 04, 2010, 04:14:32 PM »
Can you put it in
Code: [Select]
Codetag? So that there wouldn't be soooooo much to scroll down?
Just edit the post. :)
thx!
MWLL Wiki Newsletter: Wiki suffers from spammers and lack of activity - change it now, jump in and contribute with something useful! :D


Proud to be C.R.A.P. inspiration # MWLL Wiki Admin # MWLL Alpha Tester # Dev Team # MWLL Defense Force Mercenary - Battlemech Barracks