about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorFilesLines
2021-08-01 r/2701 refactor(nix/buildLisp): use passthru for extra attributessterni1-15/+17
Using passthru and appending the attributes via `//` have the same effect with a subtle difference: In the latter case re-evaluating the derivation when using the underlying `mkDerivation`'s `overrideAttrs` will delete all appended attributes. Using passthru at least preserves the attributes although the self reference to the derivation in `passthru.sbcl` will become outdated (unless updated manually). Change-Id: I8b85009f386b9375b86a23fd50c4ec8c6a9dea7f Reviewed-on: https://cl.tvl.fyi/c/depot/+/3257 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: grfn <grfn@gws.fyi>
2021-08-01 r/2700 fix(tverskoy): Set timezone to Europe/MoscowVincent Ambo1-1/+1
Change-Id: Ibcf9322086d96847aa9c629c5535965db32ba4fe Reviewed-on: https://cl.tvl.fyi/c/depot/+/3266 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2021-08-01 r/2699 feat(users/Profpatsch): add reverse-haskell-depsProfpatsch2-0/+98
Dis is dumb Change-Id: If09300eedff7227ed452dcec7a8e80c7ffb24757 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3231 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-07-30 r/2698 feat(gs/emacs): Switch org-ellipsis characterGriffin Smith1-1/+1
The old one's displaying as an emoji, upsettingly Change-Id: I50980e4b9f2a58463e749a8adcc32f0f9ca1d154 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3261 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-07-28 r/2697 feat(tools/depot-nixpkgs-update): tool to update our pinsterni3-0/+48
Very simplistic tool to aid with updating our nixpkgs channel pins: This tool prints the correct two `*Hashes` sets to stdout, so you can easily delete the appropriate lines in `third_party/nixpkgs/default.nix`, run ./bin/depot-nixpkgs-update | wl-copy and paste it into your editor. Doing this fully automatically would be possible, but would either a) require changing `default.nix`, so it is regex-able more easily, b) touching something like rnix-parser which I have no motivation to at the moment or c) searching for the old hashes and replacing them with the new ones. This may be a simple and worthwhile improvement in the future. Change-Id: I4df44e3827ce9ff6e4fe2d336c08016d799e21a7 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3252 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-07-28 r/2696 chore(3p/nixpkgs): update channels to 2021-07-25sterni4-14/+17
* 3p/buzz: bump to latest master (1.6.0) * 3p/emacs/explain-pause-mode: adjust to package-build update MELPA's package build now cares about git revisions, but calling VC commands in a nix build is usually a bad idea. Thus upstream nixpkgs passes `$commit` to the `buildPhase` and otherwise fails with an error message that doesn't really point to the issue. Upstream change: https://github.com/NixOS/nixpkgs/commit/9140d4b06ff09bce8dd8e384eeef832e7811d288 * 3p/overlays/emacs: udpate to 2021-07-25 to support the package-build update. Without this emacsPackages.xelb (for tazjin's exwm) would fail. Change-Id: I7cd782fe7d66ed4ea78c529b79fe761d921f46a8 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3253 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: grfn <grfn@gws.fyi>
2021-07-20 r/2695 fix(tverskoy): Persist Mullvad VPN settingsVincent Ambo1-0/+1
Change-Id: Icd33a613e613b48038c193c85721d9dd061549c1 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3254 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2021-07-16 r/2694 chore(3p): bump unstable channel to 2021-07-03sterni3-7/+3
Didn't bother to update the stable channel as it is unused currently. Changes required: * tazjin/frog, grfn/modules/obs: Remove obs-v4l2sink as it has been integrated into upstream OBS and the package removed from nixpkgs subsequently (at least according to the `builtins.throw`-message). Change-Id: I4335ed060eef2c4ff8ac55a68d894bcc3d8ef4a3 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3243 Tested-by: BuildkiteCI Reviewed-by: grfn <grfn@gws.fyi> Reviewed-by: tazjin <mail@tazj.in>
2021-07-16 r/2693 fix(gs/system): Add mime handler for telegramdesktopGriffin Smith1-0/+3
Telegram adds this itself, which means the file is different from what home-manager knows about, which means running home-manager switch breaks unless this is here. Change-Id: Iad507bf63365a630b7eef349228b633f5b83d78b Reviewed-on: https://cl.tvl.fyi/c/depot/+/3251 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-07-16 r/2692 refactor(gs/emacs): Drop flow configGriffin Smith1-28/+0
Change-Id: Ide0f3c4de34e6d9cb90038094407f1aa99ccf96f Reviewed-on: https://cl.tvl.fyi/c/depot/+/3250 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-07-16 r/2691 fix(gs/emacs): Shift around loading of org configGriffin Smith1-2/+7
I don't know why this is causing issues, I really don't. But I get agenda items without having to reload this file now. Change-Id: I38fd4f7942430a07231cadbc0320e1ba786616e6 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3249 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-07-16 r/2690 fix(gs/emacs): Pass --read-envelope-from to sendmailGriffin Smith1-2/+8
Change-Id: I8e4c0171336cad3ed817956b07b371aba706ab9f Reviewed-on: https://cl.tvl.fyi/c/depot/+/3248 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-07-14 r/2689 feat(tazjin/emacs): Add layout for external TV on tverskoyVincent Ambo1-1/+11
Change-Id: I6ac9b7180b940ca3018d999500f035245a358079 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3246 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-07-14 r/2688 fix(tazjin/emacs): Enable key bindings for Russian layoutVincent Ambo1-4/+4
Change-Id: I26d0d437c00d927b9244c4aa4a8705681cd212c8 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3245 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-07-14 r/2687 fix(tverskoy): Ensure rink is installedVincent Ambo1-0/+1
Yes, this is a fix. Change-Id: Ie80dc0f60c6343388388fba3327816d8a1b0fbe0 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3244 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-07-14 r/2686 chore(tazjin/tverskoy): Enable fwupdVincent Ambo1-0/+1
Very worried about this, Lenovo has a knack for bricking devices with firmware updates ... Change-Id: Idc111fe9d4bd7edf1e6c633040cf35e82f858724 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3224 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-07-06 r/2685 feat(gs/emacs): Don't display info-level flycheck errorsGriffin Smith1-1/+3
These end up being things like "hey, you used a proc macro" which isn't useful to me, and clogs up the rest of my error navigation. Change-Id: I9ccfddcce9683184f2479ae1aa30a8414f7e7c51 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3242 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-07-06 r/2684 fix(xanthous): Fix display of square/cubic unitsGriffin Smith2-4/+11
Previously this'd display `5 m m³`, because it'd show the underlying value then add the unit suffix on at the end Change-Id: Idd240ddfebc212460f9fb529eff72732a5dafe2a Reviewed-on: https://cl.tvl.fyi/c/depot/+/3241 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-23 r/2683 fix(gs/emacs): Fix headlines-from-assigned-to-meGriffin Smith1-1/+2
If org-tracker-headlines-from-search is called non-interactively, it only *returns* the org headlines as a string, rather than inputting them at point. Change-Id: Ia43d516f35a11383b206a57f345a6aeedfe86831 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3230 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-23 r/2682 fix(xanthous): Only use alphabetic chars for menu itemsGriffin Smith6-3/+63
Previously, we were using `smallestNotIn` for selecting new characters for menu items with duplicate chatacters - this uses the 'Bounded' instance for the type, which for Char meant the first character we would always select was \NUL - making it look like the menu item had no character, and making it impossible to actually select the menu item. This introduces an AlphaChar newtype, which is a wrapper around Char whose Bounded and Enum instances only use alphabetic characters (a-ZA-Z) and uses that for menu characters instead. Change-Id: If34ed9e9ce84f2bcb1cb87432cc6273f40b69f72 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3229 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-23 r/2681 feat(xanthous): Describe *where* the item is in the inventoryGriffin Smith8-23/+133
When describing items in the inventory, both in detail and when producing menus from those items, describe not just the item itself but also *where* in the inventory the item is (either in the backpack, or wielded in either or both of the hands). This uses a new InventoryPosition datatype, and a method to get a list of items in the inventory associated with their inventory position. When *removing* items from the inventory (to wield, drop, or eat them), we want to make sure we remove from the right position, so this also introduces a `removeItemAtPosition` method to make that happen correctly. Finally, some of the tests for this stuff was getting really slow - I narrowed this down to runaway arbitrary generation for message Templates, so I've tweaked the Arbitrary instance for that type to generate smaller values. Change-Id: I24e9948adae24b0ca9bf13955602108ca9079dcc Reviewed-on: https://cl.tvl.fyi/c/depot/+/3228 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-23 r/2680 feat(xanthous): Add a command to describe an item in the inventoryGriffin Smith8-31/+139
Add a new DescribeInventory command, bound to I, to prompt for an item in the inventory (anywhere in the inventory, including wielded) and display a (new) panel describing it in detail. This description includes the description, the long description, and the item's physical properties (volume, density, and weight). Change-Id: Idc1a05ab16b4514728d42aa6b520f93bea807c07 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3227 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-23 r/2679 feat(xanthous) Generate random volume+density for itemsGriffin Smith9-25/+108
Generate random volumes and densities for items based on the ranges for those two quantities in the raw when building instances of items. Since this is the first time creating an item is impure, this also lifts entity generation into a (random) monadic context Change-Id: I2de4880e8144f7ff9e1304eb32806ed1d7affa18 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3226 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-23 r/2678 feat(xanthous): Track the volume and density of item typesGriffin Smith12-33/+255
Allow the itemType raw to have density and volume fields, both of which represent *intervals* of both density and volume (because both can hypothetically vary a bit). The idea here is that when we're making an *instance* of one of these items, we pick a random value in the range. Lots of stuff in this commit is datatype and typeclass instances to support things like intervals being fields on datatypes that get serialized to saved games - including a manual definition of Ord for Item since Ord isn't well-defined for intervals Change-Id: Ia088f2f75cdce9d00560297e5c269e3310b85bc3 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3225 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-19 r/2677 fix(gws.fyi): Remove reference to freenodeGriffin Smith1-1/+1
I'm not on freenode anymore Change-Id: I72891f8db468cd318a069e4f409150717c6b9360 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3223 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-18 r/2676 feat(xanthous): Fistfighting builds knuckle callusesGriffin Smith8-20/+229
2000 ticks after the character damages their fists by hitting something, the character now develops calluses on their fists (scaled by *how* damaged they've become) that reduce the chance of them receiving additional damage from hitting things - up to a max of 5, which prevents *all* damage from fistfighting. This is all tracked in a new "Knuckles" struct in a new "Body" struct on the character datatype, which manages stepping itself forward as part of the Brain impl on the character. Change-Id: Ica269f16fb340fb25900d2c77fbad32f10c00be2 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3222 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-18 r/2675 feat(xanthous): Add an auto-rest commandGriffin Smith6-12/+35
Add a command that automatically rests (essentially just stepping the game forwards) until the character's hitpoints are back to full. Currently due to the time it takes for the character to heal this takes a bit too long - my thought there is to make the per-step delay for autocommands different depending on the specific autocommand. Change-Id: I40378c29d3d9d19e9787af1f015bde65fd08868c Reviewed-on: https://cl.tvl.fyi/c/depot/+/3221 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-18 r/2674 feat(xanthous): Add configurable natural attacksGriffin Smith7-12/+69
Allow configuring the natural attacks (eg, part of their body rather than an item) of a creature. Each attack has a description and a damage associated with it. Change-Id: I69698a8ac4ee2da91e4c88e419593627519522a5 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3220 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-18 r/2673 feat(gs/emacs): Bind g R to lsp-find-references in haskell-modeGriffin Smith1-0/+1
Change-Id: I49330e11a4cf402a4d06e7b657d3216eec9e5867 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3219 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-18 r/2672 feat(xanthous): Add an ooze creature typeGriffin Smith2-2/+14
This required making sayVerb optional, as oozes don't say anything Change-Id: I2c7f425ca26d92beef1097eda49d84f00c84c482 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3218 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-18 r/2671 feat(xanthous): Install qpdf in the shellGriffin Smith1-2/+4
This gets us the zlib-flate command line utility, which is useful for decompressing our zlib-compressed save files and poking around in the JSON Change-Id: Ia0d8259d261c4313322d68cc8409ba13f9fb570c Reviewed-on: https://cl.tvl.fyi/c/depot/+/3217 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-18 r/2670 feat(gs/home): Install gronGriffin Smith1-0/+1
this is pretty useful Change-Id: If79af3f8f3bd1d1e810f4af6eebfc618eb4c603b Reviewed-on: https://cl.tvl.fyi/c/depot/+/3216 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-18 r/2669 fix(xanthous): Wipe memoized vision when the game updatesGriffin Smith2-3/+9
If the game steps forward, entities could be moving around, so we need to wipe the memoized character vision. Change-Id: If6ea6a8c4bed7aefef90a0a2ab17eff0af9b9bbe Reviewed-on: https://cl.tvl.fyi/c/depot/+/3215 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-16 r/2668 feat(gs/emacs): Add command to pull down all assigned JIRA ticketsGriffin Smith1-1/+7
as org-mode headlines, using org-tracker-headlines-from-assigned-to-me Change-Id: Ie2ce8ec768702a71fb74c36024a3974c2d675571 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3214 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-16 r/2667 fix(gs/emacs): Fix typo in org-tracker-state-alistGriffin Smith1-1/+1
Change-Id: I219cb09a05dd4ac4d4196dde1dea10838d330b71 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3213 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-16 r/2666 feat(gs/home): Install a bunch of new latex packagesGriffin Smith1-3/+19
I'm typesetting a type system! `semantic` is the big winner here, but also `mathpartir` is nice Change-Id: I27ee91d30e0fe680377ce48f7539553fd0707684 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3212 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-14 r/2665 chore(3p/nixpkgs): Bump unstable channel to 2021-06-14Vincent Ambo3-7/+7
Included fixes: * 3p/apereo-cas: Don't use stdenv.lib * grfn/system: Bump Linux to 5.12 (5.11 is gone) Change-Id: Ie32d476e659ba482418d4035333c2797a7dbd106 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3211 Reviewed-by: sterni <sternenseemann@systemli.org> Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-14 r/2664 feat(gs/yeren): Install subsurfaceGriffin Smith1-0/+1
Change-Id: I7ed8709e93f8b7863264d6772def316b48f3892b Reviewed-on: https://cl.tvl.fyi/c/depot/+/3210 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-14 r/2663 feat(gs/emacs): Add haskell test-group snippetGriffin Smith1-0/+9
For tasty testGroups Change-Id: I855ceed68e575eec48f236608015f8d40416e332 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3209 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-14 r/2662 feat(gs/emacs): Revamp haskell test-mode snippetGriffin Smith1-5/+10
This is how I'm writing test files for xanthous now, and I'm not writing any other haskell code, so let's update the snippet Change-Id: Ia513490ee1cfc87b3d58ee1a8e94244f2e862963 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3208 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-14 r/2661 feat(xanthous): Gormlaks yell in gormlak when they see the characterGriffin Smith6-28/+98
Add a new "greetedCharacter" field to the creature hippocampus type, which tracks whether or not that creature has greeted the character yet. In the gormlak AI, when the gormlak sees the character and starts running towards them, if that field is set to False send a message that says that the gormlak yells a single randomly-generated gormlak word at the character, then set the field to true The gormlak yells "gukblom"! Change-Id: I17a388393693a322c2e09390884ed718911b2fc4 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3207 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-14 r/2660 feat(xanthous): Add a method to get the name for a type of entityGriffin Smith4-1/+35
I didn't end up using this directly for the thing I was doing, but it still seems generally useful enough that I'm keeping it around for now Change-Id: I05c8902d75845f2230ec2373a9677d61cfaafafd Reviewed-on: https://cl.tvl.fyi/c/depot/+/3206 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-14 r/2659 feat(xanthous): Store language on creaturesGriffin Smith2-1/+29
Add a new "language" field to the CreatureType raw type, which references the *name* of the language that creature speaks (this is so that different creatures can speak the same language without having to duplicate the language definition in the raws). At some point this should change to not hardcode the sets of languages and instead define them in data files like we do for creatures, but this is fine as a start. Change-Id: I6708570175e23472cb37e0061a329e54e8eac9c0 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3205 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-14 r/2658 feat(xanthous): BangPattern all fields in RawsGriffin Smith1-10/+10
This is generally just good practice for foundational data-types like these Change-Id: I88c5b6b73dad6665cf25837b8d6a9e0ea66f2b0b Reviewed-on: https://cl.tvl.fyi/c/depot/+/3204 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-14 r/2657 feat(xanthous): Extend speech generation to arbitrary wordsGriffin Smith2-24/+102
Wrap up the Phonotactics type into a Language type including both the phonotactics and a distribution of the number of syllables per word, so we can generate arbitrary words in addition to just arbitrary syllables Change-Id: I8a37ce9c0eec019c9b84d21b0f2b3b9f5fd319eb Reviewed-on: https://cl.tvl.fyi/c/depot/+/3203 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-13 r/2656 feat(xanthous): Add a generator for random english syllablesGriffin Smith7-26/+216
Add a new "speech" generator module, with the beginnings of the vague definition of the phonotactics of the language (there's one in here for English based on the wikipedia article for English phonology, but it's less than ideal as it has generated words like "sprurlkt") and the ability to generate random syllables of a language by picking an onset, nucleus, and coda from the list for that language (within a range of the number of allowed of each syllable part). This will be used down the road to automatically generate utterances from various non-english-speaking creatures (so the accuracy is less important, just that it "feels real"). Change-Id: I7b81375ec595239c05c5c800cbde1a2a900e38ac Reviewed-on: https://cl.tvl.fyi/c/depot/+/3202 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-13 r/2655 refactor(xanthous): Generators -> Generators.LevelGriffin Smith11-39/+40
I'm going to start adding generators for things like text soon, so it makes sense to specifically sequester level generators as their own thing Change-Id: I175025375204fab7d75eba67dd06dab9bd2939d3 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3201 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-12 r/2654 feat(atward): Handle plain host queriesVincent Ambo1-0/+28
Redirects host queries with no parameters (e.g. `cs`, `todo`, `b`) to the start page of the appropriate host. Fixes: b/133 Change-Id: I9d9dee753cfb460a97b73f39bbfe3cae54aae89b Reviewed-on: https://cl.tvl.fyi/c/depot/+/3184 Tested-by: BuildkiteCI Reviewed-by: grfn <grfn@gws.fyi>
2021-06-12 r/2653 feat(xanthous): Memoize characterVisiblePositionsGriffin Smith14-88/+285
Memoize the return value of characterVisiblePositions to a new, semi-abstracted "memo" field on the GameState, recalcuclated if the character position ever changes. I'm 90% sure that the perf issues we were encountering were actually caused by characterVisiblePositions getting called once for *every tile* on draw, but this slightly larger change also makes the game perform relatively-usably again. Since this is only recalculated if the character position changes, if we ever get non-transparent entities moving around without the characters influence (maybe something building or knocking down walls?) we'll have an issue there where the vision won't be updated as a result of those changes if they happen while the character is taking a non-moving action - but we can cross that bridge when we come to it. Change-Id: I3fc745ddf0014d6f164f735ad7e5080da779b92a Reviewed-on: https://cl.tvl.fyi/c/depot/+/3185 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-06-12 r/2652 fix(grfn/xanthous): Update shell for new depot structureGriffin Smith1-2/+6
Since 473604f5675c455a65b91e287b125a9e042ae39f (CL/2910), depot hasn't been directly exposing `pkgs` as an attribute, instead exposing it via third_party.nixpkgs - the xanthous shell.nix isn't checked in CI, so it was missed as part of that refactor - this updates it to be in line with that Change-Id: I12b081c16d53c6798f51ec6660ffa6d345870580 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3176 Tested-by: BuildkiteCI Reviewed-by: grfn <grfn@gws.fyi>