a geicko-2 based round robin ranking system designed to test c++ battleship submissions
battleship.dunkirk.sh
1# Scripts
2
3Helper scripts for testing and development.
4
5## Batch Upload
6
7### `batch-upload.sh`
8Uploads all test AIs using admin passcode authentication.
9
10```bash
11./scripts/batch-upload.sh
12```
13
14**What it does:**
15- Uses admin passcode to authenticate as different users
16- Auto-creates users if they don't exist
17- Uploads each test AI file
18- Queues all submissions for testing
19
20**Admin passcode:**
21- Default: `battleship-admin-override`
22- Override via: `BATTLESHIP_ADMIN_PASSCODE` env var
23
24## Test Submissions
25
26The `test-submissions/` directory contains sample AI implementations for testing:
27
28- `memory_functions_random.cpp` - Random shooting
29- `memory_functions_hunter.cpp` - Hunt mode after first hit
30- `memory_functions_diagonal.cpp` - Diagonal scanning pattern
31- `memory_functions_parity.cpp` - Checkerboard pattern
32- `memory_functions_probability.cpp` - Probability density
33- `memory_functions_cluster.cpp` - Clustered targeting
34- `memory_functions_edge.cpp` - Edge-first strategy
35- `memory_functions_spiral.cpp` - Spiral scanning
36- `memory_functions_snake.cpp` - Snake pattern
37- `memory_functions_klukas.cpp` - Advanced algorithm
38
39## Benchmark Script
40
41### `benchmark_random`
42Runs pure random shooting baseline (compiled C++ binary).
43
44```bash
45./scripts/benchmark_random 1000
46```
47
48Outputs average moves over N games for comparison.
49
50## Quick Start
51
52**Upload test AIs:**
53```bash
54# Run batch upload with admin passcode
55./scripts/batch-upload.sh
56```
57
58**Manual upload (with SSH key):**
59```bash
60# Upload as yourself
61scp -P 2222 memory_functions_yourname.cpp username@localhost:~/
62```
63
64**View results:**
65- Web UI: http://localhost:8081
66- All users: http://localhost:8081/users