Jump to content


Community Members
  • Posts

  • Joined

Posts posted by smiley

  1. 18 hours ago, Stan` said:

    Still not convinced we actually need LFS or that the benefits outweigh the constraints. At the end of the day you'll still have to download binaries. Less of course, but still

    It helps with local repository size as blobs are not tracked with all their history. Its not an issue if you shallow clone (you probably should, if you have to blame that far back, just use the web interface).

    Build output should not be committed, CI artifacts would do. I am not sure whats the solution for people who want to be up to date with every change while also not downloading all those unchanged DLLs. Perhaps,https://wildfiregames.com/forum/topic/65460-0-ads-focus-on-balance-has-crippled-its-design/?do=findComment&comment=470537 is the solution. Such users are not really interested in the history usually, just need up-to-date binaries.

  2. 7 minutes ago, vladislavbelov said:

    Are there some numbers? (Just wondering, I've met various approaches)

    No concrete numbers as most game devs are proprietary, but there are small scale surveys done on gamedev forums and those two are almost always at the top (Perforce and its not even close).

    9 minutes ago, vladislavbelov said:

    Because they are commercial and companies might pay for their integration.

    Perhaps. I think Plastic paid Unity though. But from anecdotal evidence I have heard, Perforce does a better job with large binaries.

  3. On 20/12/2021 at 4:40 AM, crazyking said:

    I'm not sure why you mentioned Plastic and Perforce though, wouldn't Github/Lab be better?

    <offtopic> Game development is rarely done on Git. Plastic and Perforce are the dominant two systems. IIRC, even SVN is more popular than Git. Most major third party engines don't even have integrated support for Git. The biggest difference is that 0AD uses a dedicated engine which makes either option undesirable as there are a lot of code too. </offtopic>

  4. There was also an idea floating around sometime on this forum to allow for civ branching with phases. You start as Mycenaean, and get more specific with phases or something. I believe the actual example was the Roman Kingdom, Roman Republic and the Roman Empire. The problem is that you can't easily get balanced linear progression for all civs, but maybe that's not a problem.

    • Like 2
  5. Quote

    0 A.D. is a slice in time. Imagine if all the ancient worlds (at the peak of their civilisations) were pitted one against another. We are plucking major civilisations out of their linear timeframe and placing them in the slice of time, which is 0 A.D.

    The theme isn't rome-centric. The main consideration is being notable during the Bronze Age I guess. Narrowing that down to empires with roads that led to Rome cuts out a whole portion of ancient history.

    Disclaimer, I am not literally using the Rome metaphor. The point being that the current "theme" is the classic sets of civilizations around the Mediterranean and their outreach.

    • Like 2
  6. 34 minutes ago, LetswaveaBook said:

    Currently the balancing team is not providing a lot of results in the form of patches.

    This is partially because balancing changes usually die on phabricator if it's not already accepted here. However, most balancing changes proposed here or as patches are subjective opinions. If you provide objective values with the changes, the likelihood of it being committed goes up exponentially.

    Rather than saying slinger attack rate is too high, maybe provide a chart of DPS or something so it's obvious that slingers attack rate is indeed too high. If I was committing stuff, the latter would give me a whole lot more confidence to actually make the change. If something is supposedly overpowered, there would be numbers to quantify that. It's a whole lot more work, but we only need so much advisers, we need more contributors.

    For the more savvy, run nonvisual Petra tests on the same seed and match up civs maybe. Or hell, integrate such tests on CI too if they offer meaningful insights.

    As is, forum balance proposals are not doing anyone much good as they don't go anywhere far.

    • Like 3
    • Thanks 1
  7. Before Alpha 23, there was weeks of testing over multiplayer with some of the best players of the time along with devs. There were 8 players who patched the game in between matches, so its entirely reasonable to assume that continuous play testing is very possible. Before Alpha 22, when Kushite was added, the same was also true for reference. I assume its still a thing because most of the same players still post on this forum and I assume they are around on the lobby too. Although, a dev who was also an active member of the multiplayer community isn't there now. He was the one who organized the svn matches at the time.

    There are no gameplay developers on the team. There are a bunch of programmers who quite frankly don't have to tweak attack stats. Maybe, that's the solution here. Get someone whose task is to actually conceive new gameplay elements and tweak those stats. I am fairly certain that role has been vacated fairly recently relative to the project's lifetime. The same person should also optimally be an active player online who can organize svn matches by typing in the chat "svn teamgame in 10".

    • Thanks 1
  8. Making a launcher, either in the style of steam or old school WoW would solve some of the problems preventing quick patching and fixes. Currently, updating regardless of how small or big it is, is copy and replace. However, if there are two templates changed, thats > 99% unnecessary data. Also, multiple version management may also be a good thing.

    Maybe someone reading this might want to give that a go because creating a barebones launcher with those sets of features is extremely simple. Or perhaps create a ticket and tag simple. In fact, it literally requires no changes to 0AD. Just make a simple GUI in X language that can download binaries and put them in different namespaces. `play0ad/v24/` and `play0ad/v25/` or something. Launch with writable root to prevent cache mixing I guess. If you want to make it fancy, write a content map and you could have an update process that downloads only change files. If you want even fancier, maybe consider binary diffing too.

    I am just pointing out the Minecraft launcher, so maybe look over there if thats something desirable.

    • Like 2
    • Thanks 1
  9. On 17/12/2021 at 5:06 PM, Yekaterina said:

    The most complicated things I have done are:

    Minecraft redstone mechanics allow for digital circuits. You can build all logic gates and IIRC all kinds of flip-flops. Theoretically, you could build a CPU and a GPU that can play Minecraft within Minecraft. Maybe at 1 or so frame per day. Also, might need to remove the world border, but its possible on paper.

    I have personally built a 4-bit ALU in game. This would be the calculator Vladislav mentioned.

    This is already too much analysis for a block game.

  10. (in professional video game development, binary assets are committed along with scripts to the same repository. It's standard procedure and the tools are specifically designed to handle that. Plastic or Perforce are pretty expensive though. There is a consideration that most professional video games are also not as code heavy as they don't usually develop engines.)

    • Like 1
  11. 19 hours ago, bb_ said:

    How does git-lfs work with the versioning history of binaries?

    Updating is as far as I know, just drop and replace with no binary diffs present as git just versions the "pointer" to it.

    I am fairly certain GitHub already charges for LFS if it exceeds a limit, so that's something to consider as well when binary files has long histories as I would assume all copies are kept.

    • Like 1
  12. 10 hours ago, Freagarach said:

    If a team tried making different changes to overlapping code, they would know that trunk based development, especially the model this article suggests, which is pushing to main often won't do. Instead of ugly merge graphs, you get a ugly history. Large changes take weeks and months, not 3 or 2 days. Try keeping track of all that without using branches.

    When I wrote patches here. I had to clutter the whole workspace with multiple patch files, and svn revert, patch apply, repeat. good luck if someone wants to run an svn match while you were working on something. Instead of branches, everyone had a dozen copies which is clearly not better. This is a strong con of svn in my opinion.

    Also being able to rewrite history is underrated. Along with git stash.

    Hosting providers are not relevant to this discussion, you change remotes and push to another place if "Company Hosting Git Repo" shut downs.

    • Like 2
    • Thanks 2
  13. 20 hours ago, cl2488 said:

    I. Finance
    a. Can you donate money (e.g. $20, $50, etc) to the tournament prize money? 
    b. Can you help us to find sponsors?
    c. Do you know how to efficiently collect money from donators and send prize money to the players?

    If you look at the published financial reports, you would notice that with current expenses, there is no shortage of money here for the foreseeable future (partly because there isn't enough for any big expenditures). However, $1000 spent on ticket bounties may fetch more return on investment that on a tournament. $1000 spent on freelancers to create art would probably fetch better ROI. If I recall correctly, it has been sitting there for so long that inflation actually might have eaten a non-negligible amount already probably.

    • Like 1
  14. 3 hours ago, Lion.Kanzen said:

    there are also several battles where they drowned, as in Trebia and Trastimeno, or Maxentius on River Tiber.

    AoE2 Tueton Campaign taught me that Frederick Barbarossa also drowned due to his armour. But medieval full body armor maybe a lot more heavier than bronze age armor,  but I literally know nothing about that.

  15. 11 hours ago, Gurken Khan said:

    Otherwise I don't really see them do it with their armors and weapons.

    How heavy were these armour? Weapons aren't really an issue. Then again, we swim with fins, which makes carrying spears and harpoons a lot easier.

    Based on anecdotal evidence, it's pretty plausible. Maybe biased viewpoint because everyone here knows how to swim by the time they are 6 years old.

  16. 8 hours ago, Loki1950 said:

    But all that is not possible till we can allow units to walk/see the bridge mesh also tied to the pathfinder not seeing meshes either.

    Enjoy the Choice :)

    It gets worse. The pathfinder doesn't see the 3rd dimension, which presents quite a big problem when bridges involve having terrain that cannot be represented as planes. (see shallow water river and bridge above that for simple case).

    I guess this can be workaround by having alternate grids. But that sounds like something you should not be doing.

    A* itself doesn't care about grids or planes. It traverses weighted graphs. So, the proper solution would probably be implementing full 3D pathfinding. If properly done, this would even allow having non-planar terrain, such as caves, overhanging cliffs and whatnot.

    • Like 1
    • Thanks 1
  17. The age franchises has a habit of making it seem like things are good looking by making them super bright and cartoony. They did it with AoE3 and now with 4 as well.

    What I really want is for BHG to make a new version of RoN, but that's kinda hard when BHG hasn't existed for years and the IP is back in the hands of Microsoft. Then again, maybe don't touch it again and @#&#036;% it up.

    • Like 1
  18. 1 hour ago, dave_k said:

    here is my attempt at listing additional features that AoE 4 has possibly copied from 0 A.D.

    I honestly don't think so considering that 0AD has not really brought much groundbreaking innovation into the RTS genre. Aside from citizen soldiers there is a parallel to be found in prior RTS games for almost everything.

    Also, Holy Roman Empire has nothing to do with Romans. They just called themselves that to sound cool.

    • Like 1
  • Create New...