A downloadable game

Download NowName your own price

AI IMPLEMENTATIONS:

Navigation (Pathfinding & NavMesh)

The mesh (room) contains Points of Interest: Food Bowl, Bed, etc.

In the room there are many obstacles (table, TV, sofa) and the cat must use NavMesh to

recalculate his path avoiding the obstacles.

The cat can adopt different behaviours:

- Wander: Randomly navigates through the room

- Pursuit: If the player throws a toy or puts food in the bowl, the Cat enters Pursuit

mode to intercept the ball or eat the food.

Reinforcement Learning

The cat is a Reinforcment Learning agent.

Observations:

- Current levels of Hunger, Energy and Affection (0.0 to 1.0)

- Distance to the nearest POI

- Is the Player scolding?

Actions:

- Discrete Branch 1: Move to [Food, Bed, Sofa]

- Discrete branch 2: Action [Meow, Scratch, Eat, Sleep]

Reward Function:

- Eating when hungry: +1.0

- Scratching post: +0.5

- Scratching sofa: -1.0 If scolded by player.

The cat, for instance, can learn that scratching the sofa is risky while behaving well has

positive benefits.

Behaviour Trees

Priority 1: Emergency -> “Is my [Hunger, Sleep] under 0.5?” If yes, it triggers the NavMesh to

find the [Bowl, Bed]. If no, moves to the next branch.

Priority 2: Affection -> “Is my affection under 0.5?” If yes, the cat Meaws until is noticed by

the player. If no, continues to the next branch.

Priority 3: Free Will -> If the cat is safe, full, and loved, the ML-Agent takes over. The cat’s

trained brain will decide if he wants to nap, play, wander or scratch.

Personality Test

At the beginning of the game there is a personality test with multiple questions. We used an

apikey from openai to generate random questions inside unity. But they just generate once

and its not random between builds so it would actually been easier to just generate 10

questions with chatgpt online.

Depending on how the questions are answered, the player gets a cat between multiple

options with different appearance, name and personality.

THE ENVIRONMENT:

The living room is a closed box with 1 NavMeshSurface. It has different Points Of Interest:

- The Food Bowl: If its empty, it will not trigger anything into the cat, if the player fills it

and the cat is hungry he will eat.

- Furniture: Non interactable except for the sofa, which the cat can scratch. If the

player catches him he can scold him.

- Toys: The player can throw toys into the living room, and if the cat is happy he can

play with them.

- Cat Bed: The cat will use it if he’s sleepy.

THE PLAYER INPUTS:

The Player can:

- Pet the cat: If the cat has low affection or if he has been behaving well, the player

can pet the cat to teach him how to behave.

- Scold the cat: If the cat has been behaving badly (scartching the sofa), the player can

scold him so he learns he should not do that.

- Throw toy: Give the cat something to play with.

- Fill food bowl: TO let the cat eat when he’s hungry.

CORE LOOP

1. Monitor: Observe the Cat’s needs (Hunger, Energy, Affection, Boredom)

2. Interact: The player provides stimuli (Food, Toys, Discipline).

3. Learn: The cat’s ML-Agent brain updated its policy based on rewards and

punishment.

4. Evolve: The Cat develops unique habits.

Published 2 days ago
StatusReleased
AuthorPauGonzalez

Download

Download NowName your own price

Click download now to get access to the following files:

Catagochi.zip 51 MB

Leave a comment

Log in with itch.io to leave a comment.