Quake
Overview
The Quake application is a Quake game engine that can be used to play the several different Quake games.
Controls
The keyboard/mouse controls and gamepad mappings are listed in the tables below.
Keyboard and Mouse
The following table contains the basic keyboard and mouse mappings. Press the Escape (ESC
) key while playing a game to view the complete set of mappings (Options > Input > Customize Controls
).
Name | Keys |
Comments |
---|---|---|
Move Forward | ||
Move Backward | ||
Strafe Left | ||
Strafe Right | ||
Look | Move mouse to look. | |
Fire | ||
Jump | ||
Swim Up | ||
Swim Down | ||
Previous Weapon | ||
Next Weapon | ||
Show Quake Menu | ||
Show WebЯcade Pause Screen | + | Displays the webЯcade pause screen. |
Show WebЯcade Pause Screen | + | Displays the webЯcade pause screen. |
Mouse Support (Pointer Lock)
This application supports Pointer Lock on compatible browsers. Pointer lock binds mouse input to the game window, preventing the game from losing mouse input when the mouse travels outside the window. This functionality is critical when playing a 3rd person shooter. To enable pointer lock, click on the game window. Once the pointer is "locked", the pointer (arrow, etc.) will no longer be visible. To "unlock" from the window, press the Escape (ESC
) key.
Gamepad
Gamepad mappings are listed in the table below.
Name | Gamepad |
Comments |
---|---|---|
Move and Strafe | ||
Move and Strafe (Analog) |
||
Look (Analog) |
||
Fire | ||
Jump | ||
Swim Up | ||
Swim Down | ||
Previous Weapon | ||
Next Weapon | ||
Show Quake Menu | ||
Show WebЯcade Pause Screen | and | Not available for Xbox and not recommended for iOS (see alternate 3 or 4) Hold down the Left Trigger and press the Menu (Start) Button. |
Show WebЯcade Pause Screen (Alternate) |
and | Not available for Xbox and not recommended for iOS (see alternate 3 or 4) Hold down the Left Trigger and press the View (Back) Button. |
Show WebЯcade Pause Screen (Alternate 2) |
and | Not available for Xbox and not recommended for iOS (see alternate 3 or 4) Hold down the X Button and press the View (Back) Button. |
Show WebЯcade Pause Screen (Alternate 3) |
and | Hold down the Left Trigger and click (press down) on the Left Thumbstick. |
Show WebЯcade Pause Screen (Alternate 4) |
and | Hold down the Left Trigger and click (press down) on the Right Thumbstick. |
Game Archive Layouts
The Quake application requires that each game is packaged in an archive (.zip
) file. This archive file can also be (optionally) converted to a webЯcade package archive manifest (.json
) layout to reduce browser memory use and increase compatibility with memory limited devices (iOS and Xbox).
Important
The webЯcade editor's repackage archive tool can be used to automatically generate package archive manifests.
The table below shows the file layout that is required for each game (select the tab below for a particular game to view its layout).
The music directory and files are optional.
Important
Both the Safari (iOS and macOS) and Xbox Series X|S Edge browsers limit the amount of memory that can be consumed by a particular web application (such as webЯcade). Therefore, it is important to make the archive as small as possible.
For Quake game archive (.zip
) sizes that are over 100 megabytes in size, it is highly recommended that the webЯcade package archive manifest (.json
) layout be utilized as it will greatly
reduce the amount of memory necessary for the browser to load the game.
If you are including music files, using a free online compression tool such as Aspose (which can compress music files in common formats and output .ogg
files) can greatly reduce the overall archive size.
Quake (Shareware)
id1/
id1/music/
id1/music/track02.ogg
id1/music/track03.ogg
id1/music/track04.ogg
id1/music/track05.ogg
id1/music/track06.ogg
id1/music/track07.ogg
id1/music/track08.ogg
id1/music/track09.ogg
id1/music/track10.ogg
id1/music/track11.ogg
id1/pak0.pak
Quake
id1/
id1/music/
id1/music/track02.ogg
id1/music/track03.ogg
id1/music/track04.ogg
id1/music/track05.ogg
id1/music/track06.ogg
id1/music/track07.ogg
id1/music/track08.ogg
id1/music/track09.ogg
id1/music/track10.ogg
id1/music/track11.ogg
id1/pak0.pak
id1/pak1.pak
Scourge of Armagon (Pack 1)
id1/
id1/pak0.pak
id1/pak1.pak
hipnotic/
hipnotic/music/
hipnotic/music/track02.ogg
hipnotic/music/track03.ogg
hipnotic/music/track04.ogg
hipnotic/music/track05.ogg
hipnotic/music/track06.ogg
hipnotic/music/track07.ogg
hipnotic/music/track08.ogg
hipnotic/music/track09.ogg
hipnotic/pak0.pak
Dissolution of Eternity (Pack 2)
id1/
id1/pak0.pak
id1/pak1.pak
rogue/
rogue/music/
rogue/music/track02.ogg
rogue/music/track03.ogg
rogue/music/track04.ogg
rogue/music/track05.ogg
rogue/music/track06.ogg
rogue/music/track07.ogg
rogue/music/track08.ogg
rogue/music/track09.ogg
rogue/pak0.pak
Dimension of the Past (Pack 3)
id1/
id1/pak0.pak
id1/pak1.pak
dopa/
dopa/music/
dopa/music/track02.ogg
dopa/music/track03.ogg
dopa/music/track04.ogg
dopa/music/track05.ogg
dopa/music/track06.ogg
dopa/music/track07.ogg
dopa/music/track08.ogg
dopa/music/track09.ogg
dopa/music/track10.ogg
dopa/music/track11.ogg
dopa/pak0.pak
Adding Games (Feed Editor)
Due to large game archive (.zip
) sizes, adding Quake-based games in the Feed Editor must be done manually (versus using auto-detection).
See the Disc and Archive-based Items section for the list of steps required to add a Quake-based game in the Feed Editor.
Saved Games
This application supports persisting game saves into the browser's local storage or optionally to cloud-based storage. Saved games can be loaded and resumed on subsequent gaming sessions.
Feed
This section details how Quake application instances can be added to feeds.
Type
The type name for the Quake application is tyrquake
.
Note
The alias quake
also currently maps to this application. In the future, the quake
alias may be mapped
to another Quake application (different engine implementation) if it is determined to be a
more appropriate default.
Properties
The table below contains the properties that are specific to the Quake application. These properties are
specified in the props
object of a feed item.
Property | Type | Required | Details |
---|---|---|---|
uid | String | Yes | A unique identifier for the particular game (must be unique across all Quake games). This identifier is primarily used to associate persistent state with the game. |
archive | URL | Yes | URL to a Quake game archive (.zip ) or webЯcade manifest (.json ) file. |
wadType | Numeric | No | The type of game contained in the specified archive. (defaults to "Auto-detect")
|
wadPath | String | No | The path to the game within the archive (for example, mycustomgame/ ).This property is only applicable if the |
zoomLevel | Numeric | No | A numeric value indicating how much the display image should be zoomed in (0-40). |
Example
The following is an example of a complete feed that consists of a single Quake application instance (type
value of quake
). The archive
property value is a URL that points to a Dropbox location that contains the Shareware version of Quake.
{
"title": "Quake Feed",
"categories": [
{
"title": "Quake Games",
"items": [
{
"props": {
"uid": "d72e9354-f0c0-4c66-b8d2-3b7524731103",
"archive": "https://www.dropbox.com/s/4owkwdb2qafto64/quake-shareware-unlicensed-music-standalone.zip?dl=0"
},
"type": "quake",
"title": "Quake (Shareware)"
}
]
}
]
}
This example can be tested by adding a feed with the following URL within the webЯcade player:
https://tinyurl.com/sample-quake-feed