itch.io is community of indie game creators and players

Devlogs

Dev Log #4 Project Exo

ExoSphere
A downloadable Her

Brief concept:

Welcome to Project Exo (working title) that may be called Hollow Moon, Genesis or any of my other cool name ideas. This is a ARPG that's  sci-fi with strong inspiration from EQ, WOW(classic),  Morrowind Elder Scrolls 3, Path of Exile 1 and 2, and diablo 1 and 2. You will not be fighting demons from the underworld but going to there home planet and meet them there . The worlds themselves present a challenge as they are not friendly like earth but harsh and unrelenting. The worlds themselves could be considered a enemy. You will need to equip the right gear to have the right resists to have access to planets but also resistance to there harsh nature. There is a strong scientific basis for the world creation. I have almost all my needed stats to start generating the worlds. Many of the changes I have made since last dev log are connecting systems that work within the netcode environment.

Changes i Have made since last my dev log are as follows: 

1. World & Universe Generation (Massive Progress)

I have built one of the most ambitious procedural systems in an ARPG:

Planetary Physics & Planet Stats

You can now generate full scientifically-based planetary systems:

  • 32 per-planet stats

  • 18 per-stellar stats

  • Atmosphere, greenhouse effects, surface pressure

  • Blackbody temperature + orbital temperature logic

  • Tectonics, crust layers, water presence, magnetic field dependencies

  • Habitable zone checks based on star type

  • Procedural atmospheres based on gas composition

  • Procedural terrain conditions tied to planet temperature & pressure

Star Class Navigation

I built a World Selection / Universe Navigation Panel:

  • Browse O, B, A, F, G, K, and M type stars

  • Plus exotic types like Neutron stars & White Dwarfs

  • Clicking a planet shows its complete scientific stat block

Planet Popups

When selecting a planet you now show live data such as:

  • Inclination

  • Surface Gravity

  • Temperature

  • Pressure

  • Water content

  • Atmospheric composition

  • Geological activity

  • And dozens more

2. Procedural Terrain System 

I built an entire custom terrain generator in Unity using:

Noise Systems

  • Perlin Noise

  • Worley Noise

  • Ridged Noise

  • Layer blending (mountain/hill/valley combinations)

  • Zone-based biome noise

  • Snapshot saving of complete noise profiles

Terrain Generation Tooling

  • Multi-layer FastNoiseLite integration

  • Inspector-driven layer editing

  • Editor buttons for baking / regenerating terrain

  • Debug features (visual quilting, blending preview, etc.)

Terrain Problems You Solved

  • Quilt-pattern debugging

  • Layer not combining

  • Missing visual change after bake

  • Parameter exposure

  • Terrain presets saving per world

This will be a full terrain playground for  procedural planets.

3. Scene Structure & Netcode Architecture

Instanced Scenes

I built a fully instance-based universe:

  • The ship scene is instanced: infinite ships for infinite players

  • Every player gets their own instanced world scene

  • Dynamic scene loading using Unity Netcode for GameObjects

  • Safe movement of players between scenes using:

    • SceneManager

    • NetworkObject ownership

    • RPC-driven teleport

    • Scene events + OnLoadComplete

    • Custom world manager system

    • Cross-scene spawn points

World Instance Manager

I built:

  • Scene ownership tracking

  • Player permission lists (allowed party system)

  • Spawn point registration

  • NavMeshSurface lookup & building

  • Runtime world navmesh rebuild on terrain generation

NavMesh Across Scenes

The hardest part of this year:

  • Switching NavMeshAgents between scenes

  • Removing old navmesh data (ship → world)

  • Building runtime navmesh per-world

  • Handling prefab-based NavMeshSurface

  • Fixing agents pathing back toward the ship

  • Ensuring players exist on correct nav layers

This is now one of the most advanced multiplayer scene systems I’ve ever seen or rather made.

4. Player Systems & Controls

Movement & Combat

  • Point-and-click ARPG style movement

  • Click-to-attack

  • Enemy spawning 

  • Combat system with:

    • Damage

    • Resistances

    • Critical hits

    • Logging


Inventory & Spell Systems

Including:

  • Drag + drop

  • Spell slot icons

  • Dynamic sprite loading

  • Stack size display

  • Real item stats and resistances that work when equipped

Equipment & Resist Logic

I built:

  • Pressure resistance

  • Cold, heat, EMP, gamma, wind

  • Energy shield system

  • Movement speed changes based on stats

  • Proper reduction math (buggy at times but fixed over the year)

5. Environment Simulation

Planets affect the player using real physics:

Environmental Hazard System

  • Atmospheric pressure damage

  • Solar radiation damage

  • Gamma radiation

  • Heat & cold effects

  • Wind force system (apply forces to player Rigidbody)

These connect directly to:

  • Gear resistances

  • Combat logs

  • UI alerts

I made the planets alive and deadly.

6. Combat Log & Chat

I built:

  • Multi-channel chat window

  • Combat log window

  • Logging:

    • Player attacks

    • Resistances mitigating environment damage

    • Enemy attacks

    • World hazard messages

7. Visual Systems

I built multiple custom visuals:

  • Energy shield concept (Halo-inspired)

  • Material-based health/mana orbs

  • Status icons for resistances

  • Sprite sheets for environmental icons

8. Editor Tools, Debugging & QoL

I built and debugged:

  • Networked player spawning

  • Scene fix for players not appearing

  • Dynamic loading indicators

  • Error logging

  • Cross-scene references

  • Rebuilding navmesh after terrain bake

  • Fixing world tile seams

  • Fixing pathfinding on procedural terrain

I have also overhauled code structure dozens of times.

Short-Term Focus (Current Workload)

The immediate goal is to connect all existing systems and make sure they function together reliably. This includes:

  • Ensuring scene transitions (ship → world → ship) work with correct NavMesh assignment.

  • Verifying the portal system, player placement, and AI/navigation logic behave properly across scenes.

  • Making sure each subsystem—movement, environment interaction, atmosphere effects, inventory, spells, gear systems, etc.—is synced and functional within the same gameplay loop.

This phase is about debugging, stability, and closing all gaps between the core systems already built.

Mid-Term: Vertical Slice

Once systems are talking to each other correctly, the next step is to create a polished vertical slice of the game.

This means:

  • A fully playable, representative chunk of the game.

  • All core loops in place: traveling, exploring, combat basics (if applicable), stats/resistances, and interactions.

  • UI functioning and readable.

  • Scene transitions smooth and reliable.

  • No major bugs in the slice.

This is the moment where the project stops being a prototype and becomes a proof-of-game.

Next Step After Vertical Slice

Once the vertical slice is stable:

1. Improve Visual Presentation

  • Better environment visuals

  • Animated effects (energy shield, winds, resistance VFX, spell icons, etc.)

  • Better materials, lighting, and feedback cues

  • More polished characters and animations

2. Add Audio Pass

  • Interaction sounds

  • Weather/planet ambience

  • Portal effects

  • Footsteps, wind, pressure, shield hits

  • Combat audio 

This step adds “punch” to the gameplay so it feels like a game.

3. Player Experience Expansion

  • Character selection screen

  • New character types or classes

  • Proper login & account handling (basic authentication, saving player loadouts, etc.)

  • Smooth onboarding and tutorialization

4. Finalize the Vertical Slice

Tie all the above together so the slice looks and feels like a polished early section of the full game.

These aren’t required, but they’re common parts of a vertical slice and might be worth noting:

  • Basic enemy AI 

  • Basic crafting or loot

  • Initial balance pass for stats, resistances, movement speeds, etc.

  • Networking verification: handle disconnects, respawns, scene desync edge cases

  • Build pipeline: be able to push test builds easily

  • Performance pass: fix expensive generation calls, heavy VFX, etc.

Any Questions /comments drop a line I will answer when I can. Comments are turned on.

Download ExoSphere
Leave a comment