--- a/BuildingOnLinux.wiki Wed Oct 30 03:01:54 2019 +0000
+++ b/BuildingOnLinux.wiki Wed Oct 30 11:59:37 2019 +0100
@@ -43,7 +43,7 @@
sudo apt-get install ghc libghc-binary-dev libghc-bytestring-show-dev libghc-sandi-dev libghc-deepseq-dev libghc-hslogger-dev libghc-mtl-dev libghc-network-dev libghc-parsec3-dev libghc-utf8-string-dev libghc-vector-dev libghc-random-dev libghc-zlib-dev libghc-sha-dev libghc-entropy-dev libghc-regex-tdfa-dev libghc-aeson-dev libghc-yaml-dev libghc-text-dev
}}}
-Note that Haskell is also required to build Hedgewars 0.9.25 on 32 bit linux due to a FreePascal alignment bug triggered by an undisableable SDL2 CPU feature detection. 0.9.24 and 0.9.23 have same bug, so will not function properly on 32 bit Linux.
+Note that Haskell is also required to build Hedgewars 0.9.25 on 32 bit Linux due to a FreePascal alignment bug triggered by an undisableable SDL2 CPU feature detection. 0.9.24 and 0.9.23 have same bug, so will not function properly on 32 bit Linux.
== Fetching the source code ==
--- a/ConfigurationFiles.wiki Wed Oct 30 03:01:54 2019 +0000
+++ b/ConfigurationFiles.wiki Wed Oct 30 11:59:37 2019 +0100
@@ -373,7 +373,7 @@
Campaign variables are stored on a key-value basis, where the key is the name of the campaign variable and the value is the value of the campaign variable.
-Campaign variable names and their values can are chosen by the Lua script authors, but there are some special variables which are used to determine which missions are available in the main menu, and since 0.9.23, also to determine which missions and campaigns have been completed.
+Campaign variable names and their values can are chosen by the Lua script authors, but there are some special variables which are used to determine which missions are available in the main menu and to determine which missions and campaigns have been completed.
For linear campaigns, the variables `Progress` and `Won` are used.
For non-linear campaigns, the variables `UnlockedMissions`, `MissionX`, `MissionXWon` and `Won` are used.
@@ -398,7 +398,7 @@
Progress=4
}}}
-Simple 0.9.23 campaign with 6 missions. This campaign and all its missions have been unlocked and completed:
+Simple campaign with 6 missions. This campaign and all its missions have been unlocked and completed:
{{{
[Campaign%20Simple_Campaign_2]
@@ -437,4 +437,4 @@
|| `Lowscore` || Integer || Team's best score in this mission, where lower = better ||
|| `TimeRecord` || Integer || Team's best time (in milliseconds) in this mission, where lower = better ||
|| `TimeRecordHigh` || Integer || Team's best time (in milliseconds) in this mission, where higher = better ||
-|| `AccuracyRecord` || Integer || Team's highest accuracy in this mission, in percent ||
\ No newline at end of file
+|| `AccuracyRecord` || Integer || Team's highest accuracy in this mission, in percent ||
--- a/GearTypes.wiki Wed Oct 30 03:01:54 2019 +0000
+++ b/GearTypes.wiki Wed Oct 30 11:59:37 2019 +0100
@@ -59,8 +59,8 @@
|| [GearTypes#gtIceGun `gtIceGun`] || Freezer ||
|| [GearTypes#gtKamikaze `gtKamikaze`] || Hegehog going kamikaze ||
|| [GearTypes#gtKnife `gtKnife`] || Cleaver ||
-|| [GearTypes#gtMinigun `gtMinigun`] || Minigun (0.9.24) ||
-|| [GearTypes#gtMinigunBullet `gtMinigunBullet`] || Minigun bullet (0.9.24) ||
+|| [GearTypes#gtMinigun `gtMinigun`] || Minigun ||
+|| [GearTypes#gtMinigunBullet `gtMinigunBullet`] || Minigun bullet ||
|| [GearTypes#gtPiano `gtPiano`] || Piano from piano strike ||
|| [GearTypes#gtPickHammer `gtPickHammer`] || Pickhammer ||
|| [GearTypes#gtRCPlane `gtRCPlane`] || RC plane ||
@@ -101,7 +101,6 @@
This section gives longer description of the various gear types and how their values (i.e. tag, pos, timer, health, etc.) are interpreted. The gear values are pretty chaotic, so they are described for each gear seperately. Use the various setter and getter functions for gears to modifiy the gear values.
In Lua, use the functions `GetGearPos`, `SetGearPos`, `GetTag`, `SetTag`, `GetTimer`, `SetTimer`, `GetHealth`, `SetHealth`, `GetFlightTime`, `SetFlightTime`, `GetGearValues` and `SetGearValues` to query or modify the gear values.
-Note: The gear value “`Boom`” has been introduced in Hedgewars 0.9.23.
=== Land objects ===
This is a list of gears which usually stay on the land for a long time and stay for several rounds and can’t normally directly placed by players.
@@ -287,7 +286,7 @@
* `WDTimer`: Initial timer value (in milliseconds) of an activated air mine. The `Timer` is reset to this value if the air mine gets re-activated.
* `Angle`: Range in which it seeks and follows hedgehogs, in pixels. If a hedgehog is within this range, the air mine will start following. Set it to `0xFFFFFFFF` for an infinite seek range. Set to `0` to disable following. This also indirectly sets the escape distance which hog need to reach for the air mine to stop following. It is 6 times this value. Default: 175 (and an implied default escape distance of 1050)
* `Power`: Speed in which it seeks and follows hedgehogs.
- * `Boom`: Explosion size and damage (since 0.9.23). Default: 25
+ * `Boom`: Explosion size and damage. Default: 25
* `Karma`: (1.0.0) If `1`, mine timer display is hidden when object information view is enabled
==== `gtBallGun` ====
@@ -626,4 +625,4 @@
== Reference ==
For a current list of the gears look at `hedgewars/uTypes.pas` at
the `TGearType` enumeration:
-[https://hg.hedgewars.org/hedgewars/file/default/hedgewars/uTypes.pas#l92]
\ No newline at end of file
+[https://hg.hedgewars.org/hedgewars/file/default/hedgewars/uTypes.pas#l92]
--- a/LuaAudio.wiki Wed Oct 30 03:01:54 2019 +0000
+++ b/LuaAudio.wiki Wed Oct 30 11:59:37 2019 +0100
@@ -9,7 +9,7 @@
To play a voice (see [Taunts] for a list), you must also set `gearUid`. `gearUid` is the hedgehog gear which is used to “talk”.
-If you play a voice, by default the voice will respect an internal queue and might be played with an delay in order to prevent annoying voice overlapping. Since version 0.9.24, you can disable this behaviour and force Hedgewars to instantly play the voice by also setting `instaVoice` to `true`. Only use `instaVoice` when you really need it.
+If you play a voice, by default the voice will respect an internal queue and might be played with an delay in order to prevent annoying voice overlapping. You can disable this behaviour and force Hedgewars to instantly play the voice by also setting `instaVoice` to `true`. Only use `instaVoice` when you really need it.
== `PlayMusicSound(soundId)` (0.9.25) ==
Plays a sound as replacement for the background music. The sound is played once. The main music is paused and the sound is played instead. The main background music does not resume automatically, so you should call `StopMusicSound` after a while.
@@ -22,7 +22,7 @@
== `StopMusicSound(soundId)` (0.9.25) ==
Stops the specified “music sound” (if it was still playing) and resumes the main background music.
-== `SetSoundMask(soundId, isMasked)` (0.9.24) ==
+== `SetSoundMask(soundId, isMasked)` ==
Disables a given sound (including taunts) from being played by the engine. `soundId` is a valid sound ID on [Sounds] or [Taunts]. `isMasked` is a boolean. If `true`, the sound will not be played by the engine anymore. If `false`, playing this sound is allowed again.
Sounds played by the Lua function `PlaySound` will always work, however, and ignore the sound mask.
--- a/LuaEvents.wiki Wed Oct 30 03:01:54 2019 +0000
+++ b/LuaEvents.wiki Wed Oct 30 11:59:37 2019 +0100
@@ -69,7 +69,7 @@
=== <tt>onNewTurn()</tt> ===
This function calls at the start of every turn. You can set `ReadyTimeLeft` here to change the ready time for this turn. (See also: `Ready`)
-=== <tt>onEndTurn()</tt> (0.9.24) ===
+=== <tt>onEndTurn()</tt> ===
This function calls at the end of every turn. The end of a turn is defined as the point of time after the current hedgehog lost control and all the important gears are either gone or have settled.
`CurrentHedgehog` holds the gear ID of the hedgehog whose turn just ended.
@@ -78,7 +78,7 @@
Because this function is called *before* victories are checked, this is useful to set up your victory conditions here.
-=== <tt>onSkipTurn()</tt> (0.9.24) ===
+=== <tt>onSkipTurn()</tt> ===
This function calls when a hog skips its turn.
=== <tt>onCaseDrop(gear)</tt> (1.0.0) ===
@@ -112,8 +112,6 @@
For example, it is called right after a bazooka is fired, when both shots of a shotgun have been fired, when extra time is used, or when all 4 shots of a portable portal device have been fired. It is also called when using a multi-shot ammo has been aborted by changing the weapon selection mid-way, because this still uses up the ammo.
-*Warning:* In 0.9.24 or earlier, you must not manipulate any ammo within this callback, e.g. by using `AddAmmo`. The ammo storage might become garbled otherwise.
-
== Controls ==
=== <tt>onAttack()</tt> ===
This function is called when the current player presses the attack key.
@@ -250,4 +248,4 @@
This is used while a special hand-drawn map is loaded. The engine is building these hand-drawn maps by reading points from the map definition. Optionally, some of these points may be “special”. These are not actually drawn on the map, but are used to store additional information for a position on the map. Special points currently need to be added manually in the map, the in-game editor is not able to add those yet.
Now, when such a special point at the coordinates `x` and `y` with an assigned value of `flags` is added, this function is called. `flags` is a whole number between `0` and `255` inclusive.
-This function is used in Racer and !TechRacer to define waypoints.
\ No newline at end of file
+This function is used in Racer and !TechRacer to define waypoints.
--- a/LuaGUI.wiki Wed Oct 30 03:01:54 2019 +0000
+++ b/LuaGUI.wiki Wed Oct 30 11:59:37 2019 +0100
@@ -91,7 +91,7 @@
== <tt>!GetZoom()</tt> ==
Returns the current zoom level.
-== <tt>!SetCinematicMode(enable)</tt> (0.9.23) ==
+== <tt>!SetCinematicMode(enable)</tt> ==
Turns on or off cinematic mode. Cinematic mode can be used for cutscenes etc.
If `enable` is set to `true`, cinematic mode is enabled,
if it is `false`, cinematic mode is disabled.
--- a/LuaGameplay.wiki Wed Oct 30 03:01:54 2019 +0000
+++ b/LuaGameplay.wiki Wed Oct 30 11:59:37 2019 +0100
@@ -22,10 +22,10 @@
Returns `true` if the specified gameflag is enabled, otherwise `false`.
== Turns ==
-=== <tt>SkipTurn()</tt> (0.9.24) ===
+=== <tt>SkipTurn()</tt> ===
Forces the current hedgehog to skip its turn.
-=== `EndTurn([noTaunts])` (0.9.23) ===
+=== `EndTurn([noTaunts])` ===
Ends the current turn immediately.
Normally, a “Coward” taunt may be played and an announcer message may be shown (depending on the situation). Set the optional `noTaunts` parameter to `true` to force the engine to never play a taunt or show a message. `noTaunts` is `false` by default.
@@ -68,13 +68,13 @@
=== <tt>!SetWind(windSpeed)</tt> ===
Sets the current wind in the range of -100 to 100 inclusive. Use together with `gfDisableWind` for full control.
-=== <tt>!GetWind()</tt> (0.9.24) ===
+=== <tt>!GetWind()</tt> ===
Returns current wind, expressed as a floating point number between -100 to 100 inclusive. Note there may be rounding errors.
=== <tt>!SetMaxBuildDistance(distInPx)</tt> ===
Sets the maximum building distance for of girders and rubber bands in pixels to `distInPx`. If `distInPx` is `0`, the limit is disabled. If called without arguments, the distance will be reset to the default value.
-=== <tt>Explode(x, y, radius[, options])</tt> (0.9.24) ===
+=== <tt>Explode(x, y, radius[, options])</tt> ===
Cause an explosion or erase land, push or damage gears.
By default, an explosion destroys a circular piece of land and damages and pushes gears in its radius.
@@ -148,7 +148,7 @@
=== <tt>!SetAmmoDelay(ammoType, delay)</tt> ===
Changes the delay of a specified [AmmoTypes Ammo Type]. If `delay` is set to `9999`, the ammo type is disabled indefinitely.
-=== <tt>!SetAmmoTexts(ammoType, name, caption, description [, showExtra])</tt> (0.9.23) ===
+=== <tt>!SetAmmoTexts(ammoType, name, caption, description [, showExtra])</tt> ===
Allows you to overwrite the displayed name and tooltip descriptions of a given ammo type. This function must only be called either inside the `onGameStart` callback function, or after the engine has called `onGameStart`.
* `ammoType`: The ammo type to set the text for
@@ -164,7 +164,7 @@
-- Overwrites bazooka name and description
SetAmmoTexts(amBazooka, "Spoon Missile", "Crazy weapon", "This crazy weapon looks like a spoon and explodes on impact.|Attack: Hold to launch with more power")</code>
-=== <tt>!SetAmmoDescriptionAppendix(ammoType, descAppend)</tt> (0.9.23) ===
+=== <tt>!SetAmmoDescriptionAppendix(ammoType, descAppend)</tt> ===
Will set a string `descAppend` to be appended below the “core” description (ammo tooltip) of the specified `ammoType`, without changing the ordinary description.
Note that calling this function always sets the complete appended string, you can't use this function to append multiple texts in row.
@@ -184,7 +184,7 @@
Note: By default, ammo is per-team, so calling `AddAmmo` for a hedgehog will add/set the ammo for the whole team. The game flags `gfPerHogAmmo` and `gfSharedAmmo` change how ammo is managed in the game, so these game flags also affect `AddAmmo`.
-=== <tt>!GetAmmoName(ammoType [, ignoreOverwrite ])</tt> (0.9.23) ===
+=== <tt>!GetAmmoName(ammoType [, ignoreOverwrite ])</tt> ===
Returns the localized name for the specified `ammoType`, taking an ammo name overwritten by `SetAmmoTexts` into account. If `ignoreOverwrite` is `true`, this function will always return the original ammo name of the weapon and ignores names which may have been overwritten by `SetAmmoTexts`.
=== <tt>!SetAmmoSlot(ammoType, slot)</tt> (1.0.0) ===
@@ -216,7 +216,7 @@
|| 6 || long || vertical ||
|| 7 || long || increasing right ||
-=== <tt>!PlaceRubber(x, y, frameIdx)</tt> (0.9.23) ===
+=== <tt>!PlaceRubber(x, y, frameIdx)</tt> ===
Attempts to place a rubber with centre points `x`, `y` and a certain orientation, specified by `frameIdx`. The rubber can only be placed in open space and must not collide with anything so this function may fail. It will return `true` on successful placement and `false` on failure.
These are the accepted values for `frameIdx`:
@@ -335,13 +335,13 @@
=== <tt>!GetInputMask()</tt> ===
Returns the current input mask of the player.
-=== <tt>!SetVampiric(bool)</tt> (0.9.24) ===
+=== <tt>!SetVampiric(bool)</tt> ===
Toggles vampirism mode for this turn. Set `bool` to `true` to enable (same effect as if the hedgehog has used Vampirism), `false` to disable.
=== <tt>!GetVampiric()</tt> (0.9.25) ===
Returns true if vampirism mode is currently active.
-=== <tt>!SetLaserSight(bool)</tt> (0.9.24) ===
+=== <tt>!SetLaserSight(bool)</tt> ===
Toggles laser sight for this turn. Set `bool` to `true` to enable (same effect as if the hedgehog has used Laser Sight), `false` to disable.
=== <tt>!GetLaserSight()</tt> (0.9.25) ===
@@ -418,13 +418,13 @@
<code language="lua">-- Add mission team with default clan color
AddMissionTeam(-1)</code>
-=== <tt>!GetTeamName(teamIdx)</tt> (0.9.24) ===
+=== <tt>!GetTeamName(teamIdx)</tt> ===
Returns the name of the team with the index `teamIdx`. `teamIdx` is a number between 0 and `TeamsCount-1`.
-=== <tt>!GetTeamIndex(teamname)</tt> (0.9.24) ===
+=== <tt>!GetTeamIndex(teamname)</tt> ===
Returns the team index (number between 0 and `TeamsCount-1`) of the team with the name `teamName`.
-=== <tt>!GetTeamClan(teamname)</tt> (0.9.24) ===
+=== <tt>!GetTeamClan(teamname)</tt> ===
Returns the clan ID of the team with the given `teamName`.
=== <tt>!DismissTeam(teamname)</tt> ===
@@ -432,7 +432,7 @@
This function must not be called while it's the team's turn.
-=== <tt>!SetTeamLabel(teamname[, label])</tt> (0.9.24) ===
+=== <tt>!SetTeamLabel(teamname[, label])</tt> ===
Set or remove a label for the team with the given team name. The label is a string and will be displayed next to the team's health bar.
If `label` is `nil`, the label will be removed.
@@ -471,4 +471,4 @@
=== <tt>!GetRandom(number)</tt> ===
Returns a randomly generated whole number in the range of `0` to `number - 1`. `number` must be a whole number >= 1. This random number uses the game seed, so is synchronised, and thus safe for multiplayer and saved games.
-Use `GetRandom` for anything that could impact the engine state. For example, a visual gear could simply use Lua’s `math.random`, but adding a regular gear should use `GetRandom`.
\ No newline at end of file
+Use `GetRandom` for anything that could impact the engine state. For example, a visual gear could simply use Lua’s `math.random`, but adding a regular gear should use `GetRandom`.
--- a/LuaGears.wiki Wed Oct 30 03:01:54 2019 +0000
+++ b/LuaGears.wiki Wed Oct 30 11:59:37 2019 +0100
@@ -85,7 +85,7 @@
=== `SpawnHealthCrate(x, y, [, health])` ===
Spawns a health crate at the specified position. If `x` and `y` are set to 0, the crate will spawn on a random position (but always on land). Set `health` for the initial health contained in the health crate. If not set, the default health (`HealthCaseAmount`) is used. Do not use a negative value for `health`.
-=== `SpawnSupplyCrate(x, y, ammoType [, amount])` (0.9.24) ===
+=== `SpawnSupplyCrate(x, y, ammoType [, amount])` ===
Spawns an ammo or utility crate at the specified position with the given ammo type and an optional amount (default: 1). The crate type is chosen automatically based on the ammo type.
Otherwise, this function behaves like `SpawnAmmoCrate`.
@@ -162,7 +162,7 @@
=== `GetGearType(gearUid)` ===
This function returns the [GearTypes gear type] for the specified gear, if it exists. If it doesn't exist, `nil` is returned.
-=== `GetVisualGearType(vgUid)` (0.9.23) ===
+=== `GetVisualGearType(vgUid)` ===
This function returns the [VisualGearTypes visual gear type] for the specified visual gear, if it exists. If it doesn't exist, `nil` is returned.
=== `GetState(gearUid)` ===
@@ -517,7 +517,7 @@
|| `heResurrectable` || Whether to resurrect the hog on death || With a non-zero value, the hedgehog will be resurrected and teleported to a random safe location on death. Resurrection may fail and the hedgehog can still die when there is no or very, very little land left. `0` disables this. ||
|| `heResurrected` || Whether the hedgehog has been resurrected once. This is only a subtle graphical effect. || With a non-zero value, the hedgehog was resurrected, `0` otherwise. ||
|| `heFrozen` || Freeze level. Frozen hedgehogs skip turn, are heavy and take half damage || The hog is considered frozen if the value is `256` or higher, otherwise not. A number of `256` or higher denotes “how frozen” the hedgehog is, i.e. how long it takes to melt. The freezer sets this to `199999` initially. The value will be reduced by `50000` each round. Being hit by a flame reduces this number by `1000`. The values `0` to `255` are used for the freeze/melt animations. ||
-|| `heArtillery` || If enabled, the hedgehog can't walk (since 0.9.24). || `0` = disabled. `1` = permanently enabled. `2` = temporarily enabled (used by sniper rifle between shots) ||
+|| `heArtillery` || If enabled, the hedgehog can't walk. || `0` = disabled. `1` = permanently enabled. `2` = temporarily enabled (used by sniper rifle between shots) ||
Example (sets all bots poisoned with poison damage of 1):
@@ -536,7 +536,7 @@
=== `GetHogFlag(gearUid)` ===
Returns the name of the flag of the team of the specified hedgehog gear.
-=== `GetHogFort(gearUid)` (0.9.23) ===
+=== `GetHogFort(gearUid)` ===
Returns the name of the fort of the team of the specified hedgehog gear.
=== `GetHogGrave(gearUid)` ===
@@ -555,7 +555,7 @@
<code lang="lua">GetAmmoTimer(CurrentHedgehog, amGrenade)
-- May return 1000, 2000, 3000, 4000 or 5000</code>
-=== `HealHog(gearUid, healthBoost[, showMessage[, tint]])` (0.9.24) ===
+=== `HealHog(gearUid, healthBoost[, showMessage[, tint]])` ===
Convenience function to increase the health of a hedgehog with default visual effects.
Specifically, this increases the health of the hedgehog gear with the given ID `gearUid` by `healthBoost`, displays some healing particles at the hedgehog and shows the health increae as a message. This is similar to the behavour after taking a health crate, or getting a health boost from vampirism.
@@ -576,7 +576,7 @@
Returns true if hedgehog gear is hidden (e.g. via `HideHog` or the !TimeBox), false if it isn't, nil if that hedgehog never existed.
=== `HideHog(gearUid)` ===
-Removes a hedgehog from the map. The hidden hedgehog can be restored with `RestoreHog(gearUid)`. Since 0.9.23, returns `true` on success and `false` on failure (if gear does not exist / hog is already hidden). You must not hide all hogs at once.
+Removes a hedgehog from the map. The hidden hedgehog can be restored with `RestoreHog(gearUid)`. Returns `true` on success and `false` on failure (if gear does not exist / hog is already hidden). You must not hide all hogs at once.
Example:
@@ -592,7 +592,7 @@
HideHog(gear) -- Hide the newly created gear.
RestoreHog(gear) -- Restore the newly hidden gear.</code>
-=== `IsHogLocal(gearUid)` (0.9.23) ===
+=== `IsHogLocal(gearUid)` ===
Returns `true` if the specified hedgehog gear is controlled by a human player on the computer on which Hedgewars runs on (i.e. not over a computer over the network). Also returns `true` if the hog is a member of any of the local clans. Returns `false` otherwise.
If the game has a mission team (see `AddMissionTeam`), this function behaves a little different: It only may return `true` for hogs in the same clan as the mission team and always returns `false` for hogs from other clans.
--- a/LuaLibraryAnimate.wiki Wed Oct 30 03:01:54 2019 +0000
+++ b/LuaLibraryAnimate.wiki Wed Oct 30 11:59:37 2019 +0100
@@ -25,7 +25,7 @@
=== `AnimInit([startAnimating])` ===
Initializes variables used by the other functions. Needs to be called in `onGameInit`.
-Since 0.9.23, an optional convenience parameter `startAnimating` is available; if set to `true`, the game will start in “animation” mode which enables cinematic mode and disables all controls except precise for skipping. This is useful if you want to indicate that an animation will be played right at the start and the player must not be allowed to use any controls before the animation is over. If you set this parameter to `true`, you also *must* play at least one animation after this, otherwise the game will be stuck.
+An optional convenience parameter `startAnimating` is available; if set to `true`, the game will start in “animation” mode which enables cinematic mode and disables all controls except precise for skipping. This is useful if you want to indicate that an animation will be played right at the start and the player must not be allowed to use any controls before the animation is over. If you set this parameter to `true`, you also *must* play at least one animation after this, otherwise the game will be stuck.
=== `AnimInsertStepNext(step)` ===
Inserts `step` after the current step (read: action) in the cinematic array. Useful when an action depends on variables (e.g. positions). It can be used mostly with `AnimCustomFunction`. Note: In case of multiple consecutive calls, steps need to be added in reverse order.
--- a/LuaUtil.wiki Wed Oct 30 03:01:54 2019 +0000
+++ b/LuaUtil.wiki Wed Oct 30 11:59:37 2019 +0100
@@ -38,10 +38,10 @@
=== <tt>WriteLnToConsole(string)</tt> ===
Writes `string` to `Logs/game0.log`, found in the user data directory.
-=== <tt>WriteLnToChat(string)</tt> (0.9.24) ===
+=== <tt>WriteLnToChat(string)</tt> ===
Writes `string` into the chat.
-=== <tt>DumpPoint(x, y)</tt> (0.9.23) ===
+=== <tt>DumpPoint(x, y)</tt> ===
Converts the whole numbers `x` and `y` to strings and writes them to `Logs/game0.log`, one line each.
=== <tt>StartGhostPoints(count)</tt> ===
@@ -66,7 +66,7 @@
With your report we can fix the shortcoming in future releases. We will try to remove the reliance on `ParseCommand` as good as possible. This will allow scripts to use the previously missing feature in a way that won’t break!
-There are many available commands, but actual use in scripting is rare, and even then it's discouraged for long-term use. As of 0.9.24, the only command used in official scripts is:
+There are many available commands, but actual use in scripting is rare, and even then it's discouraged for long-term use. The only command used in official scripts is:
* `"draw <map>"`: Draws a hand-drawn map. `MapGen` must be `mgDrawn` for this to work. `<map>` is a string which must follow the format specified in [DrawnMapFormat]
@@ -82,4 +82,4 @@
See [EngineTestCases] to learn more about testing the engine.
== Library functions ==
-For more utility functions, you might want to check out the [LuaLibraries Lua libraries].
\ No newline at end of file
+For more utility functions, you might want to check out the [LuaLibraries Lua libraries].
--- a/RacerRoomSetup.wiki Wed Oct 30 03:01:54 2019 +0000
+++ b/RacerRoomSetup.wiki Wed Oct 30 11:59:37 2019 +0100
@@ -47,17 +47,19 @@
Put checker.ini into ~/.hedgewars with such content:
{{{
[engine]
-exe=/usr/home/hedgewars/0.9.24/bin/hwengine
-prefix=/usr/home/hedgewars/0.9.24/share/hedgewars/Data
+exe=/usr/home/hedgewars/<VERSION>/bin/hwengine
+prefix=/usr/home/hedgewars/<VERSION>/share/hedgewars/Data
}}}
When updating between versions, update version in checker's source, run this on the server's database to have new stats appear on the records page (see also [ProtocolNumbers]):
{{{
-INSERT INTO gameversions (protocol, version) VALUES (55, '0.9.24'), (56, '0.9.25-dev');
+INSERT INTO gameversions (protocol, version) VALUES (59, '1.0.0'), (60, '1.0.1-dev');
}}}
-If you see too many "Check failed" messages in your checker's log, check your setup. If you fixed a problem with engine, you might want to recheck previously failed replays by moving them from "failed" to "replays" folder on the game server. You may do it on live system, that's np.
+(Replace the version numbers and protocol numbers with the correct ones.)
+
+If you see too many "Check failed" messages in your checker's log, check your setup. If you fixed a problem with engine, you might want to recheck previously failed replays by moving them from "failed" to "replays" folder on the game server. You may do it on a live system, that's not a problem.
-It is also not a problem to stop checker at any point. If you have engine hanging for too long (shouldn't happen since .24) and game0.log suggests that there's nothing going on in the game being replayed, just kill engine process to count this attempt as failed.
+It is also not a problem to stop checker at any point. If you have engine hanging for too long (shouldn't happen since 0.9.24) and `game0.log` suggests that there's nothing going on in the game being replayed, just kill engine process to count this attempt as failed.
-It is fine to have multiple instances of checker running, even on the same host and on the same account, if you like. This helps when you have lots of replays to check and some spare cpu cores.
\ No newline at end of file
+It is fine to have multiple instances of checker running, even on the same host and on the same account, if you like. This helps when you have lots of replays to check and some spare CPU cores.
--- a/ThemeCfg.wiki Wed Oct 30 03:01:54 2019 +0000
+++ b/ThemeCfg.wiki Wed Oct 30 11:59:37 2019 +0100
@@ -29,8 +29,6 @@
=== `hidden` ===
If this key is present in `theme.cfg` (the value does not matter), the theme will be hidden from the theme selection menu. Background themes *must* be hidden.
-This key has been added in 0.9.24.
-
=== `ice` ===
If this key is present (any value), girders become slippery like ice. This also applies to placed girders. This significantly changes the gameplay of your theme, so use wisely. If this key is not present, the terrain is not slippery.
@@ -172,8 +170,6 @@
<code>Default: 1, 0, 1</code>
-This key has been added in 0.9.23.
-
=== `sd-water-animation` ===
Sudden Death equivalent of `water-animation`, uses `SDWater.png`.
@@ -185,8 +181,6 @@
<code>Default: $00, $00, $00</code>
-This key has been added in 0.9.23.
-
=== `rq-sky` ===
The sky color in reduced quality mode. If present, it is used instead of `sky` on low quality.
@@ -279,4 +273,4 @@
=== `fallback-sd-music` ===
Like `fallback-music`, except it's for `sd-music`. If you have set a custom `sd-music`, you should also set `fallback-sd-music`, otherwise there will be silence if the track in `sd-music` is missing.
-In version 1.0.0, this will default to `sdmusic.ogg` instead of silence.
\ No newline at end of file
+In version 1.0.0, this will default to `sdmusic.ogg` instead of silence.
--- a/Themes.wiki Wed Oct 30 03:01:54 2019 +0000
+++ b/Themes.wiki Wed Oct 30 11:59:37 2019 +0100
@@ -9,7 +9,7 @@
=== Theme types ===
*Full themes* are themes which can be used together with random maps. Those usually appear in the multiplayer screen for selection as well. Most themes are full themes and when talking about themes without qualification, full themes are meant.
-*Background themes* are minimal themes without this capability. They lack land textures, thus they can only be used as a background (hence the name). Background themes work only together with image maps or forts. As of 0.9.24, there are no background themes in Hedgewars. Background themes *must* be hidden.
+*Background themes* are minimal themes without this capability. They lack land textures, thus they can only be used as a background (hence the name). Background themes work only together with image maps or forts. As of 1.0.0, there are no background themes in Hedgewars. Background themes *must* be hidden.
=== Theme structure ===
Technically, a theme consists of a configuration file and many media files (PNG images). Themes can define many images, or just a very few. You can set flakes, clouds, water color, the background, land texture and much, much more. Many files and settings are optional and have (more or less) sane defaults.
--- a/VisualGearTypes.wiki Wed Oct 30 03:01:54 2019 +0000
+++ b/VisualGearTypes.wiki Wed Oct 30 11:59:37 2019 +0100
@@ -1,6 +1,6 @@
#summary List of all visual gear types
-This is a list of available visual gear types, as of 0.9.23.
+This is a list of available visual gear types.
For a current list of the visual gear types look at `hedgewars/uTypes.pas` at
the `TVisualGearType` enumeration: https://hg.hedgewars.org/hedgewars/file/default/hedgewars/uTypes.pas#l115
@@ -111,4 +111,4 @@
* `X`, `Y`: Start point of line
* `dX`, `dY`: End point of line
* `Timer`: Life time (default: 0)
- * `Tint`: Opacity (0-255). The color itself can't be changed
\ No newline at end of file
+ * `Tint`: Opacity (0-255). The color itself can't be changed