Skyscraper Changelog

What's new in Skyscraper 2.0 Alpha 9

Mar 7, 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 ctrlaltclick
  • controls can now be deleted by ctrlaltclick
  • objects are now deleted by ctrlaltclick instead of just ctrlclick, 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 shiftclick call button functionality, to change light status
  • objects are now locked/unlocked by holding ctrlshift and clicking instead of just shiftclick, 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++ 64bit 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 workaround 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 stayontop flag
  • fixed an issue restoring fullscreen mode on Windows after a reload (using ctrlr)
  • 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 zfighting issues
  • rightclicking 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 perdoor 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 cstring 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 powerof 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 reenabled 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 inapp 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 inapp 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 ctrlr 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 dualspeed left doors from closing properly
  • switched user variable system over to named variables
  • extended range of characters supported by the texttotexture 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 ctrlclick
  • 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 (Feb 28, 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 queue resets 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 2elevator 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 free look 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 135137
  • 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 perobject 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 insim 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 hardtodiagnose 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 reenter
  • 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 16bit 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 Add GenWall and migrated items using it to AddWallMain
  • switched translator code to OGRE's righthand coordinate system (SBS uses lefthand)
  • 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 20, 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 verticallymoving 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 pertexture 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 perdoor 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 nonserviced doors
  • added script console
  • texttotexture 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 userdefined 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 (Nov 9, 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