18f07ce50f
Actions: Added description. Fully implement helper methods for validating and evaluating expressions. Full implementation of declarative commands.
Hector Franqui
2018-01-13 10:12:17 -05:00
ff82f83c0b
NPC: Add execution environment Actions: Rename 'actions' to 'command' Add skeleton method for declarative and control commands
Hector Franqui
2018-01-09 20:04:20 -05:00
9125aa334a
Actions: Replace "action" for "command". Add declarative and control commands comments and function signature (no implementation yet).
Hector Franqui
2018-01-09 19:04:51 -05:00
5f9afae5d9
NPC: Support backward compatibility.
Hector Franqui
2017-10-19 21:51:16 -04:00
ec0392096f
NPC: After interacting with NPC, original yaw is restored.
Hector Franqui
2017-10-19 21:47:35 -04:00
205bdf6eb1
NPC: Use after_activate() callback to fix animation issue.
Hector Franqui
2017-10-18 15:09:00 -04:00
5bdc3c3c29
NPC: Fix animation state not persistent on interaction/game restart. Action lock/unlock doesn't perform lock if movement state is sitting or laying. Right-click interaction can now be disabled in freeze action command. Upon NPC activation, animation is restored.
Hector Franqui
2017-10-18 09:05:08 -04:00
4a4dc724cd
NPC: Fix issues with female and male skins. Fix naming issues with male skins. Improve coloring on male skins.
Hector Franqui
2017-10-16 18:48:02 -04:00
d95c8504ec
Places: Add truly owned nodes. NPCs shouldn't override ownership anymore. Spawner: Add command "/restore_area" to clear up node ownership & usage in manually spawned places. "/restore_plotmarkers" now clean up node ownership & usage in mg_villages.
Hector Franqui
2017-10-07 11:28:38 -04:00
8a5e80e2cb
Places: Allow finding alternative nodes when nodes are being used. Add owned and used properties to each owned/shared node. Actions: Allow to find alternative sittable/bed/furnace node if currently being used. Default occupation: Add alternative sitting finding. NPC: Log cleanup.
Hector Franqui
2017-10-05 18:53:46 -04:00
d92b729e19
Fixed bugs related to door positioning, opening/closing, and finding positions in general.
Hector Franqui
2017-09-23 10:43:51 -04:00
43c69ffee4
Spawner: Add search radius and height to manual spawn egg.
Hector Franqui
2017-09-21 20:03:01 -04:00
5a79b9a119
Trade: Fix name for stone hoe.
Hector Franqui
2017-09-21 18:55:02 -04:00
d55ffd06fc
Schedules: Allow to set trade list as a schedule property. Trade: Trading list now supports setting maximum sell count, buy count and how much to keep (in case of sell). Add price for empty bucket.
Hector Franqui
2017-09-21 18:53:43 -04:00
db415dee97
Occupations: Change building type format to be more flexible. Spawner: Huge rework on logic to determine occupations. Warning! Completely incomprehensible code. Schedule: Improve schedule check enqueue and execution. Optimize walk_to_pos if used on distances < 3 Huge amounts of log cleanup. Places: Improve adding shared places. Improve orthogonal node scanning by using walkables and not one single node.
Hector Franqui
2017-09-15 14:51:37 -04:00
b02a78de6d
Default Farmer (WIP): Improve schedule entries, schedule check. Change to new building type format.
Hector Franqui
2017-09-15 14:47:04 -04:00
8cf1e932bc
Default Priest: Change building type definitions to new format.
Hector Franqui
2017-09-15 14:46:08 -04:00
866b25c63c
Pathfinder: Fix indentation. Improve path decorator to avoid jumping NPCs (in Minetest 0.5-dev)
Hector Franqui
2017-09-13 09:09:08 -04:00
70fd62825c
Actions: Fix bugs in dig and place actions. Fix bug in get_pos_argument() function. Optimize walk_to_pos task and improve usage of access node. Improve get_direction() by using vector.direction() and vector.round()
Hector Franqui
2017-09-13 09:06:58 -04:00
70c7a3c96f
Actions: Add mine animation to dig/place actions. Fix bug enabling wandering after dig action. Improved "random" dir functionality for walk_step to avoid getting NPC stuck. General formatting fixes.
Hector Franqui
2017-09-12 09:08:44 -04:00
245c2c32c2
My first pull request. (#15)
NewbProgrammer101
2017-09-08 07:31:19 -05:00
ce47958144
Actions: Fix bugs and improve dig and place action commands.
Hector Franqui
2017-09-07 08:51:50 -04:00
2a0b0aa538
Occupations: Refactor all occupation defs into separate Lua files. Add WIP priest occupation. Add WIP (very WIP) farmer occupation.
Hector Franqui
2017-09-05 22:47:03 -04:00
6c3988a731
Occupation: Add ability to set some of the NPCs properties. Currently, you can set: - Trader status - Whether to show or hide gift items hints NPC: Add enable/disable gift item hints flag Schedules: Allow to set the enable/disable gift item hints flag Dialogues: Add ability to choose from normal dialogues if hint dialogues are disabled.
Hector Franqui
2017-09-05 19:02:50 -04:00
8e5d6d03f4
Spawner: Fix issue when "npcs" table is not present in restore_plotmarkers.
Hector Franqui
2017-09-01 18:27:17 -04:00
fe5a155177
Fix bug with dialogues being cleared for NPCs on occupation init.
Hector Franqui
2017-09-01 18:15:53 -04:00
48eb8078b3
Schedules: Add support to change flags in schedules.
Hector Franqui
2017-09-01 14:15:01 -04:00
939181284b
Spawner: Add workplaces properly to the usable nodes.
Hector Franqui
2017-09-01 14:14:35 -04:00
40ac2a55a1
Actions: Fix bug and add support for using access node.
Hector Franqui
2017-09-01 14:13:13 -04:00
ba6348663b
Dialogues: Fix bug when not having custom trade offers.
Hector Franqui
2017-08-31 17:59:46 -05:00
c9eb3b0ef4
Spawner: Workplaces are properly assigned to NPC. If a workplace is assigned to a NPC, it is not used by any other NPC. "/restore_plotmarkers" command also restores the workplace so it can be used by other NPCs. Occupations: Dialogues are registered on occupation registration.
Hector Franqui
2017-08-31 09:11:43 -04:00
706a5cf188
Add occupation name to entity properties.
Hector Franqui
2017-08-29 18:16:48 -05:00
e85a8161c3
Change names to match convention.
Hector Franqui
2017-08-29 18:12:21 -05:00
337f8c46b7
Small bug fixes and log cleanups.
Hector Franqui
2017-08-29 14:55:38 -04:00
df56e44bbd
Add workplaces support. Places: Workplaces are now usable nodes. Plotmarkers around a building can be scanned and their information stored into current plotmarker. Slightly optimize plotmarker search. Occupations: Add test "priest" occupation definition. Fix lots of bugs in initialization code. Spawner: Add ability to determine occupation name out of surrounding workplaces. Assign occupation to spawned NPC using simple algorithm. Others: Reduce log noise a bit. Fix some warnings.
Hector Franqui
2017-08-29 14:54:57 -04:00
59bb430e62
Spawner: Nearby plotmarkers are now scanned for all mg_villages:plotmarkers. Places: Usable nodes now include workplaces Small bug fixes. Relationships: Small bugfix with gift item response. Occupations: Add work node descriptions. Experimental "priest" occupation.
Hector Franqui
2017-08-28 15:43:57 -04:00
4c102a70a4
Spawner: Large code refactor to remove dependency on plotmarkers. Most spawner functions can now be called without giving a plotmarker. Move scanning functions to places.lua. Places: Cleanup and add more area-scanning functions. Schedules: Bugfix where schedules weren't being executed due to wrong "end" order in the do_custom() function. Data: Moved random data to "data" folder. Textures: Add 14 male textures and 10 female textures. Occupations: Small tweaks to "default_basic" occupation.
Hector Franqui
2017-08-25 09:31:45 -04:00
4c0e2b574a
Temporary fix for male textures issue.
1.0.0-alpha-1
Hector Kio
2017-08-11 10:44:57 -04:00
3edc959d3a
Dialogues: Finish implementation of registered dialogues. Ported all trade dialogues to use new dialogue system.
Hector Franqui
2017-07-19 14:00:29 -04:00
b5dc9926cd
Add 5 additional male textures. Rename child textures to be more representative.
Hector Franqui
2017-07-13 19:05:39 -04:00
bff013bc44
Utilities: Add simple utility code to work with arrays and Lua tables
Hector Franqui
2017-07-13 19:04:00 -04:00
5eceb09cdb
Random data: Separate random data in different files for better classification. Add registrations as well.
Hector Franqui
2017-07-13 19:02:40 -04:00
e79fb91ff3
Dialogues: Re-write dialogues to allow Minetest's like registration system instead of the actual table lookup system. In general, dialogues now are registered in similar fashion as nodes, entities and others are registered in Minetest. Relationships: Re-write to the way favorite/disliked items are defined, now allow Minetest's like registration as well. Random data: Random data now includes registrations for gift items and dialogues.
Hector Franqui
2017-07-13 19:01:28 -04:00
bf935fd091
Dialogues: Fix bug with NPCs being frozen if 'Esc' button was pressed to exit dialogue
Hector Franqui
2017-06-29 19:01:03 -04:00
6141af11aa
Relationships: Increase gift timer and relationship decrease timer to more usual values. Fixed small bug on giving unliked items.
Hector Franqui
2017-06-27 18:39:13 -04:00
e70888c3e5
Fix bug with 'ignore' nodes when some map areas are not fully loaded but NPC try to perform actions on them.
Hector Franqui
2017-06-27 18:38:28 -04:00
cc56446206
NPC: (WIP) Schedule properties support adding one or multiple items to NPC inventory, and support taking one item from NPC inventory. Attempt to fix child textures issue (2).
Hector Franqui
2017-06-21 21:07:36 -04:00
7110c49b42
Spawner: Avoid multiple spawning by not replacing the mg_villages:plotmarker, but just override its definition. NPC: (WIP) Support change properties on schedules.
Hector Franqui
2017-06-21 07:16:11 -04:00
fd4cec0d63
Spawner: Assign sits, furnaces and storage nodes to spawned NPCs. Small basic schedule change: NPCs now sit from 12-1 on whatever sit they 'own'. Fixed /restore_plotmarkers not clearing all metadata. NPC: Attempted to add a fix for the children growing on their own (due to mobs_redo).
Hector Franqui
2017-06-19 21:03:24 -04:00
3df43ab580
Spawner: Assign sits, furnaces and storage nodes to spawned NPCs. Small basic schedule change: NPCs now sit from 12-1 on whatever sit they 'own'. Fixed /restore_plotmarkers not clearing all metadata. NPC: Attempted to add a fix for the children growing on their own (due to mobs_redo).
Hector Franqui
2017-06-19 20:54:26 -04:00
c19ea70242
Spawner: Add clearing of 'replaced' string to /restore_plotmarkers
Hector Franqui
2017-06-18 11:19:33 -04:00
fb549e7f93
Pathfinder: Drop jumper.lua's pathfinder in favor of MarkBu's pathfinder with slight modifications, as the later one supports 3D paths. Clean up old pathfinder code. Add path decoration to MarkBu pathfinder's generated paths. Change actions.lua and places.lua to use the new pathfinder. Properly modify README.md.
Hector Franqui
2017-06-17 11:47:51 -04:00
e1bf931064
Relationships: change texture of smoke to use default's mod texture
Hector Franqui
2017-06-17 11:45:57 -04:00
caa39d97ab
NPC: Fixed bugs around new logs and npc chat functions. Fixed bug with child texture.
1.0-alpha-0
Hector Franqui
2017-06-17 10:22:00 -04:00
a91160ecc6
NPC: Cleaned up debugging logs. Standarized logs to have different levels. Show by default only INFO, ERROR log messages. Dialogues: Standarized function for NPC chat messages. Removed trader.lua and trader_test.lua which are part of old 'mobs_npc' mod.
Hector Franqui
2017-06-17 09:44:25 -04:00
bf0f643e3e
NPC: Changed general issue with names. Now names are a dedicated variable, not anymore a nametag. NPC names aren't visible anymore. Spawner: Added NPC statistics to plotmarkers. Add statistics-based spawning for a more balanced, family-type spawning of NPCs.
Hector Franqui
2017-06-17 09:08:29 -04:00
adeeecd43e
Pathfinding (WIP): Use MarkBu's pathfinder mod as the new pathfinder. Actions: Modify walk_to_pos to use new pathfinding code. Allow support for giving positions as strings or tables referring to specific places on Places Map. Spawner: Assign beds to NPCs. Increase amount of NPCs now being spawned as they are able to reach top floor beds. Places: Slight overhaul and changes. Add more info to places. NPC: Hide nametag.
Hector Franqui
2017-06-14 18:42:36 -04:00
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.
Hector Franqui
2017-05-19 14:36:11 -04:00
1d1a56592b
Actions: Rewrite API to use executor function + constants of commands. Re-write NPC add action/task functions, do_custom() to use new actions API. Spawner: Find building entrances (WIP) Places: Fix numerous bugs with add/get places functions. Actions: Fix bugs with sittable task.
Hector Franqui
2017-05-13 13:17:45 -04:00
9b3d458872
Spawner: Part 1: Add initial code to find doors front/behind position. Detect first floor nodes.
Hector Franqui
2017-05-05 18:34:16 -04:00