Page MenuHomeWildfire Games

smiley (M.L)
User

Projects

User Details

User Since
Jan 31 2018, 11:59 AM (64 w, 2 d)

3/2/19

Recent Activity

Yesterday

smiley added a comment to D1846: Let mods prevent resources from being bartered, traded and/or tributed..

(A certain other project also has this feature implemented. Mostly irrelevant, but if this is not committed before the first release, it might be of some interest)

Thu, Apr 25, 11:31 AM

Wed, Apr 24

smiley added a comment to D1846: Let mods prevent resources from being bartered, traded and/or tributed..

Angen also have a patch doing this. See the mythology mod.

Wed, Apr 24, 9:20 PM
smiley added inline comments to rP22219: Const-Correct the long range pathfinder.
Wed, Apr 24, 9:15 PM

Tue, Apr 23

smiley added inline comments to D1631: TileClass optimization..
Tue, Apr 23, 7:21 AM

Mon, Apr 22

smiley added inline comments to D1631: TileClass optimization..
Mon, Apr 22, 10:55 AM
smiley added inline comments to D1631: TileClass optimization..
Mon, Apr 22, 10:26 AM
smiley added a comment to D1631: TileClass optimization..
Mon, Apr 22, 10:19 AM

Tue, Apr 16

smiley added inline comments to D1769: Do not mark unit as injured when receives 0 damage.
Tue, Apr 16, 6:47 PM
smiley added inline comments to D1769: Do not mark unit as injured when receives 0 damage.
Tue, Apr 16, 5:19 PM

Fri, Apr 12

smiley added a comment to D1822: Handle hotkey to order only one unit on minimap.

I still have no clue what this feature is? Does it allow giving order to one unit even though you have multiple selections?

Fri, Apr 12, 8:17 AM · Contributors
smiley added a comment to D1637: BoolArray array wrapper..

80% improvement on some maps. Already decided. As mentioned before, js “pureness” is a moot point. Take what you can.

Fri, Apr 12, 8:14 AM

Sun, Apr 7

smiley added inline comments to rP13472: Write mod data correctly. Fixes #1940..
Sun, Apr 7, 8:12 PM
smiley added a comment to D1637: BoolArray array wrapper..

(Maybe add an iterator?, for something like tileclasses, it may not be relevant, but I assumed this was not to be restricted rmgen/ )

Sun, Apr 7, 6:28 PM
smiley added inline comments to rP13472: Write mod data correctly. Fixes #1940..
Sun, Apr 7, 6:14 PM
smiley added inline comments to rP13472: Write mod data correctly. Fixes #1940..
Sun, Apr 7, 5:51 PM

Fri, Apr 5

smiley added a comment to D1637: BoolArray array wrapper..

But for 15% I'm not so convinced that it's necessary to sacrifice JS pureness.

Somewhere between 30% (most cases) to 50% faster.
Of course, it depends on how much mapgen is spent in tileclasses. Some maps spend more times in placers. But for a giant Ambush map, the 30% was 86 seconds. So, mixed feelings about this. But, you never know until you write code.

Fri, Apr 5, 7:38 PM
smiley added a comment to D1637: BoolArray array wrapper..

(I assume you have checked the other sizes. There is a tradeoff between faster iteration and the number of false negatives.)

Fri, Apr 5, 6:56 PM
smiley added a comment to D1637: BoolArray array wrapper..

Tileclass patch refers to actually using this thing. And there are a few cleanups in there like nuking rangeOP. But the whole performance improvement is the direct result of solely using this.

Fri, Apr 5, 5:40 PM
smiley added a comment to D1637: BoolArray array wrapper..

A giant mainland map doesn’t really prove it. A large grid with a few points is what mainland offers and is exactly what the bool array method excels at. I wonder how it would perform in a grid where it would have to go to the bit-by-bit check quite frequently.

Fri, Apr 5, 4:47 PM
smiley added inline comments to D1637: BoolArray array wrapper..
Fri, Apr 5, 1:54 PM
smiley added a comment to D1637: BoolArray array wrapper..

The tileclass optimization patch is using this patch only. So, the performance improvement is a direct result of using this. Or we can always write a new data structure that can eliminate half the remaining grid on each iteration.

Fri, Apr 5, 7:40 AM

Thu, Apr 4

smiley added a comment to D1637: BoolArray array wrapper..

how much it would add (more than nanis patch? so much more that it's worth sacrificing the JS-pureness?).

Thu, Apr 4, 11:20 PM

Mon, Apr 1

smiley added a comment to D1637: BoolArray array wrapper..

Well yes. The current TileClass.js uses wrong values for the rangeOP. The way I tested it, there would have been no false results like that. That was how the error was found, so I guess the methodology is correct.

Mon, Apr 1, 3:20 PM
smiley added a comment to D1637: BoolArray array wrapper..

whether it's feasible at all (may not result in a JS/C++ interface overhead bottleneck), and if it is,

Back then, I started implementing it in a way which does not expose any tile class to js.
It would have worked something like,

Engine.AddTileClass(ID, size);
Engine.AddToTileClass(ID, [p, q, r]);
Engine.TileClassGetPointsInRadius(ID, p, radius);
Mon, Apr 1, 11:10 AM
smiley added a comment to D1637: BoolArray array wrapper..

There is a mismatch between the < 27 and >= 27 code path, creating different maps, nani had investigated it too. It would be good to know which one of the two is wrong in order to fix it if it's the one we keep.

I guess you would be out of the loop on this one. But the 27 mismatch was found. And I failed to find any mismatches. But nani claimed that he found mismatches in water maps (only). (This was independent work from both sides, so it is hard to establish conclusions).
Regarding, rangeOP, I have plans to replace it with something working on the same principle but much clearer. But, that is not likely in the near future.

Mon, Apr 1, 10:56 AM

Sun, Mar 31

smiley added a comment to D1637: BoolArray array wrapper..

Since I was mentioned here and all of this has been discussed with the author before.
Using this would be a significant improvement. Especially for tileclasses. Since it allows eliminating up to 16 tiles in one iteration. This was confirmed by both of us.
Regarding the 27. Just revert the commit that introduced it. Only rangeOp existed initially. And the mismatch issue was found. (I could not reproduce the mismatch you mentioned on water maps, which really does not make any sense to me).
And I proposed moving the tileclasses to c++.

Sun, Mar 31, 11:04 PM
D1414: Make ClumpPlacer determine the correct fraction of failed attempts to place points now requires review to proceed.

(I am just removing this from the queue of people who actually can do something)

Sun, Mar 31, 8:51 PM

Sat, Mar 30

smiley removed 1 auditor(s) for rP21441: Create winning teams for relic and wonder victory instead of letting all allies…: smiley.
Sat, Mar 30, 9:36 PM
smiley removed 1 auditor(s) for rP21378: Allow units to be positioned with freehand placement: smiley.

so I don't see anything wrong....

Ok.

Sat, Mar 30, 9:35 PM
smiley removed 1 auditor(s) for rP21026: Cleanup TileClass prototype and use vector arguments for countInRadius…: smiley.
Sat, Mar 30, 9:33 PM

Mar 25 2019

smiley changed the visibility for P125 smileys mapgen noise generator.
Mar 25 2019, 8:52 PM

Mar 24 2019

nani awarded P133 Attempt at a better UI for external links a Pirate Logo token.
Mar 24 2019, 8:30 PM

Feb 2 2019

smiley added inline comments to D1718: Decay/regenerate option for resources when not being gathered from.
Feb 2 2019, 7:52 PM
smiley added inline comments to D1718: Decay/regenerate option for resources when not being gathered from.
Feb 2 2019, 7:19 PM
smiley added inline comments to D1718: Decay/regenerate option for resources when not being gathered from.
Feb 2 2019, 7:16 PM
smiley added a comment to rP21847: Rewrite the prelobby pages and add the Terms of Service, Terms of Use and the….

(In the while condition? Is that even legal? I'm currently stuck in c++ bytestream hell otherwise I'd have tested or looked up.)

Probably not. (Feeling too meh to test)
Edit: Yes, it is not legal.

Feb 2 2019, 3:18 PM
smiley added a comment to rP21847: Rewrite the prelobby pages and add the Terms of Service, Terms of Use and the….

Then there's the hypothetical race condition where the user doubleclicks on some XmppClient initialization button twice before it's disabled. But that should be caught already

Evidently, it is not. That is exactly the problem (at least that’s the gist of it.)

Feb 2 2019, 1:55 PM
smiley added inline comments to rP21847: Rewrite the prelobby pages and add the Terms of Service, Terms of Use and the….
Feb 2 2019, 12:52 PM
smiley added a comment to rP21847: Rewrite the prelobby pages and add the Terms of Service, Terms of Use and the….

Seems like the first steps and the observed problem are missing.

Not registration, just when logging in. Although, the problem would probably exist then as well. The problem is a second xmpp client being created while the earlier one is logging in. And hence an assertion failure.

Feb 2 2019, 12:39 PM

Feb 1 2019

smiley added inline comments to rP21847: Rewrite the prelobby pages and add the Terms of Service, Terms of Use and the….
Feb 1 2019, 6:11 PM
smiley added a comment to rP21847: Rewrite the prelobby pages and add the Terms of Service, Terms of Use and the….

Press continue, click and accept any of the prelobby docs, see that the continue button is enabled again and press it.

Feb 1 2019, 6:07 PM
smiley added inline comments to rP22075: Health.js cleanup. Fixes Vulkan complaints.
Feb 1 2019, 7:32 AM
smiley added inline comments to D1764: Dynamically sizes the dataCounter overlay.
Feb 1 2019, 6:46 AM

Jan 31 2019

smiley added inline comments to D1718: Decay/regenerate option for resources when not being gathered from.
Jan 31 2019, 2:37 PM

Jan 29 2019

smiley added inline comments to D1718: Decay/regenerate option for resources when not being gathered from.
Jan 29 2019, 4:18 PM
smiley added inline comments to D1718: Decay/regenerate option for resources when not being gathered from.
Jan 29 2019, 1:53 PM
smiley added inline comments to D1718: Decay/regenerate option for resources when not being gathered from.
Jan 29 2019, 12:25 PM
smiley added inline comments to D1718: Decay/regenerate option for resources when not being gathered from.
Jan 29 2019, 5:08 AM

Jan 28 2019

smiley added inline comments to D1718: Decay/regenerate option for resources when not being gathered from.
Jan 28 2019, 3:24 PM
smiley added inline comments to D1718: Decay/regenerate option for resources when not being gathered from.
Jan 28 2019, 3:21 PM

Jan 27 2019

smiley added inline comments to D1718: Decay/regenerate option for resources when not being gathered from.
Jan 27 2019, 8:23 PM
smiley resigned from D1718: Decay/regenerate option for resources when not being gathered from.
Jan 27 2019, 8:01 PM
smiley reclaimed D1718: Decay/regenerate option for resources when not being gathered from.

Try now.

Jan 27 2019, 7:53 PM
smiley added a comment to D1755: Fix line misaligment in gamesetup settings..

Does look correct now apart from this one thing.
(Would accept the revision but that would be pretty meaningless.)

Jan 27 2019, 7:00 PM
smiley added inline comments to D1764: Dynamically sizes the dataCounter overlay.
Jan 27 2019, 4:20 PM
smiley added inline comments to D1767: Rewrite Profiler2's GUI using highcharts.
Jan 27 2019, 2:41 PM
smiley added inline comments to D1767: Rewrite Profiler2's GUI using highcharts.
Jan 27 2019, 2:39 PM
smiley retitled D1764: Dynamically sizes the dataCounter overlay from Fixes FPS overlay bug in the Bulgarian language to Dynamically sizes the dataCounter overlay.
Jan 27 2019, 2:03 PM
smiley added inline comments to D1764: Dynamically sizes the dataCounter overlay.
Jan 27 2019, 1:51 PM
smiley added a comment to D1764: Dynamically sizes the dataCounter overlay.

Add yourself to gui/credits/text/programming.json (path might be wrong).
And also remove the unnecessary three files from the diff. Only needs the changed JS file.

Jan 27 2019, 1:50 PM
smiley added inline comments to D1755: Fix line misaligment in gamesetup settings..
Jan 27 2019, 5:02 AM

Jan 26 2019

smiley added inline comments to D1766: Buildings shortcuts / hotkeys.
Jan 26 2019, 4:26 PM
smiley added inline comments to D1766: Buildings shortcuts / hotkeys.
Jan 26 2019, 3:52 PM
smiley added inline comments to D1766: Buildings shortcuts / hotkeys.
Jan 26 2019, 3:51 PM
smiley added a comment to D1766: Buildings shortcuts / hotkeys.

(Anyone else thinks merging building hotkeys and training hotkeys is a good idea?)

Jan 26 2019, 3:47 PM

Jan 25 2019

smiley added a comment to D1763: Removes duplication of Clamp function.
In D1763#71069, @smiley wrote:

(Re: ssize_t to size_t
I thought that this was discouraged since it can introduce subtle bugs.
Google's C++ style guide also mentions something like this)

Yeah, we discusses about it yesterday with Stan. The problem is that ssize_t is used as size_t in some places.

Jan 25 2019, 9:45 PM
smiley added a comment to D1763: Removes duplication of Clamp function.

(Re: ssize_t to size_t
I thought that this was discouraged since it can introduce subtle bugs.
Google's C++ style guide also mentions something like this)

Jan 25 2019, 9:27 PM
smiley added a comment to D1764: Dynamically sizes the dataCounter overlay.

I think the same problem exists with some playernames in the lag-warnings area too.

It won't exist there as the width check is done in that specific case.

Jan 25 2019, 7:22 PM
smiley added a comment to D1764: Dynamically sizes the dataCounter overlay.

Removing one arbitrary number with another arbitrary number can fix this.

Index: binaries/data/mods/public/gui/common/functions_global_object.js
===================================================================
--- binaries/data/mods/public/gui/common/functions_global_object.js	(revision 21929)
+++ binaries/data/mods/public/gui/common/functions_global_object.js	(working copy)
@@ -17,9 +17,9 @@
 	dataCounter.caption = counters.join("\n") + "\n";
 	dataCounter.hidden = !counters.length;
 	dataCounter.size = sprintf("%(left)s %(top)s %(right)s %(bottom)s", {
-		"left": "100%%-100",
+		"left": "100%-110",
 		"top": "40",
-		"right": "100%%-5",
+		"right": "100%-5",
 		"bottom": 40 + 14 * counters.length
 	});
 }

However, this would also break given a lengthy enough string. The correct solution would be to adapt the sizes based on the width of the longest string just as how it's done for the network warning thingy. Engine.GetTextWidth(font, string) IIRC.

Jan 25 2019, 7:14 PM
smiley added a comment to D1763: Removes duplication of Clamp function.

(One can argue that something worse than an inconsistent code base is inconsistency within a single file. But then again, such arguments are probably what led to this situation in the first place)

Jan 25 2019, 3:04 PM

Jan 23 2019

smiley added a comment to D1496: Combat Variant.

Due to the lack of context I can’t be sure, but is the variant reset upon leaving the state?

Jan 23 2019, 1:36 PM

Jan 21 2019

smiley added inline comments to D1746: Network Dialog / Troll removal device.
Jan 21 2019, 5:32 PM
smiley added inline comments to D1746: Network Dialog / Troll removal device.
Jan 21 2019, 3:30 PM
smiley requested changes to D1755: Fix line misaligment in gamesetup settings..

Why this does not led to the issue before the commit that has the concern raised?
Previously, the sizes of the two panel would be adjusted onTick in updateSettingsPanelPosition.

let settingsBackground = Engine.GetGUIObjectByName("settingsBackground");
let backgroundSize = settingsBackground.size;
backgroundSize.left = settingsPanelSize.left;
settingsBackground.size = backgroundSize;

But now, if the offset is 0, that code would not be reached.

Jan 21 2019, 8:50 AM

Jan 20 2019

smiley added a comment to D1756: #loadingordermatters.

Could be a lot for people who save their games quite often.

Jan 20 2019, 8:27 PM
smiley added a comment to D1754: Pass an argument to GUI events / SendEventToAll, remove loading screen progess workaround.

(*Fork AD. No 0)

Jan 20 2019, 8:26 PM
smiley added a comment to D1734: Merge entity templates.

*commit archeology intensifies*

Jan 20 2019, 5:54 PM
smiley added a comment to D1460: Add an experience status bar.

I suppose the AI is not receiving this message because IIRC it only receives those that it explicitly copies.

Jan 20 2019, 5:02 PM
smiley raised a concern with rP21378: Allow units to be positioned with freehand placement.

I don't know whether this is an oversight or intended behavior that a Vector will be holding strings. If it's the latter, then it should not mutate the vector but return a string. Warrants a concern whichever one it may be IMO.
Also, the inline comment highlights the result of what the current code can do for someone caught off-guard.

Jan 20 2019, 11:05 AM
smiley added inline comments to D1576: Refactor CBoundingSphere and add tests.
Jan 20 2019, 10:09 AM
smiley added a comment to D1746: Network Dialog / Troll removal device.

(Obligatory comment about num_clients/num_cities * 100 and how the current approach seems so wasteful even after ignoring player distributions and whatnot.)

Jan 20 2019, 10:07 AM

Jan 19 2019

smiley added inline comments to D1576: Refactor CBoundingSphere and add tests.
Jan 19 2019, 7:17 PM
smiley added a comment to D1746: Network Dialog / Troll removal device.

(mail)

Jan 19 2019, 2:21 PM
smiley added a comment to D1746: Network Dialog / Troll removal device.

Lat/lon and distance is probably too much. An individual possessing the skills necessary to do it doesn't warrant making it available for the masses.
Although, I guess everyone knows how to look at a map and find the flag of the country in the list. Which raises the same "concern" about city.

Jan 19 2019, 2:21 PM
smiley added a comment to D1251: Throw errors when encountering NaN vectors.
In D1251#70539, @Stan wrote:

Wouldn't hurt to have this. What is missing ?

Jan 19 2019, 2:09 PM

Jan 18 2019

smiley abandoned D1688: Ignore entities out of the passable map area in GetLandSpawnPoints.
Jan 18 2019, 11:30 AM
smiley added a comment to D1688: Ignore entities out of the passable map area in GetLandSpawnPoints.
In D1688#70268, @smiley wrote:

I guess MapReader should do the same check before placing an entity.

Jan 18 2019, 11:30 AM

Jan 16 2019

smiley added a comment to D1749: Update AI difficulty level description..

(One might say that the info is badly placed. The better place would have been the gamesetup config pop-up itself. But that’s out of scope.)

Jan 16 2019, 3:34 PM

Jan 15 2019

smiley added inline comments to D1642: Allow to manipulate the heightmap in simulation.
Jan 15 2019, 12:20 PM
smiley added a comment to D1718: Decay/regenerate option for resources when not being gathered from.

(The patch is still here and can be commited if you want)

Jan 15 2019, 12:04 PM
smiley resigned from D1704: Consistent starting resources and customizable population cap for scenarios.

I would also like to apologise for the misunderstanding earlier. It wasn’t meant to say “your patch sucks”. It was meant to point you at the underlying bug without conflicting with the game design.

Jan 15 2019, 9:03 AM
smiley resigned from D1692: Reset selection in findIdleUnits even if no units are idle.
Jan 15 2019, 9:00 AM
smiley added inline comments to D1642: Allow to manipulate the heightmap in simulation.
Jan 15 2019, 8:58 AM
smiley added a comment to D1724: Cleanup ExtractFormations in Commands.js.

This should be commited before upgrading to whatever SM version corresponds to FF58.

Jan 15 2019, 8:56 AM
smiley added a comment to D1577: Harbor rewrite.

This diff is with changes to the shape of the harbor to minimise perfect circles ftw. If that’s bad, I am sure there would be a DiskPlacer changed to ClumpPlacer somewhere.

Jan 15 2019, 8:51 AM
smiley added a comment to D1688: Ignore entities out of the passable map area in GetLandSpawnPoints.

I guess MapReader should do the same check before placing an entity.

Jan 15 2019, 8:47 AM
smiley added inline comments to D1677: [Minor cleanup] Use typed arrays where possible and worth it..
Jan 15 2019, 8:45 AM
smiley added a comment to D1729: Missing tileclass in archipelago.

I am like 93.24% sure this issue would exist in another form in at least one other map.

Jan 15 2019, 8:43 AM
smiley abandoned D1718: Decay/regenerate option for resources when not being gathered from.

Doesn’t seem like the current gameplay design needs this.
Regarding the patch itself if a modder is interested.
It’s missing a max check.

Jan 15 2019, 8:41 AM
smiley resigned from D1731: Allow to use multiple technologies as requirements for unit training and construction.

The concerns I raised seems to be fixed. At least the id one. IDK about the _string one.

Jan 15 2019, 8:37 AM