Jump to content

sanderd17

WFG Retired
  • Posts

    2.225
  • Joined

  • Last visited

  • Days Won

    77

Posts posted by sanderd17

  1. As far as I understand, a flow field is rather a vector field pointing to the cheapest local steering direction relative to the goal (or is that what you meant with routing tree?). So units are still free to choose the direction in which they steer, but diverting from the vector field direction will raise the movement cost. I would think you combine it with a dynamic cost map and coarse planning/replanning, so that units choose a different coarse path if the prior one is blocked. The fine movement will then be directed by the flow field. I guess you will get problems with oscillating paths, but it should work with formations etc.

    What do you mean with oscilating paths? Units moving left-right-left-right ... ? I think that can be solved by smoothing it out. Don't go to the exact pixel with the least cost, but look 3-4 pixels ahead. That's only a very small calculation, and if the resolution of the flow field is big enough (so that every obstacle is bigger than 4 pixels) it should not cause routing problems.

    For the formations, you're right. You take one unit to follow the flow field, and the others will try to stay in a grid relative to that each other. Unless there's an impassable obstacle, in which case you have to break up the formation, and use regular pathfinding to get back in formation after the obstacle.

    The units going through each other could also be solved with dynamic flowfields.

    So, what's needed to implement this?

    1. a static cost field per movement type (which only includes terrain and relief)

    2. a dynamic cost field (only depending on non-movable entities)

    The dynamic cost field is updated every time a tree is cut, or a house is build. When you combine the two, you have the total cost field. The cost field should directly influence the moving speed. Btw, it would be nice if you could draw that static cost field in Atlas, so you can make a swap that's slow to cross etc. Now they just walk through a swamp as it's solid ground.

    After that, per command given to a unit, you need

    1. Static flow field, this depends on the destination and the total cost field for that unit

    2. dynamic additions to that flow field: for every movable unit, the ground under it becomes impassable until he leaves. As this can while travelling, this can't be included in the general flow field. Note that big units can have a "keep away" aura. If you have a "keep away" aura around a unit, other units moving won't go very near to them. This is good for sieges, so they can always follow their optimal path, and other units will go around them.

    After sleeping a night on it, I like it more. I think it should work with one big calculation per movement, and only local updates to avoid other moving units.

  2. Flowfields are just a stored routing tree. And you can store it because you have the same destination point for a bunch of units. So it will bring a higher performance to the game, but I do see some problems.

    Since the flowfield is used by multiple units, the performance gain is because it doesn't have to be recalculated. So when you work with big units (think ships), if you want them to not go through each other, you need to edit (or re-calculate) the flow field. It looks like in that game, they allow units to squeeze together, which makes perfect sense for small units, but not for big ones.

    Also, I don't immediately see this working with formations. It looks like that game mentioned will not have formations, so units more freely to the same point. While in 0AD, units will need to stick to a certain grid, but also break apart on the right times.

    It would be great if there could be better cost fields already. A cost field where a forest is a really high cost for a siege, and a moderate cost for infantry. And a flat surface has no cost for any unit. With a good cost field, recalculations of the route should be fewer (as you don't have a lot of chance to bump into something), and the paths would look more logical.

  3. the 'dangerous building site' problem is indded a very obvious one, but also the 'dangerous path to a safe location' is unknown. Sometimes, a location can be reached via 2 paths, and the AI makes the wrong choice.

    Maybe some other thing, do you plan to make the easy modes more fun? Easy modes should also raid a bit more at the start of the game.

    • Like 1
  4. regarding cliffs, why not allow a combination between an actor and an entity? Like an actor where you can't walk through, or an entity with infinite health or armour.

    I think the last one is the easiest (as you're re-designing the health system anyway), but on the other hand, cliffs probably shouldn't be selectable in game.

    Btw, that not-walk-through actor could also be used for other eye-candy stuff.

  5. European English is normally more difficult to understand. This is natural.

    The smaller the group of people who learned the language, the more difficult it is. Take our dialect. Nobody learns to speak it, so it doesn't evolve very fast, and they don't understand me when I speak my dialect if I go 100km from my home place. On the other hand, African (which is also closely connected to Dutch) is very easy to learn, as people from different tribes in South Africa all needed to learn that language. So the pronunciation of different words is more uniform.

    So unless it can be localised, American English should be used, as it has the most uniform sound, and most people can understand it easily.

  6. sanderd17: might be fixed actually, defense and attack were not mixing together so well because of an issue.

    It's the SVN from March 16th.

    Other issue I discovered, it doesn't really see Gaia as an opponent. When there are Gaia warriors in the map, Aegis just walks past them. Only units that get hit react on Gaia units. You can see the screenshots of the Azure coast map. First, female citizens were just walking past those Gaia units. Dying one after the other. And when I changed the gaia units into units of my own. Aegis suddenly send an army towards it.

    I also have a feeling that Aegis doesn't react on unassigned units.

    In both cases. Aegis should try to avoid it when possible, or attack it with an army when you really need to pass through.

    In the images, you see the difference between those units as Gaia and those units as opponents.

    2unwrpd.jpg23u6ebo.jpg

  7. The fact it didn't attack the siege rams is more surprising. Perhaps it was busy elsewhere, there might be weird reactions in those cases.

    The Iberian player just came out of a fight. I think he chased the remaining Roman units back to their own lands, and got killed there, because there was no Iberian cavalry left at all, but there were also no Roman units on the Iberian ground, apart from those sieges.

    The citizen soldiers were all busy with the economy.

    After that, the Iberian started to build his army again. As I said, he already got to 15 cavalry units, but they were all idle (waiting for a complete army). I think the Iberian player didn't react because the sieges were already on Iberian ground before the cavalry units were created.

    So the Roman sieges were happily destroying Iberian houses, without protection and without being attacked.

  8. I watched a battle between Romans and Iberians (in hard mode). The siege rams still aren't used optimally.

    After a battle on Iberian grounds, some Roman siege rams were still in tact (because they didn't attack the Iberian units, so never got a reaction). Those Roman siege rams started demolishing every house, while the Iberian player was just developing his army again. He had already 15 idle cavalry units, and still he didn't attack the siege rams.

    In short. Sieges that aren't surrounded by an army should always be attacked. No matter how big your own army currently is, as your units can't take damage from siege rams.

    The other thing, how do sieges select the building they attack? They should attack the most vital parts first (fortresses, CCs, Defence towers, ...) but they usually start with the houses. If you demolish a CC, the houses will follow quickly, and if you demolish the defence structures, you have all time to demolish the houses.

    Also, what's with the barracks? The Iberian player build 6 barracks, right next to each other. There is no way he can use those barracks simultaneously, as you'll run out of resources too fast.

    I must say, great progress with the AI. I've never seen it playing this good.

    Oh yeah, and the Romans are seriously overpowered. The Iberian had a better economy score, but the Romans were a lot better when it came to military. But that has nothing to do with the AI.

  9. Wouldn't the best way to handle this adaptive AI be to make it a stand alone web service.?

    Then give it a chance to log in as a regular player and interface with the game the way other remote clients do. Then it could get better and better as people kept playing it. Replay wouldn't be a problem since the host game would just see it as another player. I know this would be a lot of work and not much help to the app, but it could be a cool thing to have.

    Hosting an intro cinematic isn't favoured because it's considered as in-game content. I think the AI is more important than the intro cinematic. So online content certainly shouldn't be the only source.

    The other nice thing about a learning AI is that the level of the AI grows organically together with the level of the player. So every game is challenging again. This won't be achieved when using a central database.

    And for competition (if this is really a problem). If one plays in a tournament, the organisation of the tournament could host the game with the AI. A second option is that for tournaments, only static AIs could be used (like the current Aegis and qBot). A third option is to look into signing packages, and only allow packages signed with the 0AD key on tournaments. So there are enough possibilities.

  10. I'm always for outsourcing. I know you aren't that much, but here's what I would think is the easiest:

    Make a YouTube or Vimeo player, and pick a random video from a certain playlist to play. It's certainly allowed by YouTube, I haven't completely read Vimeos ToS yet.

    The advantages are:

    • Fans can make their own videos and ask the 0AD team to add them to the list if they are good enough. You aren't restricted to one video.
    • Package size isn't enlarged a lot (only extra videoplayer code)
    • Users can see a lot of different videos if they want
    • It doesn't use the hard drive (which is welcome when loading the game)
    • Videos can be updated without updating the game

    The disadvantages are:

    • You depend on a third party service
    • The user needs a (good) internet connection
    • The quality is quite low (although it improved a lot in the recent years)

  11. Well ... Belgium is very densely populated in general, so we don't actually have any middle of nowheres,

    They say there's only a single place in Belgium where the view isn't obscured by trees, and where you also can't see any buildings. ;)

    at least not in the northern half (where I live), but since I live in a little village that has only one supermarket, a few bakeries, restaurants and pubs. In my Flemish dialect we would call such a place "''n boeren'ol" (which could be translated as 'a farmer's @#$%' but actually means 'an empty space where farmers live' or 'middle of nowhere' (but "Boerenhol" is also a placename). Where I live was mostly swamp as well.

    One supermarket, 3 bakeries, a handful of pubs but not a single butcher in my village. I'd also call it a Boeregat. We do have a lot of banks though, for some strange reason. On the other hand, the cities are so close to each other that everyone is near a city (for me, the closest city center is at 5km).

  12. It's a lot quicker to move your hand from one area of the keyboard to another than to move the mouse in my experience, but I guess it varies from person to person :) (I'm left handed, so for me the arrow keys are more relevant, but still, the distance between e.g. the arrow keys and the zxcvb keys is still the same regardless of which direction you go ;) )

    I like to have most common shortcuts on the left hand, and use my right hand to operate the mouse. So I move with WASD, and for the group selections, 1234 are my most important keys. I don't use zxcvb that often, but maybe it's because I don't play enough games.

    So if we're not discriminating the left-handed people too much, I'd prefer it stays that way.

    Btw, how are the keys being read? In Belgium and France, an AZERTY keyboard is quite common, but I switched to QWERTY a few years ago. The problem with AZERTY is the the keys A,Z,Q and W are all swapped around. In AZERTY, it should be ZQSD instead of WASD. If the keys are being read by their position code (so positions 18,31,32 and 33), then there's no problem.

    Most AZERTY users know that, when games talk about WASD, they should try ZQSD.

    kybdt1.jpg

  13. Where I live, it was mostly swamp.

    The only Celtic place quite near me is the Kemmelberg, where the celts probably had a power centre. The hill was quite new in that period though. A few thousand years before, Flanders was largely flooded, and the Kemmelberg comes from a dune.

    But in the timeframe of 0AD, the Kemmelberg was believed to be a fortress of Celtic aristocrats, complete with dikes, dirt walls, and on some places stone and wood reinforcements. But as it was all dirt, there's not much left from it. And people just guess what has been there.

    In any way, the Kemmelberg didn't become a city. Our medieval cities were mostly founded near rivers, and not on hills like the Celts did (which can also be a result of the changing water level).

  14. one thing I would like: numpad for number of units selection.

    Say you have 10 skirmishers, it's easy to select them all (with the various ui elements). But if you want 5 to work on one building, and 5 to garisson in a tower, it's hard to do.

    If you could just hit '5' on your numpad to select 5 units out of your current selection, it could become a lot faster.

    For the stop key, why not "H" (from halt)? Germans will love it ;)

  15. With AoE2 you could have multiple players controlling the same units. This allows what you suggest but with no forced separation of roles. It seems fairly likely that we will include this in 0 A.D. because it is quite a neat feature and is very easy to implement. Separating the military from the economic sounds like quite a lot more work and seems like quite a niche feature so is much less likely. It sounds interesting though.

    It is easy to implement the controlling of allied units I expect (as you can already do it in developer mode), but there are some design choices you must make.

    Like, do you share all resources? That means, if you start from both teams, you have a high population cap as a start, as you have two CC's. You easily reach 5 buildings with two players, and you can gather all stuff very fast. Or does each ally keep its own resources, but just has the ability to control units of the other? So you have to build the 5 buildings twice before both allies go to town phase. Resource sharing isn't really needed since you can tribute.

    Another interesting thing: have you tried putting units of different factions under the control of the same player in mapmaker? When you select them to build something, the UI gets cluttered because you have a another building with the same function for each faction. Can a player only build buildings of it's own faction (may seem silly if a cartagian controlled by a celt can't build its cartagian dock)? Or do allied factions in such a game have to be equal?

  16. Oh, you discovered the siege tower thing? ;) And it only counts as one garrison slot... you could conceivably load a ship up with 20 towers, each filled with 20 units....

    This actually came up on IRC today, and the verdict was it was overlooked and elephants should be transportable by ship.

    I thought it was a known problem. As naval warfare isn't really completed yet. Some factions also are very bad at naval warfare. Like you can't transport any Iberian sieges, because they only have a merchant ship.

    Anyway, naval civ balance will probably only be useful when naval warfare is at a better level.

  17. Anyway, I'm glad to hear that the game will be moddable. But if you add this directly into the Atlas editor, there will be much more community input. Because otherwise, we gotta download a mod.

    What's the difference? Maps you make in Atlas also don't arrive in the main game. Units you mod yourself don't arrive in the main game ... You all have to spread it yourself, or ask the designers if they want to get it in the main game.

    Btw, the game "WILL" not be moddable, the game "IS" moddable. The thing you play now is the public mod, the default mod of 0AD part 1.

    Also, please stick with the subject. We know you have problems with your delete key, you already made another post for it.

  18. A big disadvantage when it comes to elephants is with naval maps. You can't transport elephants by ship. I don't know if this is a feature or a bug, but to me, it sounds more reasonable to be able to transport elephants by ship than Macedonian siege towers.

  19. The infinite scroll issue sounds bad. It helps a lot with these things if you can find a set of steps to reproduce the issue. That way a developer can follow your steps and see the infinite scrolling happen which makes it a lot easier to find the problem in the code and fix it.

    I think the problem with the delete button is worse than the infinite scrolling (from a usability point of view). How can you edit a map if you need to get everything right from the first time? It's like going back to the typewriter age.

    I never had problems with the delete button though. @OP, are you sure you use the right cursor (the 4-way arrow cursor)?

  20. how do you win the game? If you can stay alive for an hour or something?This doesn't seem too hard with the currect AI, as they don't rally search for opponents, and they're bad at taking down buildings. Just watch how a game of AI players turn out. Most of the time, one AI is clearly lost, but the other doesn't bother to finish it.

    • Like 1
×
×
  • Create New...