# HG changeset patch # User nemo # Date 1293209674 18000 # Node ID fa7ad5f3725ff3c48490902439186421b31b8017 # Parent debfdc340e68076636b3e464147f1139949239ae Make basic training solvable again. Freeze RNG at current version for less of this kind of issue in future, and a bit more savable of seeds. Disable offsets in preparation for release. diff -r debfdc340e68 -r fa7ad5f3725f hedgewars/uRandom.pas --- a/hedgewars/uRandom.pas Fri Dec 24 10:04:01 2010 -0500 +++ b/hedgewars/uRandom.pas Fri Dec 24 11:54:34 2010 -0500 @@ -58,7 +58,7 @@ cirbuf[i]:= byte(Seed[i + 1]); for i:= Length(Seed) to 54 do - cirbuf[i]:= $A98765 + (cNetProtoVersion * 2); // odd number + cirbuf[i]:= $A98765 + 68; // odd number for i:= 0 to 1023 do GetNext end; diff -r debfdc340e68 -r fa7ad5f3725f hedgewars/uUtils.pas --- a/hedgewars/uUtils.pas Fri Dec 24 10:04:01 2010 -0500 +++ b/hedgewars/uUtils.pas Fri Dec 24 11:54:34 2010 -0500 @@ -277,18 +277,22 @@ function GetLaunchX(at: TAmmoType; dir: LongInt; angle: LongInt): LongInt; begin + GetLaunchX:= 0 +(* if (Ammoz[at].ejectX <> 0) or (Ammoz[at].ejectY <> 0) then GetLaunchX:= sign(dir) * (8 + hwRound(AngleSin(angle) * Ammoz[at].ejectX) + hwRound(AngleCos(angle) * Ammoz[at].ejectY)) else - GetLaunchX:= 0 + GetLaunchX:= 0 *) end; function GetLaunchY(at: TAmmoType; angle: LongInt): LongInt; begin + GetLaunchY:= 0 +(* if (Ammoz[at].ejectX <> 0) or (Ammoz[at].ejectY <> 0) then GetLaunchY:= hwRound(AngleSin(angle) * Ammoz[at].ejectY) - hwRound(AngleCos(angle) * Ammoz[at].ejectX) - 2 else - GetLaunchY:= 0 + GetLaunchY:= 0*) end; function CheckNoTeamOrHH: boolean; diff -r debfdc340e68 -r fa7ad5f3725f share/hedgewars/Data/Missions/Training/Basic_Training_-_Bazooka.lua --- a/share/hedgewars/Data/Missions/Training/Basic_Training_-_Bazooka.lua Fri Dec 24 10:04:01 2010 -0500 +++ b/share/hedgewars/Data/Missions/Training/Basic_Training_-_Bazooka.lua Fri Dec 24 11:54:34 2010 -0500 @@ -62,7 +62,7 @@ -- Things we don't modify here will use their default values. -- The base number for the random number generator - Seed = 0 + Seed = 1 -- Game settings and rules GameFlags = gfMultiWeapon + gfOneClanMode + gfSolidLand -- The time the player has to move each round (in ms) diff -r debfdc340e68 -r fa7ad5f3725f share/hedgewars/Data/Missions/Training/Basic_Training_-_Shotgun.lua --- a/share/hedgewars/Data/Missions/Training/Basic_Training_-_Shotgun.lua Fri Dec 24 10:04:01 2010 -0500 +++ b/share/hedgewars/Data/Missions/Training/Basic_Training_-_Shotgun.lua Fri Dec 24 11:54:34 2010 -0500 @@ -66,11 +66,11 @@ -- Things we don't modify here will use their default values. -- The base number for the random number generator - Seed = 0 + Seed = 1 -- Game settings and rules GameFlags = gfMultiWeapon + gfOneClanMode -- The time the player has to move each round (in ms) - TurnTime = 25000 + TurnTime = 30000 -- The frequency of crate drops CaseFreq = 0 -- The number of mines being placed