Page MenuHomeWildfire Games

real_tabasco_sauce (RCA)
User

Projects

User Details

User Since
Mar 10 2022, 2:20 AM (124 w, 1 d)

Recent Activity

Yesterday

real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.


@phosit this diff has all the P values removed so that the only change is the roughSort function. It is basically the same for me compared to the patch as written and vanilla. If it is a lot better for you maybe we have a lead.
Alternatively, you could also just revert the line that calls compareLengthRough() (L272 in CCmpRangeManager.cpp) and see if performance is still bad.

Fri, Jul 26, 9:51 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

No, sorry it's worse with the patch

Fri, Jul 26, 9:08 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.


Ok, I profiled with AI (just my opponent was AI) and the improvement was less substantial (about 1/3 the improvement for me at least)

Fri, Jul 26, 9:07 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

I think the comparison is somehow wrong now: The AI always attacks units at the "North"

The second is with the patch. It's indeed better.

You can't use the same replay to compare it. It's incompatible, since unit's behave differently.

Fri, Jul 26, 8:25 PM

Wed, Jul 24

real_tabasco_sauce resigned from D5313: [Fix] Code inconsistency in Attack.js for range accuracy.
Wed, Jul 24, 11:36 PM
real_tabasco_sauce added a comment to D5262: [maps] placement options alternative 1/2 .

Maybe the new function getPlayerIDs can be used in more places, which did their own stuff or used sortAllPlayers but the sorting isn't necesarry.

Normally there are two teams with the same number of players. Using river each team gets grouped in a line.
So river might be confused with groupedLines.

Not really related to this diff: Some names are technical (circle, groupedLines, randomGroup) while others are vivid (river, stronghold)

Wed, Jul 24, 6:12 AM
real_tabasco_sauce updated the diff for D5262: [maps] placement options alternative 1/2 .

use getPlayerIDs where sortAllPlayers() is used to get an array of IDs.

Wed, Jul 24, 6:07 AM
real_tabasco_sauce added a comment to D5313: [Fix] Code inconsistency in Attack.js for range accuracy.

ok the accuracy part definitely works in a26 vanilla XD.

Wed, Jul 24, 4:44 AM

Tue, Jul 23

real_tabasco_sauce accepted D5313: [Fix] Code inconsistency in Attack.js for range accuracy.

good catch. I didn't test it but it looks correct.

Tue, Jul 23, 10:35 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

well I think it could be nice if performance was at least roughly equal to the current. @phosit are you sure that profile was from the more recent patch (the one that doesn't use isqrt).
Also, maybe try the same replay i've been using?



I'm be pretty surprised by this large difference. if it's still such a big difference with this replay, maybe mine is just better at division XD.

Tue, Jul 23, 10:34 PM
real_tabasco_sauce updated the diff for D5282: flexible precision sorting for low-precision rangefinding.

use 24 for finding margin for performance.

Tue, Jul 23, 10:28 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

ok, so in following the above, I set out to find the best margin size for performance in combat demo huge.


0- vanilla
1- roughsort as written (.../30).
2->increasing margin size starting with (.../26)
so according to the above, margin = ((d2+od2)/24) * P is the fastest.
On their own, they look like this:

0-vanilla
1-roughsort as written
2-margin divided by 24^
now this may change when using units with a lower P value like skirmishers, but it won't get so bad as the really large margin plots I showed before, since margins get smaller with larger P.

Tue, Jul 23, 10:12 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

Ok this is really interesting:
If I make the margin much larger (ie margin = (d2 +od2)/5 *P, the performance gets much worse, and it is only partially rescued by removing the tiebreak. Removing the tiebreak on the regular roughSort has almost no effect, maybe because it results in fewer ties that the stable_sort doesn't have to swap.
I am not sure why changing the margin has this great an effect on performance, as it is the same amount of math, just different values.

Tue, Jul 23, 6:30 PM
real_tabasco_sauce updated the diff for D5174: [Maps] Add 'Coast Range' a new random map.

throw an error when > 2 teams, include a warning in map description.

Tue, Jul 23, 4:45 PM
real_tabasco_sauce updated the diff for D5174: [Maps] Add 'Coast Range' a new random map.

add small metal mines, more fish, make coastline more straight to optimize space.
Add support for river placement
improve spacing with circle placement
improve spacing with stronghold placement

Tue, Jul 23, 3:52 AM
real_tabasco_sauce updated the diff for D5129: [Random Maps] New Migration map, rename old one to 'Land Grab'.

var -> let, const where possible
remove dock auto placement, let place and time for dock placement be decided by the player.

Tue, Jul 23, 12:37 AM

Mon, Jul 22

real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

@phosit could you profile that replay I shared above? This will tell us if the difference between your profile and mine is due to replay differences or computer differences. Maybe other differences? like petra? in my replay, I just attack moved groups of 200 units.

Mon, Jul 22, 4:52 PM

Tue, Jul 9

real_tabasco_sauce added inline comments to D5282: flexible precision sorting for low-precision rangefinding.
Tue, Jul 9, 5:44 AM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

well I think it could be nice if performance was at least roughly equal to the current. @phosit are you sure that profile was from the more recent patch (the one that doesn't use isqrt)

Tue, Jul 9, 5:12 AM
real_tabasco_sauce added inline comments to D5282: flexible precision sorting for low-precision rangefinding.
Tue, Jul 9, 3:44 AM
real_tabasco_sauce updated the diff for D5129: [Random Maps] New Migration map, rename old one to 'Land Grab'.

fix playerAngle for dock placement, add stronghold and river team placements, which do not support docks (yet)

Tue, Jul 9, 12:34 AM

Mon, Jul 8

real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

https://wildfiregames.com/forum/topic/118677-less-precise-sorting-in-range-manager/page/2/#comment-578105
seems like there are nice effects on melee combat due to the LOS queries.

Mon, Jul 8, 9:53 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

where do I find this?

Mon, Jul 8, 7:34 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

Ok and I did a version comparing tie break vs no tie breaker:
Replay 1 tie break vs vanilla:


Replay 1 no tie break vs vanilla:

Replay 2 tie break vs vanilla:

Replay 2 tno tie break vs vanilla:

Mon, Jul 8, 7:20 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

RoughSortEverything (replay2):


RoughSort (replay 2):

RoughSort (replay 1, control re-measured, roughSort version from before):

Mon, Jul 8, 6:57 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

Ok, so I profiled a version where I use CompareLengthRough with a fixed value of P = 3, and then used CompareLengthRough for every call to EntityDistanceOrdering. Interestingly, the performance was worse, so I think the targeted approach in the patch currently is better.

Mon, Jul 8, 6:35 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

Ok, so on second thought, there is not really a need to include P in the templates. So, it could be done to just pass a bool to determine exact vs rough sorting, and then eliminate P from the function calls to compareLengthRough(). Would that be even faster?

Mon, Jul 8, 4:43 AM

Sat, Jul 6

real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.


ok whoever wrote that instruction set did a very good job. Now, I don't know which is which here. I uploaded the jsonp without the roughSort first, and then the jsonp with the roughSort. Is the reference always the first file uploaded?

Sat, Jul 6, 10:46 PM
real_tabasco_sauce updated the diff for D5174: [Maps] Add 'Coast Range' a new random map.

use a curve fit to fix even player placement with respect to startAngle.

Sat, Jul 6, 10:34 PM
real_tabasco_sauce added inline comments to D5129: [Random Maps] New Migration map, rename old one to 'Land Grab'.
Sat, Jul 6, 9:09 PM
real_tabasco_sauce updated the diff for D5129: [Random Maps] New Migration map, rename old one to 'Land Grab'.

update with generator approach, something wrong with playerAngle

Sat, Jul 6, 9:06 PM
real_tabasco_sauce updated the diff for D5174: [Maps] Add 'Coast Range' a new random map.
Sat, Jul 6, 8:09 PM
real_tabasco_sauce updated the diff for D5262: [maps] placement options alternative 1/2 .

groupedlines -> groupedLines

Sat, Jul 6, 8:07 PM
real_tabasco_sauce added a comment to D5174: [Maps] Add 'Coast Range' a new random map.

When placing teams in a circle with varying team sizes, I the line between the teams shifts. Its really noticeable between teams of 1 and teams of 2. teams of 3 (third pic) is perfectly even and teams of 4 is slightly off center.

Sat, Jul 6, 8:05 PM
real_tabasco_sauce updated subscribers of D5174: [Maps] Add 'Coast Range' a new random map.
Sat, Jul 6, 5:40 AM

Fri, Jul 5

real_tabasco_sauce updated the diff for D5174: [Maps] Add 'Coast Range' a new random map.

update to use generator, something wrong.

Fri, Jul 5, 10:44 PM
real_tabasco_sauce updated the diff for D5263: [maps] placement options alternative 2/2.

update to account for generator!

Fri, Jul 5, 10:15 PM
real_tabasco_sauce updated the diff for D5262: [maps] placement options alternative 1/2 .

.

Fri, Jul 5, 10:11 PM
real_tabasco_sauce added inline comments to D5282: flexible precision sorting for low-precision rangefinding.
Fri, Jul 5, 5:42 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.
In D5282#226072, @Stan wrote:

In non-visual the game goes much faster, because it has less to compute. So turns might be faster than 200ms :)

Regarding order, I believe red is 0 the first file.

Fri, Jul 5, 5:17 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

Fri, Jul 5, 4:12 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.


ok whoever wrote that instruction set did a very good job. Now, I don't know which is which here. I uploaded the jsonp without the roughSort first, and then the jsonp with the roughSort. Is the reference always the first file uploaded?

Fri, Jul 5, 4:03 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.
In D5282#226068, @Stan wrote:

Did you/read/see the instructions at https://trac.wildfiregames.com/wiki/Profiler2 ?

Fri, Jul 5, 3:34 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

well I can't get the profilier to do anything on windows. Any ideas why extract.pl is giving no output in neither the json file nor the plots?

Fri, Jul 5, 9:05 AM
real_tabasco_sauce updated the diff for D4964: [Gameplay] non-random Building AI.

increase rounds to 20

Fri, Jul 5, 8:04 AM

Thu, Jul 4

real_tabasco_sauce updated the diff for D4964: [Gameplay] non-random Building AI.

implement firing in bursts.

Thu, Jul 4, 11:53 PM

Wed, Jul 3

real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.
In D5282#226043, @Stan wrote:

Well unless the performance is better, than the current, I'm not sure losing 15% of FPS is worth it :)

Wed, Jul 3, 6:47 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

@Stan @phosit thoughts on this approach? I'd expect the performance to be pretty much the same for this one, since its just adding a margin for each comparison. Ive checked things out in gameplay tests and it seems to work well. My only concern would be consistency across unit types and avoiding unintended behavior.

Wed, Jul 3, 5:07 PM

Tue, Jul 2

real_tabasco_sauce updated the diff for D5282: flexible precision sorting for low-precision rangefinding.

remove isqrt64 dependence

Tue, Jul 2, 11:00 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.
	int CompareLengthRough(const CFixedVector2D& other, u8 P) const
	{
		u64 d2 = (SQUARE_U64_FIXED(X) + SQUARE_U64_FIXED(Y))/100000000000;
		u64 od2 = (SQUARE_U64_FIXED(other.X) + SQUARE_U64_FIXED(other.Y))/100000000000;
		u64 margin = ((d2 + od2) / 100) * P;
		//LOGWARNING("margin %i", margin);
		//LOGWARNING("compare %i, %i", d2, od2 + margin);
		//LOGWARNING("compare %i, %i", d2, od2 - margin);
		if (d2 < od2-margin)
			return -1;
Tue, Jul 2, 9:52 PM
real_tabasco_sauce updated the diff for D5282: flexible precision sorting for low-precision rangefinding.

.

Tue, Jul 2, 9:12 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.


0 is without a patch
1 is cheapsqrt3_noRough.diff
2 is cheapsqrt3_keepoldSqrt.diff
3 is cheapsqrt3.diff

one can see the median get's increasingly slower.
with 2 and 3 there is more variance.

Tue, Jul 2, 8:54 PM
real_tabasco_sauce added inline comments to D5282: flexible precision sorting for low-precision rangefinding.
Tue, Jul 2, 6:34 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.
In D5282#226002, @sera wrote:


droping from 20.78 ms to 23.05 ms per simulation frame.
measured on no-visual combat demo huge.

As it doesn't improve performance. What's the goal of this diff?

Given the estimated time share this function has and an increase of some 15% total execution time we are probably looking at an algorithm some 2 orders of magnitude worse than the original.

Tue, Jul 2, 5:26 PM

Mon, Jul 1

real_tabasco_sauce updated the diff for D5282: flexible precision sorting for low-precision rangefinding.

fix tiebreaker, use ternary expression.

Mon, Jul 1, 10:16 PM
real_tabasco_sauce added inline comments to D5282: flexible precision sorting for low-precision rangefinding.
Mon, Jul 1, 5:57 PM

Sun, Jun 30

real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

Aren't archers at large distances already less percise?

Sun, Jun 30, 6:30 PM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

To behave more natural? IRL not all units would should at the same target.
To be more effective?
Both?

Maybe there are other solutions:

Properly sorting then getting one of the nearest N entities.
First rounding then sorting.
...

Sun, Jun 30, 6:20 PM
real_tabasco_sauce updated the diff for D5282: flexible precision sorting for low-precision rangefinding.

add vs2017 intrinsic

Sun, Jun 30, 6:09 PM
real_tabasco_sauce updated subscribers of D5282: flexible precision sorting for low-precision rangefinding.


droping from 20.78 ms to 23.05 ms per simulation frame.
measured on no-visual combat demo huge.

As it doesn't improve performance. What's the goal of this diff?

Sun, Jun 30, 3:54 PM

Fri, Jun 28

real_tabasco_sauce updated the diff for D5282: flexible precision sorting for low-precision rangefinding.

fix curly braces

Fri, Jun 28, 8:17 PM
real_tabasco_sauce retitled D5282: flexible precision sorting for low-precision rangefinding from [WIP] flexible precision isqrt for low-precision rangefinding to flexible precision isqrt for low-precision rangefinding.
Fri, Jun 28, 8:11 PM
real_tabasco_sauce updated the diff for D5282: flexible precision sorting for low-precision rangefinding.

replace the old sqrt(), add a working 64 bit log2.

Fri, Jun 28, 8:09 PM
real_tabasco_sauce added inline comments to D5282: flexible precision sorting for low-precision rangefinding.
Fri, Jun 28, 7:52 PM

Thu, Jun 27

real_tabasco_sauce updated the diff for D5282: flexible precision sorting for low-precision rangefinding.

remove isqrtEst64 call from debugging.

Thu, Jun 27, 9:44 PM
real_tabasco_sauce updated the diff for D5282: flexible precision sorting for low-precision rangefinding.

fix EntityDistanceOrdering

Thu, Jun 27, 8:46 PM
real_tabasco_sauce updated the diff for D5282: flexible precision sorting for low-precision rangefinding.

define default parameters in the declaration not definition.

Thu, Jun 27, 5:20 PM
real_tabasco_sauce updated the diff for D5282: flexible precision sorting for low-precision rangefinding.

read from templates.

Thu, Jun 27, 8:51 AM

Jun 25 2024

real_tabasco_sauce updated the diff for D5282: flexible precision sorting for low-precision rangefinding.

do integer division before finding square root to make things easier for sqrt algorithm (probably needs fewer iterations of the while loop).

Jun 25 2024, 7:59 PM
real_tabasco_sauce updated the diff for D5282: flexible precision sorting for low-precision rangefinding.
Jun 25 2024, 6:38 PM

Jun 23 2024

real_tabasco_sauce updated the diff for D5282: flexible precision sorting for low-precision rangefinding.

use sdl handling of intrinsics for log2

Jun 23 2024, 10:27 PM
real_tabasco_sauce updated subscribers of D5282: flexible precision sorting for low-precision rangefinding.
Jun 23 2024, 8:02 PM
real_tabasco_sauce added inline comments to D5262: [maps] placement options alternative 1/2 .
Jun 23 2024, 7:36 PM
real_tabasco_sauce added inline comments to D5262: [maps] placement options alternative 1/2 .
Jun 23 2024, 7:25 PM

Jun 9 2024

real_tabasco_sauce updated subscribers of D5263: [maps] placement options alternative 2/2.

Did you introduce the setting TeamPlacements?
It isn't related to teams. As it isnt "sorted by teams"
I'd argue for SupportedPlacements or SupportedPlayerPlacements. SupportedStartingPositionPlacements would be the correct term i think, but is to long.

Jun 9 2024, 1:51 AM

Jun 8 2024

real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

whats a good way to report the values involved so I know the math is working out as expected?
@phosit any ideas why this isn't affecting anything? if my function was actually called with p=100, it would cancel any sorting.

Jun 8 2024, 7:55 AM
real_tabasco_sauce added a comment to D5282: flexible precision sorting for low-precision rangefinding.

How do I go about using the different versions of count leading zeroes from GCC and VS2017?
do I need some #ifndef,#define,#endif?

Jun 8 2024, 5:03 AM
real_tabasco_sauce requested review of D5282: flexible precision sorting for low-precision rangefinding.
Jun 8 2024, 4:14 AM

Jun 5 2024

wowgetoffyourcellphone awarded D5263: [maps] placement options alternative 2/2 a Dat Boi token.
Jun 5 2024, 3:07 PM
wowgetoffyourcellphone awarded D5262: [maps] placement options alternative 1/2 a Dat Boi token.
Jun 5 2024, 3:07 PM

May 31 2024

wowgetoffyourcellphone awarded D5265: [gameplay] let Iberians train spearmen in p1 from the barracks a Dat Boi token.
May 31 2024, 1:56 AM

May 9 2024

real_tabasco_sauce added a comment to D5262: [maps] placement options alternative 1/2 .

I got confused because of the renaming.
It's not about line but river.
In playerPlacementByPattern there is already river but in StartingPositions there was no river.

May 9 2024, 8:34 PM
real_tabasco_sauce added a comment to D5262: [maps] placement options alternative 1/2 .

Do you know why there was no line placement in StartingPositions?

May 9 2024, 7:44 PM

May 7 2024

real_tabasco_sauce removed a reviewer for D5263: [maps] placement options alternative 2/2: Restricted Owners Package.
May 7 2024, 9:46 PM
real_tabasco_sauce removed a reviewer for D5262: [maps] placement options alternative 1/2 : Restricted Owners Package.
May 7 2024, 9:45 PM
real_tabasco_sauce retitled D5262: [maps] placement options alternative 1/2 from [maps] Alternative patch to enable team placement options to [maps] placement options alternative 1/2 .
May 7 2024, 7:12 AM
real_tabasco_sauce retitled D5263: [maps] placement options alternative 2/2 from [maps] placement options alternative 1/2 to [maps] placement options alternative 2/2.
May 7 2024, 7:11 AM
real_tabasco_sauce retitled D5263: [maps] placement options alternative 2/2 from [maps] alternative patch to enable placement options for more random maps to [maps] placement options alternative 1/2.
May 7 2024, 7:10 AM

May 5 2024

real_tabasco_sauce added a comment to D5265: [gameplay] let Iberians train spearmen in p1 from the barracks.

Well my reasoning is listed in the patch summary, so no need to revisit my points. Its just a complaint I heard from 3 different iber players so I thought I would make a quick patch.
In a27 the romans will get a pretty significant economy advantage and I think they should have a bit of vulnerability.
At the same time tho, increased wall garrison space will make walls more useful for defense, so maybe its best left as is.

May 5 2024, 4:17 PM
real_tabasco_sauce requested review of D5265: [gameplay] let Iberians train spearmen in p1 from the barracks.
May 5 2024, 7:53 AM
real_tabasco_sauce requested review of D5264: [Gameplay] Double temple of Amun capture points.
May 5 2024, 7:42 AM
real_tabasco_sauce updated the summary of D5263: [maps] placement options alternative 2/2.
May 5 2024, 6:27 AM
real_tabasco_sauce updated the diff for D5263: [maps] placement options alternative 2/2.

fix missing files

May 5 2024, 6:26 AM
real_tabasco_sauce requested review of D5263: [maps] placement options alternative 2/2.
May 5 2024, 6:15 AM
real_tabasco_sauce requested review of D5262: [maps] placement options alternative 1/2 .
May 5 2024, 2:26 AM
real_tabasco_sauce added inline comments to D5198: Refactor playerPlacement functions.
May 5 2024, 1:23 AM

May 1 2024

real_tabasco_sauce added a comment to D5078: enable more starting positions for more random maps.

I tried enabling the options for mainland, and it didn't work even though the other patches are already committed. What is the update needed for these to work? it isn't clear when looking at the later updates to D4948
If I can figure out how to get them working on a couple maps, I could update these maps and my own two random maps.


This is the error log. I just used the lines from mainland.js and .json. What i did here is opened single player gamesetup, selected mainland, selected line, started a game. When I tried to start a new game, the errors made the placement option selection unavailable and clicking start game errored out too.

May 1 2024, 6:16 PM

Apr 30 2024

real_tabasco_sauce awarded D5260: Don't move elements in the bottom panel of the game setup a 100 token.
Apr 30 2024, 7:31 PM

Apr 29 2024

real_tabasco_sauce added a comment to D4770: Multiplayer saved games.

translation of "Load Game" doesn't work. It remained in english for me.

Apr 29 2024, 7:20 AM

Apr 13 2024

real_tabasco_sauce added a comment to D4770: Multiplayer saved games.

It should be visible by non-host-clients if it's a savegame.

Does anybody have an idea where this could be shown?
An idea was to put it near the "cheats enabled" or "rated game" warnings but there is litle space.

Apr 13 2024, 8:44 PM