Commit graph

86 commits

Author SHA1 Message Date
Adam
23a2ecb0d4 set serial name for MinedProduct and MinedProduct.Type 2022-06-27 22:59:52 +02:00
Adam
e9a4ee4c48 set up syslog docker parser (remove need for Kafka Pipe script) 2022-06-27 22:07:42 +02:00
Adam
dacb6f62c4 tidy up Gradle config, standardise a group for Factorio Mod tasks 2022-06-26 14:56:53 +02:00
Adam
a225b65901 (minor) make kt function expression 2022-06-19 10:38:50 +02:00
Adam
8f24bfb797 make event schema js target browser only, and not executable (faster compilation) 2022-06-19 10:21:59 +02:00
Adam
33d31bfbdd version bumps. Kotlin 1.7 and yarn.lock and others 2022-06-19 10:20:48 +02:00
Adam
8c37a0cef9 trigger tile png reload in browser by sending 'saved tile' events over websocket
- create new EventServerPacket for websocket packet data
- move common models to events-schema
2022-05-25 12:50:34 +02:00
Adam
11a537091e rm unused model MapTiles 2022-05-14 23:50:25 +02:00
Adam
f0590b9df4 mad wicked sick tile grouping optimisations 2022-05-14 12:50:13 +02:00
Adam
6618a92a66 add some hacks to try and stop 'Projects must be configuring' bug 2022-05-14 12:23:58 +02:00
Adam
ffe9bcb9a8 bump versions
- kotlinx js wrappers
- kotest

also fix kotest dependencies
2022-05-14 12:22:47 +02:00
Adam
5a000b9327 fix entity position type, fix Entity proto property name clash, and update ts-schema 2022-05-07 23:02:31 +02:00
Adam
4cb7d0e1f3 add entity prototype 2022-05-07 20:29:39 +02:00
Adam
688b2c7bcb - add tile deconstruction (concrete tiles can be removed)
- add @SerialName to all packets
- start implementing Entity prototype
- start implementing Entity updates
- clean up some old commented out code
- refactor how debounced events track the triggering events (now include timestamps per event)
- bump tstl
2022-05-07 20:29:24 +02:00
Adam
5656acd350 try fixing gradle config cache errors 2022-05-07 20:22:54 +02:00
Adam
ee3c7956cd events-server: fix tile grouping, chunking, saving
- debounce chunk and tile updates
- make the tile output-dir configurable
- basic test for manual checking
2022-05-01 15:50:44 +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
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
1c55fae236 tidying up schema files 2022-04-20 17:03:23 +02:00
Adam
d1353eec60 fix broken tests 2022-04-20 12:58:04 +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
db14865ca9 start simplifying schema packets 2022-03-16 23:27:37 +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
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
19bfe3a232 shutdown all KafkaStream apps if one crashes 2022-03-12 01:39:19 +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
ebb8482201 make factorio ID value classes, nicer, and remove 'EncodeDefault' from colours 2022-02-27 01:02:33 +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
8e7208ba08 - update data model: simplify key/data (by removing data) 2022-02-24 00:07:28 +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
7481c8162a fixing 'when' statements, tidying up some code, 2022-02-20 22:30:56 +01:00
Adam
dd45bece53 model updates, and fix tests 2022-02-20 22:16:21 +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
d634ecc909 release mod to portal (create logo, fix thumbnail, add desc) 2022-02-13 10:44:13 +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
96412bf7c9 bump gradle version. gradle build scripts tidy up. Make versions more consistent, share some config 2022-02-09 11:53:58 +01:00
Adam
5a59b3bd6d workinggggg!!!!!!!
- fix map tiles proto colours KTable
- test and tidy up Colour/ColourHex
- reset event-server application
2022-02-08 11:51:16 +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
97d0de56e7 tidy up event-schema ksx json stuff, and make the "empty list <-> empty object" thing contextual 2022-01-23 13:52:54 +01:00