# gsilvi05/slope-game architecture

> Architecture diagram of the GitHub repository gsilvi05/slope-game, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-30). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/gsilvi05/slope-game
- Repository: https://github.com/gsilvi05/slope-game

## Overview

Slope is a browser-hosted Unity game. The apparent user workflow is opening the game page, loading the Unity runtime and game data, then playing; the README identifies the product but does not document runtime wiring. The supplied JavaScript shows loading-progress/display support and an ad-popup interaction. The Unity build artifacts are opaque here, so gameplay internals and most page-to-runtime connections cannot be verified from the excerpts.

Main entry points: [`Build/UnityLoader.js`](https://github.com/gsilvi05/slope-game/blob/main/Build/UnityLoader.js) (Unity Loader), [`index.html`](https://github.com/gsilvi05/slope-game/blob/main/index.html) (Game Page), [`script.js`](https://github.com/gsilvi05/slope-game/blob/main/script.js) (Ad Popup), [`Build/slope_27Sept.wasm.code.unityweb`](https://github.com/gsilvi05/slope-game/blob/main/Build/slope_27Sept.wasm.code.unityweb) (Game Code)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_web["Web Experience"]
  node_page["Game Page<br/>[index.html]"]
  node_ad_popup["Ad Popup<br/>[script.js]"]
end

subgraph group_unity["Unity Game Runtime"]
  node_loader["Unity Loader<br/>[UnityLoader.js]"]
  node_game_code["Game Code"]
  node_game_framework["Unity Framework"]
  node_game_data["Game Data"]
end

subgraph group_support["Browser Support"]
  node_progress_ui["Loading UI<br/>[UnityProgress.js]"]
  node_gamebreak["Gamebreak Hook<br/>[gamebreak.js]"]
end

node_player(("Player"))

node_player -.->|"opens"| node_page
node_page -.->|"starts loading"| node_loader
node_loader -.->|"loads runtime"| node_game_code
node_loader -.->|"loads framework"| node_game_framework
node_loader -.->|"loads game data"| node_game_data
node_loader -.->|"reports progress"| node_progress_ui
node_player -.->|"opens popup"| node_ad_popup

click node_page "https://github.com/gsilvi05/slope-game/blob/main/index.html"
click node_ad_popup "https://github.com/gsilvi05/slope-game/blob/main/script.js"
click node_loader "https://github.com/gsilvi05/slope-game/blob/main/Build/UnityLoader.js"
click node_game_code "https://github.com/gsilvi05/slope-game/blob/main/Build/slope_27Sept.wasm.code.unityweb"
click node_game_framework "https://github.com/gsilvi05/slope-game/blob/main/Build/slope_27Sept.wasm.framework.unityweb"
click node_game_data "https://github.com/gsilvi05/slope-game/blob/main/Build/slope_27Sept.data.unityweb"
click node_progress_ui "https://github.com/gsilvi05/slope-game/blob/main/UnityProgress.js"
click node_gamebreak "https://github.com/gsilvi05/slope-game/blob/main/shared/gamebreak.js"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_page,node_ad_popup toneBlue
class node_loader,node_game_code,node_game_framework,node_game_data toneAmber
class node_progress_ui,node_gamebreak toneMint
class node_player toneIndigo
```

## Components

### Web Experience

- [Game Page](https://github.com/gsilvi05/slope-game/blob/main/index.html): `index.html`
- [Ad Popup](https://github.com/gsilvi05/slope-game/blob/main/script.js): `script.js`

### Unity Game Runtime

- [Unity Loader](https://github.com/gsilvi05/slope-game/blob/main/Build/UnityLoader.js): `Build/UnityLoader.js`
- [Game Code](https://github.com/gsilvi05/slope-game/blob/main/Build/slope_27Sept.wasm.code.unityweb): `Build/slope_27Sept.wasm.code.unityweb`
- [Unity Framework](https://github.com/gsilvi05/slope-game/blob/main/Build/slope_27Sept.wasm.framework.unityweb): `Build/slope_27Sept.wasm.framework.unityweb`
- [Game Data](https://github.com/gsilvi05/slope-game/blob/main/Build/slope_27Sept.data.unityweb): `Build/slope_27Sept.data.unityweb`

### Browser Support

- [Loading UI](https://github.com/gsilvi05/slope-game/blob/main/UnityProgress.js): `UnityProgress.js`
- [Gamebreak Hook](https://github.com/gsilvi05/slope-game/blob/main/shared/gamebreak.js): `shared/gamebreak.js`

### Other components

- **Player**

## Connections

- Player → Game Page: opens
- Game Page → Unity Loader: starts loading
- Unity Loader → Game Code: loads runtime
- Unity Loader → Unity Framework: loads framework
- Unity Loader → Game Data: loads game data
- Unity Loader → Loading UI: reports progress
- Player → Ad Popup: opens popup
