Page MenuHomeWildfire Games

smiley (M.L)
User

Projects

User Details

User Since
Jan 31 2018, 11:59 AM (193 w, 3 d)

Probably won't log in again

Recent Activity

Aug 29 2021

smiley added a comment to D4212: Random Maps: scale by map area.

It also should be noted that the fractionsTo and ToFractions group of functions are derived from AoE map API, more specifically AoE3 from what I can tell, where tiles are not as prevalent as fractions. For instance, in AoE3 map scripts, the center is .5, .5 .

Aug 29 2021, 8:04 AM

Aug 27 2021

smiley added a comment to D4232: Random maps: Balanced resources.

From a technical standpoint, I guess you are trying to replicate AoE2 style distribution where the base resources of berries, 2 boars, etc. In that case, rather than making a swiss army knife of a function for N cases, it might be better to incorporate this into player placement.

Aug 27 2021, 9:05 PM
smiley added a comment to D4232: Random maps: Balanced resources.

As for potentials, as mentioned before, I don't really want to consider too much, mostly because my vision for the entire thing has changed.

Aug 27 2021, 3:43 PM
smiley added inline comments to D4232: Random maps: Balanced resources.
Aug 27 2021, 3:36 PM

Aug 17 2021

smiley accepted D4212: Random Maps: scale by map area.

It now does what it says on the tin.
It doesn't contradict or goes against any conventions or approaches currently used.

Aug 17 2021, 12:49 PM

Aug 15 2021

smiley added a comment to D3807: [POC] Support JS promises.

Hypothetically, if someone implemented better procedural map generation, this would be extremely beneficial.

Aug 15 2021, 11:19 AM

Aug 11 2021

smiley added a comment to D4212: Random Maps: scale by map area.

I plan on writing an entirely new library from scratch some day under a better paradigm. All ideas and no time.

Aug 11 2021, 8:23 PM
smiley added a comment to D4212: Random Maps: scale by map area.

It's a different thing for forests however, as their size also depend on map size which makes sense.

Aug 11 2021, 8:06 AM

Jul 30 2021

smiley added a comment to D4203: Fix loading grayscale heightmaps for RM maps..

The answer raises more puzzling questions. This doesn't manifest a problem even on whatever revision was the tileclass thing, but the bug suggests it should. What changed between than and now?

Jul 30 2021, 9:51 PM

Jul 3 2021

smiley added a comment to rP25816: Move wild lake biome specific entities to a json file like hellas..

I don't know how much this code has changed since 2018, but there was also D1660 that has discussions about edge cases. Most of those discussions was done via lobby chat, lobby pm, or in-game chat, so I don't remember how all of it went.

Jul 3 2021, 12:25 PM

Jun 11 2021

smiley added inline comments to rP25770: Speed up Corinthian Isthmus / Lorraine Plain RM generation.
Jun 11 2021, 9:24 AM

Jun 10 2021

smiley added inline comments to D4148: RM generation -> better metal mines layout & more metal..
Jun 10 2021, 3:21 PM

Jun 2 2021

smiley added inline comments to D4053: Random Maps: Echo Valley & Echo Shores.
Jun 2 2021, 12:38 PM
smiley added inline comments to D4053: Random Maps: Echo Valley & Echo Shores.
Jun 2 2021, 12:35 PM
smiley added a comment to D4021: Harder Better Faster Tileclasses.

(I expected it to take longer given the state of affairs, but thanks for merging it I guess)

Jun 2 2021, 12:15 PM

May 28 2021

smiley updated the diff for D4021: Harder Better Faster Tileclasses.

Fixed tests.

May 28 2021, 5:37 PM

May 27 2021

smiley added a comment to D4021: Harder Better Faster Tileclasses.

Sorry I don't follow? I'm pretty sure fixing the code so it can be used is gonna help ^^"

The old tileclass has two data structures. A tree structure that has multiple arrays. An array of size N (where N is number of tiles), an array of size N/2 which has the sum of two adjacent tiles, an array of size N/4 which has the sum of 4 adjacent tiles and so on. Not exactly a quad tree.
Then there is just a straight array of size N which is naively counted.

May 27 2021, 4:46 PM
smiley updated the diff for D4021: Harder Better Faster Tileclasses.
May 27 2021, 4:24 PM
smiley added a comment to D4021: Harder Better Faster Tileclasses.
In D4021#173226, @Stan wrote:

Honestly a 6* improvement seems significant enough to be able to commit this if not for just quality of life.

Also a space reduction of a factor of 16 and the space requirement of rangeop. This is an issue already as certain maps with giant cannot be generated without going OOM.

May 27 2021, 2:28 PM
smiley added a comment to D4021: Harder Better Faster Tileclasses.

Also, since you brought up quad trees, I had a similar thought back in 2019 or so. However, since tileclasses are query heavy and rarely mutated, I went with a KD-tree instead of a quad tree. At least, that was the initial plan. But I didn't follow through since after these changes, tileclasses were IMO good enough.

May 27 2021, 10:03 AM
nani awarded D4021: Harder Better Faster Tileclasses a Like token.
May 27 2021, 1:12 AM

May 26 2021

smiley added a comment to D4021: Harder Better Faster Tileclasses.

Probably faster in the general case. Usually, these code are executed with pretty small N values where time complexity becomes somewhat irrelevant. For the most part, getting things like CPU cache lines right might be more beneficial in absolute terms.

May 26 2021, 9:06 PM
smiley added a comment to D4021: Harder Better Faster Tileclasses.
In D4021#173214, @Stan wrote:

@smiley bb noticed that with some previous versions of spidermonkey (AFAIK he hasn't tested 78) class were slower than prototypes, it that something you encountered too?

May 26 2021, 8:17 PM
smiley updated the summary of D4021: Harder Better Faster Tileclasses.
May 26 2021, 6:52 PM
smiley requested review of D4021: Harder Better Faster Tileclasses.
May 26 2021, 6:51 PM
smiley updated smiley.
May 26 2021, 6:49 PM
smiley added inline comments to rP25570: Fix some error in rmgen..
May 26 2021, 1:22 PM

Apr 23 2021

smiley added a comment to D3884: Fix low resource supplies tricking AI..

It doesn't make any sense when the value is 0. There are potential edge cases due to other falsy values too maybe.

Apr 23 2021, 4:02 PM

Apr 20 2021

smiley added a comment to D1323: Add Upkeep component..

Why not call this Trickle or something and handle positive trickles here as well?

Apr 20 2021, 3:16 PM

Apr 9 2021

smiley added inline comments to D3816: Attack using cmpAttack instead of UnitAI..
Apr 9 2021, 2:53 PM

Mar 29 2021

smiley added inline comments to rP25152: Replaces CPos by more a consistent CVector2D, reduces geometry code duplication..
Mar 29 2021, 9:38 AM
smiley added inline comments to rP25152: Replaces CPos by more a consistent CVector2D, reduces geometry code duplication..
Mar 29 2021, 9:35 AM

Mar 25 2021

smiley added inline comments to rP25119: A bit more cleanup in ProductionQueue..
Mar 25 2021, 6:06 PM
smiley added inline comments to rP25119: A bit more cleanup in ProductionQueue..
Mar 25 2021, 5:28 PM
smiley added inline comments to rP25119: A bit more cleanup in ProductionQueue..
Mar 25 2021, 5:11 PM

Feb 16 2021

smiley added a comment to D1338: Add a RC file for pyrogenesis.

Obviously it won't work if the game compiles on Windows with multiple compilers.

Feb 16 2021, 10:45 AM
smiley added a comment to D1338: Add a RC file for pyrogenesis.

Shouldn't some/most/all of this be in the manifest file? In that case, you can set these stuff in premake.

Feb 16 2021, 4:58 AM

Dec 8 2020

smiley added inline comments to D3184: Hide ip and port from users until they want to join, add optional password.
Dec 8 2020, 3:12 PM
smiley added a comment to D3184: Hide ip and port from users until they want to join, add optional password.

This is security through obscurity only that the curtain hiding things is transparent. Whatever the objective of this is, it doesn't really achieve any of those. If people are not meant to see something, just don't give it to them in the first place.

Dec 8 2020, 9:12 AM

Dec 4 2020

smiley added a comment to D3183: Redo D2399.

(In case I sound passive aggressive, that is not the intention here. I just talk really directly.)

Dec 4 2020, 10:05 PM
smiley added inline comments to D3183: Redo D2399.
Dec 4 2020, 9:59 PM
smiley added inline comments to D3183: Redo D2399.
Dec 4 2020, 9:44 PM
smiley added a comment to rP24323: Fix FCollada on platforms without ecvt.

Ah, I see that this version got committed. Not a fan of the approach. But not like I am active on either end these days, so meh.

Dec 4 2020, 9:38 PM

Dec 1 2020

smiley added inline comments to D2399: [BSD] Replace ecvt() in FCollada with something else.
Dec 1 2020, 8:24 AM

Nov 30 2020

smiley added inline comments to D2399: [BSD] Replace ecvt() in FCollada with something else.
Nov 30 2020, 7:16 PM
smiley added inline comments to D2399: [BSD] Replace ecvt() in FCollada with something else.
Nov 30 2020, 4:58 PM
smiley added inline comments to D2399: [BSD] Replace ecvt() in FCollada with something else.
Nov 30 2020, 4:22 PM

Nov 24 2020

smiley added a comment to rP24241: Fix segfault in FCollada with Visual Studio > 2013. Bump the version of….

https://github.com/rdb/fcollada if the maintainer is active, maybe that's a good candidate for a de facto upstream.

Nov 24 2020, 2:58 PM
smiley added a comment to rP24241: Fix segfault in FCollada with Visual Studio > 2013. Bump the version of….

Does FCollada have an upstream anymore? it would be in everyone's best interest to not have N different libraries.

Nov 24 2020, 2:41 PM
smiley added a comment to D2474: Fix Collada build on VS2015.

I am not sure this functionality should be totally removed. I went with what basically boils down to: if (!alloc) setAlloc(malloc).

Nov 24 2020, 8:23 AM
smiley added a comment to D3130: Updates for compiling with VS2017.

FCollada.dll!fm::vector<char,1>::reserve(unsigned int count) Line 297 C++ Symbols loaded.

Nov 24 2020, 7:44 AM

Oct 9 2020

smiley added a comment to D2726: AMD Ryzen fix.

I assume the TSC assumed to be present is invariant. I read that Intel's use invariant which is tied to the nominal clockrate and therefore not affected by either the turbo mode, or the low power mode and pretty much stays in sync even when throttled. I guess AMD doesn't deem it worth supporting the invariant TSC anymore. Or maybe, they never did, and the issue arose with these new ones.

Oct 9 2020, 4:26 PM

Sep 28 2020

smiley added inline comments to D1545: Provide AI json description files with ID tag to tell them apart from other JSON files.
Sep 28 2020, 8:45 PM
Herald added a reviewer for D1545: Provide AI json description files with ID tag to tell them apart from other JSON files: Angen.

Patch is alright logically. But syntactically, I am not so sure.

Sep 28 2020, 8:41 PM

Sep 16 2020

smiley added a comment to D3010: Handle 0 case for template parsing.

Right, hence not having null be distinguished from null.

Sep 16 2020, 10:16 PM
smiley added inline comments to D3010: Handle 0 case for template parsing.
Sep 16 2020, 7:57 PM
smiley added inline comments to D3010: Handle 0 case for template parsing.
Sep 16 2020, 7:50 PM
smiley requested review of D3010: Handle 0 case for template parsing.
Sep 16 2020, 5:16 PM

Aug 19 2020

smiley added a comment to D1746: Network Dialog / Troll removal device.

This looks great! Is it possible to also show when a player is having issues with turn calculation? This is important for late game when some players computer can't handle the processing, it would show who's having trouble which would otherwise be hidden.

Aug 19 2020, 12:59 PM

Aug 1 2020

smiley added a comment to D2377: Fix text input max_length attribute..

Thanks for the fair warning, and the time you took to express it :)

Aug 1 2020, 4:59 PM
smiley added inline comments to D2399: [BSD] Replace ecvt() in FCollada with something else.
Aug 1 2020, 4:47 PM

Jun 27 2020

smiley added a comment to D2828: Flood fill algorithm to check tile connections.

Since there seems to be some confusion.

Jun 27 2020, 11:35 AM

Jun 26 2020

smiley added a comment to D2828: Flood fill algorithm to check tile connections.

I have been looking at this as a connectivity test rather than a flood fill algorithm.

Jun 26 2020, 5:43 PM

Jun 22 2020

smiley added a comment to D2828: Flood fill algorithm to check tile connections.

I will do those aforementioned tests and post here if something is not behaving as expected.

Jun 22 2020, 8:45 PM
smiley added a comment to D2830: Alpine Mountains random map.

I see what you mean actually. I kinda like the new look.

Jun 22 2020, 7:38 PM
smiley added a comment to D2828: Flood fill algorithm to check tile connections.

I slightly cleaned up the syntax.

Jun 22 2020, 3:23 PM
smiley added inline comments to D2828: Flood fill algorithm to check tile connections.
Jun 22 2020, 12:29 PM
smiley added a comment to D2830: Alpine Mountains random map.

If Noise2D can not be used, then I guess its fine.

Jun 22 2020, 12:21 PM
smiley added a comment to D2828: Flood fill algorithm to check tile connections.

Keeping the connectivity map in a tileclass is also an idea but seems like that cache would always be on the verge of invalidation.

Jun 22 2020, 12:04 PM
smiley added a comment to D2829: Add perlin and simplex noise functions.

The Noise.js implementations are also simplex noise. Any reason they do not suffice?

Jun 22 2020, 11:41 AM

Dec 13 2019

smiley added inline comments to D1630: Add perlin noise generator..
Dec 13 2019, 9:02 PM

Dec 12 2019

smiley added inline comments to D1630: Add perlin noise generator..
Dec 12 2019, 7:36 AM

Dec 10 2019

smiley added a comment to D2454: Add 2d value noise for rmgen..

https://smiley3.github.io/ The darker one is what I came up with.

Dec 10 2019, 8:53 AM
smiley added inline comments to D2454: Add 2d value noise for rmgen..
Dec 10 2019, 6:42 AM

Nov 14 2019

smiley added a comment to D2399: [BSD] Replace ecvt() in FCollada with something else.

It does work as advertised. I just think the fix could be better.

Nov 14 2019, 7:06 PM
smiley added a comment to D2399: [BSD] Replace ecvt() in FCollada with something else.

What other info should be added? Something like "License of musl libc - MIT license"?

https://code.wildfiregames.com/source/0ad/browse/ps/trunk/libraries/source/fcollada/src/FCollada/FUtils/FUStringBuilder.hpp$1-13

Nov 14 2019, 6:46 PM

Nov 2 2019

smiley added inline comments to D2399: [BSD] Replace ecvt() in FCollada with something else.
Nov 2 2019, 11:55 AM

Oct 15 2019

smiley added a comment to D2377: Fix text input max_length attribute..

Since apparently I had commented on this before, I have a feeling this would not quite work the way it should in certain cases.

Oct 15 2019, 4:54 PM

Jul 21 2019

smiley added a comment to D2107: Clean var values from Trader.js.

That's an oversimplification.

function test()
{
    var a = 6;
    console.log(a);
}
Jul 21 2019, 8:04 PM

Jul 10 2019

smiley added a comment to D2059: Let "GetPrimaryMember"-function of "Formation"-component actually return something of a primary member..

I am not so sure whether this is any less arbitrary. In other games, the primary member seems to be the bulk of the army. That doesn’t necessarily mean numerically.
(Just a random thought, do what the reviewer says and you will be good)

Jul 10 2019, 7:26 PM

Jul 9 2019

smiley added a comment to D1501: Mapgen: library improvements.

typo. 8 -> 18

Jul 9 2019, 10:57 PM
smiley added a comment to D1501: Mapgen: library improvements.

That 6s performance is achieved by nuking the 27 already IIRC

It helps, but the best I achieved was 18 seconds on 512 8 player mainland. You might have better luck with nani's patch.

Jul 9 2019, 10:52 PM

Jun 29 2019

smiley abandoned D1642: Allow to manipulate the heightmap in simulation.

(Apparently refs #2264. Overall design seems to be the same.)

Jun 29 2019, 9:03 PM

Jun 25 2019

smiley added a comment to D1492: Abort instead of throwing an error when dealing with empty areas..

Why would I know that? When I first mentioned that none of this stuff are going anywhere, (most of those posts were removed)

I guess someone is confusing Wildfire Games for their personal patchslave.

So, best I can do is guess based on evidence. The way I see it, I am doing wfg a favor.

Jun 25 2019, 10:20 PM
smiley added a comment to D1492: Abort instead of throwing an error when dealing with empty areas..
  1. Look at the date on which this was uploaded
  2. Look at what was changed
  3. Try to come up with a reason
Jun 25 2019, 9:16 PM
smiley abandoned D1677: [Minor cleanup] Use typed arrays where possible and worth it..

Adds literally nothing of value whatsoever -.-

Jun 25 2019, 7:58 PM
smiley abandoned D1492: Abort instead of throwing an error when dealing with empty areas..

Nobody cares about tiny maps anyway.

Jun 25 2019, 7:55 PM
smiley abandoned D1599: Texture priority support for rmgen.

Status correction. Changes are not planned. (at least not relevant to this status)
Also, this is not the only changes relevant for priority.

Jun 25 2019, 7:53 PM
smiley added a comment to D2010: Replace an incorrect math.max() by math.min() in tileclass.

Patch by smiley

Is it really? ax -> in hardly counts as a change, let alone a patch.
Is there legal meaning behind that?

Jun 25 2019, 7:46 PM
smiley added a comment to rP21026: Cleanup TileClass prototype and use vector arguments for countInRadius….

(There have been a release *after* this was found)

Jun 25 2019, 5:45 PM

Jun 12 2019

smiley added a comment to D1628: Reregister game in multiplayer lobby when host disconnects from lobby..

The cathedral and the bazaar
To be honest, i never figured out which was which. It's all cathedrals.

Jun 12 2019, 8:51 PM

Jun 7 2019

smiley added inline comments to D1707: Generalise hard-counter tooltips..
Jun 7 2019, 11:53 AM
smiley added inline comments to D1707: Generalise hard-counter tooltips..
Jun 7 2019, 11:46 AM

May 30 2019

smiley added a comment to D1501: Mapgen: library improvements.

If you've got a way to dramatically reduce that and it proves to work then it's practically guaranteed to be accepted.

https://youtu.be/uCGD9dT12C0

May 30 2019, 11:57 PM
smiley added a comment to D1501: Mapgen: library improvements.

I have already checked out this branch. I feel the constraints took a right step, but I always favored using the objects directly without proxies. I guess that needs a detailed analysis.

May 30 2019, 11:34 PM
smiley added a comment to D1501: Mapgen: library improvements.

You should submit this.

You have done far more valuable things. I guess it doesn't matter if they are here or on a local machine.

May 30 2019, 11:22 PM
smiley added a comment to D1501: Mapgen: library improvements.

Yeah, I found the 6-36 thing hard to believe too. Way less and faster iteration and way more efficient cpu cache usage might be the reason. The significantly JS typed arrays would have something to do with it too.
Anyway, we are now speaking of things which does not matter.

May 30 2019, 10:56 PM
smiley added a comment to D1727: Update auras when a formation member renames..

requested changes to this revision.

I don't have any other answer than requesting someone else to commandeer.

May 30 2019, 10:49 PM
smiley added a comment to D1501: Mapgen: library improvements.

I just wanted to point out that the changes to tileclass is unneeded and only removes a possibility. The chance of someone needing to count the number of tagged tiles within a radius is not that far off.

May 30 2019, 6:15 PM

May 29 2019

smiley added a comment to D1501: Mapgen: library improvements.

(First two is from a significantly optimized tileclass system)
Without early return.

Setting biome generic/alpine.
Generating Mainland of size 512 and 8 players.
Creating playerbases... 0.221s.
Creating bumps... 2.384s.
Creating hills... 0.593s.
Creating forests... 1.514s.
Creating dirt patches... 0.986s.
Creating grass patches... 0.615s.
Creating stone mines... 0.013s.
Creating metal mines... 0.004s.
Creating decoration... 0.213s.
Creating food... 0.016s.
Creating food... 0.008s.
Creating straggler trees... 0.248s.
Total map generation time: 6.848s.
Total entities: 16350, Terrain entities: 12882, Textures: 13.
May 29 2019, 1:27 PM