Commit Graph

161 Commits

Author SHA1 Message Date
Joshua Barretto
f000347cac Make NPCs respond to each other 2023-05-04 11:53:01 +01:00
Joshua Barretto
a5b1e41d8b Make NPC interaction go via rtsim 2023-05-04 11:23:46 +01:00
Joshua Barretto
2ff0118df0 More rtsim monsters 2023-05-04 10:13:02 +01:00
Joshua Barretto
6fbd007cea Non-humanoid rtsim respawning, made monsters wander 2023-05-01 21:48:33 +01:00
Joshua Barretto
0f92f38967 Started adding wandering rtsim monsters 2023-05-01 18:29:32 +01:00
Joshua Barretto
ba8984e1a7 Made NPC sentiment slightly more forgiving 2023-05-01 12:16:40 +01:00
Imbris
ed94c1c1b6 Fix existing bug with all site route costs be computed as 0 2023-04-20 22:22:21 -04:00
Imbris
92a42ced18 Apply experimental astar2 changes to the original impl 2023-04-20 21:53:59 -04:00
Sam
e819cd2309 Updated hashbrown, removed some to_owned calls in handling recently unequipped items 2023-04-19 18:43:40 -04:00
Julian Tölle
865b50fff2 rtsim: positive sentiment gain for killing enemies
As per the age old saying: "the enemy of my enemy is my friend".

NPCs will start liking the killer of their enemy more.
2023-04-16 18:08:09 +02:00
Isse
b987bfccb4 lazily calculate magnitude in goto and add comments 2023-04-14 14:02:47 +02:00
Isse
3548b464da orient airships correctly on load 2023-04-14 11:25:59 +02:00
Isse
2208a3037e improve flying goto 2023-04-14 11:23:17 +02:00
Isse
2b44d534cb remove unwraps in npc_ai 2023-04-14 11:22:12 +02:00
Isse
d1f6e6bef6 somewhat fix airships 2023-04-14 11:22:10 +02:00
Isse
9c30d2018d add bridge tile for better bridge pathfinding 2023-04-14 11:17:08 +02:00
Joshua Barretto
af960f811b Increment rtsim version 2023-04-13 18:36:05 +01:00
Joshua Barretto
6d06e9e1a9 Avoid NPC huddling in site centres 2023-04-13 15:13:51 +01:00
Joshua Barretto
daacadaedb Made NPCs give directions to nearby towns, fixed player death propagation 2023-04-13 14:34:31 +01:00
Joshua Barretto
d26a711469 Update site populations when NPCs move home 2023-04-13 12:22:28 +01:00
Joshua Barretto
2a1ea63910 Allow NPCs to migrate away from towns with a high population density 2023-04-13 12:00:59 +01:00
Joshua Barretto
16e3227f78 Correct localisation of numeric values, use coordinate conversions in rtsim 2023-04-12 10:36:11 +01:00
Isse
2d83a8a1e4 fix npcs without a faction not respawning 2023-04-12 10:18:09 +02:00
Joshua Barretto
cf701fb604 Localised rtsim NPC speech 2023-04-11 17:00:08 +01:00
Joshua Barretto
edcc2f1870 Overhauled chat message representation to allow for more exhaustive localisation 2023-04-11 15:46:36 +01:00
Joshua Barretto
bc4d1a71f6 Fix rtsim NPC respawning 2023-04-11 13:25:45 +01:00
Joshua Barretto
9d2ea10090 Use drain_sorted 2023-04-10 22:35:49 +01:00
Isse
e9978acf4c set rider to none if replacing driver 2023-04-10 22:04:00 +02:00
Joshua Barretto
92ead1cf38 Removed vehicle riders, for now 2023-04-10 20:58:08 +01:00
Joshua Barretto
b50645c1ee Addressed review comments 2023-04-10 17:59:43 +01:00
Joshua Barretto
859eb95033 Log error instead of panicking 2023-04-09 19:25:58 +01:00
Joshua Barretto
67757f3d97 Ignore accidental unit tests 2023-04-09 19:25:58 +01:00
Joshua Barretto
8575ff87c5 Temporarily decrease sentiment decay time 2023-04-09 19:25:58 +01:00
Joshua Barretto
326aa3f8ff Made /rtsim_npc order NPCs by distance 2023-04-09 19:25:58 +01:00
Joshua Barretto
70538dae66 Choose random plaza tile 2023-04-09 19:25:58 +01:00
Joshua Barretto
2fbddafd0a Added report system, information sharing, made NPCs act on sentiments 2023-04-09 19:25:58 +01:00
Joshua Barretto
08338436ea Added sentiments 2023-04-09 19:25:58 +01:00
Joshua Barretto
d7ba4ecef7 Allow OnDeath event to handle all actors 2023-04-09 19:25:58 +01:00
Joshua Barretto
ce5ef481e1 Added interrupt_with combinator, guard patrol patterns 2023-04-09 19:25:58 +01:00
Joshua Barretto
a7a08763f2 Gave NPCs names 2023-04-09 19:25:58 +01:00
Joshua Barretto
74610833d0 Cleaned up rtsim tick handling 2023-04-09 19:25:58 +01:00
Joshua Barretto
80e4e8deae Fixed NPCs talking to themselves 2023-04-09 19:25:57 +01:00
Joshua Barretto
5614eaa7a5 Cleaned up rtsim rules 2023-04-09 19:25:57 +01:00
Joshua Barretto
85c572f6e2 Better town layout 2023-04-09 19:25:57 +01:00
Joshua Barretto
b2627e2690 Use cheap RNG in NPC AI code 2023-04-09 19:25:57 +01:00
Joshua Barretto
c8d0443111 Clippy fixes 2023-04-09 19:25:57 +01:00
Joshua Barretto
9f025de27d Addressed feedback 2023-04-09 19:25:57 +01:00
Joshua Barretto
1fcb46ae0c Made merchants advertise wares 2023-04-09 19:25:56 +01:00
Joshua Barretto
b72d8f3192 Added the ability for rtsim to tell NPCs to speak 2023-04-09 19:25:56 +01:00
Joshua Barretto
7dfbc2bdab Made socialising NPCs dance 2023-04-09 19:25:56 +01:00
Joshua Barretto
2d7d172f49 Made rtsim aware of character locations 2023-04-09 19:25:56 +01:00
Joshua Barretto
7175f7f02f Hunters explore forests to hunt game 2023-04-09 19:25:56 +01:00
Joshua Barretto
b402e450cf Added rtsim_npc, made herbalists gather ingredients 2023-04-09 19:25:56 +01:00
Joshua Barretto
1e70ccfb8d Swallow actions for simulated NPCs 2023-04-09 19:25:56 +01:00
Joshua Barretto
364255c7fe Allowed rtsim NPCs to greet nearby actors 2023-04-09 19:25:55 +01:00
Joshua Barretto
f911e6e5b6 Regenerate world site mapping on setup 2023-04-09 19:25:55 +01:00
Isse
d53b344c23 make merchants use tell, and general cleanup 2023-04-09 19:25:55 +01:00
Joshua Barretto
ea007ff702 Cleaning up 2023-04-09 19:25:55 +01:00
Joshua Barretto
5062920b5c Better NPC spawning 2023-04-09 19:25:55 +01:00
Joshua Barretto
64324262c7 Added /rtsim_purge command 2023-04-09 19:25:55 +01:00
Joshua Barretto
66710d5bc2 NPCs that live in stale sites just idle instead 2023-04-09 19:25:55 +01:00
Isse
f5c1e07642 apply personality to repopulated npcs 2023-04-09 19:25:55 +01:00
Isse
1c0fdf9228 rtsim personalities 2023-04-09 19:25:55 +01:00
Isse
7ac6c6b453 fix warnings in rtsim 2023-04-09 19:25:55 +01:00
Isse
adb2e1ba85 very simple repopulation 2023-04-09 19:25:55 +01:00
Isse
dda1be58d4 big birds! 2023-04-09 19:25:54 +01:00
Isse
1a117f1331 rtsim vehicles 2023-04-09 19:25:54 +01:00
Joshua Barretto
191f362292 Incremental point traversal 2023-04-09 19:25:54 +01:00
Joshua Barretto
bb96e92362 Track almost all collectable sprites, added resource replenishment 2023-04-09 19:25:54 +01:00
Joshua Barretto
94390331e0 Rtsim death event 2023-04-09 19:25:54 +01:00
Joshua Barretto
c4032ee024 Parallelised rtsim NPC AI 2023-04-09 19:25:54 +01:00
Joshua Barretto
077da13a5f Improved herbalist, hunter, farmer, added cultist factions 2023-04-09 19:25:54 +01:00
Joshua Barretto
2aa6ced357 Removed patrol origin from humanoid NPCs 2023-04-09 19:25:54 +01:00
Joshua Barretto
84eb7b0653 Made adventurers explore sites before moving on 2023-04-09 19:25:54 +01:00
Joshua Barretto
2b3f0737d0 Added npc_info, action backtraces 2023-04-09 19:25:54 +01:00
Joshua Barretto
ac83cfc4a3 More interesting idle behaviours 2023-04-09 19:25:54 +01:00
Joshua Barretto
8f7b11f12f Improved AI code structure, added docs 2023-04-09 19:25:54 +01:00
Joshua Barretto
9413a56c13 Added sequence combinator, NPC site-site pathfinding 2023-04-09 19:25:54 +01:00
Joshua Barretto
b2f92e4a6c Switch to combinator-driven NPC AI API 2023-04-09 19:25:53 +01:00
Joshua Barretto
acecc62d40 sync 2023-04-09 19:25:53 +01:00
Joshua Barretto
558b5f7c3a Attempted generator-driven AI 2023-04-09 19:25:53 +01:00
Joshua Barretto
7e9474ab70 Overhauled rtsim2 pathfinding with TravelTo 2023-04-09 19:25:53 +01:00
Joshua Barretto
1b439d0897 New behaviour tree system for rtsim2 2023-04-09 19:25:53 +01:00
Joshua Barretto
e8b489a71a sync 2023-04-09 19:25:53 +01:00
TaylorNAlbarnaz
3a52cc1fa3 NPCs walk in when pathing in intrasite 2023-04-09 19:25:53 +01:00
IsseW
9b48faba7e fix compilation error 2023-04-09 19:25:53 +01:00
Joshua Barretto
539c482cff Capped out NPC movement at higher dts 2023-04-09 19:25:53 +01:00
IsseW
c026b4d20a travelers say where they're going 2023-04-09 19:25:53 +01:00
IsseW
9be6c7b527 Pathing between sites. 2023-04-09 19:25:53 +01:00
Joshua Barretto
feaaaa9a25 Added initial impl of factions 2023-04-09 19:25:53 +01:00
IsseW
ca02b5e97c cleaner entity creation 2023-04-09 19:25:52 +01:00
IsseW
e7798f2a4e use world alt for pathing 2023-04-09 19:25:52 +01:00
Joshua Barretto
6397e283b2 Added world settings 2023-04-09 19:25:52 +01:00
Joshua Barretto
bccbbfa3b9 Fixed up broken time 2023-04-09 19:25:52 +01:00
Joshua Barretto
e08f7d4fa9 Added blacksmith 2023-04-09 19:25:52 +01:00
IsseW
afd9ea5462 site pathing 2023-04-09 19:25:52 +01:00
Joshua Barretto
f40cfb4ac3 Made farmers sell food 2023-04-09 19:25:52 +01:00
Joshua Barretto
e204789ce9 Persist TimeOfDay with rtsim 2023-04-09 19:25:52 +01:00
IsseW
64c56f544d randomly walk around town 2023-04-09 19:25:52 +01:00
Joshua Barretto
ff7478eb01 Factored out NPC AI 2023-04-09 19:25:52 +01:00