<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wiki.soldat.pl/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=H</id>
		<title>Soldat Community Wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.soldat.pl/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=H"/>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php/Special:Contributions/H"/>
		<updated>2026-05-26T02:24:14Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=SC3_Changelog&amp;diff=3244</id>
		<title>SC3 Changelog</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=SC3_Changelog&amp;diff=3244"/>
				<updated>2020-05-10T08:50:31Z</updated>
		
		<summary type="html">&lt;p&gt;H: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Full releases==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! SoldatServer Version !! Changelog&lt;br /&gt;
|-&lt;br /&gt;
| 2.8.2 ||&lt;br /&gt;
 + Added procedure [[TActivePlayer.RequestDiscordToken]]&lt;br /&gt;
 + Added [[TGame.OnSteamAuth]] event&lt;br /&gt;
 + Added [[TActivePlayer.SteamID]] and [[TActivePlayer.SteamIDString]] properties&lt;br /&gt;
 + Added [[TMath|ScriptMath]] unit&lt;br /&gt;
 + Added arctan to SC2&lt;br /&gt;
 + Added SC3 [[TActivePlayer.ChangeTeam|TActivePlayer.ChangeTeam(Team, JoinType)]]&lt;br /&gt;
 + Added missing [[TActivePlayer.PlaySound]]&lt;br /&gt;
 + Added Players.Active[] and Players.Active.Count to SC3&lt;br /&gt;
 + Added OnBeforeJoinTeam event to SC3&lt;br /&gt;
 - Removed TTeam.Add&lt;br /&gt;
&lt;br /&gt;
 ~ Modified SC3 Player.OnBeforeRespawn now returns spawn position&lt;br /&gt;
 ~ Modified SC3 TTeam.Players[] property to return TActivePlayer instead of TPlayer&lt;br /&gt;
 ~ Modified SC3 TActivePlayer.Dummy is now RW&lt;br /&gt;
 ~ Modified SC3 TActivePlayer.Alive is now read only (R)&lt;br /&gt;
 ~ Modified KickPlayer fails on admin only if it's a ping, flood or vote related kick&lt;br /&gt;
 ~ Modified TPlayer.Health and TPlayer.Vest are RW now&lt;br /&gt;
 ~ Marked SC3 OnTCPCommand as deprecated&lt;br /&gt;
 ~ Moved OnBeforeMapChange event to fire at round end (5s before &amp;quot;real&amp;quot; map switch)&lt;br /&gt;
 &lt;br /&gt;
 * Fixed SC3 OnLeaveGame giving wrong team parameter, possibly crashing the server&lt;br /&gt;
 * Fixed SC3 OnAdminCommand sometimes not honoring the result&lt;br /&gt;
 * Fixed SC3 TActivePlayer.ChangeTeam not honoring Team parameter correctly&lt;br /&gt;
 * Fixed ForceWeapon function working with wrong Gun objects&lt;br /&gt;
 * Fixed console executed commands not calling Game.OnAdminCommand in SC3&lt;br /&gt;
 * Fixed regenerating polygons not calling OnPlayerDamage&lt;br /&gt;
 * Fixed TActivePlayer.Ping is always 1 #666&lt;br /&gt;
|-&lt;br /&gt;
| 2.8.1 ||&lt;br /&gt;
 + Added [[TActiveBullet.Owner]] property (Read only)&lt;br /&gt;
 + Added [[TScript.OnUnhandledException]]&lt;br /&gt;
 &lt;br /&gt;
 ~ Modified [[TPlayer.Alive]], [[TActivePlayer.IsAdmin|IsAdmin]], [[TActivePlayer.Human|Human]] and [[TPlayer.Dummy|Dummy]] properties to also check if player is active and return accordingly.&lt;br /&gt;
 ~ Modified [[TActivePlayer.Deaths]] is now Read-Write&lt;br /&gt;
 ~ Modified [[TScript.OnException]] to be a procedure instead of function&lt;br /&gt;
 ~ Modified SC3 exception handler now unloads the script if exception is thrown&lt;br /&gt;
 ~ Modified SC3 exception handler should output more meaningful messages, even with debug mode off&lt;br /&gt;
 ~ Modified [[TActivePlayer.Kick]], added Reason parameter&lt;br /&gt;
 ~ Modified [[TPlayers.Add]], added JoinType parameter&lt;br /&gt;
 ~ Modified [[TPlayer.Health]] and [[TPlayer.Vest]] are now stored as decimal values&lt;br /&gt;
 ~ Modified [[TPlayer.Health]] type is now Single&lt;br /&gt;
 ~ Modified [[TActivePlayer.OnDamage]] event now accepts Damage parameter as Single instead of Integer, return type changed accordingly&lt;br /&gt;
 &lt;br /&gt;
 * Fixed issues with SC3 FileAPI sometimes not working properly&lt;br /&gt;
 * Fixed [[TScript.Unload]] and [[TScript.Recompile]] either not working or crashing&lt;br /&gt;
 * Fixed SC3 [[TScript.OnException]] message sometimes being empty&lt;br /&gt;
 * Fixed SC3 [[TActivePlayer.OnKill|OnKill]] provided WeaponID value instead of BulletID&lt;br /&gt;
 * Fixed [[TActivePlayer.ForceWeapon|ForceWeapon]] sometimes didn't apply ammo&lt;br /&gt;
 * Fixed [[TActivePlayer.OnVoteKickStart]] crashing when vote started by the server due to cheat detection&lt;br /&gt;
 * Fixed SC3 script recompilation crashed the server when the new version had compile time errors.&lt;br /&gt;
|-&lt;br /&gt;
| 2.8.0 ||&lt;br /&gt;
 + Added basic conversion functions to SC3: {{link|ScriptCore3|weap2obj}}, {{link|ScriptCore3|menu2obj}}, {{link|ScriptCore3|obj2weap}}, {{link|ScriptCore3|obj2menu}}, {{link|ScriptCore3|weap2menu}}, {{link|ScriptCore3|menu2weap}}&lt;br /&gt;
 + Added missing [[TGame.TickCount]] to SC3&lt;br /&gt;
 + Added missing [[TActivePlayer.KeyFlagThrow]] to SC3&lt;br /&gt;
 &lt;br /&gt;
 * Fixed [[TActivePlayer.OnWeaponChange]] was sometimes called too late&lt;br /&gt;
 * Fixed added missing [[TPlayer.Vest|Vest]] property to SC3 [[TPlayer]]&lt;br /&gt;
 * Fixed [[TScript.Name]] in SC3 Legacy mode contained full path instead of just folder name&lt;br /&gt;
 * Fixed unpredictable [[TActivePlayer.OnWeaponChange|OnWeaponChange]] behavior when calling [[TActivePlayer.ForceWeapon|ForceWeapon]] from within&lt;br /&gt;
 * Fixed wrong player coordinates in [[TActivePlayer.OnAfterRespawn|OnAfterRespawn]] (SC3 only)&lt;br /&gt;
 * Fixed [[TActivePlayer.OnWeaponChange]] event sometimes called with weird weapon parameters&lt;br /&gt;
 * Fixed incorrect Weapon being passed to [[TActivePlayer.OnKill]]&lt;br /&gt;
 * Fixed [[TActivePlayer.Move]] not broadcasted to players when set on bot&lt;br /&gt;
 * Fixed [[TActivePlayer.SetVelocity]] not broadcasted to players when set on bot&lt;br /&gt;
 * Fixed [[Random]] function in SC2 producing weird results&lt;br /&gt;
 * Fixed SC3 sometimes throwing access violations when hitting exception  &lt;br /&gt;
   (most noticable when trying to load non existing dll&lt;br /&gt;
|-&lt;br /&gt;
| 2.7.9 ||&lt;br /&gt;
 + Added SC3 property [[TActivePlayer.IsProne]] (read only - boolean)&lt;br /&gt;
 + Added SC3 property [[TActivePlayer.MouseAimX]] (read write - SmallInt) (write only works on bots)&lt;br /&gt;
 + Added SC3 property [[TActivePlayer.MouseAimY]] (read write - SmallInt) (write only works on bots)&lt;br /&gt;
 + Added SC3 [[TGame.AdminPassword]] property (string - read write)&lt;br /&gt;
 + Added SC3 object constants: OBJECT_ALPHA_FLAG, OBJECT_BRAVO_FLAG, OBJECT_POINTMATCH_FLAG, &lt;br /&gt;
 OBJECT_USSOCOM, OBJECT_DESERT_EAGLE, OBJECT_HK_MP5, OBJECT_AK74, OBJECT_STEYR_AUG, OBJECT_SPAS12,&lt;br /&gt;
 OBJECT_RUGER77, OBJECT_M79, OBJECT_BARRET_M82A1, OBJECT_MINIMI, OBJECT_MINIGUN, OBJECT_RAMBO_BOW, &lt;br /&gt;
 OBJECT_MEDICAL_KIT, OBJECT_GRENADE_KIT, OBJECT_FLAMER_KIT, OBJECT_PREDATOR_KIT, OBJECT_VEST_KIT, &lt;br /&gt;
 OBJECT_BERSERK_KIT, OBJECT_CLUSTER_KIT, OBJECT_PARACHUTE, OBJECT_COMBAT_KNIFE, OBJECT_CHAINSAW, &lt;br /&gt;
 OBJECT_LAW, OBJECT_STATIONARY_GUN&lt;br /&gt;
 + Added SC3 weapon constants: WTYPE_EAGLE, WTYPE_MP5, WTYPE_AK74, WTYPE_STEYRAUG, WTYPE_SPAS12, &lt;br /&gt;
 WTYPE_RUGER77, WTYPE_M79, WTYPE_BARRETT, WTYPE_M249, WTYPE_MINIGUN, WTYPE_USSOCOM, WTYPE_KNIFE, &lt;br /&gt;
 WTYPE_CHAINSAW, WTYPE_LAW, WTYPE_FLAMER, WTYPE_BOW, WTYPE_BOW2, WTYPE_M2, WTYPE_NOWEAPON, &lt;br /&gt;
 WTYPE_FRAGGRENADE, WTYPE_CLUSTERGRENADE, WTYPE_CLUSTER, WTYPE_THROWNKNIFE&lt;br /&gt;
 + Added SC3 function [[ScriptCore3.MD5|Md5]](A: string): string;&lt;br /&gt;
 + Added SC3 type [[TBannedHW]] = record HW: string; Time: Integer; Reason: string; end;&lt;br /&gt;
 + Added SC3 type [[TBannedIP]] = record IP: ShortString; Time: Integer; Reason: string; end;&lt;br /&gt;
 + Added SC3 class [[TBanLists]] (accessible over global variable &amp;quot;[[TGame.BanLists|Game.BanLists]]&amp;quot;)&lt;br /&gt;
 + Added SC3 procedure [[TBanLists.AddHWBan]](HW, Reason: string; Duration: Integer);&lt;br /&gt;
 + Added SC3 procedure [[TBanLists.AddIPBan]](IP: ShortString; Reason: string; Duration: Integer);&lt;br /&gt;
 + Added SC3 function [[TBanLists.DelHWBan]](HW: string): Boolean;&lt;br /&gt;
 + Added SC3 function [[TBanLists.DelIPBan]](IP: ShortString): Boolean;&lt;br /&gt;
 + Added SC3 function [[TBanLists.IsBannedHW]](HW: string): Boolean;&lt;br /&gt;
 + Added SC3 function [[TBanLists.IsBannedIP]](IP: ShortString): Boolean;&lt;br /&gt;
 + Added SC3 function [[TBanLists.GetHWBanId]](HW: string): Integer;&lt;br /&gt;
 + Added SC3 function [[TBanLists.GetIPBanId]](IP: ShortString): Integer;&lt;br /&gt;
 + Added SC3 property [[TBanLists.HW]] (read only - array of TBannedHW)&lt;br /&gt;
 + Added SC3 property [[TBanLists.IP]] (read only - array of TBannedIP)&lt;br /&gt;
 + Added SC3 property [[TBanLists.BannedHWCount]]: (read only - Integer)&lt;br /&gt;
 + Added SC3 property [[TBanLists.BannedIPCount]] (read only - Integer)&lt;br /&gt;
 &lt;br /&gt;
 ~ Modified modifying velocity of bots to be less laggy&lt;br /&gt;
 ~ Modified MovePlayer function to be less laggy on bots&lt;br /&gt;
 ~ Modified SC3 property [[TActivePlayer.KeyUp]] access mode to read write (write only works on bots)&lt;br /&gt;
 ~ Modified SC3 property [[TActivePlayer.KeyLeft]] access mode to read write (write only works on bots)&lt;br /&gt;
 ~ Modified SC3 property [[TActivePlayer.KeyRight]] access mode to read write (write only works on bots)&lt;br /&gt;
 ~ Modified SC3 property [[TActivePlayer.KeyShoot]] access mode to read write (write only works on bots)&lt;br /&gt;
 ~ Modified SC3 property [[TActivePlayer.KeyJetpack]] access mode to read write (write only works on bots)&lt;br /&gt;
 ~ Modified SC3 property [[TActivePlayer.KeyGrenade]] access mode to read write (write only works on bots)&lt;br /&gt;
 ~ Modified SC3 property [[TActivePlayer.KeyChangeWeap]] access mode to read write (write only works on bots)&lt;br /&gt;
 ~ Modified SC3 property [[TActivePlayer.KeyThrow]] access mode to read write (write only works on bots)&lt;br /&gt;
 ~ Modified SC3 property [[TActivePlayer.KeyReload]] access mode to read write (write only works on bots)&lt;br /&gt;
 ~ Modified SC3 property [[TActivePlayer.KeyCrouch]] access mode to read write (write only works on bots)&lt;br /&gt;
 ~ Modified SC3 property [[TActivePlayer.KeyProne]] access mode to read write (write only works on bots)&lt;br /&gt;
 &lt;br /&gt;
 * Fixed [[TMap.AddObject]] function had swapped knife and saw&lt;br /&gt;
 * Fixed votes started via script didn't work properly&lt;br /&gt;
 * Fixed SC3 property [[TActivePlayer.KeyProne]] returns position instead pressed key&lt;br /&gt;
 * Fixed SC3 [[TGame.Password]] shows admin password instead of game password #604&lt;br /&gt;
 * Fixed SC3 [[TGame.Password]] property was read only&lt;br /&gt;
 * Fixed SC3 joining the game increases sometimes team count by 2 instead of 1&lt;br /&gt;
 * Fixed SC3 [[TGame.Teams]] [[TTeam.Player|Player]] property returned nil or an error&lt;br /&gt;
|-&lt;br /&gt;
| 2.7.8 ||&lt;br /&gt;
 + Added SC3 function [[ScriptCore3.StrToDateTime|StrToDateTime]](const S: string): TDateTime;&lt;br /&gt;
 + Added SC3 event [[TGame.OnTCPCommand]](Ip: string; Port: Word; Command: string): Boolean;&lt;br /&gt;
 + Added SC3 event [[TActivePlayer.OnKitPickup]](Player: TActivePlayer; Kit: TActiveMapObject)&lt;br /&gt;
 + Added SC3 event [[TActivePlayer.OnFlagDrop]](Player: TActivePlayer; Flag: TActiveFlag; Team: Byte; Thrown: Boolean)&lt;br /&gt;
 + Added SC3 procedure [[TActivePlayer.WorldText]](Layer: Byte; Text: string; Delay: Integer; Color: Longint; Scale, X, Y: Single)&lt;br /&gt;
 + Added SC3 procedure [[TPlayers.WorldText]](Layer: Byte; Text: string; Delay: Integer; Color: Longint; Scale, X, Y: Single)&lt;br /&gt;
 + Added SC3 event [[TGame.OnAdminConnect]](Ip: string; Port: Word)&lt;br /&gt;
 + Added SC3 event [[TGame.OnAdminDisconnect]](Ip: string; Port: Word)&lt;br /&gt;
 + Added SC3 procedure [[TActivePlayer.SetVelocity]](VelX, VelY: Single)&lt;br /&gt;
 + Added SC3 function [[TGame.TOnAdminCommand]](Player: TActivePlayer; Command: string): boolean&lt;br /&gt;
 + Added SC3 function [[TGame.TOnTCPMessage]](Ip: string; Port: Word; Text: string): boolean&lt;br /&gt;
 + Added SC3 function [[TMap.CreateBulletVector]](A, B: TVector; HitM: Single; sStyle: Byte; Owner: TActivePlayer): Integer&lt;br /&gt;
 + Added SC3 function [[TMap.CreateBullet]](X, Y, VelX, VelY, HitM_ Single; sStyle: Byte; Owner: TActivePlayer): Integer&lt;br /&gt;
 + Added SC3 function [[Distance]](X1, X2, Y1, Y2: Single): Single&lt;br /&gt;
 + Added SC3 property [[TActivePlayer.IsAdmin]] (read write - Boolean)&lt;br /&gt;
 + Added SC3 property [[TGame.CurrentMap]] (read only - string)&lt;br /&gt;
 + Added SC3 class [[TMapsList]] (accessible over global variable &amp;quot;Game.MapsList&amp;quot;)&lt;br /&gt;
 + Added SC3 procedure [[TMapsList.AddMap]](Name: string)&lt;br /&gt;
 + Added SC3 procedure [[TMapsList.RemoveMap]](Name: string)&lt;br /&gt;
 + Added SC3 function [[TMapsList.GetMapIdByName]](Name: string): Integer&lt;br /&gt;
 + Added SC3 property [[TMapsList.Map]] (read only - array of string)&lt;br /&gt;
 + Added SC3 property [[TMapsList.CurrentMapId]] (read write - Integer)&lt;br /&gt;
 + Added SC3 property [[TMapsList.MapsCount]] (read only - Integer)&lt;br /&gt;
 + Added SC3 class [[TGlobal]] (accessible over global variable &amp;quot;Global&amp;quot;)&lt;br /&gt;
 + Added SC3 property [[TGlobal.DateSeparator]] (read write - string)&lt;br /&gt;
 + Added SC3 property [[TGlobal.ShortDateFormat]] (read write - string)&lt;br /&gt;
 + Added SC3 class [[TActiveMapBullet]] (accessible over global Byte array &amp;quot;Map.Bullets&amp;quot;)&lt;br /&gt;
 + Added SC3 function [[TActiveMapBullet.GetOwnerWeaponId]]: Integer&lt;br /&gt;
 + Added SC3 property [[TActiveMapBullet.ID]] (read only - Byte)&lt;br /&gt;
 + Added SC3 property [[TActiveMapBullet.Active]] (read only - Boolean)&lt;br /&gt;
 + Added SC3 property [[TActiveMapBullet.X]] (read only - Single)&lt;br /&gt;
 + Added SC3 property [[TActiveMapBullet.Y]] (read only - Single)&lt;br /&gt;
 + Added SC3 property [[TActiveMapBullet.VelX]] (read only - Single)&lt;br /&gt;
 + Added SC3 property [[TActiveMapBullet.VelY]] (read only - Single)&lt;br /&gt;
 &lt;br /&gt;
 ~ Modified SC3 type [[TOnKillEvent]] declaration to procedure(Killer, Victim: TActivePlayer; BulletID: Byte)&lt;br /&gt;
 ~ Modified SC3 type [[TOnTCPMessageEvent]] declaration to procedure(Ip: string; Port: Word; Message: string)&lt;br /&gt;
 ~ Modified request game log line from &amp;quot;IP:PORT requesting game...&amp;quot; to &amp;quot;IP:PORT|HWID requesting game...&amp;quot;&lt;br /&gt;
 ~ Modified SC3 procedure name [[TActivePlayer.Forward]] altered to TActivePlayer.ForwardTo&lt;br /&gt;
 ~ Modified SC3 type [[TOnRequestEvent]] declaration to function(Ip, Hw: string; Port: Word; State: Byte; Forwarded: Boolean; Password: string): Integer&lt;br /&gt;
 ~ Modified SC3 type [[TOnDamageEvent]] declaration to function(Shooter, Victim: TActivePlayer; Damage: Integer; Bullet: TActiveMapBullet): Integer&lt;br /&gt;
 &lt;br /&gt;
 * Fixed [[TOnWeaponChangeEvent]] does not hold valueable data #582&lt;br /&gt;
 * Fixed [[TActiveObject]]'s Style is 0 (Flags) #584&lt;br /&gt;
 * Fixed [[TActivePlayer.OnFlagDrop]] [[TActiveMapObject.ID|Flag.ID]] can't be accessed or duplicates #585&lt;br /&gt;
 * Fixed [[TActivePlayer.Alive|Player.Alive]] := FALSE deals damage (doesn't always kill) #586&lt;br /&gt;
 * Fixed [[TActivePlayer.Move]] causes players to drop weapons and flags randomly #142&lt;br /&gt;
 * Fixed [[TActivePlayer.Move]] randomly kills and respawns player #247&lt;br /&gt;
 * Fixed Server refuses client if [[TActivePlayer.Move]] is used on connection #587&lt;br /&gt;
 * Fixed SC3 [[TMapObject.Style]] results to be the same as in wiki&lt;br /&gt;
 * Fixed SC3 using [[TGame.OnRequest]] crashes server&lt;br /&gt;
 * Fixed SC3 Variable [[TGame.VotePercent]] is always set up on 0 #532&lt;br /&gt;
 * Fixed SC3 [[TActivePlayer.Ban]] always bans for 0 minutes #576&lt;br /&gt;
 * Fixed [[TActivePlayer.OnVoteMap|OnVoteMap]]/[[TActivePlayer.OnVoteMapStart|OnVoteMapStart]]events are not working as intended #550&lt;br /&gt;
 * Fixed SC3 - [[TActivePlayer.OnWeaponChange]] does not provide changed weapon information #577&lt;br /&gt;
 * Fixed SC3 - [[TActivePlayer.OnKill]]/[[TActivePlayer.OnDamage]] - WeaponType is unpredictable #356&lt;br /&gt;
 * Fixed [[TActivePlayer.BigText]] with layer 0 causes WriteConsole behaviour #400&lt;br /&gt;
 * Fixed SC3 [[ScriptCore3.StrToDate|StrToDate]] doesn't work as intended #401&lt;br /&gt;
 * Fixed /recompile &amp;lt;script&amp;gt; hangs up admin client #578&lt;br /&gt;
 * Fixed SC3 Strange [[TMap.RayCast]] values when walking &amp;quot;into&amp;quot; the wall #395&lt;br /&gt;
 * Fixed SC3 some server crashes after unhandled exception&lt;br /&gt;
 * Fixed SC3 some function results could be ignored in some cases&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Other versions==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| 2.7.8.b2 ||&lt;br /&gt;
 + event TGame.OnTCPCommand&lt;br /&gt;
 + function StrToDateTime&lt;br /&gt;
 &lt;br /&gt;
 * OnKillEvent declaration changed (Killer, Victim: TActivePlayer; BulletID: Byte)&lt;br /&gt;
 * TOnTCPMessageEvent declaration changed (Ip: string; Port: Word; Message: string)&lt;br /&gt;
 * Fixed TOnWeaponChangeEvent does not hold valueable data #582&lt;br /&gt;
 * Fixed TActiveObject's Style is 0 (Flags) #584&lt;br /&gt;
 * Fixed Player.Alive := FALSE deals damage (doesn't always kill) #586&lt;br /&gt;
 * Fixed TPlayer.OnFlagDrop Flag.ID can't be accessed or duplicates #585&lt;br /&gt;
 * Fixed MovePlayer causes players to drop weapons and flags randomly #142&lt;br /&gt;
 * Fixed MovePlayer randomly kills and respawns player #247&lt;br /&gt;
 * Fixed Server refuses client if MovePlayer is used on connection #587&lt;br /&gt;
 * Fixed SC3 TMapObject.Style results to be the same as in wiki&lt;br /&gt;
 * Fixed SC3 using TGame.OnRequest crashes server&lt;br /&gt;
 * Reverted &amp;quot;Modified SC3 type TOnKillEvent declaration changed (Killer, Victim: TActivePlayer; Bullet: TActiveMapBullet)&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| 2.7.8.b1 ||&lt;br /&gt;
 + event TActivePlayer.OnKitPickup&lt;br /&gt;
 + event TActivePlayer.OnFlagDrop&lt;br /&gt;
 + procedure TActivePlayer.WorldText&lt;br /&gt;
 + procedure TPlayers.WorldText&lt;br /&gt;
 + event TGame.OnAdminConnect&lt;br /&gt;
 + event TGame.OnAdminDisconnect&lt;br /&gt;
 + procedure TActivePlayer.SetVelocity&lt;br /&gt;
 + event TGame.OnAdminCommand&lt;br /&gt;
 + event TGame.OnTCPMessage&lt;br /&gt;
 + function TMap.CreateBulletVector&lt;br /&gt;
 + function TMap.CreateBullet&lt;br /&gt;
 + function Distance&lt;br /&gt;
 + property TActivePlayer.IsAdmin&lt;br /&gt;
 + property TGame.CurrentMap&lt;br /&gt;
 + class TMapsList&lt;br /&gt;
 + procedure TMapsList.AddMap&lt;br /&gt;
 + procedure TMapsList.RemoveMap&lt;br /&gt;
 + function TMapsList.GetMapIdByName&lt;br /&gt;
 + property TMapsList.Map&lt;br /&gt;
 + property TMapsList.CurrentMapId&lt;br /&gt;
 + property TMapsList.MapsCount&lt;br /&gt;
 + class TGlobal&lt;br /&gt;
 + property TGlobal.DateSeparator&lt;br /&gt;
 + property TGlobal.ShortDateFormat&lt;br /&gt;
 + class TActiveMapBullet&lt;br /&gt;
 + function TActiveMapBullet.GetOwnerWeaponId&lt;br /&gt;
 + property TActiveMapBullet.ID&lt;br /&gt;
 + property TActiveMapBullet.Active&lt;br /&gt;
 + property TActiveMapBullet.Style&lt;br /&gt;
 + property TActiveMapBullet.X&lt;br /&gt;
 + property TActiveMapBullet.Y&lt;br /&gt;
 + property TActiveMapBullet.VelX&lt;br /&gt;
 + property TActiveMapBullet.VelY&lt;br /&gt;
 &lt;br /&gt;
 * procedure name TActivePlayer.Forward altered to TActivePlayer.ForwardTo&lt;br /&gt;
 * TOnRequestEvent declaration changed (+ Hw)&lt;br /&gt;
 * TOnDamageEvent declaration changed (BulletID: Byte to Bullet: TActiveMapBullet)&lt;br /&gt;
 * TOnKillEvent declaration changed (BulletID: Byte to Bullet: TActiveMapBullet)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:ScriptCore_3]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TGame.OnSteamAuth&amp;diff=3243</id>
		<title>TGame.OnSteamAuth</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TGame.OnSteamAuth&amp;diff=3243"/>
				<updated>2020-05-06T22:48:17Z</updated>
		
		<summary type="html">&lt;p&gt;H: Created page with &amp;quot; '''''property OnSteamAuth'''''   Access mode: RW   Event handler type: TOnSteamAuthEvent   Event handler declaration:      function(PlayerId: Byte; AuthState: Byte): Byte...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; '''''property OnSteamAuth'''''&lt;br /&gt;
  Access mode: RW&lt;br /&gt;
  Event handler type: [[TOnSteamAuthEvent]]&lt;br /&gt;
  Event handler declaration: &lt;br /&gt;
    function(PlayerId: Byte; AuthState: Byte): Byte;&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Event property called when when server gets final decision about identity of the steam user, only after receiving this event with value of AuthState set to 0 you can be sure about identity of the player&lt;br /&gt;
&lt;br /&gt;
'''AuthState value can be one of the following:'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
0	Steam has verified the user is online, the ticket is valid and ticket has not been reused.&amp;lt;br&amp;gt;&lt;br /&gt;
1	The user in question is not connected to steam.&amp;lt;br&amp;gt;&lt;br /&gt;
2	The user doesn't have a license for this App ID or the ticket has expired.&amp;lt;br&amp;gt;&lt;br /&gt;
3	The user is VAC banned for this game.&amp;lt;br&amp;gt;&lt;br /&gt;
4	The user account has logged in elsewhere and the session containing the game instance has been disconnected.&amp;lt;br&amp;gt;&lt;br /&gt;
5	VAC has been unable to perform anti-cheat checks on this user.&amp;lt;br&amp;gt;&lt;br /&gt;
6	The ticket has been canceled by the issuer.&amp;lt;br&amp;gt;&lt;br /&gt;
7	This ticket has already been used, it is not valid.&amp;lt;br&amp;gt;&lt;br /&gt;
8	This ticket is not from a user instance currently connected to steam.&amp;lt;br&amp;gt;&lt;br /&gt;
9	The user is banned for this game. The ban came via the web api and not VAC.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
 function OnSteamAuth(PlayerId: Byte; AuthState: Byte): Byte;&lt;br /&gt;
 begin&lt;br /&gt;
   if AuthState = 0 then&lt;br /&gt;
   begin&lt;br /&gt;
     // Logged in&lt;br /&gt;
   end else&lt;br /&gt;
    // Not logged&lt;br /&gt;
 end;&lt;br /&gt;
&lt;br /&gt;
 // ...&lt;br /&gt;
&lt;br /&gt;
 begin&lt;br /&gt;
   // assign OnSteamAuth handler&lt;br /&gt;
   Game.OnSteamAuth := @OnSteamAuth;&lt;br /&gt;
&lt;br /&gt;
 end;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
[[Category:TGame]][[Category:Events]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TGame&amp;diff=3242</id>
		<title>TGame</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TGame&amp;diff=3242"/>
				<updated>2020-05-06T22:39:05Z</updated>
		
		<summary type="html">&lt;p&gt;H: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Inheritance==&lt;br /&gt;
*[[TGame]]&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Represents a game state and configuration.&lt;br /&gt;
&lt;br /&gt;
 '''This class is assigned to global variable &amp;quot;[[Global_Variables.Game|Game]]&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
 user constructable: '''NO'''&lt;br /&gt;
 user destructable: '''NO'''&lt;br /&gt;
&lt;br /&gt;
==Members==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! Member declaration !! Access mode !! SS Version&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TGame.Shutdown|Shutdown]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TGame.StartVoteKick|StartVoteKick]](ID: Byte; Reason: string)&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TGame.StartVoteMap|StartVoteMap]](Name: string)&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TGame.Restart|Restart]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| function [[TGame.LoadWeap|LoadWeap]](WeaponMod: string): Boolean&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| function [[TGame.LoadCon|LoadCon]](ConfigFile: string): Boolean&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| function [[TGame.LoadList|LoadList]](MapsList: string): Boolean&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TGame.LobbyRegister|LobbyRegister]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.GameStyle|GameStyle]]: Byte&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.MaxPlayers|MaxPlayers]]: Byte&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.NextMap|NextMap]]: string&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.NumBots|NumBots]]: Byte&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.NumPlayers|NumPlayers]]: Byte&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.Spectators|Spectators]]: Byte&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.ScoreLimit|ScoreLimit]]: Byte&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.ServerIP|ServerIP]]: string&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.ServerName|ServerName]]: string&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.ServerPort|ServerPort]]: Word&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.ServerVersion|ServerVersion]]: string&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.ServerInfo|ServerInfo]]: string&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.Gravity|Gravity]]: Single&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.Paused|Paused]]: Boolean&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.RespawnTime|RespawnTime]]: LongInt&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.MinRespawnTime|MinRespawnTime]]: LongInt&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.MaxRespawnTime|MaxRespawnTime]]: LongInt&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.MaxGrenades|MaxGrenades]]: Byte&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.Bonus|Bonus]]: Byte&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.TimeLimit|TimeLimit]]: LongInt&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.TimeLeft|TimeLeft]]: LongInt&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.FriendlyFire|FriendlyFire]]: Boolean&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.Password|Password]]: string&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.AdminPassword|AdminPassword]]: string&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW || 2.7.9&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.VotePercent|VotePercent]]: Single&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.Realistic|Realistic]]: Boolean&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.Survival|Survival]]: Boolean&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.Advance|Advance]]: Boolean&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.Balance|Balance]]: Boolean&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.TickThreshold|TickThreshold]]: LongInt&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.TickCount|TickCount]]: LongInt&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
| 2.8.0.rc1&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.Teams|Teams]][ID: Byte]: [[TTeam]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.CurrentMap|CurrentMap]]: string&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
| 2.7.8.b1&lt;br /&gt;
|-align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.MapsList|MapsList]]: [[TMapsList]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
| 2.7.8.b1&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.BanLists|BanLists]]: [[TBanLists]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&lt;br /&gt;
| 2.7.9&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.OnClockTick|OnClockTick]]: [[TOnClockTickEvent]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.OnJoin|OnJoin]]: [[TOnJoinGameEvent]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.OnLeave|OnLeave]]: [[TOnLeaveGameEvent]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.OnRequest|OnRequest]]: [[TOnRequestEvent]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.OnAdminCommand|OnAdminCommand]]: [[TOnAdminCommandEvent]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
| 2.7.8.b1&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.OnTCPMessage|OnTCPMessage]]: [[TOnTCPMessageEvent]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
| 2.7.8.b1&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.OnAdminConnect|OnAdminConnect]]: [[TOnAdminConnectEvent]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
| 2.7.8.b1&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.OnAdminDisconnect|OnAdminDisconnect]]: [[TOnAdminDisconnectEvent]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
| 2.7.8.b1&lt;br /&gt;
|-&lt;br /&gt;
| property [[TGame.OnSteamAuth|OnSteamAuth]]: [[TOnSteamAuthEvent]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW&lt;br /&gt;
| 2.8.2 steam version&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Classes]][[Category:TGame]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=Server.ini&amp;diff=3241</id>
		<title>Server.ini</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=Server.ini&amp;diff=3241"/>
				<updated>2020-05-06T22:34:13Z</updated>
		
		<summary type="html">&lt;p&gt;H: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Server.ini file was added in version 2.6.1, by EnEsCe. New settings can be found and adjusted in this file, such as enabling or disabling scripting, using health cooldown, etc. Like [[soldat.ini]], you can edit this file with any plain editor such as Nano or Notepad.&lt;br /&gt;
&lt;br /&gt;
==For Dedicated Servers only==&lt;br /&gt;
&lt;br /&gt;
  '''[GAME]'''&lt;br /&gt;
  TKWarnings_Before_TempBan=5 {{Comment|Number of teamkills that needs to be done before a temporary ban is handed out. Only with PunishTK set to 1.}}&lt;br /&gt;
  PunishTK=0 {{Comment|Enables/disables the built-in TK punish feature.}}&lt;br /&gt;
  EchoKills=1 {{Comment|Echoes kills done to the admin console.}}&lt;br /&gt;
  BotBalanceTeams=0 {{Comment|Whether or not bots should count as players in the team balance.}}&lt;br /&gt;
  HealthCooldown=0 {{Comment|Amount of time (in seconds) a player needs to wait before s/he's able to pick up a second medikit. Use 0 to disable.}}&lt;br /&gt;
  TimestampConsole=0 {{Comment|If the console should be timestamped or not.}}&lt;br /&gt;
  AutoRecord=1 {{Comment|Disable/Enable auto recording demos. (Since 2.8.2)}}&lt;br /&gt;
  SlowTickWarning=30 {{Comment| Show performance warning when server a server tick takes too much time. (Since 2.8.2)}}&lt;br /&gt;
  SteamIDAsHWID=1 {{Comment| Overrides HWID of the player with his SteamID. (Since 2.8.2, Steam version)}}&lt;br /&gt;
  [[Logging|OldLogFilesFormat=0]] {{Comment|Uses the old filename format for log files. 0 for timestamped lognames, 1 for numeric auto-increasing filenames.}}&lt;br /&gt;
&lt;br /&gt;
  '''[NETWORK]'''&lt;br /&gt;
  NR-Service=0 {{Comment|Enables/disables the [[NR Service|Nickname Registration Service]], by EnEsCe.}}&lt;br /&gt;
  NR-OnlyAllowRegistered=0 {{Comment|Only allows nicknames registered with the [[NR Service]].}}&lt;br /&gt;
  MaxAdminConnections=20 {{Comment|Maximum number of admins connections that can be opened to the server.}}&lt;br /&gt;
  AntiMassFlag=1 {{Comment|Anti-massflag cheat on/off}}&lt;br /&gt;
  Scripting=0 {{Comment|Enables/disables [[Server_Scripting|Server scripting]].}}&lt;br /&gt;
  BEBanTime=5 {{Comment|The ban time for a [[BattlEye|BE]] violation, in minutes.}}&lt;br /&gt;
  OnScriptCrash=ignore {{Comment|What action to take when a script crashes. Available parameters are recompile, shutdown, ignore and disable.}}&lt;br /&gt;
&lt;br /&gt;
==UDP Log forwarding==&lt;br /&gt;
How it works: Server will send UDP packets in this format &amp;lt;code&amp;gt;%PREFIX %TIME(yy/mm/dd hh:nn:ss) %LOGMSG \r\n&amp;lt;/code&amp;gt; every time a new log message occurs, this means 1 packet contains only 1 log entry. Be aware UDP packets can be lost in transit or come in wrong order.&lt;br /&gt;
&lt;br /&gt;
  '''[Forwarder1]''' {{Comment| Section name needs to be unique and start with &amp;quot; Forwarder&amp;quot; }}&lt;br /&gt;
  IP=127.0.0.1 {{Comment| IP address of the server that will receive logs}}&lt;br /&gt;
  Port=8000 {{Comment| Server Port}}&lt;br /&gt;
  Prefix=CTF1 {{Comment| Prefix that will be appended to logs}}&lt;br /&gt;
  [Forwarder2]&lt;br /&gt;
  IP=192.168.0.1&lt;br /&gt;
  Port=7000&lt;br /&gt;
  Prefix=CTF1&lt;br /&gt;
[[Category:Server]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TPlayers.Active&amp;diff=3240</id>
		<title>TPlayers.Active</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TPlayers.Active&amp;diff=3240"/>
				<updated>2020-05-06T22:14:00Z</updated>
		
		<summary type="html">&lt;p&gt;H: Created page with &amp;quot; '''''property Active[i: Byte]: TActivePlayer'''''   i: ID of a player. '''0'''-31   Access mode: R ==Description== An Array representing ACTIVE players in game&amp;lt;br&amp;gt;  ==Exa...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; '''''property Active[i: Byte]: [[TActivePlayer]]'''''&lt;br /&gt;
  i: ID of a player. '''0'''-31&lt;br /&gt;
  Access mode: R&lt;br /&gt;
==Description==&lt;br /&gt;
An Array representing ACTIVE players in game&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
 var&lt;br /&gt;
  i: byte;&lt;br /&gt;
 begin&lt;br /&gt;
  for i := 0 to Players.Active.Count - 1 do begin&lt;br /&gt;
    Players.WriteConsole('Nick: '+Players.Active[i].Name+', ID: '+inttostr(Players.Active[i].ID), $FFFFFF);&lt;br /&gt;
    WriteLn('Nick: '+Players.Active[i].Name+', ID: '+inttostr(Players.Active[i].ID));&lt;br /&gt;
  end;&lt;br /&gt;
 end;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
[[Category:TPlayers]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TPlayers&amp;diff=3239</id>
		<title>TPlayers</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TPlayers&amp;diff=3239"/>
				<updated>2020-05-06T22:12:28Z</updated>
		
		<summary type="html">&lt;p&gt;H: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Inheritance==&lt;br /&gt;
*[[TPlayers]]&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Allows interaction with players and provides some identification functions&lt;br /&gt;
&lt;br /&gt;
 '''This class is assigned to global variable &amp;quot;[[Global_Variables.Players|Players]]&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
 user constructable: '''NO'''&lt;br /&gt;
 user destructable:  '''NO'''&lt;br /&gt;
&lt;br /&gt;
==Members==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! Member declaration !! Access mode !! SS Version&lt;br /&gt;
|-&lt;br /&gt;
| function [[TPlayers.Add|Add]](Player: [[TNewPlayer]]): [[TActivePlayer]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TPlayers.WriteConsole|WriteConsole]](Text: string; Color: Longint)&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TPlayers.BigText|BigText]](Layer: Byte; Text: string; Delay: Integer; Color: Longint; Scale: Single; X, Y: Integer)&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| function [[TPlayers.GetByName|GetByName]](Name: string): [[TActivePlayer]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| function [[TPlayers.GetByIP|GetByIP]](IP: string): [[TActivePlayer]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TPlayers.Tell|Tell]](Text: string)&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TPlayers.WorldText|WorldText]](Layer: Byte; Text: string; Delay: Integer; Color: Longint; Scale, X, Y: Single)&lt;br /&gt;
|&lt;br /&gt;
| 2.7.8.b1&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayers.Player|Player]][i: Byte]: [[TActivePlayer]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R &lt;br /&gt;
| &lt;br /&gt;
| default&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayers.Active|Active]][i: Byte]: [[TActivePlayer]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R &lt;br /&gt;
| &lt;br /&gt;
| default&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Classes]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TMath&amp;diff=3238</id>
		<title>TMath</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TMath&amp;diff=3238"/>
				<updated>2020-05-06T22:10:10Z</updated>
		
		<summary type="html">&lt;p&gt;H: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Inheritance==&lt;br /&gt;
*[[TMath]]&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
A class holding all functions related to Math. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''This class is assigned to global variable &amp;quot;[[Global_Variables.Math|Math]]&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 user constructable: '''NO'''&lt;br /&gt;
 user destructable:  '''NO'''&lt;br /&gt;
&lt;br /&gt;
==Members==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! Member declaration&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Sin|Sin]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Cos|Cos]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Tan|Tan]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Cotan|Cotan]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Pow|Pow]](A, B: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.LogN|LogN]](A, B: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Ln|Ln]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.ArcSin|ArcSin]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.ArcCos|ArcCos]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.ArcTan|ArcTan]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.ArcCotan|ArcCotan]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.ArcTan2|ArcTan]](A,B: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Min|Min]](A, B: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Max|Max]](A, B: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Abs|Abs]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Exp|Exp]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Sign|Sign]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.IsNan|IsNan]](A: Extended): Boolean&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Round|Round]](A: Extended): Integer&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.RoundTo|RoundTo]](A: Extended, B: TRoundToRange): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.DegToRad|DegToRad]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.RadToDeg|RadToDeg]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.DegNormalize|DegNormalize]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.InRange|InRange]](const A, B, C: Double): Boolean&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.EnsureRange|EnsureRange]](const AValue, AMin, AMax: Double): Double&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Random|Random]](Min, Max: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| property [[TMath.E]]: Extended&lt;br /&gt;
|-&lt;br /&gt;
| property [[TMath.Pi]]: Extended&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Classes]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=Global_Variables.Math&amp;diff=3237</id>
		<title>Global Variables.Math</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=Global_Variables.Math&amp;diff=3237"/>
				<updated>2020-05-06T22:09:59Z</updated>
		
		<summary type="html">&lt;p&gt;H: Created page with &amp;quot;  '''''Math: TMath'''''  ==Description== {| class=wikitable ! Variable Name !! Type |- | align=center | Math || TMath |- |}  Global variable used for math operations [...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;  '''''Math: [[TMath]]'''''&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Variable Name !! Type&lt;br /&gt;
|-&lt;br /&gt;
| align=center | Math || [[TMath]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Global variable used for math operations [[TMath]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Global Variables]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TMath&amp;diff=3236</id>
		<title>TMath</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TMath&amp;diff=3236"/>
				<updated>2020-05-06T22:08:34Z</updated>
		
		<summary type="html">&lt;p&gt;H: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Inheritance==&lt;br /&gt;
*[[TMathApi]]&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
A class holding all functions related to Math. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''This class is assigned to global variable &amp;quot;[[Global_Variables.Math|Math]]&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 user constructable: '''NO'''&lt;br /&gt;
 user destructable:  '''NO'''&lt;br /&gt;
&lt;br /&gt;
==Members==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! Member declaration&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Sin|Sin]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Cos|Cos]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Tan|Tan]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Cotan|Cotan]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Pow|Pow]](A, B: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.LogN|LogN]](A, B: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Ln|Ln]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.ArcSin|ArcSin]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.ArcCos|ArcCos]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.ArcTan|ArcTan]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.ArcCotan|ArcCotan]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.ArcTan2|ArcTan]](A,B: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Min|Min]](A, B: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Max|Max]](A, B: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Abs|Abs]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Exp|Exp]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Sign|Sign]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.IsNan|IsNan]](A: Extended): Boolean&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Round|Round]](A: Extended): Integer&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.RoundTo|RoundTo]](A: Extended, B: TRoundToRange): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.DegToRad|DegToRad]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.RadToDeg|RadToDeg]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.DegNormalize|DegNormalize]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.InRange|InRange]](const A, B, C: Double): Boolean&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.EnsureRange|EnsureRange]](const AValue, AMin, AMax: Double): Double&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Random|Random]](Min, Max: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| property [[TMath.E]]: Extended&lt;br /&gt;
|-&lt;br /&gt;
| property [[TMath.Pi]]: Extended&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Classes]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TMath&amp;diff=3235</id>
		<title>TMath</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TMath&amp;diff=3235"/>
				<updated>2020-05-06T22:07:40Z</updated>
		
		<summary type="html">&lt;p&gt;H: Created page with &amp;quot;==Inheritance== *TMathApi  ==Description== A class holding all functions related to Math. &amp;lt;br&amp;gt; One object of this class is exported under global variable called '''Globa...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Inheritance==&lt;br /&gt;
*[[TMathApi]]&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
A class holding all functions related to Math. &amp;lt;br&amp;gt;&lt;br /&gt;
One object of this class is exported under global variable called '''[[Global_Variables.Math|Math]]'''.&lt;br /&gt;
&lt;br /&gt;
 user constructable: '''NO'''&lt;br /&gt;
 user destructable:  '''NO'''&lt;br /&gt;
&lt;br /&gt;
==Members==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! Member declaration&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Sin|Sin]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Cos|Cos]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Tan|Tan]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Cotan|Cotan]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Pow|Pow]](A, B: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.LogN|LogN]](A, B: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Ln|Ln]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.ArcSin|ArcSin]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.ArcCos|ArcCos]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.ArcTan|ArcTan]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.ArcCotan|ArcCotan]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.ArcTan2|ArcTan]](A,B: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Min|Min]](A, B: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Max|Max]](A, B: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Abs|Abs]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Exp|Exp]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Sign|Sign]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.IsNan|IsNan]](A: Extended): Boolean&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Round|Round]](A: Extended): Integer&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.RoundTo|RoundTo]](A: Extended, B: TRoundToRange): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.DegToRad|DegToRad]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.RadToDeg|RadToDeg]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.DegNormalize|DegNormalize]](A: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.InRange|InRange]](const A, B, C: Double): Boolean&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.EnsureRange|EnsureRange]](const AValue, AMin, AMax: Double): Double&lt;br /&gt;
|-&lt;br /&gt;
| function [[TMath.Random|Random]](Min, Max: Extended): Extended&lt;br /&gt;
|-&lt;br /&gt;
| property [[TMath.E]]: Extended&lt;br /&gt;
|-&lt;br /&gt;
| property [[TMath.Pi]]: Extended&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Classes]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TActivePlayer.OnBeforeRespawn&amp;diff=3234</id>
		<title>TActivePlayer.OnBeforeRespawn</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TActivePlayer.OnBeforeRespawn&amp;diff=3234"/>
				<updated>2020-05-06T21:57:27Z</updated>
		
		<summary type="html">&lt;p&gt;H: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; '''''property OnBeforeRespawn'''''&lt;br /&gt;
  Access mode: RW&lt;br /&gt;
  Event handler type: [[TOnBeforeRespawnEvent]]&lt;br /&gt;
  Event handler declaration: function (Player: TActivePlayer): TVector;&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Event property called right before a player has respawned.&amp;lt;br&amp;gt;&lt;br /&gt;
In this event Player.Alive is FALSE (unless he's just joined the server)&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
// Result is the position you want from player to be spawned on, for default player spawns at spawnpoint&lt;br /&gt;
function OnBeforeRespawn(Player: TActivePlayer): TVector;&lt;br /&gt;
begin&lt;br /&gt;
  Result.X := 500;&lt;br /&gt;
  Result.Y := 30;&lt;br /&gt;
end;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:TActivePlayer]][[Category:Events]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TGame.OnAdminCommand&amp;diff=3233</id>
		<title>TGame.OnAdminCommand</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TGame.OnAdminCommand&amp;diff=3233"/>
				<updated>2020-05-06T21:54:13Z</updated>
		
		<summary type="html">&lt;p&gt;H: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; '''''property OnAdminCommand'''''&lt;br /&gt;
  Access mode: RW&lt;br /&gt;
  Event handler type: [[TOnAdminCommandEvent]]&lt;br /&gt;
  Event handler declaration: &lt;br /&gt;
    function ('''Player''': [[TActivePlayer]]; '''Command''': string): boolean&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Event property called when an '''ingame''' admin enters a command.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Since 2.8.2 Player is '''nil''' if the command comes from the tcp admin.&lt;br /&gt;
&lt;br /&gt;
To disable the command used set the function's Result to ''TRUE''.&lt;br /&gt;
&lt;br /&gt;
[[Category:TGame]][[Category:Events]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TTeam.OnBeforeJoin&amp;diff=3232</id>
		<title>TTeam.OnBeforeJoin</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TTeam.OnBeforeJoin&amp;diff=3232"/>
				<updated>2020-05-06T21:52:19Z</updated>
		
		<summary type="html">&lt;p&gt;H: Created page with &amp;quot; '''''property OnBeforeJoin'''''   Access mode: RW   Event handler type: TOnBeforeJoinTeamEvent   Event handler declaration: function (Player: TActivePlayer; Team,OldT...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; '''''property OnBeforeJoin'''''&lt;br /&gt;
  Access mode: RW&lt;br /&gt;
  Event handler type: [[TOnBeforeJoinTeamEvent]]&lt;br /&gt;
  Event handler declaration: function (Player: [[TActivePlayer]]; Team,OldTeam: [[TTeam]]): ShortInt;&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Event property called when a player tries to change team&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
function OnBeforeJoin(Player: TActivePlayer; Team, OldTeam: TTeam): ShortInt;&lt;br /&gt;
begin&lt;br /&gt;
        if Team.ID = 2 then //Lock Bravo team&lt;br /&gt;
                Result := -1&lt;br /&gt;
        else&lt;br /&gt;
                Result := Team.ID;&lt;br /&gt;
       &lt;br /&gt;
        if OldTeam &amp;lt;&amp;gt; nil then&lt;br /&gt;
                Player.WriteConsole(inttostr(Team.ID)+', Old: '+inttostr(OldTeam.ID), $FFFFFF);&lt;br /&gt;
end;&lt;br /&gt;
&lt;br /&gt;
 // ...&lt;br /&gt;
&lt;br /&gt;
 begin&lt;br /&gt;
   // assign OnBeforeJoinTeam handler&lt;br /&gt;
   Game.Teams[2].OnBeforeJoin := @OnBeforeJoin;&lt;br /&gt;
&lt;br /&gt;
   // ...&lt;br /&gt;
&lt;br /&gt;
   // unassign&lt;br /&gt;
   Game.Teams[2].OnBeforeJoin := nil;&lt;br /&gt;
 end;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:TTeam]][[Category:Events]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TOnBeforeJoinTeamEvent&amp;diff=3231</id>
		<title>TOnBeforeJoinTeamEvent</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TOnBeforeJoinTeamEvent&amp;diff=3231"/>
				<updated>2020-05-06T21:51:12Z</updated>
		
		<summary type="html">&lt;p&gt;H: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
Type used by [[TTeam.OnBeforeJoin]] as an event handler type.&lt;br /&gt;
&lt;br /&gt;
[[Category:Types]]&lt;br /&gt;
&lt;br /&gt;
==Declaration==&lt;br /&gt;
  function (Player: [[TActivePlayer]]; Team, OldTeam: [[TTeam]]): ShortInt&lt;br /&gt;
   Player: player joining team&lt;br /&gt;
   OldTeam: Current team&lt;br /&gt;
   Team: target team&lt;br /&gt;
   Result: Overrides team selection, set to -1 to block the change&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TOnBeforeJoinTeamEvent&amp;diff=3230</id>
		<title>TOnBeforeJoinTeamEvent</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TOnBeforeJoinTeamEvent&amp;diff=3230"/>
				<updated>2020-05-06T21:49:19Z</updated>
		
		<summary type="html">&lt;p&gt;H: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
Type used by [[TTeam.OnBeforeJoin]] as an event handler type.&lt;br /&gt;
&lt;br /&gt;
[[Category:Types]]&lt;br /&gt;
&lt;br /&gt;
==Declaration==&lt;br /&gt;
  function (Player: [[TActivePlayer]]; Team, OldTeam: [[TTeam]]): ShortInt&lt;br /&gt;
   Player: player joining team&lt;br /&gt;
   Team: target team&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TOnBeforeJoinTeamEvent&amp;diff=3229</id>
		<title>TOnBeforeJoinTeamEvent</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TOnBeforeJoinTeamEvent&amp;diff=3229"/>
				<updated>2020-05-06T21:48:12Z</updated>
		
		<summary type="html">&lt;p&gt;H: Created page with &amp;quot;==Description== Type used by TTeam.OnBeforeJoin as an event handler type.  Category:Types  ==Declaration==   function (Player: TActivePlayer; Team, OldTeam: TTea...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
Type used by [[TTeam.OnBeforeJoin]] as an event handler type.&lt;br /&gt;
&lt;br /&gt;
[[Category:Types]]&lt;br /&gt;
&lt;br /&gt;
==Declaration==&lt;br /&gt;
  function (Player: [[TActivePlayer]]; Team, OldTeam: [[TTeam]])&lt;br /&gt;
   Player: player joining team&lt;br /&gt;
   Team: target team&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TTeam&amp;diff=3228</id>
		<title>TTeam</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TTeam&amp;diff=3228"/>
				<updated>2020-05-06T21:47:24Z</updated>
		
		<summary type="html">&lt;p&gt;H: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Inheritance==&lt;br /&gt;
*[[TTeam]]&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Represents a team of players&lt;br /&gt;
&lt;br /&gt;
 user constructable: '''NO'''&lt;br /&gt;
 user destructable:  '''NO'''&lt;br /&gt;
&lt;br /&gt;
==Members==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! Member declaration !! Access mode&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TTeam.Add|Add]](Player: [[TPlayer]])&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| property [[TTeam.Score|Score]]: Byte &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW &lt;br /&gt;
|-&lt;br /&gt;
| property [[TTeam.Player|Player]][i: Byte]: [[TPlayer]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R &lt;br /&gt;
| default&lt;br /&gt;
|-&lt;br /&gt;
| property [[TTeam.Count|Count]]: Byte &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R &lt;br /&gt;
|-&lt;br /&gt;
| property [[TTeam.ID|ID]]: Byte &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R &lt;br /&gt;
|-&lt;br /&gt;
| property [[TTeam.OnBeforeJoin|OnBeforeJoin]]: [[TOnBeforeJoinTeamEvent]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW &lt;br /&gt;
|-&lt;br /&gt;
| property [[TTeam.OnJoin|OnJoin]]: [[TOnJoinTeamEvent]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW &lt;br /&gt;
|-&lt;br /&gt;
| property [[TTeam.OnJoin|OnLeave]]: [[TOnLeaveTeamEvent]]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | RW &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Classes]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TActivePlayer.SteamIDString&amp;diff=3227</id>
		<title>TActivePlayer.SteamIDString</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TActivePlayer.SteamIDString&amp;diff=3227"/>
				<updated>2020-05-06T21:43:34Z</updated>
		
		<summary type="html">&lt;p&gt;H: Created page with &amp;quot; '''''property TActivePlayer.SteamIDString: String'''''   Access mode: R ==Description== A player's SteamID in custom string format ('S' + Steam Account Number). Available onl...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; '''''property TActivePlayer.SteamIDString: String'''''&lt;br /&gt;
  Access mode: R&lt;br /&gt;
==Description==&lt;br /&gt;
A player's SteamID in custom string format ('S' + Steam Account Number). Available only in the steam version of soldatserver.&lt;br /&gt;
&lt;br /&gt;
[[Category:TActivePlayer]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TActivePlayer.SteamID&amp;diff=3226</id>
		<title>TActivePlayer.SteamID</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TActivePlayer.SteamID&amp;diff=3226"/>
				<updated>2020-05-06T21:40:37Z</updated>
		
		<summary type="html">&lt;p&gt;H: Created page with &amp;quot; '''''property TActivePlayer.SteamID: int64'''''   Access mode: R ==Description== A player's SteamID. Available only in the steam version of soldatserver.   Category:TActive...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; '''''property TActivePlayer.SteamID: int64'''''&lt;br /&gt;
  Access mode: R&lt;br /&gt;
==Description==&lt;br /&gt;
A player's SteamID. Available only in the steam version of soldatserver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:TActivePlayer]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TActivePlayer.RequestDiscordToken&amp;diff=3225</id>
		<title>TActivePlayer.RequestDiscordToken</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TActivePlayer.RequestDiscordToken&amp;diff=3225"/>
				<updated>2020-05-06T21:38:57Z</updated>
		
		<summary type="html">&lt;p&gt;H: Created page with &amp;quot; '''''procedure RequestDiscordToken''''' ==Description== Sends a request to retrieve player's discord OAuth2 token, on a successful call server will receive a /discord_token c...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; '''''procedure RequestDiscordToken'''''&lt;br /&gt;
==Description==&lt;br /&gt;
Sends a request to retrieve player's discord OAuth2 token, on a successful call server will receive a /discord_token command with the token.&lt;br /&gt;
&lt;br /&gt;
This request works only on players who are using the desktop version of Discord.&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
procedure OnJoin(Player: TActivePlayer; Team: TTeam);&lt;br /&gt;
begin&lt;br /&gt;
   Player.RequestDiscordToken;&lt;br /&gt;
end;&lt;br /&gt;
&lt;br /&gt;
function OnCommand(Player: TActivePlayer; Command: string): Boolean;&lt;br /&gt;
var&lt;br /&gt;
  Token: String;&lt;br /&gt;
begin&lt;br /&gt;
  if Copy(Command, 1, 15) = '/discord_token ' then&lt;br /&gt;
  begin&lt;br /&gt;
    Token := Copy(Command, 16, Length(Command));&lt;br /&gt;
    // Use 3rdparty library to call and parse response from discord api&lt;br /&gt;
    // Curl bash example: curl -H 'Authorization: Bearer TOKEN' https://discordapp.com/api/users/@me&lt;br /&gt;
  end;&lt;br /&gt;
end;&lt;br /&gt;
&lt;br /&gt;
var &lt;br /&gt;
  i: Byte;&lt;br /&gt;
begin&lt;br /&gt;
  Game.OnJoin := @OnJoin;&lt;br /&gt;
  for i:=1 to 32 do&lt;br /&gt;
    Players[i].OnCommand := @OnCommand;&lt;br /&gt;
end;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:TActivePlayer]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TActivePlayer.PlaySound&amp;diff=3224</id>
		<title>TActivePlayer.PlaySound</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TActivePlayer.PlaySound&amp;diff=3224"/>
				<updated>2020-05-06T21:18:44Z</updated>
		
		<summary type="html">&lt;p&gt;H: Created page with &amp;quot; '''''procedure PlaySound(Name: string; X, Y: Single)'''''   Name: Name of the sound file   X,Y: Sound position ==Description== Plays a specified sound file  == Example == &amp;lt;sy...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; '''''procedure PlaySound(Name: string; X, Y: Single)'''''&lt;br /&gt;
  Name: Name of the sound file&lt;br /&gt;
  X,Y: Sound position&lt;br /&gt;
==Description==&lt;br /&gt;
Plays a specified sound file&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
Player.PlaySound('burn.wav', Player.X, Player.Y);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:TActivePlayer]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TActivePlayer.ChangeTeam&amp;diff=3223</id>
		<title>TActivePlayer.ChangeTeam</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TActivePlayer.ChangeTeam&amp;diff=3223"/>
				<updated>2020-05-06T21:16:34Z</updated>
		
		<summary type="html">&lt;p&gt;H: Created page with &amp;quot; '''''procedure ChangeTeam(NewTeam: Byte; JoinType: TJoinType)'''''   NewTeam: ID of new team (0-5)   JoinType: TJoinType ==Description== Moves player to a specified t...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; '''''procedure ChangeTeam(NewTeam: Byte; JoinType: [[TJoinType]])'''''&lt;br /&gt;
  NewTeam: ID of new team (0-5)&lt;br /&gt;
  JoinType: [[TJoinType]]&lt;br /&gt;
==Description==&lt;br /&gt;
Moves player to a specified team&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
Players[1].ChangeTeam(1, TJoinNormal); // Moves player with ID 1 to Alpha team&lt;br /&gt;
&lt;br /&gt;
Players[2].ChangeTeam(1, TJoinSilent); // Moves player with ID 2 to Bravo team and hides join message (&amp;quot;has joined bravo team&amp;quot;)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:TActivePlayer]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=TActivePlayer&amp;diff=3222</id>
		<title>TActivePlayer</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=TActivePlayer&amp;diff=3222"/>
				<updated>2020-05-06T21:10:11Z</updated>
		
		<summary type="html">&lt;p&gt;H: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Inheritance==&lt;br /&gt;
*[[TPlayer]]&lt;br /&gt;
**[[TActivePlayer]]&lt;br /&gt;
**[[TNewPlayer]]&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Represents an active player. Accessible trough [[TPlayers.Player|Players[]]] array property.&lt;br /&gt;
&lt;br /&gt;
user constructable: '''NO'''&amp;lt;br&amp;gt;&lt;br /&gt;
user destructable: '''NO'''&lt;br /&gt;
&lt;br /&gt;
==Members==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Member declaration !! Access mode !! Inherited !! SS Version&lt;br /&gt;
|-&lt;br /&gt;
| function [[TActivePlayer.Ban|Ban]](Time: Integer; Reason: string): Boolean || align=&amp;quot;center&amp;quot; |  || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| function [[TActivePlayer.Kick|Kick]](Reason: TKickReason): Boolean || align=&amp;quot;center&amp;quot; |  || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TActivePlayer.Say|Say]](Text: string) || align=&amp;quot;center&amp;quot; |  || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TActivePlayer.Damage|Damage]](Shooter: Byte; Damage: Integer) || align=&amp;quot;center&amp;quot; |  || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TActivePlayer.BigText|BigText]](Layer: Byte; Text: string; Delay: Integer; Color: Longint; Scale: Single; X, Y: Integer) || align=&amp;quot;center&amp;quot; |  || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TActivePlayer.ForceWeapon|ForceWeapon]](Primary, Secondary: [[TWeapon]]) || align=&amp;quot;center&amp;quot; |  || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TActivePlayer.ForwardTo|ForwardTo]](TargetIP: string; TargetPort: Word; Message: string) || align=&amp;quot;center&amp;quot; |  || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TActivePlayer.GiveBonus|GiveBonus]](BType: Byte) || align=&amp;quot;center&amp;quot; |  || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TActivePlayer.Move|Move]](X, Y: Single) || align=&amp;quot;center&amp;quot; |  || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TActivePlayer.Tell|Tell]](Text: string) || align=&amp;quot;center&amp;quot; |  || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TActivePlayer.WriteConsole|WriteConsole]](Text: string; Color: Longint) || align=&amp;quot;center&amp;quot; |  || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TActivePlayer.WorldText|WorldText]](Layer: Byte; Text: string; Delay: Integer; Color: Longint; Scale, X, Y: Single) || || || 2.7.8.b1&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TActivePlayer.SetVelocity|SetVelocity]](VelX, VelY: Single) || || || 2.7.8.b1&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TActivePlayer.RequestDiscordToken|RequestDiscordToken]] || || || 2.8.2&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TActivePlayer.PlaySound|PlaySound]](Name: string; X, Y: Single) || || || 2.8.2&lt;br /&gt;
|-&lt;br /&gt;
| procedure [[TActivePlayer.ChangeTeam|ChangeTeam]](NewTeam: Byte; JoinType: TJoinType) || || || 2.8.2&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.Name|Name]]: string || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.Health|Health]]: Single || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes || writable since 2.8.2&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.Vest|Vest]]: Single || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes || writable since 2.8.2&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.Primary|Primary]]: [[TPlayerWeapon]] || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.Secondary|Secondary]]: [[TPlayerWeapon]] || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.ShirtColor|ShirtColor]]: Longword || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.PantsColor|PantsColor]]: Longword  || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.SkinColor|SkinColor]]: Longword || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.HairColor|HairColor]]: Longword || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.FavouriteWeapon|FavouriteWeapon]]: string || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.ChosenSecondaryWeapon|ChosenSecondaryWeapon]]: Byte || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.Friend|Friend]]: string || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.Accuracy|Accuracy]]: Byte || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.ShootDead|ShootDead]]: Boolean || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.GrenadeFrequency|GrenadeFrequency]]: Byte || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.Camping|Camping]]: Boolean || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.OnStartUse|OnStartUse]]: Byte || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.HairStyle|HairStyle]]: Byte || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.Headgear|Headgear]]: Byte || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.Chain|Chain]]: Byte || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.ChatFrequency|ChatFrequency]]: Byte || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.ChatKill|ChatKill]]: string || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.ChatDead|ChatDead]]: string || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.ChatLowHealth|ChatLowHealth]]: string || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.ChatSeeEnemy|ChatSeeEnemy]]: string || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.ChatWinning|ChatWinning]]: string || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes&lt;br /&gt;
|-&lt;br /&gt;
| property [[TPlayer.Dummy|Dummy]]: Boolean || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes || writable since 2.8.2&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.ID|ID]]: Byte || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Team|Team]]: Byte || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | yes (modif.)&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Alive|Alive]]: Boolean || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | yes (modif.)&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Kills|Kills]]: Integer || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Deaths|Deaths]]: Integer || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no || W since 2.8.1&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Ping|Ping]]: Integer || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Active|Active]]: Boolean || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.IP|IP]]: string || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Port|Port]]: Word || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.VelX|VelX]]: Single || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.VelY|VelY]]: Single || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Muted|Muted]]: Boolean || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Jets|Jets]]: Integer || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Grenades|Grenades]]: Byte || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.X|X]]: Single || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Y|Y]]: Single || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Flagger|Flagger]]: Boolean || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Time|Time]]: Integer || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnGround|OnGround]]: Boolean || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.IsProne|IsProne]]: Boolean || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no || 2.7.9&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Human|Human]]: Boolean || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Direction|Direction]]: Shortint || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.Flags|Flags]]: Byte || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.HWID|HWID]]: string || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.SteamID|SteamID]]: Int64 || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no || 2.8.2&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.SteamIDString|SteamIDString]]: string || align=&amp;quot;center&amp;quot; | R || align=&amp;quot;center&amp;quot; | no || 2.8.2&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.IsAdmin|IsAdmin]]: Boolean || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no || 2.7.8.b1&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.KeyUp|KeyUp]]: Boolean || align=&amp;quot;center&amp;quot; | RW* || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.KeyLeft|KeyLeft]]: Boolean || align=&amp;quot;center&amp;quot; | RW* || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.KeyRight|KeyRight]]: Boolean || align=&amp;quot;center&amp;quot; | RW* || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.KeyShoot|KeyShoot]]: Boolean || align=&amp;quot;center&amp;quot; | RW* || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.KeyJetpack|KeyJetpack]]: Boolean || align=&amp;quot;center&amp;quot; | RW* || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.KeyGrenade|KeyGrenade]]: Boolean || align=&amp;quot;center&amp;quot; | RW* || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.KeyChangeWeap|KeyChangeWeap]]: Boolean || align=&amp;quot;center&amp;quot; | RW* || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.KeyThrow|KeyThrow]]: Boolean || align=&amp;quot;center&amp;quot; | RW* || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.KeyFlagThrow|KeyFlagThrow]]: Boolean || align=&amp;quot;center&amp;quot; | ?? || align=&amp;quot;center&amp;quot; | no || 2.8.0&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.KeyReload|KeyReload]]: Boolean || align=&amp;quot;center&amp;quot; | RW* || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.KeyCrouch|KeyCrouch]]: Boolean || align=&amp;quot;center&amp;quot; | RW* || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.KeyProne|KeyProne]]: Boolean || align=&amp;quot;center&amp;quot; | RW* || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.MouseAimX|MouseAimX]]: SmallInt || align=&amp;quot;center&amp;quot; | RW* || align=&amp;quot;center&amp;quot; | no || 2.7.9&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.MouseAimY|MouseAimY]]: SmallInt || align=&amp;quot;center&amp;quot; | RW* || align=&amp;quot;center&amp;quot; | no || 2.7.9&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.WeaponActive|WeaponActive]][ID: Byte]: Boolean || align=&amp;quot;center&amp;quot; | W || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnFlagGrab|OnFlagGrab]]: [[TOnFlagGrabEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnFlagReturn|OnFlagReturn]]: [[TOnFlagReturnEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnFlagScore|OnFlagScore]]: [[TOnFlagScoreEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnBeforeRespawn|OnBeforeRespawn]]: [[TOnBeforeRespawnEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnAfterRespawn|OnAfterRespawn]]: [[TOnAfterRespawnEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnDamage|OnDamage]]: [[TOnDamageEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnKill|OnKill]]: [[TOnKillEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnWeaponChange|OnWeaponChange]]: [[TOnWeaponChangeEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnVoteMapStart|OnVoteMapStart]]: [[TOnVoteMapStartEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnVoteKickStart|OnVoteKickStart]]: [[TOnVoteKickStartEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnVoteMap|OnVoteMap]]: [[TOnVoteMapEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnVoteKick|OnVoteKick]]: [[TOnVoteKickEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnSpeak|OnSpeak]]: [[TOnSpeakEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnCommand|OnCommand]]: [[TOnCommandEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnKitPickup|OnKitPickup]]: [[TOnKitPickupEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no || 2.7.8.b1&lt;br /&gt;
|-&lt;br /&gt;
| property [[TActivePlayer.OnFlagDrop|OnFlagDrop]]: [[TOnFlagDropEvent]] || align=&amp;quot;center&amp;quot; | RW || align=&amp;quot;center&amp;quot; | no || 2.7.8.b1&lt;br /&gt;
|}&lt;br /&gt;
'''Note''': writing properties marked with &amp;quot;RW*&amp;quot; affects only bots.&lt;br /&gt;
&lt;br /&gt;
[[Category:Classes]][[Category:TPlayer]]&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=Soldat_on_macOS_and_Linux&amp;diff=3221</id>
		<title>Soldat on macOS and Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=Soldat_on_macOS_and_Linux&amp;diff=3221"/>
				<updated>2020-04-28T20:21:12Z</updated>
		
		<summary type="html">&lt;p&gt;H: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Macoslinux.png|right]]&lt;br /&gt;
=macOS=&lt;br /&gt;
==Experimental native macOS build==&lt;br /&gt;
A native, experimental version of Soldat on macOS is available for download at https://update.soldat.pl/updates/soldatlauncher-0.1.0.dmg&lt;br /&gt;
&lt;br /&gt;
How to install:&lt;br /&gt;
&lt;br /&gt;
# Download and open ''soldatlauncher-0.1.0.dmg''&lt;br /&gt;
# Move ''soldatlauncher'' to ''Applications''. &lt;br /&gt;
# Open ''Finder'', go to ''Applications'' and search for '''soldatlauncher'''&lt;br /&gt;
&lt;br /&gt;
Be warned: This version lacks a fully-featured game menu and is not officially supported.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
Running Soldat 1.7.1 on macOS (High Sierra) Tutorial by '''aveh'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''The setup might not always be such straightforward, and Mac-specwise, Wine -version may need to be different in some cases. Making changes through PlayOnMac UI is rather simple and user-friendly.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
[[File:MacOS Playonmac.png|right|thumb|PlayOnMac Application]][[File:MacOS Opentheapp.png|right|thumb|PlayOnMac Application]]&lt;br /&gt;
# Download '''PlayOnMac''' ([https://www.playonmac.com/en/download.html Link]).&lt;br /&gt;
# Launch and install the program.&lt;br /&gt;
# Inside '''PlayOnMac''' click Install a program, and search for Soldat. It will start installing dependencies, click on Install on these. Then It'll automatically download ''SoldatSetup.exe'' from [http://soldat.pl soldat.pl] and begin Soldat installation automatically.&lt;br /&gt;
# During the installation click '''''next''''' (do not configure anything on this step).&lt;br /&gt;
# Install to default path is '''''C:\Soldat''''' (do not change).&lt;br /&gt;
# Wait for the installation to finish and then edit [[Settings#Config.exe Settings|Config.exe]] to the preferred options for your setup.&lt;br /&gt;
# Open Soldat only through the '''PlayOnMac'''  interface instead of the automatically made desktop icon.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
* To remove mouse acceleration and make mouse feel &amp;quot;Windows-like&amp;quot; ([https://www.reddit.com/r/MouseReview/comments/7bg0n1/removing_mouse_acceleration_in_macos_and_osx_high/ Link]).&lt;br /&gt;
* To remove macOS's &amp;quot;Shake mouse pointer to locate&amp;quot;, go to '''''System Preferences &amp;gt; Accessibility &amp;gt; Display''''', and un-check the Shake mouse pointer to locate box. [ ] &lt;br /&gt;
* '''PlayOnMac''' instructs to install XQuartz (instead of using X11), this might cause in-game lag (it will ask every time you open '''PlayOnMac''', just ignore it).&lt;br /&gt;
* To edit ''[[Profiles and Taunts|taunts.txt]] / [[Soldat.ini|soldat.ini]]'' to your personal preference, open '''PlayOnMac''', secondary click on Soldat and select &amp;quot;Open the application's directory&amp;quot;. This will open the Soldat directory.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Setup specifications used in this guide==&lt;br /&gt;
                 ###                 &lt;br /&gt;
               ####         &lt;br /&gt;
               ###                   &lt;br /&gt;
       #######    #######             &lt;br /&gt;
     ######################           &amp;lt;u&amp;gt;Distro&amp;lt;/u&amp;gt;: OS X 10.13.4 (High Sierra)&lt;br /&gt;
    #####################             &amp;lt;u&amp;gt;CPU&amp;lt;/u&amp;gt;: Intel Core i5-4690 CPU @ 3.50GHz&lt;br /&gt;
    ####################              &amp;lt;u&amp;gt;GPU&amp;lt;/u&amp;gt;: AMD Radeon R9 285X 2GB&lt;br /&gt;
    ####################              &amp;lt;u&amp;gt;Memory&amp;lt;/u&amp;gt;: 8 GB&lt;br /&gt;
    #####################             &lt;br /&gt;
     ######################           &lt;br /&gt;
      ####################  &lt;br /&gt;
        ################&lt;br /&gt;
         ####     #####&lt;br /&gt;
&lt;br /&gt;
=Linux=&lt;br /&gt;
==Experimental native Linux build==&lt;br /&gt;
A native, experimental version of Soldat on Linux is available for download at https://update.soldat.pl/updates/soldat_linux.zip&lt;br /&gt;
&lt;br /&gt;
How to install: &lt;br /&gt;
&lt;br /&gt;
# Download and unzip ''soldat_linux.zip''&lt;br /&gt;
# Run ''soldatlauncher-0.1.0.AppImage''&lt;br /&gt;
&lt;br /&gt;
Be warned: This version lacks a fully-featured game menu and is not officially supported.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
Running Soldat 1.7.1 on Linux Tutorial by '''SyavX'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
Fairly similar to the steps for macOS, but with [https://www.playonlinux.com/en/download.html PlayOnLinux]. However, it might be necessary to enable Video Compatibility in Config.exe in case the visuals are not loading properly, or getting an &amp;quot;Access violation&amp;quot; error after entering the game.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In order to open config.exe you'll have to click on the Soldat application configure button, and there switch to &amp;quot;Other&amp;quot;/&amp;quot;Misc&amp;quot; tab, then click on &amp;quot;Run .exe on this virtual drive&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Inside config.exe go to &amp;quot;More&amp;quot; Tab and check the video compatibility box.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Setup specifications used in this guide==&lt;br /&gt;
&amp;lt;u&amp;gt;Distro&amp;lt;/u&amp;gt;: Xubuntu 17.10&lt;/div&gt;</summary>
		<author><name>H</name></author>	</entry>

	</feed>