PrismarineJS / mineflayer

Create Minecraft bots with a powerful, stable, and high level JavaScript API.
https://prismarinejs.github.io/mineflayer/
MIT License
4.96k stars 904 forks source link

fix: ambiguity #3172

Closed junaga closed 1 year ago

junaga commented 1 year ago

This software is for creating in-game NPCs. It would be less ambiguous to use the term "NPC" instead of "bot", in the repository description and the readme.md. Currently, the term NPC is not mentioned once in the readme.md.

Why "NPC"

With the normalization of gaming (video games) itself, in society, as a part of human culture. The term is becoming more and more used on social media, additionally as an insult, which recent metrics all document.

junaga commented 1 year ago

It took me personally, 2 minutes of searching/reading, to figure out the use case of this mod. I am not that old, 27 years.

extremeheat commented 1 year ago

I think you have a misunderstanding here. Non-playable characters (NPCs) are fake players (that can interact with current player) that assist in a game's story. They are used in Minecraft servers and the NPC entity do already exist inside Minecraft and can be created within the game with redstone or datapacks.

A bot is software that automates human tasks. An agent is something that works on behalf of something else. A bot, like a chatbot, can be powered by an AI agent or a even a human, like how prismarine-web-client is ran by controlling a mineflayer bot.

The joke you are mentioning is that as a server player for example, just by looking around the world you can't differentiate who around you is a human or not, so people that don't act human feel like NPCs, which are typically hard-coded into the game. But the server and even your vanilla client software can differentiate what is and is not a player, so these are not synonymous terms. A bot that acts like an typical game dumb NPC is just one of the types of bots you can make, like some Minecraft servers have to guide players to lobbies. Of course, actual servers wouldn't use mineflayer (which being a real player has lots of network overhead), they would create an NPC server-sided out of mobs like done in the the Citizens NPC plugin.

junaga commented 1 year ago

@extremeheat apologizes for the misunderstanding. It didn't occur to me, that this is indeed a player automation library. Awesome project, take care