This repository contains a design package for a small-scale, Diablo II-inspired action RPG prototype built in Unity. The goal is to provide enough detail for a solo developer or small team to begin rapid prototyping and iterate toward a playable demo.
docs/GameDesignDocument.md– core design pillars, gameplay loop, content roadmap.docs/TechnicalPlan.md– Unity implementation plan, scene structure, systems breakdown.docs/ArtAndAudio.md– references and production notes for visuals and sound.
- Review the design document to understand gameplay goals and scope.
- Stand up a fresh Unity URP project (2022 LTS) and import standard asset packages noted in the technical plan.
- Drop the
Assetsfolder from this repository into your Unity project to bootstrap core gameplay scripts. - Follow the milestone roadmap to build core combat, progression, and content iteratively.
Use these steps to bring the prototype online in the Unity Editor:
- Install Prerequisites
- Unity Hub with Unity 2022.3 LTS (URP template).
- Ensure the Input System, Cinemachine, Addressables, and TextMeshPro packages are available in your project (via Package Manager).
- Clone the Repository
git clone https://github.com/<your-org>/adjunct.git
- Create a New URP Project
- In Unity Hub, create a new 3D URP project targeting the 2022.3 LTS editor version.
- Once Unity finishes generating the project, close the editor.
- Copy the Assets Folder
- From this repository, copy the entire
Assetsdirectory into the root of your new Unity project, replacing the placeholderAssetsfolder that Unity created. - Commit to source control (Git LFS recommended) if you plan to continue development.
- From this repository, copy the entire
- Open the Project in Unity
- Reopen the Unity project through Unity Hub.
- Confirm that all scripts compile and that the required packages are resolved. Install any missing packages via the Package Manager.
- Configure Input Actions
- Enable the new Input System in Project Settings → Player → Active Input Handling (set to "Input System Package" or "Both").
- Import or create the action maps outlined in
docs/TechnicalPlan.md(Move,PrimaryAttack,Secondary,Skill1-4,Dodge,Interact). Assign them to theInputManagercomponent in the scene.
- Open a Test Scene and Press Play
- Load the
Bootstrapor gameplay scene stub described in the technical plan. - Press Play to run the prototype. Use the Inspector to tweak stats, abilities, and enemy spawners while iterating.
- Load the
Tip: Keep the
docs/TechnicalPlan.mdfile open alongside the editor. It contains package recommendations, scene breakdowns, and milestone targets to guide further development.
The initial code drop provides the following foundational runtime systems to accelerate prototyping:
- Game Flow Management –
GameManagersingleton drives high-level state transitions and scene loading. - Input Abstraction –
InputManagerwraps the new Input System and exposes movement/ability events. - Player Framework – Character controller-based locomotion, basic health/damage handling, stat aggregation, and ability loadouts.
- Ability Architecture – ScriptableObject-driven combat abilities with runtime cooldown tracking.
- Combat Resolution – Shared
DamageSystemfor critical calculations and mitigation hooks. - Enemy Baseline – NavMesh-powered AI controller and stat container for melee enemies.
- Inventory Scaffolding – Scriptable item definitions, runtime instances, and equipment stat application.
Use these scripts as a starting point and extend them with content, animation hooks, VFX, and UI per the design documents.

