- Fix version file URL link and make copy of file in old location to prompt legacy users to update
- Minor documentation updates
- Recompiled for KSP 1.3.1
- Add text tags:
<Mass>
- total mass of active vessel in kg<Cost>
- total cost of active vessel<PartCount>
- number of parts in active vessel
- Recompiled for KSP 1.3 - NOT compatible with KSP 1.2.2
BREAKING CHANGE
-
Move Historian install folder from
GameData/KSEA/Historian
toGameData/Historian
. If upgrading from Historian version 1.2.8 or earlier then any custom layouts must be copied to the new location and the old folder deleted. -
Localisation support
- where stock game provides localised values these will be displayed by
TEXT
tags. e.g. planet names, biomes, vessel types etc. - the file
GameData/Historian/Localisation.cfg
contains all the non-stock text strings used by Historian. This can be used to localise these values also (I don't know any of the other languages well enough to attempt this myself) - Date and Time formatting is delegated to the ingame default dateTimeFormatter allowing standard localised Kerbin and Earth calendar dates (as well as UT and MET) to be displayed
- where stock game provides localised values these will be displayed by
-
Parsing of
TEXT
(and associated) blocks occurs only once when the layout is loaded rather than on every draw event as in previous versions. A parsed expression tree is cached and executed on each draw instead. This should improve both memory usage and performance in all but trivial layouts. -
Improvements to tag parser and evaluator to allow tags to accept parameters
<Date(format)>
override the default dateTimeFormatter using a standard .NET date/time formatting string e.g. <Date(dd/MM/yyyy)>. See documentation for more details.<Crew(isList, isShort, showSuffix, traits)>
replaces the existing<Crew>
,<CrewShort>
,<CrewList>
,<Pilots>
,<PilotsShort>
etc. with a single configurable tag (previous tags are retained for backwards compatibility but are now deprecated and support may be dropped in a future version).isList
- if true displays crew names in a verticle bulleted list. If false names are displayed inline separated by commasisShort
- if true the surname (Kerman or localised equivalent) is displayed only once at end of list. This setting is ignored ifisList=true
.showSuffix
- if true then a trait abbreviation will be shown after each name e.g. Jebediah Kerman (P), Bill Kerman (E). The abbreviations can be defined in the newTRAIT
block orTRAITDEFINITIONS
file.traits
- a comma separated list of which types of crew should be listed or ALL to list everyone- Example:
<Crew(false, true, true, Pilots, Scouts)>
will be a comma separated list of the first names of all piots or scouts on the current vessel. See the documentation for full details and more examples.
-
The
TEXT
element propertyDateFormat
is now deprecated in favour of the parameterised<Date>
tag described above -
The
TEXT
element propertiesPilotColor
,ScientistColor
,EngineerColor
andTouristColor
are now deprecated in favour of usingTRAIT
orTRAITDEFINITIONS
. See documentation for details. -
Fix: -ve values were always displayed in base units instead of most appropriate unit (i.e. -99999m instead of -99.999km)
-
Revised and reformatted documentation
-
Additional example layouts
- Updated
SITUATION_TEXT
,ACTION_TEXT
andTEXT_LIST
to use new tokenized string loader and evaluator - Update source files with consistent licecnse header
- Moved readme and changelog into Historian folder rather than root of archive
BREAKING CHANGE
- Move Historian install folder from
GameData/KSEA/Historian
toGameData/Historian
- any custom layouts must be copied to the new location and the old folder deleted.
- Refactor text parsing to move tokenizer into layout load rather than OnDraw should improve performance of layouts with large number of tags substantially with no penalty to simple layouts
- Add unit tests for text parser tokenizing and reconstituting
- Add initial support for parameterized tags (e.g.
Crew(Medics)
) - actual tags still to be implemented - Add
TRAIT { Name Suffix Color }
block level node on TEXT element definition for specifying trait names, colours and abbreviations (to support for custom traits e.g. from USI MKS) - legacy PilotColor etc. still supported
KNOWN ISSUES
- Tokenized parsing not yet implemented for layout blocks inheriting from TEXT so they currently show blank
- Fix issue #10 where configuration dialog would not show correctly if settings.cfg file had to be created during start-up (e.g. after first installing mod and add action to Visual Studio build sequence to automatically delete settings.cfg so I don't overlook this breaking in the future
- Add configuration option to allow setting text to be shown for empty crew slots i.e. in
pilot
,scientist
,engineer
(and short or list variants) tags when no crew of that type are present in vessel. Default = None (same as previous version) - Add configuration option to allow setting text to be shown in
Crew
,CrewShort
orCrewList
tags for a vessel with no crew. Default = unmanned (same as previous version). - Fix #13 Out by one error when displaying Kerbin formatted dates.
- Modify text parsing routines to remove many temporary strings and to use cached stringbuilder if available. Should reduce garbage collection footprint.
- Recompile for 1.2.1
- Update toolbar wrapper to latest version for compatibility with Contract Configurator
- Not tested against Kerbal Konstructs or KSCSwitcher as no 1.2 compatible versions exist at this time
- Add setting to configure Blizzy's Toolbar right click action to toggle either "Suppressed", "Always Active" or "Auto Hide UI"
- add
Name
property to all elements - add new
INHERIT
element.- required
LayoutName
property to specify layout to inherit from (e.g.LayoutName = test.layout
). NOTE: the layout file name is case sensitive - optional
EXCLUDE
block with list of namedElement
blocks from inherited layout to exclude from combined layout (Example).
- required
- Add settings window option to Auto Hide UI when taking screen shot. (Caution do not use this with other mods that also auto-hide the UI)
- Extend maximum configurable setting for
Time to remember action
to 10s following additional play testing. - Fix issue #5 - Action text persists longer than configured
- Fix issue #6 - TEXT_LIST generating ArgumentOutOfRange exceptions just after lift-off
- Add new elements:
- ACTION_TEXT: conditional message when abort, stage or action group pressed
- TEXT_LIST: random or sequential list of messages to display based on situation
- Added
EvaOnly
property toggle toSITUATION_TEXT
andTEXT_LIST
- Added
Clambering
,OnLadder
andRagDolled
situations toSITUATION_TEXT
andTEXT_LIST
. - Add settings window fields to customise Kerbal day and month names.
- Add settings window slider for
Time to remember action
- Changed
Climbing
toOnLadder
andClambering
- Settings window field for customising time to 'remember' action key
- Added
EvaOnly
,Climbing
andRagDolled
situation switches - Settings window fields for customising Kerbal day and month names.
- Fix toggling of editor menu display when both toolbar and app launcher button are used.
- Clean up debug log messages
- TEXT_LIST and ACTION_TEXT situation aware
- Add new element TEXT_LIST
- Add new element ACTION_TEXT
- Revert persistence model to config file format and set save path to
GameData\KSEA\Historian\Plugins\PluginData
- Fix: BUG - multiple layouts overlaying each other
- Fix: BUG - semi-transparent rectangle elements becoming increasingly opaque over multiple screenshots
- Fix: potential problem with configuration window id clashing with window ids from other mods.
- Change persistence model for configuration settings to use game save files rather than a config file in GameData. NOTE: Starting a new save will set configuration to default values. Reverting a flight or quickloading may load an older version of the configuration if you've made recent changes.
- Regression fix for
DateFormat
- same issue as with crew trait colouring
- Add text node parameters:
VesselType
- the type of vessel e.g. probe, debris, lander etc.RealDate
- the real world date and time formatted using the block level DateFormat setting
- Support for Kerbal Konstructs](http://forum.kerbalspaceprogram.com/index.php?/topic/94863-112-kerbal-konstructs-v0967_ex-holy-glowing-balls-batman/) and Kerbin Side
LaunchSite
modified to detect most recently set KK launch siteKK-SpaceCenter
- the closest detected "space center"KK-Distance
- the straight line distance from the closest detected "space center"
- Setting added to main configuration dialog for "Default space center name". Will replace "KSC" in
LaunchSite
orKK-SpaceCenter
parameter results. NOTE: only replaces the value if "KSC" is the full return value. "KSC Launch pad", "Kerbal Space Center" or similar results will NOT be affected TEXT
andSITUATION_TEXT
blocks can now specify aFont
property for the name of the OS font to use to display the block. NOTE: font name must EXACTLY match OS font name. A utility parameterListFonts
is supplied to list the names of all installed fonts.- "Historian.cfg" moved to
GameData\KSEA\Historian\Plugins
folder to avoid interfering with Module Manager caching. - Current version number displayed in settings window title bar
- General code clean-up and refactoring
- Compile against 1.1.2 KSP.
- Fix: regression fix for missing "Flying" situation trigger.
- Fix: regression fix for missing "Flying" situation trigger.
- Fix: Compatibility for Automatic Screenshots and Saves
- Fix: Compatibility for Automatic Screenshots and Saves
- Fix: remove debug message from crew names.
- Fix: crew trait colours not showing correctly
- Fix:
<UT>
incorrectly included base year now shows first year as Y1 etc.
- initial recompile for KSP 1.1 Pre
- Earth dates can be specified in two formats. "Normal" fixed length 365d year used by game engine or "KAC compatible" variable length years. If using variable length years, the in-game day 1 of a year may not be 1 January.
- Add text node parameters for date support:
- DateKAC - formatted date calculated based on number of seconds (UT) since base start date. This date includes leap years.
- YearKAC - the current year of the variable length date. At start and end of year may not match the Yx Dx display shown in game.
- DayKAC - the current day of the variable length date. At start and end of year may not match the Yx Dx display shown in game. Some years will have 366 days.
- MET - an alias for T+. The mission ellapsed time.
- Fix: MET was incorrectly calculated for periods > 1 day.
- Fix: MET always showed Kerbin based periods even when calendarmode is set to Earth.
- Add text node parameters:
- Target - name of currently targeted vessel or body (if any)
- LaunchSite - shows 'KSC' unless KSCSwitcher is installed then it will show the active launch site's name (e.g. Cape Canaveral)
- minor refactoring of situation text.
- refactor
TEXT
node parsing - Add text node parameters:
- LatitudeDMS (degrees, minutes, seconds) e.g. 2° 5' 33" N
- LongitudeDMS (degrees, minutes, seconds) e,g 72° 12' 40" W
- SrfSpeed - surface speed (same as Speed)
- OrbSpeed - orbital speed
Longitude
andLongitudeDMS
parameters always reports value between -180° (W) and +180° (E)- Optional
BackgroundTexture
parameter for flag nodes. Allows adding a background texture to transparent flags. e.g.BackgroundTexture = Squad/Flags/minimalistic
(simple "rippled" white flag background)