# The &kolf; Handbook

Jason
Katz-Brown

    jasonkb@mit.edu

&FDLNotice;
2005-12-18
1.1

&kolf; is a miniature golf game for &kde;.

KDE
golf
miniature
arcade

## Introduction

&kolf; is a miniature golf game with block graphics and a 2d top-down view. Courses are dynamic, and up to 10 people can play at once in competition.

&kolf; comes with a tutorial course. Playing this course is the easiest way to get started.

## Tutorial

&kolf;'s game-play is simple. It is easiest to learn how to play hands-on, and thus a tutorial course is included to guide you through the basics. This chapter will guide you through this tutorial. To start the tutorial, choose Help Tutorial.

### Hitting the Ball

To aim the ball, either line up the mouse behind the ball so the putter aims in the direction you want to hit it or press one of the Left Arrow (counterclockwise) or Right Arrow (clockwise) keys, to rotate the putter.

To rotate the putter more quickly with the keyboard, hold down Shift while pressing or holding the arrow keys. To rotate more slowly, hold down Control.

To hit the ball, press and hold either the &LMB; or Down Arrow key. The longer you hold down the key or button, the more strength the putt will have. It will take practice to get a good feel for speed.

To stop abort the putt while you are still holding moving the putter back in your stroke, press Escape.

Hit the ball into the hole (gray circle) to move on the next.

### Slopes

Slopes are areas of slanted down that the golf ball rolls down in an expected manner. The light of the golf course is from the upper-left, so the brightest slopes will push the ball towards the upper-left corner of the hole. Choose Hole Show Info to see an arrow that points in the direction the slope will roll the ball.

On this tutorial hole, hit the ball onto the upward-pointing slope and let it roll into the cup to move onto the next hole.

#### Directions

On the next hole, experiment with the other kinds of slopes. There are elliptical, vertical, horizontal, and diagonal slopes in &kolf;. Hit the ball into the hole.

#### Steepness

The next tutorial hole has two slopes of differing steepness. If you choose Hole Show Info, the steepness of the slope will appear as a number from 1-8, where 8 is steepest and 1 is shallowest. Also, the more extreme shading the slope has, the steeper it is. Hit the ball into the hole and continue to the next hole.

### Walls

Balls bounce of walls as one would expect them to, with a little bit of dampening. Deflect the ball off the walls and into the cup to advance to the next hole.

### Puddles and Sand

#### Puddles

Puddles are blue. When your ball rolls into a puddle, a penalty stroke is added to your score and your ball is placed outside the puddle.

#### Sand

Sand is yellow. Balls roll through sand very slowly.

Hit the ball around the puddles and through the sand into the hole to continue to the next tutorial hole.

### Windmills

Windmills are compound objects with brown border walls and a moving arm at either the top or bottom of the object. Half-walls create the opening to the windmill, which a black arm swings across. It takes practice to be able to time stroke of the ball to pass through the opening. Hit the ball through the windmill into the hole to continue.

### Black Holes

When you hit your ball into a black hole, it is transported to the exit and ejected at the angle of the exit at a speed directly relational to the speed your ball was going. Choose Hole Show Info to see which Black Hole goes to which exit and which direction the ball will come out of the exit. The rim around Black Holes and their corresponding exits are also the same color. Hit the ball into the black hole, which will then eject the ball into the cup so you can go to the next hole.

### Floaters

Floaters are moving platforms that carry a ball that lands on it. Floaters' speeds vary. This one is a pretty slow floater, but you still must time your shot so you can go over the wall and into the cup.

### Bridges

Bridges are simple - they just lift the ball above the things below them, like slopes, sand, and puddles. They can have brown walls on their perimeter.

## Basics

Here's in-depth description of &kolf;'s basic features.

### Starting a Game

To start a game, choose Game New. This opens a dialog where you can configure your new game.

More third-party &kolf; courses are available at the &kolf; website. See the &kolf; user-uploaded courses page.

#### Players Page

To add a player to your game, click the New Player button.

The text boxes in the grass area are the names of the players in this game. To change the name of the players, change the text in the text boxes. To change the ball color of the players' balls, click the middle button that has a color rectangle, and a dialog will open where you can select the new ball color. The rectangle on the button is the current player's ball color.

To remove a player, click the Remove button next to the player's name.

#### Course Page

To choose the course that you want to play, click it's entry in the list box on the left of this page. &kolf; comes with many built-in courses that you can play.

To add a course that you have downloaded or made, click on the Add... button on the bottom of this page, and choose the course file in the file dialog.

#### Options Page

On this page you can choose whether or not this game will be played in Strict mode. In strict mode, there is no undo, moving holes, or editing of the course. This mode is generally for competition. Only in strict mode are high scores kept.

### Saved Games

&kolf; can keep a history of your rounds that are still in progress and save them to disk so you can load them and play them later. Saved games include the current hole, names and colors of all players in game, and the scores of the players.

#### Saving Your Game

To save your game while still playing, choose Game Save Game . If you have not saved a game on this game before, you will be prompted for the file to save to.

#### Loading Your Game

To load the game that you saved, choose Game Load Saved Game... . You can then choose the saved game to open.

### Practicing

There are a few features that make practicing your golf easier. These features are not enabled during strict mode.

#### Undo

To undo a bad shot, choose Hole Undo Shot.

#### Switching Holes

The Go menu contains many menu items for switching to different holes that are quite self explanatory. See the Go menu reference.

### Putting Options

&kolf; has a few ways to putt. The basic putting method is described above.

The mouse is enabled by default. This means that whenever the mouse is moved, the putter aligns to the line between the mouse and ball.

If you prefer to only use the keyboard and arrow keys, you can disable mouse putting by unchecking Settings Enable Mouse for Moving Putter.

#### Advanced Putting

Advanced putting can be enabled by checking Settings Enable Advanced Putting. This putting mode is slightly more challenging than the regular click-and-hold mode, and can be used with either the mouse or keyboard.

To putt in this mode:

1. Click or press the Down Arrow key once to begin the swing. The putting indicator will appear, and the strength gauge will start filling up with a color, which changes as the gauge fills up.

2. Click or press the Down Arrow key when the strength gauge has filled up the amount that you want. The farther around the circle the strength gauge has filled up, the stronger the putt will be. It takes practice to be able to get the correct strength on putts.

   After this, the color in the putting indicator will start to wind down back to where it started.

3. Click or press the Down Arrow key again when the strength-indicator is as close as possible to the center line of the putting indicator.

The closer the final click (or key press) is, the more true the putt is to the original line.

## Editing Courses

&kolf; comes with a versatile editor for its course file format. Courses can have any number of holes, and there is no limiting the creativity of the course designer.

### Creating a New Course

To create a new course, choose Game New. Go to the Course page of the dialog, and choose the Create New course. Make sure that, under the Options page of the dialog, Strict mode is unchecked.

To play this new course later, click the Add... button to add the course to your list of courses.

### Adding Holes

Choose Hole New to add a new hole at the end of the course.

You can restore a hole to a blank state, similar to when it was first created, by choosing Hole Clear.

Two items will appear on new holes: a cup, and a white ball. The white ball marks where players' balls start the hole.

### Editing Basics

The basic building block of &kolf; courses is the object. Holes are made up of a bunch of objects. Objects can be moved to any location, and the different kinds of objects each have different properties you can set.

To start editing a hole, toggle the Hole Edit menu item, or press the pencil icon on the toolbar. To leave editing mode, uncheck this menu item (or the toolbar icon).

#### Adding Objects

To add a new object to the course, choose it's name in the list box labeled Add object:. The object will appear in the center of the course.

Bridges and signs will cover up new objects if they were already in the center of the hole.

You can add more than one cup to a hole! Doing so can create interesting hole designs.

Some &kolf; objects are available as plugins. If you add these objects to your course, course players will need to download the plugin.

Third-party &kolf; plugins are available at the &kolf; website. See the &kolf; plugins download page.

#### Moving and Resizing Objects

Move your mouse cursor over the object that you want to move, and the mouse cursor will change to a hand cursor. Then click and drag the object to where you want it.

Puddles, sand, floaters, bridges, and signs can be resized by dragging the small circle at their lower-right corner.

Walls can be moved by clicking and dragging their endpoints, or you can move the whole wall by clicking and dragging on the middle part of the wall as normal.

#### Objects' Settings

Objects' properties can be changed in the area at the lower-right corner of the &kolf; window. To edit an object, move your mouse cursor over it until the cursor changes to the hand cursor. Then click. Various controls for that object will appear in the lower-right corner of the &kolf; window.

##### General Hole Settings

To edit general hole settings, click an area of the hole that is not covered by an object. When this is possible, the cursor will be the normal pointer cursor.

Course name:

  This is the name that is shown in the new game dialog and in the About Course dialog.

Course author:

  This is the author name that is shown in the About Course dialog.

Par:

  The par of the hole.

Maximum:

  The maximum number of strokes a player can take on the hole.

Show border walls

  Whether or not to show walls around the border of the hole.

##### Slopes

Type

  Choose the type of the slope - Vertical, Horizontal, Diagonal, Opposite Diagonal, Circular. Diagonal and opposite diagonal slopes are triangles, while circular slopes are circles. Vertical and horizontal slopes are rectangles of course.

Reverse direction

  Whether or not to reverse the slant of the slope. For example, consider an elliptical slope (a circular slope). When it is not reversed, it pushes balls outward like a mound. When it is reversed, it sucks balls inward like a hole.

Grade:

  Choose the grade (steepness) of the slope by moving the slider so the grade moves towards 0 or 8, where 8 is steepest and 0 is flat. Steeper slopes push the ball more.

Unmovable

  Whether or not this can be moved by other objects, like floaters.

  If a floater overlaps with this object at any point on this path, and the slope is large and thus won't move the floater, you must make the slope Unmovable, or &kolf; will suffer poor performance!

##### Puddles and Sand

Puddles and Sand have the same configuration options as each other.

Enable show/hide

  Checking this enables the flashing of this puddle or sand.

Show/Hide speed

  The more towards Fast the slider is, the faster the puddle or sand flashes.

##### Bridges, Windmills, Floaters, and Signs

Bridges, windmills, floaters, and signs all have similar settings for configuring on which sides there are border walls. To show the wall on a side, check the check box for that side.

There are also some more specific options for windmills, floaters, and signs.

###### Windmills

Windmill on bottom

  Whether or not the black windmill arm is on bottom or top - the default is that it is on the bottom. The two half-walls will always be with the arm. Note that you cannot enable a border wall on the side that the arm is.

Speed

  The more towards Fast the slider is, the faster the black windmill arm moves.

###### Floaters

The path the floater moves along is shown by the wall it's connected to.

Moving speed

  The more towards Fast the slider is, the faster the floater moves. If the slider is all the way at the Slow end, the floater will stop.

###### Signs

Sign HTML:

  You can enter any valid &HTML; here. For example, entering Hit it <i>softly</i> towards the slope! will create the text Hit it softly towards the slope!.

## Command and Menu Reference

### The Game Menu

&Ctrl;N Game New...

  Start a new game

&Ctrl;O Game Load Saved Game...

  Load a previously saved game.

&Ctrl;S Game Save Course

  Save the current course using it's current file name.

Game Save Course As...

  Open a file dialog allowing you to save the current course using a new file name.

Game Save Game

  Save the current game with the last saved game filename, or under a filename you specify if you have not saved the game yet.

Game Save Game As...

  Opens a file dialog allowing you to save the current game with a filename of your choice.

&Ctrl;End Game End Game

  End the current game, without closing &kolf;

&Ctrl;H Game Show Highscores

  Display the high score table.

&Ctrl;P Game Print...

  Print the current screen.

Game About Course

  Show name, author, and par of course.

&Ctrl;Q Game Quit

  Quit &kolf;

### The Hole Menu

&Ctrl;E Hole Edit

  Switch to editing mode to edit the current hole.

&Ctrl;&Shift;N Hole New

  Create a new hole. (Only while editing.)

&Ctrl;Delete Hole Clear

  Remove all objects from the current hole. (Only while editing.)

&Ctrl;R Hole Reset

  Reset the current hole to it's starting position, so that you can start over.

&Ctrl;I Hole Show Info

  Show information about objects on the current hole.

&Ctrl;Z Hole Undo Shot

  Undo the last shot you made.

### The Go Menu

Go Switch to Hole

  Go directly to another hole within the course. A list of the hole numbers allows you to choose which hole you wish to go to.

&Alt;Right Arrow Go Next Hole

  Go the the next hole.

&Alt;Left Arrow Go Previous Hole

  Go to the previous hole.

&Ctrl;Home Go First Hole

  Go to the first hole in the course.

&Ctrl;&Shift;End Go Last Hole

  Go to the last hole in the course.

Go Random Hole

  Go to a random hole from the current course.

### The Settings Menu

Settings Show Toolbar

  Toggle on and off the main toolbar.

Settings Show Statusbar

  Toggle on and off the statusbar.

Settings Enable Mouse for Moving Putter

  Allow the use of the mouse to move the putter.

Settings Enable Advanced Putting

  Enable the advanced putting mode, as described in its own section.

Settings Show Putter Guideline

  Toggle on and off the putter guideline.

Settings Play Sounds

  Toggle on and off the sound effects.

Settings Enable All Dialog Boxes

  Re-enables any dialog boxes that you disabled by clicking on Do not show this message again or similar.

Settings Reload Plugins

  Reload plugins.

Settings Show Plugins

  Display the currently loaded plugins.

Settings Configure Shortcuts...

  Customize the keyboard shortcuts.

Settings Configure Toolbars...

  Open a dialog where you can configure the toolbars for &kolf;.

### The Help Menu

&help.menu.documentation;

## Credits and Licenses

&kolf; copyright 2001, 2002 &Jason.Katz-Brown;

### Developers

- &Jason.Katz-Brown; jasonkb@mit.edu

- Niklas Knutsson

- Ryan Cumming

- Daniel Matza-Brown

Documentation copyright 2002, &Jason.Katz-Brown;

&underFDL; &underGPL;

## Installation

&install.intro.documentation; &install.compile.documentation;

&documentation.index;