Releases: eblackrps/NPCJason
NPCJason v1.8.0
NPCJason v1.8.0 makes Jason feel more companion-like over long stretches without turning him into a noisy little process goblin.
- Added a lightweight familiarity and relationship system that persists across sessions and gently influences greetings, reactions, and unlock pacing
- Added intentional greeting and sign-off behavior so startup, winding down, and quiet transitions feel more alive
- Added milestone moments for days used, longer sessions, recurring interaction, and other long-haul desktop habits
- Added ambient world bits so Jason can occasionally seem busy with his own tiny off-screen nonsense
- Improved unlock and discovery surfacing with lighter, funnier announcement beats and tray-visible reward status
- Expanded mouse life with Crumb Heist, Mug Recon, Zip Tie Recovery, and calmer background sidekick presence
- Added daily mood surfacing and theme-linked content rotation to keep long-term sessions fresher without overpowering the normal mix
- Added clearer success, cooldown, interruption, and confusion reactions so behavior reads as intentional
- Fixed upgrade migration so existing users keep meaningful familiarity history instead of starting cold on the new system
- Fixed milestone consumption so missed or blocked milestone moments are not silently lost
- Tightened suppression and timing so greetings, sign-offs, and automatic reactions are less likely to collide with fullscreen, quiet-time, or active scripted behavior
NPCJason v1.7.0
NPCJason v1.7.0 adds more world, more timing, and more layered desktop nonsense without making Jason louder than he needs to be.
- Added a new desk-item interaction framework with real coffee mug, keyboard, and tiny network rack bits
- Added selective notification/context reactions so useful title observations can trigger short little behavior beats
- Added quote conversation chaining for follow-up punchlines and mini conversational bits
- Added more idle micro-actions so long sessions feel less repetitive and more alive
- Added lightweight skin specialties so Astronaut, Network, Office, Responsible, and Squarl Suit moods feel more distinct
- Added more Jason-and-mouse sidekick interactions, including Desk Patrol, Cable Audit, and Victory Scamper
- Added the new Networking Meltdown & Helpdesk Chaos content pack
- Added behavior tuning controls for activity level, quote frequency, and companion frequency
- Improved context-aware comedy so desk items, quotes, companion bits, title humor, and existing systems play together more cleanly
- Fixed persistence and runtime handling for the new behavior controls and layered prop interactions
- Polished pacing to reduce overlap between automatic speech, desk bits, movement, and companion antics
NPCJason v1.6.0
Highlights
- Added a lightweight companion framework and the first real sidekick: a pet mouse that idles, follows Jason, waits, reacts, and joins the desktop chaos without taking over the app.
- Added the Feed Cheese interaction with a readable backflip routine and the exact punchline
Ansible Chris made me do it. - Expanded dancing to three routines total so Jason rotates between distinct little victory bits instead of repeating the same move every time.
- Added Squarl Suit Jason as a proper first-class skin with full metadata, offsets, tray colors, and quote affinity.
- Added smarter app-title humor so Jason can occasionally react to useful foreground window titles without feeling invasive or constant.
- Added a dedicated Cisco joke pack for networking moments, Cisco-adjacent titles, and smug post-routing desktop energy.
- Tuned comedy/context biasing so companion moments, dances, title jokes, and the existing quote packs play together more cleanly.
Fixes And Polish
- Fixed companion shutdown so the mouse window cleans up correctly when the app exits.
- Hardened title handling so empty or missing window titles do not break reactions, and generic titles no longer over-bias the quote system.
- Ensured the cheese/backflip gag can still land its final line instead of losing it to the normal ambient speech cooldown.
- Normalized selected companion persistence so bad saved values recover safely to a valid companion.
- Added validation coverage for the new title packs, companion-aware template tokens, tray snapshot state, and Squarl skin registration.
NPCJason v1.5.0
Highlights
- Expanded personality states so Jason feels moodier, smugger, busier, sneakier, and more intentionally confused.
- Smarter desktop movement with pacing, hesitation, edge inspection, and safer recovery around screen boundaries.
- Reusable gag chains and mini-scenarios, including Busy IT Morning, Homelab Troubleshooting, Network Victory Lap, Responsible Adult Moment, and Office Chaos.
- Favorites and taste-shaping that bias skins, toys, scenarios, and quote packs without flattening the randomness.
- Discoveries and unlockables, including Astronaut Jason and longer-session surprises.
- Seasonal and special-event support with manual override for modes like Monday Morning Survival, Patch Day Panic, and Homelab Weekend.
- Richer optional audio behavior with category-aware mute handling and quick mute control from the tray.
- Stronger persistence for mute state, favorites, unlocks, enabled packs, special modes, and continuity between launches.
- New "what do" sayings folded into the structured quote-pack system.
Fixes And Polish
- Fixed unlock logic so normal content stays available while true discovery content unlocks correctly.
- Fixed speech sound playback to respect the speech sound category instead of bypassing mute/category rules.
- Fixed scripted movement focus so edge/corner inspection beats land where the scenario asked them to.
- Hid locked scenarios from normal tray selection until they are actually discovered.
- Fixed packaged builds to load bundled resources from the frozen app directory without duplicate skin/pack overrides.
- Hardened toy startup so missing UI support fails safely during headless validation.
- Improved installer and run/build scripts so they work cleanly with
py-based Python installs and local-user Inno Setup installs.
NPCJason v1.4.0
Highlights
- Introduces Skin Framework v2 with richer metadata, quote affinity, sound hooks, accessory offsets, and per-skin animation support.
- Adds four new built-in skins: Office Jason, Homelab Jason, Network Jason, and Responsible Jason.
- Adds a reusable toy system with tricycle rides, rubber duck visits, tiny homelab server cart roll-bys, and stress-ball interactions.
- Adds structured quote-pack loading with enable/disable controls, weighting, repeat suppression, and contextual affinity.
- Includes the new Jason quote pack exactly as provided.
- Improves tray, quick-menu, and settings controls for skins, toys, quotes, sound, and special behavior toggles.
- Adds lightweight rare events and tighter contextual behavior between skins, toys, and quote selection.
- Includes stability and release-polish fixes for quote-pack persistence, installer discovery, and runtime validation.
NPCJason v1.3.0
Highlights
- Refactored the desktop runtime around focused controllers for state, scheduling, persistence, tray behavior, window management, and coordination.
- Hardened suppression, pause, screenshot, fullscreen, and recovery behavior so the pet keeps running through common Windows interruptions.
- Added stronger settings/shared-state sanitization, corrupt-file backup, atomic writes and exports, and safer content loading for dialogue, skins, and sounds.
- Expanded the regression suite across scheduler recovery, runtime state, persistence repair, speech history, tray-state modeling, update coordination, and platform geometry.
- Aligned docs, packaging, and release automation with the current architecture and build flow.
Validation
python -m unittest discover -s tests -vvia the available interpreter in this environment: 55 passing testspython -m compileall npcjason_app tests npcjason.py
Notes
The GitHub release workflow will build and attach the Windows EXE, installer, and checksums after this release is published.
v1.2.0
Highlights
- named pets, favorites/history, and auto antics scheduling
- quiet hours, fullscreen do-not-disturb, and granular reaction toggles
- settings import/export/reset plus diagnostics logging and recovery shortcuts
- skin metadata/validation feedback and placeholder-aware dialogue packs
- CI release packaging updated for v1.2.0 and version-driven installer asset names
Validation
- python -m compileall npcjason.py npcjason_app tests
- python -m unittest discover -s tests
- source smoke launch
- packaged EXE smoke launch
Notes
- Local installer compilation was blocked on this machine because Inno Setup was not available without admin install rights.
- The release workflow builds and attaches the installer artifact on GitHub.
NPCJason v1.1.0
Highlights
- External skin packs with hot reload
- Settings window for sound, startup, updates, reactions, and skin switching
- Real generated WAV sound assets with volume control
- Better multi-pet management and pet-to-pet chatter
- Event-driven Windows reactions for USB, power, and focused windows
- Hot-reload for sayings and dialogue packs
- Modularized codebase with automated tests
- Standalone EXE packaging plus release automation for EXE, installer, and checksums
Validation
- python -m unittest discover -s tests
- python -m compileall npcjason.py npcjason_app tests
- source startup smoke test
- packaged EXE startup smoke test
Notes
- The attached standalone NPCJason.exe was built locally and smoke-tested.
- The GitHub Actions release workflow will also build and attach the installer and fresh checksums for this release.
NPCJason v1.0.0
NPCJason v1.0.0 — Initial Release
A pixel art desktop pet companion for Windows. He lives in your system tray, dances when you click him, and dispenses NPC wisdom throughout the day.
Features
- Pixel art character rendered on a transparent, always-on-top desktop window
- System tray icon with Show/Hide, Dance, Say Something, Quit
- Left-click to dance (5-frame animation)
- Floating speech bubbles with random sayings (NPC humor, tech jokes, motivational lines)
- Auto-pops a saying every 3–8 minutes
- Fully draggable — move him anywhere on your desktop
- Right-click context menu on the character
Install from source
pip install -r requirements.txt
python npcjason.pyBuild standalone EXE
build.batRequires Python 3.8+ and pip. Produces dist\NPCJason.exe via PyInstaller — no Python needed to run the output.
Build the installer
Install Inno Setup 6, then:
build_installer.batProduces NPCJason_Setup_1.0.0.exe.
Note: Pre-built binaries (
NPCJason.exe/NPCJason_Setup_1.0.0.exe) are not attached to this release — build from source using the instructions above. Future releases will include compiled artifacts.