symbiants VS flecs

Compare symbiants vs flecs and see what are their differences.

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
symbiants flecs
19 48
199 5,589
- -
9.7 9.6
2 months ago 4 days ago
Rust C
Apache License 2.0 MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

symbiants

Posts with mentions or reviews of symbiants. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-26.
  • 3 years of fulltime Rust game development, and why we're leaving Rust behind
    21 projects | news.ycombinator.com | 26 Apr 2024
    I've experienced a lot of these concerns while building https://github.com/MeoMix/symbiants

    I have a simple question that maybe someone smarter than me can answer confidently:

    If I want to build something akin to Dwarf Fortress (in terms of simulation complexity) as a browser-first experience - what stack should I choose?

    Originally, I prototyped something out using React, PixiJS, and ReactPixi (https://github.com/MeoMix/antfarm). The two main issues I ran into were the performance of React's reconciler processing tens of thousands of entities when most weren't changing (despite heavy memoization) and GC lurching due to excess object allocations. My takeaway was that if I wanted to continue writing in JS/TS that I would need to write non-idiomatic code to avoid excess allocations and abandon React. This approach would result in me effectively creating my own engine to manage state.

    I decided to not go that direction. I chose Rust because no GC is a language feature (especially good since GCs in WASM are heavy) and I chose Bevy because it seemed like a fairly structured way to mutate a large amount of code.

    Progress has been slow for a lot of the reasons listed in this article. I've written a lot of this off to WASM being a new frontier for game dev and rationalized it by noting there's not a lot of complex simulation games running in browser (that I'm aware of). It's not clear to me if that's actually true, though.

  • Progress Quest: the original idle game
    4 projects | news.ycombinator.com | 24 Apr 2024
    I'm (slowly) building an ~idle game with a twist! Here's the code: https://github.com/MeoMix/symbiants

    The idea is you're given a simulation of an ant colony that grows autonomously 24/7. You define a window of time each day in which you're allowed to make adjustments to the colony's strategy to help them live more optimally. This is paired with mental health exercises like breathwork and journaling.

    The intent is to get people being more consistent with self-care by being motivated to care for a digital pet, but to not make it such an involved endeavor as to be time consuming like a traditional game.

    I'm going to pair with some chill lo-fi music so you can hang out and watch your ants do their thing when you need a moment to feel less frazzled while at your desk job :)

    Still a long long ways to go before I have anything really tangible and useful, but feel free to follow along with the code or ask questions!

  • Revy – proof-of-concept time-travel debugger for the Bevy game engine
    3 projects | news.ycombinator.com | 4 Mar 2024
    What's the performance of this like? It seems really appealing. I would love to be able to use it to debug https://github.com/MeoMix/symbiants because I use RNG heavily to add variance to the world and that, combined with indeterminate execution order of systems, can really leave me scratching my head sometimes.

    However, I'm building using a tilemap that's 144x144. So I've got ~21000 entities to log. It seems impractical to snapshot the world every tick, but maybe if it were able to snapshot deltas or something?

  • Ants Geopolitics
    2 projects | news.ycombinator.com | 27 Feb 2024
    Love this book! I wrote Adrian after reading it and asked for permission to build a game inspired by it and received his blessing (https://i.imgur.com/JWwNMR4.png) :)

    (slight spoilers, FYI)

    https://ant.care/ https://github.com/MeoMix/symbiants It's my first game, so it's going pretty slowly, but the goal is to have the player fill the role of the Eliza/Kern hybrid. You send commands to your pet ant colony once-per-day when orbiting the planet gives you line-of-sight. The act of caring for the pet gives you a renewed sense of purpose and a reason to care for yourself and is a mechanism for helping undue to the insanity.

    I'm still trying to figure out exactly what the game mechanics will look like (if you have suggestions, I'm all ears!), but I took a stab at some creative writing to build up the plot a bit more:

    https://docs.google.com/document/d/17ACH1XLCn7hkKz2dhuL1c_nx...

    https://docs.google.com/document/d/1wET9mWaYae_GMqbm8n37UoNF...

    ---

    Regarding the interview, I would love to know more about his process for deciding which aspects of an animal's ecology he's going to represent in his fiction. Tynan Sylvester (creator of RimWorld, a popular video game) wrote this article called The Simulation Dream, https://www.gamedeveloper.com/design/the-simulation-dream, and I think about it a lottt. One concept Tynan stresses for creating a rich and engaging story is to "Choose the minimum representation that supports the kinds of stories you want to generate." I would love to know why Adrian chose to give ants/spiders/(octopi..) the behaviors they have throughout his series and, if he considered other behaviors that he ultimately omitted, what his thought process was for ruling those other behaviors out.

  • What's something difficult programmers make look easy?
    1 project | news.ycombinator.com | 19 Jan 2024
    My grid right now is 144x144, so about 20,000 tiles. Things were working OK in iOS Safari when just using colors to draw the tiles, but the browser started crashing when I tried upgrading to image sprites.

    Turns out the trick is to not submit each individual tile to the GPU. You have to roll them up into larger, chunked meshes and submit those meshes to lessen the impact.

    I'm sure this is game dev 101, but I've never been close enough to the GPU to have to actually care about this sort of stuff.

    I wasn't trying to imply that I was making an AAA game. Just that, from the outside, it seemed like the difficulty would be in designing game mechanics, making something actually fun, marketing, etc., but in reality there's an ever-steepening technical learning curve when you want to deliver nicer looking stuff. When I look at how many days I've spent working on my game, and how terrible it looks, and then I look at something like Cyberpunk 2077... I struggle to conceive how we as humans were able to create those levels of graphics in a timeframe that allows for the game to be profitable.

    https://github.com/MeoMix/symbiants btw. Feel free to browse the code (or come volunteer! I've got a few other HNers tinkering alongside me these days)

  • Immediate Mode GUI Programming
    15 projects | news.ycombinator.com | 15 Jan 2024
    I cannot recommend immediate mode GUI programming based on the limitations I've experienced working with egui.

    egui does not support putting two widgets in the center of the screen: https://github.com/emilk/egui/issues/3211

    It's really easy to get started with immediate mode, it's really easy to bust out some UI, but the second you start trying to involve dynamically resized context and responsive layouts -- abandon all hope. The fact it has to calculate everything in a single pass makes these things hard/impossible.

    ... that said, I'm still using it for https://ant.care/ (https://github.com/MeoMix/symbiants) because it's the best thing I've found. I'm crossing my fingers that Bevy's UI story (or Kayak https://github.com/StarArawn/kayak_ui) become significantly more fleshed out sooner rather than later. Bevy 0.13 should have lots more in this area though (https://github.com/bevyengine/bevy/discussions/9538)

  • A minimal working Rust / SDL2 / WASM browser game
    6 projects | news.ycombinator.com | 15 Jan 2024
    https://github.com/MeoMix/symbiants Here's my open source game written in Rust and compiled to WASM if you want more reading material :) It uses Bevy not SDL2, though.
  • Ask HN: Who else is working on nothing?
    1 project | news.ycombinator.com | 13 Jan 2024
    I'm working on myself through my work, if that counts?

    I'm a staff-level SWE. I took the last year off of paid employment because I felt anxious and stressed even though everything was, objectively, fine. I had some poor health habits that I was staunchly ignoring and a project I was deeply vested in at my job was ripped out from under me. The meaning I ascribed to that project was giving my life purpose and, with that suddenly missing, and with my health in less than ideal shape, my outlook on the world became dismal.

    I took the year off because I wanted to try and rediscover that curiosity you mentioned having lost. I used to LOVE programming. I loved feeling like a techno-wizard making pixels bend to my will. What happened? Why did I now feel anxious and uncomfortable staring at a screen while trying to think critically? I think I got a little too lost in the sauce of the startup world and it became clear that it would take some "me time" to rebalance.

    So, from some perspectives, I've been doing nothing for a while. No significant other, no money-making job, not travelling the world or living life to the fullest... but having a project that feels meaningful to me, whose existence is moderately under my control, and that I have sufficient time and energy to engage with -- that's giving me most of what I felt was missing. Well, that and dropping a bunch of widely understood bad habits and picking up some better ones.

    I want to see myself as a more consistent and reliable person. In my 20s, I had infinite energy. In my 30s, I'm finding that's only true if I keep myself away from alcohol and drugs, exercise constantly, connect with people, and, most importantly, be mindful of my physical and emotional state. If I start slipping into a rut, and don't notice it and nip it in the butt, suddenly it can take over my whole demeanor and disrupt a lot of good things I had going. A couple of days of bad sleep, coupled with a desire to keep pushing forward, can cause me to regress into drinking a bunch of caffeine. The caffeine will mess with my anxiety and mood and I'll be more tempted by unhealthy food and marijuana. These decisions start to affect my energy and makes it more challenging to avoid caffeine... and suddenly I'm in a destructive cycle where I have less energy each day and hide from myself. All these issues were present in my 20s, but they never really seemed to be a hindrance. I could just roll with the punches and remain proud of my accomplishments. Now, in my mid-thirties, I find myself frustrated (yet a little excited) to try and figure out how to keep myself running like a well-oiled machine. I want to remain proud of my consistent growth into my later years and it's going to require getting better at working with myself.

    That said, I know me. I don't do well without a project that I can see myself in. It's what makes getting up in the morning worthwhile. I think it has to do with having an avoidant/dismissive emotional attachment style, or something to that effect. So, if someone were to ask me if I'm working on nothing then I guess I would always want to confidently say, "No. I am working on something, but at my own pace and with poorly-defined goals."

    So, in an effort to work on myself, I've given myself a project whose goal is to help me, and others, be more consistent and present. I must admit I've taken the most circuitous route possible to achieving this effect as I'm ostensibly creating a digital ant farm which functions as a mental health companion (https://github.com/MeoMix/symbiants). The goal is to create a pet whose growth fluctuates with its owners' consistency. I want to see my ant colony thrive if I've consistently been checking in on myself. When I am feeling good, I want to see my ants take on new challenges, expand their territory, stress themselves out trying to maintain their growth, build habituated pathways to foods in an attempt to scale. And then, when I invariably go through an emotional downturn, I want to see my ants yield some of their land back to the fog-of-war, hunker down and weather the storm of inconsistent check-ins and less good habits undermining my personal energy. And then, when I've sated my desire for self-destruction and re-commit to being dedicated to my goals, I want to see my ants rediscover forgotten pathways, regain their ground quickly, and act as a reminder that my emotional downturns don't invalidate all the growth I'd done prior. I want to have this pseudo-living creature that serves as a visual proxy for how well I feel I'm doing. I want this because the job to be done gives me purpose in my day-to-day and because the end result will help keep me aware of how I'm doing, how I was doing, and will provide unique motivation to show up, curious about what my ants have been up to, day after day.

    If anyone feels similarly and could see themselves finding purpose through this effort - feel free to reach out. I would be happy to talk to you and help you find a home in the project. There's Discord and email in my bio. It's my first game, the scope is way too large, the code I've written is bad, and I have no strategy for monetization. You'll very likely become a worse Rust developer by associating with me :) ... but I know I want to create something that helps motivate people to continue showing up for themselves and I'm confident there are others out there who either feel similarly, or feel lost and could use help finding themselves with the right project.

    I've written a lot! Sorry for the meandering thoughts and the weird upsell of a project in a thread about working on nothing... but it all seemed relevant to me while the thoughts were flowing. Cheers :)

  • Ask HN: Looking for a project to volunteer on? (January 2024)
    10 projects | news.ycombinator.com | 4 Jan 2024
    SEEKING VOLUNTEERS

    Project Name: Symbiants

    Website: https://ant.care/

    GitHub: https://github.com/MeoMix/symbiants

    Languages: Rust (Bevy), WebGPU, WASM, JS

    Project Description:

    Symbiants is a digital ant farm with a mental health twist. The goal is to make a cute, real-time ant colony sim (think SimAnt + Tamagotchi), get players to form a daily routine around feeding and caring for their ants, and incorporate basic mental health activities (guided breathing, positivity journaling, etc.) into the gameplay.

    The player gets a comfy, cozy, digital environment with a pet that grows in real-time. Each morning, they check on their ants as they get online, do a quick self-check-in, and see visual reminders of their consistency and its effects on their pet's growth.

    --

    This is my first attempt at building a video game. It's been a lot of fun so far, but, unsurprisingly, is a lot of work. I had some cash saved up and took the last year off of work. In this time, I built a prototype in React, then taught myself Rust/Bevy, and began chipping away at this project. I've made some progress, but I don't feel this vision is anywhere near complete. I would love to have more people to work with, discuss ideas, and learn the finer points of Rust/WebGPU development.

    To me, this is an especially important project because I see a lot of people who love to be terminally online, work from home, play video games to zone out after work, and sometimes fall into a rut where days fly by without sufficient self-care. How to reach those people? It can be difficult to broach the subject as mental health is fairly taboo. I am curious to see if a video game can be an effective means of starting a conversation.

  • Show HN: Sit
    1 project | news.ycombinator.com | 4 Jan 2024
    Trying to use technology to get people to spend some time meditating/breathing is fun :) I especially the gong.

    My WIP attempt at achieving something similar: https://ant.care/

    There's a button "breathe for food" that'll trigger a similar effect as your website. The difference is that the user is given a digital reward ("food") which they use to feed their digital ant colony.

    I'm now trying to add intelligent behaviors to the ant colony in an attempt to make it seem alive and compelling enough for users to repeatedly engage with the breathwork exercises.

    Good luck with your project! :)

flecs

Posts with mentions or reviews of flecs. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-30.
  • ECS, Finally
    4 projects | news.ycombinator.com | 30 Dec 2023
    I've also been enjoying building My First Game™ in Bevy using ECS. The community around Bevy really shines, but Flecs (https://github.com/SanderMertens/flecs) is arguably a more mature, open-source ECS implementation. You don't get to write in Rust, though, which makes it less cool in my book :)

    I'm not very proud of the code I've written because I've found writing a game to be much more confusing than building websites + backends, but, as the author notes, it certainly feels more elegant than OOP or globals given the context.

    I'm building for WASM and Bevy's parallelism isn't supported in that context (yet? https://github.com/bevyengine/bevy/issues/4078), so the performance wins are just so-so. Sharing a thread with UI rendering suuucks.

    If anyone wants to browse some code or ask questions, feel free! https://github.com/MeoMix/symbiants

  • Databases are the endgame for data-oriented design
    5 projects | /r/rust | 6 Dec 2023
    Flecs does just that: https://ajmmertens.medium.com/why-it-is-time-to-start-thinking-of-games-as-databases-e7971da33ac3
  • What's your way to create an ECS?
    1 project | /r/gamedev | 5 Nov 2023
    I'm trying to optimize my workflow as much as possible, and came across this thing called an ECS. After doing a little bit more digging I found some decent guides on how you would make one, I also found one premade called FLECS. FLECS is nice and all, but I was looking for something more simple that just has the bare bones of what I need and is also configurable. I haven't been able to really find anything like that, so I was wondering if anyone had an example of maybe their way of implementing an ECS. I know how to go about it, but I'm unsure of exactly what the code would look like.
  • Introducing Ecsact
    8 projects | dev.to | 24 Jun 2023
    Since we wanted a common game simulation that would be on both the server and the client we looked into a few libraries that would fit our ECS needs. It was decided we were going to write this common part of our game in C++, but rust was considered. C++ was a familiar language for us so naturally EnTT and flecs came up right away. I had used EnTT before, writing some small demo projects, so our choice was made based on familiarity. In order to integrate with Unity we created a small C interface to communicate between our simulation code and Unity’s C#. Here’s close to what it looked like. I removed some parts for brevity sake.
  • Prolog for future AI
    2 projects | /r/prolog | 24 Jun 2023
    Repository: https://github.com/SanderMertens/flecs
  • An in-game query engine heavily inspired by prolog
    2 projects | /r/prolog | 9 Jun 2023
    This is the project: https://github.com/SanderMertens/flecs (query engine implementation lives here: https://github.com/SanderMertens/flecs/tree/master/src/addons/rules)
  • What are the limits of blueprints?
    4 projects | /r/unrealengine | 25 May 2023
    There's also a performance question. While we can now use Blueprint nativization to convert Blueprints to C++ the result will be a fairly naive version, fast enough for most purposes but not if you're trying to push every bit of performance. This is where you're looking at making sure you're hitting things such as using the CPU cache as well as possible for an ECS system (Look at ENTT or Flecs if you want to see what they're about and why you'd want one), or a system needing to process massive amounts of data quickly such as the Voxel Plugin.
  • What's the hot tech stack these days?
    2 projects | /r/PBBG | 23 May 2023
    If I knew C++ and I'd heard about it before I started my current project, I would have been tempted to use this https://github.com/SanderMertens/flecs which can be built to WASM. Of course you still need JavaScript in the front end to link to the WASM part. I've recently been using esbuild to bundle my front end code, which does a pretty similar job to webpack, but is a bit faster.
  • Bevy and WebGPU
    8 projects | news.ycombinator.com | 18 May 2023
    When do think bevy will support entity-entity relationships ? https://github.com/bevyengine/bevy/issues/3742.

    Flecs ECS already supports this: https://github.com/SanderMertens/flecs/blob/master/docs/Rela...

  • any resources for expanding on ECS?
    4 projects | /r/gamedev | 22 Apr 2023
    For a modern engine you’re probably best looking at Unity’s DOTS. You may also want to check out some of the different open source ECS libraries such as flecs and EnTT are two popular ones for C++, but there’s lots of them. Largely you’ll see lots of different approaches taken, all with their own pros and cons. Not all of them will be performant (some focus more on the design benefits) while others will be optimised for certain use cases. What you should prioritise will depend on your specific needs.

What are some alternatives?

When comparing symbiants and flecs you can also consider the following projects:

emdash - 📚🧙‍♂️ Wisdom indexer — use AI to organize text snippets so you can actually remember & learn from what you read

entt - Gaming meets modern C++ - a fast and reliable entity component system (ECS) and much more

daptin - Daptin - Backend As A Service - GraphQL/JSON-API Headless CMS

JUCE - JUCE is an open-source cross-platform C++ application framework for desktop and mobile applications, including VST, VST3, AU, AUv3, LV2 and AAX audio plug-ins.

NoSQL - A NoSQL implementation DBMS using LSM Trees

Boost - Super-project for modularized Boost

awesome-bevy - A collection of Bevy assets, plugins, learning resources, and apps made by the community

SDL - DEPRECATED: Official development moved to GitHub

not_snake_game - A snake-inspired game made in Rust using the Bevy game engine.

Folly - An open-source C++ library developed and used at Facebook.

paperless-ngx - A community-supported supercharged version of paperless: scan, index and archive all your physical documents

Seastar - High performance server-side application framework