Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 2020-06-08 in all areas

  1. README First: The official topic about 0ad spidermonkey update is here: ==================================================================================================================================== Hi there! DISCLAIMER: This is a work in progress. The game starts but might be subject to instabilities, crashes or other imperfections. Just for fun and to learn something new I started adding SM68 support to 0ad. Here you can find the link to my 0ad fork at https://github.com/bellaz89/0ad/tree/rework I don't know what kind of development milestones are planned for 0ad. This is a pure one side project that doesn't pretend to be merged (but of course, if it is useful to someone I am going to be happy) Also note that I do not assure that everything I did is reasonable since this is my first approach with 0ad source base and spidermonkey. Some code could easily be incorrect or redundant. To compile it a system version of mozjs68 has to be installed. use the --with-system-mozjs68 workspace generation option. Tested and developed only on linux (Debian Bullseye 11). Some changes I did: Switched to C++14 due to Spidermonkey 68 requirements JSRuntime direct access is deprecated in favor of JSContext. Therefore ScriptRuntime create a new JSContext. All the methods/functions that used JSRuntime now use JSContext. the Compartment is now JS::Realm Since only a single JSContext is allowed per-thread, ScriptInterface just generates a new global object and populates it. The environment separation is done changing the Realm rather than using a different JSContext. Now the Realm holds the ScriptInterface private data. A macro to switch the Realm was added (CX_IN_REALM) Removed JSAutoRequest Starting adding explicit JS error checks since JS_SetErrorReporter was removed. A lot of API fixes, some are just name changes See links below to get a partial (quite long) list of additional API changes. Increased runtime size to 512 MB to make the tests run without segfault (to optimize). Why increasing the runtime size helped? Support of ArrayBuffer in Serialization/Deserialization is explicitly added since ArrayBuffer is matched by JS_IsArrayBufferViewObject anymore. The used API can be found in js/ArrayBuffer.h Open questions: How to pass data between Contexts. The StructuredClone API was changed and there are some problems continuing using it https://groups.google.com/forum/#!topic/mozilla.dev.tech.js-engine/ViE6Yg8yCvY Script sources are passed with JS::SourceText. Doubts about the right conversions between string format to be done Are the optimizations on SM45 GC still valid in SM68? How passing data efficiently between Realms Update June 8 2020 Basic error tests fixed (updated to mozjs style error output) All tests run, 98% pass. The failing tests are on serialization/deserialization Update June 9 2020 ArrayBuffer tests fixed modifying the serializer/deserializer. Fixed UTF test removing U+D800 (high surrogate) unicode character. All tests run, 99% pass. The last failing test is on exception catching. For the moment it can be ignored. Starting to understand why the GUI doesn't show up when launching pyrogenesis Update 2 Fixed GUI with https://code.wildfiregames.com/D2768 Still crashing when changing page. Update 17 June Patched Spidermonkey 68 source code. the class SharedArrayRawBufferRefs in ./js/public/StructuredClone.hStructuredClone.h (firefox source directory) was tagged as JS_PUBLIC_API to export its symbols. Please note that since Spidermonkey 68 clang is required to compile the codebase (at least on linux). Use instructions in https://github.com/mozilla-spidermonkey/spidermonkey-embedding-examples/blob/esr68/docs/Building SpiderMonkey.md. PersistentRooted is initialized with .init() Applied https://code.wildfiregames.com/D2768 ObjectToIdMap is based on GCHashMap Update 18 June Corrected a cross-compartment bug in CGame::ReallyStartGame, line 329. Does this affect the current 0ad version too?? Added checks to consume error messages I was able to start a game! ...but almost nothing (except the gui!) works properly Update 22 June Fixed error handling issue. Now 100% tests are running It was found that non-ASCII characters in game schema resulted in a crash. Since the presence of these characters is non-essential and limited, these characters were temporarly removed (Identity.js). The problem is under investigation. Probably this is due Game is running with Spidermonkey 68 Todo: Clean up. (better naming.. remove failed attempts to correct issue in the code) Benchmarking/Profiling. See how much the performaces increase/decrease after the upgrade Try link the game with SM78 beta () A big thanks to the WFG team for helping me in this task even though it doesn't follow the 'normal' 0ad development process. I hope this will be helpful in porting the official branch to newer versions of Spidermonkey (New) Spidermonkey 78 Since the next firefox 78 ESR is going to be released this month. I also started to work on the SM78 port using the beta release. Here you can see the branch https://github.com/bellaz89/0ad/tree/rework78 I am able to run a game but I get a lot of failing tests. So expect even a more instabilities. Important: In SM 78 uneval() and .toSource JS methods were removed. Therefore a workaround has to be decided Changes done for SM 78: Lot cosmetic API changes (different method names, method moved to different workspaces..) Seems that it is not possible anymore to disable the dynamic VM grow (to confirm) Needs C++17 to compile Useful links (contain a more in-depth list of changes): https://github.com/mozilla-spidermonkey/spidermonkey-embedding-examples/blob/esr68/docs/Migration Guide.md http://mozilla.6506.n7.nabble.com/Success-with-embedding-ESR52-spidermonkey-td369034.html https://groups.google.com/forum/#!topic/mozilla.dev.tech.js-engine/Mu1arXbBhi8 https://github.com/mozilla-spidermonkey/spidermonkey-embedding-examples Happy Screenshots: Tests. all passing Finally the game runs! mainlog.html entity.zip interestinglog.html
    2 points
  2. Update All tests run, 98% pass. The failing tests are on serialization/deserialization (see below)
    2 points
  3. Well we need @LordGood's buildings first.
    2 points
  4. Hello Everyone, The First 1v1 Tournament was a Instant Success. I've decided to make this a monthly Series Called 1v1 Double Elimination Tournaments or 1v1 DETs for short. We Will accept Registrations Via the Forum and from Challonge as well. So without Further a Do Let me get into the Rules, and FAQ about the Tournament! F.A.Q. Q: When is the Tournament? A: On June 20th, and will be postponed if need be. Q: How do I register for the Tournament? A: Go ahead to our Registration Page and Go ahead and Register, Alternatively you can Just reply on the Forums That you want to participate along side your In Game Name (IGN) and I'll Pop a message to you on the Forums. Q: Do I have to Check in for the Tournament? A: Yes, Check in Starts 2 days before the Tournament. (June 18th) Q: If I want to Leave the Tournament before it starts can I do so? A: Yes, you can! If you registered on Challonge you can simply go here - https://challonge.com/0ad/participant_settings and Click "Unregister" Q: What is it a Best of A: The Tournament is a Best of 3 For All matches Q: What Maps are being Played? A: We decided on Doing Mainland as it is a basic Map Q: What is the Map Size? A: Games will be played on the Small Map Size Q: If I want to contact me about something how should I? A: Respond to this post or email me at: derekowumi@gmail.com That Wraps up the FAQ Now the Rules and Game settings etc. Games' Setting: Population Limit: 300 Starting Resources: Low Mode: Conquest Spies: Allowed Treasure - On Explored Map: Off Revealed Map: Off Cheats: Disabled Game Speed: Normal (x1) Ceasefire: None Spectators: Allowed Tournament Rules: Recordings: Send Files to me via Email - derekowumi@gmail.com or Reply to this Post Play-style: Best of 3 1v1 Double Elimination (Losers and Winners Bracket) All Civilizations allowed Map used - Mainland Player Ethics: Do not be rude Do not pause the game before loosing Do not Pause the game without asking for permission from your enemy and the host If any of these rules are broken you may be kicked or banned from the tournament completely If you're in any way interested feel free to register with any of the ways given. Wish you the best of luck in competing!
    1 point
  5. 0 A.D. Development Report: September 2019 – May 2020 Wildfire Games, the international group of volunteers developing 0 A.D. : Empires Ascendant, is happy to present its latest development report. If you want to find out more about the development of this open-source, cross-platform real-time strategy game or if you are interested in game development in general, it might provide an interesting read. If you want to be part of this project, feel free to visit our forums and join our active community, or just grab a task from our list of open tickets and get right to it. We are currently looking for Programmers, Translators, Historians, MapMakers, Animators and Artistsa. *names written in bold black are Wildfire Games staff and names written in bold grey are community members Summary Programming We have been working on improvements on performance, both graphical and non-graphical, to make the next Alpha run more smoothly. The map editor will no longer be laggy (creation should not be hindered!) when changing the height. You can also now search the entities in a non-strict manner, e.g. “units ptol hlr” would show “units/ptol_support_healer_a” in the list. Art Greeks, Iberians, Celts, Romans, and Carthaginians have received visual updates, with better helmets, shields, and props. Flora has also been improved with better trees, and more variety in plants and props that can be placed over the maps in the scenario editor. The bear and the baby elephants now have animations, and hippopotamuses can now be placed using the scenario editor. Special artillery towers have been added to the game, as well as a new Gaul wonder and the Mausoleum at Halicarnassus. New sounds for weapons and for some animals have been committed. Balancing Work has been done towards improving gameplay to fix the current balancing issues with the help of some of the best ranked lobby players and some modders. Internationalization 17 languages have reached more than 90% of translation. Programming The whole team would like to welcome Angen as a new member. Angen has been an external contributor since the beginning of 2018 and has done a lot of work towards unit behaviour improvements. He is currently working on improvements on the formation system along with general unit behavior improvements. Angen added the ability to allow cancelling trade routes. He committed some fixes for formations. He implemented the ability to display tools instead of weapons when units are approaching resources. He made the trade gain by garrisoned entities configurable which will allow for a finer balancing a75397425a3774fd.mp4 bb has also been working on various smaller code fixes with the goal to improve consistency and to make unit templates cleaner and he fixed the lag that appears on windows when shift is pressed. elexis committed a patch allowing for map specific placement in the GUI game setup page, continued working on the GUI rewrite and fixed some bugs. He implemented game-setup options for landscape and daytime and added morepreviously uncredited people to the credits. FeXoR and nani have been working on the procedural generation of maps, to allow for more realistic maps. Freagarach made it possible for the same entity in multiple control groups (ctrl + number hotkeys). He allowed for status effects to affect unit speed (e.g. slowing down a unit when hit) this will be particularly useful for mods with magic. He also added a progress bar to show the upgrade status. Mods can now make projectiles deal friendly fire. This is currently unused in the game. He also allowed for some resources to not be barterable in the market, this will also be used in mods such as 0abc (link) and Delenda Est (link) upgrade-animations-and-progress-bar.mp4 Imarok fixed an error warning with AMD CPUs, fixed the display of actions cursors over the minimap and the usage of the patrol action, and did some cleanup in the minimap code. Itms worked on some improvements to the continuous integration system. He also did some library updates for NVTT (NVIDIA Texture Tools), the library we use for our textures, with the help of adrian and s0600204 on a library called FMT (This library is used to print warnings and errors). He also worked on build fixes for Mac OS. Krinkle worked on fixing JavaScript warnings, and submitted a few fixes for MacOS support, as well as some to improve the game’s CI. linkmauve did some cleanup of the rendering engine, by removing old platform specific code which was either deprecated or superseded by SDL2, and worked towards improving multithreaded debugging. Nescio has done a lot toward improving consistency in our files, renaming them to match the same conventions, and making them easier to deal with by simplifying some of them. For example all our map files had inconsistent naming conventions, and the presence of whitespaces in their name caused issues. Stan has created a feature for mods to allow buildings to construct themselves without the need of units. He made some optimizations to the engine, and did some cleaning up of the code. He also improved the scripts that help artists check for mistakes, and made a Blender importer for game objects, reducing the amount of work it requires. He also added the ability to play visual animations when a building is upgrading, and when a tech is being researched. He is currently working with the help of OptimusShepard to fix an issue with recent AMD CPUs. If you have Zen 2 CPU and want to help please head to this forum thread and tell us. Autobuildable video (3D Printing house) Researching animations user1 and Dunedan are working on upgrading the lobby backend to be able to provide new features for the next Alphas. vladislavbelov continued working on the rendering engine to bring improved performance and visuals. The next alpha will feature a FXAA filter, allowing models to look less jagged. He also worked on better tools to debug the renderer and easier access to those through the game. He added an option to use low quality shadows on more modest machines. He also worked on the map editor, allowing it to save the panel size between each session so one does not have to resize them every time, and a non-strict search to the Atlas entity list. He is currently working with Stan to add an option to resize the map with a specific offset. Snapping (1).mp4 Snapping to buildings (video) Screenshots with/without FXAA wraitii has worked on improving the engine, cleaning the code to make it easier to extend and to optimize. He has also been reviewing patches from Freagarach with aim to add gameplay features, such as status effects. Status effects will allow units to deal more realistic damage to others. For instance, it will allow flaming arrows to keep dealing burning damage after a unit has been hit. status-effect-test2.mp4 Art Alexandermb added a Transversal Crested gallic centurion helmet, sheaths, new idle relax animations for the hoplite, and scutum shields. He also made some citizen animations for the slave and siege engine operators. Likewise, there are some new Gaul idles for swordsman and new pikeman attacking animations, new Roman republican and imperial shields, gladiator helmets, Celtic Carnyx, while he finished the bear animations, hippopotamus animations, worked on improving camel animations and gave more options to modders, new animations for siege engines and improved existing ones. He worked on improving the shield textures, allowed elephant turrets to attack by giving them an attack animation, and animated the baby elephant. 5253d395bfdc8c4e.mp4 Bigtiger has worked on some gorgeous new elm trees, new poplar trees and improved the flora LordGood added new Ptolemaic houses, committed Enrique's pines, artillery towers, new unit sounds, Hungarian oaks, bolt tower and amphitheater, updated Ptolemaic sentry tower and added a new obelisk. He has worked on a few beautiful maps and provided screenshots for advertising on social media. Artillery Towers Hungarian oaks Pompeii amphitheatre for Romans in scenario editor New Ptolemaic houses Sahyadri Buttes, a new 5 player Skirmish map Atlas Valleys is a large 8 player skirmish map Samulis created new cattle sounds. Stan added an orange firefly particle and committed new improved berry bushes by BigTiger. He updated outdated icons and cavalry icons to use the new horse assets. There are now new lavender, new bluefin tuna textures and animations. Lately he has developed new icons for the unit actions and for status effects. He created three textures and icons for bears (polar, black, brown), made two hippopotamuses textures and created a model for the Mausoleum at Halicarnassus. He also replaced the current Gaul wonder by a more historically accurate one: the sanctuary of Corent. Sanctuary of Corent Fireflies raw2.mp4 bear Mausoleum at Halicarnassus Hippopotamus wackyserious improved textures for Greeks, Iberians, Romans, and Carthaginians. Judean slinger Iberian Spearmen Roman Advanced Cavalry Cretan Archer Iphicrates Roman TRIARII wowgetoffyourcellphone made some Corinthian helmet portraits, worked on some animals portraits and has given feedback on gameplay and icons and has made some of the screenshots in this development report. Miscellaneous Balancing Nescio worked with Stockfish, Badosu, ValirAnt, FeldFeld, and borg- to get some gameplay balancing patches, which were committed by other members. Documentation Beau fixed some mistakes in the documentation.² Beise is currently translating the wiki from English to German. Nescio has also been updating the English style guide, corrected many templates for consistency, and standardized hero aura descriptions and generalised tooltips. Finances Jeru made a new financial report and submitted a development report to SPI our financial sponsor. Thank everyone for all the donations. You can see more information about supporting us financially here: https://play0ad.com/community/donate/. Lobby user1 and elexis continue their work moderating in the multiplayer lobby. user1 created a a special thread on the forums to report all issues regarding the lobby. Interviews Freagarach gave a presentation at Sogyo Stan gave an interview for the Waffling Taylors podcast (https://wafflingtaylors.rocks/). The podcast should be available in June. He gave an interview with Picasoft (in French - you can find an English transcript here). Picasoft is an association at the UTC (a French school) you can read more about it here. He also gave a presentation at Avanade He also held a stand at the Capitole Du Libre in November 2019. You can find a summary here vladislavbelov did a presentation in FOSDEM 2020 about graphics pipelines in 0AD. See this thread for more information. Translations 16 languages have reached more than 90% of translation. If you want to help with your native language head over to Transifex. Gallaecio has been improving and correcting the English descriptions in-game with the help of Nescio Tournaments There has been quite a lot of activity on the competitive side! Most of the replays are available on the forums, so you can see some of the best players in action. derekO organized “double elimination” a tournament fpre organized a “survival” tournament HMS-Surprise organized the Sunday pro games tournament 1v1 commentated between 17/01/2019 and 24/11/2019. This was a competitive community event with very nice graphic designs! marcusAureliu#s organized a tournament rain_ironwolf organized a Hyrule Conquest tournament Stockfish also organized a multiplayer 0 A.D. tournament called the Primus Pilus tournament from 30/03/2020 to 29/04/2020. HMS-Surprise eventually took over to finish it. This report was written by asterix with the help of Thorfinn the Shallow Minded, Stan and Sundiata. For more details, please check wiki:Alpha24 and the roadmap. THANK YOU FOR YOUR SUPPORT.
    1 point
  6. In allied territory, @ValihrAnt give a good argument. Some players can spoil your allies with some walls near the center for example. In enemy territory it is a great idea, however it does not make sense if are converted to the enemy after a few minutes. In neutral territory I think it would work very well. My only fear is problems with the pathfinder. Some players can abuse it.
    1 point
  7. Yes it is a common design for helmet, although the Dusseldorf is maybe linked to Italic and Greco-Italic helmets because of the back neck-guard. However it was an old analogy made in the literature so it is only a hypothesis. Sadly the origin of the Dusseldorf helmet is obscure and the dating is entirely based on the typology/technology... which is not certain either. Probably not. At least I never seen an author suggesting this. The bump seems a bit small for a fixation. Maybe it is a repair.
    1 point
  8. The Coolus-Mannheim are exclusively in Bronze while the Gelduba is in iron (yes the rust make it misleading at the first sight). And it is probably a Weisenau (Imperial Gallic) modified helmet (or a very late Port like helmet).
    1 point
  9. How many Novo Mesto type helmets were found and where exactly. Ive red this article but its not very clear. https://www.academia.edu/5463297/The_Power_of_3_-_Some_Observations_On_Eastern_Celtic_Helmets (Mihaljević, Dizdar 2007) Besides the most popular one it seems there is at least another finding with more bland shapes. Anyone know the sites for this one and the others? .
    1 point
  10. The Port helmet is thought to be the ancestor of the Imperial Gallic series. Initially the Siemechow helmet has been thought to be a Roman helmet but recent historians highlighted the similarity with other late version of Celtic helmets in the East. The Eastern helmets didn't have a consistent type in the literature but they are clearly close to the Port type. A generic "Mihovo type" has been used but not consistently. The problem with the "Eastern Celtic type" is the misleading usage, confusing Montefortino-like Eastern helmets with the Port-like Eastern helmets. But anyway, I checked it is clearly the Siemechow type that has been used in the concept of the Lugian Late Swordsmen (I recently entered the team). Sort of. I think they added this generic bronze helmet to several elite germanic units because they faced the issue of the overwhelming absence of any evidence surrounding this topic for the Pre-Roman Iron Age. So it is not officially a Coolus but... it is like one.
    1 point
  11. nah the iron one. It seems like that exact subsubvariant lol of Port/Siemenchow must to have existed. it has some very nice shape. I ll have to asked more the EB II about this helmet and better images for it
    1 point
  12. I miss these, thanks for the update guys! So excited for the next release.
    1 point
  13. Hi! In fact none. It is just that SM 68 defines some values in its headers that usec++ 14 digit separators ( see https://riptutorial.com/cplusplus/example/31798/digit-separator ).
    1 point
  14. Hello, please see my reply from May 28 at: At the moment the map file alone wouldn't run for the reasons mentioned there. As soon as i finished the mod respectively the script, so that i will run without mod, i'll provide you the map.
    1 point
  15. Up Up Up ... Some support please ?
    1 point
  16. In 23718 the "celt_trader.dae" changes. "celt_trader.dae" is used by: "tower_artillery_projectile_impact.xml" is used by: i think, the "celt_trader.dae" has no business there ...
    1 point
  17. I think he meant that spidermonkey 68 requires at least c++ 14 to be used. This is unfortunately unavoidable.. I will add this change to the changelog.
    1 point
  18. Probably one of the series of "Les voyages d'Alix", a French comic book. https://www.bedetheque.com/BD-Alix-Les-Voyages-d-Tome-5-La-Grece-2-20005.html
    1 point
  19. You can probably get better picture by googling Japan Kofun Mirror. This one from a publication: Another useful document but not for the bronze mirror (too low quality): https://ir.library.osaka-u.ac.jp/repo/ouka/all/69823/OUHSS_TT.pdf
    1 point
  20. This helmet found in Normandy and dated to the 1st century BC is close from its conception to the most common type known as "Alésia" (because the first was one has been found there). It is possible there was back and forth influence between the Celts from Central Europe, the Celts from North Italy, the Celts from the Balkans and the Celts from the Pontic Steppes. Maybe with Anatolia too although it is not totally certain. The Celtic world of the 3rd, 2nd and 1st century BC is highly connected. As an example of the complex interaction, here a Konos like helmet found in Kalnavo (late Thracian site) with plenty of Celtic items:
    1 point
  21. That also can be a wrong shadow map bounding box, for example if there is an object a far away from the map. I need to see shadow map bounds from developer panel in SVN.
    1 point
  22. by suggestion of Stan i make this. https://github.com/0ADMods/SoundsMod
    1 point
  23. Agreed that it looks like z-fighting in the shadow map (this sounds more epic than it is btw :p ) Did this never happen before? Is that just on this one map? What happens if you lower the shadow quality settings?
    1 point
  24. In those Trac forums -- interesting forums -- you say you'll have the boats used for other things beyond the mobility of units, but if you look at the game, ships usually only serve for that purpose. I mean: At sea, in addition to the non-mobility of infantry and cavalry, there is neither a mine or a territory to fight for, the treasures are not enough. In many RTS the same thing happens and it causes that military boats are not very useful. Many players don't see the sea strategically, they just want to cross it. This aspect can improve creating a camouflaged metal mine on a pearl reef or on one of those shipwrecked ships (like the Egyptian pyramids) with a limit of 2-3 workers on it (so trade revenues still remains useful). Now players would see the sea in a more strategic way, the same way they see the gold and stone mines on earth. And the game is gonna to encourage people to spend soldiers garrisoned on ships willing to steal or capture marine gold mines engaging in naval confrotations. Ships that have space for 50 soldiers assume that they are only for transport. Even the fortresses don't have that much space. It's like they're screaming that they're only serving as cargo ships. What I mean by this is if you've thoroughly analyzed the usefulness of having warships to engage in a real maritime war.
    1 point
  25. Those three buildings were made on the commission of @Andrettin I might make more in the same style in the future I haven't finished with the farmstead and cc level 2 & 3
    1 point
  26. Here are my ratings ValihrAnt(10.25) borg-(eae) PhyZic(goat) Boudica(rush) Rauls(always connected) fpre (fgod) Stockfish(1vs1) chrstgtr(op) Edwarf(nub) Badosu(?) Havran(The pride of tier3) UnknownPlayer(rams) Dakara (Croissant) SaidRdz(8) randomid (spam) Ricsand(Brit&Nub host) Metafondations(Crêpe) Dakeyras (Baguette) Issh(Preacher of nubness) esu(Fr) aow (colgate) ITRELLES (Lasagna) darkcity(nub) go2die(kushites) Palaiologos(fail) those are approximate ratings, they shouldn't be taken too seriously.
    1 point
  27. And that's from someone that never dances (except for hero flee stance, just cause nub to micro tho xD)
    1 point
  28. I'm just passing by to say i'm going to steal those references and see if i can do something.
    1 point
  29. Not very tech savvy. Please help Much to our regret we must report the program has encountered an error. Please let us know at http://trac.wildfiregames.com/ and attach the crashlog.txt and crashlog.dmp files. Details: unhandled exception (Access violation reading 0x00000004) Location: unknown:0 (?) Call stack: (error while dumping stack: No stack frames found) errno = 2 (Error during IO) OS error = 0 (no error code was set)
    0 points
  30. incredible - it's rev 23718
    0 points
×
×
  • Create New...