beyond-all-reason / beyond-all-reason/RecoilEngine

LuaParser redefines some functions

Open
#2,218 0 comments 0 reactions 0 assignees View on GitHub
refactor
Dominant language
C++
Stars
679
Forks
290
Avg merge
3d 2h
Merged PRs (30d)
40

Description

Consider for example `VFS.DirList`, it has a reimplementation that PROBABLY does the same thing:
https://github.com/beyond-all-reason/RecoilEngine/blob/604f00d290a2e3ddbc2fae9f27f10b9c8efedc0a/rts/Lua/LuaParser.cpp#L581
https://github.com/beyond-all-reason/RecoilEngine/blob/604f00d290a2e3ddbc2fae9f27f10b9c8efedc0a/rts/Lua/LuaVFS.cpp#L519

The task would be to:
* figure out the extent of the "probably". For example DirList specifically has some sort of `IsSimplePath` check, is this actually a difference though? Maybe synced envs can't access non-simple paths either so it's sort of redundant and behaves the same after all?
* unify the implementation where no differences exist, and document them where they do.

Contributor guide

Open the contributing guide

Research direction

Start by comparing the VFS.DirList implementations in rts/Lua/LuaParser.cpp around line 581 and rts/Lua/LuaVFS.cpp around line 519. Investigate whether the IsSimplePath check differs in synced environments and determine which behaviors are genuinely distinct. Done means equivalent implementations are unified and remaining differences are documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, lua
Domain
game-dev
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.