Patch:Story Screen (Galaxy)

From KeenWiki
Jump to: navigation, search

The Keen Galaxy Story Screen also known as the Scrolling Story Screen or Star Wars Story Screen, is how a brief summary of the story is displayed in Keen Galaxy. It mirrors the story scene in the Star Wars movie, involving text scrolling upwards and shrinking in size so it appears to be moving away from the viewer.

The screen has its own palette with only eight functioning colors. It can be found at the palette patch page.


Disable

These patches stop the story screen appearing in the demo loop. This means there is no way to see any of the story at all. As it is part of the demo loop there are more complete patches relating to changing the story screen into something else on that page.

Patch: Keen 4
#Disable star wars story screen
%patch $3CBD $04D1W


Story location

Patching the story text is detailed at Patch:Large text files. By default an entire segment of the executable is set aside for the story. It is thus possible to change where the story is located, and thus how much space it has by patching what segment the game reads for data. The simplest way to do this is to replace the default value with the new location divided by $10 (Thus for Keen for the value is $1EE4, for story data located at $1EE40) The exact location to the byte can be specified if this is desired, increasing flexibility.

Making up a segment like this has been known to cause problems in the past, with the game freezing. However in this case the nature of the story text segment means that there should be no problem with doing this. However if problems do occur this patch may be to blame.

Simpler is patching a story text file. The text file is similar to the 'usual' text format except lines cannot be too long and only carriage returns can be used.

Patch: Keen 4 story segment location
#Story read from
%patch $5582 $1EE4RW
#This * $10
%patch $5587 $0000W
#Plus this
#Story text file
%patchfile $1EE40 "STORY.CK4"

Patch: Keen 5 story segment location
#Story read from
%patch $557C $1FDERW
#This * $10
%patch $5581 $0000W
#Plus this
#Story text file
%patchfile $1FDE0 "STORY.CK5"


Font to use for story

This patch controls what font to use for the scrolling story text. By default this is font 3 (Out of three possible choices.) Using the standard story only font 1 or 3 can be used. Changing font will also require the story to be 'interpreted' to fit the new font. (Otherwise it will appear as gibberish.)

Patch: Keen 4
#Font to use for story
%patch $57DD $0002W


Music to use

By default the story screen uses the same music as an in-game level. The value of this level determines the music played. (See Patch:Music.) This can be the map level if desired but cannot be a nonexistent level or a 'bad level number' error will result.

Patch: Music to use for story screen
#Keen 4
%patch $5836 $000CW
#Keen 5
%patch $5830 $0011W
#Keen 6
%patch $563F $000DW


Background image

This is the image used as the background in the story. The scrolling text appears over it. Notice the text warps the color of pixels behind it, adding $08 to the color. (So color $07, light grey, becomes $0F or white.) The image, like all images, must be cached first before it is displayed. Removing the display call will result in a black screen with white text over it.

Patch: Keen 4
#Story background image
%patch $57EA $006CW
#Cache
%patch $57FC $006CW
#Display
#No background image
%patch $57E9 $EB $20


Player cannot stop story screen by pressing any key

This patch removes the player's ability to 'skip' the story screen by pressing nay key; they will be 'stuck' on the screen until it finishes automatically.

Patch: Player cannot stop story screen by pressing any key
#Player cannot stop story screen by pressing any key -Keen 4
%patch $5772 $90 $90
#Player cannot stop story screen by pressing any key -Keen 5
%patch $576C $90 $90
#Player cannot stop story screen by pressing any key -Keen 6
%patch $577B $90 $90


How long to wait after text has scrolled

This patch controls how long the story screen remains after the last line of story text has scrolled past the bottom of the screen. By default this is a considerable time allowing the text to nearly vanish.

Note that even if this is set to 0 the entire story will have to scroll by first before the screen finishes.

Patch: How long to wait after text has scrolled in story screen
#How long to wait after text has scrolled in story screen -Keen 4
%patch $5778 $0190W
#How long to wait after text has scrolled in story screen -Keen 5
%patch $5772 $0190W
#How long to wait after text has scrolled in story screen -Keen 6
%patch $5581 $0190W


Story screen stays until key is pressed

This patch makes it so that the story screen will not automatically finish when the scrolling text is complete. The player will need to press a key instead.

Patch: Story screen stays until key is pressed
#Story screen stays until key is pressed -Keen 4
%patch $577D $90 $90
#Story screen stays until key is pressed -Keen 5
%patch $5777 $90 $90
#Story screen stays until key is pressed -Keen 6
%patch $5586 $90 $90


Palette

These patches set the colors used for the story screen and images. Notice that only nine unique colors are used. The first eight entries are 'dark' colors, used for the background image. The next eight are set to 'white' and are the color of the (translucent) story font as it passes over the first eight colors. This means that the appearance of the story background image is different in the game than when extracted with ModKeen or Keengraph.

Patch: Keen 4
#Palette read from:
%patch $581B $01EEW
#Story background palette:
%patch $2F05E $00 $01 $02 $03 $04 $10 $06 $07
#Dark colors
$1F $1F $1F $1F $1F $1F $1F $1F
#Light colors

Patch: Keen 5
#Palette read from:
%patch $5815 $019EW
#Story background palette:
%patch $304DE $00 $01 $18 $1E $1F $1C $06 $07
#Dark colors
$13 $13 $13 $13 $13 $13 $13 $13
#Light colors

Patch: Keen 6
#Palette read from:
%patch $5624 $0132W
#Story background palette:
%patch $30E62 $00 $01 $18 $19 $04 $1C $06 $07
#Dark colors
$1F $1F $1F $1F $1F $1F $1F $1F
#Light colors


Play story text before every new game

This patch causes the story screen to appear whenever a new game is started. The player can skip the story screen by pressing a key; this causes the game to start sooner. As a side-effect the story screen will also play if the warp level cheat is used.

Two other side-effects are notable; firstly demos are no longer 'derandomized'; they will play slightly differently each time instead of in a predictable manner. This shouldn't cause any problems but can result in a demo occasionally ending unexpectedly. The second effect is that the screen turns black when Keen is moving between levels; while the level window still appears the background is black which is a slight but notable difference from the game's default.

In this patch the story screen is removed from the game demo loop as if it is not the player can press a key during it causing the screen and the following demo to load and be stopped. This is a cosmetic effect and not vital to the patch. The blue value in the patch is the demo's difficulty; all demos will have this difficulty when being recorded or played. (See demo page for details.)

The patch to stop the player going to the main menu is included since otherwise at the start of a new game the player cannot skip the story, getting stuck in the menu. An alternative patch is to use the patch on this page that stops the player from halting the story by pressing any key. This however means the story must be sat through each time a game is started, which could be a trying experience.

Patch: Keen 4
#Star wars text appears before new game
%patch $61DE $0E $C7 $06 $7A6CW $0002W $EB $17 %patch $61ED $9A $03ED18B8RL
#Pressing any key in the story screen doesn't go to main menu
%patch $5894 $90 $90 $90 $90
#Remove Story screen from demo loop
%patch $3CBD $04D1W