Page MenuHomeWildfire Games

sera (Ralph Sennhauser)
User

Projects

User Details

User Since
Aug 21 2021, 5:41 PM (83 w, 4 d)

Recent Activity

Yesterday

sera added inline comments to D4967: Lower enet packet fragment max size to support certain VPN.
Tue, Mar 28, 8:26 PM
sera updated the diff for D4967: Lower enet packet fragment max size to support certain VPN.

Adding to default.cfg for the purpose of documenting the option. Not offering falling back to upstream default as the current value is problematic and possibly future values may take a decade for us to be relied on. Also what should constitute and invalid value may be stuff for discussion, so conveniently avoid that.

Tue, Mar 28, 8:24 PM

Sun, Mar 26

sera added a comment to D4967: Lower enet packet fragment max size to support certain VPN.
In D4967#212056, @Itms wrote:

Hello, this looks nice and clean, thanks for the work!

I know this is caused by the successive improvements to the patch, but now that you have created a config value, there is no need anymore for a hardcoded default MTU in the C++ code. I think that you should add network.enetmtu = 1372 ; lower enet's MTU in order to account for ICMP and IPv4 headers with some VPN solutions in default.cfg, and remove the constant in the C++. Then, inside CreateHost, check if the config value exists, if it doesn't it will mean the user explicitly wanted to remove the MTU customization, just return host; with the default MTU of 1400; if the config value is here, use it.

Sun, Mar 26, 10:23 PM

Fri, Mar 17

sera updated the diff for D4967: Lower enet packet fragment max size to support certain VPN.

Adds configure option network.enetmtu.
Moves header and implementation from lowlevel to network.

Fri, Mar 17, 6:16 PM

Wed, Mar 15

sera added a comment to D4967: Lower enet packet fragment max size to support certain VPN.

Haven't forgotten the package ->packet change, was just waiting for more discussion to happen before pushing out a new version of the patch, will also wait a day or two to allow people to comment on making it configurable. Given the release still has no name we aren't in that much of a hurry.

Wed, Mar 15, 11:23 PM
sera added a comment to D4967: Lower enet packet fragment max size to support certain VPN.

How should the config option be named, network.mtu is about as misleading as ENET_HOST_DEFAULT_MTU. Any good suggestions?

Wed, Mar 15, 10:38 PM
sera added a comment to D4967: Lower enet packet fragment max size to support certain VPN.

The only change that upstream patch brings is that now server can specify a lower mtu which is then used for communication in both directions. This patch here doesn't make use of this.

Wed, Mar 15, 10:22 PM
sera added a comment to D4967: Lower enet packet fragment max size to support certain VPN.

Thats much better.
host (and m_Host) should be a std::unique_ptr but that would requires more change.
Propably PS_ENET_HOST_DEFAULT_MTU should be in the cpp file (an implementation detail). No strong opinion.
We use another function-naming stile. But I think it's ok to use that from enet.

Wed, Mar 15, 7:19 PM

Sun, Mar 12

sera updated the diff for D4967: Lower enet packet fragment max size to support certain VPN.

Take care of review comments.

Sun, Mar 12, 6:40 PM

Sat, Mar 11

sera added a comment to D4967: Lower enet packet fragment max size to support certain VPN.
In D4967#211735, @sera wrote:

Can't just be removed, but it will be possible to make it configurable for users if they have issues, we still should provide a sane default or implement pmtud.

I missread the patch. Your enet-patch has nothing to do with wireguard, right?

Sat, Mar 11, 1:54 PM
sera added a comment to D4967: Lower enet packet fragment max size to support certain VPN.

Is it allowed to mutate ENetHost::mtu directly?
"No fields should be modified unless otherwise stated."

If we follow that there is no way to set pseudo mtu; right after creation and resetting peers after is already the most unlikely way to break in future

Sat, Mar 11, 12:55 PM
sera added a comment to D4967: Lower enet packet fragment max size to support certain VPN.

As for the choice of 1372, a rule of thumb I know says assume MTU 1400 and you most likely are fine, my guess this same rule is how ENET_HOST_DEFAULT_MTU = 1400 came to be. Then assume the idea was to use ENET_HOST_DEFAULT_MTU in the sense of MTU so we should deduct the ICMP/IPv4 from it.

Sat, Mar 11, 12:18 AM

Fri, Mar 10

Silier awarded D4967: Lower enet packet fragment max size to support certain VPN a Love token.
Fri, Mar 10, 11:18 AM
Silier awarded D4967: Lower enet packet fragment max size to support certain VPN a Love token.
Fri, Mar 10, 11:16 AM
sera updated the diff for D4967: Lower enet packet fragment max size to support certain VPN.

Update copyright year and add full diff context

Fri, Mar 10, 11:12 AM
sera requested review of D4967: Lower enet packet fragment max size to support certain VPN.
Fri, Mar 10, 10:38 AM

Feb 19 2023

sera added a comment to D4935: New input handler system.
In D4935#210943, @sera wrote:
Feb 19 2023, 11:02 PM
sera added a comment to D4935: New input handler system.

base handler is a lot more obvious than erased handler, thanks.

Feb 19 2023, 4:10 PM

Feb 18 2023

sera added a comment to D4935: New input handler system.

This patch doesn't demonstrate the need for erased handlers, could you add some doxy comments to make it clear how they are supposed to fit into the "new" system?

Feb 18 2023, 9:17 AM

Feb 16 2023

sera added a comment to D4938: [WIP] Winter skin support.

Can't this be done via shaders? If you need an extra set of textures I'm afraid you'd end up with the demo only just like what happened with the damage textures.

Feb 16 2023, 9:19 AM

Feb 15 2023

sera added inline comments to D3049: Make CLogger more flexible..
Feb 15 2023, 10:42 AM

Feb 1 2023

sera added a comment to D4922: Improving music continuation.
In D4922#210139, @sera wrote:

If you switch to class syntax and change pretty much every line anyway, I suggest to use default method signature, static and private where appropriate and drop useless "this" refs. Maybe even switch to use doxy comments.

Find this a bit hard to decypher, not that great at the terminology yet.

Feb 1 2023, 7:46 PM
sera added a comment to D4922: Improving music continuation.

If you switch to class syntax and change pretty much every line anyway, I suggest to use default method signature, static and private where appropriate and drop useless "this" refs. Maybe even switch to use doxy comments.

Feb 1 2023, 6:02 PM

Jan 22 2023

sera added inline comments to D4905: Molten VK Support.
Jan 22 2023, 11:19 AM

Jan 20 2023

sera added inline comments to D3127: Change when system-provided mozjs headers are searched.
Jan 20 2023, 9:36 PM
sera added a comment to D4279: Improve minimap viewpoint-polygon placement.
In D4279#209413, @sera wrote:

For me the intersection with a fixed horizontal plain seems the most attractive solution. A intersection plain height like max(sea_level, min(map_height)) would be my first choice.

That would have the same effect as raising the sea_level to just below the min(map_height).

Jan 20 2023, 3:01 PM
sera added a comment to D4279: Improve minimap viewpoint-polygon placement.

the exact "field of vision".

It's possible but the problem is how to show it properly and what a player does need exactly.

Jan 20 2023, 12:46 PM

Jan 19 2023

sera added a comment to D3127: Change when system-provided mozjs headers are searched.

Works with system premake now.

Jan 19 2023, 12:19 PM

Jan 17 2023

sera accepted D4895: Don't include source/test_root.cpp in bundles..

LGTM

Jan 17 2023, 5:06 PM
sera added a comment to D4895: Don't include source/test_root.cpp in bundles..
In D4895#209054, @Stan wrote:

generated files should not be under version control.

It's not. It just gets bundled accidentally when creating the release archive.

Jan 17 2023, 2:28 PM
sera added a comment to D4895: Don't include source/test_root.cpp in bundles..

My take:

  • generated files should not be under version control.
  • files under version control must not be changed by build scripts
Jan 17 2023, 2:17 PM

Jan 16 2023

sera added inline comments to D4894: Don't build premake uselessly.
Jan 16 2023, 7:23 PM

Jan 15 2023

sera added a comment to D3127: Change when system-provided mozjs headers are searched.

Whatever version is in use at compile time. An upgrade to icu forces a recompile of spidermonkey. The spidermonkey package doesn't install any icu headers. Looks like a sanitized package.

Jan 15 2023, 3:56 PM
sera added a comment to D3127: Change when system-provided mozjs headers are searched.

Can build with --with-system-mozjs on Gentoo with or without this patch and have confirmed that with this patch mozjs-91 and nspr come after -idirafter. I also confirmed that this patch will break use of system premake.

Jan 15 2023, 12:28 PM
sera added a comment to D3127: Change when system-provided mozjs headers are searched.
In D3127#208890, @Stan wrote:

@sera can you try this?

Jan 15 2023, 11:48 AM

Jan 14 2023

sera accepted rP27442: Fix a bug with Python >= 3.11 where -rU was removed as an open flag..

Oh, already noticed by Itms :)

Jan 14 2023, 9:56 PM
sera raised a concern with rP27442: Fix a bug with Python >= 3.11 where -rU was removed as an open flag..
Jan 14 2023, 9:54 PM
sera accepted rP27409: [SM91] Update to Spidermonkey 91.1.3 APIs.
Jan 14 2023, 9:53 PM
sera added a comment to rP27409: [SM91] Update to Spidermonkey 91.1.3 APIs.
In rP27409#59860, @Stan wrote:

Thanks was fixed locally. Was waiting to see if we could get the other python fix to be sorted out

Jan 14 2023, 7:27 AM

Jan 13 2023

sera raised a concern with rP27409: [SM91] Update to Spidermonkey 91.1.3 APIs.
Jan 13 2023, 9:02 PM
sera added inline comments to D4888: spidermonky python 3.11 support wrt universal newline.
Jan 13 2023, 5:30 PM
sera updated the diff for D4888: spidermonky python 3.11 support wrt universal newline.

As requested by Stan making the patching conditional on python version being >= 3.11

Jan 13 2023, 5:28 PM
sera added inline comments to D4888: spidermonky python 3.11 support wrt universal newline.
Jan 13 2023, 4:53 PM
sera added inline comments to D4888: spidermonky python 3.11 support wrt universal newline.
Jan 13 2023, 4:03 PM
sera added a comment to D4886: Use "Player" tag for Player XML..
In D4886#208818, @Stan wrote:

Well it's still an Entity so you might have PlayerEntity.

Jan 13 2023, 2:31 PM
sera requested review of D4888: spidermonky python 3.11 support wrt universal newline.
Jan 13 2023, 2:18 PM
sera added a comment to D4886: Use "Player" tag for Player XML..

Wouldn't this warrant it's own player schema?

Jan 13 2023, 12:55 PM

Jan 10 2023

sera added a comment to D4871: Moderation system improvements - mute, helper and allowlist only.

Some enums I can't associate with a lookup table, so those name variants I'd rather see dropped. No strong opinion tho.

Jan 10 2023, 11:51 PM
sera added a comment to D4871: Moderation system improvements - mute, helper and allowlist only.

The names NetModerationTables and LookupTable are supposed to match and I don't like either name in particular. NetModeration.h feels better to me.

Jan 10 2023, 10:15 PM
sera added a comment to D4876: Adds Vulkan backend.
In D4876#208455, @sera wrote:

No shader compiler is basically the same as no vulkan support

I believe it's incorrect logic to think about Vulkan. Also not all players want to build everything from sources (it takes noticeable amount of time for shaders). We pack all prepared data inside the 0ad-data package.

Jan 10 2023, 4:13 PM
sera added a comment to D4876: Adds Vulkan backend.
In D4876#208429, @sera wrote:

To build sdl with vulkan support you'd need some vulkan build environment and why should such an environment not include a shader compiler?

Because it contradicts to design behind Vulkan.

Sure you can get away without but if sdl without vulkan is a bug then not having a shader compiler can be considered one as well.

You missed my point. I don't have any objection to SDL without Vulkan. The problem is that in your example SDL is compiled without Vulkan only because of no shader compiler available.

if enabled requiring a shader compiler would be fair game.

I'm definitely against requiring shader compiler to run a Vulkan. I don't want to bother players to care about shader compilation, only when they want to (for those who wants I'm glad to provide an option).

Jan 10 2023, 2:27 PM
sera added a comment to D4876: Adds Vulkan backend.
In D4876#208407, @sera wrote:

Having it precompiled in an external mod 0ad-spirv for now works for me short term for the sake of getting the ball rolling.

0ad-spirv is only for SVN development. For releases SPIR-V shaders will be included in 0ad-data.

Jan 10 2023, 12:15 PM
sera added a comment to D4876: Adds Vulkan backend.
In D4876#208405, @sera wrote:

Just like a c++ compiler or rust compiler a shader compiler can be treated as external dependency, no need for shipping our own build thereof. Making vulkan support in 0ad optional sounds good though, then those who can't be bothered can simply stick to gl only.

I plan to have Vulkan for all platforms with precompiled shaders, but built-in support for compiling shaders is currently missing (--with-shaderc flag might be added in the future). You'd need to install glslc/spirv-reflect manually and then run a script.

Jan 10 2023, 10:43 AM
sera added a comment to D4876: Adds Vulkan backend.
In D4876#208402, @sera wrote:

googles shaderc is far from 200mb, closer to 200kb.

You're forgetting about Windows and probably macOS. On windows only shaderc_shared.dll is 11MB. But we also store .pdb and .lib.

Jan 10 2023, 9:55 AM
sera added a comment to D4876: Adds Vulkan backend.
In D4876#208388, @Stan wrote:
In D4876#208346, @sera wrote:
NOTE: Shaders should be in the mod mod.

I'd prefer to include those shaders only in final builds, because they're binaries and might be changed.

I'd prefer to include those shaders in source form only and compile them to spir-v during build.

Problem is it requires an extra dependency on all platforms which might not be available. Which means we would then be required to add the soure of that ands that's 200mb: glslc/spirv-reflect via Vulkan SDK or similar.
the script is python (and will be integrated in a separate patch) It also should be run if modders change things so it's not related to build directly..

Jan 10 2023, 9:02 AM
sera added a comment to D4876: Adds Vulkan backend.
NOTE: Shaders should be in the mod mod.

I'd prefer to include those shaders only in final builds, because they're binaries and might be changed.

Jan 10 2023, 12:27 AM

Jan 7 2023

sera added inline comments to D4859: optional column "sort_order" attribute support.
Jan 7 2023, 8:58 PM

Jan 4 2023

sera added inline comments to D4851: Moderation system improvements.
Jan 4 2023, 2:39 PM
sera added a comment to D4847: Chat Profanity Filter - WIP.

Data (word list) and code needs to be split.

Why?

Jan 4 2023, 2:23 PM

Jan 3 2023

sera added a comment to D4851: Moderation system improvements.

Quick look only.

Jan 3 2023, 12:41 PM

Dec 30 2022

sera added a comment to D4847: Chat Profanity Filter - WIP.

Data (word list) and code needs to be split. Also it might make sense to support multiple data files to support "language packs" via mods that can individually be enabled / shipped. The reason for this being a word may be perfectly fine in one language but not another, secondly easier maintenance by people actually speaking a certain language and lastly performance. Performance might not be critical in lobby but we should be careful for in-game.

Dec 30 2022, 1:56 PM

Jul 24 2022

sera added a comment to D4741: Fix writing mod.json with non latin chars in path..

The overload for wchar is proprietary, so likely only available with msvc. Needs some ifdef here. Or better yet move to <filesystem>.

Jul 24 2022, 9:36 PM

Dec 9 2021

sera added a comment to D4309: [gameplay] Roman bonus - structures +2 population space.

It represents the fact that Rome was one of the most populous cities in the ancient world.

Dec 9 2021, 7:08 PM

Nov 29 2021

sera added a comment to D4223: Drop custom utf16 string implementation.

Go ahead

Nov 29 2021, 12:55 PM
sera added a comment to D4223: Drop custom utf16 string implementation.

"Ralph Sennhauser <ralph.sennhauser@gmail.com>", if nick is required "sera" is fine.

Nov 29 2021, 11:46 AM

Sep 28 2021

sera added a comment to D4283: Implement "-help" as a command line option.

Do you need to call parse multiple times? If not why do you need the method?

Sep 28 2021, 12:48 AM

Sep 27 2021

sera added a comment to D4283: Implement "-help" as a command line option.

If so, what should I use instead of debug_printf()?

Sep 27 2021, 9:10 PM
sera added a comment to D4283: Implement "-help" as a command line option.

You won't need the readme.txt anymore if you have support for help, worst case just run "pyrogenesis -help > readme.txt" as a postbuild command. So no duplication required.

Sep 27 2021, 5:58 PM
sera added a comment to D4283: Implement "-help" as a command line option.

IMHO the right approach is to change CmdLineArgs from an minimalist class to a proper command line parser where you register available options, does validation and has a help string for each.

Sep 27 2021, 12:07 PM

Sep 20 2021

sera added a comment to D4273: [gameplay] Briton bonus - faster wood gather rate.

It'd be great but who knows how long it will take for someone to go out and make it.

Just write it as you like and get it committed to /binaries/data/mods/public, doesn't have to be a complete or perfect plan, a rundown of possibilities will already do, anything else I don't see ever having success indeed.

Sep 20 2021, 8:38 AM

Sep 19 2021

sera accepted D3646: Debundle Valgrind and make it optional.

making the addition of it to that file out of scope for this revision

Sep 19 2021, 9:20 AM

Sep 18 2021

sera added a comment to D4273: [gameplay] Briton bonus - faster wood gather rate.

I suppose the bigger problem is that there isn't really a design plan/idea for how the civs should play and how many bonuses, unique techs a civ should have

Sep 18 2021, 10:26 AM

Sep 14 2021

sera added inline comments to D3037: Add gui scale to options.
Sep 14 2021, 2:30 PM
sera added inline comments to D3037: Add gui scale to options.
Sep 14 2021, 1:56 PM
sera added inline comments to D3037: Add gui scale to options.
Sep 14 2021, 11:58 AM
sera added inline comments to D3037: Add gui scale to options.
Sep 14 2021, 11:08 AM
sera added inline comments to D3037: Add gui scale to options.
Sep 14 2021, 10:27 AM

Aug 22 2021

sera added inline comments to D3646: Debundle Valgrind and make it optional.
Aug 22 2021, 11:21 AM

Aug 21 2021

sera updated the diff for D4223: Drop custom utf16 string implementation.

same, with context

Aug 21 2021, 6:28 PM
sera requested review of D4223: Drop custom utf16 string implementation.
Aug 21 2021, 6:19 PM