27 Commits

Author SHA1 Message Date
Imbris
a46789013c Hotreload animations using libloading 2020-06-19 00:48:19 -04:00
Marcel Märtens
f99f9bfb17 overall cleanup, more tests, fixing clashes, removing unwraps, hardening against protocol errors, prepare prio mgr to take commands from scheduler
fix async_recv and double block_on panic on Network::drop and participant::drop
include Cargo.lock from all examples
Found a bug on imbris runners with doc tests of `stream::send` and `stream::recv`
As neither a backtrace, nor tracing on runners in the doc tests seems to help, i disable them and add them as unit tests
2020-06-09 01:24:16 +02:00
Marcel Märtens
701daef8f1 Examples, HUGE fixes, test, make it alot smother
- switch `listen` to async in oder to verify if the bind was successful
- Introduce the following examples
  - network speed
  - chat
  - fileshare
- add additional tests
- fix dropping stream before last messages can be handled bug, when dropping a stream, BParticipant will wait for prio to be empty before dropping the stream and sending the signal
- correct closing of stream and participant
- move tcp to protocols and create udp front and backend
- tracing and fixing a bug that is caused by not waiting for configuration after receiving a frame
- fix a bug in network-speed, but there is still a bug if trace=warn after 2.000.000 messages the server doesnt get that client has shut down and seems to lock somewhere. hard to reproduce

open tasks
[ ] verify UDP works correctly, especcially the connect!
[ ] implements UDP shutdown correctly, the one created in connect!
[ ] unify logging
[ ] fill metrics
[ ] fix dropping stream before last messages can be handled bug
[ ] add documentation
[ ] add benchmarks
[ ] remove async_serde???
[ ] add mpsc
2020-06-09 01:23:37 +02:00
Marcel Märtens
ed3161ed66 shutdown and udp/mpsc
- theorectically closing of streams and shutdown
- mpsc and udp preparations
- cleanup and build better tests
2020-06-09 01:23:26 +02:00
Marcel Märtens
690c8c22f1 Implement a async recv test 2020-06-09 01:23:12 +02:00
Marcel Märtens
713c3ce475 Add a speedtest program to benchmark networking 2020-06-09 01:23:01 +02:00
Marcel Märtens
697e845468 first implementation of connect and tcp using a mio worker protocol and:
- introduce a loadtest, for tcp messages
 - cleanup api
 - added a unittest
 - prepared a handshake message, which will in next commits get removed again
 - experimental mio worker merges
 - using uuid for participant id
2020-06-09 01:22:35 +02:00
Marcel Märtens
833e5955dc initial implementation of a network api 2020-06-09 01:22:32 +02:00
Monty Marz
20050f93c9 Add more crops 2020-04-23 18:19:41 +01:00
Joshua Barretto
cb12d8ba7a Added correctly allocated labours, fishing 2020-04-23 18:19:40 +01:00
Joshua Yanovski
3ba86c7b12 Fix all warnings. 2020-01-23 18:18:16 +01:00
Joshua Yanovski
1ea8c1360b Adding many new types of geomorphic laws:
- soil production (currently disabled).
- debris flow erosion (combined with regular stream power law).
- flow computation using multiple receivers.
- filling strategy during drainage network calculations.

Also tweaks a variety of other aspects of erosion.
2020-01-23 18:18:12 +01:00
Joshua Yanovski
93c953a989 Fix benchmarks and profile overrides.
This was necessary because Cargo recently deprecated the "overrides"
keyword in favor of "package", and Criterion changed its interface.

This commit also now lists more configurable keys, so if they aren't set
to their defaults the user will be able to find them.  This includes the
roll key, which wasn't listed earlier and is different on Windows and
Mac.  It does *not* include the respawn key because that key is already
shown when you die.
2020-01-20 14:16:28 +01:00
Imbris
151f6ea7d7 Add release debuginfo profile 2020-01-19 16:03:27 -05:00
Imbris
93c0f5e0ef Fix issue where controller events aren't processed while mounted. Fix non humanoids being able to climb and glide. 2019-12-31 16:41:45 -05:00
Imbris
a77512a714 Fix formatting, Update CHANGELOG, turn overflow checks on for dev
profile
2019-12-31 16:38:13 -05:00
Monty Marz
c4599d4de1 assets update
acacia trees
updated help.png
bigger map zone name
npc levels from 0-10
boss levels from 20-50
2019-12-30 12:16:35 +00:00
Monty Marz
c05f63d55a Set overflow checks to 'false' for release builds in order to bandaid fix recent master error 2019-11-28 13:32:38 +00:00
Marcel Märtens
252f766801 introduce custom-profiles 2019-11-21 20:18:09 +01:00
Joshua Yanovski
663d535bd9 Allow canceling chunk generation.
Currently we only do this when no players are in range of the chunk.  We
also send the first client who posted the chunk a message indicating
that it's canceled, the hope being that this will be a performance win
in single player mode since you don't have to wait three seconds to
realize that the server won't generate the chunk for you.

We now check an atomic flag for every column sample in a chunk.  We
could probably do this less frequently, but since it's a relaxed load it
has essentially no performance impact on Intel architectures.
2019-10-16 11:39:41 +00:00
Monty Marz
1cab8f638a Character assets Part 1 2019-09-18 16:46:12 +00:00
Joshua Barretto
c62f28c96d Improved performance and compilation speed for debug builds
Former-commit-id: 5d8b1c27a8a2ebfe63797969ee2aba7452a09dd3
2019-05-12 18:43:55 +01:00
Joshua Barretto
bcd4bcafb9 Added basic networked communications, chat communication
Former-commit-id: 06bafdf69486f4da5fbc416835e34c5bed8c2caa
2019-03-04 19:58:58 +00:00
Joshua Barretto
8c1140e3ff Added server-cli, UI tests
Former-commit-id: 93bf5b39138920aa7a4a773a8247d716866c4a05
2019-01-30 12:11:34 +00:00
Joshua Barretto
a07e0c2df7 Added Terrain type to scene 2019-01-15 15:13:11 +00:00
Joshua Barretto
7e14ed0db1 Started adding voxygen and windowing code 2019-01-02 21:25:01 +00:00
Joshua Barretto
35067ed13f Initial structure 2019-01-02 17:23:31 +00:00