Skip to content

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Hook and Gun

Hook and Gun is a 2D top-down action roguelike / arena shooter built around a dual-purpose hook system, weapon stealing, enemy corruption, wave-based combat, and player evolution.

The game follows a constantly evolving invader who infiltrates a robotic production facility and attempts to escape by rising floor by floor through an elevator-based progression structure. The player destroys enemies, consumes their parts, gains levels, and evolves through stat upgrades and mechanical improvements.

This project is being developed as a Steam-oriented commercial game and currently has a playable build.


Overview

Hook and Gun focuses on fast-paced arena combat, responsive player control, and a hook mechanic that serves both combat and movement purposes.

The player fights through enemy waves, steals and corrupts enemy weapons, consumes enemy parts to level up, and chooses upgrades between rounds to evolve their build over time.

The project emphasizes modular gameplay systems, scalable Unity architecture, and clear separation between combat, movement, UI, spawning, abilities, and game flow.


Current Status

The project is currently in active development and is being prepared for a Steam release.

Core gameplay systems are implemented, including:

  • Player movement and combat flow
  • Dual-purpose hook mechanics
  • Weapon stealing and corruption
  • Enemy combat behaviors
  • Wave-based arena progression
  • Ability and stat upgrade systems
  • UI flow for upgrades, waves, cooldowns, and player feedback
  • Object pooling and runtime spawning systems

Further work is focused on content expansion, balancing, visual polish, Steam integration, and production-level refinement.


My Role

Solo Developer / Game Developer

Responsibilities include:

  • Gameplay programming
  • Combat system design and implementation
  • Hook mechanic architecture
  • Enemy behavior and attack systems
  • Ability and stat upgrade systems
  • Wave and arena progression
  • UI implementation
  • Project architecture and code organization
  • Debugging, balancing, and playtesting
  • Preparing the project for a future Steam release

Core Gameplay Loop

  1. Enter an arena floor.
  2. Fight robotic enemies using movement, weapons, and hook abilities.
  3. Steal, corrupt, and use enemy weapons.
  4. Pull enemy parts with the combat hook and consume them to gain experience.
  5. Level up by collecting enough parts.
  6. Spend earned levels on stat upgrades and mechanical improvements.
  7. Clear the wave and progress upward through the facility.

Key Features

  • 2D top-down arena shooter gameplay
  • Roguelike-inspired upgrade progression
  • Dual-purpose hook system
  • Combat hook for weapon stealing, enemy pulling, corruption, and scrap collection
  • Movement hook for wall traversal and damaging enemies caught in the path
  • Wave-based enemy encounters
  • Enemy behavior and attack systems
  • Boss, swarm, and special enemy encounter support
  • Ability and stat upgrade system
  • Biopunk / sci-fi / robotic visual direction
  • Playable build prepared for ongoing Steam development

Hook System

The hook system is one of the main pillars of the project. It is split into two primary modes:

Combat Hook

The combat hook supports offensive and utility-based interactions:

  • Steal weapons from enemies
  • Corrupt stolen weapons and use them against enemies
  • Pull enemies toward the player
  • Pull enemy parts and consume them for progression
  • Interact with combat targets in a context-sensitive way

Movement Hook

The movement hook focuses on mobility and positioning:

  • Pull the player toward walls
  • Create fast repositioning opportunities
  • Damage enemies caught between the player and the hook target
  • Support aggressive movement during arena combat

This split allows the hook to function as both a combat tool and a movement system without forcing both behaviors into a single rigid mechanic.


Technical Highlights

  • Modular gameplay architecture
  • VContainer-based dependency injection
  • Object pooling for runtime-spawned gameplay objects
  • ScriptableObject-driven configuration for gameplay data
  • Wave-based enemy spawning
  • Budget-based enemy selection and difficulty scaling
  • Ability and modifier system
  • Separate systems for player logic, enemies, UI, audio, pooling, and game flow
  • Context-sensitive hook interactions
  • Organized namespace and folder structure under the project domain
  • Designed with scalability and long-term development in mind

Ability and Upgrade System

The project includes a progression system where the player gains levels by consuming enemy parts and then spends those levels on upgrades between rounds.

The upgrade system supports both stat-based and mechanical improvements, allowing the player to evolve over the course of a run.

Examples of supported upgrade directions include:

  • Player stat improvements
  • Ability enhancements
  • Hook-related upgrades
  • Combat behavior modifiers
  • Weapon and projectile behavior changes
  • Build-shaping mechanical upgrades

Combat System

Combat is designed around fast player control, enemy pressure, and aggressive interaction through the hook system.

The combat system includes:

  • Enemy behavior logic
  • Enemy attack patterns
  • Player damage and feedback flow
  • Weapon stealing
  • Corrupted weapon usage
  • Runtime projectile and effect spawning
  • Hook-based combat interactions
  • Arena-based wave pressure

The goal is to make the player feel fluid, aggressive, and constantly rewarded for taking risks.


Enemy and Wave System

Enemy encounters are handled through a wave-based spawning structure.

The system supports:

  • Wave progression
  • Difficulty-budget based enemy selection
  • Enemy unlocking over time
  • Standard enemy encounters
  • Swarm-style encounters
  • Boss encounter support
  • Runtime spawning through pooled objects

This allows the game to scale encounter intensity while keeping the system extensible for future enemy types and arena variations.


Project Structure

Project Structure

Assets/ _HookAndGun/ Scenes/ Animations/ Art/ Audio/ Materials/ PhysicsMaterials/ Prefabs/ Presets/ ScriptableObjects/ Scripts/ ThirdParty/ NavMeshPlus/ TextMesh Pro/ Settings/

## Gameplay Preview

Gameplay Preview

Screenshots

Screenshot 1 Screenshot 2 Screenshot 3

How to Run

  1. Clone the repository.
  2. Open the project with Unity 6000.3.8f1.
  3. Open the main menu scene located at Assets/_Project/Scenes/MainMenu.unity.
  4. Press Play in the Unity Editor.

About

A Steam-oriented 2D top-down action roguelike built around dual hook mechanics, weapon stealing, enemy corruption, and wave-based arena combat.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages