2025-07-31 20:06 CEST

Changesets: spring

Search ] Browse ] Back to Index ]
develop b2b4740b
Timestamp: 2013-12-19 19:28:29
Author: rt
Details ] Diff ]
fix 0004053

caused by 81eb12c99633f560966606fe5727995459f622ee which allows pointers to
GARBAGE-COLLECTED Lua memory to be inserted into the log system (and because
LuaIntro/main.lua calls Spring.SetLogSectionFilterLevel this happens in every
game)

the callout itself will not work in any case, see Section.h
mod - rts/Lua/LuaIntro.cpp Diff ] File ]
mod - rts/Lua/LuaUnsyncedCtrl.cpp Diff ] File ]
mod - rts/Lua/LuaUnsyncedRead.cpp Diff ] File ]
mod - rts/System/Input/InputHandler.cpp Diff ] File ]
mod - rts/System/Input/InputHandler.h Diff ] File ]
mod - rts/System/Log/Backend.cpp Diff ] File ]
mod - rts/System/Log/DefaultFilter.cpp Diff ] File ]
mod - rts/System/Log/DefaultFilter.h Diff ] File ]
mod - rts/System/Log/DefaultFormatter.cpp Diff ] File ]
mod - rts/System/Log/ILog.h Diff ] File ]
mod - rts/System/Log/Section.h Diff ] File ]
mod - rts/System/SpringApp.cpp Diff ] File ]
develop 7fa2939d
Timestamp: 2013-12-19 13:02:40
Author: Major Bor3d0m
Details ] Diff ]
Changes
-------
This commit adds "key mode" functionality to spring 95.

A key mode is a keyboard state that is temporarily activated when you press a key.
Once it is active, other key bindings become temporarily available. This allows you
to create sequences (e.g. usually of just 2 or 3 keys) which have a unique meaning,
and it greatly expands the number of keyboard controls that can be bound to commands.

Example
-------
Using key modes you can have hotkey sequences such as:

ctrl+e,ctrl+e -> select all aircraft
ctrl+e,ctrl+r -> select all builders
ctrl+e,ctrl+t -> select all buildings
ctrl+e,ctrl+a -> select everything

To make this work, edit uikeys.txt with the text:

unbind ctrl+e
bind ctrl+e @selmode
bind @selmode+ctrl+e select AllMap+_Aircraft+_ClearSelection_SelectAll+
bind @selmode+ctrl+r select AllMap+_Builder+_ClearSelection_SelectAll+
bind @selmode+ctrl+t select AllMap+_Building+_ClearSelection_SelectAll+
bind @selmode+ctrl+a select AllMap++_ClearSelection_SelectAll+

Explanation
-----------
In the second line, we bind ctrl+e to a mode called "selmode". This text is arbitrary -- you can
call the mode anything you like as long as it is prefixed by the symbol '@'.

In the subsequent lines, we can treat "@selmode" as a modifier just like shift, alt, or ctrl.
In these lines, the key sequence that follows is only active when "selmode" is activated.
The requirement is that the mode modifier "@selmode" has to come at the start of the key sequence.

This is the Wrong Way:
bind ctrl+@selmode+a select AllMap++_ClearSelection_SelectAll+
..this will not work.

You should not try to bind the same key to multiple actions if one of the actions is a key mode activation.
For example, the following is allowed in uikeys.txt, but will not work:

bind ctrl+e say I want this action to occur
bind ctrl+e @selmode

Here, the key mode activation will be "hidden" by the first binding. They will not "cycle" as you may
be used to seeing with most mods. ***A key mode must be the only _action_ bound to a key or key sequence.***

However, you can chain together multiple modes to create 3-step, 4-step, or longer length sequences.
For example,

bind ctrl+e @modestep1
bind @modestep1+ctrl+e @modestep2
bind @modestep2+ctrl+s say Hello!

This defines a sequence
ctrl+e,ctrl+e,ctrl+s -> say "Hello!"

The possibilities are endless! Note that the suffix sequence ctrl+e,ctrl+s might still do nothing by itself.

Configuration setting in springsettings.cfg
-------------------------------------------
Finally, you can control how long a keyboard mode lasts before the default keybindings
are reset. Any key mode that is activated will be deactivated and the default keybindings
restored after this delay. This means that if you hit the first key and want to abort,
you can simply wait out the delay and the default bindings will be restored.
The configuration setting is KeyModeResetTime and is measured in milliseconds. The default
value is 400 -- this has been found to be "comfortable". If you are a very twitchy player
and can hit key combinations fast, you may like to try 200-300 or so. Remember that you
need to hit the second (and subsequent) keys in the combination before the reset time expires
or those keys will get sent to the default binding rather than the named key mode binding.
There is also a configuration setting called KeyModeSustain. If this is set to true, the current
key mode will be sustained after a key that uses it has been pushed. This lets you re-use
the same mode for multiple subsequent keystrokes if those subsequent keys share the same mode.
Setting this value to false will mean the that default key bindings are re-activated immediately
after you use a key that is bound into a particular mode.

Enjoy,
-MajBoredom

- fixed unbind so that it will accept only one parameter, the key sequence
- unchanged a lexical modification that occurred in the last commit
- added a new boolean configuration parameter KeyModeSustain
mod - rts/Game/Game.cpp Diff ] File ]
mod - rts/Game/UI/KeyBindings.cpp Diff ] File ]
mod - rts/Game/UI/KeyBindings.h Diff ] File ]
develop 0bfe0dd2
Timestamp: 2013-12-19 01:29:48
Author: rt
Details ] Diff ]
fix 0004215
mod - rts/Game/GameHelper.cpp Diff ] File ]
mod - rts/Sim/Features/Feature.cpp Diff ] File ]
mod - rts/Sim/MoveTypes/MoveMath/MoveMath.cpp Diff ] File ]
mod - rts/Sim/Objects/SolidObject.cpp Diff ] File ]
mod - rts/Sim/Objects/SolidObject.h Diff ] File ]
mod - rts/Sim/Units/CommandAI/BuilderCAI.cpp Diff ] File ]
mod - rts/Sim/Units/CommandAI/BuilderCAI.h Diff ] File ]
mod - rts/Sim/Units/Unit.cpp Diff ] File ]
mod - rts/Sim/Units/Unit.h Diff ] File ]
develop df27b2b5
Timestamp: 2013-12-15 03:03:02
Author: rt
Details ] Diff ]
#fix 4209
mod - rts/Sim/Misc/InterceptHandler.cpp Diff ] File ]
develop 9228a54d
Timestamp: 2013-12-12 20:14:13
Author: jK
Details ] Diff ]
speedup colletgarbage
mod - rts/Lua/LuaHandle.cpp Diff ] File ]
develop e9c19889
Timestamp: 2013-12-12 19:08:16
Author: rt
Details ] Diff ]
fix 0004205
mod - rts/Game/GameHelper.cpp Diff ] File ]
mod - rts/Sim/MoveTypes/MoveDefHandler.cpp Diff ] File ]
mod - rts/Sim/MoveTypes/MoveDefHandler.h Diff ] File ]
mod - rts/Sim/Units/CommandAI/TransportCAI.cpp Diff ] File ]
mod - rts/Sim/Units/UnitDef.cpp Diff ] File ]
mod - rts/Sim/Units/UnitDef.h Diff ] File ]
mod - rts/Sim/Units/UnitTypes/TransportUnit.cpp Diff ] File ]
mod - rts/Sim/Units/UnitTypes/TransportUnit.h Diff ] File ]
develop 3cdc41e6
Timestamp: 2013-12-12 00:24:48
Author: rt
Details ] Diff ]
LogOutput: make runtime section log-levels configurable by users
mod - rts/System/LogOutput.cpp Diff ] File ]
mod - rts/System/LogOutput.h Diff ] File ]
develop f0748f71
Timestamp: 2013-12-11 04:20:44
Author: rt
Details ] Diff ]
style/nlc
mod - rts/Lua/LuaSyncedRead.cpp Diff ] File ]
mod - rts/Rendering/Textures/S3OTextureHandler.cpp Diff ] File ]
mod - rts/Sim/Projectiles/ExplosionGenerator.cpp Diff ] File ]
mod - rts/System/Log/Backend.cpp Diff ] File ]
mod - rts/System/LogOutput.cpp Diff ] File ]
mod - rts/System/Util.cpp Diff ] File ]
mod - rts/System/Util.h Diff ] File ]
develop 0c05e028
Timestamp: 2013-12-11 01:30:05
Author: jK
Details ] Diff ]
use std::begin/std::end again
mod - rts/Sim/Path/Default/PathDataTypes.h Diff ] File ]
develop 0aa2d4d4
Timestamp: 2013-12-10 12:40:51
Author: abma
Details ] Diff ]
Merge pull request 0000089 from AMDmi3/freebsd

Fix clang error
mod - rts/Rendering/Textures/S3OTextureHandler.cpp Diff ] File ]
develop 06e5dcd0
Timestamp: 2013-12-10 12:10:13
Author: abma
Details ] Diff ]
update submodules (mostly freebsd fixes)
mod - AI/Skirmish/KAIK Diff ] File ]
mod - tools/pr-downloader Diff ] File ]
develop 2196e7a4
Timestamp: 2013-12-10 01:50:44
Author: Dmitry Marakasov
Details ] Diff ]
Fix clang error

error: non-constant-expression cannot be narrowed from type 'int' to 'unsigned int' in initializer list [-Wc++11-narrowing]
mod - rts/Rendering/Textures/S3OTextureHandler.cpp Diff ] File ]
develop 9c4a89c0
Timestamp: 2013-12-10 00:41:52
Author: rt
Details ] Diff ]
minor
mod - rts/Sim/Units/CommandAI/MobileCAI.cpp Diff ] File ]
develop ef8ea447
Timestamp: 2013-12-10 00:11:31
Author: rt
Details ] Diff ]
fix 0004203
mod - rts/Sim/Units/CommandAI/MobileCAI.cpp Diff ] File ]
mod - rts/Sim/Units/CommandAI/TransportCAI.cpp Diff ] File ]
develop 7245714c
Timestamp: 2013-12-09 21:58:50
Author: rt
Details ] Diff ]
fix 0004204
mod - rts/Rendering/Models/3DOParser.cpp Diff ] File ]
mod - rts/Rendering/Models/AssParser.cpp Diff ] File ]
mod - rts/Rendering/Models/OBJParser.cpp Diff ] File ]
mod - rts/Rendering/Models/S3OParser.cpp Diff ] File ]
mod - rts/Sim/Misc/DefinitionTag.h Diff ] File ]
mod - rts/System/float3.cpp Diff ] File ]
mod - rts/System/float3.h Diff ] File ]
mod - rts/System/myMath.h Diff ] File ]
develop a2e4c7ac
Timestamp: 2013-12-09 20:04:21
Author: rt
Details ] Diff ]
fix 0004202
mod - rts/Rendering/Textures/Bitmap.cpp Diff ] File ]
mod - rts/Rendering/Textures/Bitmap.h Diff ] File ]
mod - rts/Rendering/Textures/S3OTextureHandler.cpp Diff ] File ]
mod - rts/Rendering/Textures/S3OTextureHandler.h Diff ] File ]
mod - rts/System/FileSystem/VFSHandler.cpp Diff ] File ]
develop dcb0abfa
Timestamp: 2013-12-09 19:28:57
Author: jk3064
Details ] Diff ]
Update PathDataTypes.h
mod - rts/Sim/Path/Default/PathDataTypes.h Diff ] File ]
develop bb0ca845
Timestamp: 2013-12-09 18:21:21
Author: jk3064
Details ] Diff ]
and NULL is no pointer
mod - rts/Sim/Path/Default/PathDataTypes.h Diff ] File ]
develop 254ed7b3
Timestamp: 2013-12-09 18:20:16
Author: jk3064
Details ] Diff ]
std::fill needs iter types
mod - rts/Sim/Path/Default/PathDataTypes.h Diff ] File ]
develop a1786210
Timestamp: 2013-12-09 18:04:24
Author: jk3064
Details ] Diff ]
Merge pull request 0000088 from AMDmi3/freebsd

Changes required to build recent spring on FreeBSD
mod - rts/CMakeLists.txt Diff ] File ]
mod - rts/Sim/Path/Default/PathDataTypes.h Diff ] File ]
mod - rts/Sim/Path/Default/PathFinderDef.cpp Diff ] File ]
mod - rts/System/Platform/Misc.cpp Diff ] File ]
mod - rts/System/Platform/Threading.cpp Diff ] File ]
mod - rts/System/Rectangle.h Diff ] File ]
mod - rts/System/creg/STL_Map.h Diff ] File ]
mod - rts/System/creg/STL_Set.h Diff ] File ]
mod - rts/builds/dedicated/CMakeLists.txt Diff ] File ]
mod - rts/lib/assimp/include/assimp/Compiler/poppack1.h Diff ] File ]
mod - rts/lib/assimp/include/assimp/Compiler/pushpack1.h Diff ] File ]
mod - rts/lib/gml/gmlcls.h Diff ] File ]
mod - rts/lib/headlessStubs/CMakeLists.txt Diff ] File ]
develop 1906da60
Timestamp: 2013-12-09 01:19:16
Author: rt
Details ] Diff ]
fix 0003749
mod - rts/Sim/Units/Unit.cpp Diff ] File ]
develop 7b8d977e
Timestamp: 2013-12-09 00:33:48
Author: rt
Details ] Diff ]
fix 0004197
mod - rts/Sim/MoveTypes/GroundMoveType.cpp Diff ] File ]
develop 15b8aba8
Timestamp: 2013-12-08 22:46:25
Author: rt
Details ] Diff ]
fix #4200
mod - rts/Net/NetCommands.cpp Diff ] File ]
mod - rts/Sim/MoveTypes/ClassicGroundMoveType.cpp Diff ] File ]
mod - rts/Sim/MoveTypes/GroundMoveType.cpp Diff ] File ]
mod - rts/Sim/MoveTypes/HoverAirMoveType.cpp Diff ] File ]
mod - rts/Sim/MoveTypes/StrafeAirMoveType.cpp Diff ] File ]
mod - rts/Sim/Units/Unit.h Diff ] File ]
mod - rts/Sim/Weapons/BeamLaser.cpp Diff ] File ]
mod - rts/Sim/Weapons/Cannon.cpp Diff ] File ]
develop 31f69509
Timestamp: 2013-12-08 02:53:21
Author: jK
Details ] Diff ]
fix compile the 2nd
mod - rts/System/FileSystem/ArchiveScanner.cpp Diff ] File ]
develop 2d05c290
Timestamp: 2013-12-08 02:47:32
Author: rt
Details ] Diff ]
add new config-option 'UseNetMessageSmoothingBuffer'
mod - rts/Game/Game.cpp Diff ] File ]
mod - rts/Game/Game.h Diff ] File ]
mod - rts/Net/NetCommands.cpp Diff ] File ]
mod - rts/System/GlobalConfig.cpp Diff ] File ]
mod - rts/System/GlobalConfig.h Diff ] File ]
First  Prev  1 2 3 ... 110 ... 220 ... 325 326 327 328 329 330 331 ... 440 ... 550 ... 660 ... 770 ... 880 ... 990 ... 1057 1058 1059  Next  Last