This Week In Veloren 71
This week, there is a lot of external work to check out. This includes the Rust Gamedev monthly newsletter, an interview with GamingOnLinux, and @Pfau's art blog. We also have new contributors to our Open Collective!
- AngelOnFira, TWiV Editor
Contributor Work
Thanks to this week's contributors, @zesterer, @yusdacra, @xMAC94x, @xvar, @Shandley, @Songtronix, @Imbris, @Pfau, @JoeyMaher, @Slipped, and @scottc!
Lots of external updates this week! We did an interview with GamingOnLinux. It covered many questions about Veloren's development with open source management and Rust. The Rust Gamedev May newsletter has come out. @Pfau has written his second blog about artwork in Veloren.
Our Open Collective has some new contributors! With the initial donations, we're going to start looking at how we're handling infrastructure. This will include reimbursing those who are voluntarily running our servers. It will definitely let our release parties run on the best hardware money can rent!
Airshipper now supports Mac thanks to @Songtronix's hard work! @CapsizeGlimmer has added group chat and regional chat functionality. @AVeryLostNomad worked on some minor features and bug fixes. These include an auto walk key, and lanterns no longer staying on when dropped. @xvar is working on improving how we use clippy, allowing us to catch a lot more potential errors in the future. @Shandley has been continuing work on SFX.
GamingOnLinux Interview
If you haven't checked it out already, here is a snippet from the interview!
GOL: Why not go with an off-the-shelf game engine?
F: "The big game engines like Unity or Unreal are great for general-purpose games. They’ve been heavily optimized for genres like first-person shooters, or games with meshes that you just import from your modeling software. However, once you want to dictate the rules on how the complex fundamentals of your world are created, you can run into some issues.
Engines have a lot of overhead and provide you with high-level abstractions. It’s as if you’re given Steve from Minecraft to control, but you really want to be controlling Qwop from QWOP. It’s a lot more work, but you have more precision in moving the way you want. Among other things, these engines would have a representation of what an “object” is. In Veloren, we would need each voxel in the world to be represented by this “object”. Internally, we represent voxels with as little data as we can, of which is very specific to our needs since we have that level of control. On the other hand, engines would store a lot more metadata about it, since engines need to work more generally for any type of game. It might include unneeded physics abilities, or the functionality related to meshes other than cubes.
On the other hand, there are other game engines that are more specific, such as the Amethyst engine, which is also written in Rust. It offers lots of modular functionality, where we could pick and choose systems that we like, or use the engine as a whole. However, Amethyst is still being developed, and wasn’t far enough along when Veloren was started.
Our approach to custom engine development has resulted in some unique systems. The land formation is sculpted by an erosion system that simulates over millions of years, and creates realistic features such as downhill rivers. Our procedurally-generated villages already have some simple economic simulation. This comes from attracting developers that are interested in experimenting with ideas that are niche and novel, and have an incredibly flexible engine to work with."
GOL: Your ultimate goal for Veloren?
F: "For each of us, it’s different. The project was originally started by people who wanted to make an experience that would fill the void created by Cube World. However, since then, many people have joined who had never played Cube World before. The project founder, @zesterer, wants to create a dynamic world where settlements and cities interact economically and politically. @Songtronix’s goal is to improve the user's experience with Veloren, primarily by working on our launcher, Airshipper. @Pfau, wants to create a vivid world from the art of our many artists. @Slipped wants to create a captivating animation system. @Timo wants to create a dynamic experience that friends can have. @Sharp is using real-world natural processes to simulate our world generation system. With everything that inspires each one of us, I think we can create the game we are hoping for."