Skip to content

Bailie-L/seth-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

19 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

CI

๐Ÿฃ Seth Bot

A Discord Tamagotchi with Permanent Death

Seth is a virtual pet Discord bot where death is permanent. No respawns. No second chances. When your Seth dies, it's gone foreverโ€”and you inherit a new generation carrying the weight of your failure.

Python discord.py License


๐Ÿ“ธ Screenshots

A Seth is Born

Birth Announcement

Caring for Your Seth

Feed and Heal

Status Check & Mining

Status and Mining

Resource Gathering

Mining Resources

NPC Drama & Voting

Village Drama

The Graveyard โ€” Permanent Death

Death Notifications

๐ŸŽฎ Features

๐Ÿ’€ Permanent Death & Bloodlines

  • Death is forever โ€” No resurrection, no undo
  • Generational inheritance โ€” Each death spawns a new Seth (Gen 2, Gen 3...)
  • Public death announcements โ€” Everyone knows when you fail
  • Graveyard records โ€” Every Seth's legacy preserved

๐Ÿ– Survival Mechanics

  • Health & Hunger decay โ€” Your Seth deteriorates every 2 minutes
  • Resource management โ€” Mine for food, medicine, and coal
  • Feed and heal โ€” Use resources to keep your Seth alive
  • ~50 minute lifespan โ€” Unfed Seths die in under an hour

โ›๏ธ Economy System

  • Mining โ€” Gather resources with cooldowns
  • Trading โ€” Exchange resources with other players
  • Premium perks โ€” Faster mining for premium role holders
  • Inventory tracking โ€” Persistent resource storage

๐ŸŽญ NPC Drama Engine

  • 5 Village NPCs โ€” Luna, Marcus, Felix, Aria, and Thorne
  • Dynamic relationships โ€” NPCs form friendships, rivalries, and romances
  • Server-wide events โ€” Drama unfolds every 5 minutes
  • Player voting โ€” Your votes shape NPC destinies

๐Ÿ“Š Social Features

  • Leaderboards โ€” Compete for longest-lived Seth
  • Server rankings โ€” See all Seths in your server
  • Compare stats โ€” Measure your Seth against others
  • Public shaming โ€” Death announcements with F reactions

๐Ÿ“œ Commands

Core Commands

Command Description
!start [name] Create your Seth (or inherit after death)
!status View health, hunger, generation, and age
!kill Instantly kill your Seth (testing)

Survival Commands

Command Description
!mine Gather food, medicine, coal (60s/30s cooldown)
!feed Use 1 food โ†’ Reduce hunger by 30
!heal Use 1 medicine โ†’ Restore 25 health
!inventory Check your resources

Social Commands

Command Description
!top Leaderboard of longest-lived Seths
!server List all living Seths in server
!compare @user Compare your Seth to another
!trade @user [resource] [amount] Trade resources

Drama Commands

Command Description
!relationships View all NPC relationships
!npc [name] View individual NPC details
!help Full command documentation

โš™๏ธ How It Works

Decay System

Every 2 minutes, your Seth:

  • Gains +5 hunger
  • Loses -1 health (base decay)
  • Loses -1 additional health if hunger โ‰ฅ 50
  • Loses -3 additional health if hunger โ‰ฅ 80
  • Dies at 0 health

Health States

โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ 100% [EXCELLENT]
โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘  80% [GOOD]
โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘  60% [FAIR]
โ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  40% [POOR]
โ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  20% [CRITICAL]

Hunger States

0-20:   SATISFIED
21-40:  PECKISH
41-60:  HUNGRY
61-80:  STARVING
81-100: DESPERATE

๐Ÿ—๏ธ Project Structure

project_seth/
โ”œโ”€โ”€ bot.py              # Main bot runner
โ”œโ”€โ”€ config.py           # Configuration settings
โ”œโ”€โ”€ database.py         # SQLite schema
โ”œโ”€โ”€ cogs/
โ”‚   โ”œโ”€โ”€ seth_core.py    # Birth/death/status
โ”‚   โ”œโ”€โ”€ economy.py      # Mining system
โ”‚   โ”œโ”€โ”€ maintenance.py  # Feed/heal commands
โ”‚   โ”œโ”€โ”€ decay.py        # Automatic decay loop
โ”‚   โ”œโ”€โ”€ leaderboard.py  # Rankings
โ”‚   โ”œโ”€โ”€ public.py       # Server/compare features
โ”‚   โ”œโ”€โ”€ trading.py      # Resource trading
โ”‚   โ”œโ”€โ”€ drama.py        # NPC drama engine
โ”‚   โ””โ”€โ”€ help.py         # Documentation
โ””โ”€โ”€ utils/
    โ””โ”€โ”€ formatting.py   # Visual bar system

๐Ÿš€ Self-Hosting

Requirements

  • Python 3.10+
  • Discord Bot Token

Installation

# Clone the repository
git clone https://github.com/Bailie-L/seth-bot.git
cd seth-bot

# Create virtual environment
python -m venv venv
source venv/bin/activate  # Linux/Mac
# OR: venv\Scripts\activate  # Windows

# Install dependencies
pip install -r requirements.txt

# Configure environment
cp .env.example .env
# Edit .env with your Discord token

# Run the bot
python bot.py

Environment Variables

DISCORD_TOKEN=your_discord_bot_token_here
BOT_PREFIX=!

Discord Setup

  1. Create application at Discord Developer Portal
  2. Enable MESSAGE CONTENT INTENT under Bot settings
  3. Invite with permissions: Send Messages, Embed Links, Add Reactions

๐Ÿ“Š Technical Details

Metric Value
Lines of Code ~3,000
Feature Modules 9 cogs
Database Tables 8
Commands 20+
Framework discord.py 2.6.0
Database SQLite (aiosqlite)

๐ŸŽฏ Recommended Server Channels

  • #seth-home โ€” Main gameplay
  • #seth-graveyard โ€” Death announcements
  • #village-drama โ€” NPC drama events

๐Ÿ“ License

MIT License โ€” See LICENSE for details.


๐Ÿค Contributing

Contributions welcome! This is a portfolio project demonstrating:

  • Async Python programming
  • Discord bot architecture
  • SQLite database design
  • Game loop mechanics
  • Modular cog system

Built with ๐Ÿ’€ by Bailie-L

About

Discord Tamagotchi with permanent death mechanics

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages