#4629: new configuration options mapZoom, mapZoomRate, radarZoom, cameraSpeed
(previously called scroll), radarJump and scrollEvent
-------------------------------------------------+-------------------------
        Reporter:  Forgon                        |      Owner:
            Type:  patch (an actual patch, not   |     Status:  new
  a request for one)                             |  Milestone:  unspecified
        Priority:  normal                        |    Version:  unspecified
       Component:  other                         |
Operating System:  All/Non-Specific              |
-------------------------------------------------+-------------------------
 This patch series introduces 6 new configuration options among minor
 changes that are related to them. Overall there are 12 commits, which
 should be tested in the order in which they are attached, since some of
 them depend on each other. A few words need translation into foreign
 languages, to be done by people other than me.

 === Configuration options for mapZoom, mapZoomRate and radarZoom

 mapZoom changes the starting height of the camera
 - default value STARTDISTANCE (previously called START_DISTANCE) increased
 from 2000 to 2500
 - values continue to range from 500 to 5000 (larger values that are
 available in debug mode are broken)
 - savegames <= 10 keep starting at 1500 height, defined in
 OLD_START_HEIGHT (previously called START_HEIGHT)
 - set in steps of mapZoomRate

 mapZoomRate changes zoom speed
 - default value 250 (previously 1000/3)
 - values range from 50 to 500

 With the scrollwheel, one turn of the scrollwheel will change the zoom by
 exactly the value of 'mapZoomRate'. The key bindings for 'Zoom in' and
 'Zoom out' are less precise.

 radarZoom changes the size of the minimap
 - values continue to range from 8 to 64 in steps of 4
 - default value 16 -- all the time. For maps with width < 150 like Sk-Rush
 it was previously set to 32 (or 14 with small screens). This may confuse
 some players, yet setting this option is trivial. A short announcement on
 website and forums might help.

 Most good players zoom into the minimap and out of the map once a game
 starts. Expect that almost everyone will use these options once they are
 released.

 Minor changes related to this:
 - removed a routine that assumed radar zoom < 4 while the minimum value is
 8
 - removed a line in './src/game.cpp' that set radar zoom in function
 'gameLoadV()' because it is also set in function 'loadGame()'. Please
 refactor this further, it looks as though identical code is run twice!
 - display an info message atop of the screen when radar/map zoom is
 changed ingame through mouse/keyboard (see attached image [raw-
 attachment:zoom_info_message.png]). It is important that the messages are
 only shown in this situation, otherwise they would also appear at the
 beginning of every (save-)game

 I had to rename "Audio Options" to "Audio and Zoom Options" to make room
 for new options. To assure no invalid values can be displayed or set
 there, I altered the template 'stepCycle()' which is now called
 'seqCycle()' and takes its argumenst similar to seq(1) in coreutils.

 Besides, I removed an empty function 'closeConfig()'. I recently caused a
 linker error by removing code (commit
 88c1e9c9f3beb10f1e747f7854d384f076b8cf76), so I should not claim it is
 useless. If it has a purpose, you might add a helpful comment above it.

 === Configuration options for camera speed (previously called scroll),
 radar jump and scroll event

 cameraSpeed sets the speed of horizontal movement on the map, e.g. when
 using arrow keys
 - no longer with a confusing name. I assumed that an option called scroll
 had something to do with zoom speed, as have probably other players.
 - values range from 1100 to 6000 (previously 900-2400), set in steps of
 100. I found the highest value about right.
 - replaced broken slider with button. The slider was set to 900 (100, 800
 added later) in both its lowest and second-lowest setting, and the player
 could not know what precise value he had set.

 It should be mentioned during the next release that the config file
 variable scroll is obsolete, though I suspect most players never knew what
 it did.

 radarJump determines camera behaviour when right clicking on the minimap.
 Possible values:
 - Instant (true): Instantly jump to the targeted location. Experienced
 players navigate via minimap and they should like this feature.
 - Tracked (false): Slowly pan to the target while shaking the camera
 (default)

 A new button in "Graphics Options" allows setting this option
 interactively.

 scrollEvent changes the function of the scroll wheel. Possible values:
 - 0: set map/radar zoom (default)
 - 1: set game speed
 - 2: set camera pitch (rotation around x-axis)

 A new button in "Mouse Options" allows setting this option interactively.

 Minor changes related to this:
 - abolish obscure key mapping 'Left Alt + Left Ctrl + Scroll' to change
 game speed (obsolete through scrollEvent)
 - abolish pressing 'Left Alt + Middle Mouse' as an obscure alternative to
 right-clicking on the minimap

 === Prettier "Options" menus

 The "Game Options" string "English (United Kingdom)" is too long for the
 layout (see attached image [raw-attachment:english_uk_layout_error.png]),
 so I changed it to "British English".

 All game options are re-aligned along the same lines with a bit more space
 for text as a consequence. The attached image [raw-
 attachment:options_overview.png] shows all modified menus before this
 patch above their improved counterparts below with red lines indicating
 where text is to be aligned.

--
Ticket URL: <http://developer.wz2100.net/ticket/4629>
Warzone 2100 Trac <http://developer.wz2100.net/>
The Warzone 2100 Project
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Warzone2100-project mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/warzone2100-project

Reply via email to