Page MenuHomeWildfire Games

elexis (Alexander H)
User

Projects

User Details

User Since
Dec 21 2016, 3:52 PM (147 w, 19 h)

Recent Activity

Today

elexis raised a concern with rP22802: Use the @wowgetoffyourcellphone's Uffington Horse as the Briton Wonder….

This commit was to implement a design decision made long ago to make the Uffington White Horse the Briton wonder.

Thu, Oct 17, 1:02 AM

Yesterday

elexis added inline comments to rP8234: # Add victory/defeat conditions, based on patch from fcxSanya..
Wed, Oct 16, 10:17 PM
elexis added a comment to F1100948: r23063 replay, at min 34, go2die lost 25 naked fanatics due to pathfinding problems at a narrow passage.

which is 4124 * 500.

Wed, Oct 16, 3:13 PM
elexis added a comment to F1100948: r23063 replay, at min 34, go2die lost 25 naked fanatics due to pathfinding problems at a narrow passage.

Wed, Oct 16, 3:08 PM
elexis added inline comments to rP20644: Implement hotkeys and mousescroll to change tabs in tabbed pages (credits….
Wed, Oct 16, 2:55 PM
elexis updated the summary of D2378: Session event subscription system, refactor PlayerViewControl, TopPanel, Pause, GameSpeed, ObjectivesDialog, FollowPlayer to use object orientation.
Wed, Oct 16, 1:11 PM
elexis created D2378: Session event subscription system, refactor PlayerViewControl, TopPanel, Pause, GameSpeed, ObjectivesDialog, FollowPlayer to use object orientation.
Wed, Oct 16, 1:10 PM

Tue, Oct 15

elexis added inline comments to D2362: Use seeding animation.
Tue, Oct 15, 3:05 PM
elexis requested verification of rP20577: Allow fast-forwarding of matches with only AI players..
Tue, Oct 15, 12:37 PM
elexis raised a concern with rP21149: remove a useless (and bothering) intrusion of the gui.

that line was explained in the line in the revision proposal

Before calling something an intrusion and doing a commit, one would expect to have at least read the differential revision proposal to see the reason why the code was written the way it was written.

Tue, Oct 15, 12:25 PM
elexis added a comment to D2376: Store the garrisonHolder in cmpGarrisonable instead of iterating orders..

From http://irclogs.wildfiregames.com/2019-10/2019-10-14-QuakeNet-%230ad-dev.log

14:50 < Freagarach> Find idle units no longer requires entities to keep the garrisoned order and stay in the garrisoned state. Any objections to remove? ;)

As of?

Tue, Oct 15, 10:24 AM

Mon, Oct 14

elexis added inline comments to D1661: lobby bots systemd service.
Mon, Oct 14, 11:20 PM
nani awarded D2369: Refactor trade dialog to use object orientation a Like token.
Mon, Oct 14, 9:51 PM
elexis added a comment to D2369: Refactor trade dialog to use object orientation.

In the future the translated strings can be updated only if the selected language changes.

While the GUI selectively updates for certain config changes, this is not feasible for the language, because the strings defined in the XML file would not be updated.
Changing the language ingame currently means the mainmenu page is reloaded (switchpage), but this is out of reach currently for the session due to too many state variables that would be lost in the session.

Mon, Oct 14, 9:24 PM
elexis added a comment to D2353: L3 Ryzen 3000 Bugfix.
In D2353#99092, @Imarok wrote:

(OptimusShepard got an OOM after about 30 minutes when playing on a big map with 8 AIs that might be related to this issue.)

Mon, Oct 14, 5:13 PM
elexis added a comment to rP23070: Fix the last remaining warnings introduced by rP23049.

Doesn't seem fixed actually:

ERROR: art/animation/quadraped/camel_death.dae: Assertion not satisfied (line 393): failed requirement "recognised skeleton structure"
ERROR: Could not load animation 'art/animation/quadraped/camel_death.dae'
ERROR: CSkeletonAnimManager::GetAnimation(art/animation/quadraped/camel_death.dae): Failed loading, marked file as bad

Happens upon destroying persian trader.

Mon, Oct 14, 1:10 PM

Sun, Oct 13

elexis committed rP23072: Refactor trade dialog and barter panel buttons to use object orientation, refs….
Refactor trade dialog and barter panel buttons to use object orientation, refs…
Sun, Oct 13, 5:44 AM
elexis closed D2369: Refactor trade dialog to use object orientation.
Sun, Oct 13, 5:44 AM
elexis created D2369: Refactor trade dialog to use object orientation.
Sun, Oct 13, 5:18 AM
elexis committed rP23071: Fix atlas complaining about the diplomacy dialog following rP23065/D2365, refs….
Fix atlas complaining about the diplomacy dialog following rP23065/D2365, refs…
Sun, Oct 13, 5:05 AM
elexis updated the Trac tickets for D2213: Delete CSimulation2 m_MapSettings and redundant getters.
Sun, Oct 13, 4:53 AM

Sat, Oct 12

elexis removed 1 auditor(s) for rP23049: Camel riders animations re-export.: elexis.

Thanks for the fix in rP23070

Sat, Oct 12, 6:27 PM

Fri, Oct 11

elexis requested changes to D2363: Check attribute directory path is actually a directory when loading the folder's scripts..
Fri, Oct 11, 9:33 PM
elexis committed rP23068: Remove catch of critical PSERROR_Scripting exceptions in the GUI that is….
Remove catch of critical PSERROR_Scripting exceptions in the GUI that is…
Fri, Oct 11, 9:30 PM
elexis closed D2366: Don't catch PSERROR_Scripting in source/gui/.
Fri, Oct 11, 9:30 PM
elexis added inline comments to D2363: Check attribute directory path is actually a directory when loading the folder's scripts..
Fri, Oct 11, 7:39 PM
elexis added a comment to D2151: Use "setStringTags"-function more often..

It seems "orange" is the "highlight" color of the theme? Could be refactored some day.

Fri, Oct 11, 7:36 PM
elexis created D2366: Don't catch PSERROR_Scripting in source/gui/.
Fri, Oct 11, 7:27 PM
elexis committed rP23067: Don't leak all GUI objects on name ambiguity following rP9 and remove….
Don't leak all GUI objects on name ambiguity following rP9 and remove…
Fri, Oct 11, 6:21 PM
elexis added a comment to D2344: Don't leak GUI Object on name ambiguity, delete PS_ERROR_GUI codes, CGUI::UpdateObjects() and IGUIObject::AddToPointersMap.

The leak comes from rP9.

Fri, Oct 11, 6:18 PM
elexis committed rP23066: Fix missing file in previous (diplomacy dialog class rewrite), refs….
Fix missing file in previous (diplomacy dialog class rewrite), refs…
Fri, Oct 11, 5:48 PM
elexis added inline comments to rP9: Initial revision.
Fri, Oct 11, 3:21 PM
elexis added a comment to D2365: Refactor diplomacy dialog, diplomacy colors, tribute buttons, spy request buttons, attack request buttons, minimap panel, idle worker button, ceasefire counter to use object orientation paradigm.

Now a measurement of the diplomacy panel update function before and after the patch (which I couldnt really do due to new folders and moved files):

Fri, Oct 11, 2:44 PM
elexis committed rP23065: Refactor diplomacy dialog to use object orientation paradigm using the class….
Refactor diplomacy dialog to use object orientation paradigm using the class…
Fri, Oct 11, 2:31 PM
elexis closed D2365: Refactor diplomacy dialog, diplomacy colors, tribute buttons, spy request buttons, attack request buttons, minimap panel, idle worker button, ceasefire counter to use object orientation paradigm.
Fri, Oct 11, 2:31 PM
elexis abandoned D1191: Tributes break in diplomacy dialog if more than one resource is clicked while holding shift..

Thanks for bringing the issue to my attention and going the extra mile to writing a proposal too.
If you want to improve the presentation of the button feel free to create an independent proposal or pick this up.

Fri, Oct 11, 2:30 PM
elexis updated the summary of D2365: Refactor diplomacy dialog, diplomacy colors, tribute buttons, spy request buttons, attack request buttons, minimap panel, idle worker button, ceasefire counter to use object orientation paradigm.
Fri, Oct 11, 2:14 PM
elexis retitled D2365: Refactor diplomacy dialog, diplomacy colors, tribute buttons, spy request buttons, attack request buttons, minimap panel, idle worker button, ceasefire counter to use object orientation paradigm from Rewrite diplomacy dialog, tribute buttons, diplomacy colors, tribute buttons, spy request buttons, attack request buttons, minimap panel, idle worker button to use object orientation paradigm to Refactor diplomacy dialog, diplomacy colors, tribute buttons, spy request buttons, attack request buttons, minimap panel, idle worker button, ceasefire counter to use object orientation paradigm.
Fri, Oct 11, 2:10 PM
elexis added a comment to D2365: Refactor diplomacy dialog, diplomacy colors, tribute buttons, spy request buttons, attack request buttons, minimap panel, idle worker button, ceasefire counter to use object orientation paradigm.

Added classes:

DiplomacyButton
DiplomacyDialog
DiplomacyDialogCeasefireCounter
DiplomacyDialogColorsButton
DiplomacyDialogPlayerControl
DiplomacyDialogPlayerControlManager
Minimap
MiniMapDiplomacyColorsButton
MiniMapIdleWorkerButton
MiniMapPanel
AttackRequestButton
DiplomacyPlayerText
SpyRequestButton
StanceButtonManager
StanceButton
TributeButtonManager
TributeButton
Fri, Oct 11, 1:20 PM
elexis added a comment to D2365: Refactor diplomacy dialog, diplomacy colors, tribute buttons, spy request buttons, attack request buttons, minimap panel, idle worker button, ceasefire counter to use object orientation paradigm.

On performance, it should not matter too much for this patch, since none of the classes do reoccurring updates on their own, and the only way they are called reoccurringly is through updateGUIObjects() which only calls g_DiplomacyDialog.update();, g_MiniMapPanel.update();.
The first call is early-returning if the dialog is closed, so doesnt affect unless the dialog is opened. If the dialog is opened, then the other dialogs are closed. It's few more function calls if it is opened which sounds negligible.
On the other side there is also less code performed in the update functions, since some of the attributes are only set once on init that previously were done each update call.

Fri, Oct 11, 12:03 PM
elexis added a comment to D1191: Tributes break in diplomacy dialog if more than one resource is clicked while holding shift..

(And when speaking in general about this tribute button, there should be a way to abort the tribute. I remember a suggestion on irc at the time of that commit about making that a confirmation box, which has advantages (cancelability) and disadvantages (more user interaction if only wanting to send few amounts).
Also the amounts to be sent should be displayed on the buttons, right now theres only the tooltip which is shown for one of the resources to be tributed.)

Fri, Oct 11, 10:51 AM
elexis added a comment to D1191: Tributes break in diplomacy dialog if more than one resource is clicked while holding shift..

If I see it correcty, rP17820 changed it so that only one resource was sent at a time?)

I don't see a behavior change in that commit, there are all resource types sent prior and afterwards, and prior and afterwards all of them are 0 or multiplier * 100.
Notice that sending resources this way still isnt ideal in D2365, as it sends one command per resource type in that case (which could be changed by storing the amounts in the manager instead of the button if one wanted to).

Fri, Oct 11, 9:42 AM

Thu, Oct 10

nani awarded D2365: Refactor diplomacy dialog, diplomacy colors, tribute buttons, spy request buttons, attack request buttons, minimap panel, idle worker button, ceasefire counter to use object orientation paradigm a Party Time token.
Thu, Oct 10, 7:16 PM
elexis added a comment to D1191: Tributes break in diplomacy dialog if more than one resource is clicked while holding shift..

I think this is the intended behaviour of the author. It lets one tribute more than one resource at a time (what the function already supports).

Thu, Oct 10, 3:57 PM
elexis created D2365: Refactor diplomacy dialog, diplomacy colors, tribute buttons, spy request buttons, attack request buttons, minimap panel, idle worker button, ceasefire counter to use object orientation paradigm.
Thu, Oct 10, 3:56 PM
elexis added a comment to rP19247: Add spying to the game.

False alert for the last comment, can't read, its only hiding the button for allies after seeing their units anyway.
In that case the simulation coulr or should in theory still refuse it for allies after having researched the tech, at least the simulation code usually does check strictly.

Thu, Oct 10, 3:42 PM
elexis added a comment to rP19247: Add spying to the game.

Another concern:
It is possible to use the spies feature without having researched LOS by enabling the button or sending the command via JS terminal (F9), since the GUI but not the simulation checks for it.
If it was a required-tech in the simulation, then the GUI doesnt have to hardcode a hasSharedLos check that can be circumvented by the player arbitrarily (https://trac.wildfiregames.com/wiki/SimulationRequirements#Cheatprevention).
(The required tech tooltip would then also show the has shared los tech in the tooltip, if that requirements parsing / tooltip code wouldnt lack supporting that as well)

Thu, Oct 10, 3:32 PM
elexis added a comment to D2364: Add an option to display ranges when pressing the showstatusbars hotkey.

See ticket and irclogs yesterday, I don't see why this should be an option when it could be a hotkey that allows for the same plus more combination (only persistently showing one of the two)..

Thu, Oct 10, 11:15 AM

Wed, Oct 9

elexis raised a concern with rP16533: new button in diplomacy to request an attack to allies, works also for AIs, fix….
Wed, Oct 9, 9:10 PM
elexis raised a concern with rP19247: Add spying to the game.
Wed, Oct 9, 8:31 PM
elexis added inline comments to rP14496: Removes g_ScriptingHost and implements global to compartment 1 to 1 relation..
Wed, Oct 9, 5:40 PM
elexis added a comment to F1100948: r23063 replay, at min 34, go2die lost 25 naked fanatics due to pathfinding problems at a narrow passage.

Wed, Oct 9, 10:14 AM

Tue, Oct 8

elexis raised a concern with rP23049: Camel riders animations re-export..

I suppose it came from this commit:

ERROR: art/animation/quadraped/camel_death.dae: Assertion not satisfied (line 393): failed requirement "recognised skeleton structure"
ERROR: Could not load animation 'art/animation/quadraped/camel_death.dae'
ERROR: CSkeletonAnimManager::GetAnimation(art/animation/quadraped/camel_death.dae): Failed loading, marked file as bad
Tue, Oct 8, 10:43 PM

Mon, Oct 7

elexis added inline comments to D2362: Use seeding animation.
Mon, Oct 7, 4:08 PM

Sun, Oct 6

elexis updated the diff for D2344: Don't leak GUI Object on name ambiguity, delete PS_ERROR_GUI codes, CGUI::UpdateObjects() and IGUIObject::AddToPointersMap.

Rebase

Sun, Oct 6, 7:44 PM
elexis committed rP23062: Rewrite session chat to use hierarchical object oriented design using class….
Rewrite session chat to use hierarchical object oriented design using class…
Sun, Oct 6, 4:43 PM
elexis closed D2355: Rewrite session chat to use class syntax / object-oriented programming.
Sun, Oct 6, 4:43 PM
elexis added a comment to D2355: Rewrite session chat to use class syntax / object-oriented programming.

Removed global functions:

-function openChat(command = "")
-function closeChat()
-function initChatWindow()
-function resizeChatWindow()
-function updateChatHistory()
-function onToggleChatWindowExtended()
-function updateChatAddressees()
-function submitChatDirectly(text)
-function submitChatInput()
-function removeOldChatMessage()
-function formatDefeatVictoryMessage(message, players)
-function formatDiplomacyMessage(msg)
-function formatTributeMessage(msg)
-function formatBarterMessage(msg)
-function formatAttackMessage(msg)
-function formatPhaseMessage(msg)
-function formatChatCommand(msg)
-function parseChatAddressee(msg)
-function matchUsername(text)

Added classes:

svn diff | grep "^+class\|= class" | sort
+ChatMessageFormatNetwork.clientlist = class
+ChatMessageFormatNetwork.connect = class
+ChatMessageFormatNetwork.disconnect = class
+ChatMessageFormatNetwork.kicked = class
+ChatMessageFormatNetwork.rejoined = class
+ChatMessageFormatSimulation.attack = class
+ChatMessageFormatSimulation.barter = class
+ChatMessageFormatSimulation.diplomacy = class
+ChatMessageFormatSimulation.phase = class
+ChatMessageFormatSimulation.playerstate = class
+ChatMessageFormatSimulation.tribute = class
+ChatMessageHandler.System = class
+class Chat
+class ChatAddressees
+class ChatHistory
+class ChatInput
+class ChatMessageFormatNetwork
+class ChatMessageFormatPlayer
+class ChatMessageFormatSimulation
+class ChatMessageHandler
+class ChatOverlay
+class ChatWindow
Sun, Oct 6, 4:41 PM
elexis added a comment to D1676: Embed zpl-c's version of enet library.

Published with permission of Lefo, following lobby discussion yesterday:

Date: Mon, 23 Sep 2019 19:09:11 +0200
From: Filip Moc
To: Lee Salzman
Subject: Re: IPv6 support for enet
Sun, Oct 6, 4:02 PM
elexis added a comment to D2359: Fix missing round in Looter.

Shouldn't we only round in the GUI?

Sun, Oct 6, 12:52 PM

Sat, Oct 5

elexis added a comment to D2360: Fix entities not retaining repair order after target transforms..

(See also P46)

Sat, Oct 5, 11:27 PM
elexis updated the summary of D2359: Fix missing round in Looter.
Sat, Oct 5, 10:44 PM
elexis created D2359: Fix missing round in Looter.
Sat, Oct 5, 10:43 PM
elexis raised a concern with rP21953: New Kushite Background by Pedro Blanco.

The balcony is not scaled depending on window size while everything else is, so it gives the wrong ratio depending on used window size.

Sat, Oct 5, 10:06 PM
elexis added a comment to D2355: Rewrite session chat to use class syntax / object-oriented programming.

Next upload includes:

Sat, Oct 5, 9:35 PM
elexis added a comment to D2357: Adds ScreenshotWriter to minimise code duplication.

Tested and seems to work on first sight, no compile warnings with clang 8.0.1.

Sat, Oct 5, 8:24 PM
elexis removed 1 auditor(s) for rP22804: Cypresses, maritime pines, emergent teak variant, grasses ptolemaic tower…: minohaka.
Sat, Oct 5, 7:42 PM
elexis removed 1 auditor(s) for rP23040: Elephant re-export and animations for the riders.: elexis.

Thanks for the fix!

Sat, Oct 5, 7:42 PM
elexis added inline comments to D2355: Rewrite session chat to use class syntax / object-oriented programming.
Sat, Oct 5, 7:05 PM
elexis raised a concern with rP22753: Make Promotion.js use the common Transform helper, add resource gatherer and….

https://trac.wildfiregames.com/ticket/5610#comment:6

Sat, Oct 5, 12:45 PM
elexis updated the diff for D2355: Rewrite session chat to use class syntax / object-oriented programming.

Use markForTranslation with chat filters too, fix excess semicolons.

Sat, Oct 5, 12:41 PM
elexis added inline comments to D2355: Rewrite session chat to use class syntax / object-oriented programming.
Sat, Oct 5, 12:37 PM
elexis updated the summary of D2355: Rewrite session chat to use class syntax / object-oriented programming.
Sat, Oct 5, 12:19 PM
elexis created D2355: Rewrite session chat to use class syntax / object-oriented programming.
Sat, Oct 5, 12:13 PM
elexis committed rP23054: Correct button hovering following rP23020 / D2325, clarify difference between….
Correct button hovering following rP23020 / D2325, clarify difference between…
Sat, Oct 5, 11:58 AM
elexis closed D2354: Correct button hovering following rP23020 / D2325, clarify difference between IsMouseOver and IsMouseHovering following rP74.
Sat, Oct 5, 11:58 AM
elexis added a comment to D2354: Correct button hovering following rP23020 / D2325, clarify difference between IsMouseOver and IsMouseHovering following rP74.

Related: CGUI::FindObjectUnderMouse, IGUIObject::ChooseMouseOverAndClosest, but Im totally not touching those now.

Sat, Oct 5, 11:57 AM
vladislavbelov awarded D2354: Correct button hovering following rP23020 / D2325, clarify difference between IsMouseOver and IsMouseHovering following rP74 a Like token.
Sat, Oct 5, 11:52 AM
elexis created D2354: Correct button hovering following rP23020 / D2325, clarify difference between IsMouseOver and IsMouseHovering following rP74.
Sat, Oct 5, 11:46 AM
elexis added a comment to D2353: L3 Ryzen 3000 Bugfix.
In D2353#98374, @Imarok wrote:

I think we now had multiple Zen 2 users complaining about crashes.

Sat, Oct 5, 11:14 AM

Fri, Oct 4

elexis added a reviewer for D2353: L3 Ryzen 3000 Bugfix: Imarok.

It seems like you know more than the rest of us about this issue, you have many facts gathered.

Fri, Oct 4, 11:57 PM
elexis added inline comments to rP23020: Remove virtual inheritance from the codebase, refs rP73, rP141 rP290..
Fri, Oct 4, 11:42 PM
elexis added inline comments to D2325: Remove virtual inheritance.
Fri, Oct 4, 11:41 PM
elexis accepted D2352: Adds containers serialization tests, std::set serialization and movement semantics.

Performed ./test, savegame loading test, rejoin with 2 clients.
Code reads correct, we went through it many times on 2 days with different findings.
Optimizing vector is something that would be good and probably be forgotton unless we work more with the code.

Fri, Oct 4, 11:17 PM
elexis added a comment to D2352: Adds containers serialization tests, std::set serialization and movement semantics.
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:22,
                 from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
../../../source/simulation2/serialization/SerializeTemplates.h:202:67: error: ‘boost::unordered_map’ has not been declared
  202 |  void operator()(ISerializer& serialize, const char* name, boost::unordered_map<K, V>& value)
      |                                                                   ^~~~~~~~~~~~~
../../../source/simulation2/serialization/SerializeTemplates.h:202:80: error: expected ‘,’ or ‘...’ before ‘<’ token
  202 |  void operator()(ISerializer& serialize, const char* name, boost::unordered_map<K, V>& value)
      |                                                                                ^
../../../source/simulation2/serialization/SerializeTemplates.h:209:71: error: ‘boost::unordered_map’ has not been declared
  209 |  void operator()(IDeserializer& deserialize, const char* name, boost::unordered_map<K, V>& value)
      |                                                                       ^~~~~~~~~~~~~
../../../source/simulation2/serialization/SerializeTemplates.h:209:84: error: expected ‘,’ or ‘...’ before ‘<’ token
  209 |  void operator()(IDeserializer& deserialize, const char* name, boost::unordered_map<K, V>& value)
      |                                                                                    ^
../../../source/simulation2/serialization/SerializeTemplates.h: In member function ‘void SerializeUnorderedMap<KS, VS>::operator()(ISerializer&, const char*, int)’:
../../../source/simulation2/serialization/SerializeTemplates.h:204:32: error: ‘value’ was not declared in this scope
  204 |   std::map<K, V> ordered_value(value.begin(), value.end());
      |                                ^~~~~
../../../source/simulation2/serialization/SerializeTemplates.h: In member function ‘void SerializeUnorderedMap<KS, VS>::operator()(IDeserializer&, const char*, int)’:
../../../source/simulation2/serialization/SerializeTemplates.h:211:45: error: ‘value’ was not declared in this scope
  211 |   SerializeMap<KS, VS>()(deserialize, name, value);
      |                                             ^~~~~
make[1]: *** [test.make:1307: obj/test_Release/test_SerializeTemplates.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:187: test] Error 2
make: *** Waiting for unfinished jobs....
Fri, Oct 4, 10:46 PM
elexis added a comment to rP23040: Elephant re-export and animations for the riders..

Well I dont know if Im misattributing the above error from a different / old commit when pasting from Jenkins, but when I run the checkrefs script manually I get this:

Fri, Oct 4, 9:59 PM
elexis raised a concern with rP23040: Elephant re-export and animations for the riders..

If you commit something, please check what Jenkins says (https://jenkins.wildfiregames.com/)

Duplicate terrain name 'medit_city_tile' (from 'art/terrains/biome-mediterranean/medit_city_tile.xml' and 'art/terrains/road/medit_city_tile.xml')
Missing file 'art/animation/biped/formations/testudo/front_left_walk.dae' referenced by: 'public/art/variants/biped/formations/testudo_front_left.xml', 'public/art/variants/biped/formations/testudo_front_left.xml', 'public/art/variants/biped/formations/testudo_front_left.xml'
Missing file 'art/animation/biped/new/death_a.dae' referenced by: 'public/art/variants/biped/fisher/base.xml'
Missing file 'art/animation/biped/new/death_b.dae' referenced by: 'public/art/variants/biped/fisher/base.xml'
Missing file 'art/animation/biped/new/death_rider_elephant_african.dae' referenced by: 'public/art/actors/props/units/capes/rider/elephant_driver_african.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_african.xml', 'public/art/variants/biped/rider/elephantry/african_turret_death.xml', 'public/art/variants/biped/rider/elephantry/african_turret_death.xml'
Missing file 'art/animation/biped/new/death_rider_elephant_asian.dae' referenced by: 'public/art/actors/props/units/capes/rider/elephant_driver_asian.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_asian.xml', 'public/art/variants/biped/rider/elephantry/asian_turret_death.xml', 'public/art/variants/biped/rider/elephantry/asian_turret_death.xml'
Missing file 'art/animation/biped/new/hoplite_idle_relax.dae' referenced by: 'public/art/actors/props/units/capes/rider/elephant_driver_african.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_african.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_african.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_african.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_african.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_african.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_african.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_asian.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_asian.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_asian.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_asian.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_asian.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_asian.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_asian.xml'
Missing file 'art/animation/biped/new/onager_attack_a.dae' referenced by: 'public/art/actors/units/romans/onager_operator_a.xml'
Missing file 'art/animation/biped/new/onager_attack_b.dae' referenced by: 'public/art/actors/units/romans/onager_operator_b.xml'
Missing file 'art/animation/biped/new/onager_attack_c.dae' referenced by: 'public/art/actors/units/romans/onager_operator_c.xml'
Missing file 'art/animation/biped/new/onager_idle_a.dae' referenced by: 'public/art/actors/units/romans/onager_operator_a.xml'
Missing file 'art/animation/biped/new/onager_idle_b.dae' referenced by: 'public/art/actors/units/romans/onager_operator_b.xml'
Missing file 'art/animation/biped/new/onager_idle_c.dae' referenced by: 'public/art/actors/units/romans/onager_operator_c.xml'
Missing file 'art/animation/biped/new/pike_idle_relax.dae' referenced by: 'public/art/actors/props/units/capes/rider/elephant_driver_african.xml', 'public/art/actors/props/units/capes/rider/elephant_driver_asian.xml', 'public/art/actors/units/mauryas/hero_chariot_archer_ashoka_r_parasol.xml'
Missing file 'art/animation/biped/rider/cavalry/spearman/attack_shield_stab_reverse_d.dae' referenced by: 'public/art/variants/biped/rider/cavalry/base_spearman_shield_reverse_attack.xml'
Missing file 'art/textures/skins/props/shield/aspis_spart_lambda_07.png' referenced by: 'public/art/variants/shields/spart_aspis_h_01.xml'
Fri, Oct 4, 8:28 PM
elexis added a comment to D2352: Adds containers serialization tests, std::set serialization and movement semantics.

I think I forgot to run update-workspaces.sh for the error above, but now I get this:

In file included from ../../../source/simulation2/components/CCmpObstruction.cpp:29:
../../../source/simulation2/serialization/SerializeTemplates.h:51:11: error: explicit specialization in non-namespace scope ‘struct SerializeVector<ELEM>’
   51 |  template<>
      |           ^
make[1]: *** [simulation2.make:257: obj/simulation2_Release/CCmpObstruction.o] Error 1
make[1]: *** Waiting for unfinished jobs....
==== Building AtlasObject (release) ====
==== Building cxxtestroot (release) ====
Generating test root file
/home/elexis/code/0ad-svn/trunk/libraries/source/cxxtest-4.4/bin/cxxtestgen --root  --include=precompiled.h --include=lib/external_libraries/libsdl.h --runner=ErrorPrinter -o /home/elexis/code/0ad-svn/trunk/source/test_root.cpp
==== Building AtlasUI (release) ====
==== Building ActorEditor (release) ====
In file included from ../../../source/simulation2/components/CCmpAIManager.cpp:46:
../../../source/simulation2/serialization/SerializeTemplates.h:51:11: error: explicit specialization in non-namespace scope ‘struct SerializeVector<ELEM>’
   51 |  template<>
      |           ^
make[1]: *** [simulation2.make:236: obj/simulation2_Release/CCmpAIManager.o] Error 1
make: *** [Makefile:97: simulation2] Error 2
Fri, Oct 4, 7:16 PM
elexis added a comment to D2352: Adds containers serialization tests, std::set serialization and movement semantics.
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:45:14: error: member access into incomplete type 'IDeserializer'
                deserialize.NumberU32_Unbounded("length", len);
                           ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:56:14: error: member access into incomplete type 'IDeserializer'
                deserialize.NumberU32_Unbounded("length", len);
                           ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:100:14: error: member access into incomplete type 'IDeserializer'
                deserialize.NumberU32_Unbounded("length", len);
                           ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:105:15: error: member access into incomplete type 'IDeserializer'
                        deserialize.NumberU32_Unbounded("#", count);
                                   ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:130:14: error: member access into incomplete type 'IDeserializer'
                deserialize.NumberU32_Unbounded("size", size);
                           ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:174:14: error: member access into incomplete type 'IDeserializer'
                deserialize.NumberU32_Unbounded("length", len);
                           ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:192:14: error: member access into incomplete type 'IDeserializer'
                deserialize.NumberU32_Unbounded("length", len);
                           ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:209:67: error: no template named 'unordered_map' in namespace 'boost'
        void operator()(ISerializer& serialize, const char* name, boost::unordered_map<K, V>& value)
                                                                  ~~~~~~~^
../../../source/simulation2/serialization/SerializeTemplates.h:216:71: error: no template named 'unordered_map' in namespace 'boost'
        void operator()(IDeserializer& deserialize, const char* name, boost::unordered_map<K, V>& value)
                                                                      ~~~~~~~^
../../../source/simulation2/serialization/SerializeTemplates.h:233:14: error: member access into incomplete type 'IDeserializer'
                deserialize.NumberU8(name, val, 0, max);
                           ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:230:58: warning: unused parameter 'name' [-Wunused-parameter]
        void operator()(IDeserializer& deserialize, const char* name, T& value)
                                                                ^
../../../source/simulation2/serialization/SerializeTemplates.h:247:14: error: member access into incomplete type 'IDeserializer'
                deserialize.NumberU8_Unbounded(name, value);
                           ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:245:58: warning: unused parameter 'name' [-Wunused-parameter]
        void operator()(IDeserializer& deserialize, const char* name, u8& value)
                                                                ^
../../../source/simulation2/serialization/SerializeTemplates.h:245:68: warning: unused parameter 'value' [-Wunused-parameter]
        void operator()(IDeserializer& deserialize, const char* name, u8& value)
                                                                          ^
../../../source/simulation2/serialization/SerializeTemplates.h:260:14: error: member access into incomplete type 'IDeserializer'
                deserialize.NumberU16_Unbounded(name, value);
                           ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:258:58: warning: unused parameter 'name' [-Wunused-parameter]
        void operator()(IDeserializer& deserialize, const char* name, u16& value)
                                                                ^
../../../source/simulation2/serialization/SerializeTemplates.h:258:69: warning: unused parameter 'value' [-Wunused-parameter]
        void operator()(IDeserializer& deserialize, const char* name, u16& value)
                                                                           ^
../../../source/simulation2/serialization/SerializeTemplates.h:273:14: error: member access into incomplete type 'IDeserializer'
                deserialize.NumberU32_Unbounded(name, value);
                           ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:271:58: warning: unused parameter 'name' [-Wunused-parameter]
        void operator()(IDeserializer& deserialize, const char* name, u32& value)
                                                                ^
../../../source/simulation2/serialization/SerializeTemplates.h:271:69: warning: unused parameter 'value' [-Wunused-parameter]
        void operator()(IDeserializer& deserialize, const char* name, u32& value)
                                                                           ^
../../../source/simulation2/serialization/SerializeTemplates.h:286:14: error: member access into incomplete type 'IDeserializer'
                deserialize.NumberI32_Unbounded(name, value);
                           ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:284:58: warning: unused parameter 'name' [-Wunused-parameter]
        void operator()(IDeserializer& deserialize, const char* name, i32& value)
                                                                ^
../../../source/simulation2/serialization/SerializeTemplates.h:284:69: warning: unused parameter 'value' [-Wunused-parameter]
        void operator()(IDeserializer& deserialize, const char* name, i32& value)
                                                                           ^
../../../source/simulation2/serialization/SerializeTemplates.h:299:14: error: member access into incomplete type 'IDeserializer'
                deserialize.Bool(name, value);
                           ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:297:58: warning: unused parameter 'name' [-Wunused-parameter]
        void operator()(IDeserializer& deserialize, const char* name, bool& value)
                                                                ^
../../../source/simulation2/serialization/SerializeTemplates.h:297:70: warning: unused parameter 'value' [-Wunused-parameter]
        void operator()(IDeserializer& deserialize, const char* name, bool& value)
                                                                            ^
../../../source/simulation2/serialization/SerializeTemplates.h:312:14: error: member access into incomplete type 'IDeserializer'
                deserialize.StringASCII(name, value, 0, UINT32_MAX);
                           ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:310:58: warning: unused parameter 'name' [-Wunused-parameter]
        void operator()(IDeserializer& deserialize, const char* name, std::string& value)
                                                                ^
../../../source/simulation2/serialization/SerializeTemplates.h:310:77: warning: unused parameter 'value' [-Wunused-parameter]
        void operator()(IDeserializer& deserialize, const char* name, std::string& value)
                                                                                   ^
../../../source/simulation2/serialization/SerializeTemplates.h:326:14: error: member access into incomplete type 'IDeserializer'
                deserialize.NumberFixed_Unbounded("waypoint x", value.x);
                           ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:327:14: error: member access into incomplete type 'IDeserializer'
                deserialize.NumberFixed_Unbounded("waypoint z", value.z);
                           ^
../../../source/simulation2/system/IComponent.h:31:7: note: forward declaration of 'IDeserializer'
class IDeserializer;
      ^
In file included from ../../../source/simulation2/tests/test_SerializeTemplates.cpp:17:
In file included from /home/elexis/code/0ad-svn/trunk/source/simulation2/tests/test_SerializeTemplates.h:23:
../../../source/simulation2/serialization/SerializeTemplates.h:324:82: warning: unused parameter 'value' [-Wunused-parameter]
        void operator()(IDeserializer& deserialize, const char* UNUSED(name), Waypoint& value)
                                                                                        ^
14 warnings and 18 errors generated.
make[1]: *** [test.make:1307: obj/test_Release/test_SerializeTemplates.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:187: test] Error 2
make: *** Waiting for unfinished jobs....
Fri, Oct 4, 7:10 PM
elexis raised a concern with rP23012: Fix bonus multiplier issue in rP22754 (multiple attack effects) and consider….
  1. error messages see https://code.wildfiregames.com/rP23012#38687

WARNING: CCmpRangeManager: No owners in query for entity 0
when you choose a female farmer to build a house with a male soldier in the game, this warning will appear
If only GAIA is to be considered, this range check won't have any players.

Fri, Oct 4, 12:17 PM
elexis added a comment to D2352: Adds containers serialization tests, std::set serialization and movement semantics.

(Two requested changes: one reserve function for set deserialization and a specialization of bool vector (since I suppose the serialization code shouldn't forbid using the type), where the vector<bool> code is the current code without move semantics and the specialization is the one with resize to avoid the std::move too (std::move often is only a 50% improvement if one can change the code to avoid the transfer altogether). Should be 5 more lines of code. (See also http://irclogs.wildfiregames.com/2019-10/2019-10-03-QuakeNet-%230ad-dev.log ))

Fri, Oct 4, 12:10 PM

Thu, Oct 3

elexis added a comment to D2353: L3 Ryzen 3000 Bugfix.

Play the game with an Ryzen 3000 CPU.

I don't think anyone on the team has that CPU, so we cannot perform the testplan.

Thu, Oct 3, 11:05 PM
elexis updated the Trac tickets for D2353: L3 Ryzen 3000 Bugfix.
Thu, Oct 3, 10:39 PM
elexis added inline comments to D2352: Adds containers serialization tests, std::set serialization and movement semantics.
Thu, Oct 3, 10:33 PM
elexis added a comment to D2353: L3 Ryzen 3000 Bugfix.

This #4360?

Thu, Oct 3, 10:11 PM
elexis added inline comments to D2352: Adds containers serialization tests, std::set serialization and movement semantics.
Thu, Oct 3, 9:55 PM
elexis added inline comments to D2352: Adds containers serialization tests, std::set serialization and movement semantics.
Thu, Oct 3, 7:36 PM
elexis added a comment to D2352: Adds containers serialization tests, std::set serialization and movement semantics.

Looks very appealing and useful, and I don't see any mistake in the added lines.

Thu, Oct 3, 7:30 PM
elexis added a comment to P169 Repairable class.

Class keyword was used in by me in rP22923, rP22985, rP22854, by wraitii in rP2301 https://code.wildfiregames.com/D2337?id=10007

Thu, Oct 3, 7:20 PM
elexis awarded D2352: Adds containers serialization tests, std::set serialization and movement semantics a Like token.
Thu, Oct 3, 7:12 PM