This Week In Veloren 142

4 minute read18 October 2021

Authored by AngelOnFira

This week, we learn about some proposed changes to how Airshipper downloads updated assets. We also learn about some changes coming to jewelry.

- AngelOnFira, TWiV Editor

Contributor Work

Thanks to this week's contributors, @Sam, @ubruntu, @xMAC94x, @nwildner, @Slipped, @UncomfySilence, @zesterer, @MHK.2012, @kaedr, @Socksonme, @KaliKatz, @Sharp, and @imbris!

@zesterer reworked the aurora shaders (along with how lighting at night is handled). You can see the results below. You can read this week's meeting notes here.

Asset downloads by @Christof

Motivated by the network speed issues with Airshipper, I recently made a proposal for incremental downloads of the game. See the discussion in this thread for more details. Basically, this proposal will send the checksum of all the files to Airshipper which will download only missing and updated parts of the archive - using either individual file sub-archives or full directories as needed. These sub-archives can be generated from a complete archive, on the fly by a cheap server-side logic, and are fully cacheable. The assets are even identical across architectures.

Also, I found that of the 200MB distribution file only 66MB are taken by the daily changing binaries, the rest is typically unchanged. Further investigation showed that the 66MB for veloren-server-cli.exe and veloren-voxygen.exe can shrink to 40MB by using a more efficient compression (aka .lzma or .xz) instead of deflate (aka .gz or zlib). Typically we might avoid this less portable compression method in zip files, if the archive was meant to be extracted by a different program than Airshipper. In Airshipper, we can bundle lzma-rs to decompress this format (which is also supported by 7-Zip and newer WinZip versions).

Sneaking by @ubruntu

This week, I refactored character states a bit so that sneaking isn't its own distinct state in the CharacterState enum, but rather it's an attribute of the "idle" state. The wielding and equipping states also got a stealth variety, and the end result is that players can pull out their weapons while sneaking. Shout out to @Slipped for doing all the animation work.

Jewelry changes by @DoctorKompot

Recently, I've been working on an update for jewelry. Existing rings are being reworked and some new necklaces are getting added.

Legendary necklaces (yellow borders):

  • Ankh of Life - Drops from mind flayer, an energy-based necklace
  • Carcanet of Wrath - Drops from minotaur, gives critical power

Epic necklaces (purple borders):

  • Cultist Amulet - Drops from mind flayer, similar stats to the Cultist set, well balanced
  • Diamond Necklace - Craftable, similar stats to the ring, but stronger
  • Ruby Necklace - Craftable, similar stats to the ring, but stronger
  • Emerald Necklace - Craftable, similar stats to the ring, but stronger

Rare necklaces (blue borders):

  • Fang Necklace - Craftable
  • Haniwa Talisman - Drops from T3 dungeon boss (Golems)
  • Honeycomb Pendant - Craftable

Uncommon necklaces (green borders):

  • Sapphire, Amethyst, and Topaz Necklaces - Craftable, similar stats to the rings
  • Gold Necklace - drops, from sauroks, humanoids, and large cave monsters
  • Seashell - craftable
  • Gem of Resilience - (renamed from Gem of Lesser Protection) drops from T2 dungeon boss

Common necklaces (grey borders):

  • Pendant of Protection (used to be named Plain Necklace) Drops from T1 dungeon
  • Low-Quality Necklace (basically starter item) Scratched necklace Drops from T0 dungeon

A serene morning. See you next week!