0AD, an open source historical RTS in development for 22 years
play0ad.com
play0ad.com
Other previous discussions (https://news.ycombinator.com/item?id=10684532) were about pathfinding in this game. The pathfinding in AoEII is something. It's neither naturalistic, immersive, nor intellectually stimulating, which would be goals of mine and probably the average game designer in 2023. I'm not going to say how I really feel because I don't want to be downvoted over something stupid. The important thing is people love this pathfinding. It's worthy of copying.
0AD: People love more of the same. Another free & open source example is Pokemon Showdown. People want original untainted Pokemon so badly that Pokemon Showdown still has concurrents in the tens of thousands. Who wants to play competitive Wikipedia? Nearly a million people a day do.
Commercially: There was an audience for "more Breath of the Wild" before TOTK: Genshin Impact. League of Legends is more than a decade old now. Counter-Strike is almost as old as 0AD. Old reigns supreme.
Another game with really frustrating is (still pre-release) Age of Darkness.
Units typically get slaughtered if they traverse uncleared regions of the map. But you can't tell them not to, and you can't even see ahead of time what pathfinding will choose for them.
It's amazing how much cognitive load is added by having to prevent units from doing super-stupid stuff.
> bad
What I really wanna get into: the cognitive dissonance of being a programmer and an AoEII ultra at the same time.
Game mechanics do have a certain objective truth to them. They are also pieces of software, they follow a lot of the same rules as Gmail and Instagram and whatever. As a matter of objective reality: when your game does not aspire to specifically be clunky - this distinction is sometimes called "QWOP" - it seems valid to say, okay, this pathfinding is the word you used. I have the wisdom to not use that word you used in this forum to describe something people feel ultra about. But it is true.
People feel so strongly about bugs and clunk in their social media YouTube drip. The same ADHD personalities love clicking around villagers! I mean what a "something" piece of gameplay.
I wonder how to harness the resources poured into something like 0AD to make "Better AoEII" or "Better AoM." I'm not sure how often that question is asked and how it is answered. That's why this cognitive dissonance matters.
> People feel so strongly about bugs and clunk in their social media YouTube drip. The same ADHD personalities love clicking around villagers! I mean what a "something" piece of gameplay.
If I had to rephrase this section based on my understanding, I would interpret it to say something like: Often, people are bothered by bugs and other issues that happen in commonly-used apps like Facebook or YouTube, but when these bugs manifest in video games, it’s viewed as part of the character of the game. For example, the micromanagement of villagers that’s required due to bad pathfinding in AoE II (to prevent them from running under turrets and such).
Is that correct? Any ideas why your phrasing would seem so foreign to me? I’m very curious why.
Yes
> you say you’re an AoEII ultra
No. I can't say how I really feel about the game.
> it’s viewed as part of the character of the game
Yes.
> I’m very curious why.
People feel very, very strongly about their nostalgic retro childhood fun cozy times like playing AoEII. They're ultras, right? It's like talking about football. It can be perilous.
I personally don't think micro, as it exists in StarCraft, is interesting or even worthy. It only made that game harder in ways that were not fun. Which is too bad, because it was a phenomenally engineered RTS engine (starting with WC3) that brought us many other game formats in its custom scenarios.
Compare to Supreme Commander, which had very sophisticated pathfinding and in my memory more interesting micro. Compare to all MOBA formats, where if you're going to have WC3/SC style micro, you might as well focus on micro of one unit. There were many ideas that came after StarCraft that are in an important way, objectively better.
It has a lot of other clunk. The way you have to manage resource gathering. The unit building queues and how spending occurs. The spellcasting. The selections. It has so much legacy.
StarCraft 2 had to cater to a very specific eSports skill base that probably led to it going into the same level of obscurity as EverQuest: Gen X people still have strong nostalgic feelings for it, but they don't play EVE Online, they're not 20 anymore with oodles of time and no responsibilities, they don't want hard permadeath single instance experiences. They want something much gentler but they still feel very positively about like, this one clunky thing they may have mastered a long time ago when their brain power was so much more plastic.
Is the AoEII engine similarly as worthy as SC2, like from a technical engineering point of view? In my opinion, no. So besides the existence of an ultra audience, I don't think there's a good reason to celebrate the crappy pathfinding anymore.
> I personally don't think micro, as it exists in StarCraft, is interesting or even worthy. It only made that game harder in ways that were not fun.
That's you're opinion. I think the exact opposite. If those games didn't have the micro opportunities they did, they would have died long ago and would have been forgotten in history like most other RTS games out there.
I find RTS games without micro extremely boring. I Micro makes it exciting because it's not immediately obvious who will a win a fight. You can choose to gamble and be slightly greedier in your economy and rely on winning a fight that you should lose. It also forces you to constantly choose between where your focus should be. Do you focus on the fight or your economy? And when there are multiple fronts to a fight it gets even crazier. I think those things are core to the RTS gerne.
> Is the AoEII engine similarly as worthy as SC2, like from a technical engineering point of view?
I mean you are comparing games from different eras. But I think AoE2 is extremely worthy from a technical engineering point of view. You have so many ranged units shooting many projectiles, each with it's own collision detection back in '99. It's nothing short of a work of art.
Also, the SC2 and even SC communities dwarf Supreme Commander, EverQuest, or EVE Online. There are still worldwide SC2 tournaments, sometimes televized, with price pools in the millions (well, until this year, when Blizzard dumped the prizes significantly). SC is still quite popular at least in South Korea.
In case anyone is not familiar with these games, you are building a base, the map begins unexplored and is populated by monsters which will attack you in waves, so it is a sort of inherently player-vs-environment, very asymmetrical game.
Because the enemies are basically expendable and your units aren’t, your units should… try not to sacrifice themselves so much. They should avoid the fog-of-war areas unless explicitly instructed to go there. Melee units should flee when injured. Ranged units should stay out of melee range. Total War unit AI (where ranged units typically skirmish by default) might be a better starting point than Age of Empires style unit AI.
Although, it is a niche within a niche, so I guess I’ll take what I can get, haha.
It is sort of funny, I do enjoy optimizing, but in a game I prefer setups where you have to kinda intuitively optimize by your gut rather than really tweak things. The 50-80% efficiency range, rather than hitting those 80-99% targets, so to speak.
Ramping up the number of biters in an unmodded world (deathworld) can be really fun.
Modpacks like Warptorio 2 add a very different dynamic but has that same frantic feel.
But in vanilla yeah, if you don't enjoy optimization for sake of optimization and building bigger there is not that much more to do once you played it once or twice.
There are few more directed mod/modpack experiences to play, but they generally also add complexity to the build and not everyone enjoy figuring out complex builds for that.
It's not about original ideas in Pokemon either.
I don't have any opinions on this (I'm not really into Pokémon).
But it is addressing one of its "failings": No decent online PvP play. And it's only about that.
While the 2 latest "main" games addressed this, showdown it's still important, because building a team ingame needs some time commitment (catching/breeding the mons and training them) while on a simulator its "instant". Also, there are more formats to play.
Yes, showdown doesn't try to make something new/better out of pokemon, but that misses the point. Their examples were about picking something popular and making something like that, either by the community/opensource or commercially
Showdown is not that, showdown is not alternative,a rehash or competitor to a main pokemon game, showdown is better seen as a tool rather than a game, it's where you go to validate/test your team, it's where you play some alternative format that the game itself doesn't care. So it obviously doesn't try to move game design forward, if it changed things it would no longer be where people would bring their pokemon teams online. "bringing pokemon forward" is gamefreak/nintendo job, showdown is just a tool for competitive players, and it's not a tool job to make something new or better than the original game.
It's just a glorified "online matchmaker" why is it even being lumped together?
The idea made it possible to convert the graph into either way finding meshes or influence maps, a great abstraction layer to build complex scenarios on top.
What makes me sad here is that, even though the paper written for 0 A.D. is newer than the paper I had read around 15 years ago, it is primitive. It is also a good thing as it is a low hanging fruit here for game devs. But I am not sure if there is enough interest for game devs here.
If pathfinding is too efficient, and the same for all units, then the micro aspect of the game is killed. Micro is the "real time" part of real time strategy.
If you play something like Starcraft 1, Warcraft 2, or AoE 2 you'll see the pathfinding has immense peculiarities that as you get better at the game you learn to manage. Units get stuck on each other and so on.
Starcraft 2 has a very good pathfinding algorithm but it still intentionally adds a lot of variety to how units move to recreate that cumbersome peculiar pathfinding that rewards micro. Yet if you look at Starcraft 1 you see the units still move in much more unique ways.
I think it's too easy to fall into a technical rabbit hole and try to do the best pathfinding when it actively harms the game.
Also, you seem to be deep in this world, I'll also ask you - are there RTS games out there where the specific terrain is crucially important for various unit types - like we've seen in the real world recently, with weather updates waiting for deep mud to dry out being the main factor in when tanks and other sorts of vehicles can be useful? My experience of RTS games is limited, but I remember maps being very flat overall, with very few types of steepness modelled.
Small fights don't make the difference as noticeable, but larger armies are so much more efficient in SC2 compared to SC1, that it's harder to hold off a larger force with a smaller but better-controlled force. The bigger "deathball" tends to just win, it's harder for someone to come back from an army disadvantage with skillful play.
Another small example there is that "ling runbys" in SC2 are vastly more punishing for even small mistakes in leaving a gap open in a building wall, because a huge number of lings can run through a small gap extremely quickly.
If pathing efficiency is the goal, why not make every unit in an RTS extremely tiny? That would make it more efficient for sure. Or, hell, just turn off unit collision entirely. Or make units all move ultra fast, or get rid of all map choke points? All of these things would improve how efficient pathing is.
Pathing efficiency isn't the goal itself, it's part of the game designer's toolbox. Plenty of things are intentionally pathing-inefficient -- like big, slow units -- as part of the game's design and balance.
The lead designer of Stormgate, which is the closest thing we're gonna have to StarCraft 3 probably, has talked about SC2's pathing efficiency problem himself. Granted, it doesn't sound like he wants StarCraft 1-style pathing, he just wants to compensate for the efficiency in other ways, like maybe making unit hitboxes bigger.
Like, StarCraft skirmish AI is pretty basic, having a smarter opponent to practice against would be nice. As it stands, I can practice a build vs the AI just to get the timings right, but otherwise the AI is mostly useless because it sucks too much compared to a regular player.
https://youtu.be/xPC8aIl7nek https://youtu.be/mLr1co1f5-c
For example in Warcraft 3, which is much smaller scale with 10 - 20 units per player at any time, players constantly look for ways to block each other. While the fight is happening you might sneak a unit around just to block their path when they escape. This wouldn't be possible if the pathfinding was better at steering.
In terms of terrain maybe land/sea/air in Red Alert 2?
The more tactical RTS like Company of Heroes and Dawn of War 2 use the terrain a lot, but in small scale ways like moving from cover to cover and building to building. The terrain is very complex there.
The new Dune Spice Wars only has desert but it has some interesting ideas about movement. It's a much slower RTS and has been described as real time 4X.
Just that one thing of having sub-par pathfinding made the game far worse, I'd guess at least a full point off a 10-point game rating. I believe we had to slow the whole pace of the game down because the player had to babysit units as they moved, which made the game far different from its extremely fast-paced predecessor and which the players expected from a sequel. I played DR2 again recently and it doesn't hold up almost solely due to pathfinding and the pacing that results.
A surprisingly unknown title. Always wished it had a third campaign with base building or a level editor though.
This meant I could setup a LAN party by dusting off a collection of semi-retired Windows, MacOS and Chrome machines.
In early RTS games like Warcraft, half the game was micromanaging your units from place to place. You'd send your army to a location, and if there was an obstacle in the way (such as a forest), they'd awkwardly path around the edges of it, one tile at a time (causing massive congestion, because the units at the front would obstruct the ones behind). They'd arrive at their destination one by one, and if the enemy was waiting, they'd get slaughtered.
In Age of Empires II, your army would arrive in a solid mass. It was a relief: you could actually play the game, instead of babysitting a bunch of units.
Wololooo
<3
This is probably the most annoying aspect of StarCraft 1 / BroodWar (1998), considering the game still has a very strong player base and is very enjoyable to watch (even if the clunky mechanics are too much to bear for me to play it).
> You'd send your army to a location, and if there was an obstacle in the way (such as a forest), they'd awkwardly path around the edges of it, one tile at a time (causing massive congestion, because the units at the front would obstruct the ones behind). They'd arrive at their destination one by one, and if the enemy was waiting, they'd get slaughtered.
In SC1, they wouldn't even arrive on location half the time, because the pathfinding is so stupid they'd get stuck trying to walk up a wall. It's so infamously bad it's still being mocked: https://youtu.be/mCEZ2hIcUW0?t=134 - still, a great game!
In SC2 (2010), the pathfinding has been massively improved. You can give orders to hundreds of units and they will all figure out how to navigate complex terrain. They will still clump up at chokepoints or occasionally get a bit stupid when trying to path around other units that are engaged in a fight but this is more easily fixable with even a tiny bit of micro.
However SC2 makes no attempt to make units maintain formation. So if you're moving your army across the map, still best to keep an eye on it, and group up / pre-split / set up before attacking. It's a bit less of an APM game, and more of an SPM (screens per minute) game.
I played a ton of StarCraft growing up and it definitely has a high rank in the pantheon of games, but I’ve been converted to AoE2 I guess. Wololo.
I think it was the right call, considering (unlike the AoE series) that SC has always had very asymmetric factions and matchups. It's very easy to make a trivial "fix" and wreck that balance, leaving a significant part of the pro player community with no tournament wins = no income.
The game was incredibly impressive when it came out: technically, graphically, sound, single player, multi player, map editor with a custom programming language that allowed to make very complicated maps (there are tens of thousands of them, including custom maps with own minigames).
On top of that the game was just nice to play in both single and multiplayer - where it had great balance of 3 distinct factions.
SC:BW is a game from 1998 yet still probably the best RTS ever. And it worked on machines back then.
You mean the trigger/action system in StarEdit? I wouldn't call it a programming language, but it was a very nice introduction to scripting, especially for me as a 10yro kid at the time. I probably owe a bit of my career to it.
Obviously fair share of problems, but there were some clever workarounds with "hyper triggers" to make triggers fire very often, instead of being recalculated every 2 (?) seconds... or stuff like counting minerals to do things (what to be honest was horrible, but worked).
Those custom maps grew as our computers grew (I cant imagine some of the custom maps working with 16mb of RAM, luckily I upgraded to I think 192) and spawned whole generes - MOBAs and Turret defense. There was even that "the unknown" map what is basically Among Us long before Among us.
Are there any games nowadays that allow such things and spawn so many custom maps?
WC3 literally spawned DotA, and thus the entire genre of MOBA. It was originally just a WC3 map.
SC2's editor is also quite capable - the game is free to play, there is a lot of cool stuff in the arcade section, with some very active minigame communities (Direct Strike, Crap Patrol, etc). Sunspear Games are making Immortal, a new RTS which was initially prototyped using the SC2 engine; these same guys earlier did StarBow, which could best be described as "StarCraft 1.5", with many good elements of both BW and SC2. And of course there's that guy who's remaking all of WC3 in the SC2 engine, and it works better than WC3 Reforged (which I sincerely do not recommend to spend your money on). There's also the SC2 Mapster Discord server, some people are trying quite interesting things for regular 1v1 maps (considering how conservative normal 1v1 is), like water slides, destructible resources/watchtowers, etc.
Overall not the golden age, but it's very much alive.
(Or there was a map with same idea before - in SC:BW).
Advancement in computing capabilities over the last 15 years seem to have gone almost exclusively to graphics and duration. We get bigger and bigger games with better and better visuals, but fundamentally the same few gameplay modes.
Maybe it's just perspective, compressing the "glorious past" of 80s/90s games (breaking all sorts of barriers and inventing new ways of gaming with every other title) over a shorter timeframe in my memory, while the last decades feel long and bare. I probably sound like a boomer talking about rock'n'roll.
Spring(-Recoil) engine and games like Zero-K have tried a LOT of things over the years, and I am going to take a guess and assume that so did 0AD ?
Nevertheless, I admire 0AD especially for the consistent progress and commitment to the game. It has been a while since I played it the last time. Might be a good occasion to start it again!
Contrary to popular belief, Nintendo are not the only people that make open world games...
I wonder how many of these are bots developed by three-letter agencies trying to build their own AI.
(Most players never touch competitive multiplayer, but quite a lot might try playing with friends vs the AI ?)
To me the writing of the Single Player campaigns was grating ("bout time we kick this revolution into overdrive", rawr!) but the gameplay was good, so no hard complains. I liked the unit variety on the Protoss and Zerg campaigns compared to the WoL "buy upgrades and mercenaries" approach.
Yup, we are on Hacker News!
I now see that more DLCs and patches were released after they did Poles and Bohemians, which were the last ones I played. The Poles as a civ were incredibly powerful btw. I felt really thankful for the team to keep supporting and developing the game in these recent years.
https://github.com/netpanzer/netpanzer/tree/dev
I just setup a new masterservers and a couple game servers with bots (but you need v0.9x+ to play with bots).
I'm working with the maintainer to do one more release to the distros and then probably convert it to Godot.
You can download the latest 0.9 release from sourceforge. 0.8, in the distros, is pretty old.
Yes, it's fully playable (and indeed being played by thousands of people) right now.
Some aspects vaguely look like C&C Generals, and some like Starcraft, if I'm understanding stuff from the video correctly. Thanks for sharing!
Another Total Anhilation clone is ZeroK which is unfortunately also not completely open source because of its artwork license (Wikipedia mentions CC by NC ND but I could only fjnd this summary https://github.com/ZeroK-RTS/Zero-K-Artwork/issues/16).
Unfortunately it is near impossible to setup a local LAN game with ZeroK, since there are no current instructions to setup the required spring-engine lobby server.
Edited, because I recognized to late, that Wikipedia mentions that zeroK-Artwork might also be under CC-by-NC-ND.
Edited again to clarify, that its not open source because of the artwork.
Maybe drop by the Discord to see if anyone can help you debug the issues you've run into.
Also, just because it might be hard to use on non-closed systems doesn't make something not open source.
If so, that is a serious impediment, tbf.
Unfortunately non-open source artwork is a problem with many games whose sources were released by the original publishers, after they abandoned any commercial plans.
For example I'm a big fan of OpenRA, but its artwork is still non-free.
I think ZeroK is a great game, and BAR probably also, so I didn't mean to distract from the great accomplishments of its FLOSS gameengine authors.
It's somewhat easier for BAR despite in theory being harder due to the lack of these standalone files due to the rapid file system, but in practice easier because you can just use the unofficial Skylobby (BAR still uses Springlobby protocol, at least for now).
Actual AOE is still alive and kicking through the Definitive Editions and now AOE4 with a very active online community and developers. While 0AD is great and fully opensource, I still don't find it comes close to the Experience of the actual AOE titles. Maybe I'm biased because I don't mind paying for proprietary software and I sometimes use Windows. I do however definitely agree how great of an achievement 0AD is and it is definitely a great game when considered in isolation.
AOE2, 3 and 4 have lots of tournaments, some of them with quite decent prize pools.[3]
I personally don’t play AOM so I can’t comment on that but as far as I have seen, Microsoft has done a good job at reviving the other games and with the new game so while I don’t doubt AOM is buggy I do have faith they are actively attempting to fix issues.
As for the Windows only thing, as I said, I use windows at times myself and I don’t mind paying for proprietary software. But I understand if others have qualms about that.
But to say that the Age of Empires series died with AOE3 is untrue, and while 0AD is a great achievement, to say it is a replacement for the actual Age games is also not true.
Also note that MS did reimplement the engine for the AOEI definitive edition, unsure about the others.
1 https://en.wikipedia.org/wiki/Age_of_Empires_IV 2 https://www.ageofempires.com/news/age-of-empires-iv-season-f... 3 https://liquipedia.net/ageofempires/Main_Page
The issue for the new DEs/4 isn't that they're proprietary, it's they've gone backwards for cross-platform play (no MacOS, worse on wine), hence the open source implementation (with propriety assets) would enable playing on whatever systems people have.
EDIT: I will agree that 0AD isn't the same as AOE2 if I want to play AOE2, but given the option of playing a game that will work (0AD) vs. one that may work (new AOM), I'll take the one that will work.
At the end of the day the goal is to have fun so if the new game doesn’t fit your vibe that’s totally understandable. But I invite you to give it one more shot , even the Viper plays it from time to time :)
Also definitely agree about the no Mac/wine thing. A friend of mine ended up buying a new PC to play the game with the rest of our group.
This is the only game me and my son(7) play together. It amazing for little kids. They learn history, building resources, building alliances, and destroying the dad empire.
I wish it was possible to play online multiplayer :(. Unfortunately, the people that play online are pretty elitist. Just reject your offers to play, setup the game for you to lose on join, etc etc. The multiplayer "collect resources" is not very fun - it would be awesome to start with 50k each and just create an awesome battle. I don't want to spend 2 hours collecting fake trees - only to have the opponent destroy me in 2 seconds. You can't do any strategy since you will never get to the stages where that matters.
There has also been some work to establish a geospatial intelligence class using the game engine as well (map/market/resource analysis).
I know this is more 'if you know you know' kind of hobby but it would still be nice to get a quick overview :)
I had a similar feeling with Black Mesa. At a certain point, it feels like they've worked so long on the project that they lost the original selling point. At what stage does it make more sense to just remake the game in the latest UE than offering a 20 year old game that still isn't close to being released.
I don't want to talk down on the project but it's a question I think about every time I see these types of products.
> I tried the game about eight years ago but it didn't run well on my laptop
Care to try it now? I've been playing Alpha 26 for a few weeks, and I actually love it.
Now if somebody would port first Deux ex into Unreal 5.2 engine that would get me interested (but still, keep your emotions in check and play when its ready, otherwise just a recipe for regrets)
Unreal Engine isn't an option if open sourcing it again was a goal and/or a means to attract new developers after the death of half of the previous core team.
Old engine foundations doesn't necessarily mean a bad thing : for instance the Spring engine was started in the late 90s, released in 2005, and not only is still used today, the fork of it that is even more successful (and with the fanciest looking games, and the best performance) today, Recoil, is the one that decided to stick with legacy OpenGL3 features rather than radically change to better fit with how OpenGL4 does things(?), in order to not break games !
No noticeable bugs affecting my single player gameplay, except a few quirks with ship movements (they tend to overlap, which makes it look unnatural)
I have also noticed that clusters of units tend to look smaller than their actual number, so it might be a similar issue as I've noticed above. From someone who still enjoys the AoE 1 Ex, 0 AD is a really amazing game.
Some specifics about this game that make it unique:
1. You cannot build anything any where. There's the concept of a "region of control" that surrounds your Civic Center (Town Center equivalent) that marks the borders of your settlement. Building right on the borders expands it. Exceptions to this rule are made for docks, outposts Roman army camps (if you play as a Roman)
2. Besides mounted and siege units, your soldiers are also your builders/resource gatherers. Citizen soldiers. Non-combatant builders/gatherers are female citizens. As soldiers gather experience from fighting, they become more capable soldiers and less capable citizens.
3. The default UI uses traditional, civ-specific names for units and buildings (with English equivalents as secondary), which can be jarring at first. I swap them to make deciding on what to build easier.
You can also train mercenaries who can only fight and not work.
I think never going 1.0 is an open source game dev meme or something. Xonotic is still pre-1.0 even after over a decade in development. Stable as heck.
It is 100% playable and has been for years. As sibling comments note, I think the only reason they label it as anything but stable is because there are still significant changes between releases. Although I personally think they could fix even that by just chopping the first parts of the version number off - if they stopped calling it "alpha" and just called it 0ad version 26, and then released version 27, everyone would still have the right expectations.
Processor: 2006 or later Intel-based Mac, ARM based with Rosetta
…so there are mixed signals.
Not having to install would be awesome. And JS would make it accessible to most devs.
Don’t think it would be more than it is now; game dev is not the same as web dev and the sourcecode of this game is very readable and easy to work with. The language is not going to be the issue for getting collaborators.
Not open source tho.
Open source games are not really constrained by devs, I think. I'd say that dev work is the one that's best covered in the open source game development. Project management, marketing, asset production, user experience, quality assurance, product management seem to be much more underserved.
https://www.reddit.com/r/istrolid/comments/ksu5n9/any_chance...
> The web version is literally just a .js file, all the code is there. Fun fact: the user run servers (my own server Myxori and Magic) run a modified version of that file. I literally download the file via inspect element, add some wrapper code for networking, and get a fully functioning server.