An API Wrapper of Neal's Infinite Craft game in Python for people to implement in their programs.
Important
The library is currently broken. If you pair two elements you get a 403 Forbidden
error. A fix for this is currently being made.
- Stores elements in a neatly indented JSON file
- Starts with the four main elements: Water, Fire, Wind, Earth
- Uses
neal.fun
's Infinite Craft API to pair elements together - Built-in ratelimiting handler
- Custom API support
- Asynchronous library
- Conveniently access discovered elements
Tip
Need help? Join our Discord community!
» https://discord.gg/FF2fSN2sJd
Important
Python 3.10 or above is required. Any versions below will not work.
To install, run:
pip install infinite-craft
To update, run:
pip install -U infinite-craft
Note
If pip
is not on PATH, you can use:
python3 -m pip
(for Linux/MacOS) orpython -m pip
(for Windows) instead.
import asyncio
from infinitecraft import InfiniteCraft
async def main():
async with InfiniteCraft() as game: # automatically start session and end session on async with end
print(f"Pairing elements: {game.discoveries[0]} and {game.discoveries[1]}")
result = await game.pair(game.discoveries[0], game.discoveries[1]) # Pair Water and Fire
print(f"Result: {result}")
asyncio.run(main())
import asyncio
from infinitecraft import InfiniteCraft
game = InfiniteCraft()
async def main():
await game.start() # Start InfiniteCraft Session
print(f"Pairing elements: {game.discoveries[0]} and {game.discoveries[1]}")
result = await game.pair(game.discoveries[0], game.discoveries[1]) # Pair Water and Fire
print(f"Result: {result}")
await game.close() # Close InfiniteCraft Session
asyncio.run(main())
You can find more examples in the documentation.
Documentation is coming soon™️
While the documentation is not ready, everything is documented well in the code with docstrings which you can see in an IDE like Visual Studio Code.
You can also see the in-development documentation page here.
This library basically contacts the URL:
https://neal.fun/api/infinite-craft/pair?first=element+name&second=element+name
Tricks it with some headers, and handles everything accordingly.
Everything is handled in a user-friendly manner and asynchronously, so it should be really easy to use it in your programs.
-
Release version 1.0.0 on PyPI -
Make a discord server for supportJoin our community! https://discord.gg/FF2fSN2sJd -
Add a runnable and configurable CLI mock API server -
Make docs - Fix 403 Forbidden Error
- Finish docs
- Make a playable Infinite Craft CLI game (interactive, probably)
View the MIT License license that comes with this library.