Jump to content


Popular Content

Showing content with the highest reputation on 09/10/2013 in all areas

  1. 2 points
    We completely agree - optimization has been the top priority for a long time now and we're only just starting to make breakthroughs on that. Since 0AD is cross-platform we are somewhat limited in the amount of optimizations that can be applied and even worse, some optimizations break the game on other platforms while work without issues on others. For example, OSX OpenGL drivers fail to adhere to GLSL compilation standards, meaning we need custom code for macro preprocessing. Even worse are optimizations that speed up some machines and slow down others. Some rendering code can be adjusted to favor powerful GPU's, giving a noticeable performance boost. The downside is that weaker GPU's suffer to perform. However, it is mostly agreed upon that AI and Pathfinding are the single biggest issues in the game and unfortunately they are both non-trivial issues. Pathfinding is still one of the hardest things to get right in the gaming industry, since naive A* or Dijkstra algorithms don't perform in this field. We are considering HPA* with Clearance based Pathfinding; the relevant article can be found here: http://aigamedev.com/open/tutorial/clearance-based-pathfinding/ The biggest issue with AI is that it's in JS and does some dangerously complex things that it shouldn't be doing. We obviously need more dedicated C++ programmers to solve the issues. That's the reason for the fundraiser.
  2. 2 points
    Max FPS probably isn't the best measure of what's going on with 0 A.D., I can get 80-100+ fps depending on the map (a few are much lower for technical reasons, e.g. lots of transparent objects like trees) and I don't have the latest greatest hardware. But in some game situations, frames take far too long, whether it's pathfinding or AI, resulting in choppiness and lag. An uneven high framerate is more annoying than a lower smooth framerate. On the other hand, when I play multiplayer games without AIs, it does tend to run far more smoothly. We will continue working on the performance, meanwhile if you haven't tried the AI-less multiplayer experience, you might be pleasantly surprised
  3. 1 point
    I see where you're coming from, but the current performance issues are not related to language or OpenGL version. The performance issues are because of code with very bad worst case performance, like CCmpRangeManager using insertion sort in a tight loop, which has W(n^2) performance - in short, it's horrible. If we concentrate on ironing out algorithmic bugs, we'll have very good performance. Garbage collector is a very bad idea for intensive real-time systems such as 0AD. I've worked on games in C# before and the GC always got in the way once the engine was sufficiently complex. Furthermore, debugging dangling references that cause obscure leaks is just ridiculous. In general we do very little in actual memory allocation with the new patch - you can see it in the memory timeline graph. Once the game is underway it's mostly smooth. If we used C#, memory usage would keep climbing very fast, until it hits a GC cycle - then the whole game will freeze for half a second. Definitely not something we want. Ever. Dealing with JS GC is quite enough trouble already. The best approach here is to allocate as much as possible beforehand and not do any allocations or deallocations during the game loop. This is something you can't really do effectively with GC based languages.
  4. 1 point
    Hi everyone, I finally did Sanskrit translations for the first few phrases for the Mauryans. As I was not sure how to edit Sanskrit texts here, I uploaded a pdf here: http://www.scribd.com/doc/166937114/Sanskrit-Translation-for-0AD. Ummonk, I will contact you when I start with the recordings. To the people in charge of the voice recordings, what are the quality requirements in terms of bitrate, compression standard (mp3, ogg or some other lossless format)?
  5. 1 point
    Very interesting to read and I'm glad the money of the previous fundraiser is being spent wisely Kudos to everyone who volunteers and also Redfox ofcourse.
  6. 1 point
    Now here comes the White Horse! This is a first draft. I already have ideas to make it better, especially to give some lower relief to the horse itself, making it look a little sunk into the hill. For now, I am using a basic repeated texture, but when the hill and the horse will be shaped right, I will build a UV skin to give more character to the wonder and improve the transition between grass and white gravel. Critics, comments and Blender advices are much welcome.
  7. 1 point
    #643 Thanks for reminding me of this, it would be nice to get in the next release.
  8. 1 point
    Hi all, Sorry for barging in a bit late on this discussion, I did not see this until now. First a few words about where I'm coming from: I have been working as a localizer for 2 years now both professionally for proprietary software and as a hobby for Opoen Source, and I can't wait to get started translating this game into Scottish Gaelic If I may make an observation from past experience and hair-pulling: Whatever you do internally, I strongly recommend presenting translators with PO files. This is why: Access to translation memories and easy cooperation PO files allow you to use translation memories and put them up on sites like transifex (yes, Transifex allows you to download and reupload the files for offline editing, just like Launchpad). Plural handling Gettext implements proper plural handling. How do you intend to implement plural handling? Just to give you an example for why it's needed - if I would use Gaelic grammar on an English example, I would get: 0 fighter 1 fhighter 2 fhighter 3 - 10 fighters 11 fhighter 12 fhighter 13-19 fighters 40 ... fighteras opposed to English 0 fighters 1 fighter 2 ... fightersSpellcheckers Also, PO files can be used with tools that support hunspell, like Firefox or Virtaal. Personally, I will be translating into a minority language and will be grateful not to have to copy/paste everything into LibreOffice in order to gain access to a spellchecker. Easy reference to the English source text Seeing the source and translation string side by side greatly speeds up the process. There are only 2 people active in the Open Source community who are qualified to localize into my language. So, I will have to translate the complete game on my own and saving time will be essential. With some translation projects, I found it helpful that I could easily see which line in the source the string had come from. Also, as has already been mentioned, programmers can add comments that will be picked up by gettext. Instant testing of your translation in-game There is one problem with the text2po conversion approach: How does the average translator who does not run a Linux machine test their translations in-game? If you'd just use gettext, easy-peasy, save as MO and drop your translation into LC_MESSAGES and Bob's your uncle. Some notes concerning programming issues If you're worried about strings being spread out to much e.g. for a campaign, that would depend on the design of your campaign config files if they are spread out or not? Maybe you could chat to the devs at Wesnoth who have a very workable solution also for mods, using multiple gettext domains If you're using XML, check out Intltool. If you mean strings like "foo %s bar", they actually are the easiest way to adjust the word order in the target language, if a placeholder can't be avoided. If you absolutely have to have your own format, talk to the OpenTTD people. They have a working format that does plural, gender and case handling, and they have a web translator as well. Please let the user select their language in the GUI And one final request, please do implement a language option in the menu. Detect Locale is fine for language pre-selection only, trust me on this. Thanks for listening to my long ramble
  9. 1 point
    That is indeed all that would be needed and maybe an other entry in the resource summary page detailing either a percentage or discrete value for each of the resource type,for those of us that are into economic stats and their effects. Enjoy the Choice
  • Create New...