Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 2025-04-21 in all areas

  1. A bunch of interesting issues closed on gitea, showing all the work behind the curtain: Stuttering and low FPS with Alpha 27 #7589 https://gitea.wildfiregames.com/0ad/0ad/issues/7589 Add workaround to turn off nursery size heuristic #7736 https://gitea.wildfiregames.com/0ad/0ad/pulls/7736 Incredible investigation by @Langbart: https://gitea.wildfiregames.com/0ad/0ad/issues/7714 I'm sharing this just to give a little visibility to the work and problem-solving done by the team.
    8 points
  2. This simple mod gives all heroes a star icon on the minimap, so that you will never loose track of your hero! It also has a positive side effect of showing if your farms are getting raided by an enemy hero. antiherorush.zip
    3 points
  3. Hi ! I am considering introducing Lua (luajit) as a second modding language, alongside JavaScript. Here’s why: performance: Lua is fast, especially for CPU-heavy mods (AI, simulations, etc.), which is critical for large-scale RTS battles. simplicity: Lua’s lightweight syntax and C/C++ integration make it easier to expose engine features directly to modders. ecosystem: Lua is widely used in gaming (e.g., World of Warcraft, Roblox) and has robust tooling for debugging and profiling. sandboxing: Lua’s simplicity allows for tighter security controls, reducing risks of crashes or exploits. this isn’t a replacement for JavaScript. javascript mods will continue to work! The goal is to add options, not remove them. Lua could become the preferred language for performance-critical mods, while JS remains great for UI/scripted events. what this means for modders: gradual rollout: Lua support would be phased in, starting with experimental access to core APIs. tooling: we'd provide Lua-specific documentation, debuggers, and compatibility layers for JS ↔ Lua interop. points for discussion: are there existing JS workflows we would struggle to replicate in Lua? is there any other integrations like this one done in the past or abandoned we have notice of, can we learn from it ? where to start, is there any tips for a unexperienced 0ad "core" dev like me or others wanting to help that we can start learning from ? other topics of discussion ... please feel free to add and help ?
    2 points
  4. 2 points
  5. There is currently no distinction between your own hero and enemy hero in terms of icon and colour. All visible heroes are shown as a yellow star.
    1 point
  6. Is JavaScript really the bottleneck? Are there specific cases where JavaScript is the definite cause of a lack of performance in a mod?
    1 point
  7. In my opinion it depends on your civ. 1. If you have an archer civ, you can make a sufficient amount of archers. 2. If you have a slinger civ, camels have better range, but currently it is incredibly hard to micro the camels well enough to avoid losses. Ofc you need a sufficient amount that is superior to the camels in pure fire power. 3. If you have a skirmisher civ, i recommend to first distract the camels with your infatry, while ur women make a tower, while the camels retreat from your infantry. Because towers are weak, i would still recommend to go for skirmisher cav, if you have at least some hunt available. If you make cavs later than your opponent, it will be less hurtfull to your economy compared to your opponents investment, especially if you have fields already. When chasing with skirm cav, it can help to fully catch up in distance, before you give an attack order, so the cavs dont stop to shoot. While u might not kill all, also your enemy wont do any damage, with an army more costly than the one u need to chase the camels. 4. If you have a civ that has melee cav availabe, just spam melee cav. The melee cav will win a fight, even if severy outnumbered ( with decent micro) Ofc Ptolemies are an economic powerhouse, and they can come back from setbacks, with some training i believe, that camel rush isnt one of their best options currently.
    1 point
  8. There is some JavaScript logic going on in gui and simulation/ components folders. They work by calling exposed JS functions in the engine, which are defined in a script interface.cpp in the engine source code. To implement lua, we probably need to change the definitions in scripting.cpp to adapt for lua calls. Then the mods side js needs to be replaced with lua language. A solution to not overwite completely is to add a parallel list of exposed lua functions at the end of the current scripting.cpp file then call them using lua scripts in the mod folder where necessary
    1 point
  9. TG. If it's a 1v1, I would just grab all and push. My superior inf boom will destroy them. But in a TG, especially when I have a weaker ally, it's really difficult I will try this
    1 point
  10. Stay compact. The outer wood line should be the only one direction to stretch for the first minutes Stay busy eco wise: If you need to abandon the outer wood line, use the small wood patch at the cc or gather at the mines although you don't need it atm. Try to intersect / sandwich the camels. Chase with inf while cav come from behind small towers are weak, expensive but sturdy. They need no apm, so you can focus more on eco. Your ally should sponsor them to get you out of this situation. But it's more a solution a weaker player can use to resist a better player. If you boomed with too many female it can be already too late. Some strategic decisions made in fow can already decide the game. I'd say: balanced pop > high cav; high cav > high fem; high fem > balanced pop (if not outplayed by skill) Some civs are just weaker than others
    1 point
  11. Did you install git-lfs and run: git lfs pull
    1 point
  12. Its been talked about before, but citizen soldiers are quite fundamental to 0ad. There's a big discussion here: Citizen soldiers allow for big battles that distinguish 0ad from aoe2, and they are quite historically accurate which is something 0ad strives to achieve. That being said, they contribute to snowballing, and mainly contribute to the "booming = turtling" phenomenon. I would like to not abandon citizen soldiers entirely, as it makes 0ad unique, but we can increase the importance of non-soldier gatherers by changing gather rates and/or by introducing a new "laborer" unit.
    1 point
  13. It's not an abandoned project, i'll come around to it but it's not a focus atm. Ty for the interest
    1 point
  14. Basically the huge majority should be changed, the current names for the Celtic units are mostly based on modern Celtic languages (for example modern Welsh). I made a list of names from my various proposals based on ancient Gaulish or old Celtic languages. Here a summary: Cingetos. Designate a member of the warrior class, litt. "those-who-walk-in-front". Catucos. Meaning combatant, from the root Catu-, fight. Batoros. Meaning "who-hit-hard" or "who-knocks", a fighter. Ambactos. Meaning "who-is-around", a satellite companion, a client or a servant. Not necessarily a low status since the word evolved in ambassador. Eporedos. Meaning a cavalryman or a knight. High-member of the warrior-class. Epossos. Meaning a cavalryman or a knight. High-member of the warrior-class. Marcacos. Meaning a cavalryman. The word Marcos is a synonym of Epos for the horse but could be used for a different type. Bagauda. Meaning combatant or bellicose, associated with rural revolts and brigands during the Roman Empire. Selgos. Meaning hunter. Telmiuicos. Meaning slinger from a reconstruction based on Telmi- for the sling and Uicos for victorious, which gives litt. "victorious-by-the-sling". Talmoris. From the Old Breton Talmorion equivalent of the Latin funditoribus, a dative plural word for Slinger. Bariogaisatos. Meaning "furious spearman", from the word Bario- (angry, furor) and the word Gaisa- (spear). Adretos. Meaning "who-runs-fast", an attacker. Comaterecos. Meaning patrician or senator. Agrocuna. Meaning war-dog or battle-dog. From Agro- (battle) in Gaulish and Cuna (Dog) in Primitive Irish. Epouanos. Meaning litt. "horse-killer". Soliduros. Attested word for the bodyguard of the Sotiates' King. Adscoros. Meaning attendant or retainer. Uerouicos. Meaning victorious warrior, great fighter, litt. "very-victorious". Uassos. Meaning servant or serf. Talanos. Meaning support or supportive person. Excingos. A attacker or a warrior, litt. "who-get-out-to-fight". Namantobogios. Meaning "smasher of enemies". Essedon. Attested word for the chariot in general. Used in the context of war chariot by the Romans. Argos. Meaning champion or noble. Caur. Old Irish for champion, same logic than in the Gaulish Cauaros, another word for champion. Changelog for the current rosters. [file name] ; [specific name i.e. native language] ; [generic name i.e. English equivalent in game] ; [literal meaning for future reference] ; [used language] brit_catafalque.xml ; Cassiuellaunos ; Catafalque ; Passionated Leader ; Gaulish brit_cavalry_javelinist_b.xml ; Marcacos ; Raiding Cavalry ; Horseman ; Gaulish brit_cavalry_swordsman_b.xml ; Eporedos ; Celtic Cavalry ; Cavalryman ; Gaulish brit_champion_cavalry.xml ; Essedon ; Celtic Chariot ; Chariot ; Gaulish brit_champion_infantry.xml ; Argos ; Celtic Champion ; Champion ; Gaulish brit_hero_boudicca.xml ; Boudica ; Hero Charioteer ; Victorious ; Gaulish brit_hero_caratacos.xml ; Caratacos ; Hero Swordsman ; Beloved ; Gaulish brit_hero_cunobelin.xml ; Cunobelinos ; Hero Cavalry Swordsman ; Strong as a Dog ; Gaulish brit_infantry_javelinist_b.xml ; Adretos ; Skirmisher ; Who-runs-fast ; Gaulish brit_infantry_slinger_b.xml ; Talmoris ; Celtic Slinger ; Slinger ; Old Breton brit_infantry_spearman_b.xml ; Catucos ; Celtic Spearman ; Combatant ; Gaulish brit_ship_fishing.xml ; Longos ; Fishing Boat ; Long Boat ; Gaulish brit_ship_merchant.xml ; Nauson ; Merchantman ; Ship ; Gaulish brit_ship_trireme.xml ; Pontos ; Medium Warship ; Ship ; Gaulish brit_siege_ram.xml ; Molton ; Battering Ram ; Ram ; Gaulish brit_support_female_citizen.xml ; Bena ; Celtic Woman ; Woman ; Gaulish brit_support_healer_b.xml ; Druid ; Healer ; Wise ; Gaulish brit_support_trader.xml ; Uogition ; Trader ; Carrier ; Gaulish brit_war_dog_b.xml ; Agrocuna ; War Dog ; Battle Dog ; Archaic Irish gaul_catafalque.xml ; Ambiorix ; Catafalque ; King in All Directions ; Gaulish gaul_cavalry_javelinist_b.xml ; Marcacos ; Raiding Cavalry ; Horseman ; Gaulish gaul_cavalry_swordsman_b.xml ; Eporedos ; Celtic Cavalry ; Cavalryman ; Gaulish gaul_champion_cavalry.xml ; Uerouicos ; Gallic Noble Cavalry ; Victorious Warrior ; Gaulish gaul_champion_fanatic.xml ; Bariogaisatos ; Naked Fanatic ; Furious Spearman ; Gaulish gaul_champion_infantry.xml ; Soliduros ; Celtic Champion ; Champion ; Gaulish gaul_hero_brennus.xml ; Brennos ; Hero Swordsman ; Commander ; Gaulish gaul_hero_vercingetorix.xml ; Uercingetorix ; Hero Cavalry Swordsman ; King of the Great Warriors ; Gaulish gaul_hero_viridomarus.xml ; Britomaros ; Hero Spearman ; With Great Discernment ; Gaulish gaul_infantry_javelinist_b.xml ; Adretos ; Skirmisher ; Who-runs-fast ; Gaulish gaul_infantry_slinger_b.xml ; Talmoris ; Celtic Slinger ; Slinger ; Old Breton gaul_infantry_spearman_b.xml ; Catucos ; Celtic Spearman ; Combatant ; Gaulish gaul_ship_fishing.xml ; Longos ; Fishing Boat ; Boat ; Gaulish gaul_ship_merchant.xml ; Nauson ; Merchantman ; Ship ; Gaulish gaul_ship_trireme.xml ; Pontos ; Medium Warship ; Ship ; Gaulish gaul_siege_ram.xml ; Molton ; Battering Ram ; Ram ; Gaulish gaul_support_female_citizen.xml ; Bena ; Celtic Woman ; Woman ; Gaulish gaul_support_healer_b.xml ; Druid ; Healer ; Wise ; Gaulish gaul_support_trader.xml ; Uogition ; Trader ; Carrier ; Gaulish
    1 point
×
×
  • Create New...