Skyscraper with no windows

Skyscraper

Review

Free Download

specifications

changelog

Create your own buildings and experience them in full first-person 3D by running a simulator and controlling settings, thanks to this tool

Skyscraper is an educational software application that lets you explore multiple types of buildings in a 3D environment, similar to a 3D video game. It can be used by students in architecture or constructions.

The interface of the application consists of two windows — one of them displays the building while the other is a Command Prompt window that shows logging details.

So, you can select one of the 25 building models, such as Eternity Plaza, Observation Tower, Palace Hotel, Sears Tower, and Simple (with multiple doors, glass elevator, basements, 500 floors etc).

A third window represents a simulator control panel where you can view technical information on the design, such as the current camera floor, position and rotation, number of elevators, clicked position and frame rate.

Plus, you can disable collision detection, gravity, elevator processing, automatic shafts and stairs, among others. In addition, you can view altitudes, enable or disable objects in real-time (global, per-floor, grouped), configure camera control options, edit elevator settings, check out simulator statistics, as well as use a script console and view object information.

The program runs on a moderate amount of system resources, has a good response time and worked smoothly during our tests. It takes a while for a 3D environment to load but that’s normal. No error dialogs have popped up during our tests and Skyscraper did not freeze or crash. Unfortunately, there is no help file available and no recent updates have been made.

What’s the deal with this windowless skyscraper in New York City?

At first glance, 33 Thomas Street appears as though it may be the headquarters for the Men in Black. It’s an impenetrable fortress, rising 550 feet into the New York City skyline with no windows and a flat, concrete slab façade.

Building history

Constructed in 1974 and designed by architect John Carl Warnecke, 33 Thomas Street was built to withstand the fallout from a nuclear blast for up to two weeks — making it one of the most impregnable structures in the United States. Each story is 18-feet high and can hold anywhere from 200 to 300 pounds per square foot.

From the building’s inception until 1999, it served as a gargantuan telephone switchboard for AT&T Long Lines, the company’s long distance service. In its prime, 33 Thomas Street used to direct around 175 million calls per day. But just prior to the turn of the millenium, AT&T vacated the building and moved its facilities to their current headquarters at 32 Avenue of the Americas. Yet, the company’s logo remains emblazoned on the door.

Theories on why it doesn’t have any windows

Today, the goings-on inside the skyscraper are shrouded in mystery. Google autocomplete and a handful of Reddit threads suggest a slew of conspiracy theories, perhaps because so little tangible information is known.

The most common belief is that 33 Thomas Street operates as a colocation centre, offering space for companies to securely house data and equipment. The building’s exterior makes it less susceptible to terrorism or weather related incidents — and without windows, the temperature inside the building is easy to maintain. Six large protrusions (functioning as air ducts) and a series of ventilation openings keeps the air circulating, preventing machinery from overheating.

This brutalist piece of architecture remains an enigma to many New Yorkers. But if Will Smith and Tommy Lee Jones are looking to make a fourth installment of Men in Black, 33 Thomas Street may be just the place.

Google Street View of 33 Thomas Street

More photos

Skyscraper with no windows

7×7 Skyscrapers problem optimization

Use Git or checkout with SVN using the web URL.

Work fast with our official CLI. Learn more.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Launching Visual Studio

Latest commit

Git stats

Files

Failed to load latest commit information.

readme.md

7×7 Skyscrapers problem optimization

In a grid of 7 by 7 squares you want to place a skyscraper in each square with only some clues:

  • The height of the skyscrapers is between 1 and 7
  • No two skyscrapers in a row or column may have the same number of floors
  • A clue is the number of skyscrapers that you can see in a row or column from the outside
  • Higher skyscrapers block the view of lower skyscrapers located behind them

This problem is based on 4 By 4 Skyscrapers and 6 By 6 Skyscrapers by FrankK. By now, examples should be superfluous; A naive solution that solved a 4×4 puzzle within 12 seconds might need time somewhere beyond the Heat Death of the Universe for this size. It’s quite bad.

Clues are passed in as an Array(28) of integers . The return value is an Array(7) of Array(7) of integers .

Читайте также:  Windows 10 какие службы можно отключить для ускорения windows 10 64 bit

All puzzles have one possible solution.

Caveat: The tests for this problem have been tailored to run in

10 seconds with the JavaScript reference solution. I’ll need to do better than that!

Skyscraper with no windows

Skyscraper Enhanced by torresflo

This is a fork of the famous project Skyscraper by Lars Muldjord (see the readme of the original project below).

The main goal of this fork is to allow users to easily configurate and add platforms without having the needs to edit the code source directly.

Currently, the only scraper supported by this feature is Screenscraper. This feature is achieved by adding new config files:

  • platforms.json describes now the supported platforms by Skyscraper.
  • screenscraper.json. describes the required information on the Screenscraper website for each compatible platform.

These 2 files are pretty straigthforward to edit if you want to add a new platform (as an example I added myself the platforms OpenBOR and Solarus). These files are copied in the folder /usr/local/etc/skyscraper/ at the first run of the program if you want to edit them after an installation.

You can easilly install Skyscraper Enhanced by adding the script in the retropie-setup folder (here) in the scriptmodules folder of your retropie setup installation.

This way, you can install and run the program through the retropie setup menu like the original Skyscraper. Note that the same config and installation folders of the original Skyscraper will be used instead of having everything duplicated in specific folders.

Below is the original README.md. Everything is still usefull excepting the part about the platforms as you can now add/remove/edit any platform directly in the config files.

Skyscraper by Lars Muldjord

A powerful and versatile yet easy to use game scraper written in C++ for use with multiple frontends running on a Linux system (macOS and Windows too, but not officially supported). It scrapes and caches various game resources from various scraping sources, including media such as screenshot, cover and video. It then gives you the option to generate a game list and artwork for the chosen frontend by combining all of the cached resources.

All Skyscraper features are well-documented and there’s also a F.A.Q. If you still have questions after reading the documentation, please consider asking them on the RetroPie subreddit or in the official RetroPie forums. The Issues page here on Github is for bug reports and feature requests only. Thanks!

Pull Requests are not currently accepted. Due to wanting to pursue other projects after having worked on Skyscraper for 3 years, I am currently only fixing scraper-breaking bugs in Skyscraper. For any functionality beyond what is already in place, feel free to fork Skyscraper and fit it to your needs. I am no longer actively considering or commenting user feature requests or pull requests. When / if this changes, this text will be updated.

Supported platforms (set with ‘-p’):

Check the full list of platforms here.

Supported scraping modules (set with ‘-s’)

Skyscraper supports a variety of different scraping sources called scraping modules. Use these to gather game data into the Skyscraper resource cache. Check the full list of scraping modules here and read more about the resource cache here.

Supported frontends (set with ‘-f’):

  • EmulationStation
  • AttractMode
  • Pegasus

How to install Skyscraper

Follow the steps below to install the latest version of Skyscraper. Lines beginning with $ signifies a command you need run in a terminal on the machine you wish to install it on.

NOTE! If you are using the RetroPie distribution, you have the option to install Skyscraper directly from the RetroPie-Setup script (you need to update the script before installing it!). Read more about all of that here. If not, read on.

Skyscraper needs Qt5.3 or later to compile. For a Retropie, Ubuntu or other Debian derived distro, you can install Qt5 using the following commands:

You might be asked for your sudo password. On RetroPie the default password is raspberry . To install Qt5 on other Linux distributions, please refer to their documentation.

Skyscraper works perfectly on macOS as well but is not officially supported as I don’t own a Mac. But with the help of HoraceAndTheSpider and abritinthebay here’s the commands needed to install the Qt5 and other prerequisites:

If that went well, proceed to the default installation instructions below. It should work and give you a working installation of Skyscraper.

NOTE! User ‘davidmgrantham’ reports that the —with-default-names above might be deprecated for some macOS installations. If you remove it, you also need to download the update_skyscraper.sh and edit the tar commands to be gtar before running it.

Download, compile and install

When you’ve installed the prerequisites as described above, you can install Skyscraper by typing in the following commands:

The last command will download and run the latest update script from Github. During the installation you might be asked for your sudo password. On RetroPie the default password is raspberry .

When the script has completed you are ready to run Skyscraper!

From Skyscraper 2.3.2 and newer you can update to the latest version simply by running the following commands:

You might be asked for your sudo password during the update. On RetroPie the default password is raspberry . If your version is older than 2.3.2 (check with —help ) you need to follow the installation instructions instead.

How to uninstall Skyscraper

If you’ve installed Skyscraper using the instructions in this readme, you can uninstall it using the following commands:

Читайте также:  Второй буфер обмена windows

You might be asked for your sudo password during the processs. On RetroPie the default password is raspberry .

Windows is not officially supported at this time! But I do semi-regularly compile and release an unsupported Windows 64-bit version that works just fine. Be sure to read the included README from the downloaded file before using it! And just to be clear: You are on your own if you use this version — please don’t ask me questions about it. Get the Windows version here.

How to use Skyscraper

IMPORTANT. In order for Skyscraper to work properly, it is necessary to quit your frontend before running it! If you’re running EmulationStation, you can quit it by pressing F4.

Remember, you can completely customize the artwork Skyscraper exports. Check out the documentation here. If you just want to use the default (pretty cool looking) artwork Skyscraper provides, read on.

A simple use case

For first-time users I recommend reading the short and to-the-point use case. Please read it and get back here when you got the gist of it.

A quick run-down of Skyscraper

Skyscraper is a command line tool, and has many, many options for you to fiddle around with. I recommend taking a look at all of them to familiarize yourself with the possibilites:

This will give you a description of everything Skyscraper can do if you feel adventurous! For a thorough description of all available options, check here.

The most important ones are probably:

If you have your roms in a non-default location (default for RetroPie users is /home/ /RetroPie/roms/

) or wish to export the game list or artwork to non-default locations, you will also need these:

For almost any command line option, consider setting them in the /home/USER/.skyscraper/config.ini file as described here. This will make the options permanent so you don’t need to type them in all the time.

Gathering data for a subset of roms

Skyscraper offers several ways of gathering data for a subset of roms. If you just want to scrape the roms that have no data in the cache whatsoever, you can do so with the —onlymissing command-line option. You can also check out the —startat FILENAME and —endat FILENAME options. If you just want to gather data for a couple of roms you can simply add the filename(s) to the end of the command-line (eg. Skyscraper -p amiga -s openretro «/path/to/rom name 1.lha» «/path/to/rom name 2.lha» ). And probably the most advanced (and quite handy) way to gather data for a subset of roms is to make use of the —cache report:missing=RESOURCE option. This can generate a report containing the filenames that are missing a certain resource. You can then feed the report back into Skyscraper with the —fromfile REPORTFILE afterwards. Skyscraper will then only scrape the files contained in the report.

A lesser known, but extremely useful, feature of Skyscraper is to add your desired config variables to /home/USER/.skyscraper/config.ini . Any options set in this file will be used by default by Skyscraper. So if you always use, for example, -i on command line, you can set the matching option inputFolder=» » in the config.

For a full description of all availabe config options, check here.

One of Skyscraper’s most powerful features is the resource cache. It’s important to understand how this works in order to use Skyscraper to its full potential. Read more about it here.

I addition to allowing scraping from locally cached resources, Skyscraper also allows you to import your own data into the resource cache with the -s import scraping module. You can also edit existing resources in the cache or add individual user resources with the —cache edit command. Lastly, you also have the option of importing existing EmulationStation game list data into the Skyscraper resource cache if you need it. You can do this with the -s esgamelist scraping module.

To read more about any of the features described above, please check out all of the documentation here.

Artwork look and effects

Check the full artwork documentation here

Skyscraper also includes a Simple mode invoked simply by running Skyscraper with no command-line options like so:

I do not recommend using this mode anymore as I consider it to be deprecated after Skyscraper was officially added to the RetroPie-Setup script.

In simple mode Skyscraper will ask you a bunch of questions, create a script based on your answers and finally run the script which scrapes the chosen platform using those options. This can be useful for first-time users, since it gives a bit of an overview of many of the things you can configure Skyscraper to do. If you’re curious you can check out the generated script afterwards. It’s located at /home/USER/.skyscraper/skyscript.sh .

NOTE: If you choose to use this mode, please be aware that many of the scraping modules have limits and user requirements that need to be considered when scraping any number of files. You should familiarize yourself with these before using Skyscraper in general.

Version x.x.x (Features under consideration, all unimplemented)

  • Add the option to scrape from cached data purely originating from certain scraping modules
  • Consider making aliasMap the global baseName instead of just the search term base name. This will fix missing brackets in alias names being ignored later on
  • Make all artwork types custom meaning that their type can be whatever the user wants. The sources will create ones with known types such as ‘screenshot’ and ‘cover’, but the user can import other types they define themselves, such as ‘cabinet’ or whatever else. Internally artwork is then handled by a list of artwork instead of 4 hardcoded types in GameEntry
  • Introduce the ability to use in the ‘file=»somefolder/.png»‘ in artwork.xml which would then look for a file in ‘resources’ with the game basename.png allowing users to use their own custom artwork data as a workaround to adding new types to import (Thank you to ‘jueank’ for suggesting this)
  • Add the option of scraping custom platforms by configuring them in the config with an alias to an already existing platform. Example: scrape ‘pcenginecd’ could be scraped as ‘pcengine’ in case you have those files in a ‘roms/pcenginecd’ folder instead of the pcengine folder. Check here: https://github.com/muldjord/skyscraper/issues/136
  • Create a testmode for the artwork compositor that let’s you quickly render an example to see if you got everything set up right in the artwork xml
  • Allow ‘region’ to be a list similar to ‘regionPrios’. When using ‘region’ it should simply keep the default priority list and add those from ‘region’ to the top. ‘regionPrios’ should still overwrite it entirely. Naming change probably a good idea, for instance rename ‘region’ to ‘regionsPrefer’ or something. ‘regionPrios’ should probably also be changed to ‘regionsOverride’. (Thank you to ‘corezon’ for suggesting this).
  • Implemented a less ridig filename match for the ‘import’ module to allow for close match filenames
  • Add support for grouping multi-disk games so they only have one entry in the gamelists. See issues/232 (Thank you to ‘igno2k’ for suggesting this)
  • Update ‘igdb’ module to use ‘oauth2’ as described here: https://api-docs.igdb.com/#account-creation
  • Add ‘service check’ to verify API status of online source before starting scraping run.
Читайте также:  Windows in patient rooms

Version 3.5.9 (24th October 2020)

  • Implemented the new IGDB v4 authentication method. IGDB will now work again, and requires free credentials. Read more about that here
  • Improved memory consumption when handing entries back to main thread
  • Added ‘.au3’ file extension to id script exception list (Thank you to ‘o0alucard0o’ for reporting this)

Version 3.5.8 (16th August 2020)

  • Now supports spaces in Attract-Mode media paths (Thank you to user ‘o0alucard0o’ for pointing this out)

Version 3.5.7 (31st July 2020)

  • Now uses regular expressions when converting text to Pegasus format for better compatibility
  • Removed ‘extensions’ when generating Pegasus game list, as it isn’t required

Version 3.5.6 (30th July 2020)

  • Added ‘neogeocd’ platform (Thank you to ‘igno2k’ and ‘meveric’ for suggesting it)
  • ‘screenscraper’ module now supports region for screenshots (Thank you to ‘cameronhimself’ for pointing this out)
  • Low disk space check for cache is now calculated from cache folder location
  • Skyscraper initial output now shows frontend and extras when generating game lists
  • Changed ‘gamelistFolder’ config.ini option to ‘gameListFolder’ but kept old variable name for backwards compatibility
  • Added ‘gameListBackup’ config.ini option to allow for game list backups being created on each run (Thank you to ‘igno2k’ for suggesting it)
  • Attract-Mode now recognizes ‘$HOME’ in emulator file
  • Refactored Attract-Mode media folder getters
  • Fixed rare faulty matches from ‘esgamelist’ module in cases where last part of ‘path’ was a match with filename (Thank you to ‘akamming’ for reporting this)
  • Exporting for Pegasus frontend now supports preservation of old game list key-value pairs (Thank you to user ‘HugLifeTiZ’ for suggesting this)
  • ‘—cache report’ now also adheres so excludeFiles and includeFiles (Thank you to user ‘spilinek’ for pointing this out)

Version 3.5.5 (18th May 2020)

  • Fixed bug in ‘igdb’ module where it still used old hardcoded key (Thank you to ‘stlbluesfan’ for reporting this)

Version 3.5.4 (14th May 2020)

  • Hints file converted to xml (hints.txt -> hints.xml)
  • Moved documentation resources into ‘docs’ folder
  • Added ‘videoPreferNormalized’ config.ini option for use with the ‘screenscraper’ module

Version 3.5.3 (11th May 2020)

  • MAJOR: Added video conversion support through config.ini option ‘videoConvertCommand=»COMMAND %i %o»‘ option. See docs for more details.
  • Removed deprecated node and replaced it with for ES gamelist generation (Thank you to ‘yisraeldov’ for letting me know)
  • Added simple error handling for media network requests
  • ‘—flags help’ and ‘—cache help’ no longer requires ‘-p PLATFORM’ to be set
  • Changed ‘worldofspectrum’ scraping module to use https

Version 3.5.2 (29th April 2020)

  • Hid deprecated options from ‘—help’. Deprecated options still work just aren’t shown
  • Updated ‘Simple Mode’ to use the new ‘—flags’ options

Version 3.5.1 (28th April 2020)

  • Fixed minor bug in ‘daphne’ when it only has one rom in ‘daphne/roms’

Version 3.5.0 (27th April 2020)

  • For ‘screenscraper’, ‘thegamesdb’, ‘mobygames’ and ‘arcadedb’ Skyscraper will now no longer fetch the artworks if user has requested it to remain uncached (Thank you to user ‘herbymachine’ for the request)
  • Added ‘—skipexistingmedia’ option to allow for faster gamelist generation in cases where some artwork already exists in the gamelist media folder (Thank you to ‘jacrify’ for suggesting this)
  • Added ‘—flags’ command-line option that collects certain flag-like options into one
  • Added deprecated warnings to all options that are now moved to the ‘—flags’ option
  • Added ‘*.cue’ extension to ‘3do’ platform (Thank you to ‘therealdealneil’ for the suggestion)
  • Implemented a hack for the ‘daphne’ platform that will add the game info to the ‘game.daphne’ folders instead of the ‘game.zip’ files (Thank you to ‘AlCzervik’ for pointing this out)

Release notes for older releases can be found here.

About

Powerful and versatile game scraper written in c++

Оцените статью