Commit graph

87 commits

Author SHA1 Message Date
Adam
153747e39c mod: fix checking for existing entries in EventDataCache 2022-05-01 15:43:44 +02:00
Adam
ab9e9d4d66 mod: fix settings names and descriptions 2022-05-01 11:20:54 +02:00
Adam
023fb8b3de mod command: print enqueued chunk count 2022-05-01 09:44:20 +02:00
Adam
4a2c771603 experiment with optimising map-chunk message 2022-04-24 11:32:34 +02:00
Adam
b81e62e2fd enable gradle build cache, and improve tasks 2022-04-23 17:59:37 +02:00
Adam
bb54f6666b fix 'prototype key' in MapTileDictionary 2022-04-20 23:15:20 +02:00
Adam
8ae4e934f7 rm object casting TypeScript (no longer needed) 2022-04-20 22:57:19 +02:00
Adam
b0a6151c36 move from schema2 to schema 2022-04-20 17:18:09 +02:00
Adam
6bfcd30558 use tuples for colours 2022-04-20 17:14:00 +02:00
Adam
8bf393f9c3 start tidying up after schema->schema2 migration 2022-04-20 11:28:30 +02:00
Adam
3fff57d46d biggest refactor ever...
- use kxs-ts-gen for TypeScript schemas
- update schema files, so they're tidier (no need for typescript-generator workarounds)
- version bumps (kotlin, gradle, tstl, factorio, kotest)
- improve kxs binary format (use okio)
- move schema files package ('events' wasn't needed)
- tidy up topic creation, naming. base it off classes, make util functions
2022-04-20 10:17:41 +02:00
Adam
f26f4286e9 remove extraneous word from mod setting titles 2022-03-14 22:19:58 +01:00
Adam
8d36111d9a - start code clean up by commenting out unused/deprecated code (start moving towards the 'event updates' Kafkatorio packets
- bring back the event Queue, and the command to emit lots of chunks
- allow setting the event update timeout directly when debouncing/throttling an update
2022-03-14 00:05:15 +01:00
Adam
1fbe0d87b0 fix EntityIdentifiers deserialization bug (kxs has polymorphism problems with interfaces) 2022-03-14 00:02:22 +01:00
Adam
3ebc8997d2 code tidy 2022-03-13 11:04:18 +01:00
Adam
70349d86a7 emit prototypes on_init (they don't seem to always emit, otherwise?) 2022-03-13 11:03:47 +01:00
Adam
b8ba8b7c9e - tidy up groupMapChunks.kt
- add ticks to all Kafkatorio Packets
- add Kafka Streams test for groupMapChunks.kt
2022-03-12 16:42:24 +01:00
Adam
8eac84da50 - add some proper Factorio settings to control EventDataCache
- bump Typescript version
- make some classes a bit more typescript-ey
- comment out some unused code
2022-03-09 22:28:29 +01:00
Adam
a9782a4d90 version bumps, schema tweaks, code tweaks, 2022-03-04 23:54:45 +01:00
Adam
b055397d25 - wicked sick size optimisation of map-tiles update packet
- fix ts-generator recursive value class unwrapping
- move kafka state dir
- try fixing kafka streams for tile generation (simplifying it, and fixing some nullability problems)
2022-03-02 18:39:03 +01:00
Adam
c5d4ae8d63 fix factorio command 2022-02-28 20:35:15 +01:00
Adam
1ba4371b14 update packet, add 'eventCounts' 2022-02-26 22:23:08 +01:00
Adam
758fea4195 only log a message if there are event cache entries, and formatting 2022-02-25 21:44:34 +01:00
Adam
93e02e852a code tidy 2022-02-24 22:17:00 +01:00
Adam
066f68ff4d event debouncing / throttling basically working now 2022-02-24 21:17:51 +01:00
Adam
8e7208ba08 - update data model: simplify key/data (by removing data) 2022-02-24 00:07:28 +01:00
Adam
b82e3a1bbf rename files 2022-02-23 11:58:24 +01:00
Adam
5208d9affd - make each event update have a key/data interface
- separate .d.ts file for event updates
-  fix initialisation of global items
2022-02-23 11:51:28 +01:00
Adam
494913d3b9 fix init of global vars, make MapTile DTO more concise, and version bump 2022-02-21 15:36:12 +01:00
Adam
8dff124a71 fix tstl task 2022-02-20 23:38:44 +01:00
Adam
3a92149424 version bump 2022-02-20 22:31:13 +01:00
Adam
7481c8162a fixing 'when' statements, tidying up some code, 2022-02-20 22:30:56 +01:00
Adam
d14d0cd991 finish first implementation of incremental updates 2022-02-20 22:18:14 +01:00
Adam
dd45bece53 model updates, and fix tests 2022-02-20 22:16:21 +01:00
Adam
e0b9ef9788 update event-type checker, plus some refactoring/updating 2022-02-20 12:40:55 +01:00
Adam
16510488da create an event-cacher, for debouncing/throttling 2022-02-20 12:39:50 +01:00
Adam
cecafedd78 bump typed-factorio version, and add some more TS strictness 2022-02-20 12:31:06 +01:00
Adam
8f9ebdb1e1 update events schema
- unwrap value classes when generating TS
- add value classes for some data types
- add FactorioEventUpdates (for new incremental event updates)
- use static lists for enum values (better performance)
- add LuaControl for sharing Player/Entity fields
2022-02-20 12:29:34 +01:00
Adam
727836a031 create TypeScriptToLua Gradle task, and some Gradle cleanup / experiments 2022-02-20 12:23:29 +01:00
Adam
a518255027 dependency and project version bumps 2022-02-13 12:20:37 +01:00
Adam
d66de7d879 update logo (make grayscale) 2022-02-13 11:09:13 +01:00
Adam
d634ecc909 release mod to portal (create logo, fix thumbnail, add desc) 2022-02-13 10:44:13 +01:00
Adam
f59cc0beb9 fix queue size? only increase if the key is new 2022-02-09 21:53:44 +01:00
Adam
8040149e25 version bumnp, more gradle tidying, and fix the kotlin-js-store yarn lock file location 2022-02-09 13:16:57 +01:00
Adam
11cbb89821 tweaking map scale/zoom 2022-02-09 10:45:44 +01:00
Adam
bdb2d9577f so close to working performantly.... just the tiles are transparent???
- bump some versions
- MapTile no longer has objectName field
- fix nulls/optional fields in FactorioConfigurationUpdate
- use bytes to encode rgba colours - waaaayyyy smaller
- increase Kafka record size to ~10mb
2022-02-08 01:35:52 +01:00
Adam
ea0bfb350b - MapTile/LuaTile no longer a FactorioObjectData (it doesn't get sent as a packet)
- trying to optimise the topology so it's faster... almost there but the records are now too large
- map tile pngs, multiple zoom levels
- use coroutines for faster map tiles
2022-02-06 21:05:37 +01:00
Adam
dbeb0e73dd try fixing queue size... 2022-01-23 22:59:47 +01:00
Adam
46ad618134 make 'chunks' command accept a 'radius' param (which makes current_chunk redundant) 2022-01-23 22:59:29 +01:00
Adam
678cf5504e hack together some sort of queue to help stop the chunk updates overloading the server. It doesn't work too well I think... 2022-01-23 13:50:21 +01:00