Leaderboard
Popular Content
Showing content with the highest reputation on 2026-09-24 in Posts
-
Turning a fairy tale into reality, humanity has taken to the skies in 0 A.D. (apologies if someone has already done this). Drawing inspiration from World in Conflict, I am adding more realistic helicopter movement, though the takeoff/landing key is my own idea, as World in Conflict required rappelling to disembark. Recording 2026-09-24 231717.mp45 points
-
I needed dedicated server for 0ad and I built it: Veredus is an unofficial dedicated server for 0 A.D. and it's out now. No player hosts the match, so it keeps going when someone leaves or has a bad connection(with a timeout). Dropped players get their slot back when they reconnect, and matches carry on after a server restart or killed. Players join with vanilla 0.28 game. An optional companion, the "sidecar", runs AI opponents on the server, lets players rejoin without asking state from player, and records results and replays. The server is free and open source. Code and setup instructions here: https://github.com/victorcrimea/veredus I only have Linux, so I'd really like to hear from anyone who can try it on Windows or macOS: does the server start, can players connect, and does the sidecar build and run? Please post bug reports, suggestions and questions here or as a GitHub issue. Veredus is not affiliated with Wildfire Games. Basically any feedback is welcome.3 points
-
Hello everyone! I’m back with more news and new images from World Rising! =D Over the past few weeks, I’ve made several important improvements to the project. New buildings have been added, new technologies have been implemented and tested, and everything is working very well so far. I also rebuilt all the meshes that needed corrections to ensure that the shaders and lighting work properly. It was a lot of work, but the visual results have improved significantly! Another big addition is the creation of the Yayoi hero Katsuro. With him, we now have 4 of the 5 heroes planned for the ancient Japanese culture, with one hero representing each Era. The 4th Era — the Bronze Age — is now established and working, making the civilization’s progression increasingly complete. I’ve also continued working on the Yayoi economy. Yayoi granaries now produce both food and fibers used for clothing, currently represented by the leather resource in the game. The dynamic weather system has also received some adjustments. Weather events now occur at longer intervals, while rainfall lasts longer. This makes weather changes feel less frequent and more natural, while giving each event a stronger presence during gameplay. World Rising continues to grow step by step. There is still a lot of work ahead, but every new building, technology, character, and system is helping the project develop its own identity. I hope you enjoy the new images! Please keep commenting and sharing your opinions, criticism, and suggestions. Your feedback and participation are always welcome! Thank you all for supporting World Rising!3 points
-
That’s a thing of beauty; I can't wait to use some air-to-air missiles against those Black Hawks.2 points
-
The ship movement is really nice, and the inertia makes the collisions feel much more natural. It’s a shame it can’t be tested as a mod, but the demo videos still give a good idea of the changes. Hope more people can compile it and give feedback on the PR.2 points
-
2 points
-
Hi all, I'm Josue (josue on Gitea), a fairly new contributor. I want to share a project I'm about to start, get your feedback before I write code, and later hand you a fork to test and pick apart. The itch Petra is a solid executor. It gathers, builds, places, trains and fights well. But it plays the same linear game on every map, against every opponent: gather, age up, train, attack the nearest Civic Center, repeat. It doesn't use terrain, it doesn't read you, and difficulty is mostly a handicap (gather rate ×0.42 on Sandbox up to ×1.56 on Very Hard, plus some caps). Meanwhile the game ships 51 historical heroes across 15 civilizations: Hannibal, Alexander, Vercingetorix, Leonidas, Fabius Cunctator, Viriathus, Themistocles... and the AI never fights like any of them. Petra's Leonidas doesn't hold a pass. Petra's Fabius doesn't delay. Nobody builds Alesia. The idea https://gitea.wildfiregames.com/josue/0ad/src/branch/strategos/mvp1/docs/strategos Split the bot into hands and head. Hands stay Petra: economy, building placement, gathering, queues, trade and garrison mechanics, the actual battle. The head is new: a small strategy layer that picks a stratagem: wall the choke by the river and wait; build a trade network; garrison the towers along the enemy's approach; strike their army while it's strung out in a pass; fall back. A stratagem enters Petra through one door (Headquarters), which hands it to the manager that already knows how to execute it. The ambush and the Persian trade network go through the same channel. Who picks the stratagem? We write the doctrine, a model judges. Civ doctrine: read from the civ bonuses that already exist as data. Romans fortify, Carthage goes to the sea and to elephants, Persians trade, Spartans hold ground. Hero archetypes: 5–6 playbooks mapped to the heroes: siege builder, ambusher, hammer and anvil, hold the pass, delayer, naval raider. Stages triggered by the game, not the clock: early game follows the civ doctrine; mid game picks a hero and runs their playbook (hero dies → next hero); when heroes run out the AI goes defensive: commerce and fortification. Opponent model: is the other player rushing, booming or turtling? Where is their army heading? Are they weak at sea? This is what changes every game, and it's what Petra has never had. The model doesn't invent strategy. It answers typed questions ("hold, strike or fall back?", "rush, boom or turtle?") with probabilities. That's a classification job, which is why a small model can do it. Free and open, by design The target model is Laya (convaiinnovations/laya on Hugging Face): Apache 2.0, 421M parameters, a classifier that answers typed questions and runs on a CPU (the model card says roughly 200–450 ms per question on CPU; I haven't measured it yet). Optional download (~650 MB). Without it you get plain Petra; nothing changes. No account, no API key, no network, no cost. Multiplayer-safe: only the host runs the model, and its decisions go out as ordinary network commands. Clients don't need the model, lockstep holds, replays replay. This also sidesteps floating-point differences between platforms. One engine change is needed for it: today the server drops commands sent on behalf of another player unless cheats are on (NetServer.cpp), so the host must be allowed to send this one command type for AI-controlled slots. Single-player is unaffected. Mod first: a strategos mod that overlays only the Petra files it touches. Default Petra stays untouched. An honest note on prototyping: to learn quickly which questions matter, the very first prototype uses a hosted typed-question API (TypeSafe's Jev), called from an external Python script through the existing RL interface. That is developer scaffolding only. It will never ship and players will never need it. Both models take the same question format, so swapping to the local model doesn't change the questions. Performance: what it costs Lag is already the most common complaint, and AI plus pathfinding are big parts of it. Today every AI runs on the simulation thread, on every client, every turn. So this has to be designed not to make it worse: The in-engine part is tiny. Petra reads at most one hint per played turn and hands it to a manager it already runs. I'll measure Petra's turn time (the existing PetraBot bot (player N) profiler section) with and without the mod, and publish the numbers. The target is ≤5% overhead. The model never runs on the simulation thread. At 200–450 ms per question on a CPU, running it inline would freeze the host, and in lockstep that means everyone. So questions are asked every few seconds (not every turn), inference runs on a worker thread, and the answer comes back as a command a few turns later. The engine already has a TODO for exactly this pattern (async AI tasks that return after a fixed number of turns, in CCmpAIManager.cpp), and it lines up with the ongoing threading work (#5874). If that helper gets built, Petra's own heavy analysis could use it too. Only the host pays. Clients run nothing extra. The host pays CPU on a spare core, plus the model's memory (roughly 0.5–1.7 GB depending on quantization; I'll measure and publish it). It won't fix lag. I'm not promising a speedup. At best, stratagems replace some of Petra's per-turn strategic scans with a cached decision; that's a side effect, not the goal. How it relates to existing plans From the Gameplay Feature Status and Game Performance wiki pages: Advanced AI is listed as "partially complete" (#973, #3003). The terrain and threat reading here (choke points, the enemy's approach) overlaps #3003 ("Petra should be aware of dangerous areas"). Anything reusable goes upstream on its own. The naval raider archetype depends on #3002 (Petra using ships for warfare), so it comes later. Directional attack bonuses (flanking) aren't implemented, so "hammer and anvil" can only win through positioning and surrounding, not a flank bonus. I'll keep the playbooks honest about what the game actually rewards. "Ambush" here is AI behavior (hold a choke, strike at the right moment). It's unrelated to the concealment mechanic in #3177. Narrative and strategic campaigns were cut from Part 1. A historically flavored opponent in skirmish is a cheap way to get some of that feeling back. How I'll prove it (before anyone gets excited) MVP of the MVP: one map with clear choke points, one stratagem (ambush at the pass), one question (hold, strike or fall back). Three arms on the same seeds: vanilla Petra ambush + a dumb distance rule ("strike when their army is within N metres") ambush + the model Arm 2 vs 1 measures the stratagem; arm 3 vs 2 measures the model. Before any game, the model has to beat the rule on 50–100 hand-labeled game states. If it can't, I'll post that result here too. Roadmap Phase 0: headless Petra vs Petra harness through the RL interface; determinism checked through replays. Phase 1: the hint channel (a new strategos-hint command → Headquarters dispatch). JS only, no engine changes. Phase 2: choke points extracted from the passability grid. Phase 3: the ambush stratagem in Petra. Phases 4–5: rule arm, labeled dataset, model arm; results posted here. After that: the local model on the host, outside the simulation (optional ONNX Runtime dependency, off by default), the small network change above, then more stratagems, civ doctrines, hero playbooks, the opponent model. What I'll share, and what I'm asking I'll share: Everything in my fork, https://gitea.wildfiregames.com/josue/0ad (branch strategos/mvp1): code, match results, replays and the labeled dataset, for anyone to test, reproduce or tear apart. Fixes, as normal PRs, for the RL-interface bugs I run into along the way. #7854 and #7628 look like the first ones I'll hit. I'm asking for feedback from: Petra maintainers: is a single "stratagem hint" entry point in Headquarters acceptable, or would you prefer a different hook? Engine folks: what do you think of an optional ONNX Runtime dependency behind a build flag, off by default? Players and history nerds: which hero should fight how? Which maps have good passes? Everyone: is this a direction the project would consider upstream one day, or should it live as a mod? Either is fine with me. Disclosure: I drafted this post with help from an AI assistant (Claude). The plan and the decisions are mine, and any code will go through the normal review process.2 points
-
Thanks @Asher for your kind offer! Possibly if you could test the conversion of old maps (pmp version 5 or so). I am currently preparing another version 1.6.0 of post-Atlas that includes (1) the capability to randomly turn trees so they look less uniform as implemented by @vladislavbelov as a standalone Python script in https://wildfiregames.com/forum/topic/109382-atlas-scenario-editor-random-facing-direction-for-trees-on-placement/ (2) when converting an old map where there are units and other elements that cannot be anymore found (due to renaming, regrouping etc.) off er choosing an alternate elemetn from the currently available lsit.1 point
-
The shininess is defined by the spec map, and it should be dark where the hay roof is uv-mapped. Maybe you are using different materials in the .xml actor files and in some cases spec map is not taken into account and in some cases it is?1 point
-
Claude sucks at aerodynamics then. The "paddle" sides of the blades have to point backward. I advise you to check sources besides AI (surely there are videos of the MH-60L or similar models spooling up/down). He knows! He's a fan of my apparently inconcise observations. He reads all of them You mean changing the MH-60L name? Since that seems to designate Black Hawks, like in this game, which also shows the correct tail rotor spin, as can be seen at 00:35:1 point
-
1 point
-
1 point
-
I think this is still an issue, which is weird since you have other roofs that don't look like that. Maybe it would be better to modify those to obtain the more "polished" version, than to try to tune down those looking like metal.1 point
-
Ah right this might be a tough one to do. Terrain modifications would be op though. The first thing I thought you wanted to do is some kind of model representing the crater. But even this my have a whole bunch of challenge to get along with too...1 point
-
Thank you, I'll keep that in mind. I have a type of rocket launcher that can fire anywhere within range, you can simply click on any point, and it will fire regardless of whether there is an enemy there or not. I really like the small details, like applied forces or weather conditions, that you and others are experimenting with. I hope someone does something with water and terrain as well.1 point
-
I think 0AD engine should try to get the features to get a variety of mods working on it. Not even just the engine but the scripted simulation part too, so that modders don't need to code everything from scratch. @Eilat if you encounter limitations while doing your mod you should definitely open issues for them, I doubt anyone would be against it.1 point
-
1 point
-
This seems interesting! Another thought I had when watching the elephant videos (probably unrelated): All soldiers going back to idle at the same time when the elephant dies looks so abruptly, maybe there could be some randomness (like some cheering, some idle) or random delay.1 point
-
Though this is a reply to LeJardind, @Eilat I'll throw some advice in here as well. Maps too small - Not really, the size limit is only for vanilla and can (has been) removed, as Eilat said. Drones - Flying units are doable, if sometimes hacky. Recon is really just a large vision range, and suicide can be accomplished with the DeathDamage component. AI behaviour - Not sure what you mean, but Petra can do lots more than it seems. Jamming Mechanics - Also easy, just give jammers an aura that reduces vision range to 0 (basically removes your units from being controllable). Data-Link - Why? Heavy Artillery - Yeah, that is hard to balance, but a very high cost and reload rate, plus high pack and unpack times go a long way. AA Defences - Just weapons that can only target/are best against aircraft. Radar mechanics - again, vision. MANPADS - Guy with a rocket launcher. Modelling of missile behavior - Why? State-space model - Why? control laws - not sure what you mean.1 point
-
Infantry fighting vehicle on the move A quick update on The Great War mod regarding tracked combat vehicles: as someone who values detail, I prioritize realistic movement. The models now kick up dust and smoke from the ground, leave track marks on the terrain, and of course, feature a powerful, aggressive engine roar. Recording 2026-09-23 144500.mp41 point
-
Hello, good work. I got attracted by 0 A.D. because of modding capabilities. I want to bring to life a project I did for a game called Rusted Warfare RTS. It is about WW2 and i think everything I need is possible in 0 A.D., without several limitations on the engine and liceses I had in the previous game. The thing is I am strugling a bit with modding, as there are not clear or complete guides nor tutorials for modding the game. I tried to ask where to start before in this forum, but responses were not very helpful... I would thank you a lot for any help.1 point
-
Technically speaking, this mod focuses on the 21st century, the present day, though it prioritizes gameplay over historical accuracy or realism. The factions are fictional, albeit inspired by real world counterparts. If this mod proves successful, I plan to develop subsequent mods set in the gunpowder era. While those would be technically much simpler than this one, I would hope to incorporate historical consultation for them.1 point
