I'm really looking forward to playing this! The new logic in Alpha 27, where units don't try to capture enemy structures by default, caught me out, but it was fun getting familiar with siege engines until I worked that out.
As for the new capture attack for citizens, I imagine this could lead to some really risky endgame strategies where a player moves citizens from their base to attack the enemy's supporting buildings while the enemy is distracted.
0ad is a fun game but the last few times I have tried to play it with my friends it lagged very bad once a few units were moving around. I actually was able to get it to play kind of normal by hacking the pathfinding code to give up after a fixed iteration count that was low. It worked kind of, but broke path finding a lot, obviously.
The crux of the issue is that their simulation is single threaded. It's a complicated problem to do both deterministic and multi-threaded, but I feel some of us could help them.
Two thousand years ago they'd barely have maps, I don't see why units need pathfinding anyway. In the Age of Empires series it had bizarre effects, like you could steer an enemy army around by building a wall across a forest path, forcing them to take a different path to their target (your base), since they apparently saw the wall with their psychic powers.
Realistically soldiers should head in the right compass direction and hope for the best. But then you (the player) shouldn't have a proper map of your own, either.
> Realistically soldiers should head in the right compass direction and hope for the best. But then you (the player) shouldn't have a proper map of your own, either.
It would depend where and when. An army on their own territory might know the terrain. An army on enemy's territory would try to send scouts ahead as opposed to wondering randomly, too.
So at the army level it would almost work out like the they have "psychic" powers because they have scouts. At the individual units it would depend. But it would also be kind of annoying to play if the realism is increased too much. Like they wander into the woods and get stuck in a bog and die of hypothermia.
An RTS where you could only swap between FPV views of each of your units would be fun. Or at least different. Savage II but there is only 1 player per team, and no overhead view. And you can wrench control from a bot at any time.
Battlezone and battlezone 2 [0] were great for this. Many hours lost, even if bz2 was a buggy mess on release. It was also one of the first faves to really have a missing community.
And there's of course the spiritual sequel, Bruetal Legend. The main campaign can be played more as an action game, but if you get into multiplayer the RTS elements really come through.
It's just written Brutal Legend if you can't type the ü. The dots you see in the name are not equivalent to an umlauted u, but instead it's just röck döts.
Since rock dots don't affect the pronunciation of the name, you wouldn't expand to add a letter (which would affect the pronunciation) if you can't type the decorative dots.
So that's name of that game, I've been trying to remember that game I played briefly as a kid, which in my hazy memory seemed quite fun. Thanks, will give it a try when it goes on sale.
It's simultaneously an RTS and a third person action game, during combat in singleplayer campaigns. You command your troops in real-time, but you have a limited POV.
Realtime Strategy doesn't necessarily require that you have a top-down perspective or a specific set of controls, right? Pretty sure Brutal Legend is also technically considered an RTS
At some point its a game and needs to be fun to play. If you are directing a group of five units that might work but if you have 200 units on the field i think it breaks down and is less fun.
> But then you (the player) shouldn't have a proper map of your own, either.
In aoe2 you don't have a full map. I imagine 0ad is similar being a clone
This is naive pathfinding that adopts the shortcut of perfect information.
Good looking pathfinding simulates realistic terrain ignorance (no "psychic powers"), but it is likely to be expensive enough to require other compromises (e.g. updating paths less often).
You reckon the perfect information version is cheaper than an algorithm that works only on the tiles near to the unit? But this quickly gets too complicated to discuss; there's the confusing matter of precalculation versus live updating.
The perfect information version calculates the path once on click, the local version needs to recalculate every time the unit moves (and new tiles are "seen")
Recalculating the path every game tick is too expensive. What brood war did was to just have units wait for a second when they collide with something before recalculating the path. This resulted in horrendous "traffic jams".
It's also why Brood War players got into the habit of spam-clicking, because the game would recompute paths every time you issued a command, so spam-clicking resulted in smoother movement.
Pathfinding at scale is pretty much a solved problem. Spring. Recoil. SupCom.
Starcraft. You can do that, for 10.000 units before you run into problems.
I'm sorry but huh? It's a RTS game, aren't moving units around on the map kind of a fundamental part of the genre and this game?
> Realistically soldiers should head in the right compass direction and hope for the best
If you implement unit movements in a RTS like this, they'll get stuck half the time you ask them to move anywhere, unless you want micromanagement of unit movement to be 90% of the game, which I don't think anyone would find fun.
Yes, but if you were that unit, would you get stuck in a corner, or would you persist in trying to find your destination? I suppose if you make it all the way to the target, you've accomplished pathfinding of some kind, by definition, sure. But an algorithm to avoid getting stuck doesn't have to be "pathfinding" as in an expensive algorithm to find a complete path right away.
Well, depending on how you implement it, there might not be any way of getting unstuck, imagine a wall that is 3/4 circle for example, with a small opening, could it escape with that sort of naive algorithm? Players tend to be kind of sensitive to "stupid unit movements", and not having pathfinding is a great way of triggering that feeling in every play session.
There certainly are naive ways, although whatever I suggest here will be poorly thought out and will lead to the next problem. But OK, I suggest a scent trail. Each unit paints where it's been and prefers not to go that way again. Then of course it could paint itself into a corner, so it needs a local-maximum-busting strategy too, which probably means marching off in an arbitrary direction to see if it gets unstuck.
This would be behaving like a caged animal, and in a game, that's good, and better than a smarter algorithm. You don't want them to be idiots, but you don't want them to be magic, either.
The old "follow the left-hand wall" maze-solving strategy is another naive way to get out of a trap. It's not fun gameplay, but it's naive and it exists, so better naive strategies do too.
Well, ish. My theory is that you can have units make individual local choices that add up to somewhat inept pathfinding, and it works out cheaper than maintaining live-updated whole-map pathfinding information.
Well, if each unit leaves its own scent trail, that’s a lot of per-unit state, and little to nothing that you can pre-compute for the entire map. You could have all units trails on a global “scent layer” that all units read from, but then you’re basically just building up a graph of common paths that could have been precomputed for the entire map.
It also doesn’t at all address inter-unit collisions, which is a big topic in RTS pathfinding.
Not sure if you've played any RTS lately, but I'm fairly confident people would drop the game relatively fast if they started seeing their units taking off in random directions because they cannot find their way around a wall. But we could also be playing very different games :)
Typical armies usually had, if not maps, reliable intelligence and guides. "we've heard this chokepoint is heavily defended" would indeed be a common reason for routing around.
It would be even fancier if there was some logic to take into account the position of your mobile units as well - for example, to avoid massed troops except in favorable conditions.
For me the main problem with 0AD multiplayer is that if any player loses their connection even for a moment for any reason, the game either halts completely or forks so that they can't rejoin. Quite frustrating, especially for longer campaigns. It's also impossible to save and restore in multiplayer.
> […] the game either halts completely or forks so that they can't rejoin.
When a player looses the connection the game just continues. Usually one of the remaining player then pauses the game until the player who lost the connection returned.
The game state becoming out-of-sync is often a problem of players using buggy mods. That this happens without mods is pretty rare and of course clearly a bug.
> It's also impossible to save and restore in multiplayer.
It did save in a27 for me - I had the same forking problem but was able to go back to a previous save and the other player was able to rejoin at that point. This was in a local network game.
This is one of the problems that BAR solves beautifully - a player could leave and rejoin later and the game would continue running just fine. An existing player can choose to take their stuff or not, or take it and give it back when the player rejoins. Truly elegant.
There was the Total Annihilation RTS and while it had the normal 2d overhead view, all the data was in 3d.
A Swedish gaming clan put together an accelerated full 3d engine to replay Total Annihilation recorded demos. As it got more and more features it was realized that most of what was needed to play TA was being recreated so they closed the loop and made it into a full game engine which they called SpringRTS. There was the default accurate TA game code but there was also a very popular mod that was not afraid to change things a bit, basically "we like Total Annihilation but also think it could be better" and they called it Balanced Annihilation. We are almost there. BA lived under the Spring project for a few years, but really when you think about it there are ip problems with it using the TA assets, also, I suspect someone wanted to do engine work but was having a hard time with upstreaming it, so it forked off the Spring project, they rebuilt all the units(same unit different skin) are doing a ton of great engine work and called it BAR (retronymed into Beyond All Reason but I suspect it originally stood for Balanced Annihilation Reborn or something like that). So BAR is basically a highly modified legally distinct Total Annihilation.
Zero-K is another great RTS based on this engine. It drifts further off the TA formula than BAR does.
Are there any BAR forks or alternatives that don't force me into proprietary walled gardens for exchange with the community? I would even donate! Even regularly!
BAR in general is such a great showcase in A) FOSS games can be good, work great, scale nice and be fun and B) BAR is a game built by gamers who play and enjoy their own game, for other gamers, which seems more and more rare these days.
How did games like Age of Empires and StarCraft deal with that tissue on single CPU systems? They were mostly single threaded too and with way less computational power.
I feel like the issue is more that their pathing algorithm is very inefficient. Not sure why using multiple cores would solve the problem if the cause of the lag is that their pathing algorithm is cubic time or something
I think this actually can be used to optimize the pathfinding. Basically create a fake unit that is used for the real/complex path, then have the other units follow it with basic collision or a very tuned down pathfinding algorithm similar to the hack I did where I just counted loop iterations and bailed after some threshold.
AFAIK one of the reasons they held onto 'alpha' for so long was that this network lag issue for internet based play was a big known and hard to address issue. I'd def be trying again since they've come out of alpha with this release.. a huge deal for a game that is so many years in development.
Also, we've always played the game as in-person LAN, and for the most part the lag has been just fine. Only for really huge end of game final battles with the screen packed with troops did it lag out for us, but being free and all, we'd often gather around one monitor and talk crap at each other while we waited for it to clear up.
> I'd def be trying again since they've come out of alpha with this release.. a huge deal for a game that is so many years in development.
We're not calling it Alpha anymore, but we still don't consider it a polished major release. The announcement of the last Alpha, Alpha 27 had a section explaining the motivation for the change: https://play0ad.com/new-release-0-a-d-alpha-27-agni/
> Only for really huge end of game final battles with the screen packed with troops did it lag out for us, but being free and all, we'd often gather around one monitor and talk crap at each other while we waited for it to clear up.
I'm not sure when you last tried the game, but a27 notably improved performance and feedback so far suggests that r28 did as well.
That was my experience as well. My understanding is that the simulation will be bottlenecked by the slowest PC. All of my friends had pretty powerful PCs, but someone among us had a slightly weaker one in terms of single core performance, which means we all have that CPU basically then.
The huge battle toward the end of the game dropping or making the game unplayable was what killed it for us. We didn't want to spend all that time making our army and strategy only to be disappointed. At the time we went back to playing Age of Empires 2 DE.
> My understanding is that the simulation will be bottlenecked by the slowest PC.
That's correct. While 0ad is an RTS, behind the scenes it's still turn-based and in multiplayer games turns can only progress once every participants PC has responded. That's also why the game also feels slow when a player has a bad latency to the player hosting the game.
I love 0 A.D., and I’m endlessly grateful to all the developers and volunteers who made it happen. Your dedication and skill deserve a monument — my genuine admiration.
I install it every few years, and it’s always a blast, somehow, and I do not know why I never do more than experiment with it..
Gameplay-wise, I find that Beyond All Reason is, as far as open-source RTS games go, a few orders of magnitude more fun and mature. I don’t think there’s any commercially available RTS that can compete with Beyond All Reason in terms of fun and performance.
0AD's web site is rather bad at describing the game, but Beyond All Reason is even worse. I rarely play, so I had never heard about it. Both focus on details, forgetting the main points.
After reading BAR's homepage and the FAQ, I still have no idea what to expect. It could be a purely online game with ads and in-game buys, through a central proprietary server. It could also have a single player campaign.
Good points, the BAR FAQ's first question is "Best Twitch Stream Settings for BAR (OBS)", and the Gameplay page talks about physics, terrain, economy, units and weapons but answers nothing like: is there a single player campaign? Are there AI opponents? what's even the theme/setting of the game?
There are single player scenarios in Beyond All Reason, though not yet a campaign with a narrative.
There are AI opponents and you can configure friendly and hostile AI players. There are also two dedicated "beat waves of enemies then final boss" pve modes.
There's not a real theme other than "robot armies built by commanders with exponentially scaling economy".
There is a lore/backstory/setting planned to be released on March 8th.
Thank you 0 A.D. team. My son and I play, it is one of the few things we can do together. Nothing has brought me so much joy as fighting my son: king of the Persian army.
I haven't played Beyond All Reason but looking at the system requirements I'm not surprised it is more fulfilling. 0 A.D. runs on a potato if you look at it threateningly, which makes it a good option to have on a throwaway machine for kids or somesuch.
You can easily play or spectate a low-unit count game of BAR on any decent 2010+ quad core.
Such a computer won't allow you to play 8v8 that goes into the late-game stage. Sometimes not even 4v4 or 2v2 with players scaling to high unit counts. Some players try anyway. Ignoring player disconnections, half the drama of large-scale games is the one player who's lagging because they're on a potato computer. If the sim doesn't lag, the game will at least be down to single-digit fps.
That means you can't really play multiplayer comfortably, at least not beyond 2-4 players.
For that, you need a recent ryzen or intel. I'd estimate recent as post-covid.
I don't know what combination of things is important; there's larger cpu caches, faster sustained CPU frequencies (TDP and cooling matter there), hardware mitigations for speculative execution bugs, faster ram, resizeable BAR support... but in my experience going from a 6-core skylake-era cpu to a ryzen 9xxx, with the same gpu, made a massive difference. I saw no massive improvement going from a 4-core 2010-era cpu to a 6-core skylake-era cpu; I'd classify both as potatoes for BAR purposes.
My experience is the opposite: 0ad will lag on my laptop once thing become big. BAR will warn that it’s not compatible with my low end intel integrated potato gpu, but it works just fine..
This game started slow for me many years ago but I now absolutely love this game. Not just because of all the open source effort that has gone into it, because of the strategy. You have to make yourself vulnerable to get stronger.
Wanna grow fast? Train workers who can't fight, but are resource efficient to make. Risk being badly weakened if getting attacked, for the benefit of the workers giving you much more resources to then raise an army.
Germans are too op in my opinion.
Appimage is much appreciated as the game is pain to compile. And it crashes less than previous version that's also good
This is such a high quality game that it is almost unbelievable that it is free and open source. The fact that it is also still seeing active development after more than 15 years shows just how passionate the developers are.
I have been playing 0ad, single player, medium/hard difficulty, round-robing all maps, for years now. Great game. I have to try mods one of these days.
Looking through earlier news, a July 2024 release note proudly proclaims “The git migration is on its way!”. But I’ve had a look around and can’t easily find any active git repo. Anyone know the current status around ‘moving to git’?
I really love the iterative progress with 0 A.D. And every time the game shows up in news, it's always amazing to go through the changelog. I just wish I was a but younger with more time to play :) For an OSS project it's quite an achievement!
The devs clearly put in a lot of effort. I'm a little surprised no one's created a campaign yet. I love the game anyway, just seems less effort and more fun to create a campaign (of course a different thing to keep the campaign balanced and up-to-date with new releases).
Making a high quality campaign is quite some effort and the engine still lacks some features, which would be helpful for this. A dialogue system is one of them, which already has a PR available: https://gitea.wildfiregames.com/0ad/0ad/pulls/8614
Yes of course. I wasn't talking about a high quality campaign: I'm surprised there isn't even a low quality one. Perhaps that would be contrary to the 0ad philosophy.
I first encountered it when I was looking at the biggest packages in the official repositories, in order to stress-test my own APT distribution implementation. Gave it a try, had fun too, and now part of the E2E tests of the mirror :D
I tried to play this game once and sucked at it. There are people out there who are legitimately good at this, and that's awesome to see for an open source game
I know what you mean, biggest gripe I have with this game is how important it is to play the meta and boom early if you want to win at anything other than easy mode.
I've played perhaps tens of hours of 0AD. I boom early, try to create an unbeatable army, and then go win. When I saw competitive 0AD players on YouTube, they played completely differently: they train cavalry or cavalry archers and go hassle the booming opponents really early. Then retreat to go hunt some chickens for a bit, train some more cavalry, and go raiding again. They simultaneously attacked each other, all the while trying to continually improve their economy meanwhile. It seemed much more fun than the way I played tbh.
The best players are incredible at microing (although horse rushs are just one of multiple strategies). It's also equally important to manage resources and units in a way that you use all of them all the time. That's especially important in early game.
I love 0ad - it has atmosphere. I was chuffed when a28 came out and the gutted when It crashed for me but it just got fixed and now I'm trying not to think about it until 5pm.....
It crashed for you? You must be running Arch Linux. ;-)
Arch Linux used system-provided SpiderMonkey which lacked a crucial bug fix. This issue should be solved by now, by Arch Linux switching back to vendored Spidermonkey.
Fun fact: 0ad still doesn't support kerning. While I would've loved to see proper kerning support in r28, there is only so much a team of volunteers can do.
I'm really looking forward to playing this! The new logic in Alpha 27, where units don't try to capture enemy structures by default, caught me out, but it was fun getting familiar with siege engines until I worked that out.
As for the new capture attack for citizens, I imagine this could lead to some really risky endgame strategies where a player moves citizens from their base to attack the enemy's supporting buildings while the enemy is distracted.
0ad is a fun game but the last few times I have tried to play it with my friends it lagged very bad once a few units were moving around. I actually was able to get it to play kind of normal by hacking the pathfinding code to give up after a fixed iteration count that was low. It worked kind of, but broke path finding a lot, obviously.
The crux of the issue is that their simulation is single threaded. It's a complicated problem to do both deterministic and multi-threaded, but I feel some of us could help them.
Two thousand years ago they'd barely have maps, I don't see why units need pathfinding anyway. In the Age of Empires series it had bizarre effects, like you could steer an enemy army around by building a wall across a forest path, forcing them to take a different path to their target (your base), since they apparently saw the wall with their psychic powers.
Realistically soldiers should head in the right compass direction and hope for the best. But then you (the player) shouldn't have a proper map of your own, either.
> Realistically soldiers should head in the right compass direction and hope for the best. But then you (the player) shouldn't have a proper map of your own, either.
It would depend where and when. An army on their own territory might know the terrain. An army on enemy's territory would try to send scouts ahead as opposed to wondering randomly, too.
So at the army level it would almost work out like the they have "psychic" powers because they have scouts. At the individual units it would depend. But it would also be kind of annoying to play if the realism is increased too much. Like they wander into the woods and get stuck in a bog and die of hypothermia.
An RTS where you could only swap between FPV views of each of your units would be fun. Or at least different. Savage II but there is only 1 player per team, and no overhead view. And you can wrench control from a bot at any time.
Battlezone and battlezone 2 [0] were great for this. Many hours lost, even if bz2 was a buggy mess on release. It was also one of the first faves to really have a missing community.
[0] https://en.wikipedia.org/wiki/Battlezone_(1998_video_game)
Sacrifice is a brilliant RTS where the commander (a summoner mage of sorts) participates at the ground level.
And there's of course the spiritual sequel, Bruetal Legend. The main campaign can be played more as an action game, but if you get into multiplayer the RTS elements really come through.
It's just written Brutal Legend if you can't type the ü. The dots you see in the name are not equivalent to an umlauted u, but instead it's just röck döts.
Since rock dots don't affect the pronunciation of the name, you wouldn't expand to add a letter (which would affect the pronunciation) if you can't type the decorative dots.
https://en.wikipedia.org/wiki/Metal_umlaut
So that's name of that game, I've been trying to remember that game I played briefly as a kid, which in my hazy memory seemed quite fun. Thanks, will give it a try when it goes on sale.
Isn't this Mount and Blade?
With the RTS mod you can get pretty close, yeah.
It's simultaneously an RTS and a third person action game, during combat in singleplayer campaigns. You command your troops in real-time, but you have a limited POV.
Realtime Strategy doesn't necessarily require that you have a top-down perspective or a specific set of controls, right? Pretty sure Brutal Legend is also technically considered an RTS
It was the dream but any game that tried was always disappointing.
At some point its a game and needs to be fun to play. If you are directing a group of five units that might work but if you have 200 units on the field i think it breaks down and is less fun.
> But then you (the player) shouldn't have a proper map of your own, either.
In aoe2 you don't have a full map. I imagine 0ad is similar being a clone
This is naive pathfinding that adopts the shortcut of perfect information. Good looking pathfinding simulates realistic terrain ignorance (no "psychic powers"), but it is likely to be expensive enough to require other compromises (e.g. updating paths less often).
You reckon the perfect information version is cheaper than an algorithm that works only on the tiles near to the unit? But this quickly gets too complicated to discuss; there's the confusing matter of precalculation versus live updating.
The perfect information version calculates the path once on click, the local version needs to recalculate every time the unit moves (and new tiles are "seen")
Recalculating the path every game tick is too expensive. What brood war did was to just have units wait for a second when they collide with something before recalculating the path. This resulted in horrendous "traffic jams".
It's also why Brood War players got into the habit of spam-clicking, because the game would recompute paths every time you issued a command, so spam-clicking resulted in smoother movement.
Pathfinding at scale is pretty much a solved problem. Spring. Recoil. SupCom. Starcraft. You can do that, for 10.000 units before you run into problems.
https://www.youtube.com/watch?v=2wxwIxz4PaY
Why is it so bad on sandboxes like Minecraft? Modded Minecraft has struggled with pathfinding for years.
> I don't see why units need pathfinding anyway.
I'm sorry but huh? It's a RTS game, aren't moving units around on the map kind of a fundamental part of the genre and this game?
> Realistically soldiers should head in the right compass direction and hope for the best
If you implement unit movements in a RTS like this, they'll get stuck half the time you ask them to move anywhere, unless you want micromanagement of unit movement to be 90% of the game, which I don't think anyone would find fun.
Yes, but if you were that unit, would you get stuck in a corner, or would you persist in trying to find your destination? I suppose if you make it all the way to the target, you've accomplished pathfinding of some kind, by definition, sure. But an algorithm to avoid getting stuck doesn't have to be "pathfinding" as in an expensive algorithm to find a complete path right away.
Well, depending on how you implement it, there might not be any way of getting unstuck, imagine a wall that is 3/4 circle for example, with a small opening, could it escape with that sort of naive algorithm? Players tend to be kind of sensitive to "stupid unit movements", and not having pathfinding is a great way of triggering that feeling in every play session.
There certainly are naive ways, although whatever I suggest here will be poorly thought out and will lead to the next problem. But OK, I suggest a scent trail. Each unit paints where it's been and prefers not to go that way again. Then of course it could paint itself into a corner, so it needs a local-maximum-busting strategy too, which probably means marching off in an arbitrary direction to see if it gets unstuck.
This would be behaving like a caged animal, and in a game, that's good, and better than a smarter algorithm. You don't want them to be idiots, but you don't want them to be magic, either.
The old "follow the left-hand wall" maze-solving strategy is another naive way to get out of a trap. It's not fun gameplay, but it's naive and it exists, so better naive strategies do too.
That’s pathfinding. I thought you were opposed to pathfinding?
Well, ish. My theory is that you can have units make individual local choices that add up to somewhat inept pathfinding, and it works out cheaper than maintaining live-updated whole-map pathfinding information.
Not only is that pathfinding, it sounds like an especially complex pathfinding algorithm that would be pretty challenging to implement efficiently.
In what way?
Well, if each unit leaves its own scent trail, that’s a lot of per-unit state, and little to nothing that you can pre-compute for the entire map. You could have all units trails on a global “scent layer” that all units read from, but then you’re basically just building up a graph of common paths that could have been precomputed for the entire map.
It also doesn’t at all address inter-unit collisions, which is a big topic in RTS pathfinding.
When you get stuck, try random directions. That's what my robot vacuum does.
Not sure if you've played any RTS lately, but I'm fairly confident people would drop the game relatively fast if they started seeing their units taking off in random directions because they cannot find their way around a wall. But we could also be playing very different games :)
Typical armies usually had, if not maps, reliable intelligence and guides. "we've heard this chokepoint is heavily defended" would indeed be a common reason for routing around.
It would be even fancier if there was some logic to take into account the position of your mobile units as well - for example, to avoid massed troops except in favorable conditions.
For me the main problem with 0AD multiplayer is that if any player loses their connection even for a moment for any reason, the game either halts completely or forks so that they can't rejoin. Quite frustrating, especially for longer campaigns. It's also impossible to save and restore in multiplayer.
> […] the game either halts completely or forks so that they can't rejoin.
When a player looses the connection the game just continues. Usually one of the remaining player then pauses the game until the player who lost the connection returned.
The game state becoming out-of-sync is often a problem of players using buggy mods. That this happens without mods is pretty rare and of course clearly a bug.
> It's also impossible to save and restore in multiplayer.
It seems you haven't played 0ad in a while, as that's possible since a27 (see https://play0ad.com/new-release-0-a-d-alpha-27-agni/).
It did save in a27 for me - I had the same forking problem but was able to go back to a previous save and the other player was able to rejoin at that point. This was in a local network game.
This is one of the problems that BAR solves beautifully - a player could leave and rejoin later and the game would continue running just fine. An existing player can choose to take their stuff or not, or take it and give it back when the player rejoins. Truly elegant.
The history behind BAR is also fascinating.
There was the Total Annihilation RTS and while it had the normal 2d overhead view, all the data was in 3d.
A Swedish gaming clan put together an accelerated full 3d engine to replay Total Annihilation recorded demos. As it got more and more features it was realized that most of what was needed to play TA was being recreated so they closed the loop and made it into a full game engine which they called SpringRTS. There was the default accurate TA game code but there was also a very popular mod that was not afraid to change things a bit, basically "we like Total Annihilation but also think it could be better" and they called it Balanced Annihilation. We are almost there. BA lived under the Spring project for a few years, but really when you think about it there are ip problems with it using the TA assets, also, I suspect someone wanted to do engine work but was having a hard time with upstreaming it, so it forked off the Spring project, they rebuilt all the units(same unit different skin) are doing a ton of great engine work and called it BAR (retronymed into Beyond All Reason but I suspect it originally stood for Balanced Annihilation Reborn or something like that). So BAR is basically a highly modified legally distinct Total Annihilation.
Zero-K is another great RTS based on this engine. It drifts further off the TA formula than BAR does.
Are there any BAR forks or alternatives that don't force me into proprietary walled gardens for exchange with the community? I would even donate! Even regularly!
BAR in general is such a great showcase in A) FOSS games can be good, work great, scale nice and be fun and B) BAR is a game built by gamers who play and enjoy their own game, for other gamers, which seems more and more rare these days.
What is BAR?
Beyond All Reason as mentioned in a sibling thread.
"Currently in development". It's got robots.
> It's got robots.
"Shut up and take my money, I'm making a donation" :)
You might also like Iron Harvest. It takes place in an alternate history WWI setting with dieselpunk mechs.
How did games like Age of Empires and StarCraft deal with that tissue on single CPU systems? They were mostly single threaded too and with way less computational power.
I feel like the issue is more that their pathing algorithm is very inefficient. Not sure why using multiple cores would solve the problem if the cause of the lag is that their pathing algorithm is cubic time or something
The pathfinding algorithm has been decently optimized. The reality is that 600 units finding paths and keeping them up to date is a lot of work.
Some of the pathfinding is precomputed, some cannot be as it involves other units and formations.
Most other RTS games work around this by either relaxing the constraints or implement some amount of parallelism.
There is also some exciting work going on to improve the path finding of formations to make them behave more naturally: https://gitea.wildfiregames.com/0ad/0ad/pulls/8608
A realistic version would have unit commanders pathfinding over long distance, and the plebs following them unless they got merc'ed
I think this actually can be used to optimize the pathfinding. Basically create a fake unit that is used for the real/complex path, then have the other units follow it with basic collision or a very tuned down pathfinding algorithm similar to the hack I did where I just counted loop iterations and bailed after some threshold.
AFAIK one of the reasons they held onto 'alpha' for so long was that this network lag issue for internet based play was a big known and hard to address issue. I'd def be trying again since they've come out of alpha with this release.. a huge deal for a game that is so many years in development.
Also, we've always played the game as in-person LAN, and for the most part the lag has been just fine. Only for really huge end of game final battles with the screen packed with troops did it lag out for us, but being free and all, we'd often gather around one monitor and talk crap at each other while we waited for it to clear up.
Good times.
> I'd def be trying again since they've come out of alpha with this release.. a huge deal for a game that is so many years in development.
We're not calling it Alpha anymore, but we still don't consider it a polished major release. The announcement of the last Alpha, Alpha 27 had a section explaining the motivation for the change: https://play0ad.com/new-release-0-a-d-alpha-27-agni/
> Only for really huge end of game final battles with the screen packed with troops did it lag out for us, but being free and all, we'd often gather around one monitor and talk crap at each other while we waited for it to clear up.
I'm not sure when you last tried the game, but a27 notably improved performance and feedback so far suggests that r28 did as well.
That was my experience as well. My understanding is that the simulation will be bottlenecked by the slowest PC. All of my friends had pretty powerful PCs, but someone among us had a slightly weaker one in terms of single core performance, which means we all have that CPU basically then.
The huge battle toward the end of the game dropping or making the game unplayable was what killed it for us. We didn't want to spend all that time making our army and strategy only to be disappointed. At the time we went back to playing Age of Empires 2 DE.
> My understanding is that the simulation will be bottlenecked by the slowest PC.
That's correct. While 0ad is an RTS, behind the scenes it's still turn-based and in multiplayer games turns can only progress once every participants PC has responded. That's also why the game also feels slow when a player has a bad latency to the player hosting the game.
I love 0 A.D., and I’m endlessly grateful to all the developers and volunteers who made it happen. Your dedication and skill deserve a monument — my genuine admiration.
I install it every few years, and it’s always a blast, somehow, and I do not know why I never do more than experiment with it..
Gameplay-wise, I find that Beyond All Reason is, as far as open-source RTS games go, a few orders of magnitude more fun and mature. I don’t think there’s any commercially available RTS that can compete with Beyond All Reason in terms of fun and performance.
0AD's web site is rather bad at describing the game, but Beyond All Reason is even worse. I rarely play, so I had never heard about it. Both focus on details, forgetting the main points.
After reading BAR's homepage and the FAQ, I still have no idea what to expect. It could be a purely online game with ads and in-game buys, through a central proprietary server. It could also have a single player campaign.
Good points, the BAR FAQ's first question is "Best Twitch Stream Settings for BAR (OBS)", and the Gameplay page talks about physics, terrain, economy, units and weapons but answers nothing like: is there a single player campaign? Are there AI opponents? what's even the theme/setting of the game?
There are single player scenarios in Beyond All Reason, though not yet a campaign with a narrative.
There are AI opponents and you can configure friendly and hostile AI players. There are also two dedicated "beat waves of enemies then final boss" pve modes.
There's not a real theme other than "robot armies built by commanders with exponentially scaling economy".
There is a lore/backstory/setting planned to be released on March 8th.
BAR is incredible, probably best RTS right now
Thank you 0 A.D. team. My son and I play, it is one of the few things we can do together. Nothing has brought me so much joy as fighting my son: king of the Persian army.
I haven't played Beyond All Reason but looking at the system requirements I'm not surprised it is more fulfilling. 0 A.D. runs on a potato if you look at it threateningly, which makes it a good option to have on a throwaway machine for kids or somesuch.
Those are lowball system requirements too.
You can easily play or spectate a low-unit count game of BAR on any decent 2010+ quad core.
Such a computer won't allow you to play 8v8 that goes into the late-game stage. Sometimes not even 4v4 or 2v2 with players scaling to high unit counts. Some players try anyway. Ignoring player disconnections, half the drama of large-scale games is the one player who's lagging because they're on a potato computer. If the sim doesn't lag, the game will at least be down to single-digit fps.
That means you can't really play multiplayer comfortably, at least not beyond 2-4 players.
For that, you need a recent ryzen or intel. I'd estimate recent as post-covid.
I don't know what combination of things is important; there's larger cpu caches, faster sustained CPU frequencies (TDP and cooling matter there), hardware mitigations for speculative execution bugs, faster ram, resizeable BAR support... but in my experience going from a 6-core skylake-era cpu to a ryzen 9xxx, with the same gpu, made a massive difference. I saw no massive improvement going from a 4-core 2010-era cpu to a 6-core skylake-era cpu; I'd classify both as potatoes for BAR purposes.
My experience is the opposite: 0ad will lag on my laptop once thing become big. BAR will warn that it’s not compatible with my low end intel integrated potato gpu, but it works just fine..
BAR runs fine on low end CPUs...until you have like 2,000 units on speed metal
I had problems with lag years ago but not lately, though I don't do big multiplayer matches with several players and the like.
I'll check BAR out.
Those who like this game may also want to try open-source The Battle for Wesnoth, which is a turn-based hexgrid war game.
This game started slow for me many years ago but I now absolutely love this game. Not just because of all the open source effort that has gone into it, because of the strategy. You have to make yourself vulnerable to get stronger.
Wanna grow fast? Train workers who can't fight, but are resource efficient to make. Risk being badly weakened if getting attacked, for the benefit of the workers giving you much more resources to then raise an army.
Also watch out for the elephants!
Ya I don't really get elephants. They seem way too strong and always win. What is the effective elephant-counter?
When was the last time you played 0ad? Each release brings new changes to balancing and especially a27 contained a lot of them.
I played whatever is in the Debian 13 repos.
As far as I remember, elephants have always felt overpowered to me. Could be lack of skill on my part.
Germans are too op in my opinion. Appimage is much appreciated as the game is pain to compile. And it crashes less than previous version that's also good
I played online once with a friend. He immediately rushed to make one soldier and that sole solider obliterated my tiny base immediately.
Lesson learned. Sheep can wait
This is such a high quality game that it is almost unbelievable that it is free and open source. The fact that it is also still seeing active development after more than 15 years shows just how passionate the developers are.
I have been playing 0ad, single player, medium/hard difficulty, round-robing all maps, for years now. Great game. I have to try mods one of these days.
Looking through earlier news, a July 2024 release note proudly proclaims “The git migration is on its way!”. But I’ve had a look around and can’t easily find any active git repo. Anyone know the current status around ‘moving to git’?
Ref: https://play0ad.com/the-git-migration-is-on-its-way/
They have a Gitea instance - https://gitea.wildfiregames.com/0ad/0ad
I had been confusing this game with Unknown Horizons, another RTS but based on the game 1602 AD. Just realized they're totally unrelated.
I really love the iterative progress with 0 A.D. And every time the game shows up in news, it's always amazing to go through the changelog. I just wish I was a but younger with more time to play :) For an OSS project it's quite an achievement!
The devs clearly put in a lot of effort. I'm a little surprised no one's created a campaign yet. I love the game anyway, just seems less effort and more fun to create a campaign (of course a different thing to keep the campaign balanced and up-to-date with new releases).
Making a high quality campaign is quite some effort and the engine still lacks some features, which would be helpful for this. A dialogue system is one of them, which already has a PR available: https://gitea.wildfiregames.com/0ad/0ad/pulls/8614
There is also a thread in the forum, where people are brainstorming about an official campaign: https://wildfiregames.com/forum/topic/123956-narrative-campa...
Yes of course. I wasn't talking about a high quality campaign: I'm surprised there isn't even a low quality one. Perhaps that would be contrary to the 0ad philosophy.
I once randomly stumbled upon this in GNOME Software (alphabetical sorting). Was very happy to find such a quality title there.
I first encountered it when I was looking at the biggest packages in the official repositories, in order to stress-test my own APT distribution implementation. Gave it a try, had fun too, and now part of the E2E tests of the mirror :D
I tried to play this game once and sucked at it. There are people out there who are legitimately good at this, and that's awesome to see for an open source game
I started playing not so long ago. Here's some good lists of tips that helped me. Although I had some headstart with SC2 experience :)
https://wildfiregames.com/forum/topic/22257-a21-multiplayer-...
https://gitlab.com/mentula0ad/0ad-tips-and-tricks
I know what you mean, biggest gripe I have with this game is how important it is to play the meta and boom early if you want to win at anything other than easy mode.
I've played perhaps tens of hours of 0AD. I boom early, try to create an unbeatable army, and then go win. When I saw competitive 0AD players on YouTube, they played completely differently: they train cavalry or cavalry archers and go hassle the booming opponents really early. Then retreat to go hunt some chickens for a bit, train some more cavalry, and go raiding again. They simultaneously attacked each other, all the while trying to continually improve their economy meanwhile. It seemed much more fun than the way I played tbh.
The best players are incredible at microing (although horse rushs are just one of multiple strategies). It's also equally important to manage resources and units in a way that you use all of them all the time. That's especially important in early game.
Love this game, even if I routinely get my ass kicked on anything other than Easy.
I love 0ad - it has atmosphere. I was chuffed when a28 came out and the gutted when It crashed for me but it just got fixed and now I'm trying not to think about it until 5pm.....
It crashed for you? You must be running Arch Linux. ;-)
Arch Linux used system-provided SpiderMonkey which lacked a crucial bug fix. This issue should be solved by now, by Arch Linux switching back to vendored Spidermonkey.
Check out https://gitlab.archlinux.org/archlinux/packaging/packages/0a... and https://gitea.wildfiregames.com/0ad/0ad/issues/8757 for details.
Incredible work folks. Can't wait to try it out. The Germans look cool!
It’s macOS not OS X unless you’re supporting a decade old system
Wow! Amazing work. This is an incredible accomplishement.
I used to like some of its music
Nerfing the Han minister unit makes me sad
gift from the gods
> 0 A.D. Release 28: Boiorix
No system requirements. Does it run on Pentium II wirh 128 MB RAM ? Or does it need an 128 Cores Epyc with 64 GB RAM ?
It runs on my potato.
> Processor: 2 GHz Intel or x86 compatible, PowerPC64, Arm
https://play0ad.com/download
I mean, good news, but even going down the route of using pre rendered fonts in the first place seems misguided O_o
Unless you prerender every sentence, kerning issues must have been unbearable even for latin scripts
Fun fact: 0ad still doesn't support kerning. While I would've loved to see proper kerning support in r28, there is only so much a team of volunteers can do.
If you're interested in progress in this area, I suggest you keep an eye on https://gitea.wildfiregames.com/0ad/0ad/issues/7945
It’s what everyone used back in the Quake 3 days.
This is an odd comment on a website where most users are happy working with mono-spaced text most days. Not everyone has kemingphobia.