Vibeleaderboard
Index / game
Visit github.com
Category
Entertainment
Rank
No. 2089Tools index

Previous survey · No. 2042 ·

Pricing
Open Source
Type
GAME
Builder
dimillian
GitHub
30 stars
Date

About

Dimillian's Diablo-like ARPG built with Love2D — pixel-art top-down dungeon crawler with classic mechanics.

What it does

Diablo2D is a playable action roguelike sandbox where movement, targeting, combat, loot, progression, potions, and spells interact in one running game. Keyboard and mouse controls drive a hero through roaming enemies, while randomized equipment and experience gains shape each fight.

Why it's ranked here

The project already connects many hard gameplay systems instead of presenting isolated demos. Combat events feed damage feedback, deaths, loot, and experience, while equipment affects calculated stats. Its own documentation still calls the world basic and several larger features remain targets, so treat it as active groundwork rather than a finished game.

What's good

The event-driven combat design keeps attacks, damage displays, deaths, and loot loosely connected. A reusable entity-component system supports efficient component queries across scenes. Input covers keyboard layouts and mouse movement, while targeting, cooldowns, enemy separation, knockback, potions, skills, and modal scenes form a coherent playable loop.

Tradeoffs

The inventory overlay is explicitly described as a stub, and the documented world is a basic sandbox. Procedural overworld runs, towns, vendors, shops, and deeper dungeon work appear as targets or open tasks. The initial automated tests focus on aggro helpers, so the stated test coverage is narrower than the gameplay surface.

How to use it well

Use it as a Lua and LÖVE reference project for studying entity-component gameplay architecture, event-based combat, randomized items, and layered game scenes. It suits developers prototyping or extending an action roguelike. It does not yet cover the needs of someone seeking a complete, content-rich commercial game or general-purpose engine.

Technical notes+

Readme.md documents LÖVE 11.x startup, controls, the ECS architecture, combat event flow, item generation, luacheck, Busted tests, and the balance-report command. AGENTS.MD adds architectural conventions: pure-data entities, component-set queries, centralized defaults, event-based system communication, cached resource loading, and tests under spec/. Diablo.love/main.lua wires LÖVE callbacks into input handling, a scene stack, CRT rendering, modal toggles, world-map controls, and save construction on quit. .luacheckrc selects the LÖVE standard, while .luarc.json targets LuaJIT and recognizes the LÖVE global.

Observed

Primary language
Lua, using the LÖVE framework and a LuaJIT editor runtime configuration.
Install surface
Install LÖVE 11.x or later, clone the repository, then run the project root.
Bundled launch option
The repository includes Diablo.love, which can be opened directly with LÖVE.
Interface
Graphical desktop game controlled through keyboard and mouse input.
Quality tooling
The documented workflow uses luacheck for linting and Busted for unit tests.
Architecture
A homegrown entity-component system organizes pure-data entities and component-querying systems.

Read from Readme.md, docs/README.md, AGENTS.MD, CLAUDE.MD, .luacheckrc, .luarc.json, MASTER_PLAN.MD, WORLD_GEN_PLAN.MD, IMPLEMENTED_FEATURES.MD, docs/index.html, .beads/README.md, .beads/config.yaml, .beads/issues.jsonl, Diablo.love/main.lua, .beads/metadata.json.

What it can do

  • Generate dungeon levels

    Game parameters and random seedProcedurally generated dungeon maps

  • Control character movement and combat

    Keyboard/mouse input commandsCharacter actions and animations

  • Manage character progression

    Experience points and skill choicesUpdated character stats and abilities

  • Generate loot drops

    Enemy defeats and treasure chest interactionsRandom weapons, armor, and items

  • Spawn and control enemies

    Dungeon area and difficulty settingsAI-controlled monsters with behaviors

  • Process combat calculations

    Attack commands and character/enemy statsDamage values and status effects

Tags

gamelove2ddiablodimillianarpg

Tech Stack

GLSLLua

Media

Diablo2D

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.