optimize markdown files

Signed-off-by: Peter Siegmund <mars3142@noreply.mars3142.dev>
This commit is contained in:
2026-02-13 02:45:34 +01:00
parent f9c45ca81f
commit b7bee804ca
3 changed files with 221 additions and 182 deletions

View File

@@ -1,32 +1,71 @@
# Wherigo Simulator
# Wherigo Player
This project is a desktop application for simulating and running Wherigo geocaches. It allows you to play Wherigo cartridges directly on your computer, making it possible to experience geocaching adventures without a GPS device or mobile app.
A desktop application for playing Wherigo geocaching cartridges. Experience geocaching adventures directly on your computer without a GPS device or mobile app.
## Features
- Load and execute Wherigo cartridges (.gwc files)
- Simulate geocaching locations and actions
- Desktop interface for easy navigation and interaction
- Support for media and cartridge data
- **Load and execute Wherigo cartridges** (.gwc files)
- **Full game engine** with Lua 5.1.4 interpreter
- **Interactive UI** with zones, tasks, inventory, characters, and items
- **Media support** - Display images (JPEG, PNG) in dialogs and object details
-**Save/Load game state** - Pause and resume your progress
-**Completion logs** - Generate .gwl files for wherigo.com
-**Event-driven updates** - Real-time UI refresh on game state changes
-**Timer system** - Automatic countdown timers with callbacks
-**Dialog system** - Multi-page dialogs with images and buttons
## Requirements
- C++23 or newer
- wxWidgets (for GUI)
- wxWidgets 3.3 (for GUI)
- Lua 5.1.4 (for cartridge execution)
- CMake 3.20+
## Building
```bash
mkdir build && cd build
cmake ..
cmake --build .
```
## Getting Started
1. Clone this repository.
2. Build the project using CMake and your preferred compiler.
3. Download a Wherigo cartridge (PocketPC format) from [wherigo.com](https://wherigo.com)
4. Open it in the application.
1. Download a Wherigo cartridge from [wherigo.com](https://wherigo.com)
2. Launch wxWherigo
3. Click "Open Cartridge..." and select your .gwc file
4. Click "Start Game"
5. Use the tabs to interact with zones, tasks, and items
## Keyboard Shortcuts
- **Ctrl+O** - Open cartridge
- **Ctrl+S** - Save game state
- **Ctrl+L** - Load game state
- **Ctrl+E** - Export completion log
## Documentation
- [Lua State Persistence](LUA_PERSISTENCE.md) - Save/Load system
- [Wherigo Completion](WHERIGO_COMPLETION.md) - Completion log format
## Project Structure
- `main/` - Application entry point and UI
- `libs/cartridge/` - Cartridge parsing and media handling
- `libs/storage/` - Storage management
- `libs/lua-5.1.4/` - Lua interpreter
```
wx_wherigo/
├── main/ # Application code
│ ├── src/
│ │ ├── ui/ # User interface (cStartScreen, cGameScreen)
│ │ └── lua/ # Lua integration & game engine
│ └── include/
├── components/
│ ├── cartridge/ # .gwc parser
│ ├── storage/ # File handling
│ └── lua-5.1.4/ # Lua interpreter
```
## License
This project is licensed under the MIT License. See `License.md` for details.
This project is licensed under the MIT License. See `LICENSE.md` for details.
## Author
Peter Siegmund (mars3142)
## Acknowledgments
- Groundspeak for the Wherigo platform
- wxWidgets team for the GUI framework
- Lua team for the scripting engine