Compare commits

..

2 Commits

Author SHA1 Message Date
htran bf19bbe5dd docs(ror2_phd): init the research-it-later ideas 2024-10-04 20:40:18 -07:00
htran 05693709d5 fix(doxless): typecheck, use os.walk for cross-platform 2024-10-04 20:30:33 -07:00
6 changed files with 66 additions and 3 deletions

View File

@ -32,3 +32,25 @@ profile sharing process.
- [r2modman](https://github.com/ebkr/r2modmanPlus/tags) is in `%AppData%/r2modmanPlus-local/RiskOfRain2/profiles`
- [thunderstore (WARNING: DOWNLOAD ON CLICK)](https://www.overwolf.com/app/Thunderstore-Thunderstore_Mod_Manager) is in `%AppData%/Thunderstore\ Mod\ Manager/DataFolder/RiskOfRain2/profiles`
**Doxxing yourself**
I've provided [script to check for dox](./scripts/doxless.py), turns out
r2modman:
- Uses abspath, of Windows machines, on `%AppData%` (default: `SysDrive:/User/<USERNAME>/AppData/Roaming`)
for icon paths
- Does not erase this information
This is one way to leak information. I did not remove it in the current sync.
The r2modman's importer can just check for validity and go grab a different path.
Note that you'll probably will have a much better performance via `rg $USER`,
this script currently doesn't offer much.
```sh
python3 scripts/doxless.py
"""
*.mods.yml
"""
```

View File

@ -0,0 +1,15 @@
# My notes on attack speed cap
WIP
There are 2 (maybe more) routes when it comes to implementing attack speed
in a game with animation:
- Makes the character looks quirky as heck on extreme numbers of attack speed,
respecting the power fantasy for the user
- Makes the character looks like a god shooting at top speed... only to deal no
damage because of the invisible attack cap
ROR2 chooses the latter.
Meanwhile, you have a hard limit of `FixedUpdate`

8
ror2_phd/directors.md Normal file
View File

@ -0,0 +1,8 @@
# My notes on directors implementation
WIP
Most of these are available from the wiki, but we'll create scripts and manage
a small scale database for computation.

10
ror2_phd/dot_ticks.md Normal file
View File

@ -0,0 +1,10 @@
# My notes on DoT effects and ticks
WIP
Should be answer questions and point out their code for:
- Bleeds restarts the status duration (at least for each player)
- Further discuss Network latency here
- Is bleed ever better than needleticks?
- What does burn really do?

7
ror2_phd/rng.md Normal file
View File

@ -0,0 +1,7 @@
# My notes on RNG throughout an RoR2 run
WIP
RiskOfResources did note that they needed to patch out and change lots of
rng in obscure places to make it suitable for races to be reproducible in
item drop table

7
scripts/doxless.py Normal file → Executable file
View File

@ -5,7 +5,7 @@ import os
import time
import sys
def in_content(needle: str, pathlike: str):
def in_content(needle: str, pathlike: str | pathlib.Path):
content = ""
try:
# NB: latin-1 since we actually do have some language translation files
@ -16,7 +16,7 @@ def in_content(needle: str, pathlike: str):
return needle in content
def gitignore_patterns(gitignore_f: str | None = None):
def gitignore_patterns(gitignore_f: str):
with open(gitignore_f, 'r') as f:
return {line for line in (line.strip() for line in f) if not line.startswith('#') and line}
@ -33,7 +33,8 @@ def main():
username_in_content = []
user_lower = username.lower()
for root, dirs, filenames in pathlib.Path("./").walk():
for _root, dirs, filenames in os.walk(pathlib.Path("./")):
root = pathlib.Path(_root)
absdirs = [
e
for e in ((root.joinpath(d), d) for d in dirs)