It's solution for missing hit/shot/etc. sounds:
1. decrease priority of ambient sounds to low, in order to hear more
non-ambient sounds with priority greater than low;
2. increase amount of sound channels to hear more sounds. Newer sound
cards on PC should be able to use more channels than only 32;
3. improve preset sound settings.
Remark: after these changes for default value of mapsoundrefresh (10)
break in playing ambient sounds, caused by playing sounds with greater
priority, isn't practically audible. The break is audible for greater
value, for example for mapsoundrefresh=1000.
Remarks:
1. Changed order in keycmds lets to keep alphabetical order in saved.cfg .
2. Earlier long information in docs about arguments of command could be
invisible for low aspect ratio (example: "weapon" command), now it's fixed.
Before values of botsshoot and idlebots were showed wrong, when bot mode
wasn't earlier triggered, and later these values were overwrote after
start of bot mode (thx harps).
getvarrange <what> <varname>
Gets range attribute <what> for builtin variable <varname>.
what
one of "min", "max" or "default"
varname
name of any builtin variable (integer or float)
DOCREF getvarrange
menuselectionpersistent
Enables persistent selections for the currently displayed menu and also
restores a previously saved selection. Probably most efficient inside
"menuinit". The position is restored during execution of this command,
so the menu entry has to already exist and the alias with the last
position has to be read from saved.cfg. In autmatically created menus
it may be necessary to execute the command with a short delay (see
examples in this commit).
DOCREF menuselectionpersistent
When textures of the map geometry are changed, five textures around the
current pick from the "last used" stack are shown. The texture assigned
to the "sky" slot is not shown. Instead, a plain blue rectangle is used.
hudtexttl
Time to show texture preview (in milliseconds).
DOCREF hudtexttl
Also: add '\a' to the list of escaped characters and remove storage of
unneeded "filename".
mitemaltfont <altfont> <text> <action> <hoveraction> <desc>
Displays a menu line with a text which may contain chars from an
alternate font.
altfont
Name of the alternate font.
text
Content of menu line. Chars from the alternate font have to be marked
with "\a". Alternate font chars have no width and are just rendered
above the following text. Use spaces to counter that.
action, hoveraction, desc
Same function as with other menu lines.
DOCREF menuitemaltfont
Added features on minimap/radar:
1. local player is visible only when he doesn't follow;
2. player followed (watched) in third person point of view is visible
and his team too;
3. fix issue #99 ;
4. fix map position on radar, when player is followed in 3rd person pov -
before map didn't move with the followed player.
Create the rotation matrix with quaternions to avoid gimbal lock. The
matrix is created in a way, which has pitch and yaw behave as before.
Some of the quaternion code is borrowed from sauer, some from Q47 of the
Quaternions FAQ at http://vamos.sourceforge.net/matrixfaq.htm.
4th parameter of the "mapmodel" command is now a scale factor between
0.25 and 4.0. Values outside that range (like the dummy zero from old
map config files) are interpreted as 1.0
Scaling does not affect the clipping, which has to be adjusted manually.
DOCREF mapmodel editmapmodelslot
deletetextureslot <texture slot number> <"purge"> <replacement slot>
Deletes an unused texture slot. If "purge" is specified as second
argument, it also deletes an used slot. All mapmodels that use that
texture as skin are changed to default skin. All world geometry, which
uses the texture, is instead set to use slot #255 or a specified
replacement slot. Slots below #5 always require "purge", no matter if
they are in use (default slots). Also enables automapconfig.
DOCREF deletetextureslot
chmenutexture <menu name> <texture path>
Displays a texture on the right side of a menu.
menutexturesize <size factor>
Changes the size of textures displayed in menus. Mostly for testing
purposes.
DOCREF chmenutexture menutexturesize
textureslotusagelist <what>
Return a list of 256 numbers representing the number of uses for every
texture slot. If <what> is "onlygeometry", uses as map model skin do
not count. If <what> is "onlymodels", the uses in map geometry do not
count.
gettextureorigin <path>
Returns the location where the texture actually can be found. The
possibilities are:
"official": texture was found in the working directory, which
indicates an official texture.
"custom": texture was found in the profile directory, which means,
the texture is either manually installed or downloaded.
"package dir #x": texture was found in a mod directory.
"<file not found>": that.
textureslotbyname <texture path>
Returns the list of numbers of all texture slots which use that texture
file.
edittexturestack <floor|wall|ceiling> <texture slot number>
Puts a texture slot in a "last used" list up front. The first
parameter picks the list, the second parameter is the texture
slot number to be used for the next edit
getautomapconfig
Returns "1" if automapconfig is already enabled, "0" otherwise.
getmapsoundorigin <path>
Returns the location where the map sound file actually can be found. The
possibilities are:
"official": the sound file was found in the working directory, which
indicates an official mapsound.
"custom": the file was found in the profile directory, which means,
the mapsound is either manually installed or downloaded.
"package dir #x": mapsound was found in a mod directory.
"<file not found>": that.
mapsoundslotbyname <mapsound path>
Returns the list of numbers of all mapsound slots which use that texture
file.
getmapsoundlist
Returns a list of all *.wav and *.ogg files below packages/audio/ambient.
DOCREF textureslotusagelist gettextureorigin textureslotbyname
DOCREF edittexturestack getautomapconfig
DOCREF getmapsoundorigin mapsoundslotbyname getmapsoundlist
"findfilelocation" contains the location, where the file was found.
Not a nice solution, but nice enough :)
Note: if the location is FFL_WORKDIR, the existence of the file has not
actually been checked yet.
The command mapmodelattributes is now more appropriately named
"getmapmodelattributes", and the former "getmapmodelattributes" is now
named "listallmapmodelattributes".
DOCREF listallmapmodelattributes getmapmodelattributes
Moves a menu away from the middle of the screen. Values of "100" represent
half the screen width and height.
menurenderoffset x-offset y-offset
DOCREF menurenderoffset
Pressing the middle mouse button toggles a pin on the "closest entity"
selector. The HUD will indicate the lock by showing "pinned" instead of
"closest" entity. All actions, that would otherwise affect the closest
entity, will affect the pinned entity instead. Deleting the locked entity
will unlock it.
toggleclosestentpin
Toggles the pin on the "closest ent" selector. Bound to MOUSE3
by default.
DOCREF togglelockclosestent
The performance drop is quite small and can completely be disabled by
"hirestextures 0", if needed.
May be revoked, if mappers have no use for it. Just assume this feature to
stay, if textures emerge, which benefit from factor 4 over factor 2.
DOCREF texture
When blocks of map geometry are copy-pasted between maps (or xmaps), this
commit translates the texture slot numbers between different texture
config sets. Missing textures are assigned a slot in the target map.
When texture slots are added, automapconfig gets enabled.
If the paste gets removed by the undo function, the newly assigned texture
slots will NOT be removed. This is by design.
Until now, every texture file was only loaded once after game start. When
a subsequent use of an already in use texture required a different
scaling factor, the texture was not reloaded. Simultaneous use of one
texture file with different scaling factors was completely impossible.
Now, the scaling factor is treated as part of the file name. Therefore, a
texture will be loaded again, if it is needed in a different scaling
factor.
Also: using out of range scaling factors with the "texture" command now
results in an error message. Some map config authors don't use the command
properly...
Also: removed the unneeded createtexturefromsurface()
The commit increases very much speed of demo rewind and also prevents
AC freeze for gamespeed = 1000.
It may degrade physics for gamespeed = 1000 on very low end machines.