Commit Graph

50 Commits

Author SHA1 Message Date
tobspr 04ea105584 Fix lots of bugs, add wire splitters / mergers 2020-07-06 21:33:37 +02:00
tobspr 54be64c0e2 Fix energy generator being not rotateable 2020-07-06 19:31:00 +02:00
tobspr 34ef26b289 Fix multiple issues regarding saving / restoring games 2020-07-05 16:56:01 +02:00
tobspr a77911263d Implement concept of energy consumption 2020-07-02 17:43:47 +02:00
tobspr bd899df5fe Further progress on the energy generator / wires, fix translations 2020-07-01 17:51:11 +02:00
tobspr 722c8ef836 Start to rework the graphics for the wires layer, make wires cooler than belts 2020-06-30 12:38:20 +02:00
tobspr b499760d74 Start to work on advanced shape processing 2020-06-28 20:28:46 +02:00
tobspr 0967d5114c Initial take on wires 2020-06-28 19:34:10 +02:00
tobspr 17123fd7b9 Further work on the energy generator 2020-06-28 11:44:30 +02:00
tobspr de0b305276 Minor fixes to the throughput 2020-06-27 16:40:51 +02:00
tobspr 5dab3508cd Improve tunnel performance by caching receivers 2020-06-27 11:39:32 +02:00
tobspr 2e266f5f21 Get rid of 'builtins' file since its useless and causes performance issues 2020-06-27 10:51:52 +02:00
tobspr 14246929b3 Fix item ejector bug 2020-06-27 10:44:23 +02:00
tobspr 419401b9be Improve performance by getting rid of instanceof 2020-06-27 10:38:11 +02:00
tobspr c844dd4798 Improve performance by only updating belt ejectors on the end of paths 2020-06-27 09:52:26 +02:00
tobspr 42c569d91f Implement saving and restoring belt paths 2020-06-26 18:24:02 +02:00
tobspr 192d1dbedb Initial take on belt optimization 2020-06-26 13:57:07 +02:00
tobspr 6677ff0a44 Initial take on wires 2020-06-24 22:23:10 +02:00
tobspr 12927ec0ff
Merge pull request #198 from Phlosioneer/remove-belt-cache
Optimize belt cache
2020-06-24 20:26:22 +02:00
tobspr b575bc4f41
Merge pull request #200 from Phlosioneer/ejector-cache-opt
Optimize ejector cache
2020-06-24 19:41:49 +02:00
Phlosioneer f15cd5bcff Rework to cache instead of serialize
Using lessons from other PRs
2020-06-17 15:38:39 -04:00
Phlosioneer 36cf28029e Remove ejector cache; use slot caches instead
This is a small refactoring that removes the main ejector cache. The
cache is now tracked by slots and ejector components.

It avoids a large array allocation and many small object allocations,
but adds many small array allocations. It's net neutral for performance.
2020-06-16 21:11:26 -04:00
Phlosioneer 8a50fdb392 Remove belt cache array; use BeltComponent instead
Removed the belt cache array. Follow-up belts are cached in the belt's
BeltComponent instead. This change also removes the recursive follow-up
search, which could cause a stack overflow for an extremely long belt
chain.

Saves one object allocation per belt per change, two very large array
allocations per change, many function calls, and belts are only visited
exactly once per change.
2020-06-16 19:56:09 -04:00
Phlosioneer d4fc2e6dcd Fix lint errors 2020-06-16 16:21:45 -04:00
Phlosioneer 83a4928be5 Make miners cache mined item
Saves two chunk+tile lookups per update, and one chunk+tile lookup per
draw.
2020-06-16 16:02:29 -04:00
tobspr cda24ceb04 Refactor item acceptor system for huge performance improvement 2020-06-14 14:37:13 +02:00
tobspr e95b055e10 Minor improvements to belt performance 2020-06-14 14:20:35 +02:00
Dimava 6c349479cf fix belt cloning bug 2020-06-01 12:46:37 +03:00
tobspr 2a4ee8e784 Fix crash regarding blueprints being copied wrong 2020-05-28 13:49:50 +02:00
tobspr 0cd324c82b Initial support for blueprints (Buggy) 2020-05-27 14:30:59 +02:00
tobspr 1577ebe48c Add storage building 2020-05-20 15:51:06 +02:00
tobspr a60d23da77 Multiple improvements, fix saves on underground belts 2020-05-18 22:08:33 +02:00
tobspr 2c659482c4 Update ftp deployment, fix minor bugs in savegame serialization 2020-05-18 19:47:40 +02:00
tobspr 2c48cb72aa Major performance improvements 2020-05-18 17:40:20 +02:00
tobspr 260ba892c8 Properly process belt dependencies and fix items not travelling linear on belts 2020-05-18 16:08:33 +02:00
tobspr ca0e17f3dd Support dynamic tick rates 2020-05-18 12:53:01 +02:00
tobspr d58d15ef8c Add building speed infos to all buildings 2020-05-17 15:32:19 +02:00
tobspr 13c6fc7598 Multiple improvements 2020-05-17 10:07:20 +02:00
tobspr cad6b357e3 Add quad cutter and painter 2020-05-17 00:21:33 +02:00
tobspr bce44188c8 Add underground belt tier 2 2020-05-16 23:48:56 +02:00
tobspr 5179488373 Add CCW rotater 2020-05-16 23:13:45 +02:00
tobspr 12fc7b084a Make belts balanced 2020-05-16 23:01:26 +02:00
tobspr 5e3c28c150 Add support for different building variants 2020-05-16 22:45:40 +02:00
tobspr 224bc6c7e5 Add ability to import savegames, add game menu, multiple smaller improvements 2020-05-16 17:57:25 +02:00
tobspr 9adbbfa1c3 Fix crash when saving due to FP imprecision 2020-05-15 19:09:29 +02:00
tobspr 4e97ec281e Fix bug when saving underground belts 2020-05-15 11:08:49 +02:00
tobspr b64bbc8132 Fix hub being removable after restoring a game, fix tslint errors 2020-05-14 22:46:31 +02:00
tobspr b01d38e55d Initial support for saving games 2020-05-14 21:54:11 +02:00
Tobias Springer bb1758642b Add originalRotation to static comp in order to fix bugs with the automatic placement 2020-05-10 17:45:48 +02:00
Tobias Springer 93c6ea683d Initial commit 2020-05-09 16:45:23 +02:00