Fork of Advanced NPC for Minetest, using mobs_redo API.
Go to file
Hector Franqui d4e8744cfb Spawner: Assign entrance door to every NPC spawned.
Increased ABM chance to make NPC spawning less laggy.
Improved building scanning, finally now has correct data for scanning nodes.
Places: Finding entrances is limited now to MTG doors.
2017-05-19 14:36:11 -04:00
actions Spawner: Assign entrance door to every NPC spawned. 2017-05-19 14:36:11 -04:00
backup Adds pathfinding library Jumper by Ronald Yonaba. This includes an implementation of the A* pathfinding algorithm which makes NPC now always get to their goal node. 2017-01-06 07:57:42 -05:00
locale First commit. Using mobs_npc code as start. 2016-11-12 07:06:09 -05:00
textures Added new texture for marriage ring. 2016-12-15 21:33:57 -05:00
trade Trading: Fix price items not being accounted for. 2017-03-27 10:53:21 -04:00
debug.txt Adds pathfinding library Jumper by Ronald Yonaba. This includes an implementation of the A* pathfinding algorithm which makes NPC now always get to their goal node. 2017-01-06 07:57:42 -05:00
depends.txt First commit. Using mobs_npc code as start. 2016-11-12 07:06:09 -05:00
description.txt First commit. Using mobs_npc code as start. 2016-11-12 07:06:09 -05:00
dialogue.lua Trade: (WIP) Add custom trading dialogues, custom trading offers and code to show the custom trading options. 2017-02-23 07:27:25 -05:00
init.lua Pathfinding: Remove Jumper submodule. 2017-04-04 14:32:28 -04:00
license.txt Adds pathfinding library Jumper by Ronald Yonaba. This includes an implementation of the A* pathfinding algorithm which makes NPC now always get to their goal node. 2017-01-06 07:57:42 -05:00
mod.conf Progress on gifts and relationships. Still requires further debugging to understand some timer issues. 2016-11-14 06:28:37 -05:00
npc.lua Spawner: Assign entrance door to every NPC spawned. 2017-05-19 14:36:11 -04:00
random_data.lua Actions: Rewrite API to use executor function + constants of commands. 2017-05-13 13:17:45 -04:00
README.md Pathfinding: Remove Jumper submodule. 2017-04-04 14:32:28 -04:00
relationships.lua Actions: Added some fundamental movement actions. 2016-12-18 12:32:39 -05:00
spawner.lua Spawner: Assign entrance door to every NPC spawned. 2017-05-19 14:36:11 -04:00
trader_test.lua First commit. Using mobs_npc code as start. 2016-11-12 07:06:09 -05:00
trader.lua First commit. Using mobs_npc code as start. 2016-11-12 07:06:09 -05:00

advanced_npc

Introduction

Advanced NPC is a mod for Minetest, based on mobs_redo. The goal of this mod is to be able to have live villages in Minetest. These NPCs are highly inspired by the typical NPCs of Harvest Moon games. The general idea is that on almost all buildings of a village there are NPCs that are kind of intelligent: they have daily tasks they perform, can speak to players, can trade with the player, can use their own items (chests and furnaces for example), know where to go around their house and village, can be lumbers, miners or any other Minetest-suitable profession and can ultimately engage into relationships with the player. And while basically only players are mentioned here, the ultimate goal is that they can do all of this also among themselves, so that villages are alive and evolving by themselves, without player intervention.

Installation

NOTE: Advanced NPC is still under development. While the mod is largely stable, it lacks one of the most important pieces: spawning. Currently, NPCs will spawn on stone (default:stone) and the mg_villages' plotmarkers (mg_villages:plotmarker). The spawning is not controlled, so you will have several of them walking around. This is not how it is planned and is just for testing purposes. In the future, only a handful of NPCs should spawn at village house's plotmarker and they will know their way around the house and have specific jobs.

Download the mod here (link always pointing to latest version)

For this mod to work correctly, you also need to install the mobs_redo mod. After installation, make sure you enable it in your world.

License

advanced_npc is Copyright (C) 2016-2017 Hector Franqui (zorman2000), licensed under the GPLv3 license. See license.txt for details.

The jumper.lua file contains code based on the Jumper library, which is Copyright (c) 2012-2013 Roland Yonaba, licensed under MIT license. See actions/jumper.lua for details.

Roadmap

See it on the wiki.