<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/oVhZrhtbI" -->

---
title: I Built a Pixel Art Village Where AI Characters Have...
description: A developer built Persona World, an open-source pixel art village simulation featuring 12 AI characters with dynamic emotional states. Each character has a...
canonical: https://daily.dev/posts/i-built-a-pixel-art-village-where-ai-characters-have-real-emotions-ovhzrhtbi
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: I Built a Pixel Art Village Where AI Characters Have Real Emotions | daily.dev
og:description: A developer built Persona World, an open-source pixel art village simulation featuring 12 AI characters with dynamic emotional states. Each character has a...
og:url: https://daily.dev/posts/i-built-a-pixel-art-village-where-ai-characters-have-real-emotions-ovhzrhtbi
og:image: https://api.daily.dev/og/posts/oVhZrhtbI.png
og:image:alt: I Built a Pixel Art Village Where AI Characters Have Real Emotions
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# I Built a Pixel Art Village Where AI Characters Have Real Emotions

**[DEV](https://daily.dev/sources/devto)** · 4 min read · 73 upvotes · 4 comments

## Summary

A developer built Persona World, an open-source pixel art village simulation featuring 12 AI characters with dynamic emotional states. Each character has a HEXACO personality profile (six dimensions) and uses a 9-dimensional cognitive appraisal model to compute emotional responses in VAD (Valence-Arousal-Dominance) space. Personality shapes how characters react to interactions like praise or betrayal, relationships accumulate over time, and mood shifts gradually rather than instantly. The tech stack uses React 19, Canvas 2D, TypeScript, and the molroo SDK for emotion computation. The project is open source with a live demo available, and the author invites discussion on continuous emotion models in games.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://dev.to/miss_terry/i-built-a-pixel-art-village-where-ai-characters-have-real-emotions-ccg>

## Community discussion

Top comments from developers on daily.dev.

**@husseinkizz** · 1 upvotes

> Interesting

**@azuzard** · 0 upvotes

> But the tavern-family is over 1000 characters, so it’s fine—it’s useful for the clawbot projection.

**@connery\_tran** · 0 upvotes

> Cool experiment, I'll definitely look into replicating something similar

**@jliter85** · 0 upvotes

> This is where AI in games gets interesting, moving from scripted reactions to continuous emotional systems. The real value isn’t the sim itself, it’s the framework for believable, evolving behavior.

## Similar posts on daily.dev

- [Building a Nostalgic 8-bit Universe with Modern Tech: A Vibe Coding Journey](https://daily.dev/posts/building-a-nostalgic-8-bit-universe-with-modern-tech-a-vibe-coding-journey-bmjowhcuw) · Codrops · 52 upvotes · 5 comments
- [Persona Atlas: Mapping How Famous Minds Think](https://daily.dev/posts/persona-atlas-mapping-how-famous-minds-think-adsfxhz5z) · Hugging Face · 1 upvotes · 0 comments

---

Tags: [#ai](https://daily.dev/tags/ai), [#react](https://daily.dev/tags/react), [#game-development](https://daily.dev/tags/game-development)

[View this post on daily.dev](https://daily.dev/posts/i-built-a-pixel-art-village-where-ai-characters-have-real-emotions-ovhzrhtbi)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"I Built a Pixel Art Village Where AI Characters Have Real Emotions","url":"https://daily.dev/posts/i-built-a-pixel-art-village-where-ai-characters-have-real-emotions-ovhzrhtbi","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/i-built-a-pixel-art-village-where-ai-characters-have-real-emotions-ovhzrhtbi"},"datePublished":"2026-03-06T16:09:12.841Z","dateModified":"2026-03-06T16:09:33.681Z","description":"A developer built Persona World, an open-source pixel art village simulation featuring 12 AI characters with dynamic emotional states. Each character has a...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/4fe1e346fe05d692e275d2cabce25999?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/4fe1e346fe05d692e275d2cabce25999?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"DEV","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"DEV","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto","url":"https://daily.dev/sources/devto"},"commentCount":4,"discussionUrl":"https://daily.dev/posts/i-built-a-pixel-art-village-where-ai-characters-have-real-emotions-ovhzrhtbi","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":73},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":4}],"keywords":"ai,react,game-development","timeRequired":"PT4M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"DEV","item":"https://daily.dev/sources/devto"},{"@type":"ListItem","position":3,"name":"I Built a Pixel Art Village Where AI Characters Have Real Emotions"}]}
{"@context":"https://schema.org","@type":"WebPage","@id":"https://daily.dev/posts/i-built-a-pixel-art-village-where-ai-characters-have-real-emotions-ovhzrhtbi","comment":[{"@type":"Comment","text":"Interesting","datePublished":"2026-03-10T14:29:39.491Z","url":"https://daily.dev/posts/oVhZrhtbI#c-Kjxa2AV6J","author":{"@type":"Person","name":"Hussein Kizz","url":"https://daily.dev/husseinkizz","image":"https://media.daily.dev/image/upload/s--bqCp79lk--/f_auto/v1704865561/avatars/avatar_WgJOIEdxX"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":1}},{"@type":"Comment","text":"But the tavern-family is over 1000 characters, so it’s fine—it’s useful for the clawbot projection.","datePublished":"2026-03-13T05:39:06.260Z","url":"https://daily.dev/posts/oVhZrhtbI#c-0jGJHn4tW","author":{"@type":"Person","name":"Sema toghem","url":"https://daily.dev/azuzard","image":"https://avatars.githubusercontent.com/u/11573007?v=4"}},{"@type":"Comment","text":"Cool experiment, I’ll definitely look into replicating something similar","datePublished":"2026-03-13T03:50:28.913Z","url":"https://daily.dev/posts/oVhZrhtbI#c-gdYjLvHfj","author":{"@type":"Person","name":"Connery Tran","url":"https://daily.dev/connery_tran","image":"https://lh3.googleusercontent.com/a/ACg8ocJWZvASKOCNCufM8gCYomiux90QwALGv0q_H_BY_1yQ-Nh-p4XI=s96-c"}},{"@type":"Comment","text":"This is where AI in games gets interesting, moving from scripted reactions to continuous emotional systems. The real value isn’t the sim itself, it’s the framework for believable, evolving behavior.","datePublished":"2026-03-17T03:12:32.232Z","url":"https://daily.dev/posts/oVhZrhtbI#c-941xTqWvx","author":{"@type":"Person","name":"John Liter","url":"https://daily.dev/jliter85","image":"https://media.daily.dev/image/upload/s--DQ2HUrO4--/f_auto/v1785100315/avatars/avatar_yHf9cPdgTQEtokv6d8qhM?_a=BAMAMicg0"}}]}
```

