What's new in Skyscraper 2.0 Alpha 11 Update 2
Apr 15, 2023
- Don't process a key down event if the key is actually up, this fixes a "stuck key" issue on some systems
- Updated starting position for Dellerton Plaza building
- Reverted the PolyMesh geometry system cleanups, due to performance problems
- Made Level errors non-fatal
- Fixed a script error in the Skyscrapersim Housing Estate building
New in Skyscraper 2.0 Alpha 11 Update 1 (Apr 3, 2023)
- Changelog:
- Object selection fixes for the People Manager dialog
- Updated guide to reflect collider filename change
- Upgraded the swimmingpool collider mesh format, and renamed it to a "collider.mesh" file in order to load properly
- CameraTexture dialog fixes
- Fixed a crash when deleting elevator objects
- Render window now resizes properly on Linux when the scaling factor is not 100%
New in Skyscraper 2.0 Alpha 11 (Mar 13, 2023)
- call buttons now fail the active elevator if it encounters a movement processing error, fixing an issue where the call button would hang if an error occurred
- for controls, OnUnclick should not reverse the selection position if the previous action failed, since the reversal already took place
- added function name to SetHoistwayAccess errors
- (Sears Tower) removed the floor on 108
- (Sears Tower) shaft fixes
- (Sears Tower) switched freight elevator doors to center dualspeed
- (Sears Tower) interfloor fixes
- (Sears Tower) added freight elevators 4 to 6
- (Sears Tower) added freight elevators 2 and 3
- (Sears Tower) added additional freight elevator shafts, and others
- reset new_time variable when unloading sky system
- have sky system reload if the primary engine/building is reloaded
- added coordinates for Sears Tower
- added more deprecation warnings
- added separate riser texture and tread texture options for Stairs and Escalator objects, to help fix texture issues
- added INI file option to use the system time as default, if not specified in a building file
- put SkyName into Caelum INI file section
- trim off second's decimal point
- added a button to the Sky Control window to get the system time
- added ability to use system time as the DateTime value for buildings
- added ability to set the time scale (using the TimeScale value) for buildings
- elevator doors should not automatically enable nudge mode timer when Fire Service Phase 2 is on
- renamed Min/Max functions to simplify
- switch Swap usage to std::swap
- add missing parent_deleting flags
- properly store shaft cut values
- (Triton Center) added new objects to building
- added support for creating elevator and counterweight rails
- added CounterweightStartSound, CounterweightMoveSound and CounterweightStopSound elevator parameters
- added counterweight and rope textures
- added RopePosition and RopeTexture elevator parameters
- added GetExtents and ChangeHeight polygon functions
- (Simple building) extended shaft above building roof
- added CreateCounterweight function
- (Vehicle) the 'created' variable needs to be initialized
- require chassis to be created when creating vehicle
- added more checks to prevent crashes on vehicle creation
- make sure errors are reported when trying to recreate a vehicle with the same number
- (doxygen) disabled RTF and Man page formats
- allow deleting of walls in meshes such as "external" where SBS is the parent object
- don't create colliders for rope meshes - this also fixes the variable that switches off automatic collider creation
- added more profiler probes
- switched profiler box to text box
- added INI file keyboard configuration
- split keyboard configuration off to separate file
- check existence of camera object - this fixes a crash that happened when driving a vehicle to another sim engine
- DeleteWalls needs to clear Walls array when finished
- DeleteWalls needs to delete polygons before deleting wall object
- added GetBounds function
- added vehicle demo building
- font name fix
- added support for separate up and down elevator movement speeds
- don't report a generic error message when creating the primary car. This allows the specific error messages on car creation to be reported.
- added vehicle support
- added OgreBullet data
- added VehicleManager object
- adding support for crouching
- ensure that font texture coordinates are valid, to prevent a crash
- update to Visual Studio 2017
- support decoding of MP3 files, since the patent has expired
- GetUpControl and GetDownControl should search for control's action name instead of index number
- moved lock code to separate files
- build warning fixes
- added more tooltips to the Elevator Editor
- added support for updating status of all elevator controls either on startup or while running, so that the controls match the mode states
- partially reverted revision 4631; this fixes an issue where the nudge timer
- would fully reset every time the elevator doors re-open
- fix for OpenOnStart parameter, for it to work when an elevator is stopped on startup
- added RunState elevator parameter
- add error reason to sound init
- allow non-emergency stop in fire phase 1 recall mode. This fixes an issue where an elevator wouldn't recall when the mode is activated and the elevator is moving.
- converted 'float' values to Ogre's Real type (defaults to type 'double' precision)
- fixed an issue where the Caelum sky name wouldn't be reset for subsequent
- engines on startup
- added support for call button destination floors engines on startup (feature currently disabled)
- Integrated all engine reporting into ObjectBase class
New in Skyscraper 2.0 Alpha 9 (Mar 5, 2015)
- added new Underground building
- cleanups in relation to ShowFloors arrays
- fixed a conflict between Group listings and ShowFloors lists, and cleaned up EnableFloorRange function
- the print command can now be specified by itself, to print a blank line
- many script commands would crash if given no parameters; this fixes the issue
- Triton Center) 135th floor description fix
- made new floor list report and FloorInfo command, and migrated the ListAltitudes feature into that
- added Floor Information button to the control panel
- added current floor name to the control panel
- fixed an interior window positioning issue in the Simple building
- prevent shaft door reset if full shaft is enabled
- EnableGroup function in floor object will no longer touch shaft or stair objects if they're currently fully enabled
- disabled some warnings on Visual C++
- fixes to action array checks of Control and Trigger objects, to prevent crashes if no actions are associated with the object
- more elevator object checks for elevator editor
- reset door reference in elevator editor, to prevent issues if elevator is deleted
- added Mac key hints to control reference and readme
- the elevator editor's floor selector now only shows the related serviced floors
- c++)reworked shaft door and elevator door ClickedObject code to newer design
- c++)elevator shaft door wrapper objects now store associated floor number
- c++)remade call button code in ClickedObject function, to remove legacy code
- call buttons can now be deleted using ctrl-alt-click
- controls can now be deleted by ctrl-alt-click
- objects are now deleted by ctrl-alt-click instead of just ctrl-click, to prevent interference with ctrl walking modifier
- added reporting to elevator door sensors
- added new actions for enabling and disabling elevator door sensors
- reworked action run code, to prevent duplicates
- call buttons now check if elevator objects are valid, to report accordingly
- brought back shift-click call button functionality, to change light status
- objects are now locked/unlocked by holding ctrl-shift and clicking instead of just shift-click, which fixes conflicts with using shift for running
- added transparent button background texture (transparent.png)
- elevators now update floor indicators and floor beep sounds when either passing a floor altitude, or beginning to level at a floor
- prevent elevators from updating floor number during leveling mode
- added more verbose file load error messages
- year update
- fixed Visual C++ 64-bit build options
- updated Visual C++ 2010 build parameters
- added message sound status checks, to prevent repeats
- removed Palace Hotel on author's request
- added support for sounds in call button objects
- added numeric checks to the Calc function, to fix issues with the Calc function hanging on filenames. Also removed the related work-around code for skipping parameters
- fixes and cleanups to verbose output
- replaced elevator's message sound and floor sound objects with a single announcement sound object, and sounds using this are now queued to prevent overlapping
- added sound queuing support, using PlayQueued and ProcessQueue functions
- added reporting functions to Sound class
- elevators no longer play floor sounds (floor announcements) if on the same floor as hall call
- fixed crash that happened if the object move window was visible while the object was deleted
- Triton Center) Shaft 17 (core utility shaft) now displays interfloors, bottom floor while inside it, and lights
- added ShaftShowInterfloors command
- Object Information window now displays correct line number information (adjusted for includes), and also related include filename
- split line number calculation portion of script error code into a separate function
- added List Textures button to control panel
- added script commands ListAltitudes and ListTextures
- texture listing now supports showing filename
- added more verbose output for texture loading functions
- fixed texture overrides; texture functions now unload previous material if a new one of the same name is specified
- C++) added UnloadMaterial function and fixed UnloadTexture function
- C++) split off texture multipler registration into separate functions
- Triton Center) Residential service elevator texture orientation fix
- added emergency stop motor sound
- queued sound position option in sound code, to prevent repeat applies of the setting
- fixes for SetPlayPosition and GetPlayPosition in sound code for fmod, used by AutoAdjustSound
- added the AutoAdjustSound to the INI file, originally added in rev 1824
- added support for separate car and motor emergency stop sounds
- uninitialized value fixes (meshobject rotation)
- during an emergency stop, the car stop sound is played if an emergency stop sound isn't specified
- verbose mode now reports details on exactly which car/motor sounds are played, for start, move, and stop
- reworked elevator car/motor sound code and moved into separate functions
- renamed the "mainsound" sound object to "carsound"
- added support for a separate emergency stop car sound and speed multiplier
- fixed an issue where the elevator editor would display too much call button output in verbose mode
- split the create_walls option in the FinishDoors commands into separate doors_walls and track_walls options, and updated guide
- fixed issue where elevator nudge mode would become active if elevator was in fire phase 2 mode on alternate recall floor
- partial floor range in ShaftShowFloors command is now shown regardless of elevator moving
- added IsBoolean function (C++)
- enhancements to the ShaftShowFloors command
- button title fix (elevator editor)
- fixed issue where FinishDoors function was not properly reverting the DrawWalls state
- removed bounding box check in stairs code, since it was failing on stairwell floors that contained no geometry, but were still valid
- fixed "InStairwell" status
- interfloors are now shown for adjacent floors, in order to match the original design concept
- fixed columnframe and interfloor checkboxes in the mesh control dialog
- added Mesh Control dialog option to enable/disable interfloors
- added functions to enable/disable interfloors
- fixed main filename case
- fixed Caelum sky rotation
- changed Caelum start time to 10am instead of noon
- removed SkyMult INI file parameter, and the Caelum sky.os file now configures this
- added a check to make sure elevator serviced floors are valid for the associated shaft
- added basic group state check to floor object, to prevent repeated enables/disables during ShowFloors functionality
- floors now report in verbose mode when they're enabled/disabled
- fixed an issue where the ShaftShowFloors command would cause the destination floor to become disabled
- check floor enabled state before enabling/disabling floor and group
- mentioned reverse floor ranges in script guide
- fixed an issue where sound objects were playing during startup, and cleaned up related code
- removed full screen stay-on-top flag
- fixed an issue restoring fullscreen mode on Windows after a reload (using ctrl-r)
- added info on 'b' key FOV reset
- added binoculars FOV setting to the camera control window
- fixed a typo for the reload feature in the control reference
- added binoculars mode
- Triton Center) fixed crossbracing texture tiling and some mechanical interfloors
- removed the Cut function's "checkstring" functionality, which reverts a "fix" from 2783 which broke filler walls in many existing buildings' elevators. The original functionality never really worked, and the removal of it appears to work fine
- data type fix for negative dest values. Also fixes an assertion in debug mode
- fixes to automatic filler walls function, to prevent z-fighting issues
- right-clicking controls now reverses direction of selection
- all shaft doors must now be fully closed for an elevator to move, when interlocks are enabled
- actions now return the status of the commands run
- controls and triggers will now only change position if the action succeeds
- controls/triggers with multiple parents or actions succeed if at least one action succeeds
- control/trigger sounds now only play if the position changes
- fixed a message loop in verbose mode if certain elevator sounds can't be loaded
- added more return codes and "loaded" status to sound code
- cleaned up elevator mode switching, so that certain modes must be explicitly disabled before enabling another mode
- ACP mode now uses standard queuing instead of Go function, which fixes a malfunction if used while another call is being handled
- the elevator Go function will now exit if elevator is already moving
- added floor ID reporting to Go function
- floor signs now take the shaft door offset into account when created
- added Renderer entry to Stats dialog
- fixed an issue where shaft doors would stay disabled if pressing F6 (resetting position) while in an elevator
- fixed logic behind 'force' parameter for shaft and stairs enable checks
- changed Glass Tower 138 floor sign to say "R", and also minor wall fix
- reload function now restores camera floor, gravity, collisions, and freelook options
- added elevator floor signs to the Glass Tower
- when deleting shafts, they must have associated elevators deleted manually first
- sensor actions created by elevator doors are now removed along with the doors
- floor deletions now fail if a shaft or stairwell depends on that floor
- fixes to GetFloorNumber function to allow deleting the current floor
- lots of reporting fixes and cleanups
- added shaft and stairs existence checks to EnableFloorRange
- elevators can now be deleted during runtime
- call buttons are now created with directions based on the combined range of all elevators, instead of just the first one specified
- added a forced resize during a building reload for Linux - fixes rendering issues
- camera rotation values are now updated properly. This fixes the rotation display in the control panel, and also fixes rotations during a building reload
- call shutdown() on Ogre root instead of delete, to fix a crash on certain systems during shutdown
- fixed malfunction in trigger code due to an uninitialized position value
- fixed setback positionings in Sears Tower model in Triton Center
- added antennas to Sears Tower model in Triton Center
- tiling fix for Triton Center top (143) interfloor
- added missing keys to control reference
- added explanation of interfloor areas to script guide
- floor skip text can now be disabled by setting it with an empty value
- nudge setting in elevator editor now works properly on a per-door basis
- added door sensor item to elevator editor
- added "sides" graphic for script guide
- some needed fixes to the Observation Tower
- added floor signs to Simple building
- trim whitespace on GetAction() input string
- added option to change nudge option for door hold command, used by Sensor action
- added Sensor and Reset actions, used by sensors
- added support for elevator door sensors
- elevator parameters now properly calculate numbers
- repositioned Glass Tower's rooftop elevator motor
- moved Glass Tower roof structures to external mesh
- added use of VerifyFile to building file loader, to fix filename case sensitivity on Linux and Mac
- removed "starting time" entry from stats dialog
- fixed parameter count checks in script interpreter
- script includes now use VerifyFile which fixes case sensitivity issues on Linux and Mac
- file not found errors for script includes now handle exceptions properly
- moved Triton Center mech penthouse roof to separate floor
- fixed issue with cutstairwell and cutshaft commands introduced in rev 2047 (in Alpha 7), that caused external meshes to cut a floor too high
- removed unnecessary pauses
- added support for function nesting (calling functions within other functions)
- reworked the script error reporting code, to fix reported line number breakage when using nested includes
- updated guide to explain include and function behavior
- a warning is now shown in the console when a function is defined again, and the redefinition is skipped
- return empty strings instead of nulls for c-string functions. Fixes some crashes
- added atrium floor spacing in Glass Tower
- added progress dialog for script load
- added EndPoint function
- moved Print command to end, which allows certain command results to be printed properly
- added AddCustomFloor command
- Glass Tower) added basic Peerless building and ground based on spotting blueprint from movie
- major) fixed an issue where the submesh processor would skip, leaving unused triangle data. This was causing Prepare() to malfunction and sometimes visible corruption
- Action Viewer now displays multiple parents
- added ability to delete actions from the Action Viewer window, and fixed some cleanup issues involved in the deletions
- added AddActionParent and RemoveActionParent commands
- action viewer now refreshes list
- actions created by button panels are now deleted along with the panels
- walls of root object (SBS) meshes are now children of those meshes instead of root
- fixed a vector overrun in RemoveFloor function (element was removed before accessed)
- do not process geometry buffers if no data exists - fixes a crash on Windows
- manually deleting floors now deletes any walls created in the "external" mesh
- reset collisions when deleting objects, and clear last_collision value - this allows objects the user is touching (or standing on) to be deleted
- added check to prevent floors from being deleted out of order
- elevator doors can now be deleted properly during runtime
- added round math function
- added new math functions log2, ceil, flr, and rnd
- fix for texture distortion issues on main menu
- added option to turn off automatic filler/connection walls for elevator doors
- math function fix - removed the need for a space before the function names
- fixed default locale setting - this solves script error issues when running on machines with different locale settings
- texture functions now report in verbose mode only
- fixed StartsWith() function
- added advanced math functions to script interpreter
- added power-of operator to Calc function in script interpreter
- added Ogre 1.9 compatibility
- combined floors 65 and 66 in the Glass Tower
- cmake and source fixes for Ogre 1.9 compatibility
- orientation fix for old sky system
- added RenderOnStartup option, which renders the building as the script is processing on startup
- fixed an issue where most new meshes would need to be disabled and re-enabled to be visible
- cmake script fixes, and svnrev is now run automatically
- fixes to main window sizing
- fixed issues with main menu and mouse clicks being off on Mac, due to client size being different than window size
- fixed shutdown crash due to MainScreen::OnClose being called twice (mainly on Mac)
- made missing files dialog larger
- fixed issue where rotational degree values would show 360 instead of 0
- added OpenMessage and CloseMessage elevator parameters
- script processor now using main frontend loop for processing
- fixed an issue where main window would not resize back when exiting from fullscreen to main menu
- object list in objectinfo dialog now refreshes automatically
- switched DisableSound to a frontend option, which now changes it for the whole app
- removed unused options from INI file
- WalkBrake and RotateBrake options now work
- removed LookAccelerate, BodyDepth, LegsDepth options
- fixed GetObjectPosition() for elevator doors, so now their position shows up in the MoveObject window
- fixed Camera::Rotate() function; relative rotations now work in camera control window
- Bullet: disabled penetration recovery, which fixes issues with stairs stepping
- added frame smoothing feature, configurable in the INI file
- removal of wxWidgets code from the SBS library
- new SBS timer system
- added while statements
- added delete command
- added runaction command
- action names with spaces now work from scripts
- functions can now be called properly from IF/While statements
- added duplicate function check
- keycode fix for Mac version - fixes some key recognition errors
- switched to in-app console window
- control panel sizing fix
- removed unused RenderOnly and InputOnly options
- script viewer no longer shows included code
- rename and cleanups of collider recreation when adding/deleting objects during runtime
- fixed issue where meshes wouldn't be immediately visible if walls were added to them during runtime
- fixed an issue where control panel buttons failed to work upon a building reload
- command box in console now clears on send
- added echo option to console window (displays typed commands)
- fixed an issue with the main window not raising properly on startup
- fixed a startup clear screen issue
- switched log output to new in-app console window
- addition of main console text box in console window
- moved system over to Ogre logging facility
- all logging is now written to skyscraper.log
- debug console (text) output can be turned on and off by INI file parameter
- script processor is now persistent
- added missing note about ctrl-r reloading current building to key commands list
- added script deprecation warnings, which can be enabled in the INI file
- removed unused GetWallExtents function since the command version is more useful
- script interpreter cleanups
- fixed a parameter check for parameters specified after equals signs; would previously treat empty text as a single parameter
- updated syntax in Simple building
- added ReverseAxis parameters to the script guide, which were missing
- added ability to disable Bullet for testing
- fail and switch to old sky system if Caelum fails to init
- disabled elevator arrival notifications and floor sounds/beeps when in service modes
- disabled elevator door open/close functions while in Fire Phase 1 recall
- added needed object existence checks to functions that use the object array directly - without this, crashes were happening when doing an object scan after an object had been deleted
- ACP mode now uses the elevator's Go function, and now works properly
- elevator "Go" function now turns off elevator floor light when reaching destination
- fixed some door closing issues in Fire Phase 1 mode
- added exterior up/down controls to Simple - Manual building, and interlock switch for testing
- added support for modern manual lifts, that require the floor button to be held to proceed to that floor, via the FloorHold parameter
- script interpreter section reordering and cleanups, fixes variable processing issues, and duplicate functions have been removed
- added fire switch keys to Simple, Triton Center and Glass Tower elevators
- added landing zone area for automatic releasing of interlocks
- added new section of items to elevator editor, and added some other misc things
- added basic elevator interlocks, along with actions
- fixed button/control texture multipliers - this fix will break previous buildings' buttons and controls if they use size multipliers other than 0 or 1. Previously changing the size would mess up the button positioning
- updated Simple building with internal and external fire switches
- added more texture content
- added fire service enable function to call button code; switching one elevator to fire service phase 1 now switches all elevators in same bank (all being serviced by the first call button on recall floor) into fire service mode
- added elevator door open/close button hold feature (constant pressure support), for certain modes such as independent service and fire modes
- renamed CancelLastRoute to CallCancel
- major reworking of fire service modes to make them more realistic
- added reversals to door opening, used in fire modes to reclose the doors if open button is released
- major Glass Tower lobby changes; atrium base is now the Atrium level (previously mezzanine) to match movie depictions of the Hyatt Regency and Bank of America buildings
- added full support for manual elevators
- fixed issue where floor would turn off when closing shaft doors even if ShaftShowFloors is enabled
- added "0 to disable" options for DoorTimer and QuickClose parameters
- added AutoOpen parameter
- added OpenOnStart parameter
- added new Simple building with manual doors
- added OpenExt and CloseExt actions
- added more elevator and shaft door actions
- updated to OGRE 1.8, and updated meshes to newer format
- Glass Tower texture mapping fix for top of front setback pinnacle
- fixed camera control X axis reversal
- fixed action control centering
- added functions to support elevator returning/releveling to nearest floor after disabling inspection mode
- added 'return' function in elevator actions list which returns to the nearest floor after a stop
- added more checks to door "in use" status - fixes issues where elevator doors would misbehave if automatically moving and a manual open/close was run
- removed OIS requirement from cmake
- minor correction to local elevator range in Sears Tower
- fixed Glass Tower floor height typo in the floors 80 to 85 section (it erroneously added an extra foot to those floors)
- added dialog for moving objects
- fixed "hold" option for camera relative rotation in dialog
- fixed rotation quirk in dialog that allowed values outside of correct range
- array cache tweaks
- fixed DynamicSky script parameter
- added additional check to elevator service modes to prevent random activity
- elevator parking is no longer run while in a service mode
- fixed elevator availability check for LimitQueue
- added elevator queue reversal when arriving at top/bottom floor; fixes call quirks on those floors
- fixed issue in elevator_doors.txt script that prevented dual-speed left doors from closing properly
- switched user variable system over to named variables
- extended range of characters supported by the text-to-texture system
- Updated Visual Studio project files for VS2010
- added popup error messages for sound errors
- added gpu program checks for Caelum initialization; should switch off Caelum on problematic graphics cards to prevent reported crashes
- moved SBS initialization code into contructor
- removed obsolete shaders variables
- fixed issue where some wall handles wouldn't be deleted, due to a changing handle array size
- centralized number conversion into new ToString functions
- fix for textureoverride/textureflip states
- console output fix
- INI parameter fixes
- AddFloor parameter fix
- removed tchar for wxwidgets unicode compatibility
- random activity is now ignored if related elevator is in service mode
- added parking notification
- script interpreter performance improvements
- performance fix for GetTextureMaterial function
- fix for material polygon reporting
- fixed misuse of vector preallocation, performance improvement (fixes bottleneck when creating thousands of floors)
- function speed improvements in script interpreter
- added function name and calling line to script error message
- misc performance tweaks and cleanups
- old sky is now used if Caelum fails to start (previously the sky would end up being black in this case)
- fixed crash that would happen if Caelum wasn't initialized properly
- swimming pool model material fixes
- turned off texture lighting option by default
- added calc ignore checks for other filename parameters
- added StairsShowFloors and ShowFullStairs commands
- moved stairs, shaft and elevator checks into respective classes
- some tweaks to IsInStairwell checks
- removed some obsolete stuff (including shaft type parameter)
- added ShowFullStairs to Triton Center's West Stairwell
- added railings to Triton Center
- fix for disabling old skybox
- added ability to delete models and doors with ctrl-click
- added pool to Triton Center
- fixed a defect in the CutAll floors operation - was cutting through all floors associated with shafts/stairwells - now only cuts through current floor as described
- added check to prevent crashes when deleting an object user is standing on
- fixed creation of collider body which was causing crashes when loading collider meshes
- added support for skipping calculations on model filenames - fixes an infinite loop
New in Skyscraper 2.0 Alpha 8 (Mar 1, 2013)
- elevators now report as available if on the same floor as the call and not moving, regardless of the door state - fixes an issue where pressing call buttons more than once would open additional elevators
- fixed TruncateNumber function, to return correct floating point precision without exponent
- dialog text box resizes
- remade queueresets feature
- floor announcement sound is now played along with the other arrival notifications, and so is affected by NotifyEarly
- up/down message sounds now play according to last chime direction
- elevator now chimes the previous chime direction if doors reopen (if applicable)
- turned off queue reversals if NotifyEarly is on
- added ReOpen elevator parameter
- added AutoEnable option to turn on and off automatic enabling/disabling of elevator interior objects
- added queue pending state flag - fixes issue where pressing both call buttons in a 2-elevator shaft would call the same elevator for both
- switched to standard elevator availability check for single-elevator call buttons
- major work on elevator queue/arrival notification code
- call button behavior fixes
- changed freelook crosshair to cross
- added elevator queue limit, to prevent calls opposite of queue direction from being placed
- removed same-floor check in call button code, which broke calls when elevator was moving past current floor
- decreased classic elevator door spacing
- fixed logic that caused down calls to alternate chime direction
- added inspection service speed multiplier setting
- elevators now ignore the leveling offset if brakes are turned on while beyond that offset
- fixed a floor check and positioning issue with in-elevator directional indicators, which caused only single indicators to be created
- added default/error texture
- added support for configuring the main menu from the INI file
- reversed the Sears Tower and Glass Tower menu entries
- shift-clicking on doors now locks them
- added new command SetKey, which allows models to be specified as keys
- added new command SetLock, which sets lock parameters when creating doors, controls and call buttons
- fixed elevator door bumpers
- added actions for inspection service up/down/go toggle options
- added support for multiple parents per action
- added ip20112.5 update for "The Spire" building
- new Glass Tower roof, based on movie blueprints
- fixed a name check bug in the cut function, which was causing elevator door filler walls (done by FinishDoor()) to sometimes fail
- added support for elevator door vertical offsets
- elevators now stop according to the shaft door's voffset instead of the floor's base, where applicable
- added note to script guide mentioning that automatic filler walls needs all related walls to contain the word "shaft" for it to work
- changed camera speed to half, for a more realistic walking speed
- fixed texture autosizing quirks (diagonal walls/floors are now autosized correctly)
- added ability to delete models, controls and triggers
- limited object prepare on delete, speeds up object deletion
- added a fog multiplier setting in the INI file (changes fog density)
- Glass Tower - new test service elevator serving most floors
- Glass Tower - changed executive elevator to use floors in movie depiction
- new stairwells in Glass Tower, along with railings
- work done on Glass Tower floors 135-137
- updated AddFloor command, which fixes a number of issues with the old command
- fixes for planar texture mapper's autoflip functionality - now appears to work properly (but might potentially cause minor breakage of existing buildings - need to check)
- added ReverseAxis and texture direction parameters to AddFloor
- added rotate option to the planar texture mapper (which the texture direction parameter now uses)
- added GotoFloor function (mainly in camera controller window)
- added percentage indicator to script startup
- added note to the script guide about custom texture mapping and automatic reversals
- new glass elevators in Glass Tower
- fixed issue preventing custom walls from being made in elevators
- separated elevator motor sounds between up and down movements
- added comments in script guide about leaving sound fields blank
- performance improvements
- fixed volume bug in AddSound - volume parameter was specified as an int, preventing fractional volume values
- added lobby ambient sound to Triton Center
- added support for split car up/down elevator sounds
- added support for playing multiple sounds with the same name from an action
- added support for running multiple actions with the same name
- added couch model to Simple building, with physics enabled
- added centering support to models, and added parameter to AddModel commands
- added second couch to Simple building, and couch to top of Triton Center
- fixed object parent values for some new objects
- some fixes to cascading object deletion
- Triton Center antenna tiling fix
- added texture animation
- added support for direct loading of ogre materials in data/materials
- added caching to GetFloor() and related functions
- Triton Center external windows overhaul, using alpha blending
- Glass Tower overhaul
- added Action and Trigger objects
- added action viewer (control panel window)
- fixed global AddSound command which was overriding the per-object ones
- updated AddSound command for FMOD and added loop option for new control/trigger commands
- fixed texture and material counters
- added changetexture, playsound and stopsound actions
- disabled doppler effect (sounds) by default
- default main sim window size now changed to 800x600, menu window size separated and kept at 640x480 (configurable)
- added internal skip for wildcards in filenames (*) (fixes those bogus error messages)
- started in-sim object creation (code constructor)
- added building startup options to turn on/off collisions and gravity (listed in the designguide)
- disable basement number conformity (fixes Cliveden Desmond Wharf)
- added a file check for the include section (loading now fails if an included file cannot be found - this prevents serious and hard-to-diagnose errors later on)
- added Empty building (not working properly, but is used to create buildings from scratch)
- object colliders are now removed by default (for running performance) except for elevator doors (due to slowdowns when entering Triton Center elevators)
- disabled backface polygons for ground
- object info listbox now updates if you exit that window and re-enter
- added new control aliases, mostly for Mac users
- added support for setting the default sky time speed in the INI file for Caelum, and changed the default to 25 (you can now easily see the clouds moving, and a day moves much faster so you can more quickly see sunrises and sunsets)
- switched Mac frontend to use Cocoa
- switched from normal flipping to standard texture flip (for ogre coordinate system compatibility)
- added the Caelum sky system
- lowered default texture filtering anisotropy level to 4 (from 8 )
- switched to 16-bit hardware indices; should fix geometry corruption on some older cards, and should improve performance somewhat
- if a cut operation eliminated an entire polygon, the original polygon would not be deleted
- added ability to only play elevator music while moving, and updated related INI file parameters
- added advanced option to profiler
- added profiler system
- added check for duplicate entries in missing files list
- added proper error reporting (and OGRE exception handling) to frontend initializer
- fix for operational conflict between floor grouping and ShaftShowFloors command
- added DisplayFloors parameters
- added texel override
- added physics support for models
- added support for model colliders
- added support for Ogre meshes (using converters for Google Sketchup)
- added checks to ensure that starting floors are less than ending floors in AddShaft and AddStairwell commands
- gravity reset fix and fix for IsInShaft() distance check
- fixed an issue where shaft would rapidly turn on and off if on top of elevator
- fixed issue involving reversed polygon faces resulting in some textures being reversed. Put in a precision workaround for Alpha 7 compatibility.
- sound fixes, added ability to view camera collider via F7, and fixed a line skip issue in the script interpreter
- filler wall reset fix
- added support for different open/close speeds for elevator doors
- wxwidgets compatibility fix
- added proper failures on numeric checks to report errors and prevent loops
- added texture filtering options, and switched default to anisotropic (previously bilinear)
- added ability to switch on and off collision detection and visible colliders via F7
- split SBS into shared object on Linux, and restructured source files
- removed AddGenWall and migrated items using it to AddWallMain
- switched translator code to OGRE's right-hand coordinate system (SBS uses left-hand)
- switched to FMOD for sound
- switched to OGRE for graphics
- switched to Bullet for collisions and physics
- Triton Center renovation
- fixed door filler walls
- object deletion fixes
- added geometry deletion support
- fix crash that only happens if shafts are created out of order
- new internal mesh object system (Skyscraper now generates it's own 3D geometry)
- new horizon distance setting
- added render distance limits for small objects
New in Skyscraper 2.0 Alpha 7 (Sep 21, 2010)
- added braille fonts
- added support for elevator panel switches and knobs
- added elevator fan toggle
- door open and close buttons now support specific doors
- added door hold feature
- elevator now resets queue search direction if last entry in active queue is in the opposite movement direction
- elevator doors no longer try to open if you press the call button as it's passing the floor
- floor buttons now properly add floor route if pressed on the same floor as elevator is moving
- Fix for vertically-moving elevator doors' offset calculations
- Elevators now properly sync camera offsets if a person boards a moving elevator
- Fixed an issue where the random activity system wouldn't select the top serviced floor
- added standard doors to elevator objects
- added sound support to doors
- fixed a crash that occurred if ServicedFloors included an invalid floor number
- added internal error reporting system
- new object tree browser
- elevator parking fixes
- call cancel now only works in fire phase 2 mode
- elevators now reroute properly if switched to fire phase 1 mode while moving
- added object deletion support
- added elevator run/stop states
- arrival notification can now be performed at the start of leveling or at deceleration
- Added adjacent floor check - eliminates crashes related to trying to create floors in the wrong order
- Elevator doors no longer open when parking
- some interior elevator objects now stay enabled while user is outside elevator
- grouped floors now also enable stairwells and shafts
- Added braille callbuttons
- Elevator beep sounds now support floor number substitution
- added support for direction message sounds
- added separate folder for screenshots, and switched format to jpeg
- added support for elevator music
- ShaftCut and CutStairwell commands now cut external objects
- Added support for displaying last clicked 3D position
- Added Housing Estate building
- Added support for changing door speeds
- added SVN versioning info
- Elevator objects can now be used in certain global commands
- fixed a peak mode dispatch issue
- Added case insensitivity support for file loading
- Internal indicator vertical positioning fix
- App now displays missing files after building load
- Texture rendering fixes
- added "open" parameter to doors
- added DepartureDelay and ArrivalDelay elevator parameters
- Error reporting system is now more verbose about certain errors
- added sign textures
- added nudge mode
New in Skyscraper 2.0 Alpha 6 (Mar 12, 2010)
- added current floor ID to the control panel's main and camera control windows
- added support for forcing autosizing on or off on a per-texture basis
- added support for floor arrival sounds
- added more camera speed config parameters
- added full camera reset (respawn) triggered by F6
- added elevator motor sound object
- added support for exiting back to the main screen
- added support for per-door elevator floor signs
- added new simulator/building statistics dialog
- moved button code into separate control class
- added support for elevator button lighting
- fixed issue involving elevator door sound playing for non-serviced doors
- added script console
- text-to-texture objects now support transparency
- fixed floor sign autosizing issues
- many elevator queue fixes
- fixed call cancel button
- app now properly exits to the main menu if a building fails to load
- added custom sound objects
- added new Simple building with basements
- more comments added to the Simple building
- elevators can now be named
- call buttons now light up in groups
- added Schindler MT textures and sounds
- added verbose mode
- control panel can now be reopened by pressing F12
- fixed blank canvas issue on Mac
- elevator modes can now be set from building scripts and the INI file
- fixed ACP mode
- fixed other service modes
- added SetTextureMapping2 command
- created new planar texture mapper
- added the GetWallExtents and Print commands
- added InterfloorOnTop global parameter and base variable
- made new SetPlanarMapping command which is an extended version of the old ReverseExtents command
- new planar texture mapper is now the default
- added object information dialog
- added support for file includes
- added support for script functions
- added support for user-defined elevator and shaft doors
- added automatic elevator parking support
- added button sound support
- elevator and motor sounds now start at a position based on the elevator's speed
- elevators now support an unlimited number of button panels
- added CutAll command
- added support for internal elevator directional indicators
- directional indicators can now show active (running) elevator direction
- fixed some quirks with elevator movement
- added elevator leveling support
- Lines with both functions and IF statements now process the IF statement first
- door cutting uses CutAll function, which now makes it cut stairs, shafts, external, etc
- Texture flipping now works properly with zero tw/th values
- call buttons are now only created if any of the given elevators serves the floor
- ACP mode now works in conjunction with peak modes
- added experimental random elevator traffic
New in Skyscraper 2.0 Alpha 5 (Oct 26, 2009)
- clicking on shaft doors and elevator doors while holding down shift now causes them
- to manually open/close
- manually opening shaft doors causes the related floor to turn on if user is
- in a shaft or an elevator
- added new buildings
- added support for multiple floor indicators per elevator
- floors can now have floor indicators
- added support for elevator floor beeps
- added support for separate up/down chimes
- added support for per-door textures on elevator/shaft doors
- added elevator door collision sensors
- added last collision indicator to control panel
- added support for call button lighting
- major fixes to the elevator queue and call processing
- fixes to some elevator parameters, where they would error out if used in a different
- block than the CreateElevator command
- sound support is now optional and will switch off automatically if not available
- some new script checks for valid floor ranges
- added basic glass elevators to the Glass Tower
- simultaneous door movements are now supported
- call button monitor added, to realistically wait for an available elevator during a call
- call button light status can now be changed by shift-clicking the button
- elevator panel buttons now support position offsets
- fixed manual sizing parameters of the panel buttons
- added support for mounting zipfiles into virtual directories
- added the ability to spin the camera (Z-axis rotation)
- startup screen now works on Linux and Mac
- added mouse look (freelook) mode, activated by F5
- new Camera Control window
- split chimes sounds into up and down versions
- added support for writing text onto a texture with the AddText command
- fixed a memory leak involving floor beeps
- added support for texture name prefixes, used with floor indicators and signs
- added support for cropping and overlaying textures with the LoadCropped and
- AddOverlay commands
- added configuration file support
- added support for zooming in and out (FOV angles)
- added support for starting up without the control panel
- added fullscreen support, activated by F10
- fixed an issue where walls along the Z axis would have the side negative and
- positives switched
- height element can now be chosen from the script's object parameters
- added parking ramps to the Triton Center
- added AddFloorAutoArea command, which enables and disables floors within a specified
- area
- fixed texture flipping
- removed ReverseExtents command (was broken since early 2007)
- added SetTextureMapping and ResetTextureMapping commands (replaces ReverseExtents)
- to allow manual setting of UV texture coordinate data
- added AddFillerWalls command which is a convenience function used in creating doors
- added hotel rooms to the Triton Center
- added control reference (for keyboard commands, etc) to the control panel
New in Skyscraper 2.0 Alpha 4.1 (Jun 22, 2009)
- fixed a shaft door regression
New in Skyscraper 2.0 Alpha 4 (Jun 20, 2009)
- added syntax checking and error notification to the script processor
- fixed an old bug that could crash the sim if the floor ID matched a non-existent texture
- added support (and FloorSkipText parameter) for showing express zone indicators during floor skips
- added ACP, Up Peak, Down Peak, Independent Service, Inspection Service, and Fire Service phases 1 and 2 modes to elevators (not all work yet)
- remade manual/emergency door open/close methods
- added door stop function for doors in manual/emergency mode
- elevator doors no longer open during an emergency stop (except for a manual open)
- manual opens during an emergency stop will only open the elevator car doors
- fixed a crash that involved trying to open shaft doors on a non-serviced floor
- added shaft tops to the Triton Center and Simple elevator shafts
- lots of memory leak fixes
- simulator now pauses when main window is minimized
- Sears Tower skydeck elevator crash fixed
- performance enhancements
- call selection fix
- half of express elevators in both the Triton Center and Sears Tower buildings are now stationed at the top
- fixed ShowFullShaft command
- added support for elevator directional indicators
- added alarm sounds
- added support for multiple elevator doors
- added support for specifying shaft doors on a per-floor basis
- added AddFloorSigns command that creates floor signs on all floors served by an elevator
- numerous Triton Center fixes
- split Triton Center topside mechanical into 2 floors, added stairs to the roof, and did roof/penthouse work
- moved Triton Center's skydeck entrance to LL1
- Triton Center's pool express elevator now only serves lobbies instead of upper residential floors in addition to lobbies
- fontserver fix
- added wireframe mode and screenshot keys
New in Skyscraper 2.0 Alpha 3 (Jun 20, 2009)
- added door framework
- fixed a range bug that caused ranges to fail if the first value was negative
- added basement levels to Triton Center
- added ShaftShowFloors, ShaftShowOutside, and ShowFullShaft commands
- fixed a bug involving certain variables not being processed
- fixed up sign generator script
- new floor signs (floors 151 to 300, and floors CC and PL for the Sears Tower)
- fixed sound code
- new elevator sounds
- added script parameters for specifying elevator sounds
- fixed door sound location and movement
- moved main Crystal Space code out of SBS core into frontend
- fixed an infinite loop condition when processing multiple and/or operators
- more Sears Tower work; currently have all express and local elevators in place
- added TextureFlip command
- elevator editor's floor scrollbar now supports negative floors
- fixed a bug where the elevator doors would immediately close (and the current floor would turn off) if going to next floor in queue
- increased elevator door speeds to match new sounds
- added basement levels to the Triton Center
- new intro screen (doesn't work yet on Linux)
- major performance improvements
- added keys w, a, s and d for movement
- input is now only processed if main window is selected
New in Skyscraper 2.0 Alpha 2 (Jan 13, 2009)
- Added missing DLL for CS, and fixed installer
- Added AddGround command, for creating tile grid-based grounds (fixes ground interference issue in 1.1)