Jump to content

sanderd17

WFG Retired
  • Posts

    2.225
  • Joined

  • Last visited

  • Days Won

    77

Everything posted by sanderd17

  1. If it's for testing, the easiest is probably to run the development version of the game, where the translations are updated regularly. See http://trac.wildfiregames.com/wiki/BuildInstructions for more info. Otherwise, it's similar to creating a mod, where you replace the *.po files under the l10n directory with your own files.
  2. A decent solution will take a long time to implement. There were some experiments with pre-processing the files to change the order of the characters. But even when that's a done, the current text rendering code lacks kerning, and I heard that is quite important for Arabic. Implementing kerning in the current text renderer will be too hard, and it would be better if we'd switch to standard text rendering engines (Pango and related). But that is also a lot of work. So unless someone suddenly drops by and starts working on this, it can't be expected anytime soon.
  3. The classes are defined as the union of the VisibleClasses and the Classes lists (with the only difference being that the VisibleClasses list is also displayed in the GUI). And unique is just different from the other names in the file. So <BonusX> works if you use a different X every time in the file. And the civ bonuses are defined in the technologies only. The things you see in the civ.json files are just descriptions for the GUI (namely the history section of the game).
  4. Hi, There's a limit of one registration per ip-address per hour. As you and your brother are on the same ip-address (in the same house), you'll have to wait a bit until the hour is passed. This is to avoid spammers who just kept creating new accounts to keep spamming. I should warn you though that it isn't easy to play with two players on the same ip-address against other players. So playing with your brother against a different player somewhere else probably won't work. If you just want to play against your brother, you don't have to register for an account, and one of you can just "host" a game, while the other "joins" the game by typing the correct local ip address in the "join game" dialog (see your router info to find out which computer has which ip-address on your network).
  5. The bug is different from the cav bug. The problem is that for a unit, the range takes into account the size of the target (else melee soldiers would try to go to the middle of a building to attack it). But as this is a quite heavy calculation, the size of the target isn't taken into account for structures. Targets are only in range when their center is in range there. The problem with the ship is that it has one arrow as a unit (one default arrow), and the surplus arrows are added the same way as for structures. As the movement code is also part of the Unit AI, it will only move until the target is in reach for that one arrow, and not for the surplus arrows.
  6. When loading a random game, the progress bar you see is mostly the generation of the random map. So given how slow the process is, it's not realistic to make previews of it on the fly.
  7. Fishing boats are usually too slow to catch whales, so you probably have to kill a whale with a military ship first, and then gather from it with a fishing boat.
  8. 2. Yes, that sounds correct, the name of the bonus doesn't matter, it just has to be unique in the file to allow our tools to parse it. For the techs, see here: http://trac.wildfiregames.com/browser/ps/trunk/binaries/data/mods/public/simulation/data/technologies Civ bonuses are just techs with an "autoresearch" flag set. And team bonuses are implemented as auras because auras can be undone again (and diplomacies see also not fixed in the game).
  9. Damage variants are only since recently possible in the code, and are for the moment waiting on new artwork.
  10. 1. b: .local/share/0ad/mods/mynewmod 2. Yes, we have hard counters, though most hard counters have been removed from the stats, as they were considered confusing for users and balancers. Without hard counters, you have some less variables to take into account, and it makes balancing easier. The code is still present though, and we still use it in a few templates, like spearmen still have a hard counter against cav: http://trac.wildfiregames.com/browser/ps/trunk/binaries/data/mods/public/simulation/templates/template_unit_champion_infantry_spearman.xml#L14 3. That's defined in the "RequiredTechnology" key, you can make buildings available on any tech research, and phases are mostly just like other techs: http://trac.wildfiregames.com/browser/ps/trunk/binaries/data/mods/public/simulation/templates/structures/maur_elephant_stables.xml#L26 4. adding ".DELETE" to the end of the file name will delete the file from the parent mod. But in this case, you can also remove it from their Builder Entities list for all Mauryan units: http://trac.wildfiregames.com/browser/ps/trunk/binaries/data/mods/public/simulation/templates/units/maur_infantry_archer_b.xml 5. For a building, add it to the Builder Entities of certain units, for a unit, add it to the ProductionQueue of a building. Do watch out with the {civ} codes, as it makes a difference with captured buildings. The civ is the civ of the owner, so the units you can make in a building depends on who has captured it, unless you hard-code the civs in the templates, in which case the capturer can produce units of a different civ. 6. Millenium A.D. is a good example of this (adding 2 factions with custom art and only few other changes). So best take a look there. If you don't want to modify the art yet, copying the unit and structure templates and the civ.json is probably enough. http://trac.wildfiregames.com/browser/ps/trunk/binaries/data/mods/public/simulation/data/civs
  11. That is defined in the simulation templates ( http://trac.wildfiregames.com/browser/ps/trunk/binaries/data/mods/public/simulation/templates/ ) F.e. the default attack of the archer is defined to be 6.5 pierce for the moment: http://trac.wildfiregames.com/browser/ps/trunk/binaries/data/mods/public/simulation/templates/template_unit_champion_infantry_archer.xml#L3 Note that templates inherit from each other. So you can define a default value for the generic archer, but define a special value for a special archer unit. To redefine it in your mod, you must just copy the file to your mod, and change the values. Your file will override the version that's used in the game. F.e. in millenium A.D., they altered some resource templates to have other stats: https://github.com/0ADMods/millenniumad/tree/master/simulation/templates (in this case, they changed to colour of those elements on the minimap, which is also a stat).
  12. It may also be a good idea to take a look at an existing mod first, f.e. https://github.com/0ADMods/millenniumad There you can see all the files that were added or altered for that mod.
  13. Nice sound to start the game. It certainly sets the mood. I wonder when is the best time to play it: when the button is pressed or when the loading is finished. It sounds like a warning that the game has begun, so perhaps it's better suited when the game starts. Would need some programmer to add it to the code though ...
  14. For the first ones, it may be easier as a single one (so it's easier to refer to when giving feedback). But if your creation speed is quite high, perhaps reviewing a set at once is better. AFAIK, nobody is working on the sounds at the moment.
  15. @stanislas69, the issue you mention is mostly a code issue, though perhaps having the sounds available will make some programmer more motivated to implement it in the code. Currently the sound selected on an attack only depends on the attacker and not the target. So the SoundGroups XML format should probably change a bit to allow f.e. differentiation of sounds by target class.
  16. For code contributions, the normal proces is to create a patch and submit it on trac. However, for art contributions, it's easier to share it on the forum as binary files can't be put in a patch. About the goat sounds, I didn't know they were in there. It looks like the sounds are very old (from when the game code moved to SVN, so we don't know how old as we have no history before that). So I guess the sounds are older than the actual model, and perhaps were never added to the model. If you find the goat sounds good enough, they can be added to the template I guess. Asking for priorities is unnecessary IMO. It's a lot better to just create the sounds you want. Be it animal sounds, UI sounds or other sounds. That's the best way to create quality, and also keep you motivated.
  17. Sounds for animals will be easy to add (from a technical POV). Waterfall sounds and other environmental sounds will need a looping positional sound emittor, which isn't implemented yet AFAIK. For the moment it's only possible to choose between looping global sounds (like the music or generic background noise), or positional sounds on an event (like when you click a unit). On your question about Pyrogenesis: that's an engine we're developing in-house. so it's an inherent part of 0 A.D. for the moment, though it's possible it will get released as a stand-allone engine in the future when it's more feature complete. You can find the sound definitions in directories like here: http://trac.wildfiregames.com/browser/ps/trunk/binaries/data/mods/public/audio/actor/fauna/animal We use ogg to encode the actual sounds, and then XML files are used to define some variation on it (select one sound out of a list of possible sounds, alter the gain or pitch randomly in a range, ...). It's also imortant to know that positional sounds should be created as mono sounds; the engine will take the in-game position into account to give the full game a stereo sound. Sounds that are stored as stereo sounds will always be treated as global sounds (which caused some annoyance in the past, when you could hear lions roar no matter where they were). Sounds are then bound to events on entities (animals, units, buildings, ...) by defining it in their templates. See f.e. here: http://trac.wildfiregames.com/browser/ps/trunk/binaries/data/mods/public/simulation/templates/template_structure_civic_civil_centre.xml#L98 (the <Sound> part). These names are references to the sound XML files. That all said, I like your work and I guess it's best if you can try to create some sounds for the animals that are missing them, or propose some improvements to sounds, and then they can get included in the game. Note that not only animals need sounds, but f.e. different technologies also need sounds and many are still missing sounds.
  18. @lhardy, yes, that's something that was changed recent-ish. When you have won the game, you become an observer. Though it doesn't work completely either. It should probably be better next release. @Loki1950, I guess you misunderstood the question.
  19. Meanwhile a thread for A21 is opened:
  20. Well, every map has some JSON data (for scenarios in the xml, fit random maps in a separate file), and that would allow custom data. But currently the custom data doesn't get passed on to the rest of the simulation, and there may also still be a problem with persistent map settings (when you play a map that doesn't define these custom keys, it can still have them because they persisted from the previous map). It it's planned however to fix that.
  21. When in doubt, use http://www.urbandictionary.com/
  22. @civilis, the units are supposed to speak their native language, but as we don't have all those voices yet, most speak Greek (only the Romans speak Latin). That "Prost Ballermann" like is probably "eisbàlomen" or "I will attack", and I don't know in what phrase you hear that female line. In any case, here are the used lines: http://trac.wildfiregames.com/wiki/Audio_Voice_List
  23. Most often, you don't need to read from the map XML, but you can read from the game state. The map is loaded to the game state anyway. All data should be available in the game state, with the exception of the ground texture used (as that falls under graphical data, and thus isn't available in the simulation runtime, but this should become available in some way in the future). What data do you want exactly? Entities can be found through RangeManager calls and further filters. Terrain elevation can be found from the terrain component or from the position component. Or do you want something else?
  24. Implementing some victory condition in C++ will be very hard. The C++ side isn't able to see a lot of data in the game. F.e. it knows where a certain entity is, and what its obstruction size is, but it has no info on what classes the entity has (is it a wall, a unit, a siege engine, ...). And JS is easy to learn if you know C++. The main thing you need to know is that it has dynamic types, and you can f.e. add random attributes to any object and work with those, without specifying a class for that object. Classes in JS are called prototypes (although the latest spec has some class keyword but that's just syntactic sugar for prototypes), and these prototypes add default attributes and methods to objects, so you can work easier with it. If you know how to program in a C-style language, just keeping a good reference next to you (like https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference ) will get you a long way.
×
×
  • Create New...