Jump to content

Stan`

0 A.D. Project Leader
  • Posts

    17.904
  • Joined

  • Last visited

  • Days Won

    575

Everything posted by Stan`

  1. Campaign hasn't been implemented yet. It needs thorough research and a few features are still missing in the game. You can play competitive games online using the Multiplayer lobby. There is a ranking system there.
  2. Hey there, Welcome to the forums and glad you like the game ! Usually you can reduce the lag by reducing the map size and the population cap. Also you should host the game on the fastest of the computers The project is going alright. Stuff is getting down behind the scenes but you are right that we often don't communicate enough on that. We'd rather invest our time working on the game than doing communication. The only thing we need is time as all of us are doing it on our free time and currently no one is getting paid to do jt. Another team is working on their own on the game totally separated from us. So actually it might be twice the usual productivity in the end
  3. Can you create a differential to fix that ? This way we can add inline comments and review the changes more easily If you are using svn svn diff -x -U5000 > file.diff or git git diff -U5000 > file.diff Then upload the file there https://code.wildfiregames.com/differential/diff/create/
  4. I guess it has to do with media coverage. We are not that present on social media, events... That's also part of who we are, we do not do aggressive marketing. I know a few StarCraft Players that can't play the game because the Hotkeys put them off. Also because I haven't made a StarCraft Like (three factions, futuristic, space, two resources) mod.
  5. Hey Tom, most of us live in Europe, so GMT is a good timezone. I'm not sure I've seen you on #0ad-dev though. Let me know if you need help getting started.
  6. Thanks for the report. @Itms fixed it just now.
  7. Hey thanks for the fix. Can you submit it on code.wildfiregames.com ? @Itms
  8. Mm that sounds like a bug can you report it on our GitHub ?
  9. Yeah it was said that JS could handle 230 calls in a turn LUA 550 and c++ 8000
  10. I also read that slingers were used to slow units down. It's hard to walk when being stoned
  11. Those aren't my numbers. But yeah very different. I wonder if we would have made the switch had we chosen LUA.
  12. Language Ackermann's Function Nested Loop (16M) Hash Tables (80k) Method Calls (2M) LUA 110ms 1,462ms 1,061ms 5,397ms JavaScript 310ms 10,124ms 1,922ms 8,5552 Here is the benchmark that was done at the time. The person did not give the parameters for the Ackerman function. My browser only accept (3,11) and the lua online thingy https://www.lua.org/demo.html I used to test was like (3,8) The js was faster too.
  13. From all the resources I now read, I still have the feeling that we chose convenience over performance. LUA was better Nearly twice as fast as JavaScript Older than JavaScript (so likely to be more mature) The industry standard for games in all aspects save for Scripter's personnal tastes Syntax (People wanted the language to be more user friendly for non programmers) A special OOP paradigm using metatables JavaScript had Like LUA it matched the frontend and backend functionnality A nicer syntax closer to C OOP through prototypes and now through classes Preference from devs who weren't into LUA at all. Was supported by Mozilla
  14. Weird I went there and Ctrl + F and didn't find it. I will try again. I am sorry I am wasting your precious time.
  15. Won't be unless I reuse the presentation. But I might release the slides I couldn't load the meeting nor find it in the archive server. It matters a bit. Always nice to know the why especially when you can back it up. I'm happy they chose JavaScript
  16. For the record what file was it ?
  17. I'm falling a bit short of arguments, while there were extensive discussions, it feels a bit like that the decision was rushed by one's skill and not motivated by hard facts. I believe that's because the two languages both did the job so it ended up being a matter of preference. @Wijitmaker can you give me your light on that ? Here are the three slides that will be integrated in the 40+ other slides presenting 0AD. Why JavaScript.pptx
  18. I committed them at the beginning of the A24 dev IIRC. However I'm still hoping for Farsi voices from @dmzerocold and @Itms
  19. Mmmh I guess something else displays the barter panel using the list of resources files.
  20. So what was resolved by @Hannibal_Barca ?
  21. The patch was abandoned because it didn't work So it isn't likely to either work or be fixed
  22. Well the menu is populated automatically, I'm not sure but I think my fix would prevent them from being displayed at all That's an interesting concept
  23. Without the resource files I would assume you forgot to set all resources to be tradable or not. Example: { "code": "stone", "name": "Stone", "description": "Mine from rocks, stone quarries or ruins.", "order": 3, "subtypes": { "rock": "Rock", "ruins": "Ruins" }, "truePrice": 100, "aiAnalysisInfluenceGroup": "sparse" } if (data.tradable == "true") Would trigger an error because there is no tradable property. So either set it to false where you don't need it or add if (data.tradable && data.tradable == "true") Also not that it's likely that there is some cast occuring there data.tradable == true <=> data.tradable == "true" but not data.tradable === "true" In the json, you can write true without quotes. That's a luxury you do not have in XML. I guess this would come from Player.js ? Player.prototype.SetTradingGoods = function(tradingGoods) { let resCodes = Resources.GetCodes(); let sumProba = 0; for (let resource in tradingGoods) { if (resCodes.indexOf(resource) == -1 || tradingGoods[resource] < 0) { error("Invalid trading goods: " + uneval(tradingGoods)); return; } sumProba += tradingGoods[resource]; } if (sumProba != 100) { error("Invalid trading goods: " + uneval(tradingGoods)); return; } this.tradingGoods = []; for (let resource in tradingGoods) this.tradingGoods.push({ "goods": resource, "proba": tradingGoods[resource] }); }; You just need to check that for (let resource in tradingGoods) { if(Resources.GetTradables().some(res => res == resource)) continue; if (resCodes.indexOf(resource) == -1 || tradingGoods[resource] < 0) { error("Invalid trading goods: " + uneval(tradingGoods)); return; } sumProba += tradingGoods[resource]; } and for (let resource in tradingGoods) { if(Resources.GetTradables().some(res => res == resource)) continue; this.tradingGoods.push({ "goods": resource, "proba": tradingGoods[resource] }); } Also i don't think I have seen any link to your mod, is it publicly hosted somewhere ?
×
×
  • Create New...