
By the end of part 3 the game ran. You could grow monsters, steal gear and clear story chapter 1. The problem was that someone opening it for the first time had no idea what to do. Lots of screens, lots of menus, zero explanation.
(If you're new here: Dungeon Division is a mobile dungeon defense game where adventurer parties raid your dungeon and you place monster staff on each floor to stop them.)
So on September 18 I started with a tutorial. That day had 40 commits. The 19th and 20th had none, and the first commit on the morning of the 21st was a doc of notes I'd taken while playing on my phone. This part covers those four days. As always, the images are only things made at the time.
Starting with the tutorial
A new game gives you two Ember Slimes, a Coral Crab, a Moss Golem and the final boss Naia. Before this, a new save still came with the 8 prototype monsters and an empty boss slot, so that day I made it match the design. Nothing is placed for you on purpose. The first placement should be the player's.
I laid the tutorial out in 9 steps.
| Step | What happens |
|---|---|
| T01 Posting | Prologue: Mir from HR opens with "Congratulations on your posting to the Dungeon Division of Netherworld Inc." |
| T02 First guests | Alert that the first adventurers are coming, the defend button, jump to story 1-1 |
| T03 Placement | Shows the enemy is a 3-member Nature party, has you place monsters in slots |
| T04 First defense | Locked at 1× speed. "Skills fire automatically when the cooldown fills." Try Rockfall |
| T05 Settlement | Loot, Notoriety and MVP explained |
| T06 Level up | The secretary slime appears; level one monster to Lv.2 |
| T07 Hiring | Approve the memo in the in-tray, one free hire |
| T08 Dungeon tab | Tour the dungeon by elevator, end on the placement screen |
| T09 Matchups | See the Water party in 1-2 and pick Nature monsters |
I drew speech bubbles, a finger pointer and highlight frames, and made the guide portraits that day: the secretary slime and an HQ guide.

The first full run kept getting stuck
Every rule check passed, but when I actually clicked through from start to finish, the run kept getting stuck. Around 10 a.m. I had an AI tool drive the editor's play mode from a fresh save all the way to T08 and fixed the spots one by one.
- On the placement step you could pick up a monster but had nowhere to put it. The tutorial blocks touches outside the highlighted area, and it had highlighted the monster list while dimming the slots.
- Placing a single monster advanced to the next bubble, so the first defense had to be fought with one monster.
- Stage 1-1 normally ends on floor 1, but the bubble waiting for "Heading down to floor 2" stayed on screen, sitting over the result button.
More turned up when I played it again in the afternoon. Using Rockfall twice ended 1-1 on floor 2, so you never saw the boss floor. I limited powers to one use in the first defense only. Tapping the free hire finished the step instantly and wiped the hiring animation. And the skip button sat right next to "Next," so I moved it to the top-right corner.
I also added a "Restart from scratch" button to the development build settings. Before that, seeing the tutorial from the beginning meant deleting the save file by hand.
Dev notesDeadlocks in forced-input tutorials
Forced tutorial steps eat any touch outside the highlight. But a step like placement, which needs two taps in two places (list and slot), always deadlocks if you highlight only one. So drag bubbles no longer block input, and the step advances on a "monster placed" event.
Bubbles that wait on battle ("This is floor 2" and so on) got a close button. Closing one only hides the bubble. The step still advances on its original event. If closing skipped to the next bubble, you'd get "This is floor 2" while still on floor 1. One rule decides which bubbles get a close button, and a check verifies that the 3 battle-waiting bubbles have one while Rockfall-tap and "Next" bubbles don't.
For the power limit, the check spams Rockfall at every start time and confirms it only fires once and the run still reaches Naia and wins.
Mir from HR and the company glossary
That afternoon I wrote a separate reference doc for the story script: Netherworld Inc.'s org chart, characters, a company glossary and tone rules.
Netherworld Inc. is a public corporation and the chairman is the Demon King, who never appears. He only shows up as a stamp in the approval box and a portrait. The player is the manager of Dungeon 7 in the Dungeon Division, nicknamed the "deficit dungeon." Memos come from HQ's planning office, and the chapter 2 rival is the Trap Division, which is after the Dungeon Division's budget. HQ tracks three numbers: escape rate (share of adventurers who leave alive, target 0%), revenue and industry reputation.
I also pinned down how the jokes work. HQ is stiff, the secretary is practical, and only the adventurers are dead serious. The laugh comes from the temperature gap between the three, so I wrote that if anyone borrows another's tone, it falls apart.
My favorite part was the table that gives every game system a company word. Screen labels keep the plain system terms like "assign" and "defend," and the company words appear only in dialogue and memos.
| System | In dialogue and memos |
|---|---|
| Adventurer party | visitors, guests |
| Party wiped | Escape rate 0% ("shared as a best practice") |
| Dungeon breached | incident, complaint ("please submit an incident report") |
| Level up | training |
| Awakening | promotion ("Moss Golem, promoted to assistant manager") |
| Gear / looting | supplies / recovering lost property |
| Excavation | building extension |
| Lineup preset | shift roster |
I set up the characters too. Mir from HR is friendly but goes strictly by the manual and adds "Congratulations!" even to bad news. At first, the HQ guide art was standing in for Mir in the tutorial. At 3:51 p.m. I drew a proper will-o'-the-wisp Mir, and 20 minutes later redrew Mir with sparkly eyes to match the secretary's style. In the evening I drew the chapter 2 rival, Director Gremlin.

The same day I wrote the script for all 12 stages of chapter 2, "Quarterly Review." There's also a rule that the secretary's lines can't depend on a specific species. I might swap the secretary for another monster later, so lines like "I'll go wake the slimes" are banned.
The app icon
Around 2 p.m. I made the app icon. I pulled four candidates: the secretary slime under an arch, a slime peeking through a door gap, a horned iron door with weapons, and a staff member holding a key. I picked the first one, and exported Android adaptive, round and legacy versions.

Switching progression to the story
At 2:11 p.m. I bumped the design doc to v0.3. This was the biggest decision of the day.
The original plan made Notoriety and dungeon level the backbone. You earned Notoriety in free defense, expanded the dungeon by excavating, and features opened along the way. The trouble is that it leaves players unsure what to do right now. So I moved the backbone to story chapters. The goal is always one thing: clear the next stage. New features open through HQ approval when you clear stages. Dungeon level only grows structure like floors, slots and boss escort seats. Free defense, business, facilities and hiring became places you go to grow when the story stops you.
I built the walls on purpose. 1-6, 1-8 and 1-10 became "wall" stages with a wall marker on the map and hints. Lose at a wall and the result screen shows up to 3 growth recommendation cards: unapproved business earnings, leveling the weakest placed monster, better gear sitting in storage, a free hire, free defense. Tap one and it finishes settlement and takes you there. Lose at the same wall three times in a row and the secretary says something.
Wall difficulty was tuned with the simulator. It assumes a story-only player and runs chapter 1 through real settlement. Regular stages had to sit at 90%+ win rate, walls at 40% or less, rising to 85%+ after one day of growth (15 free defenses plus business). Running it showed that with looted gear and real gold flowing in, the old walls were all easy, so I raised wall adventurer levels: 1-6 from 8 to 11, 1-8 from 6 to 9, 1-10 from 14 to 16.
I recalculated the economy as well. Each dungeon title (Unknown, Rumored, Infamous…) was tuned to take 1, 2, 3, 4 and 5 days, by cutting costs and leaving income alone. In part 3 I said the gold for Lv.1 to 70 dropped to 132,000. One day later I cut it again, to around 16,000.
Playing it on my phone
The 8:48 a.m. commit on the 21st isn't code, it's a doc. I'd installed the game on an Android phone and played until the 1-6 wall stopped me, plus free defense, business and facilities, and wrote everything down. The top of the doc says "Causes are guesses, code not checked yet."
There were 4 bugs.
- Pressing the phone's back button just closed the app.
- Losing a free defense restarted the first tutorial from the beginning.
- After that, every free defense ended with "Go to office" popping up.
- Tapping the recommended lineup in story mode produced a lineup that broke the stage's restrictions.
And 7 rough spots. Story restrictions were hard to notice. The monster list at the bottom scrolled sideways, which felt awkward. It wasn't clear when a battle had ended, and the settle button was hard to see. There was no way to see how many Soulstones you had. Business and facilities had no explanation on first visit. The facility screens all looked the same.
Free defense was also way too easy. Stuck at the 1-6 wall, I ran free defenses and every adventurer went down on floor 1. Two ideas came out of that: show around four parties when you enter free defense and let you pick one, and cap daily entries with tickets.
Everything I fixed that day
That day had 19 commits. All 4 bugs were fixed before 10 a.m.
The back button problem was Android's newer back gesture setting (Predictive Back). It was enabled, so the OS took the key first and closed the app before the game's own "back" handling ever saw it. I turned that off and made unconfirmed quit requests go back one screen instead.
The tutorial restart was my own mistake. I'd attached the "rewind the tutorial if you lose the scripted 1-1 defense" rule to every loss. So any free defense loss wiped tutorial progress. Bug 3 was a side effect of that.
The recommended lineup had two causes. The recommender knew nothing about stage restrictions, and chapter 1 judges lineups as if you had 6 monsters even as the dungeon grows, while the recommender filled up to the dungeon's cap. Past dungeon Lv.3, every chapter 1 recommendation was being rejected.
Dev notesRepairing saves that were already broken, and checking every recommendation
Saves where the tutorial got rewound are fixed automatically on load. If there's a clear record for a stage after 1-1, the forced tutorial must have finished, so those saves get every step marked complete again. If the player lost 1-1 itself, nothing past it is cleared, so it rewinds as originally designed.
The recommender now judges using the rules at that stage and places monsters needed for restrictions like "at least n" first. After the fix I checked that recommendations could start a defense across all 22 stages at dungeon Lv.1, 3, 5 and 7. Before the fix, 4 to 13 were rejected at each level under the same conditions. That full sweep lives on in the story checks. If your monsters simply can't meet a restriction (only 1 Nature monster for 1-6, say), the recommendation popup now says "Your staff can't meet this restriction: at least 3 Nature (1/3)."
The text size on the placement screen sent me down a hole for a bit. The pixel font snaps to two sizes, 11px and 14px, and enlarging inside a text with size tags stretches the bitmap and blurs it. So sizes are split into separate text objects, and emphasis uses color only. I also measured the strings for all 22 stages to make sure they fit in the box.
While I was at it, I changed the restriction policy. Unlike stars, restrictions block you from starting a defense at all. Putting those on regular stages was just frustrating. So restrictions stayed only on the 3 wall stages (1-6: at least 3 Nature, 1-8: 4 or fewer monsters, 2-8: 1 awakened), and the rest became star conditions. The Fire ban on 1-5 "Frost Hunt" is now "earn a star by winning without Fire." HQ memo lines changed from "prohibited" to "bonus" too.
I worked through the rough spots the same day.
- The card at the top of the story placement screen got a bigger stage name, and conditions now show a green ✓ when met and a red ✕ when broken. A slot that breaks a restriction on its own gets a red background, and list cards dim.
- The monster list became a 4-column vertical grid.
- When a battle ends, the screen darkens and shows success or failure, why it ended and how long it took, with a big "See Settlement" button.
- Soulstone counts for all five elements are pinned above the monster list.
- Business and the 5 facilities show a guide on first visit.
- Every facility got its own interior art.

For free defense I wrote a doc first and then changed it. When you enter, you compare four parties (Easy, Normal, Challenge, High Risk) and pick one. Each has different power and rewards. The reason it had been easy was that visiting parties were decided by Notoriety alone, so the same old guests kept coming even as the story moved on. Story progress counts now. Running 20 times with a roster right before 1-6, the old version ended on floor 1 every time, while the Challenge party never once ended on floor 1. I kept the easy party on purpose, for farming.
Tickets are 20 a day. They refill to 20 at 5 a.m., with no carry-over and no hourly recharge. My feedback notes also said "recharge 1 per hour," but I dropped it when I cleaned things up.

In the afternoon I added guild trends and nemeses too. The element of incoming parties shifts based on the auras you used in your last 20 defenses, and parties that flee or break through come back as nemeses, stronger, 3 to 6 defenses later.
All of this was verified in the editor and with automated checks, though. The doc from that day says "needs recheck on a real Android device."
Story art that afternoon, too
That afternoon I also gave each story cutscene its own pixel art and added lobby theme music. At night I hooked up a sound effect system that changes with the situation.

And that night I took the monster roster to 50 species. More on that next time.
Key commits, 2026-09-18 to 21
- Starting monsters, prologue, tutorial T01-T09
- Scripted first defense, fixes for stuck spots found while running it
- Economy retuned for 1/2/3/4/5 days per title
- 10 more monsters, art by rarity
- Design doc v0.3, progression moves to the story
- App icon
- Story script reference (org chart, characters, glossary)
- Mir's portrait
- Wall difficulty via story progression simulation
- Chapter 2 (12 stages), Director Gremlin
- Android playtest feedback written up
- Back button and tutorial rewind fixes
- Restriction-aware recommendations, placement screen cleanup
- Playtest UX fixes, opponent choice in free defense
- Free defense tickets
- Story cutscenes, lobby music
- Situational sound effects
Looking back on the four days
The 18th was the day I looked at what I'd made alone as if I were someone playing it for the first time, and the 21st was the day I played it on a real phone. Both ended in roughly the same place. Even when every check passes, tapping through by hand always finds a spot where you get stuck. Still, splitting the feedback into bugs, rough spots and ideas meant I could deal with most of it in a single day.
Next up: the roster grows to 180 monsters and the combat finally gets some weight, September 22-23. If you want to see the game first, there's the game page (in Korean).

NOW AVAILABLE
Dungeon Division
Heroes are intruders, monsters are staff. Save Dungeon No. 7 from being shut down.
Available on the Korean App Store (iPhone/iPad), with English in Settings. Android is not out yet.