Commit Graph

1000 Commits

Author SHA1 Message Date
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
d751a22af7 Fixed buggy NPC aggro behaviour 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
ce5ef481e1 Added interrupt_with combinator, guard patrol patterns 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
3e0f5295c0 Added CharacterActivity, made NPCs look at the player when speaking to them 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
5aaee96cb1 Removed special-casing of merchants 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
dfb5e32803 Don't interact forever 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
Isse
d53b344c23 make merchants use tell, and general cleanup 2023-04-09 19:25:55 +01:00
Joshua Barretto
8ba68e30f3 Merchants no longer buy/sell things they don't know the price of 2023-04-09 19:25:55 +01:00
Joshua Barretto
ea007ff702 Cleaning up 2023-04-09 19:25:55 +01:00
Joshua Barretto
6035234c6e Removed old rtsim 2023-04-09 19:25:55 +01:00
Joshua Barretto
64324262c7 Added /rtsim_purge command 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
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
2aa6ced357 Removed patrol origin from humanoid NPCs 2023-04-09 19:25:54 +01:00
Joshua Barretto
acecc62d40 sync 2023-04-09 19:25:53 +01:00
Joshua Barretto
e8b489a71a sync 2023-04-09 19:25:53 +01:00
IsseW
c026b4d20a travelers say where they're going 2023-04-09 19:25:53 +01:00
Joshua Barretto
558dd99fd3 Added basic rtsim NPC simulation, rtsim controller support 2023-04-09 19:25:51 +01:00
Joshua Barretto
1dc7518200 Added rtsim entity unload hook 2023-04-09 19:25:51 +01:00
Joshua Barretto
c168ff2f9b Added rtsim saving, chunk resources, chunk resource depletion 2023-04-09 19:25:51 +01:00
Joshua Barretto
0cafafdaa7 Began integrating rtsim2 into server 2023-04-09 19:25:51 +01:00
Sam
0966753699 Added repair recipes 2023-04-06 10:54:48 -04:00
Joshua Barretto
63a949b95c Removed spawn town and safe spawn settings 2023-04-01 17:51:05 +01:00
Joshua Barretto
2e3870cf6d Shut up, clippy 2023-03-31 21:17:38 +01:00
Joshua Barretto
9e76561ad6 Spawn new players at the highest point in a chunk 2023-03-31 14:38:32 +01:00
Joshua Barretto
acec45b756 Initial implementation of starting site choice 2023-03-31 14:24:14 +01:00
Isse
c34e5ad4ed Small fixes 2023-03-29 23:11:59 +00:00
Isse
1298fc792b Merge branch 'ProfessionalHobbyist/configurable_day_night_length' into 'master'
Add setting to control length of day/night cycle for servers. ("Fix" for https://gitlab.com/veloren/veloren/-/issues/1798)

See merge request veloren/veloren!3836
2023-03-23 16:33:39 +00:00
Sophia Waggoner
30251221e5 Fix math mistakes (24 * 60 is 1440 not 1400) 2023-03-22 06:19:38 -07:00
Sophia Waggoner
264e4a53f8 cargo clippy + fmt 2023-03-22 05:49:54 -07:00
Sophia Waggoner
7e4ea483e0 Add a ServerConstants to Client and Server structs and sync on register. 2023-03-21 20:28:08 -07:00
Sam
9875008efa Added stance component that persists even after sheathing weapon (does not yet work with M1 replacement). 2023-03-21 19:29:34 -04:00
Ben Wallis
45c8934b79 Merge branch 'xvar/queue-char-deletes' into 'master'
Changed character deletion to go via batch update

See merge request veloren/veloren!3562
2023-03-12 23:21:54 +00:00
Ben Wallis
6eedc02286 Changed character deletion to go via batch update 2023-03-12 23:21:53 +00:00
Sam
89aa934c3c Initial work 2023-03-11 16:45:10 -05:00
Thegaming Life
5ddc55be52 replaced CHUNK_SIZE by RECT_SIZE everywhere, and change the use (and remove... 2023-03-06 21:03:35 +00:00
flo
bf81ffc029 frost_gigas 2023-02-15 00:10:37 +00:00
Ellen Sun
d774319cf0 cleanup and fixes + added change to CHANGELOG.md 2023-01-27 20:32:41 -05:00
Ellen Sun
74cb514094 move client commands to voxygen + add Admin to be shared with client for permissions + unit test for alphabetical server command 2023-01-27 20:31:56 -05:00
Avi Weinstock
78845a0d73 Implement potion sickness, which causes diminishing returns on healing from potions. 2023-01-19 15:06:12 -05:00
Nils Ascheuer
43b61ea6d9 #1725 do not clear target during trading. 2023-01-18 08:15:13 +01:00
Marcel Märtens
dad73ba2a3 fix clamp clippy errors 2022-11-28 14:26:27 +01:00
Marcel Märtens
0ab7a2543e fix clippy errors 2022-11-28 14:08:11 +01:00
holychowders
dc9074ae6b Revert "[REVERT ME] Display debug information for code reviewers."
This reverts commit bae5c5b675.
2022-11-20 15:51:09 -06:00
holychowders
23dd1d1be3 MVP for searching target's last known position. 2022-11-20 02:36:11 -06:00
holychowders
1331b046b5 Rename mouthful variable. 2022-11-17 19:21:22 -06:00
holychowders
2c745bed30 Update target's last known position.
Before, it was set only upon targeting.
2022-11-16 20:54:32 -06:00
holychowders
bae5c5b675 [REVERT ME] Display debug information for code reviewers. 2022-11-16 20:12:14 -06:00
holychowders
61aa49fa66 Add last_known_pos to Target struct. 2022-11-16 18:26:07 -06:00
holychowders
95fd092e26 Fix awareness changes. 2022-11-12 12:12:32 -06:00
holychowders
571b07d54a Remove dt and multiplication by 30. 2022-11-06 13:10:17 -06:00
holychowders
641a5c4cda Merge branch 'master' of gitlab.com:veloren/dev/veloren into holychowders/agent_awareness2 2022-10-29 13:21:27 -05:00
holychowders
3d4ad29d1d Flee if attacked even if attacker is not close. 2022-10-28 21:31:49 +00:00
holychowders
3f3f8605af Merge branch 'master' of gitlab.com:veloren/dev/veloren into holychowders/agent_awareness2 2022-10-28 15:16:44 -05:00
holychowders
4426972057 Refer to the fully aware state of an agent as "alert". 2022-10-28 15:03:11 -05:00
Sam
9b4dcbfdde Heavy stance AI 2022-10-27 20:07:04 -04:00
Sam
c97bfdfb94 Defensive stance AI 2022-10-27 20:07:01 -04:00
Sam
7dcb3582e6 Sword AI for offensive abilities 2022-10-27 20:07:01 -04:00
Sam
4ab3abfc07 Balanced stance AI 2022-10-27 20:07:01 -04:00
Timothy Finnegan
1922d69154 Ran Cargo fmt 2022-10-24 19:52:37 -07:00
Timothy Finnegan
5e5e1066eb Added support for multiple timers, conditions, and counters in a single action node. 2022-10-23 18:31:09 -07:00
holychowders
65b6bf62f9 Revert "[REVERT THIS] Show awareness info via agent chat for code reviewers."
This reverts commit ed991b681ae56bcb414d24f773bc540dc390b5fa.
2022-10-21 20:25:55 -05:00
holychowders
1121cb5d3f [REVERT THIS] Show awareness info via agent chat for code reviewers. 2022-10-21 20:25:54 -05:00
holychowders
7502cd664a Have agents update awareness of targets.
This is preliminary and has no visible effect.
2022-10-21 20:25:54 -05:00
Tavo Annus
fcd7447991 Fix npcs untargeting trade partner while in trade 2022-10-07 15:17:49 +03:00
Avi Weinstock
e6576f0cf3 Make the trading AI for pets only accept food. 2022-09-30 15:11:03 -04:00
Avi Weinstock
60f5383f8b Address comments for MR 3633. 2022-09-30 14:51:49 -04:00
Avi Weinstock
c62bc0dd0d Allow pets to be traded with. 2022-09-30 14:51:49 -04:00
Marcel Märtens
cf6a764aa4 update toolchain to 2022-09-23 2022-09-25 15:58:32 +02:00
Samuel Keiffer
59d8d287d9 Merge branch 'seachapel_npc_work' into 'master'
seachapel npc work

See merge request veloren/veloren!3599
2022-09-22 01:04:01 +00:00
flo
a37e1f8d99 seachapel npc work 2022-09-22 01:04:01 +00:00
Joshua Yanovski
57ea753bff Merge branch 'sharp/parallel-ingame' into 'master'
Parallelize ingame messages.

See merge request veloren/veloren!3627
2022-09-21 19:44:40 +00:00
Joshua Yanovski
1c14ec7ee1 Parallelize ingame messages. 2022-09-21 10:25:57 -07:00
Joshua Yanovski
67231aff90 Remove persistence loading error from SkillSet.
This is needed (for now) in order to parallelize ingame_chat, because
one of the handled messages updates this value on the server.  It turns
out that the value is not actually used on the server, only the client,
so this was mostly a matter of threading this back to the correct place.
Additionally, we took the opportunity to modify the UI to not log you
into the game until your character was confirmed to be loaded, which
was a todo item that lets us simplify some error handling logic and
remove stuff from global state.
2022-09-21 09:29:25 -07:00
Sam
c228d9cc3f Addressed comments 2022-09-17 13:10:01 -04:00
Sam
525630c37a Moved some agent code into separate crate to facilitate hot reloading of that agent code. 2022-09-16 22:13:18 -04:00
Joshua Yanovski
cafdcad8ce Merge branch 'sharp/improve-msg' into 'master'
Improve some server system performance

See merge request veloren/veloren!3614
2022-09-15 04:30:31 +00:00
Joshua Yanovski
2c15d0af56 Reduce overhead of messaging systems. 2022-09-14 21:04:53 -07:00
James Melkonian
5d5cb28b59 Fix pet aggro 2022-09-14 19:48:34 +00:00
flo
dc688bccb9 fix_salamander_and_elbst 2022-09-13 17:32:53 +00:00
Joshua Yanovski
986d104faa Update Rust toolchain. 2022-09-08 15:43:53 -07:00
Joshua Yanovski
f5aee1d2a7 Allow mods/admins to log in when server is full.
As a side effect, this moves the initial game server sync message into
the login code, since that's the first place we can check for admin
permissions and we want to avoid sending large messages to users who are
not authenticated (especially if the player cap has been reached;
previously, the player cap check limited the damage that could be done
by unauthenticated players).

Some fallout from this is that we don't synchronize the Player component
anymore, which had some minor effects on voxygen.  This update also
breaks Torvus, since Client::new now expects the username and password
to be provided from the getgo--an accompanying MR will be submitted to
fix it.
2022-09-06 21:42:31 -07:00
juliancoffee
68da12ab6b Reduce traversal_config min dist
* Fix LOS pillar cheesing
2022-09-05 02:17:15 +03:00
Imbris
334937568e Add an entity view distance setting that allows limiting the distance
entities are synced from and displayed in.

NOTE: Syncing entities work at the granularity regions which are
multi-chunk squares but the display of entities in voxygen is limited in
a circle with the radiues of the supplied distance.

Additional details and changes:
* Added `ViewDistances` struct in `common` that contains separate
  terrain and entity view distances (the entity view distance will be
  clamped by the terrain view distance in uses of this).
* View distance requests from the client to the server now use this
  type.
* When requesting the character or spectate state the client now passes
  its desired view distances. This is exposed as a new parameter on
  `Client::request_character`/`Client::request_spectate`. And the client
  no longer needs to send a view distance request after entering these
  states. This also allows us to avoid needing to initialize `Presence`
  with a default view distance value on the server.
* Removed `DerefFlaggedStorage` from `Presence` and `RegionSubscription` since the
  change tracking isn't used for these components.
* Add sliders in voxygen graphics and network tabs for this new setting.
  Show the clamped value as well as the selected value next to the
  slider.
* Rename existing "Entities View Distance" slider (which AFAIK controls
  the distance at which different LOD levels apply to figures) to
  "Entities Detail Distance" so we can use the former name for this new
  slider.
2022-08-25 23:24:43 -04:00
Imbris
c36d6e873f Fix issue with the region subscription system not updating on view
distance changes (until the player crossed a chunk boundary and
triggered the normal update).

This introduces a `ViewDistance` struct that provides an abstraction
around limiting the rate the view distance can be cycled up and down.
This helps avoid unnecessary sending, deleting, and then resending of
synced things like entities (the client will still delete its terrain
locally and re-request it though).

The second part of this fix is storing the last view distance in the
`RegionSubscription` struct and then updating region subscriptions if
this doesn't match the current view distance in the `Presence`
component.
2022-08-25 23:24:43 -04:00