Alpha 9 Release

From Skyscraper
Jump to: navigation, search

Alpha 9 was released yesterday. I posted this today because currently there is a severe issue with the Mac version which has been there for a while (at least on my system), and so I'm checking things before publishing that to Sourceforge. The Windows and Linux builds are fine though. The issue with the Mac version on my system is that if you click the "Other Building" button and try to load any building that way, it results in a graphics malfunction during texture loads.

This release represents a major bugfix and stability overhaul to the simulator, resulting in what's the most stable and reliable Skyscraper release yet. This release also features major changes to a number of internal functionality. For detailed information on the changes, scroll down to past the changelogs to the detailed release notes, which is from the readme.txt file.

Make sure you read the release notes (readme.txt) - it points out the major changes since Alpha 8, and other important information

There's been a lot of changes since the last build. The Action code has been somewhat reworked to prevent duplicate executions of actions, since I had found one situation where it would do that. I added the SensorOn and SensorOff commands for actions. Objects are now deleted using ctrl-alt-click instead of ctrl-click, to prevent interference with the ctrl walking modifier key. In the elevator editor, the floor selector now only selects the serviced floors, instead of all available floors. The Control Panel window now shows the name of the current floor, and there's new buttons that display information about all floors, and also the current floor, in addition to the new FloorInfo script command. There's also been a number of fixes for severe issues.

The new Underground building has been added, which was inspired by concepts from the original Journey to the Center of the Earth movie (the large underground ocean scene) and also the movie Forbidden Planet, with the large underground Krell shaft environments. I used that building for scalability tests for the simulator, which fixed a lot of severe performance bottlenecks.

Here's also a link to the previous Alpha 8 release announcement: https://forum.skyscrapersim.com/index.php?topic=5676.0

Changes since the last build:
-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

Major changes since the Alpha 8 Release:


Ogre 1.8.1 is now used instead of 1.7.4, which Alpha 8 used. Model mesh files need to be upgraded to the newer format to prevent warning messages on startup - they'll still work fine though.

A pool has been added to the Triton Center, on the Pool level (132). This floor can be accessed by the Pool Express elevator in the Hotel (80) and Residential (100) skylobbies.

The Triton Center now has railings, and also displays interfloors along with shaft lights in the core utility shaft, accessible by a door on the subbasement (S) level.

For the Glass Tower, the atrium base is now the Atrium level (previously mezzanine) to match movie depictions of the Hyatt Regency and Bank of America buildings. The neighboring fictional Peerless Building was also made, based on a spotting blueprint.

The StairsShowFloors and ShowFullStairs commands have been added, which allow stairwells to display multiple or all levels if in that stairwell. This is used in the Triton Center's West Stairwell (serves floors 80-119) allowing you to look down the center of the whole stairwell.

More detailed information is shown in script error messages, and also in the Object Manager for each object.

Performance improvements were made for buildings with thousands of floors or very fast elevators.

Names can be used for variables instead of just variable numbers. It's recommended to change any scripts that use numbered variables to the newer named format, to make script code easier to read.

When inspection mode is disabled in an elevator, the elevators now automatically re-level to the nearest floor.

A window has been added in the Object Manager to move objects such as models and walls. To move an object (in this example I'll move a couch in the Simple building), first start Skyscraper and choose the Simple building. Move into the building and look at both couches. In the control panel, click "Object Manager", click the arrow next to "Floor 0" to expand it, scroll down, and click on one of the "Couch" entries. Now click the Move button below, and you're now able to move and rotate it.

Elevator button texture sizing parameters have been fixed - this may break button positioning in existing buildings that have values other than 1 or 0 for the button size, but so far it seems to be limited (and is easily fixed if you just put in the correct value).

The simulator now fully supports manual elevators and platform lifts.

Elevators support constant-pressure (hold) open and close buttons.

Elevator fire modes have been reworked for full realism.

Elevators now use interlocks for all doors; to manually open and close doors, interlocks must be disabled first in the Elevator Editor, and then shift-click can be used to open/close them. If interlocks are enabled, the elevator will not move unless all associated shaft doors are closed.

A new console window has been created, and all logging in this window is put in the skyscraper.log file.

The RenderOnStartup option has been added to the INI file, which if enabled, lets you view the building as it's being build. This results in a very slow startup, but is interesting.

While statements have been added, and functions can be called from both If and While statements.

Nested functions are now supported, and use a basic stack system for switching between contexts.

Elevator door sensors have been added, which is enabled by default for all automatic doors. Door sensors are automatically created triggers, sized in the elevator's internal door area with 1/4 of the character collider's width surrounding it for room. Two new elevator commands were made which are used by it's action, and are "sensor" and "reset". When a user passes into the sensor's trigger area, the "sensor" command is run which opens and holds the doors. The "reset" command simply calls a function that has existed before, that resets door timers to disable a door hold. The door sensors can be switched on and off in the elevator editor.

The selection for controls (button and switches) can be reversed by right-clicking on them.

Floor signs now take the shaft door vertical offset into account when being created.

Call buttons are now created with directions based on the combined range of all elevators, instead of just the first one specified.

A binoculars feature has been added, which can be toggled with the B key. Pressing the B key will also reset the camera's field of view (FOV).

The interfloors adjacent to the current active floor are now shown, which follows the original design.

Elevators now support a separate emergency stop speed multiplier, along with car and motor sounds that are played during an emergency stop.

A "List Textures" button has been added to the control panel, which lists all loaded textures from the texture tiling information table, along with the related filename.

The internal sound code now supports sound queuing, which now makes the floor sounds and message sounds all play in their initiated order, one after the other, instead of simultaneously.

Call buttons now support sounds.

The elevator floor indicators and beep sounds have been revamped to update the floor number while they're passing the floor or beginning to level instead of when the elevator's base is located within that floors range, making them more realistic.

The elevator editor's floor selector now only shows the related serviced floors.

See also

External links