SINCLAIR SOFTWARE DATABASE2

Jet Set Willy Editor

Written by: Paul Rhodes

released:

  • Spectrum Electronics in 1984
  • categories: application (editor)

    Platforms: Sinclair ZX Spectrum 48K

    Sections: instructions sequels/prequels links

    Jet Set Willy Editor: instructions

    
    JET SET WILLY EDITOR
    By Paul Rhodes
    
    INSTRUCTIONS:
    To load the program, put the Jet Set Editor tape in your cassette
    player, connect EAR socket on Spectrum to EAR socket on cassette
    player, and type LOAD "", followed by the ENTER key. After a
    short time, a flashing picture will appear. The main program will
    then be loaded and you will be asked to play the 'JetSet Willy
    tape'. Once the JetSet Willy program has loaded, the main menu
    will appear.
    
    MAIN MENU OPTIONS:
    (1) Save entire game     = SAVE "jsw1" CODE 32768,32768
    (2) Load entire game     = LOAD as option 1
    (3) Save room (CODE)     = SAVE "Room:nn"
         CODE (49152+256*nn),256
         (nn=room no.)
    (4) Save objects    = SAVE "Objects" CODE 41983,513
    (5) Save room (JSE) See below
    (6) Load room (JSE) See below
    (7) Save guardians  = SAVE "Guardians1"CODE 40960,1020:
         SAVE "Guardians 2"CODE 42496,6656
    (8) Load guardians  = LOAD as option 7
    (9) Play game  = RANDOMIZE USR 33792
    
    Options 5 and 6 SAVE and LOAD rooms together with all the object
    positions and guardian and graphic DATA related to them. The
    other SAVE options produce copies that can be LOADed from BASIC,
    but as the DATA saved by option 5 is not stored as it is in the
    JetSet Willy program, this is not possible with JSE files. There
    is no option to LOAD a room without guardian and object DATA as
    undefined guardians can cause crashes.
    
    E) THE SCREEN EDITOR:
    Cursor movement: Use keys 5 to 8 to move the flashing cursor.
    Changing screen: Use keys 5 to 8 with CAPS SHIFT to move to
    another screen.  Defining exits: Use keys 5 to 8 with SYMBOL
    SHIFT in define which rooms will be to each side of the room you
    are in.
    
    The DATA Line: This is directly below the room name. It shows the
    graphic squares representing, from left to right, the background
    (usually blank).  The 'floor', the 'wall', the 'nasty', the
    'ramp', the 'conveyor', and the 'object' which you have to
    collect. The character shown in the white between the two arrows
    is the 'current character', which will be deposited on the screen
    at the cursor position when you press '0'. To change the current
    character, move the cursor over one of the first four graphics
    on the DATA line, and press '0'. 'Rm' is the number of the room
    you are in, and 'Ob' is the number of objects that must be
    collected to complete the game.
    
    OTHER KEYS ARE:
    A: sets attributes of character under cursor (cursor must be over
    one of the first 6 on DATA line).
    M: defines 8x8 graphic character for graphic under cursor (cursor
    on DATA line). Within character definer: 5-8 to move cursor, 0
    to flip pixel on/off, CAPS SHIFT P to pick up current definition
    of character, Q to set character and return to screen editor.
    C: places conveyor belt with left-hand end at cursor position.
    Direction 0=left, 1=right.
    R: places ramp with bottom at cursor position.
    P: places 'object' at cursor position (if held down, many objects
    will be placed on top of each other; avoid this unless that is
    your aim).
    D: deletes 'object' at cursor position (hold down to remove
    multiple objects).
    B: sets border colour for current room.
    N: inputs room name: CAPS 8 and CAPS 0 to move cursor, ENTER to
    finish.
    ? (SYMB SHIFT C): Clears screen, except for graphics definitions
    and objects.
    . (SYMB SHIFT M): Returns to Main Menu.
    
    DOS AND DON'TS:
    Don't put anything in the path of a guardian (they leave trails
    to help show the parts to avoid). Don't have arrows passing
    through anything with white INK. If you have white background
    INK, any objects in the room will be automatically collected on
    entry to the room (see swimming pool). Do not have  two
    characters with the same attributes, especially if one is a
    'nasty'. Having the same attributes for ramp and conveyor creates
    a 'conveyor ramp' (see Chapel). Avoid having a 'nasty' at the top
    of the screen above a gap at the bottom (see right-hand half of
    Under the Roof). Do not put anything in the path of a rope (try
    it and see!), and do not allow an arrow to pass through a rope
    (especially not a white rope). Never allow guardians to overlap.
    Objects on top of other characters (floors, walls, etc.) cannot
    be collected. Do try anything else that seems like a good idea.
    Do save any rooms you wish to keep before playing the game!
    
    6) THE GUARDIAN EDITOR:
    Each guardian is identified by a number in the range 1-126. Most
    of them up to 111 are already in use, but any guardian can be
    deleted from all the rooms in which it occurs, so leaving the
    space it occupies in the DATA area free for defining a new
    guardian. Each guardian is associated with a 'page' of 8
    graphics, and a set of parameters to determine which of these
    graphics are used and how they move. Whenever a guardian is used,
    two more parameters must be specified; a start position in
    character positions across the screen; and a 'start' character,
    which further modifies which characters will form the guardian.
    The start character is the lowest number graphic that will be
    printed (the 8 graphics in each page are numbered 0-7). 
    'Animation' is part of the guardian definition, and affects the
    number of characters used:
    
    Animation 0 gives no animation: only a single character is used
    (eg. the barrel).
    Animation 1 gives 2 character animation (eg. the jelly).
    Animation 3 gives 4 character animation (eg. the thing in the
    bathroom).
    Adding 4 to the animation number for a horizontally-moving
    guardian gives bi-directional animation, eg. anim. 7 = 4 to the
    left, 4 to the right. For vertically moving characters, adding
    4 increases the number of graphics used.
    Animation 2 would give slow animation using only the even
    numbered characters 0 and 2. 6 would be bi-directional slow
    2-character animation.
    
    Technically, the character number to be printed cycles constantly
    from 0 to 7, and is modified before printing by ANDing with the
    start character and ORing with the animation.
    
    ARROWS
    move constantly along an imaginary line with 256 positions
    numbered 0-255.  Only positions 0-31 fall within the screen
    boundaries: the rest constitute the delay between the arrow
    leaving on one side and coming back on the other.  An arrow is
    defined with a direction and a start position along the line.
    It also has a 'Top/bottom byte', which in its binary
    representation gives the bit-pattern for the appearance of the
    top and bottom of the arrow. Eg. 65 * 01000001 binary, which as
    a top/bottom byte would give an arrow like
    this:
    
     *     *
    ********  (*=pixel set)
     *     *
    
    Note that the middle is always 11111111 binary (255 decimal).
    When used, an arrow must have a height specified. This height is
    in pixel positions from the top of the screen, but the top or
    bottom of the arrow should not fall outside the character
    position containing the body of the arrow. Put more simply, the
    height should not be exactly divisible by eight, nor must it be
    one less than a number which is exactly divisible by eight.
    
    NB. Heights are always given in pixels from the top of the
    screen, horizontal positions are in character positions from the
    left of the screen (as in PRINT AT). Directions are 0 or 1 (for
    left and right respectively). For bi-directional graphics, the
    left-facing graphics are in characters 0-3, and the right-facing
    ones in 4-7, so a 2-character bi-directional guardian with start
    character 2 would use 2,3,6 and 7. Horizontal movement is
    obtained by scrolling characters within their character positions
    (see the monk or the bird for egs.) but vertical movement is by
    moving the character position. Try moving a horizontal character
    vertically, or vice-versa to see the difference.
    
    THE ATTIC:
    The arrow moving to the left in the attic is the cause of the
    problems usually encountered after passing through this screen,
    due to it being called in an unorthodox manner. Such a problem
    cannot be created using this editor.  It can, however, be
    removed, using option 6 on the guardian menu.
    
    THE GUARDIAN MENU:
    (1) Examine a guardian
    Prints out page and rooms in which a guardian occurs. Also shows
    guardian, given start character, as it appears in the game.
    (2) Define a guardian    See above. Also: Vertical displacement
    is how many pixels a vertical guardian moves at a time. Fast
    animation is self-explanatory.
    (3) Delete a guardian
    Removes guardian from all rooms in which it occurs.
    (4) Define graphics 
    Like option M in the screen editor, but you can also scroll using
    CAPS SHIFT S, and you can pick up any character.
    (5) Examine screen
    Shows guardian numbers and start characters for all graphics on
    screen.
    (6) Edit screen
    'G' to place guardian, 'D' to delete, 'Q' to return to menu, '5'
    and '8' to move cursor. NB. the rope is guardian no. 1.
    
    Example screens are on the tape after the JetSet Editor program.
    Load using option 6 on the Main Menu. Define 'up' from Beach
    (S/SHIFT 7 in Beach) as room 47, and go up to the 'Space
    Station'. (The room numbers for loading are 47 and 61).
    
    JETSET EDITOR
    
    ADDITIONAL INSTRUCTIONS
    
    SCREEN EDITOR
    < > (SYM/SH W) - Set start position for Willy (cursor = top-left
    corner of Willy).
    
    GUARDIAN EDITOR
    CAPS R in Graphic Editor (Option 4) 'Reflects' graphic.