Skip to main content

Introduction

PyPI version

Terrabot is a Terraria bot API written in Python.
It is designed to be easy to use and uses the event-listener pattern.

Installation

Install the module using pip:

pip3 install terrabot

Current features

  • Joining servers

  • Chatting

  • Triggering various events, like joining, tiledata and itemdrops

  • Parsing server data to keep classes up-to-date

  • Moving the bot by teleporting

Examples

The following is a very basic bot, which will connect and handle chat.


from terrabot import TerraBot
from terrabot.events import Events

#Create a TerraBot object
bot = TerraBot('127.0.0.1')
event = bot.get_event_manager()

#Connect a function to an event using a decorator
@event.on_event(Events.Chat)
def chat(event_id, msg):
    #Do something with the message
    #In this case, stop the bot if the word "Stop" occurs
    print(msg)
    if "stop" in msg:
        bot.stop()

#Start the bot
bot.start()

#And wait
while bot.running:
pass

More examples can be found under the ‘examples’ directory. Also check the wiki for more information about the inner workings of the bot and how to interface with it.

Contributing

If you want to contribute, that’s great! I would really appreciate the help. Just send a pull request and i’ll quickly check and accept it. These are some areas that need work:

  • NPC packet parsing

  • Item dropping

  • Teleporting other players (>:D)

  • Synchronizing packets like health and update-player-packets

  • Placing tiles (!)

For information about the packets, see this link.

Release files for terrabot 1.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for terrabot 1.0.3
File Size Uploaded
terrabot-1.0.3.tar.gz 11.8 kB Details

Release files / terrabot-1.0.3.tar.gz

Download URL terrabot-1.0.3.tar.gz
Size 11.8 kB
Tags Source
SHA-256 checksum
How to use checksums
970df3020df5c2a3de5e8ac8c32dbbeaf46f960c1454b378f98196aac6f05b8d
BLAKE2b-256 checksum
How to use checksums
c16d9d66ca75a6b9aaf93593aed4d8ba47586e9f2bfe47678b27e01bc8e8f46d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.0.3 This release

1 release file

1.0.2

1 release file

1.0.1

1 release file

1.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page