Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 2026-05-28 in all areas

  1. just please dont disable me again
    3 points
  2. I’ve disabled PMs for new users. I would have preferred not to, but I think it’s more important to protect people from scammers than to make things convenient for new users. Maybe we should require posts from new users to be checked by moderators before posting. But I am less certain about that. It’s basically the same amount of work for moderating the forums (maybe a bit more, but not much), but I think it would be quite a bit more inconvenient for actual new users, especially if they come here to get help with the game and then they don’t see their post. I feel like that would be frustrating.
    2 points
  3. Diodorus Siculus (book XX) description of Ophellas' army: And so Ophellas, when everything for his campaign had been prepared magnificently, set out with his army, having more than ten thousand foot-soldiers, six hundred horsemen, a hundred chariots, and more than three hundred charioteers and men to fight beside them. There followed also of those who are termed non-combatants not less than ten thousand; and many of these brought their children and wives and other possessions, so that the army was like a colonizing expedition. The Cyrenean monument called the "List of Military Officers": https://igcyr.unibo.it/igcyr084000 It mentions some soldier types: Triakatioi, Tethrippos, Paraibatai, Peltastai, Pezoi, Monippos, and Akontistai. The Triakatioi were probably an elite force of youths. Tethrippos are the four-horses chariots. Paraibatai were probably the fighters from the chariots. Peltastai and Akontistai were javelineers. Pezoi were probably heavy infantrymen. Monippos could be single horse chariots or cavalrymen. As for visual representations, I don't know of any at the moment.
    2 points
  4. Roman Cataphract becomes available if you choose Aurelian for your hero.
    1 point
  5. If we did an image one, I don't think we would have that problem
    1 point
  6. Here is a simple python one that is not yet finished, if anybody wants to look at it/help modmaker1.0.0.zip
    1 point
  7. 1 point
  8. LocalRatings Team Balancer A mod that extends LocalRatings by Mentula with two new buttons on the game-setup screen. One balances teams automatically by rating, the other evaluates the current setup and adds two outcome-based rating systems, Glicko-2 and OpenSkill, alongside the original LocalRatings score. Why outcome-based ratings? The LocalRatings ranking list already shows the problem: even with plenty of replay data, some known-strong players end up rated poorly and some known-weak ones look stronger than they are. Raw in-game statistics don't track skill cleanly. In a 4v4, if three players focus-harass one strong opponent, that player's stats look weak, though they're being targeted because they're strong. A useful comparison: modern chess engines evaluate positions with neural networks far beyond human understanding, yet FIDE still uses Elo, chess.com uses Glicko-1, and lichess uses Glicko-2. Even with perfect game analysis available, the established outcome-based systems remain the standard for tracking player skill over time. Win/loss results across many games carry a signal that in-game metrics miss. 0 A.D. has no chess-engine equivalent, so the case for outcome-based rating is even stronger here. Rating systems Three systems are available, selectable in the LocalRatings settings: Local Ratings (original) - rates players by in-game statistics relative to others in the same match. Works for all game types but inherits the limitations above. Glicko-2 - tracks each player with a rating, a rating deviation (confidence), and a volatility. New players start at 1500 ± 350. The conservative rating used for balancing is rating − 2·deviation, so a fresh player is treated as significantly weaker than someone who has won even one game. OpenSkill - an open-source Bayesian system based on the Bradley-Terry full model. Each player has a mean skill mu and an uncertainty sigma. New players start at mu 1500, sigma 500. The conservative rating is mu - 3·sigma. Glicko-2 and OpenSkill only count locked-teams games with exactly two teams; free-for-all and unlocked-team games are excluded. All other LocalRatings filters (minimum duration, population cap, cheat games, etc.) still apply and can be configured in the LocalRatings settings. Win/loss counts are tracked separately and shown alongside ratings. Balance button When the host presses balance, the mod reads all currently assigned players, looks up their ratings, and finds the partition into two teams that minimizes the difference in conservative rating sums. It then reorders the player slots. The result is posted in chat with rating sums, the rating difference, and a predicted win probability. Note the win probability it calculated with the raw rating and the pairing done with the conservative rating. Non-host players with the mod see a suggest button instead. Pressing it posts the same proposal to chat without changing any settings, so the host can decide whether to apply it. Both buttons have spam protection: pressing them again with the same player constellation does nothing. Slot shuffles or team swaps don't count as a new constellation. Evaluate button Reports on the current team assignment without changing anything: rating sum and conservative sum per team, the rating difference, which team is stronger, predicted win probability, and a full player ranking by rating with win/loss counts. Observers in the lobby appear in the ranking as well. End-of-game rating updates When a game finishes, the rating database updates on every mod user's machine. To avoid multiple mod users posting the same numbers to chat, only one client announces the changes; the others update silently. There's a known chat-line spacing bug that pushes this announcement far below the regular chat area. It can be fixed with this patch Including older replays The engine only exposes replays from the currently installed version, so by default ratings are built from 0.28.0 replays only. To include 0.27.1 replays, copy them into the 0.28.0 folder. They count toward all three rating systems. Linux: copy or move everything from ~/.local/share/0ad/replays/0.27.1/ into ~/.local/share/0ad/replays/0.28.0/ Windows: copy everything from %APPDATA%\0ad\replays\0.27.1\ into %APPDATA%\0ad\replays\0.28.0\ macOS: copy everything from ~/Library/Application Support/0ad/replays/0.27.1/ into ~/Library/Application Support/0ad/replays/0.28.0/ After copying, open the LocalRatings page and press Rebuild list to re-process all replays in date order. This step is needed even when rebuild isn't normally required, because the imported replays are older than your existing ones and the ratings have to be recalculated from the beginning. The imported replays won't be playable as visual replays in 0.28.0, but their metadata is read correctly for rating purposes. Limitations Team rating is inherently harder than 1v1. Individual contribution isn't fully separable from team performance, and the rating systems see each game as a single team win or loss. This is a fundamental constraint of every team rating system, not something specific to this mod. Cold-start: ratings come from the host's local replays only. Since the database is built from whatever the host has played or observed, players who appear in the lobby with no recorded games start unrated, and their conservative rating sits well below average until they accumulate results. A genuinely strong player with only a few recorded losses will likewise look weaker than they are. The automatic team pairing works as a correcting instance: A strong player with low rating will be paired with players with a high rating, resulting in a very strong team and a high likely win. This strong player will then accumulate wins. These unbalanced games might be frustrating. Three things you can do meanwhile: Accept the balance and play. The fastest fix is more games with the automatic pairing. Adjust manually. Use /rate username 1600 to set a player's rating before the match starts. Useful when a rating is obviously off. Seed the database. Download games with known outcomes from replay-pallas and drop them in your replays folder, then rebuild. Pick a balanced selection - similar wins and losses for each player - so you don't accidentally bias the rating in either direction. A player can help to fix their rating by uploading a few decisive games to replay-palas for the hosts to download. Non-decisive games. Most 0 A.D. team games don't end with the entire losing side eliminated, and Glicko-2 / OpenSkill can only update on games where a winner can be determined. The LocalRatings Team Balancer ships with an Auto-Classifier that infers a winner from in-game data (surviving populations, final scores and defeated-count difference) for games that ended without a clean engine verdict. The quality of your ratings therefore depends partly on how well the Auto-Classifier performs on your replay set. Per-game rating changes under your current settings are visible in the replay section. Locked teams. The most sensible option usually would be only evaluate games with locked teams. The problem is when one switches the map e.g. from mainland to balanced-mainland the settings defaults to unlocked teams. In most cases this is harmless as the players just don't change their diplomacy states. Therefore the option Rate unlocked-team games exists. LocalRatings_Team_Balancer.zip
    1 point
  9. I’m bringing more news about the World Rising project! All natural resources have now been created and fully implemented into the game! In addition, the first map has been completed and finalized! Check out some images of the new natural resources that will be part of the game world! The next step will be bringing the new animals to life through animations, as well as creating the second Japan-themed map — there will be 3 Japanese-themed maps in total. The project keeps moving forward step by step, always focused on quality, immersion, visual authenticity, and optimization. More updates coming soon!
    1 point
  10. I saw this the other day and it made me smile. When we named the game, we didn't intend to get to the top of the list... Ha! Congrats on the latest release all, glad to see the project still making forward progress!
    1 point
  11. *AoE player. —You should switch to 0AD bro
    1 point
  12. I wanted CHATGPT TO create a request to create a forum post to ask WFG to hire an (unpaid) intern to fix bugs using cursor, it created a Job posting, I did not read it because of some reasons, the original content I wanted it to generate is this Hello WFG team, I would like to suggest creating an internship or contributor program for fixing bugs in 0 A.D. Many developers, students, and open-source enthusiasts are willing to contribute, especially now that AI-assisted tools like Cursor can help people understand and navigate large codebases faster. Even unpaid internship-style positions or mentorship-based contributor roles could help reduce the bug backlog and attract new long-term contributors to the project. Possible ideas: “Bug Fix Intern” or “Junior Contributor” roles Mentored first-time contributors Curated beginner-friendly issues Recognition on contributor pages Optional rewards like a Cursor subscription or community perks 0 A.D. is a great open-source RTS project, and this could help grow the contributor community while improving overall stability and development speed. Thanks for considering it.
    0 points
×
×
  • Create New...