Commit Graph

13 Commits

Author SHA1 Message Date
Alexander Whitestone
d7ca9c8c83 fix: bind telnet and web client to localhost only (#9)
Security fix: Change from 0.0.0.0 to 127.0.0.1 for both TELNET_INTERFACES
and WEBSERVER_INTERFACES. Prevents unauthorized external access.

Added docs/SECURITY.md with:
- TLS setup instructions (nginx, caddy)
- SSH tunnel for development
- Firewall rules if external access needed

Closes #9.
2026-04-15 12:36:56 -04:00
0aa6699356 Merge PR #20: fix: Replace hardcoded path with dynamic derivatio 2026-04-15 06:17:27 +00:00
37cecdf95a fix: Replace hardcoded path with dynamic derivation (closes #18) 2026-04-15 03:45:02 +00:00
395c9f7a66 Merge pull request 'Add @who command - show connected players' (#7) from burn/20260413-0410-who-command into master 2026-04-13 08:14:54 +00:00
Alexander Whitestone
d36660e9eb Add @who command - show connected players with location and idle time 2026-04-13 04:13:03 -04:00
67cc7240b7 [auto-merge] stress test
Auto-merged by PR review bot: stress test
2026-04-10 11:44:34 +00:00
Alexander Whitestone
2329b3df57 feat: Add Fenrir stress test - automated player simulation
Implements issue #5: [Fenrir] Stress Test the Academy

Automated stress test tool that simulates multiple concurrent players
connecting to the MUD via telnet and performing random actions.

Features:
- Configurable concurrent players (--players, default 10)
- Configurable test duration (--duration, default 30s)
- Configurable actions per second per player (--actions-per-second, default 2)
- 14 weighted player actions: look, movement, examine, status,
  map, academy, rooms, smell, listen, say
- Response time measurement with latency percentiles (p50/p90/p95/p99)
- Error rate tracking and top error reporting
- Throughput calculation (actions/second)
- Connection success/failure tracking
- Per-player statistics
- JSON report generation with timestamps
- Self-test mode (--self-test) for validation without server
- No external dependencies (stdlib only)

Usage:
  python tests/stress_test.py --players 25 --duration 60
  python tests/stress_test.py --host 167.99.126.228 --port 4000
  python tests/stress_test.py --self-test
2026-04-10 07:21:19 -04:00
5f2c4b066d Merge pull request 'build: second pass — rich descriptions, custom commands, README' (#2) from build/second-pass into master GoldenRockachopa v7.0.0 2026-04-04 02:00:19 +00:00
Allegro
7c77981585 feat: enable full audit mode for player activity tracking
- Add comprehensive LOGGING configuration with dedicated handlers
- Create AuditedCharacter typeclass with movement/command/session tracking
- Track location history (last 1000 movements), command count, playtime
- Add audit log files: command_audit.log, movement_audit.log, player_activity.log
2026-04-04 00:06:02 +00:00
Allegro
67d91291d3 build: second pass — rich descriptions, custom commands, README
- world/rebuild_world.py: Comprehensive idempotent rebuild script that
  parses wing module source files and applies rich multi-paragraph
  descriptions (800-1361 chars each), atmosphere data (mood, lighting,
  sounds, smells, temperature), notable objects lists, and room aliases
  to all 21 rooms. Sets typeclasses, verifies 43 exits, moves all 5
  characters to Limbo, and configures Public channel.

- commands/command.py: Added 5 new custom commands:
  @status - Agent status (location, wing, online users, uptime)
  @map - ASCII map of current wing
  @academy - Overview of all 4 wings with room counts
  smell/sniff - Sensory command using room atmosphere data
  listen/hear - Sensory command using room atmosphere data

- commands/default_cmdsets.py: Registered all new commands in
  the CharacterCmdSet

- README.md: Complete rewrite with project description, connection
  info, ASCII room maps, agent accounts, rebuild instructions,
  tech stack, and future plans (Gitea bridge, crisis training,
  Nexus integration)
2026-03-31 16:24:18 +00:00
b0f53b8fdc Merge pull request 'fix: room descriptions, exit connections, character placement' (#1) from fix/room-descriptions-and-exits into master 2026-03-31 16:08:06 +00:00
Allegro
91f985b369 fix: room descriptions, exit connections, character placement 2026-03-31 15:28:02 +00:00
Allegro
d8193a0428 Initial commit: Timmy Academy Evennia world
- 21 rooms across 4 wings (Dormitories, Commons, Workshops, Gardens)
- Full exit graph connecting all rooms bidirectionally
- Room descriptions for all 16 inner rooms
- 5 character accounts (wizard, Allegro, Allegro-Primus, Timmy, Ezra)
- Public communication channel
- Build script: world/build_academy.ev
- Wing modules: world/dormitory_entrance.py, commons_wing.py, workshop_wing.py, gardens_wing.py

Built by Allegro, descriptions and exit fixes by Timmy.
2026-03-31 15:26:05 +00:00