Jump to content


Community Members
  • Content Count

  • Joined

  • Last visited

Community Reputation

46 Excellent

1 Follower

About Exodarion

  • Rank

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Progress on the mission is going well, this is just a snippet of one of the new triggers in the upcoming mission.
  2. When you lose the mission, the entire Gohma army retreats into the forest
  3. New release is available on Moddb: https://www.moddb.com/mods/hyrule-conquest Trailer:
  4. Moddb is the only place where the mod can be downloaded. However, there is probably someone in the discord that can give you the installer as well. Here is a link to that discord: https://discord.gg/hQQ4qtt
  5. splitting or combining Twinrova is not a planned feature right?
  6. Afaik Nephalim is currently not working on those guides. The Moblins and Darknuts are priority number 1 now so perhaps after that. I cant speak for Nephalim so when exactly he starts with this, I dont know.
  7. Nephalim is planning to do a podcast this weekend where we will probably discuss this particular topic as well.
  8. Hey there, I had the exact same problem a few days ago and I just couldnt figure out what I was missing. after testing multiple theories of mine and asking around I found the solution. The solution is usually inside the interface file of that component. Engine.RegisterInterface("TechnologyManager"); /** * Message of the form { "player": number, "tech": string } * sent from TechnologyManager component whenever a technology research is finished. */ Engine.RegisterMessageType("ResearchFinished"); However, the research finished event is already sent from there in this case so that is not the problem. To fix this particular problem you will have to remove the method from the AIProxy component and convert it to a global method in AI Interface like this: AIInterface.prototype.OnGlobalResearchFinished = function (msg) { this.events.ResearchFinished.push(msg); }; Also make sure to add a disabler in the case that there are no AI players present. AIInterface.prototype.Disable = function() { this.enabled = false; let nop = function(){}; this.ChangedEntity = nop; this.PushEvent = nop; this.OnGlobalPlayerDefeated = nop; this.OnGlobalEntityRenamed = nop; this.OnGlobalResearchFinished = nop; this.OnGlobalTributeExchanged = nop; this.OnTemplateModification = nop; this.OnGlobalValueModification = nop; }; That should fix your event. Exodarion
  9. Hello people, This post is aimed at the 0AD Devs and more specifically, people that are aware of how the component and AI files function. Lately, I have been working on a large AI project for HC and recently made an attempt to register a new event inside the components that I can use inside the AI files. However, I am pretty sure I am still missing something after going through multiple files and testing my attempts. For example, I tried to replicate the method that was used for the TrainingFinished event. The actual registering of this particular event seems to be taking place in the productionqueue: https://gyazo.com/0da3f8f4de7211345e41c9f95c3a57eb Afterward, it seems the communication between the component and the AI takes place inside the AIProxy and AI Interface components: https://gyazo.com/97879f508c2280e2b5dbb3c0888f15f8 https://gyazo.com/0210965d087367d766b53e3c2cb7fc65 I am aware of the Trigger component file, but this doesnt seem to have a specific connection to the AI files in my testing. Whenever I try to copy this method of registering a new event and read it from the AI files it gives me the following error: https://gyazo.com/b85b0c086a517b3408682a44f09fc7f9 This leads me to the gui files where the startgame function is called, which (I assume) goes through the source code where these events might be checked. Also, I tried to replicate this using the ResearchFinished event, which is only registered inside the Trigger component. When I try to communicate this event using the AI components, it does not give me this error, but also doesnt actually run the OnResearchFinished function, which seems to be called somewhere from the source as well, since I cant find where this is called within any of the component files or other files that I went through for that matter. I believe that the code that calls these functions is looking for a function that starts with "On blah blah", since other functions that dont start with these 2 characters are ignored, but this is just a sidenote. Finally, I have come to the conclusion that I am probably missing some kind of event handler register that must be done for any event whether it be used for the Trigger or AI Interface component. I have no clue where this is located and also leads to my actual question. I would like to know what I am doing wrong here and/or even better, a description on how to register new events and communicate these properly between scripts. If anyone is able to explain this to me, I would greatly appreciate this. Anyway, thanks for reading this long post for the people who have and I hope someone can give me some insight into this problem. Exodarion
  10. I dont really believe this was anyones '"fault" nor does it really matter tbh. We basically used edited versions of the gamesetup and mainmenu files from the previous 0AD version, which caused multiple errors and conflicts. After updating them both the mod was fixed although it is true that the user settings had to be nuked for it to work again.
  • Create New...