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

Dolly camera post-mortem review

Open
#1,758 1 comment 0 reactions 0 assignees View on GitHub
area: documentation area: Lua API
Dominant language
C++
Stars
679
Forks
290
Avg merge
3d 2h
Merged PRs (30d)
40

Description

Mostly for the Lua API.

- [ ] `RunDollyCamera` should probably accept the runtime in seconds (not milli)
- [x] `PauseDollyCamera` should have a "pause now" argument, perhaps if you pass `nil`. I assume that's what the current default value of -1 does, if so then just document that in the luadoc.
- [ ] `PauseDollyCamera` should probably do something about values outside of the 0-1 range. Clamp or reject
- [ ] `SetDollyCamera[Look]Curve` should have their args documented. What they mean and what format they are in
- [ ] `SetDollyCamera[Relative]Mode` shouldn't accept magic values 1 and 2. Split it into functions, perhaps make the other existing functions also set mode
- [x] `SetDollyCameraLookPosition` should accept floats in addition to ints
- [ ] make `SetDollyCameraLookUnit` give feedback if given unit is not currently visible (perhaps because it does not exist). Return a bool or something
- [x] make sure `SetDollyCameraLookUnit` obeys LoS rules, i.e. stop tracking if the unit goes into fog of war
- [x] check #1757.

Contributor guide

Open the contributing guide

Research direction

Start with the Lua API entry points named in the checklist: RunDollyCamera, PauseDollyCamera, SetDollyCamera[Look]Curve, SetDollyCamera[Relative]Mode, SetDollyCameraLookPosition, and SetDollyCameraLookUnit. Review the existing argument handling and documentation, then resolve the remaining unchecked behavior and API questions while confirming the completed items and #1757. Done means the agreed API behavior is implemented and documented for each remaining item.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.