diff --git a/.github/workflows/deploy-pages-public.yml b/.github/workflows/deploy-pages-public.yml index 6adada1e..b8c78c10 100644 --- a/.github/workflows/deploy-pages-public.yml +++ b/.github/workflows/deploy-pages-public.yml @@ -28,10 +28,16 @@ jobs: - name: Setup Pages uses: actions/configure-pages@v6 + - name: Assemble public site + run: | + mkdir -p _site/assets/showcase + cp -R github-pages/. _site/ + cp assets/readme/*.webp _site/assets/showcase/ + - name: Upload project explainer uses: actions/upload-pages-artifact@v5 with: - path: ./github-pages + path: ./_site - name: Deploy to GitHub Pages id: deployment diff --git a/.github/workflows/release-verify.yml b/.github/workflows/release-verify.yml index 58336a9c..112172cb 100644 --- a/.github/workflows/release-verify.yml +++ b/.github/workflows/release-verify.yml @@ -33,6 +33,9 @@ jobs: - name: Install dependencies run: npm ci + - name: Install Firebase release tooling + run: npm install --global firebase-tools@15.22.0 + - name: Install datum normalizer run: python -m pip install -r scripts/ground-datum-requirements.txt diff --git a/.gitignore b/.gitignore index d2085a5f..0b12723d 100644 --- a/.gitignore +++ b/.gitignore @@ -17,6 +17,19 @@ public/ *.log progress.md +# Internal development records are kept outside public release branches. +docs/*AUDIT*.md +docs/*HANDOFF*.md +docs/*RND*.md +docs/*PLAN*.md +docs/*IMPLEMENTATION_REPORT*.md +docs/DATA_AND_PROVENANCE.md +docs/PERSISTENCE_AND_TRUST.md +docs/PRODUCT_CAPABILITIES.md +docs/REGRESSION_LEDGER.md +docs/TEST_AND_RELEASE_MAP.md +docs/VERIFICATION_STRATEGY*.md + # Local env/param files .env .env.* diff --git a/ACKNOWLEDGEMENTS.md b/ACKNOWLEDGEMENTS.md index 135c4d29..25bc164d 100644 --- a/ACKNOWLEDGEMENTS.md +++ b/ACKNOWLEDGEMENTS.md @@ -1,487 +1,53 @@ -# Acknowledgements 🙏 - -Last reviewed: 2026-08-15 for World Explorer 3D 4.2.0. - -World Explorer acknowledges and thanks the following third-party projects, services, and individuals that made this software possible. - ---- - -## Third-Party Software Components - -### Three.js - 3D Graphics Library - -**Version**: r128 -**License**: MIT License -**Copyright**: © 2010-2023 three.js authors -**Website**: https://threejs.org/ -**Repository**: https://github.com/mrdoob/three.js/ - -**What We Use It For**: -- 3D scene rendering -- WebGL abstraction layer -- Geometry and mesh creation -- Material system -- Camera controls -- Lighting system - -**License Text**: -``` -MIT License - -Copyright © 2010-2023 three.js authors - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -``` - -**Special Thanks To**: -- Mr.doob (Ricardo Cabello) - Creator and lead maintainer -- Three.js community and contributors -- WebGL working group - ---- - -## Cloud Services & APIs - -### OpenStreetMap - -**Copyright**: © OpenStreetMap contributors -**License**: Open Database License (ODbL) 1.0 -**Website**: https://www.openstreetmap.org/ -**Copyright**: https://www.openstreetmap.org/copyright - -**What We Use It For**: -- Base map tiles and imagery -- Geographic features and boundaries -- Road and street data -- Points of interest (POI) data -- Building footprints -- Natural features - -**Attribution**: © OpenStreetMap contributors - -**License Summary**: -OpenStreetMap® is open data, licensed under the Open Data Commons Open Database -License (ODbL) by the OpenStreetMap Foundation (OSMF). - -You are free to copy, distribute, transmit and adapt the data, as long as you -credit OpenStreetMap and its contributors. If you alter or build upon the data, -you may distribute the result only under the same license. - -**Important Notes**: -- Attribution required in all implementations: "© OpenStreetMap contributors" -- Data is community-contributed and continuously updated -- Free to use for commercial applications with attribution -- Derivative data must be shared under ODbL if distributed -- Using data in proprietary software (as done here) is permitted - -**Community**: -OpenStreetMap is built by a community of mappers that contribute and maintain -data about roads, trails, cafés, railway stations, and much more, all over the world. - -### Rentcast API - -**Copyright**: © Rentcast -**Website**: https://www.rentcast.io -**Documentation**: https://developers.rentcast.io/docs - -**What We Use It For**: -- Property rental estimates -- Property value estimates -- Rental market data -- Comparative market analysis - -**Important Notes**: -- Requires API key -- Subject to Rentcast Terms of Service -- Free tier available with limitations -- Data accuracy not guaranteed by World Explorer - -### Attom Data Solutions API - -**Copyright**: © Attom Data Solutions -**Website**: https://www.attomdata.com -**Documentation**: https://api.gateway.attomdata.com/propertyapi/v1.0.0/ - -**What We Use It For**: -- Detailed property information -- Property sales history -- Tax assessment data -- School information -- Neighborhood data - -**Important Notes**: -- Requires API key -- Subject to Attom Terms of Service -- Trial period available -- Premium service with various tiers - -### Estated API - -**Copyright**: © Estated -**Website**: https://estated.com -**Documentation**: https://estated.com/developers/docs - -**What We Use It For**: -- Property valuations -- Owner information -- Property characteristics -- Market values - -**Important Notes**: -- Requires API key -- Subject to Estated Terms of Service -- Free tier available -- Data updated regularly - ---- - -## Fonts & Typography - -All fonts used under the SIL Open Font License (OFL), Version 1.1 - -### Inter Font Family - -**Copyright**: © 2020 The Inter Project Authors -**License**: SIL Open Font License 1.1 -**Designer**: Rasmus Andersson -**Website**: https://rsms.me/inter/ -**Repository**: https://github.com/rsms/inter - -**Weights Used**: 400, 500, 600, 700 - -**What We Use It For**: -- Primary UI text -- Body copy -- Labels and descriptions - -### Poppins Font Family - -**Copyright**: © 2020 Indian Type Foundry -**License**: SIL Open Font License 1.1 -**Designers**: Indian Type Foundry, Jonny Pinhorn -**Website**: https://fonts.google.com/specimen/Poppins - -**Weights Used**: 400, 500, 600, 700 - -**What We Use It For**: -- Headings and titles -- Menu items -- Button text - -### Orbitron Font Family - -**Copyright**: © 2018 The Orbitron Project Authors -**License**: SIL Open Font License 1.1 -**Designer**: Matt McInerney -**Website**: https://fonts.google.com/specimen/Orbitron - -**Weights Used**: 500, 700, 900 - -**What We Use It For**: -- Futuristic UI elements -- HUD displays -- Technical readouts -- Map interface - -### Righteous Font - -**Copyright**: © 2011 The Righteous Project Authors -**License**: SIL Open Font License 1.1 -**Designer**: Astigmatic -**Website**: https://fonts.google.com/specimen/Righteous - -**Weights Used**: 400 - -**What We Use It For**: -- Logo and branding -- Special titles -- Emphasis text - -**Font Service**: Google Fonts -**Website**: https://fonts.google.com/ - ---- - -## Data Sources - -### Geographic & Cartographic Data - -**OpenStreetMap** -- Copyright: © OpenStreetMap contributors -- License: Open Database License (ODbL) 1.0 -- Website: https://www.openstreetmap.org/ -- Used for: Map tiles, roads, POIs, building data, geographic features - -**Natural Earth Data** -- Public domain -- Website: https://www.naturalearthdata.com/ -- Used for: Country boundaries, coastlines, natural features - -### Astronomical Data - -**NASA** -- Public domain materials -- Apollo 11 mission information -- Historical photographs and data -- Website: https://www.nasa.gov/ - -**International Astronomical Union (IAU)** -- Constellation information -- Star naming conventions -- Public domain astronomical data -- Website: https://www.iau.org/ - -**Hipparcos Star Catalog** (conceptual use) -- ESA public data -- Star positions and magnitudes -- Website: https://www.cosmos.esa.int/web/hipparcos - ---- - -## First-Party Research Algorithms - -World Explorer also includes original deterministic algorithm work by Steven Reid. -These are first-party research components used in the engine (not external third-party dependencies). - -### Recursive Division Tree (RDT) - -- Reid, S. (2025). *Recursive Division Tree: A Log-Log Algorithm for Integer Depth*. Zenodo. -- DOI: https://doi.org/10.5281/zenodo.18012166 -- Used for: deterministic complexity indexing and adaptive runtime behavior - -### RGE-256 / RGE256ctr PRNG - -- Reid, S. (2025). *RGE-256: A New ARX-Based Pseudorandom Number Generator With Structured Entropy and Empirical Validation*. Zenodo. -- DOI: https://doi.org/10.5281/zenodo.17982804 -- Core repository: https://github.com/RRG314/rge256 -- Demo application: https://github.com/RRG314/RGE-256-app -- Used for: deterministic seeded pseudo-random generation in procedural systems - ---- - -## Development Tools & Standards - -### Web Standards - -**World Wide Web Consortium (W3C)** -- HTML5 specification -- CSS3 specification -- Web APIs -- Website: https://www.w3.org/ - -**Khronos Group** -- WebGL specification -- OpenGL standards -- Website: https://www.khronos.org/ - -### JavaScript Standards - -**ECMAScript (ECMA International)** -- JavaScript language specification -- ES6+ features -- Website: https://www.ecma-international.org/ - -### Documentation Format - -**Markdown** -- CommonMark specification -- GitHub Flavored Markdown -- Website: https://commonmark.org/ - ---- - -## Inspiration & References - -### Software & Games - -**Google Earth** -- By Google LLC -- Inspiration for terrain rendering and exploration -- Pioneer in satellite imagery visualization - -**Microsoft Flight Simulator** -- By Microsoft Corporation -- Inspiration for realistic world recreation -- Reference for physics and camera systems - -**Grand Theft Auto Series** -- By Rockstar Games -- Inspiration for open-world exploration -- Reference for vehicle physics - -**Minecraft** -- By Mojang Studios (Microsoft) -- Inspiration for block-based world building -- Reference for procedural generation - -**DeFlock** -- Independent public-interest project for documenting surveillance infrastructure -- Inspiration for the DeFlock Hunt game concept -- Website: https://deflock.org/ -- World Explorer 3D is unaffiliated with DeFlock and uses OpenStreetMap data, - not DeFlock code or a DeFlock-owned data feed - -### Academic & Technical References - -**Real-Time Rendering** -- By Tomas Akenine-Möller, Eric Haines, Naty Hoffman -- Reference for graphics techniques - -**Game Engine Architecture** -- By Jason Gregory -- Reference for system design - -**3D Math Primer for Graphics and Game Development** -- By Fletcher Dunn, Ian Parberry -- Reference for mathematical implementations - ---- - -## Community & Support - -### Stack Overflow -- Community Q&A for technical problems -- Three.js and WebGL assistance -- Website: https://stackoverflow.com/ - -### Three.js Community -- Discourse forum -- GitHub discussions -- Community examples and tutorials - -### WebGL Community -- IRC channels -- Reddit communities -- Online tutorials and resources - ---- - -## Special Thanks - -### Beta Testers -- Early users who provided valuable feedback -- Bug reporters who helped improve stability -- Feature requesters who shaped development - -### Documentation Reviewers -- Technical accuracy verification -- Clarity and completeness feedback -- Grammatical corrections - -### Educators & Mentors -- Computer graphics professors -- Game development educators -- Open-source community mentors - ---- - -## Legal Notices - -### Attribution Requirements - -When using World Explorer, the following attributions are **REQUIRED**: - -**In-Application Credits**: -``` -World Explorer © 2026. All Rights Reserved. -Powered by Three.js (MIT License) -Map data © OpenStreetMap contributors -``` - -**For Public Demonstrations**: -``` -World Explorer - Proprietary Software -© 2026 All Rights Reserved - -Built with: -• Three.js (MIT License) - 3D graphics -• OpenStreetMap (ODbL) - Map data -• Rentcast, Attom, Estated - Real estate data -``` - -### Third-Party Terms - -Users of World Explorer must comply with all applicable third-party terms of service, including but not limited to: -- OpenStreetMap Open Database License (ODbL) -- Real Estate API Terms of Service -- Font licenses (OFL) -- Three.js MIT License terms - -### Data Accuracy Disclaimer - -Real estate data is provided by third-party APIs. World Explorer: -- Does not guarantee accuracy of property information -- Is not responsible for outdated or incorrect data -- Recommends independent verification for any decisions -- Provides data "as is" from API providers - -### Map Data - -Map data is provided by OpenStreetMap contributors and is: -- Licensed under the Open Database License (ODbL) -- Community-contributed and continuously updated -- Requires attribution: "© OpenStreetMap contributors" -- Free to use with proper attribution - ---- - -## Contribution Acknowledgments - -While World Explorer is proprietary software, we acknowledge concepts and techniques learned from: - -- Open-source Three.js examples and documentation -- WebGL tutorials and educational resources -- Stack Overflow community answers -- Academic papers on computer graphics -- Game development communities - -No code was directly copied from these sources, but they provided valuable learning and reference materials. - ---- - -## Updates & Maintenance - -This acknowledgements file is maintained to ensure proper credit is given to all third-party components and contributors. - -**Last Updated**: February 2, 2026 -**Version**: 1.0.0 - -If you believe your work should be acknowledged and is not listed, please contact: -hello@worldexplorer.app - ---- - -## Closing Statement - -World Explorer would not be possible without the incredible work of: -- Three.js team and contributors -- OpenStreetMap community and contributors -- Font designers and foundries -- Data providers -- The broader web development community - -Thank you all for your contributions to the technologies and standards that make modern web applications possible. - ---- - -**World Explorer** -Proprietary Software - All Rights Reserved -© 2026 - -For licensing inquiries: hello@worldexplorer.app +# Acknowledgements + +Last reviewed: 2026-08-30 for World Explorer 3D 5.1.0. + +World Explorer 3D is made possible by open web technology, public geographic +and scientific data, licensed creative assets, and the communities that +maintain them. + +## Core technology + +- [Three.js](https://threejs.org/) and its contributors provide the WebGL 3D + rendering foundation under the MIT License. +- Browser standards from the W3C, WHATWG, Khronos Group, and ECMA International + provide the web platform used by the game. +- Inter, Poppins, Orbitron, and Righteous are used under the SIL Open Font + License. + +## Maps, Earth, and live context + +- [OpenStreetMap contributors](https://www.openstreetmap.org/copyright) provide + the primary community-mapped geographic context under ODbL 1.0. +- Overture Maps Foundation, ESA WorldCover, USGS, Copernicus, GEBCO, NOAA, + Open-Meteo, CelesTrak, OpenSky Network, ADSB.lol, Panoramax, and KartaView + contribute mapped, modeled, reference, or observed context where available. +- The independent [DeFlock project](https://deflock.org/) inspired DeFlock + Hunt. World Explorer 3D is unaffiliated with DeFlock and uses publicly mapped + OpenStreetMap surveillance features, not a DeFlock-owned feed. + +## Field and ecology references + +- GBIF Secretariat provides the pinned GBIF Backbone Taxonomy used for stable + identity across the regional ecology registry under CC BY 4.0. +- Government and public-agency references for the Chesapeake, United States, + western Europe, Mediterranean, Kanto, and Arabian Gulf packs support factual + regional review. Their prose and photography are not redistributed as part + of the packs. Exact sources and use boundaries are listed in + [ATTRIBUTION.md](ATTRIBUTION.md). + +## Space, models, and materials + +- NASA, JPL-Caltech, USGS Astrogeology, ESA, CSA, STScI, LROC, and the Gaia + project provide planetary, astronomical, and space-science source material. +- Adobe Mixamo, Google Model Viewer contributors, Wikimedia Commons creators, + ambientCG, and Poly Haven provide licensed models or materials used by the + game. + +Exact licenses, creators, source links, modifications, and use boundaries are +recorded in the [public attribution index](ATTRIBUTION.md), +[model attribution](app/assets/models/ATTRIBUTION.md), and +[texture attribution](app/assets/textures/ATTRIBUTION.md). + +Thank you to players and contributors who report bugs, test unfamiliar places +and devices, and help improve World Explorer 3D. diff --git a/ATTRIBUTION.md b/ATTRIBUTION.md index fa388548..d4c17575 100644 --- a/ATTRIBUTION.md +++ b/ATTRIBUTION.md @@ -1,6 +1,6 @@ # Attribution -Last reviewed: 2026-08-15 for version 4.2.0. +Last reviewed: 2026-08-30 for World Explorer 3D 5.1.0. This is the concise public attribution index. Asset-level details are in `app/assets/models/ATTRIBUTION.md` and `app/assets/textures/ATTRIBUTION.md`. @@ -35,6 +35,29 @@ This is the concise public attribution index. Asset-level details are in `app/as - NOAA Center for Operational Oceanographic Products and Services water-level observations and tide predictions. - Panoramax and KartaView community street imagery, CC BY-SA 4.0. and +## Regional Ecology References + +- GBIF Backbone Taxonomy, GBIF Secretariat, CC BY 4.0, DOI + [10.15468/39omei](https://doi.org/10.15468/39omei). +- [Maryland Department of Natural Resources wildlife and native-plant lists](https://dnr.maryland.gov/wildlife/Pages/plants_wildlife/mdwllists.aspx), + used for factual regional review without copied prose or media. +- [Chesapeake Bay Program Field Guide](https://www.chesapeakebay.net/discover/field-guide), + used for factual estuary review without bundled photography. +- United States candidate-pack references: [New York DEC](https://dec.ny.gov/nature), + [Illinois DNR](https://dnr2.illinois.gov/Biodiversity/SearchBD), + [Florida FWC](https://myfwc.com/wildlifehabitats/profiles/), + [California CDFW](https://wildlife.ca.gov/SWAP), + [Washington WDFW](https://wdfw.wa.gov/species-habitats), and the + [Clark County Desert Conservation Program](https://www.clarkcountynv.gov/government/departments/environment_and_sustainability/desert_conservation_program/), + used for factual regional review without copied prose, media, occurrence + points, or abundance claims. +- [European Environment Agency EUNIS](https://www.eea.europa.eu/en/topics/in-depth/biodiversity/an-introduction-to-habitats), + CC BY 4.0, and the [Monaco Direction de l’Environnement](https://www.gouv.mc/Action-Gouvernementale/L-Environnement), + used for European and Mediterranean candidate-pack review. +- The [Biodiversity Center of Japan](https://www.biodic.go.jp/english/kiso/do05/index_e.html) + and [Dubai Municipality Protected Areas](https://www.dm.gov.ae/dubai-protected-areas/about-dubai-protected-areas/), + used as factual government references for the Tokyo–Kanto and Dubai packs. + ## Astronomy And Planetary Assets - ESA Gaia DR3 star data. diff --git a/CHANGELOG.md b/CHANGELOG.md index f1ec0665..1582e22d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,242 @@ Notable user-facing changes are recorded here. Git history and GitHub releases contain the complete change record. +## [5.1.0] - 2026-08-30 + +### Added + +- Ten source-bounded regional Field Guide packs for built-in destinations in + addition to Baltimore, bringing the attainable guide to 180 entries across + eleven regional packs. +- A dedicated Journal with Fieldwork, Games, Making, Travel, Community, and + Companion paths. +- Journal backup and restore, current-region and World Guide scopes, grouped + unidentified entries, and regional life-list progress. +- Backpack categories, item history, inspection, equip and use actions, hotbar + assignment, and Field Kit synchronization. +- Distinct road-vehicle handling, responder vehicle entry and equipment, + recoverable world loot, mapped convenience-store exchange, defensive NPC + behavior, and configurable quick-slot equipment. +- Individual companion trust and level progression for eligible domestic + animals, birds, and livestock, including vehicle travel state. +- Manual and assisted solar-system journeys, accepted planetary surfaces, + celestial collision, solid-world landing, atmospheric destinations, and + Earth return. +- Airport and helipad aircraft, in-flight exit and skydiving, mapped marinas + and ports, playable boat and ship classes, and mapped historic-vessel labels. +- Shared airport layouts with gates, stands, taxi and runway activity, control + towers, ticket halls, destination search, and pilot or passenger journeys. +- Familiar-name place search, including landmarks and airports, plus a + location-aware First Journey that can be postponed or turned off. + +### Changed + +- Games, creation, Blocks, place visits, room joins, companion care, fieldwork, + and fishing now contribute to the same Explorer profile and Journal. +- Every built-in Earth destination now selects a bounded regional field pack; + expansion entries remain reference fallbacks unless reviewed media or models + are available. +- The Explorer panel separates permanent Journal progress from recurring Field + Today, Expedition, and seasonal opportunities. +- Mobile Earth compilation keeps the near-player district and a bounded regional + context while shortening optional provider waits and repeated feature scans. +- Boats retain nearby shores and use tighter follow-camera framing in harbors + and channels; open-ocean travel keeps its wider view. +- Projectiles, spent charges, world loot, downed actors, wrecked local vehicles, + responders, aircraft, and vessels now use bounded disposal or recovery rules. + +### Fixed + +- Regional Guide totals now count entries the player can actually reach with + released activities. +- Fishing only credits a regional Guide entry when the caught species matches + that entry. +- Backpack tools and the Explorer Field Kit remain synchronized across game + modes. +- Player-facing Guide and Journal language no longer exposes implementation + labels or repeats generic unknown-entry names. +- Corrected manual space control, planetary underside visibility, roof and + interior collision, elevator floor choice, weapon reticles, open-water layer + ownership, mobile walking direction, follow camera, loading coverage, globe + selection, prompt overlap, and mode-specific speed units. +- Kept mapped ship identity separate from generated maritime activity, restored + USS Constellation as a sloop-of-war museum ship, and preserved rooftop walking + after landing or climbing onto an eligible building. + +## [5.0.0] - 2026-08-26 + +### Added + +- Field Today activities, daily and weekly Expeditions, seasonal surveys, life + lists, specialties, companions, and non-punitive return progression connected + to the Backpack, Journal, and Field Guide. +- A Baltimore–Chesapeake ecology pack covering 60 plants, mammals, birds, + insects and arachnids, freshwater fish, and marine fish, with distinct + observation, photography, track/sign, macro, habitat, geology, and community + survey activities. +- Shore, boat, and underwater fishing connected to the same Journal and Field + Guide records, including catch, loss, retry, and recovery outcomes. +- Persistent local and multiplayer Blocks inside the World Editor, plus shared + room building, activities, and vehicles. +- Browser zoom, visible focus, keyboard navigation, live status announcements, + reduced motion, larger text, increased contrast, and larger touch targets. + +### Changed + +- Player-facing wildlife opportunities use game language such as field leads; + they never claim a generated opportunity proves a real animal is present. +- Live GPS and free-roam walking share field activity and progression authority. +- Mobile walking, driving, drone, plane, map, Backpack, settings, reload, reset, + and recovery remain on the stabilized control implementation. +- The former standalone Block Builder entry is replaced by the integrated World + Editor Blocks workspace. Supported local and room builds are preserved. +- Existing Backpack data upgrades automatically with a local recovery backup. + +### Fixed + +- Returning to the title screen or changing locations more reliably clears the + previous world and its browser memory. +- Released multiplayer vehicles remain reclaimable after reconnecting or when + local terrain and collision detail differ. +- Walking routes avoid vehicle-only and engineered transport surfaces while + retaining safe attributed sidewalk fallbacks. +- Kept the loading image above the game until the selected world is ready. +- Kept globe selection markers attached to the chosen location while zooming. +- Corrected mobile walking left/right direction and kept the camera behind the + character during movement. +- Removed contextual field and interaction prompts while a bottom menu is open. +- Unified walking, driving, boat, plane, drone, and underwater speed units. + +## [4.3.1] - 2026-08-22 + +### Added + +- Street-oriented building entrances and storefront presentation integrated + into the owning facade material, with contextual keyboard and touch entry. +- Multi-floor generated interiors with stable floor identity, walkable stairs + and a proximity elevator for eligible buildings. +- A six-slot character equipment loop, contextual world actions, richer + pedestrian roles, vehicle families and bounded civic-response gameplay. +- More expressive water, wake, sky and evidence-labeled bathymetry presentation. + +### Changed + +- Preserved mapped building height through selection, batching and every + published LOD so distant presentation cannot silently shorten authoritative + skyline metadata. +- Unified final terrain, at-grade roads, junction footprints, building + clearance and vehicle wheel contact around the same published surface. +- Reconciled bridge, ramp, overpass, elevated-road and tunnel endpoint profiles + inside the shared transport compiler instead of adding city-specific geometry. +- Kept Earth as one bounded selected-location world. No actor-centered or + continuous-world streaming system was added. +- Released location-owned terrain, provider state and scene resources during + teardown, and kept one shared Firebase/module authority in packaged output. + +### Fixed + +- Restored Baltimore and Manhattan tall-building visibility without reducing + distant mapped detail or changing authoritative building heights by quality. +- Closed false cross-layer transport joins, duplicate structure ownership, + jagged at-grade junction wedges and conflicting road/terrain cross-sections. +- Aligned non-player vehicles to four-wheel road contact on grades and kept + pedestrians off vehicle-only transport surfaces. +- Preserved the nearest valid mapped arrival instead of relocating the player + to a different road solely to satisfy a test. +- Removed obsolete hosted assets and internal audit, handoff and R&D records + from the public release tip. + +## [4.3.0] - 2026-08-17 + +Superseded by 4.3.1, the corrected 4.3 release. + +### Production-candidate repair — 2026-08-19 + +- Reconciled exact bridge, ramp, overpass, elevated-road and tunnel joins after + all terrain and structural profile finalization, retaining one transport + surface authority and measured/provenance-labeled elevation inputs. +- Rebuilt distant pedestrians and traffic as recognizable multi-part actors, + retained stable LOD identity, increased visibility hysteresis and preserved + real-scale vehicle family dimensions and curb-aware parked placement. +- Added segment-continuous pedestrian/vehicle collision, coherent Backpack + condition and ammunition presentation, fallen-actor ammunition recovery, and + mapped hospital recovery distinct from mapped police custody. +- Restored Live GPS behind-actor camera alignment for walking and sustained-speed + vehicle transition, with one current browser journey covering both states. +- Kept entrances inside the owning facade shader, added context-gated pitched + roofs, restored the previously approved aerial Baltimore harbor/skyline hero + byte-for-byte and limited the supporting gallery to current product flows. +- Replaced the compromised historical test suite with current source, + complete-world, Live GPS, environment, security, multiplayer and + immutable-artifact release boundaries. +- Added a full assembled-game location matrix for Baltimore/JFX, Golden Gate, + London, Monaco, Manhattan and rural Iowa. It validates exact structure joins + and engineered grades while inspecting the same terrain, buildings, water, + traffic, pedestrians and renderer delivered to the player. +- Removed the competing tunnel-system mutation that rewrote compiled road + heights back to raw terrain, and changed internal tunnel-way splits to one + graph-corridor elevation solve anchored only by real surface portals. +- Hardened account deletion coverage for discovery trades, room activities, + world modifications and DeFlock state; token checks now reject revoked + sessions. Added baseline anti-sniffing, referrer, frame and opener headers. + +### Added + +- A coherent World Discovery loop with contextual wildlife, geology, field + tools, Journal, Field Guide, Collection, Explorer progression and regional + goals. +- Multiple dog, cat and bird companions with catalog-owned scale, grounded or + airborne following, care state and contextual AR presentation. +- A capability-aware AR platform for companions, recorded specimens and + habitat-gated virtual wildlife challenges, with WebXR, camera-overlay and + interactive-3D fallback modes. +- Consolidated account/admin operations, guided onboarding, current analytics + events and trusted Discovery inventory/trading backend contracts. + +### Changed + +- Reorganized Explorer UI into collapsible, task-focused surfaces that reuse the + existing application shell instead of occupying the play view continuously. +- Expanded living-world pedestrian and vehicle variety while retaining bounded + logical draw-call and triangle budgets. +- Updated the landing page with current gameplay media and a clearer explanation + of the connected real-location exploration experience. + +### Fixed + +- Restored visible regional bridge, ramp and tunnel continuity for Baltimore, + San Francisco and connected multi-segment tunnel systems. +- Prevented Discovery targets, equipment, wildlife and companions from sampling + the wrong surface coordinates or appearing inside buildings. +- Preserved fixed-world ownership through travel, editor, multiplayer, + planetary, Ocean and title transitions, with explicit world-memory release. +- Removed obsolete landing media and an orphaned duplicate Discovery progression + implementation so strict production reachability is green. + +## [4.2.1] - 2026-08-16 + +### Added + +- Performance-bounded Field Navigator, Classic Utility car, Harbor Scout boat, + Trailblazer plane, and Wayfinder spacecraft procedural presentation. +- A worldwide browser-gameplay gallery and a developer-facing system inventory. +- A release regression gate for traversal-model triangle, draw, material, + transparency, footprint, propeller, and thrust-effect budgets. + +### Changed + +- Replaced the simplest player and traversal silhouettes without changing + physics, collision, controls, cameras, water ownership, or world loading. +- Expanded the README, landing page, and GitHub Pages overview with direct + browser captures of worldwide gameplay and phone-sized DeFlock states. + +### Fixed + +- Kept utility-car paint readable across quality tiers instead of inheriting a + near-black sports-car material override. +- Shared spacecraft exhaust materials so the upgraded presentation does not + multiply transparent material state. + ## [4.2.0] - 2026-08-15 ### Added diff --git a/CITATION.cff b/CITATION.cff index 8a308d66..42d8a254 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -8,8 +8,8 @@ authors: repository-code: "https://github.com/RRG314/WorldExplorer3D" url: "https://worldexplorer3d.io" license: "Proprietary" -version: "4.2.0" -date-released: "2026-08-15" +version: "5.0.0" +date-released: "2026-08-26" abstract: >- Browser-based 3D geospatial exploration application using OpenStreetMap-derived data for interactive Earth exploration with Ocean, Moon, Mars, Solar System, diff --git a/CONTROLS_REFERENCE.md b/CONTROLS_REFERENCE.md index 239fc542..5c7c3044 100644 --- a/CONTROLS_REFERENCE.md +++ b/CONTROLS_REFERENCE.md @@ -1,33 +1,48 @@ # Controls Reference -Last reviewed: 2026-03-13 +Last reviewed: 2026-08-27 for World Explorer 3D 5.1.0. Canonical control map for current runtime behavior. ## Global Controls -- `F`: toggle Walk/Drive mode -- `6`: toggle Drone mode +- `F`: cycle character / car / plane / drone +- `P`: enter or leave plane mode directly +- `G`: enter or leave boat travel when available - `C`: cycle camera mode - `M`: toggle large map - `N`: next city - `B`: toggle block build mode - `R`: record/stop track - `Shift+R`: road debug mode -- `Esc`: close map or toggle pause +- `Esc`: close the active Backpack/Journal/map surface, then toggle pause when no surface is open - `F4` / `` ` `` / `~`: debug overlay - `F8`: performance overlay +Developer overlays only respond when developer diagnostics are enabled. + +## Contextual World Interaction + +- `E` / Action: use the one visible nearby door, vehicle, person, or object +- `I`: open/close the character Backpack +- `J`: open/close the Journal / Field Guide +- `1`–`6`: quick-equip a carried item (`6` selects the parachute) +- `V`: use the equipped item +- With the parachute equipped, press `V` while descending at least 3.25 m above the ground to deploy it. It repacks automatically on landing. +- `T`: take an available nearby item +- `X`: currently unassigned; it no longer opens, advances, or cancels field activities + +The contextual prompt is the authority. A key does not activate a hidden or +distant target, and mobile uses the matching on-screen Action button. + ## Driving Mode -- `W` / `ArrowUp`: accelerate -- `S` / `ArrowDown`: brake/reverse -- `A` / `ArrowLeft`: steer left -- `D` / `ArrowRight`: steer right +- `ArrowUp` / `ArrowDown`: accelerate / reverse +- `ArrowLeft` / `ArrowRight`: steer left / right +- `W` / `A` / `S` / `D`: look around; chase view recenters automatically - `Space`: handbrake / drift trigger at speed - `Ctrl`: boost -- `Shift`: off-road modifier -- `V`: look back +- `E`: exit the current vehicle when stopped safely, or use the visible context action Handling note: @@ -35,11 +50,10 @@ Handling note: ## Walking Mode -- `W` / `S`: move forward/back -- `A` / `D`: strafe left/right -- `ArrowLeft` / `ArrowRight`: look left/right -- `ArrowUp` / `ArrowDown`: look up/down -- `E`: enter/exit a supported building interior when the prompt is visible +- `ArrowUp` / `ArrowDown`: move forward/back +- `ArrowLeft` / `ArrowRight`: turn left/right +- `W` / `A` / `S` / `D`: look around +- `E`: use the visible contextual door, vehicle, person, or object - `Space`: jump - `Shift`: run - `Right Click + Drag` or `Middle Click + Drag`: mouse look @@ -47,16 +61,16 @@ Handling note: Walking/navigation note: - Walk routing currently follows the core road-and-ground traversal network on Earth scenes. -- Supported interiors only load when you deliberately interact; being near buildings does not auto-load indoor geometry. +- Supported interiors initialize their doorway prompt while walking but enter + only after deliberate keyboard/touch interaction at the published door. ## Drone Mode -- `W` / `S`: move forward/back -- `A` / `D`: strafe left/right +- `ArrowUp` / `ArrowDown`: fly forward/back relative to the drone +- `ArrowLeft` / `ArrowRight`: turn the drone +- `W` / `A` / `S` / `D`: look around independently - `Space`: ascend - `Shift` or `Ctrl`: descend -- `ArrowUp` / `ArrowDown`: pitch -- `ArrowLeft` / `ArrowRight`: yaw ## Rocket/Space Flight Mode @@ -109,7 +123,9 @@ Walking/navigation note: Virtual controls adapt by mode: -- driving profile +- driving profile with a contextual Action/Exit button - walking profile (`WASD` movement on left pad, arrows-style look on right pad) - drone profile (`WASD` movement on left pad, arrows-style look on right pad) - rocket profile +- a contextual Action button for doors, vehicles, people and objects +- a compact Gear button and touch-selectable equipment slots diff --git a/DATA_SOURCES.md b/DATA_SOURCES.md index 50aa0aba..028ba56b 100644 --- a/DATA_SOURCES.md +++ b/DATA_SOURCES.md @@ -1,8 +1,10 @@ # Data Sources -Last reviewed: 2026-08-15 for version 4.2.0. +Last reviewed: 2026-08-27 for World Explorer 3D 5.1.0. -World Explorer keeps source identity and truth type in its runtime contracts. Observations, forecasts/models, predictions, mapped features, and visual fallbacks are not interchangeable. +World Explorer keeps source identity and truth type with its data. Observations, +forecasts and models, predictions, mapped features, and visual fallbacks are not +interchangeable. ## Earth Geometry And Surfaces @@ -14,13 +16,33 @@ World Explorer keeps source identity and truth type in its runtime contracts. Ob | Nominatim | Forward and reverse place lookup | Community-mapped service | OSMF Nominatim policy | | Overture Maps Foundation | Bounded building-massing fallback when selected-location OSM building coverage is unavailable | Compiled mapped data | Overture source licenses and attribution | | ESA WorldCover 2021 | Global semantic surface classification and land-cover fallback | Remote-sensing classification | CC BY 4.0; contains modified Copernicus Sentinel data | -| USGS 3DEP accepted-ground artifact | Baltimore bare-earth terrain height and collision | Government elevation model normalized to EGM2008 | Public USGS data | -| Copernicus DEM GLO-30 classified-ground artifacts | Accepted terrain for the documented worldwide release fixtures | Public DEM-derived, correction-attested ground normalized to EGM2008 | Public free use with required attribution | +| USGS 3DEP accepted-ground data | Baltimore bare-earth terrain height and collision | Government elevation model normalized to EGM2008 | Public USGS data | +| Copernicus DEM GLO-30 classified-ground data | Accepted terrain for documented locations | Public DEM-derived, correction-attested ground normalized to EGM2008 | Public free use with required attribution | | Mapzen Terrarium elevation tiles | Legacy visual fallback only; never accepted-ground authority | Elevation model | Provider/source terms | | GEBCO 2020 via OpenTopodata | Bundled Great Barrier Reef bathymetry seed | Bathymetric model | CC BY 4.0 | Required map attribution: `© OpenStreetMap contributors`. +## Regional Ecology + +The regional ecology registry uses the GBIF Backbone Taxonomy for stable taxon +identity. Government and public-agency references support regional +plausibility review. The packs do not include occurrence points or abundance +estimates and do not claim that a real organism is present at a player +location. + +| Source | Runtime use | Data class | License / terms | +| --- | --- | --- | --- | +| GBIF Backbone Taxonomy (2023 pinned compatibility taxonomy) | Stable taxonomy identity for regional packs | Taxonomic reference | CC BY 4.0; GBIF Secretariat DOI 10.15468/39omei | +| Maryland Department of Natural Resources wildlife and native-plant lists | Factual regional plausibility review | Government reference | Reference only; no copied prose or media | +| Chesapeake Bay Program Field Guide | Factual estuary and fish plausibility review | Government-program reference | Reference only; photography excluded unless separately permitted | +| New York DEC, Illinois DNR, Florida FWC, California CDFW, Washington WDFW, and Clark County Desert Conservation Program | Factual state or county ecology review for candidate United States packs | Government reference | Reference only; copied prose, media, occurrence points, and abundance claims excluded | +| European Environment Agency EUNIS and Monaco Direction de l’Environnement | Factual habitat and regional review for candidate European and Mediterranean packs | Public-agency reference | EEA material used under CC BY 4.0; Monaco material reference only | +| Biodiversity Center of Japan and Dubai Municipality Protected Areas | Factual regional review for candidate Tokyo–Kanto and Dubai packs | Government reference | Reference only; copied prose, media, occurrence points, and abundance claims excluded | + +OpenStreetMap and ESA WorldCover can provide mapped habitat or land-cover +context. Neither is used to infer species presence or abundance. + ## Surveillance Mapping DeFlock Hunt queries OpenStreetMap nodes tagged `man_made=surveillance` through diff --git a/KNOWN_ISSUES.md b/KNOWN_ISSUES.md index b3de0a5d..09deba9d 100644 --- a/KNOWN_ISSUES.md +++ b/KNOWN_ISSUES.md @@ -1,48 +1,96 @@ # Known Issues and Limitations -Last reviewed: 2026-08-15 for version 4.2.0. +Last reviewed: 2026-08-30 for World Explorer 3D 5.1.0. -## Map Coverage +## Location and map coverage -- Building footprints, heights, roof shapes, indoor details, roads, vegetation, and water depend on available source data. Coverage varies globally. -- Missing building heights, materials, facade details, and roof equipment use bounded visual fallbacks; those fallbacks are not claims about the real structure. -- New OpenStreetMap edits appear only after upstream services and local caches refresh. +- Earth is a location-based experience. Each session loads one bounded selected + area; player movement does not turn it into a continuously streaming world. +- Roads, buildings, building heights, roofs, entrances, indoor details, + vegetation and water depend on available mapped data. Coverage and freshness + vary by location and provider. +- Mapped identities and height metadata are retained when available. Bounded + visual fallbacks fill missing attributes but are not surveyed measurements or + claims about an exact real-world structure. +- The same accepted location snapshot is deterministic. A later session can + differ when an upstream map provider publishes newer data or a primary source + is temporarily unavailable and the documented fallback is used. -## Loading and Performance +## Roads and structures -- Dense cities, rapid plane travel, detailed facades, and large structure networks can be demanding on GPU memory and network bandwidth. -- The initial world load intentionally waits for core roads and buildings so play does not begin in an empty scene. Additional distant detail may continue to refine afterward. -- Browser GPU support and memory limits differ significantly, especially on older phones and integrated graphics. -- Provider latency can make the same location load at different speeds even when the generated world is unchanged. -- Narrow or tightly mapped service roads can leave little vehicle clearance. - The runtime gate samples all road centers and lanes for building collisions, - then runs movement journeys only on verified straight, unobstructed segments. +- Bridges, ramps, elevated roads, overpasses and tunnels depend on mapped + structure, layer and connection tags. Incomplete source tagging or provider + timing can produce a shorter or less detailed structure than the real one. +- Road and structure geometry is intended for exploration gameplay, not + turn-by-turn navigation, engineering, surveying or safety-critical use. +- Very narrow service roads and unusually complex multi-level junctions can + leave limited clearance for larger vehicles. +- Airport runways, aprons, terminals, gates, and towers use available map data. + The shared airport experience fills missing playable details, but its shape + and scale may differ from the real airport when mapping is incomplete. -## External Services +## Performance and compatibility -- Geocoding, map geometry, elevation, imagery, weather, and other live context can be degraded by upstream rate limits or outages. -- The runtime includes timeout and fallback behavior, but a fallback may be less detailed than the primary source. -- OpenSky access can be restricted from some cloud-hosting networks. The release preview must pass the production-egress preflight; otherwise aircraft remain explicitly labeled reference routes rather than observed flights. -- Panoramax and KartaView street imagery is an inspection layer with uneven global coverage. It is not used as an unlicensed facade texture source. -- Live vessel positions are not currently presented as observed AIS data. Shipping corridors remain labeled reference data until an AIS source and redistribution license are selected. -- NOAA water-level observations and tide predictions are limited to supported stations, primarily in the United States. Open-Meteo marine values are modeled guidance and remain labeled separately. +- Dense cities, rapid aerial travel, detailed facades and large structure + networks can be demanding on browser and GPU memory. World teardown now + releases location-owned terrain, provider state and scene resources, but + total browser memory still varies by browser, driver and device. +- Quality settings control rendering cost and effects. They do not rewrite + mapped building height or replace the selected world with a lower-detail data + source. +- WebXR, camera-overlay AR, geolocation and some graphics features depend on + browser support, device hardware and explicit user permission. +- Performance varies by browser, graphics hardware, and device. Final staging + review covers desktop and a 390×844 mobile layout, but does not guarantee a + particular battery, thermal, or frame-rate result on every physical phone. -## Generated Content +## External services -- Real indoor data is uncommon. Buildings without usable indoor mapping receive a footprint-aware generated interior. -- Generated interiors are traversable and sized from the building footprint, but may be visually sparse when no authoritative indoor geometry exists. -- Procedural vegetation, inferred buildings, distant aerial context, and deep-space encounters fill data gaps and should not be interpreted as exact observations. -- Solar-system distances and planetary sizes use documented visual scaling so destinations remain navigable. The experience is educational and exploratory, not an orbital-navigation simulator. +- Geocoding, map geometry, elevation, imagery, weather and live-context layers + depend on third-party services. Rate limits, outages and regional coverage can + delay a layer or activate a labeled fallback. +- Live-context layers distinguish observations, predictions, models and + reference routes. Generated or modeled content is never presented as a + confirmed real-world observation. -## Backend Features +## Generated content -- Sign-in, multiplayer, cloud saves, social features, moderation, leaderboards, and optional support flows require the production backend. -- Local or forked copies do not receive production credentials or administrative access. +- Real indoor mapping is uncommon. Eligible buildings without usable indoor + data receive a footprint-aware generated interior that may be visually sparse. +- Inferred entrances, facade details, vegetation, distant context and + deep-space encounters fill data gaps and should not be interpreted as exact + observations. +- Solar-system distance and body-size presentation uses documented visual + scaling so destinations remain playable; it is not an orbital simulator. -## Product Scope +## Action and combat -- World Explorer 3D is not turn-by-turn navigation, a marine chart, an aviation trainer, or survey-grade GIS. -- Ocean and underwater behavior is gameplay-oriented rather than a scientific fluid or bathymetry simulation. -- Tunnels, bridges, ramps, and stacked roads depend on mapped structure and layer tags. Incomplete source tagging can reduce geometric detail or cause the safer fallback profile to be used. +- Ranged equipment has a screen reticle, camera-directed projectiles, visible + use actions, impact handling, and bounded projectile cleanup. Precision aim, + sight alignment, recoil, spread, throwing feel, hit feedback, sound, and + mobile aiming still need further tuning and presentation work. +- Combat is part of the sandbox rather than a competitive shooting simulator. + Collision and impact results can vary with browser frame timing and complex + world geometry. -Please report reproducible problems through [GitHub Issues](https://github.com/RRG314/WorldExplorer3D/issues). +## Field Guide and Journal + +- The eleven regional packs are bounded identification and activity slices for + built-in destinations, not a complete worldwide species catalog. Their field + leads use broad habitat and seasonal context; they do not report abundance or + confirm that an organism is present at the selected point. +- Expansion-pack entries currently use reference presentation unless separately + reviewed media or creature models are available. Missing media does not block + identification, Journal, life-list, or activity progress. +- The complete Journal, Guide, companion history, and local Backpack history are + stored in the current browser. Backup and restore are available, but full + cross-device Journal sync is not yet provided. + +## Online features + +- Accounts, multiplayer, cloud saves, social features, moderation, + leaderboards and optional support flows require the production backend. +- Local forks do not receive production credentials or administrative access. + +Please report reproducible problems through +[GitHub Issues](https://github.com/RRG314/WorldExplorer3D/issues). diff --git a/LICENSE b/LICENSE index a7655d13..2c0daa08 100644 --- a/LICENSE +++ b/LICENSE @@ -1,56 +1,102 @@ -WORLD EXPLORER 3D SOURCE-AVAILABLE LICENSE +WORLD EXPLORER 3D SOURCE-AVAILABLE LICENSE 1.0 + +SPDX-License-Identifier: LicenseRef-World-Explorer-3D-Source-Available-1.0 +Effective date: August 30, 2026 Copyright (c) 2026 Steven Reid / World Explorer 3D All Rights Reserved. -1. License Model +1. Ownership and Scope + +Steven Reid owns the copyright in the original World Explorer 3D materials +included in this repository (the "Project Materials"), including original +source code, game content, interface and visual designs, documentation, and +original art, audio, and other assets. -This repository is publicly viewable source code, but it is not open-source software. -No permission is granted to use, copy, modify, distribute, sublicense, sell, or create derivative works from this codebase except as explicitly stated below. +Project Materials do not include third-party software, data, services, fonts, +models, textures, media, or other material identified in ATTRIBUTION.md, +ACKNOWLEDGEMENTS.md, accompanying asset records, or dependency metadata. Those +materials remain subject to their respective owners' terms. Project Materials +also do not include player or contributor content except to the extent rights +are granted under Section 5. 2. Limited Permission -You may: +Subject to this license, you may: + +- view and read the Project Materials in the public repository; +- use GitHub's view and fork functionality; +- make a private copy solely for personal evaluation, testing, security review, + or preparation of a contribution to this repository; and +- submit contributions to this repository. + +These permissions do not make World Explorer 3D open-source software and do not +grant permission to operate, publish, or distribute a competing or derivative +game, service, application, or library. All rights not expressly granted are +reserved. -- view and read the source code in the public repository -- clone/fork for private evaluation, testing, and review -- submit pull requests to this repository +3. Restrictions -You may not, without prior written permission from the copyright holder: +Without prior written permission from the copyright holder, you may not: -- redistribute this software or modified versions -- publish derivative works -- use this software in commercial or production systems -- relicense this software -- package or mirror this repository as a reusable code library +- publish, redistribute, sublicense, sell, rent, or commercially exploit any + Project Materials or modified versions; +- deploy or operate Project Materials in a public, commercial, production, or + hosted system, including a public mirror or playable copy; +- create or distribute derivative works based on Project Materials, except for + a private modification made only for a permitted purpose in Section 2; +- package Project Materials as a reusable library, asset pack, dataset, model, + template, or other product; +- remove or alter copyright, license, attribution, provenance, or rights + notices; or +- use the World Explorer 3D name, logos, trade dress, or other brand features + in a way that suggests affiliation, endorsement, or ownership. -3. Contributions +Attribution alone does not grant permission to use Project Materials. -By submitting code, docs, or other material to this repository, you grant the project maintainer a perpetual, worldwide, royalty-free right to use, modify, and incorporate that contribution into World Explorer 3D. +4. Notices and Attribution -4. Third-Party Components +Every copy permitted under Section 2 must retain this license, all copyright +notices, and the attribution records supplied with the repository. Any use +separately authorized in writing must include the notices and attribution +specified in that authorization and must preserve applicable third-party +credits, including "© OpenStreetMap contributors" where required. -This project uses third-party libraries and datasets under their own terms, including: +5. Contributions -- Three.js (MIT License) -- OpenStreetMap data (ODbL) -- Other provider APIs and assets as documented in `ACKNOWLEDGEMENTS.md` +By submitting code, documentation, art, audio, data, or other material to this +repository, you represent that you have the right to submit it and grant Steven +Reid a perpetual, worldwide, non-exclusive, irrevocable, royalty-free license +to use, reproduce, modify, prepare derivative works from, distribute, display, +perform, sublicense, and incorporate that contribution into World Explorer 3D +and related Project Materials. -Third-party components remain under their original licenses. +6. Third-Party Materials -5. Attribution Requirements +Third-party components remain under their original licenses and terms. If this +license conflicts with the valid terms for an identified third-party component, +the third-party terms control only for that component. The public attribution +index is in ATTRIBUTION.md, acknowledgements are in ACKNOWLEDGEMENTS.md, and +asset-level records are retained beside bundled assets. -Any permitted demonstration or reference to this project should retain: +7. Termination -- "World Explorer 3D (c) 2026 Steven Reid / World Explorer 3D. All Rights Reserved." -- "Map data (c) OpenStreetMap contributors" +The permissions in Section 2 terminate automatically if you violate this +license. On termination, you must stop using and delete copies of Project +Materials made under those permissions, except copies GitHub retains through +its platform functionality or copies that applicable law requires you to keep. -6. Disclaimer +8. Disclaimer and Limitation of Liability -THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. +THE PROJECT MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE, AND NON-INFRINGEMENT. -IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT, OR OTHERWISE, ARISING FROM OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +TO THE MAXIMUM EXTENT PERMITTED BY LAW, THE COPYRIGHT HOLDER WILL NOT BE LIABLE +FOR ANY CLAIM, DAMAGES, OR OTHER LIABILITY ARISING FROM OR RELATED TO THE +PROJECT MATERIALS OR THEIR USE. -7. Contact +9. Contact -For licensing questions or commercial inquiries, contact the project maintainer. +For licensing questions, commercial permissions, or other rights inquiries, +contact mail@worldexplorer3d.io. diff --git a/README.md b/README.md index 707b2c82..67780b0f 100644 --- a/README.md +++ b/README.md @@ -6,69 +6,116 @@ [![Release](https://img.shields.io/github/v/release/RRG314/WorldExplorer3D?sort=semver)](https://github.com/RRG314/WorldExplorer3D/releases/latest) [![License: Source Available](https://img.shields.io/badge/license-source--available-lightgrey)](LICENSE) -World Explorer 3D is a browser-based geospatial exploration game built around real-world map context. Pick a preset city, use the interactive globe, or enter coordinates, then explore by walking, driving, flying, boating, or changing worlds entirely. - -**[Launch World Explorer 3D](https://worldexplorer3d.io/app/)** - -## Version 4.2.0 - -Version 4.2.0 adds DeFlock Hunt and bounded Live GPS Explore while stabilizing -the fixed-location Earth world introduced in 4.1.3. Location loads publish one -immutable world, movement does not reload world data, and returning from Space -restores the retained Earth scene. - -Highlights: - -- Map-informed Earth scenes with roads, buildings, terrain, land use, vegetation, water, bridges, tunnels, and selected landmarks. -- Preset cities, geolocation, coordinate entry, and an interactive globe for choosing locations worldwide. -- Live Earth views for observed satellites, earthquakes, aircraft, current weather, community street imagery, modeled marine conditions, and NOAA water-level/tide coverage. -- Walk, drive, drone, plane, boat, underwater, rover, astronaut, and rocket traversal. -- Selected-location Earth sessions with atomic loading and explicit cancellation. -- Structure-aware bridges, elevated roads, ramps, underpasses, and tunnels. -- Material-aware building facades and improved rooftop geometry with restrained fallbacks when mapped detail is unavailable. -- Terrain, actor, vehicle, and camera interpolation designed to prevent clipping and visible pose drift. -- In-session Earth, Moon, Mars, ocean, and space transitions without a page reload. -- A navigable solar system with planets, moons, asteroid and Kuiper belts, spacecraft, and inner/full system maps. -- Deep-space destinations including catalog-backed star systems, nebulae, galaxies, and black-hole encounters. -- Enterable buildings using mapped indoor geometry where available and footprint-aware generated interiors elsewhere. -- Multiplayer rooms, social/account features, world and game editors, a 200-piece block builder, fishing, and leaderboards. -- [DeFlock Hunt](docs/DEFLOCK_MODE.md), a virtual single-player and cooperative mode built from publicly mapped OpenStreetMap surveillance nodes. -- Live GPS Explore, an optional foreground-only mode that follows a player's physical location inside one bounded, fixed world without continuous-world streaming. -- Responsive touch controls for current iPhone and Android layouts. -- Provider health, freshness, cache, quality, datum, and fallback labels that distinguish observations, models, predictions, and reference-only data. - -## Multiplayer model - -Multiplayer uses bounded shared rooms rather than one continuous MMO server. A -room keeps one fixed world/location, live player presence, chat, shared blocks, -artifacts, and room activities together. Private rooms are unlisted and joined -with a six-character invite code; public rooms are discovered by city; featured -rooms are curated by administrators. Rooms support 2–32 players, with 8–14 -recommended for the current browser renderer and Firestore presence model. - -Run the real two-browser contract with `npm run test:multiplayer-integration`. -It uses local Auth and Firestore emulators and verifies private-code joining, -presence/movement, chat, and shared half-grid shape stacks without production -data. - -## Screenshots - -![Driving through Baltimore](assets/landing/gameplay/drive-baltimore.png) -![Exploring Monaco by drone](assets/landing/gameplay/drone-monaco.png) -![Space flight](assets/landing/gameplay/fly-in-space.png) - -## Data and Accuracy - -Earth scenes use OpenStreetMap-derived geometry and other attributed public datasets. Source coverage, freshness, height data, and provider availability vary by location. The runtime uses bounded fallbacks when data is missing, but it does not claim survey-grade accuracy and is not a replacement for navigation or GIS software. +World Explorer 3D is a browser-based world sandbox built around real places. +Choose a location, step into the world, and explore by land, water, air, or +space. + +

+ Play World Explorer 3D + · Controls + · What’s new + · Roadmap +

+ +![Walking beside USS Constellation in Baltimore's Inner Harbor](assets/readme/baltimore-harbor.webp) + +*Baltimore’s Inner Harbor, with the mapped USS Constellation identified as a +sloop-of-war museum ship.* + +## A world you can play in + +Select a city, landmark, airport, harbor, or coordinates and enter a bounded 3D +world shaped by available terrain, roads, buildings, water, land cover, and +places. Walk the streets, cross bridges and rooftops, enter mapped or eligible +generated interiors, drive, fly, sail, fish, survey habitats, build, or meet +other players in a room tied to that location. + +The same Explorer connects your Backpack, quick slots, Journal, Field Guide, +activities, Expeditions, specialties, companions, and seasonal surveys. The +World Editor holds both reviewed overlays and persistent Blocks, so creating a +place remains part of the world instead of a separate building game. + +| Water and shore | Flight | +| :--: | :--: | +| ![Shore fishing beside Baltimore's Inner Harbor](assets/readme/baltimore-shore-fishing-mobile.webp) | ![Personal aircraft at BWI](assets/readme/bwi-personal-plane.webp) | +| **Fish from shore, pilot boats, dive, and explore ports** | **Use a personal aircraft or board aircraft at mapped airports** | + +| Deep space | Explorer progression | +| :--: | :--: | +| ![Wayfinder approach to Sagittarius A star](assets/readme/space-wayfinder-sagittarius.webp) | ![Field Today in My Explorer](assets/readme/explorer-today.webp) | +| **Fly manually or use optional Wayfinder assistance** | **Choose an activity and carry the result into one Explorer record** | + +![A playable container cargo ship underway near Rotterdam](assets/readme/rotterdam-cargo-ship.webp) + +*A playable cargo ship underway near Rotterdam, with the shoreline kept in the +active world.* + +## What you can do + +- Explore on foot, by car, drone, plane, helicopter, boat, ship, rover, + astronaut, or spacecraft, or use optional Live GPS play while walking. +- Visit supported mapped airports to board aircraft, choose pilot or passenger + travel, search for destinations, or take a local sightseeing flight. +- Search for places by familiar names, including cities, landmarks, airports, + and other expected location searches. +- Use configurable Backpack quick slots for field tools, fishing gear, + equipment, and ranged actions. +- Photograph, inspect, survey, identify, fish, follow tracks and signs, and + record finds in the Journal and Field Guide. +- Care for companions, build trust and levels, and travel with eligible + domestic, bird, and livestock companions. +- Enter persistent multiplayer rooms with presence, chat, activities, shared + Blocks, and room vehicles. +- Build with Blocks inside the World Editor and return to supported local or + shared creations later. +- Leave Earth for the Moon, planets, the solar system, and selected deep-space + destinations, with manual flight always available. + +## Version 5.1 + +Version 5.1 brings the Explorer systems into one clearer experience and expands +the sandbox across Earth, oceans, airports, and space. It includes distinct +vehicle handling, visible damage, enterable responder vehicles, aviation and +skydiving, playable maritime fleets, regional field guides, companion growth, +configurable quick slots, improved place search, a redesigned First Journey, +rooftop traversal, and a more capable Wayfinder. + +Eleven regional Field Guide packs provide 180 attainable entries across the +built-in Earth destinations. Field leads are game opportunities: they do not +claim that a real animal is physically present at the player’s location. + +Read the full [5.1 release notes](RELEASE_NOTES_5.1.0.md) and the current +[known issues](KNOWN_ISSUES.md). + +## Multiplayer and building + +Multiplayer uses bounded rooms rather than one continuous MMO world. A room +shares one location, player presence, chat, activities, persistent vehicles, +and player-built Blocks. Private rooms use invite codes; public rooms can be +found by city. + +Blocks are part of the World Editor. Existing supported local and room Blocks +remain on that shared persistence path, with one owner for placement, +permissions, saving, and recovery. + +## World data and accuracy + +Earth scenes use OpenStreetMap-derived geometry and other attributed public or +licensed sources. Coverage, freshness, height information, and provider +availability vary by location. Mapped, observed, modeled, reference, and +game-created content stay visibly distinct. + +World Explorer 3D is a game. It is not a navigation, appraisal, surveying, +wildlife-presence, or safety service. - [Data sources](DATA_SOURCES.md) - [Attribution](ATTRIBUTION.md) -- [Known issues and limitations](KNOWN_ISSUES.md) +- [Known issues](KNOWN_ISSUES.md) - [Acknowledgements](ACKNOWLEDGEMENTS.md) -Required attribution: `© OpenStreetMap contributors` +Required map attribution: `© OpenStreetMap contributors` -## Run Locally +## Run locally Requirements: Node.js 22+, Java 21, and a browser with WebGL support. @@ -82,43 +129,31 @@ python3 -m http.server --directory dist 4173 Open `http://127.0.0.1:4173/app/`. -Core exploration can run locally without production credentials. Account, multiplayer, moderation, and other backend-dependent features require an authorized environment and are not configured by public repository secrets. - -## Verify a Change - -```bash -npm run build:hosting -- --firebase-env staging -npm run verify:hosting -npm run audit:reachability -npm run runtime:verify -npm run release:verify -``` - -`runtime:verify` is the fast pull-request gate. The full release gate additionally covers Firestore rules, mobile controls, editor and multiplayer surfaces, planetary round trips, provider fallbacks, ocean and biome behavior, and a representative global location matrix. - -## Repository Layout +Keyboard and touch controls support browser zoom, visible focus, higher +contrast, larger text, and reduced motion. -- `app/` - canonical browser runtime -- `dist/` - ignored, generated hosting artifact -- `functions/` - authorized backend functions -- `scripts/` - verification and release tooling -- `tests/` - security and runtime test fixtures -- `assets/` - landing and documentation media -- `github-pages/` - static project explainer for GitHub Pages +Core exploration can run without production credentials. Accounts, +multiplayer, moderation, and other online features require an authorized +environment. Secrets are not included in the repository. -Edit canonical source only. `npm run build:hosting` creates a fresh, content-hashed hosting artifact; generated `dist/` files are never edited or committed. -`npm run audit:reachability` rejects hosted JavaScript or CSS that is no longer reachable from a declared page/runtime entrypoint. - -## Project Documents +## Project guide +- [Release notes](RELEASE_NOTES_5.1.0.md) - [Changelog](CHANGELOG.md) - [Roadmap](ROADMAP.md) +- [System inventory](docs/SYSTEM_INVENTORY.md) +- [Architecture](docs/ARCHITECTURE_MAP.md) - [Controls](CONTROLS_REFERENCE.md) -- [DeFlock Hunt](docs/DEFLOCK_MODE.md) -- [Data sources and attribution](DATA_SOURCES.md) - [Contributing](CONTRIBUTING.md) - [Security policy](SECURITY.md) ## License -This repository is source-available under the custom terms in [LICENSE](LICENSE). It is not licensed as OSI open-source software. Third-party data and assets remain subject to their respective licenses. +Copyright © 2026 Steven Reid / World Explorer 3D. All Rights Reserved. + +This repository is publicly viewable under the custom source-available terms +in [LICENSE](LICENSE). It is not licensed as OSI open-source software, and +attribution alone does not grant permission to copy, redistribute, publish, +host, or create derivative works. Third-party data, software, and assets remain +subject to their respective terms in [ATTRIBUTION.md](ATTRIBUTION.md) and +[ACKNOWLEDGEMENTS.md](ACKNOWLEDGEMENTS.md). diff --git a/RELEASE_NOTES_4.2.1.md b/RELEASE_NOTES_4.2.1.md new file mode 100644 index 00000000..f39548b9 --- /dev/null +++ b/RELEASE_NOTES_4.2.1.md @@ -0,0 +1,90 @@ +# World Explorer 3D 4.2.1 + +World Explorer 3D 4.2.1 is a visual-polish and public-showcase update for the +4.2 release. It replaces the simplest player and traversal models with a +cohesive, performance-bounded expedition style while preserving the fixed-world +architecture, movement behavior, physics, collision, cameras, water ownership, +and planetary controls from 4.2.0. + +## Improved player and vehicle presentation + +- The player is now the Field Navigator, with a more intentional outdoor + exploration silhouette and the same four-limb walking animation contract. +- The road vehicle is now the Classic Utility car, with a readable matte-green + body, practical proportions, rotating wheels, and the existing two-headlight, + collision, suspension, and chase-camera behavior. +- Boat travel uses the Harbor Scout expedition boat with a shaped hull, + enclosed cabin, work deck, rails, navigation equipment, radar mast, and + outboard presentation. +- Flight uses the Trailblazer expedition plane with a high wing, bracing, + bush gear, cockpit glazing, navigation lights, and the existing animated + propeller hook. +- Space flight uses the Wayfinder expedition spacecraft with a central cabin, + swept surfaces, twin engine pods, running lights, and shared cool-blue thrust + effects. + +These are procedural runtime meshes. They add no external model download and +do not introduce another renderer, world stream, animation loop, physics body, +or gameplay controller. + +## Public visual overview + +The README, landing page, and GitHub Pages overview now include direct browser +captures of expanded New York, Baltimore, Monaco, San Francisco, the Golden +Gate Bridge, Los Angeles, London, Tokyo, Dubai, and phone-sized DeFlock gameplay. +The DeFlock copy continues to state that virtual camera disabling is fictional +gameplay and cannot affect real equipment. A developer-facing system inventory +documents the current runtime and reconstruction boundaries without changing +game behavior. + +## Performance budgets + +The visual upgrade remains deliberately small: + +- Field Navigator: 628 triangles. +- Classic Utility car: 1,060 triangles. +- Harbor Scout boat: 889 triangles, 33 meshes, 13 materials, no transparency. +- Trailblazer plane: 1,098 triangles, 29 meshes, 10 materials, no transparency. +- Wayfinder spacecraft: 1,288 triangles, 24 meshes, 10 materials; transparency + is limited to three shared thrust-effect materials. + +Boat and plane meshes are created only when their travel mode is used. The +spacecraft remains in the separate lazy Space scene. Inactive Earth travel +actors stay hidden, and none of these presentation changes starts provider +queries or reloads the selected world. + +## Verification + +Automated coverage enforces the mesh, triangle, material, transparency, actor +footprint, propeller, engine-glow, and exhaust budgets. Existing controller, +module-identity, maintainability, asset, CSS, hosting, and release contracts +remain part of the production gate. + +Installed Google Chrome completed the full DeFlock desktop/mobile journey and +aircraft motion capture with no fatal browser errors. A real-input Golden Gate +boat journey stayed attached to the authoritative mapped-water registry, moved +under throttle, and exited normally. The space-control suite completed 1,680 +multi-axis steering samples with a normalized flight quaternion and bounded +camera motion. Representative locations worldwide remain covered by the +existing fixed-world release matrix. + +## Data and attribution + +The visual meshes are project-authored procedural geometry and add no new data +or third-party asset license. Existing OpenStreetMap, terrain, imagery, weather, +space, and DeFlock-related attribution remains unchanged; see +[DATA_SOURCES.md](DATA_SOURCES.md), [ATTRIBUTION.md](ATTRIBUTION.md), and +[ACKNOWLEDGEMENTS.md](ACKNOWLEDGEMENTS.md). + +## Compatibility and limitations + +This update intentionally does not change vehicle handling, aircraft +performance, boat navigation rules, collision dimensions, or space-flight +physics. Map detail still depends on source coverage and provider availability. +See [KNOWN_ISSUES.md](KNOWN_ISSUES.md). + +## Rollback + +Rollback target: immutable release `v4.2.0` at commit +`993ab660255bff3abf5bc4f9b544972402adeec4`. Promote its retained artifact; +do not rebuild historical source. diff --git a/RELEASE_NOTES_4.3.0.md b/RELEASE_NOTES_4.3.0.md new file mode 100644 index 00000000..ab0a93ae --- /dev/null +++ b/RELEASE_NOTES_4.3.0.md @@ -0,0 +1,80 @@ +# World Explorer 3D 4.3.0 + +> This release has been superseded by 4.3.1, the corrected 4.3 release. + +World Explorer 3D 4.3.0 is the Explorer Experience release. It integrates +contextual discovery, field interaction, wildlife, geology, companions and AR +into the existing fixed-location world rather than presenting them as separate +or permanently open systems. + +## Explorer experience + +- Discover context-aware wildlife, geology, natural-history specimens and + detector finds while walking through real-world locations. +- Use visible field equipment including the detector, hand trowel, specimen + brush, camera, binoculars and sediment tools. +- Review observations in the Field Journal and Field Guide, keep acquired + virtual specimens in Collection, and advance Explorer rank, specialties, + goals and regional progress. +- Keep gameplay readable through collapsible, task-focused Explorer panels. + +## Wildlife, companions and AR + +- Wildlife uses distinct bounded procedural models and licensed reference media + for identification context; generated encounters are never presented as proof + of a real animal at the selected coordinate. +- Companion choices include three dogs, three cats, two birds and a virtual fox + with species-aware scale and grounded or airborne following behavior. +- AR supports owned companions, tabletop recorded specimens and a habitat-gated + virtual wildlife photo challenge through WebXR, camera overlay or interactive + 3D fallback according to device capability. + +## World, accounts and multiplayer + +- Regional bridge and tunnel handling preserves visible JFX, Bay Bridge, Fort + McHenry, Yerba Buena and Monaco structure continuity without city-specific + duplicate renderers. +- Building exteriors now combine the existing high-resolution facade atlases + with deterministic ground-level doors, frames, handles, thresholds, lights, + canopies and storefront side panes. Contextual entry activates only at the + published doorway and works through keyboard and touch controls. +- Living-world pedestrians and vehicles have broader visual variety with bounded + population and rendering budgets. +- Account and administrator surfaces are consolidated around conventional user, + moderation, room, content, analytics and operations tasks. +- Firestore rules and Cloud Functions cover trusted Discovery inventory/trading, + accounts, rooms, shared edits, chat and admin claims. + +## Verification + +- Firestore emulator security suite: 77/77 assertions. +- Two independent authenticated multiplayer browsers: 8/8 synchronization and + shared-edit assertions. +- Installed-Chrome Discovery journey: detector, excavation, wildlife, Guide, + Progress, dog, bird, AR and mobile presentation passed with human-reviewed + screenshots. +- Installed-Chrome structure journeys visibly verified Baltimore, San Francisco + and Monaco bridge/tunnel systems. +- Moon, Earth, Mars, Space and Ocean lifecycle journeys passed without duplicate + renderer or world ownership. +- Strict reachability passed 532/532 production modules with zero orphans; all + 93 hosted assets and 27 dynamic PBR assets are owned. +- Installed-Chrome facade acceptance publishes 112 entrances with three opaque + instanced detail draw calls, verifies desktop entry and a 390x844 touch entry, + rejects entry at an arbitrary wall, and retains one world publication. +- The latest repaired dense New York lifecycle measured 541.4 MB post-GC, + released to 150.9 MB at the title and reloaded at 585.7 MB. The former 2.02 GB + editable-world rebuild path no longer rebuilds the provider world. + +The release matrix exercises representative locations worldwide. This candidate +is not approved for deployment: Baltimore and New York building-enrichment +fallback coverage, Miami and Tokyo outage landcover, Everglades far-horizon +fallback, and Lake Tahoe and Panama Canal water-start vehicle selection must be +corrected and rerun. Manual phone and integrated-GPU acceptance also remains +open. Production therefore remains on the verified 4.2.1 rollback artifact. + +## Rollback + +Rollback target: commit `74f1a47d437027bae5d7bd5745e35d1db0bbfe3e`, +the previous `stable` production source for version 4.2.1. Retain and promote its +existing artifact when available; do not rebuild historical source as 4.3.0. diff --git a/RELEASE_NOTES_4.3.1.md b/RELEASE_NOTES_4.3.1.md new file mode 100644 index 00000000..c2a4b141 --- /dev/null +++ b/RELEASE_NOTES_4.3.1.md @@ -0,0 +1,79 @@ +# World Explorer 3D 4.3.1 + +World Explorer 3D 4.3.1 is the corrected Explorer and Urban Sandbox release. It +supersedes 4.3.0 without rewriting its published tag and brings the release +record back in line with the production source. + +## Explorer and urban experience + +- Discover contextual wildlife, geology, natural-history specimens and detector + finds while exploring real-world locations. +- Use field tools, review observations in the Field Journal and Field Guide, + maintain a Collection and advance Explorer specialties and regional progress. +- Choose grounded or airborne companions and use capability-aware AR through + WebXR, camera overlay or interactive 3D fallback according to the device. +- Interact with richer pedestrian roles, vehicle families, street furniture, + wildlife and bounded civic-response scenarios through one contextual action + system and a six-slot equipment loadout. +- Enter eligible buildings through deterministic street-oriented doors and + storefronts that belong to the existing facade renderer. Generated interiors + can include stable floors, walkable stairs and a proximity elevator. + +## Geospatial world + +- Mapped building height and identity now survive footprint selection, + deduplication, batching and every near/far LOD. Quality settings do not rewrite + authoritative skyline height or replace distant mapped detail. +- At-grade roads, solid junction footprints, final terrain, building clearance + and vehicle wheel contact share the same published surface authority. +- Bridge, ramp, overpass, elevated-road and tunnel endpoints are resolved inside + the shared transport compiler. The release does not add city-specific + structure renderers or claim measurements that are not present in source data. +- Earth remains a bounded, deterministic selected-location experience. Player, + vehicle and camera movement does not create a continuously streaming world. +- Water, wake, sky and bathymetry presentation is richer while observations, + models, mapped features and visual fallbacks remain explicitly distinct. + +## Reliability, memory and security + +- Returning to the title releases location-owned terrain, provider staging, + accepted-ground state and scene resources instead of rebuilding or retaining a + second world. +- Production packaging preserves one root Firebase/module instance across the + application shell, account, multiplayer and shared-edit entry points. +- Firestore authorization covers current account, room, discovery, trade, + shared-edit, condition-impact and deletion paths. +- Strict hosted-source reachability and asset ownership reject orphaned runtime + modules and undeclared release media. + +## Verification + +- Root and Cloud Functions dependency audits report zero known vulnerabilities. +- Firestore emulator security suite: 79/79 assertions. +- Two authenticated multiplayer browsers completed private-room presence and + shared-artifact synchronization. +- Packaged Earth, Moon, Mars, Space, Ocean and Live GPS journeys completed with + one renderer and no application or browser errors. +- Complete assembled-world checks cover Baltimore/JFX, Golden Gate, London, + Monaco, Manhattan, rural Iowa and Tokyo with terrain, water, buildings, + transport, population, atmosphere, HUD, collision and player control active + together. +- The hosted artifact contains 563 reachable modules with zero orphans, 95 + declared hosted assets and 27 owned dynamic PBR assets. + +## Compatibility and limitations + +Map and structure detail still depends on mapped source coverage and provider +availability. Incomplete layer or connection tags can make a bridge, ramp, +overpass or tunnel shorter or less detailed than its real counterpart. Dense +urban scenes can remain demanding on lower-memory devices. These are disclosed +limitations, not permission to lower mapped building height or silently remove +distant world detail. See [KNOWN_ISSUES.md](KNOWN_ISSUES.md), +[DATA_SOURCES.md](DATA_SOURCES.md) and [ATTRIBUTION.md](ATTRIBUTION.md). + +## Rollback + +Rollback target: immutable production build +`4.2.1+74f1a47d4370.be7d9ff364590461.production` at commit +`74f1a47d437027bae5d7bd5745e35d1db0bbfe3e`. Promote its retained artifact; +do not rebuild historical source as 4.3.1. diff --git a/RELEASE_NOTES_5.0.0.md b/RELEASE_NOTES_5.0.0.md new file mode 100644 index 00000000..e1dd4467 --- /dev/null +++ b/RELEASE_NOTES_5.0.0.md @@ -0,0 +1,69 @@ +# World Explorer 3D 5.0.0 + +World Explorer 3D 5.0 connects field exploration, progression, fishing, +multiplayer building, and creator tools while preserving the bounded world and +travel systems established in 4.x. + +## Overview + +This release unifies systems that previously felt separate. Walking and Live +GPS now feed the same field activities and progression; shore, boat, and +underwater fishing share the same records; and persistent Blocks now live +inside the World Editor instead of a competing standalone builder. It also +includes the first regional ecology pack, expanded recurring activities, room +building and vehicle persistence, accessibility improvements, and substantial +mobile play and launch fixes. + +## Highlights + +- Explore on foot, by car, drone, plane, boat, submarine, rover, astronaut, or + spacecraft with improved mobile controls and camera behavior. +- Use the unified World Editor for reviewed overlays and persistent local or + multiplayer Blocks. +- Build a shared Backpack, Journal, Field Guide, regional life lists, and + specialties through Field Today activities, Expeditions, and seasonal + surveys. +- Explore a 60-taxon Baltimore ecology pack spanning plants, wildlife, birds, + insects and arachnids, freshwater fish, and marine fish. +- Use the same field activities during normal walking and optional Live GPS + play. +- Fish from shore, from a boat, or underwater, with catches and losses recorded + through the same field systems. +- Create or join bounded multiplayer rooms with presence, chat, activities, + shared building, and persistent room vehicles. +- Use expanded keyboard, touch, zoom, focus, contrast, text-size, and + reduced-motion options. + +## Player-facing fixes + +- The loading image now fully covers the transition into the world. +- The globe’s selected-location marker stays attached while zooming. +- Mobile walking left and right match the direction of the thumb gesture. +- The walking camera follows behind the character during movement. +- Field and interaction prompts clear while a bottom menu is open. +- Speed displays use consistent physical units for walking and vehicles; drone + height appears in the secondary readout rather than the speed field. + +## Upgrading from 4.x + +The standalone Block Builder entry has moved into the World Editor. Open +**Build → World Editor → Blocks** to continue building. Supported local and room +Blocks are retained. + +Existing Backpack data is upgraded automatically on first use, with a local +recovery backup retained in case the upgrade cannot be completed. + +## Scope and limitations + +- The ecology pack is a Baltimore regional slice, not worldwide completeness. +- Field leads and virtual wildlife are game opportunities; they do not report + that a real animal is present at a precise location. +- Terrain, buildings, interiors, water, and live data depend on source coverage + and provider availability. +- Large-room capacity, worldwide ecology, promoted creature models, and broader + physical-device performance coverage remain roadmap work. +- Live GPS is optional, foreground-only, and subject to browser permission and + signal quality. + +See [CHANGELOG.md](CHANGELOG.md), [KNOWN_ISSUES.md](KNOWN_ISSUES.md), and +[ROADMAP.md](ROADMAP.md) for additional detail. diff --git a/RELEASE_NOTES_5.1.0.md b/RELEASE_NOTES_5.1.0.md new file mode 100644 index 00000000..d1579da9 --- /dev/null +++ b/RELEASE_NOTES_5.1.0.md @@ -0,0 +1,115 @@ +# World Explorer 3D 5.1.0 + +World Explorer 3D 5.1 brings the Explorer systems into one clearer experience +and expands the sandbox across Earth, oceans, airports, and space. + +![Walking beside USS Constellation in Baltimore's Inner Harbor](assets/readme/baltimore-harbor.webp) + +## Your Explorer + +- Keep one Journal across Fieldwork, Games, Making, Travel, Community, and + Companions. +- Use one Backpack with categories, item history, inspection, equip and use + actions, and six configurable quick slots. +- Move between Field Today, the Journal, Field Guide, Backpack, Expeditions, + specialties, life lists, companions, and seasonal surveys without creating + separate progress records. +- Download a Journal backup and restore it in the browser. +- Raise eligible domestic animals, birds, and livestock through individual + care, trust, and levels. Compatible companions travel aboard vehicles. + +## Earth and field play + +- Explore eleven regional Field Guide packs with 180 attainable plants, + animals, birds, insects and arachnids, freshwater fish, and marine fish. +- Search the current regional Guide or the World Guide, review unidentified + entries, and follow regional life-list progress. +- Share field leads and activity records between ordinary walking and optional + Live GPS play. +- Fish from shore, a boat, or underwater through the same Journal and Field + Guide records. +- Search for cities, landmarks, airports, and other familiar place names + without requiring an exact text match. +- Follow a new First Journey that responds to the current mode and can be + postponed, replayed, or turned off. + +Field leads are game opportunities based on broad regional, habitat, and +seasonal context. They do not claim that a real organism is physically present +at the selected location. + +## Roads, air, and water + +- Drive vehicle families with distinct handling, a 120 MPH car ceiling, + visible condition changes, and clearer collision response. +- Enter eligible responder vehicles and use their lights and siren after + claiming them. +- Board aircraft at mapped airports and helipads, fly planes and helicopters, + exit in the air, and deploy the Explorer parachute while skydiving. +- Find gates, stands, taxiing aircraft, runway activity, a control tower, and a + ticket hall at supported mapped airports. Choose a pilot or passenger journey, + search for a destination, or take a local sightseeing flight. +- Pilot boats and ships from mapped marinas, harbors, and ports. Nearby land + remains visible, and large ships use a tighter camera in channels and + harbors. +- Keep mapped ships separate from generated fleet activity. USS Constellation + is identified as a sloop-of-war museum ship. +- Land or climb onto eligible roofs and continue walking across them. + +| Aviation | Maritime | +| :--: | :--: | +| ![Personal aircraft at BWI](assets/readme/bwi-personal-plane.webp) | ![A container cargo ship underway near Rotterdam](assets/readme/rotterdam-cargo-ship.webp) | + +## Equipment and city play + +- Use visible Hands, field-tool, melee, ranged, and thrown-equipment actions + from the shared Backpack and quick slots. +- Recover eligible weapons and ammunition, and exchange game items at mapped + convenience stores. +- Meet civilians who can flee, report an incident, defend themselves, or + respond through the bounded civic system. +- Remove expired projectiles, spent charges, unclaimed loot, downed actors, and + disabled vehicles through bounded cleanup or recovery rules. + +Ranged actions have a reticle and camera-directed projectiles, but precision +aiming and presentation remain continuing work. See [Known Issues](KNOWN_ISSUES.md). + +## Space + +- Fly manually or use optional Wayfinder assistance without losing manual + control. +- Select planets, moons, small bodies, stars, and featured deep-space + destinations, then see the active course and local guidance. +- Collide with rendered celestial bodies instead of passing through them. +- Enter accepted solid-world surfaces, traverse them, return to orbit, and + return to Earth. Atmospheric destinations use their own journey rules. + +![Wayfinder approach to Sagittarius A star](assets/readme/space-wayfinder-sagittarius.webp) + +## Multiplayer and creation + +- Join bounded public or private rooms with presence, chat, activities, shared + Blocks, published overlays, and persistent room vehicles. +- Build with Blocks inside the World Editor so local and shared construction + uses one placement and persistence path. +- Compete through game-specific leaderboards connected to supported activities + and the Explorer profile. + +## Access and performance + +- Enter Earth and Live GPS play sooner on mobile while retaining the playable + district and recovery boundary. +- Use keyboard, touch, gamepad, browser zoom, visible focus, larger text, + increased contrast, reduced motion, and larger touch targets. +- Keep mobile entry, action, exit, and recovery usable at a 390×844 layout. +- Release superseded world, provider, scene, and temporary gameplay resources + when changing locations or ending a session. +- Use the same airport travel and aircraft system wherever mapped airport data + is available; density scales down on touch devices without changing the + travel, boarding, or flight experience. + +The complete Journal, Guide, companion history, and local Backpack history stay +in the current browser. Backup and restore are included. Complete cross-device +Journal sync is not yet available. + +See [CHANGELOG.md](CHANGELOG.md), [ROADMAP.md](ROADMAP.md), and +[KNOWN_ISSUES.md](KNOWN_ISSUES.md) for more detail. diff --git a/ROADMAP.md b/ROADMAP.md index d7e994aa..29de6c3e 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -1,44 +1,448 @@ -# Roadmap - -This roadmap describes the current product direction. Priorities may change as performance, data licensing, and platform requirements are evaluated. - -## Completed in 4.1.2 - -- Activated integrity-checked accepted-ground artifacts with explicit datum, - provenance, coverage, uncertainty, and fail-closed behavior. -- Made one compiled OSM transport graph/surface authoritative for rendering, - collision, navigation, bridges, tunnels, ramps, and stacked structures. -- Added provenance-owned building and water publication with stable identity, - mapped/inferred fields, accepted-ground foundations, and navigable-surface - boat selection. -- Made controller transitions and space/ocean renderer lifecycles - deterministic, measurable, and repeatable without resource-owner growth. -- Added outcome-based production gates, real-input journeys, sustained - controller evidence, lifecycle stress tests, and immutable artifact hashes. - -## Completed in 4.1.1 - -- Removed Continuous World and its duplicate streaming renderers. -- Consolidated selected-location loading, cancellation, and world publication. -- Unified terrain and traversal queries for walking, driving, flying, placement, and camera behavior. -- Added structure-aware bridge, ramp, elevated-road, underpass, and tunnel compilation. -- Reworked building exteriors around mapped materials, restrained fallbacks, and improved roof geometry. -- Expanded worldwide regression coverage for dense cities, mountains, coasts, deserts, rural areas, landmarks, and stacked transportation. -- Restored My Places behavior and consistent Earth, Ocean, Moon, Mars, and Space destination access. - -## Version 5.0 Priorities - -- Improve terrain source accuracy and regional bare-earth coverage while preserving one global surface contract. -- Expand licensed landmark, facade, roof, vegetation, hydrology, and land-cover data. -- Improve complete-route performance on desktop and mobile hardware. -- Refine ocean traversal, shorelines, boat handling, underwater environments, and fishing. -- Expand mapped indoor support and generated interior variety. -- Strengthen multiplayer presence, moderation, reconnect behavior, and shared activities. -- Improve world-building tools, games, progression, and accessibility. - -## Future Exploration - -- Licensed rail, bicycle, and hiking route experiences. -- Additional scientifically grounded planetary surfaces and catalog-backed space destinations. -- Improved astronomical navigation, flight handling, encounters, and scale communication. -- Historical or reconstructed environments only where data provenance and licensing support them. +# World Explorer 3D Roadmap + +Last updated: 2026-08-30. + +World Explorer 3D is growing toward a connected world sandbox: choose a real +place, build an Explorer, travel by land, water, air, or space, and make a +persistent life in the game. New systems must deepen that shared world instead +of adding another disconnected menu or duplicate version of an existing +feature. + +## Product direction + +The long-term game is organized around five connected parts: + +1. **Explore:** go anywhere the available world data and game environments can + support, from a city street to a regional field site, an ocean, or another + world. +2. **Do:** drive, fly, sail, fish, survey, photograph, collect, trade, build, + care for companions, play activities, and share a room with other players. +3. **Grow:** develop an Explorer identity, specialties, equipment, companions, + vehicles, homes, and expedition capabilities. +4. **Belong:** establish homes and base camps, decorate them, return to familiar + places, and contribute to persistent local or multiplayer worlds. +5. **Create:** use one World Editor and Blocks workflow to make structures, + interiors, activities, and shared places without competing building systems. + +Real-world context makes the sandbox recognizable, but it does not turn the +game into a navigation, appraisal, ownership, wildlife-presence, or safety +service. Unknown source data remains unknown. + +## Current release: 5.1 + +Version 5.1 connects the systems introduced in 5.0 and substantially expands +travel and sandbox play. + +| Area | 5.1 capability | Continuing work | +| --- | --- | --- | +| Explorer | One Profile, Journal, Field Guide, Backpack, quick-slot loadout, Field Today, Expeditions, specialties, and seasonal surveys | Cross-device progression and more ways to use specialties | +| Regional field play | Eleven regional packs with 180 attainable entries across every built-in Earth destination | Independent scientific review, more regions, and more promoted creature models | +| Character and companions | Attributes, skills, condition, equipment, companion care, trust, levels, livestock, and vehicle travel | Player-selectable Explorer identities, richer appearance, training, and ability growth | +| Earth travel | Walking, distinct road vehicles, responder vehicles, drone, personal aircraft, airport aircraft, boats, ships, and skydiving | More vehicle classes, facilities, damage presentation, and physical-device tuning | +| Water | Shore visibility, mapped vessel identity, marinas, ports, playable boat and ship classes, shore/boat/underwater fishing | Wider port coverage, water traffic, maritime activities, and reviewed bathymetry | +| Space | Manual and assisted flight, selectable courses, celestial collision, planetary entry, accepted surfaces, landing, and return | Optional long-distance Expeditions, more complete planetary activities, destinations, spacecraft, and visual review | +| World construction | One World Editor containing persistent local and room Blocks | Terrain shaping, building materials, interiors, decoration, and creator publishing | +| Community | Bounded rooms, presence, chat, activities, shared Blocks, persistent room vehicles, and public game leaderboards | Larger-room review, moderation depth, clubs, events, and shared settlements | +| Access and performance | Keyboard, touch, mobile layouts, accessibility settings, bounded loading, and lifecycle cleanup | Broader phone, browser, assistive-technology, battery, and thermal review | + +The 5.1 release is complete when the exact release build passes owner review on +desktop and phone, its account and public leaderboard paths are available, and +that approved build is published without being rebuilt. + +## Next foundation: persistent player life + +These systems come before a larger virtual property economy because they define +who owns progress and how it remains recoverable. + +### Explorer identities and character growth + +- Let players choose an Explorer style such as naturalist, field researcher, + navigator, builder, pilot, mariner, photographer, or generalist. +- Keep one shared Character model. An Explorer style changes starting strengths, + assistance, activities, and growth paths; it does not create separate movement, + inventory, vehicle, or fieldwork systems. +- Add player-selectable avatars, appearance options, clothing, equipment display, + animation quality, and accessibility choices. +- Connect attributes, skills, specialties, companion bonds, licenses, equipment, + and vehicles to clear milestones and visible next steps. +- Avoid permanent early mistakes: players can keep a generalist path, learn + outside their specialty, and revise their focus without losing their history. + +### Account-backed progression + +- Add recoverable account sync for the Character, Backpack, Journal, Guide, + companions, homes, base camps, vehicles, and supported creations. +- Preserve local-first play and export/restore while making conflict resolution, + migration, rollback, and account deletion understandable. +- Keep rewards and shared ownership server-authorized. A visible client state is + never sufficient proof of ownership. +- Connect public competition to clear categories: fieldwork, games, making, + travel, community, companions, and seasonal programs. + +Completion means a player can sign in on another supported device, recover the +same supported progression, understand any conflict, and continue without a +duplicate profile. + +## Homes, base camps, and virtual real estate + +Property will become a progression system built on the existing mapped building, +interior, Editor, Blocks, room, and account systems. It will not be a second +building game. + +### Stage 1: homes and base camps + +- Let a player choose one primary home and establish a limited number of base + camps for longer expeditions. +- A home provides storage, companion rest, a vehicle return point, decoration, + activity planning, and a recognizable place to return to. +- A base camp supports field equipment, route planning, sample review, companion + care, and expedition recovery without pretending the player owns real land. +- Home and camp placement must respect mapped access, protected places, + sensitive-species rules, room permissions, world bounds, and collision. +- Decoration uses the World Editor and Blocks object authority, with furniture, + materials, placement limits, undo, persistence, and room sharing. +- Interiors retain stable floor and building identity so saved decoration does + not move to another structure after a later world load. + +Completion means a home or camp can be entered, decorated, saved, revisited, +shared when permitted, migrated, and recovered after an interrupted session. + +### Stage 2: virtual property market + +- Create virtual property records from stable mapped building identity and + licensed property data where coverage permits. A game property is never a + claim to legal title, access, tenancy, or control of the real property. +- Support buying, selling, and upgrading with game currency only. The first + release will not include cash-out, real-money speculation, mortgages, or a + promise that virtual holdings retain value. +- Use a licensed valuation source only when the provider permits the intended + display and storage. Show the source date, coverage, confidence or range, and + whether a number is an assessment, listing price, sale record, automated + estimate, or game value. +- Never substitute random prices for fair market value. If usable valuation data + is missing, show that it is unavailable and use a clearly named game-price + model that does not claim to represent the real market. +- Keep private owner, mortgage, and other personal records out of ordinary game + play. Property identity and valuation are separate from personal ownership + information. +- Start with regions where licensing, parcel identity, valuation coverage, and + update policy can be verified. Elsewhere, homes and base camps can still use + the game economy without a fair-market-value claim. +- Add economic sinks and safeguards through maintenance, decoration, travel, + storage, services, and bounded resale rules so progression is rewarding and + resistant to inflation or abuse. + +Completion means every displayed value has an understandable source and date, +every transaction is authorized and recoverable, and no game screen can be +mistaken for a real listing, appraisal, deed, or offer. + +### Stage 3: neighborhoods and shared places + +- Let invited players visit homes, contribute within explicit permissions, and + use shared storage or activities without gaining ownership authority. +- Add clubs, settlements, expedition headquarters, marinas, hangars, workshops, + farms, and research stations as extensions of rooms and homes. +- Connect local businesses and services to travel, repairs, equipment, supplies, + companion care, and trade while retaining exact source and place identity. +- Add community showcases and discovery without making private locations or + sensitive real-world details public by default. + +## World depth and realism + +World depth will expand by strengthening shared simulation owners rather than +adding city-specific exceptions. + +### Earth and built environments + +- Improve reviewed roads, bridges, tunnels, rail, ports, airports, shorelines, + terrain, roofs, entrances, interiors, elevators, lighting, and collision. +- Expand building materials, architectural families, usable rooms, rooftop + access, furnishings, weather response, and day/night activity. +- Add more playable vehicles and vessels through shared catalogs, handling, + damage, repair, entry, storage, and facility rules. +- Expand airports as playable travel centers through the existing airport + layout and flight owners: richer mapped terminals, gates, ticket halls, + ground service, traffic sequencing, takeoff/landing activity, and regional + airport character without city-specific controller forks. +- Connect airport arrivals, routes, cities visited, flight roles, Expeditions, + Journal history, and optional competition through the existing Explorer + progression and leaderboard authorities. Labels must describe game journeys, + not claim live schedules, ticket sales, or real-world airport operations. +- Keep the personal mode-switch vehicles distinct from heavier world vehicles. +- Extend city-switch and memory cleanup so repeated travel remains playable on + supported desktop and mobile hardware. +- Give projectiles, spent charges, dropped items, downed actors, wrecks, and + unmanned vehicles bounded lifetimes or recovery rules. Cleanup must dispose + rendering and physics resources, not merely hide them. + +### Natural world and field play + +- Publish more reviewed ecology packs through the same taxonomy, habitat, + seasonality, provenance, licensing, attribution, localization, migration, + rollback, and sensitive-species requirements. +- Improve creature anatomy, scale, behavior, animation, LOD, sound, tracks, + habitat signs, and mobile budgets by quality tier. +- Expand regional geology, weather, water, insects, fish, marine life, farms, + livestock, and seasonal change without claiming generated play is a live + observation. +- Develop companion training and roles that connect to fieldwork, travel, homes, + and specialties without turning wildlife encounters into real-world capture + claims. + +### Ocean and space + +- Expand marinas, harbors, large ports, ships, navigation, research, rescue, + cargo, fishing, diving, and oceanography through one maritime lifecycle. +- Expand planetary and deep-space destinations with body-appropriate surfaces, + atmospheres, hazards, activities, visuals, and return journeys. +- Preserve manual control. Assistance remains optional, visible, local to the + selected destination, and interruptible by the player. + +## Interstellar Expeditions + +Interstellar Expeditions will make the journey between distant destinations a +game of its own without replacing the current space sandbox. Players will keep +three choices through the same universe and destination catalog: + +1. **Free flight:** enter a personal spacecraft, fly manually, orbit, land, + leave the craft, and explore with the existing Character, geology, building, + and planetary systems. +2. **Assisted travel:** select a destination and use the current optional, + interruptible travel assistance. +3. **Interstellar Expedition:** deliberately plan and provision a persistent + long-range ship, manage the voyage, and return to ordinary local exploration + on arrival. + +Mars, a discovered world, a player base, and an outpost remain the same places +regardless of how the player reaches them. Expedition work will extend the +existing body catalog, world addresses, Space Flight, Character, Backpack, +Journal, geology, World Editor, Blocks, rooms, and persistence. It will not +create Expedition-only copies of those systems. + +### Stage 1: research and system decisions + +- Produce one primary `INTERSTELLAR_EXPEDITION_SYSTEM.md` before broad + implementation. It will make decisions about propulsion, relativity, + strategic time, crew, closed life support, ship interiors, resources, + failure, multiplayer, persistence, performance, and the boundary with + ordinary Space. +- Base physical claims on authoritative scientific and engineering sources. + Distinguish catalog observations, established physics, modeled values, + speculative engineering, game-generated content, and fictional technology. +- Retain known physical distance while presenting simulated mission duration + and expected player time separately. One travel calculator will own route + feasibility, acceleration and deceleration, propellant, external elapsed + time, crew-experienced time when relativity matters, and play-time + compression. +- Use hierarchical world addresses and reference frames so nearby flight stays + precise while the same architecture can address planets, stars, nebulae, and + galaxies. Catalog objects take precedence; deterministic generated objects + fill appropriate gaps without being presented as observed fact. +- Separate Expedition chronology from contemporary Earth context. A voyage + representing centuries will not silently move the live Earth world into a + fictional future. + +This stage is complete when the design names one owner for every shared state, +resolves the scientific and gameplay decisions needed for implementation, and +defines schema migration and rollback. It will not remain an open list of +alternatives. + +### Stage 2: one complete journey foundation + +- Add one Expedition planner with a small set of understandable realism and + survival presets plus an advanced custom choice. The planner covers + destination, ship, propulsion, crew role coverage, resources, route stops, + risk, and a clear Ready, Marginal, or Insufficient assessment. +- Create data-driven ship and propulsion profiles whose mass, thrust, range, + crew, cargo, power, life support, maintenance, and interior requirements + produce meaningfully different journeys. Real, speculative, and fictional + drives retain honest classifications and explanations. +- Keep personal equipment in the Backpack, voyage supplies in ship cargo, and + outpost resources in settlement storage. Every transfer is explicit and + conservation-checked. +- Use one versioned Expedition record for the ship, route, current leg, + strategic time, crew, supplies, system condition, cargo, discoveries, major + events, and mission state. Stable ship identity includes its class, + configuration, upgrades, condition, crew association, and history. +- Add an interim mission allocation for initial provisioning without embedding + a temporary currency throughout the game. It must be replaceable by the + future shared World Explorer economy. + +The first implementation proves a complete representative journey: prepare, +board, depart, advance time, consume supplies, respond to a real ship problem, +record a discovery, arrive, leave the Expedition ship, and continue as the same +Explorer through the existing local Space and planetary systems. + +### Stage 3: the ship, crew, and voyage + +- Make each Expedition ship a bounded, high-quality, walkable place assembled + from validated class-specific layouts. Required rooms must exist, remain + reachable, fit the exterior, support collision, and perform real functions; + unused decorative labels do not count as systems. +- Connect bridge, engineering, life support, medical, cargo, fabrication, + science, crew, food production, cryogenic, and vehicle spaces only when the + selected ship requires them. Room and deck visibility, shared assets, + bounded lighting, and crew detail levels keep interiors playable in a + browser and on supported phones. +- Use the existing Explorer as a crew member. NPC crew have names, ages, + health, fatigue, experience, assignments, and overlapping technical roles. + They work, rest, repair, treat, and perform science in the visible ship with + purposeful bounded behavior. Routine schedules and maintenance are automatic + unless the player chooses deeper control. +- Track a focused set of consequential supplies: food, water and life support, + power, propulsion resources, medical supplies, maintenance material, + fabrication feedstock, and mission cargo. Forecast consumption, recycling + losses, production, uncertainty, and safety margin before departure. +- Give propulsion, power, life support, navigation, thermal control, medical, + fabrication, food production, sensors, and hull systems condition that can + degrade, warn, fail, and recover. Repairs use crew skill, time, spares, or + valid fabrication; temporary repairs restore limited capability. +- Advance months or centuries through an analytical strategic clock rather + than faster render frames. The player can run normal time, choose a faster + rate, or advance to the next event or milestone; local exploration pauses + long-travel compression. +- Generate quiet travel and bounded state-driven events as well as contextual + uncertainty. Every event changes actual crew, resources, route, or ship state, + and unresolved problems can form an understandable failure chain. A prepared + Expedition normally has backups, warnings, repair, diversion, and rescue + opportunities before it can be lost. +- Record departures, arrivals, repairs, losses, discoveries, route changes, + resupply, rescue, outposts, and outcomes in a Captain's Log presentation + backed by the existing Journal and progression authority. + +### Stage 4: stops, discoveries, and long-duration missions + +- Let a route include known planets, moons, small bodies, bases, outposts, and + stable game-generated destinations. Reachability comes from distance, ship, + propulsion, supplies, and valid stops rather than an arbitrary player level. +- Make resource recovery use the existing planetary flight, geology, mining, + rover, Backpack, and cargo paths. A player may land and gather, deploy a + capable rover, trade with a stocked location, salvage a valid object, or + receive a trusted transfer; no menu may create supplies from nothing. +- Let sensors progress an unknown object from detection to a better supported + classification. Generated discoveries retain a stable identity, designation, + seed, and truth label across save, reload, departure, and return. Known + catalog objects are never presented as player-created discoveries. +- Support cryogenic missions with reserve specialists who can be awakened when + needed. Treat human long-term suspension as speculative, with costs and + limitations rather than a cosmetic label. +- Support generation voyages with bounded population continuity, aging, + training, role succession, knowledge preservation, food, life support, + medical capability, and maintenance. This is not a politics, relationship, + or civilization simulator, and it will not store individual genetic data. +- Apply established Special Relativity to ships reaching meaningful fractions + of light speed, including acceleration, deceleration, external time, and + crew-experienced time. Explicitly fictional faster-than-light travel remains + available only under its honest game classification. + +### Stage 5: shared Expeditions and persistent outposts + +- Extend the current room and backend authority so one human with NPC crew or + multiple humans can share one ship, route, clock, crew, cargo, resource, and + system state. Clients do not independently award or consume shared supplies. +- Synchronize players walking through the same interior while leaving routine + NPC animation and effects local where they do not affect authority. Time + compression requires a clear host or consent decision and remains safe when + a player disconnects and rejoins. +- Allow a compatible player Expedition to answer a distress request only when + route and time make a rendezvous possible. Trusted transfers remove the exact + cargo from the assisting ship before adding it to the receiving ship, and + both Captain's Logs record the rescue. +- Let a suitable Expedition establish a bounded outpost at an existing + planetary destination using the existing World Editor and Blocks. Its crew, + habitat, power, food, water, life support, medical capacity, maintenance, + production, and storage determine what survives or becomes available later. +- Keep an outpost present for ordinary Free-Roam visits and future Expeditions. + It is a persistent resupply node, not a separate colony-management game or a + duplicate planetary world. + +### Completion and release gates + +Interstellar Expeditions are complete only when the following connected +journeys work from planning through persistence, not merely as menus or meters: + +- unchanged Free-Roam flight, assisted travel, landing, planetary exploration, + geology, building, takeoff, and return with no Expedition requirements; +- one complete Expedition with a functional walkable ship, active crew, + consequential resources and systems, a repair, a discovery, arrival, local + exploration, and continuation; +- a real multi-stop resupply using existing planetary or rover gameplay; +- cryogenic crew replacement, a multigenerational voyage, and numerically + validated relativistic travel; +- shared human crew, disconnect and reconnect, coordinated strategic time, and + a resource-conserving multiplayer rescue; +- one persistent outpost that advances within its bounded model and is the same + place in Expedition and Free-Roam play; +- a recoverable and an unrecoverable multi-stage failure with a causal report; +- a stable generated discovery that survives save, reload, departure, and + return; and +- a full active-journey save and restore with the same Explorer, ship layout, + crew, ages, supplies, systems, route, time, cargo, discoveries, log, and + outposts. + +A deterministic non-rendering simulation will exercise representative short, +interplanetary, nearby-star, cryogenic, generation, relativistic, fictional, +multi-stop, rescue, and outpost journeys across long simulated durations. It +will test conservation and deliberately reproduce failure chains rather than +only successful missions. Actual desktop and mobile gameplay review will still +verify planning, ship interiors, crew activity, cruise, emergencies, arrival, +local exploration, visual quality, audio, accessibility, lifecycle cleanup, +and the unchanged ordinary Space experience. + +The initial system stops at this complete loop. It does not add a technology +tree, politics, romance, factions, alien civilizations, diplomacy, banking, a +manufacturing empire, or a full city, colony, or interstellar-market simulator. +Galaxy-scale addressing does not claim that every destination is handcrafted +or reachable by every ship. + +## Creation and community + +- Extend the World Editor with terrain-safe voxel and material tools while + retaining Blocks as its immediate persistent construction workflow. +- Add reusable interiors, decoration sets, vehicles, activities, routes, and + field programs through reviewed catalogs and clear rights metadata. +- Improve drafts, validation, version history, moderation, rollback, discovery, + attribution, and creator profiles. +- Add cooperative Expeditions, races, surveys, building projects, port and + airport activities, seasonal events, and community challenges. +- Carry transport, equipment, damage, recovery, and cleanup into multiplayer + through the existing room authority. The room service decides shared entity + state and retirement so one client cannot erase or retain objects for + everyone else. +- Add an in-game multiplayer map showing the current online player count, + discoverable rooms, and privacy-safe approximate activity areas. Precise + player coordinates remain visible only inside a room when its permissions + allow them, and players can opt out of public discovery. + +### Combat and action feel + +- Improve sight alignment, camera-to-muzzle agreement, hit feedback, recoil, + spread, projectile speed, throwing arcs, animation, sound, and mobile aiming. +- Keep one equipment and projectile authority across the Backpack, quick slots, + NPC response, damage, pickups, rooms, and cleanup. +- Treat the current ranged-action system as a playable foundation, not the + final standard for precision shooting or finished weapon presentation. + +Completion means a creation has one owner, one persistence path, clear +permissions, a recoverable history, and predictable behavior in solo and room +play. + +## Ongoing release standards + +Every release must: + +- preserve supported player state and provide migration and rollback where the + schema changes; +- test the changed gameplay path in the browser on the exact release build; +- retain usable keyboard and 390×844 touch entry, action, exit, and recovery; +- distinguish mapped, observed, modeled, reference, and game-created content; +- document data source, license, attribution, age, coverage, and uncertainty; +- avoid duplicate movement, inventory, building, progression, property, or + multiplayer authorities; +- compare public notes with the previous production tag so substantial player + changes are not omitted; +- publish only the build that completed owner review. + +Worldwide completeness will not be claimed from a set of regional packs, +provider fallbacks, or generated visuals. The roadmap advances when each new +capability works as part of the game players already have. diff --git a/account/account-center.js b/account/account-center.js new file mode 100644 index 00000000..2acf7ecf --- /dev/null +++ b/account/account-center.js @@ -0,0 +1,44 @@ +(() => { + const SECTION_META = Object.freeze({ + overview: ['Overview', 'Account status, access, and the actions you use most.'], + profile: ['Profile', 'Private identity and the public creator card are kept clearly separated.'], + social: ['Friends & Rooms', 'Manage friends and room invitations without mixing them into account security.'], + support: ['Support & Receipts', 'Optional donations, billing controls, and receipt history.'], + security: ['Security & Privacy', 'Review sign-in details and use sensitive account actions deliberately.'] + }); + + const buttons = [...document.querySelectorAll('[data-account-target]')]; + const views = [...document.querySelectorAll('[data-account-view]')]; + const title = document.getElementById('accountPageTitle'); + const subtitle = document.getElementById('accountPageSubtitle'); + + function setSection(section, options = {}) { + const next = Object.hasOwn(SECTION_META, section) ? section : 'overview'; + const [nextTitle, nextSubtitle] = SECTION_META[next]; + views.forEach((view) => { view.hidden = view.dataset.accountView !== next; }); + buttons.forEach((button) => { + const active = button.dataset.accountTarget === next; + button.classList.toggle('active', active); + button.setAttribute('aria-current', active ? 'page' : 'false'); + }); + if (title) title.textContent = nextTitle; + if (subtitle) subtitle.textContent = nextSubtitle; + document.title = `${nextTitle} · World Explorer Account Center`; + if (options.history !== false) { + const url = new URL(window.location.href); + if (next === 'overview') url.searchParams.delete('section'); + else url.searchParams.set('section', next); + window.history.replaceState({ accountSection: next }, '', url); + } + document.querySelector('.wrap')?.scrollTo?.({ top: 0, behavior: options.instant ? 'auto' : 'smooth' }); + } + + buttons.forEach((button) => button.addEventListener('click', () => { + setSection(String(button.dataset.accountTarget || 'overview')); + })); + window.addEventListener('popstate', () => { + setSection(new URL(window.location.href).searchParams.get('section') || 'overview', { history: false, instant: true }); + }); + + setSection(new URL(window.location.href).searchParams.get('section') || 'overview', { history: false, instant: true }); +})(); diff --git a/account/admin.html b/account/admin.html index c6a7fec3..2f622e55 100644 --- a/account/admin.html +++ b/account/admin.html @@ -3,7 +3,7 @@ - World Explorer Admin Dashboard + Administration · World Explorer Account Center @@ -29,6 +29,9 @@ --radius-lg: 18px; --radius-md: 14px; --sidebar-width: 286px; + --radius-xl: 2px; + --radius-lg: 2px; + --radius-md: 2px; } * { box-sizing: border-box; } @@ -966,20 +969,54 @@ align-items: flex-start; } } + + /* Match the in-game V4 interface instead of presenting a second visual product. */ + :root { + --bg: #05090d; + --bg-2: #0b151e; + --panel: rgba(5, 12, 18, .97); + --panel-2: #071018; + --panel-3: #0b151e; + --line: rgba(157, 174, 186, .28); + --line-strong: #53606a; + --ink: #f4f7f9; + --muted: #9aa8b2; + --accent: #2d7dff; + --accent-2: #f4b942; + --ok: #35d272; + --danger: #ef5b5b; + } + body { background: var(--bg); font-family: Inter, 'Barlow', system-ui, sans-serif; } + body::before { opacity: .22; } + .brand-title, .topbar h1, .view-head h2 { font-family: Orbitron, 'Chakra Petch', sans-serif; text-transform: uppercase; } + .nav-btn { border-radius: 2px; } + .nav-link { text-decoration: none; } + .primary-btn, .secondary-btn, .danger-btn, input, textarea, select { border-radius: 2px; } + .analytics-link { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; white-space: nowrap; } + .analytics-contract-grid { margin-top: 18px; } + .analytics-contract-grid .ops-card strong { display: block; margin: 7px 0; color: var(--ink); font: 600 16px/1.2 Orbitron, sans-serif; }
@@ -1163,7 +1200,58 @@

Site Content Administration

-