> For the complete documentation index, see [llms.txt](https://k0ssek-scripts.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://k0ssek-scripts.gitbook.io/docs/scripts/squash/changelog.md).

# Changelog

What each version changed, and the known issues of the current one.

The script and its assets are released together under one version. The same list is in `CHANGELOG.md` inside both folders.

## Known issues in 1.0.0

Three things we know about and are working on:

| Issue                                                                                                                                                                     | What to do until it is fixed                                                                                                                   |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| Holding the touch-shot key (right mouse by default) can switch the camera to the game's aim view.                                                                         | A short press plays the shot normally. A player can also bind the touch shot to another key in the GTA settings (Key Bindings, FiveM).         |
| The referee is strict on let appeals. In our own two-player games most appeals were answered "no let", also some that deserved a let, and a stroke was hardly ever given. | The distances it judges by are in `Config.Interference`, see [Configuration](/docs/scripts/squash/configuration.md). A tuning pass is planned. |
| Inside a court the game's follow camera is pushed in by the walls, most of all near the back wall.                                                                        | A court camera that keeps the whole court in view is planned.                                                                                  |

## 1.0.0

First public release.

### Gameplay

* 1v1 matches: point-a-rally to 11 (win by 2), a single game or best of 3 / 5
* Solo practice, with the longest rally recorded
* Hard and touch shots aimed with the camera
* Contact quality: a well-timed, centred hit flies faster and straighter
* Serve power meter and service boxes
* Tennis footwork, ball trail, landing marker and aim marker

### Refereeing

* Automatic referee by the World Squash rules: in, out, tin, not up, double bounce, faults
* Let appeals, ruled by the server from where both players stand
* The ball hitting a player
* Turning and self-created interference

### Multiplayer

* Server-authoritative rallies on a deterministic ball simulation
* Wagers: a stake set by the match owner, the pot to the winner, refunds when a match cannot be played
* Elo rankings and a longest-rally leaderboard
* Spectators follow a match on the court's scoreboard in the world, or on their screen at courts that have none

### Courts and assets

* Four courts at Vespucci Beach (`kossek_squash_assets`): walls, painted lines, glass back walls with doors, lights at night
* Squash racket and ball models, with the game's tennis props as a fall-back
* Scoreboards in the world, placed with `/squashcourt board`
* Courts anywhere with `/squashcourt add`, lined up with the walls of a room
* A court can name the map resource it is built in

### Interface

* Squash panel: play, stats and rankings
* Scoreboard, result banners and shot readout on the HUD
* HUD editor (`/squashhud`), saved per player
* Leave key (hold Backspace)
* Theme file for the HUD, the panel and the scoreboards

### Server owners

* ESX, QBCore, QBX and standalone
* ox\_target, qb-target or a built-in E prompt with a marker
* ox\_lib or the game's own notifications and prompt
* Open config, bridge, notifications and locales (English, Polish)
* `kossek_squash:matchFinished` server event
