Page MenuHomeWildfire Games

lyv (M.L)
User

Projects

User Details

User Since
Jan 31 2018, 11:59 AM (230 w, 1 d)

Recent Activity

Tue, Jun 28

lyv added a comment to D1599: Texture priority support for rmgen.

I believe simplifying it rather than allowing for tile by tile priorities is actually the way to go. Which can then fit in nicely with D4680.

Tue, Jun 28, 4:08 PM
lyv abandoned D1660: Move Wild Lake biome specifics to a JSON file.

Superseded in rP25816

Tue, Jun 28, 4:05 PM

Sat, Jun 25

lyv added inline comments to D4718: Allocator and generator for component data..
Sat, Jun 25, 12:57 PM

Fri, Jun 24

lyv planned changes to D4726: [WIP] Refactor button distribution code.

Following an IRC discussion, a former undertaker of GUI unspaghettifying recommended switching over to an OOP approach.

Fri, Jun 24, 11:13 PM
lyv requested review of D4726: [WIP] Refactor button distribution code.
Fri, Jun 24, 9:58 PM
lyv added a comment to rP26873: Allow setting the passability class depending on formation members..

Refs #6580

Fri, Jun 24, 5:51 PM

Thu, Jun 23

lyv abandoned D1589: Get rid of TERRAIN_SEPARATOR.

In favor of D4680

Thu, Jun 23, 12:44 PM
lyv updated the diff for D4680: [POC | WIP] New RMGEN Terrain.
Thu, Jun 23, 12:43 PM
lyv abandoned D1587: DiskPlacer improvements..

Superseded by D2710 and retrospectively speaking, unsure if getPointsInBB with filter callback was actually the right call over a simple for loop.

Thu, Jun 23, 12:33 PM
lyv requested changes to D1637: BoolArray array wrapper..

Overlapping logic is present in the tileclasses currently. If a generic bit array structure is desired, it could be placed into globalscripts and TileClass could be updated to use that for the underlying storage.

Thu, Jun 23, 12:30 PM

Wed, Jun 22

lyv resigned from D1400: [gameplay] Hero aura revision.
Wed, Jun 22, 1:56 PM
lyv requested changes to D4232: Random maps: Balanced resources.

I am not sure if this is actually going to be that usable unless the map scripts are explicitly designed to be balanced. And having the overall balance of it tweaked via Gamesettings seems somewhat ineffective. Having the option doesn't really matter if the underlying generation isn't updated too.

Wed, Jun 22, 1:54 PM

Mon, Jun 13

lyv added inline comments to D4699: [maps] Fix caledonia_meadow.js and wild_lake.js entities (and relics) placed outside of map.
Mon, Jun 13, 9:46 PM
lyv accepted D4699: [maps] Fix caledonia_meadow.js and wild_lake.js entities (and relics) placed outside of map.
Mon, Jun 13, 9:40 PM
lyv added a comment to D4699: [maps] Fix caledonia_meadow.js and wild_lake.js entities (and relics) placed outside of map.

I will leave the biome thing to your judgement. However, generic biomes tend to go together. They are meant to be interchangeable. And the grass issue sounds like something all maps using the biome have, i.e, the biome needs to be fixed then.

Mon, Jun 13, 6:02 PM
lyv added a comment to D4699: [maps] Fix caledonia_meadow.js and wild_lake.js entities (and relics) placed outside of map.

The weird formatting led to fish being missed in actorHS.

Mon, Jun 13, 2:43 PM
lyv requested changes to D4699: [maps] Fix caledonia_meadow.js and wild_lake.js entities (and relics) placed outside of map.

Relevant history for the archaeologists among us.

Mon, Jun 13, 1:53 PM
lyv added a comment to D4696: [maps] adjustments to Fortress.js.
  • The ai could potentially use it to build a wall I guess. But it requires significant code from the ai to calculate the actual wall vertices. Maps could do it quite easily since the number of tiles are 16 times less.
  • And then there is the whole tile vs navcell grids. Every tile would be 16 navcells to check against the pathfinder grid when used in sim as mentioned above. This could be abstracted away, but the performance when scaled up is a concern.
  • Walls already allow overlap, so I would assume that wall builder returned walls would be buildable as well. It needs to be checked though.
  • If this is something we want, the wall builder needs to be designed to be agnostic of internal rmgen details. So no direct references to constraints (the core functions could take an allows callback instead). ***

Unless there is a need, I find no reason to do so.

Mon, Jun 13, 1:08 PM

Sun, Jun 12

lyv accepted D4696: [maps] adjustments to Fortress.js.

The wall builder changes are out of scope and somewhat extensive, so it could be refactored later.

Sun, Jun 12, 6:04 PM
lyv added a comment to D4696: [maps] adjustments to Fortress.js.

I would rather just remove all the houses and possibly replace them by e.g. one temple or a market.

Agreed.

Sun, Jun 12, 5:26 PM
lyv added a comment to D4696: [maps] adjustments to Fortress.js.

Texture and metal placement changes are good.

Sun, Jun 12, 5:03 PM
lyv added a comment to D4666: Make formations respond as one to threats..

Go right ahead.

Sun, Jun 12, 2:50 PM

Thu, Jun 9

lyv requested changes to D2828: Flood fill algorithm to check tile connections.

Some leftovers from the previous iteration.

Thu, Jun 9, 7:15 PM

Wed, Jun 8

lyv accepted D4691: [maps] adjust lighting on hellas.js.

I personally like lower sun angles as it creates better sun angles and afternoon-ish sun colors, but we need variance.

Wed, Jun 8, 9:41 PM

Tue, Jun 7

lyv updated lyv.
Tue, Jun 7, 10:35 PM
lyv added a comment to D4303: Copy TeamPlacement options from Frontier.

rmgen2 is a convenience library over rmgen which handles more details implicitly and generalizes parameters. At the time it was introduced, it also contained some other generation code such as bluffs and whatnot. However, libraries of libraries usually suggest an anti pattern. #4947 and several commits later, most additions brought by rmgen2 has been ported over to rmgen1, and by now, its mostly just proxies. Maps written without those proxies ought to not have a dependency on it, and maps written with those are preferred to be without them. rmgen itself should have a usable enough interface that could be used without a wrapper around it.

Tue, Jun 7, 10:30 PM
lyv added a reviewer for D3995: Allow biomes to supply more information to the map creation script + new map to test that: lyv.
Tue, Jun 7, 12:09 AM

Mon, Jun 6

lyv added a reviewer for D4303: Copy TeamPlacement options from Frontier: lyv.

The placement function and the map changes need to be split.

Mon, Jun 6, 11:37 PM
lyv added a comment to D4687: Explicitly differentiate tiles and vertices in rmgen..
8a3068b3 Fix pyrenean_sierra map following a332ffe6 and 2988b811
a941a25c Remove now unused TILE_CENTERED_HEIGHT_MAP flag and replace getTileCenteredHeightmap with getTileHeight
2988b811 Use tile height for constraints and placers
a8c6755d Explicitly differentiate tile and vertices count
bd3947e1 Fix random map scripts following a332ffe6
a332ffe6 Rename heightmap functions and introduce a function to get tile centric height

It seems there are somewhat distinct changes in this that could be split out.

Mon, Jun 6, 11:11 PM
lyv updated the diff for D4687: Explicitly differentiate tiles and vertices in rmgen..

Fix tests and minor reverts.

Mon, Jun 6, 10:50 PM
lyv added a comment to P275 Shortlist for potentially removable random maps.

The lobby ratings bot suggests that its available at least for rated game. But that's hardly useful. Significantly biased towards a few maps (read mainland).

Mon, Jun 6, 2:58 PM

Sun, Jun 5

lyv added a comment to D4687: Explicitly differentiate tiles and vertices in rmgen..
In D4687#199200, @Stan wrote:

Any tests to make sure everything is working properly ?

Sun, Jun 5, 3:53 PM
lyv requested review of D4687: Explicitly differentiate tiles and vertices in rmgen..
Sun, Jun 5, 2:10 PM

Sat, Jun 4

wowgetoffyourcellphone awarded P275 Shortlist for potentially removable random maps a Dat Boi token.
Sat, Jun 4, 2:30 PM
lyv added a comment to D3995: Allow biomes to supply more information to the map creation script + new map to test that.

The name biomes need to be changed to variant or something. Biomes has already outgrown the name. It's used to set day/night, and seasons. And with this, it would just get more divergent with the name. For instance what if we have maps that have mixed biomes under two variants? Refs, P275.

Sat, Jun 4, 1:25 PM
lyv added a comment to P275 Shortlist for potentially removable random maps.
In P275#2245, @marder wrote:

Here is my list of random maps that are very similar to each other/ offer a very similar gamplay.
I don't think it will hurt to only have one of them left or combine them using biomes.

List updated.

Sat, Jun 4, 12:20 PM
lyv edited P275 Shortlist for potentially removable random maps.
Sat, Jun 4, 12:15 PM

Fri, Jun 3

lyv updated subscribers of P275 Shortlist for potentially removable random maps.

@wowgetoffyourcellphone @marder and all other resident map judgement experts.

Fri, Jun 3, 11:12 PM
lyv created P275 Shortlist for potentially removable random maps.
Fri, Jun 3, 11:06 PM
lyv added a comment to P274 Dependency Injection.

Seemed interesting from an old branch although I don't think this was a good idea, just an experiment that didn't work out.

Fri, Jun 3, 2:38 PM
lyv created P274 Dependency Injection.
Fri, Jun 3, 2:31 PM

Thu, Jun 2

lyv requested review of D4680: [POC | WIP] New RMGEN Terrain.
Thu, Jun 2, 11:15 PM
phabadmin renamed lyv from smiley to lyv.
Thu, Jun 2, 10:49 PM
lyv added a comment to D4676: [WIP] [Gameplay] Change of the capture paradigm.

Something fancy like capture/attack resistance being scaled with number of units within the vicinity is also an option. But that is a whole lot of range queries.

Thu, Jun 2, 3:10 PM

Jun 1 2022

lyv added a comment to D1589: Get rid of TERRAIN_SEPARATOR.

A terrain refactoring needs to happen at some point and might as well put the requirements here.

Jun 1 2022, 1:18 AM

May 31 2022

lyv updated the diff for D4670: Move rmgen2's getTeamsArray function to rmgen1.

lint

May 31 2022, 9:24 PM
lyv added inline comments to D4670: Move rmgen2's getTeamsArray function to rmgen1.
May 31 2022, 7:21 PM
lyv updated the diff for D4670: Move rmgen2's getTeamsArray function to rmgen1.

Return a map of team ids and player ids.

May 31 2022, 7:02 PM

May 30 2022

lyv added inline comments to D4670: Move rmgen2's getTeamsArray function to rmgen1.
May 30 2022, 6:32 PM
lyv requested review of D4670: Move rmgen2's getTeamsArray function to rmgen1.
May 30 2022, 4:49 PM
lyv added a comment to D4303: Copy TeamPlacement options from Frontier.

That might make it needlessly complex.

May 30 2022, 11:25 AM

May 27 2022

lyv planned changes to D4669: Use _SC_NPROCESSORS_ONLN to get available CPUs.

Replace with SDL functions

May 27 2022, 5:07 PM
lyv added a comment to D4303: Copy TeamPlacement options from Frontier.

This is the desired positions for this placement right?

May 27 2022, 4:38 PM
lyv added a comment to D4303: Copy TeamPlacement options from Frontier.

It seems like team placement patterns is purely an rmgen2 construct currently. However, the consensus at the time was to rewrite the maps using the rmgen2 proxies to instead just directly use rmgen. However, that is not an easy effort so this wrapper around rmgen is here to stay I guess. _kali had made several interesting maps and deleting them is not an option without rewriting them, and rewriting them is going to take ages (the effort was started with D1577). Refs #4947

May 27 2022, 2:07 PM

May 26 2022

lyv added a comment to D4669: Use _SC_NPROCESSORS_ONLN to get available CPUs.

SDL_GetCPUCount (IIRC it uses sysconf(_SC_NPROCESSORS_ONLN)

Indeed, https://github.com/libsdl-org/SDL/blob/main/src/cpuinfo/SDL_cpuinfo.c#L638
The smart thing to do would be to let SDL handle as much sysdep stuff as possible. The actual usage of these code is really not worth the effort of maintenance.

May 26 2022, 9:38 PM
lyv requested review of D4669: Use _SC_NPROCESSORS_ONLN to get available CPUs.
May 26 2022, 6:40 PM

May 24 2022

lyv requested review of D4666: Make formations respond as one to threats..
May 24 2022, 7:55 PM

May 23 2022

lyv added a comment to D4598: [GUI] fancy endgame message.

Could have a filter that darkens the background perhaps? The gold on yellowish terrain wouldn't be an issue then. As done for the paused overly currently.

May 23 2022, 3:08 PM
lyv added inline comments to D4598: [GUI] fancy endgame message.
May 23 2022, 11:52 AM

May 22 2022

lyv added a comment to D4661: Don't reset wonder victory timer on ally defeat..

Okay, that sounds about right.

May 22 2022, 11:52 PM
lyv added a comment to D4661: Don't reset wonder victory timer on ally defeat..

But why should the timer be reset when an ally dies trying to protect the team wonder?

May 22 2022, 8:27 PM
lyv added a comment to D4661: Don't reset wonder victory timer on ally defeat..

Doesn't it seem unfair that you get punished for doing so?

I would say in this case the timer should actually be reset because the team holding the wonder got stronger with the addition of a new ally. Moreover, it also implies different timers for different players depending on when they allied.

May 22 2022, 1:00 PM

May 19 2022

lyv added a comment to D4659: rename Han Chinese -> Han.

Apparently Han Chinese is the demonym. In which case this isn't exactly right either. I would imagine this is equivalent to calling Roman fortresses, Rome fortresses.

May 19 2022, 12:30 AM

May 18 2022

lyv added a comment to D4575: Implement ES6 Module Loading.

Yet another option is to just have named exports on the module entry file for onInit and onTick. Both of these methods would work the same way (other method being explicit registering via Engine) under the hood, but this might be more natural JS code.

May 18 2022, 3:18 PM

May 14 2022

lyv added a comment to D4575: Implement ES6 Module Loading.

Thinking some more about this, maybe we'll want the Engine to pass a writable Engine.entryPoint attribute that we set the init() functions to, as a way of expliciting the hardcoding?

May 14 2022, 3:39 PM
lyv added a comment to D4628: Fix non-visual autostart, as well as client/host autostart..

I have non-exhaustively tested this and LGTM.

May 14 2022, 3:17 PM

May 11 2022

lyv added a comment to D4628: Fix non-visual autostart, as well as client/host autostart..

Nothing obvious remains as far as I can see.

May 11 2022, 9:25 PM
lyv added a comment to rP26867: Fix map errors from GetTemplate not being available in the sim.

(This adds a proxy to cmpTemplateManager, it doesn't keep a static local template loader. But I do agree with the sentiment that globalscripts shouldn't have to rely on such details. Passing around a function not guaranteed to return the same output is also somewhat meh to be honest, cmpTemplateManager.GetTemplate shouldn't have to mirror TemplateLoader.GetTemplate for things to work.)

May 11 2022, 5:10 PM
lyv added a comment to D4575: Implement ES6 Module Loading.

Won't be possible to resolve files outside of the VFS, when you meant Won't be possible to resolve files like 'gui/something.js'

May 11 2022, 4:47 PM
lyv added a comment to D4575: Implement ES6 Module Loading.

Its usually unlikely that modules would have to resolve anything outside of their root. However, that doesn't seem to hold true with the structure in gui/ though. Then there is the case of trying to import code from globalscripts. Which would be somewhat messy without absolute paths.

May 11 2022, 4:29 PM
lyv retitled D4575: Implement ES6 Module Loading from [WIP] Implement ES6 Module Loading to Implement ES6 Module Loading.
May 11 2022, 1:49 PM
lyv updated the diff for D4575: Implement ES6 Module Loading.

Fix filename going out of scope as JS::CompileOptions::setFilenameAndLine does not copy
Use ScriptConversions

May 11 2022, 1:30 PM
lyv added inline comments to D4644: Remove own generate_uniform_real implementation from boost.
May 11 2022, 11:24 AM

May 10 2022

lyv added inline comments to D4628: Fix non-visual autostart, as well as client/host autostart..
May 10 2022, 9:17 PM
lyv added a comment to D4575: Implement ES6 Module Loading.

Assertion failure: aDst + aNElem <= aSrc || aSrc + aNElem <= aDst (destination and source must not overlap)

May 10 2022, 6:31 PM
lyv retitled D4575: Implement ES6 Module Loading from [WIP] Implement ES Module Loading to [WIP] Implement ES6 Module Loading.
May 10 2022, 6:19 PM
lyv added inline comments to D4575: Implement ES6 Module Loading.
May 10 2022, 6:05 PM
lyv updated the diff for D4575: Implement ES6 Module Loading.

Fix build

May 10 2022, 5:59 PM
lyv added inline comments to D4644: Remove own generate_uniform_real implementation from boost.
May 10 2022, 4:53 PM
lyv requested review of D4644: Remove own generate_uniform_real implementation from boost.
May 10 2022, 3:34 PM
lyv updated the diff for D4575: Implement ES6 Module Loading.

AutoCheckCannotGC needs a scope

May 10 2022, 3:16 PM
lyv added a reverting change for rP11857: Replace boost::uniform_real to avoid OOS caused by changes in behaviour between…: D4644: Remove own generate_uniform_real implementation from boost.
May 10 2022, 2:57 PM
lyv updated the diff for D4575: Implement ES6 Module Loading.

Add tests

May 10 2022, 1:31 PM

May 9 2022

lyv added inline comments to D4641: Fixes shader program and technique reloading.
May 9 2022, 4:19 PM

May 8 2022

lyv updated the diff for D4575: Implement ES6 Module Loading.

Add hotloading

May 8 2022, 9:04 PM
lyv updated the diff for D4575: Implement ES6 Module Loading.

Covert to class to keep cache exclusive to a ScriptInterface

May 8 2022, 6:44 PM
lyv added a comment to D4575: Implement ES6 Module Loading.

The cache cannot be shared over interfaces as the modules themselves are bound to a compartment.

May 8 2022, 5:02 PM
lyv added inline comments to D4628: Fix non-visual autostart, as well as client/host autostart..
May 8 2022, 4:07 PM
lyv added a comment to D4628: Fix non-visual autostart, as well as client/host autostart..

I find this an improvement over the status quo.

May 8 2022, 2:35 PM
lyv added inline comments to D4486: Fix maps after rP26298..
May 8 2022, 10:24 AM

May 1 2022

lyv added a comment to D4628: Fix non-visual autostart, as well as client/host autostart..

Ideally this would be a whole new thing that stores the canonical game state I guess.

May 1 2022, 6:32 PM
lyv abandoned D4613: Add JSI_TemplateLoader.
May 1 2022, 1:56 PM
lyv added a comment to D4632: Revert rP26298, put civ historical data back in the JSON file..

Relevant discussions on D4486, D4612, D4613, D4618 and D4630 regarding the overall added complexity of trying to make the existing code work cleanly.

May 1 2022, 1:54 PM

Apr 30 2022

lyv added a comment to D4630: Fix map errors from GetTemplate not being available in the sim.

Sounds like bandaids on top of bandaids. In which case I would much prefer to move the GetTemplate call one level above to whoever is calling loadCivFiles. Although I don't really care enough to outright reject this either.

Apr 30 2022, 8:42 PM
lyv abandoned D4612: Change CTemplateLoader into a namespace instead.
Apr 30 2022, 8:32 PM
lyv added inline comments to D4630: Fix map errors from GetTemplate not being available in the sim.
Apr 30 2022, 8:20 PM
lyv added a comment to D4612: Change CTemplateLoader into a namespace instead.

I have already considered this approach dead to be honest mostly because the costs of actually making this global really outweighs the benefits without some major refactoring. Especially the CParamNode fiasco.

Apr 30 2022, 7:56 PM

Apr 28 2022

lyv added a comment to D4618: Allow CTemplateLoader to register it's script interface.

As far as solving the problem goes, honestly I find it wrong to let that function be used in global scripts because global scripts ought to not have to rely on C++ class details. This even adds a CTemplateLoader to the component manager because it's ScriptInferface also needs to register these functions. Everything that needs global scripts now also needs a CTemplateLoader which just seems wrong to me. Notice that this isn't the case for engine globals such as the VFS.

Apr 28 2022, 10:23 AM
lyv added a comment to D4618: Allow CTemplateLoader to register it's script interface.

It might be somewhat worse because it adds convolution instead of duplication.

Apr 28 2022, 10:01 AM

Apr 26 2022

lyv added a comment to D4617: Restrict access for Read/WriteFile functions.

The point was that it's unknown without looking at the macro. They resolve on the source layer, not on the syntax layer. There are far less unknowns if it's an actual function of a variable even if you don't know how it's defined because those have restricted scopes.

Apr 26 2022, 3:49 PM