818 Commits

Author SHA1 Message Date
Drew DeVault
cd0ed36658 Let's be real
This project isn't coming back from the dead
2018-11-18 22:19:19 -05:00
Drew DeVault
91b1f5fd2b Add note about archived status 2018-03-17 22:01:15 -04:00
Drew DeVault
90160bd647
Merge pull request #282 from flibitijibibo/crashfix
Crash fix for #268
2017-10-27 14:07:41 -04:00
Ethan Lee
ab2a86a195 Crash fix for #268 2017-10-27 14:06:15 -04:00
Drew DeVault
0e70ad80b9 Merge pull request #273 from SirCmpwn/revert-271-master
Revert "Gtk to Gtk3"
2017-07-25 11:03:06 -04:00
Drew DeVault
45c59661c8 Revert "Gtk to Gtk3" 2017-07-25 11:02:59 -04:00
Drew DeVault
ae01f8d585 Merge pull request #271 from BearzRobotics/master
Gtk to Gtk3
2017-07-24 20:43:37 -04:00
BearzRobotics
7bc6c69db1 Gtk to Gtk3 2017-07-24 18:51:44 -04:00
Drew DeVault
b7d042944c Merge pull request #269 from FICTURE7/master
Fixes #258 & remove redundant dispose code
2017-05-25 10:23:39 -04:00
FICTURE7
dd08affa0d Removed unnecessary comments 2017-05-25 15:31:54 +04:00
FICTURE7
a68c7a0ba3 Fixes #258 & remove redundant dispose code 2017-05-24 21:17:54 +04:00
Drew DeVault
05a6b10e21 Fix deterministic terrain generation 2017-05-23 19:54:04 -04:00
Drew DeVault
c5c0e5ddf4 Block when sending initial chunks 2017-05-23 19:41:52 -04:00
Drew DeVault
444a3f47ed Fix dungeon generation issues
Fixes #249
2017-05-23 19:25:23 -04:00
Drew DeVault
2b130e816f Fix up some straggling threading issues in Region 2017-05-23 18:29:57 -04:00
Drew DeVault
535437f51e Fix chunk damage during terrain gen 2017-05-23 18:22:06 -04:00
Drew DeVault
6fb8ee7ba5 Many more optimizations and bugfixes
Again, sorry for the huge commit. Just taking on performance issues as I
see them. Changes in this:

- Deadlocks in region code finally fixed
- Chunk packet preparation optimized (saves ~10-20ms per packet, since
  we're sending these like 30 at a time that's pretty important) by
  storing chunks pre-encoded in memory (basically just using a single
  big array for IDs, metadata, and light)
- Move chunk generation and compression to the thread pool
- Move client chunk updates to the scheduler
- Improve profiler coverage
- Add knob to disable scheduling chunk events on chunk load
- Make it possible to disable specific scheduled events in config.yml
2017-05-23 18:17:44 -04:00
Drew DeVault
362c852f51 Many improvements to server stability+performance
Sorry for the vague commit message. There were a lot of changes. Here's
a list of most of them:

- Lighting updates are timeboxed each frame
- The next environment frame is queued sooner if the current one took
  longer (as soon as immediately)
- Issues with the physics engines and mobs using it were (mostly) fixed,
  mobs no longer freak out and get stuck on physics objects
- Mob AI/pathfinding is done more intelligently
- The player can no longer spawn in an ocean or a desert biome
- Some deadlocks in Region were fixed (more remain to be fixed)

The current performance bottlenecks are lighting (still) and propegating
initial chunk loads to blocks that need to schedule things (such as
grass blocks). I think the main culprit in the latter case is grass
blocks and water blocks. The former can be improved by adding a block
cache to World, but that'll take some custom work. This step is just
gonna be slow no matter what, we might have to split it across several
frames but it's never going to be great.

There still seems to be a deadlock somewhere in all of this mess, in the
world code. I'll find it later.
2017-05-22 19:51:23 -04:00
Drew DeVault
7f0e3338d2 Mention Patreon page 2017-05-11 11:52:16 -04:00
Drew DeVault
9a61e73ebd Do not allow placement of blocks within entities 2016-07-04 20:26:59 -04:00
Drew DeVault
e51d22cb52 Handle physics corner cases (literally) 2016-07-04 20:12:48 -04:00
Drew DeVault
a2f7f62a67 Update height map before trying to access it
Only if not already populated
2016-07-04 20:12:45 -04:00
Drew DeVault
314e49eed5 Add another physics test
This one fails, and brings to light a fundamental flaw in my physics
engine. Another rewrite will have to happen.
2016-07-04 15:42:49 -04:00
Drew DeVault
e1114ccda8 Fix up nunit tests + travis 2016-07-04 15:02:59 -04:00
Drew DeVault
9ca7bcabca Merge pull request #247 from gkbrk/list_command
Added list command
2016-04-26 13:37:54 -04:00
Gökberk Yaltıraklı
9cd4eaf775 Added list command 2016-04-25 19:34:32 +03:00
Drew DeVault
e5aaf73d12 Implement sun & moon 2016-04-20 20:54:00 -04:00
Drew DeVault
528eb2c5f4 Implement time update packet on the client 2016-04-20 18:55:16 -04:00
Drew DeVault
4dd67d30fa Reuse client mechanism for movement on entities
Also brings in some MonoGame math classes to fulfill this purpose.
2016-04-06 21:37:11 -04:00
Drew DeVault
9de14e371b Update client lighting on block change 2016-04-06 20:36:48 -04:00
Drew DeVault
0a3eca2745 Rerender adjacent chunks when we receive new ones
Which:

- Gives us accurate lighting information
- Allows us to remove edge blocks that are actually not visible
2016-04-06 20:10:51 -04:00
Drew DeVault
311e7cbc25 Fix multiple lighting issues
- Factor in lighting for snow and similar blocks
- Set default lighting value to 15

The second one is a bit of a temporary fix - the default should be 15,
but we should also be revisiting and rerendering chunks once we have the
neighboring chunk for this and other reasons.
2016-04-06 19:41:56 -04:00
Drew DeVault
04f7a86340 Add a timeout on network semaphore 2016-04-06 19:20:04 -04:00
Drew DeVault
d9eb5361b2 Re-enable world selection box on client exit 2016-04-06 19:10:33 -04:00
Drew DeVault
3b4d3f74de Detect errors and tell the user about them 2016-04-06 19:08:16 -04:00
Drew DeVault
d04e5de273 Add option to invert the mouse
Closes #189

Regards to @illblew
2016-04-06 18:53:40 -04:00
Drew DeVault
dd5030a13b Fallback to GTK for unrecognized OSes 2016-04-06 18:44:24 -04:00
Drew DeVault
37f0566507 Switch back to GTK2 for now
Fixes #238

Ref https://github.com/mono/xwt/issues/591
2016-04-06 18:41:45 -04:00
Drew DeVault
902b06ae5b Merge pull request #239 from Aragas/patch-1
Uppercase fix
2016-03-23 19:54:01 -04:00
Vitalij Mikhailov
0d673782fa Uppercase fix
There are probably more, seems by the previous commit
2016-03-24 02:32:49 +03:00
Drew DeVault
68f53787fc ItemStack.Empty -> ItemStack.EmptyStack 2016-03-20 14:12:57 -04:00
Drew DeVault
090e1042c9 Merge pull request #234 from Peroalane/master
Fix grass seed drop
2016-03-20 13:58:05 -04:00
Peroalane
e476546bd0 Another fix. 2016-03-20 18:56:10 +01:00
Peroalane
c1c9832fb1 Fixes 2016-03-20 18:52:25 +01:00
Peroalane
66cc475d9f Fix grass seed drop 2016-03-20 18:40:59 +01:00
Drew DeVault
fd42543130 Re-add YamlDotNet dependency
It seems to be all borken
2016-03-17 20:31:39 -04:00
Drew DeVault
edc685c261 Add Xwt.WPF.dll 2016-03-17 20:16:33 -04:00
Drew DeVault
b16e83a497 Drop Tao.Sdl.config 2016-03-17 19:31:33 -04:00
Drew DeVault
354b6e5067 Add DLL configs for Tao.Sdl and OpenTK 2016-03-17 19:15:12 -04:00
Drew DeVault
21dcfbd978 Upgrade to MonoGame 3.5, drop platform hacks
Thanks @cra0zy, that was easy
2016-03-17 18:58:25 -04:00