A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Celerity Backlog | |||||||||||||||||||||||||
2 | Created | Completed | Milestone | Priority | Estimate | ID | Story | Script Associated | Debug Journal | |||||||||||||||||
3 | 07-15-2022 | 07-18-2022 | 1 | 2 | 2 | 1 | The game can generate a file to save the player's data in the same directory as the player's settings. | LevelBehavior | ||||||||||||||||||
4 | 07-15-2022 | 07-22-2022 | 1 | 3 | 2 | 2 | There is a button in the options menu to delete the player's saved game. | LevelBehavior | 07-22-2022: The format for deleting the saved game has been copied from the format for rebinding keys: The player clicks the button to do the action, a dialogue window opens, prompting them to press a key, then the action is undertaken and the dialogue window closes. A boolean is used to determine if the player is currently at the dialogue window, and a function is run during Update() as long as that boolean is true. the issue I'm having with the delete saved game function is that whenever I call that boolean, it only returns it's initialized value even if it's supposed to have been changed since then. SOLUTION: I made the boolean static. I must have been having a scope issue. | |||||||||||||||||
5 | 07-15-2022 | 07-18-2022 | 1 | 2 | 2 | 3 | NRG Capsules add themselves to a list (on RAM, not disk) when they've been collected. | NRGCapsuleBehavior LevelBehavior | ||||||||||||||||||
6 | 07-15-2022 | 07-18-2022 | 1 | 1 | 1 | 4 | There is a save button in the pause screen that will generate a save file if it doesn't exist. | LevelBehavior | ||||||||||||||||||
7 | 07-15-2022 | 07-18-2022 | 1 | 2 | 3 | 5 | when the save button is pressed, the list of NRG capsules collected this play session is dumped into the save file. | LevelBehavior | ||||||||||||||||||
8 | 07-18-2022 | 07-22-2022 | 1 | 2 | 1 | 6 | TimeTrials add themselves to a similar list as NRG capsules (on RAM) when they've been completed, EVEN if the NRG hasn't been collected. | LevelBehavior TimeTrialStartBehavior | ||||||||||||||||||
9 | 07-18-2022 | 07-18-2022 | 1 | 2 | 1 | 7 | when the save button is pushed, the player's position and rotation are also saved to the file. | PlayerSavedGame | ||||||||||||||||||
10 | 07-18-2022 | 08-02-2022 | 2 | 3 | 3 | 8 | When the game is started, the player's last saved location and rotation are where they are spawned. | LevelBehavior | ||||||||||||||||||
11 | 07-20-2022 | 08-04-2022 | 2 | 2 | 2 | 9 | When the game is started, NRG capsules that had already been collected according to the save file will collect themselves again. | NRGCapsuleBehavior | ||||||||||||||||||
12 | 07-20-2022 | 08-02-2022 | 2 | 3 | 1 | 10 | When the player is loaded, they are loaded with their previous velocity and diveReady data. | LevelBehavior PlayerSavedGame | ||||||||||||||||||
13 | 07-22-2022 | 07-22-2022 | 2 | 2 | 1 | 11 | The player can't start a time trial while they are in the middle of one | TimeTrialStartBehavior References | ||||||||||||||||||
14 | 07-22-2022 | 08-02-2022 | 2 | 1 | 2 | 12 | When the game is loaded, the level logic reads the data on disk and stores it in its lists. | LevelBehavior | ||||||||||||||||||
15 | 07-25-2022 | 07-25-2022 | 2 | 2 | 2 | 13 | Rails have their own behavior associated with them. | GrindyRailBehavior | ||||||||||||||||||
16 | 07-25-2022 | 07-28-2022 | 2 | 2 | 2 | 14 | Rails know when the Player has collided with them | GrindyRailBehavior | ||||||||||||||||||
17 | 07-25-2022 | 07-28-2022 | 2 | 2 | 2 | 15 | The Player knows when its on a rail | PlayerBehavior | ||||||||||||||||||
18 | 07-25-2022 | 07-28-2022 | 2 | 2 | 3 | 16 | GrindyRailBehavior has several functions returning information pertinent to the playerbehavior script to put the player on the rail. | GrindyRailBehavior | 7/18/2025 | |||||||||||||||||
19 | 07-29-2022 | 07-29-2022 | 2 | 2 | 2 | 17 | Player keyboard movement function is in update rather than fixed update | PlayerBehavior | I moved the function to the top of update and it worked, but coming off a wall would give me a serious boost in speed that wasn't intentional. it didn't matter if the player jumped off the wall or fell off it, if they were holding a movement key when they came off it, they'd go flying in that direction at the wallrun capped speed. SOLUTION: I have a MoveStatsSet() function that sets the move stats, and for one frame, the player would have the top speed cap for wallrunning while they weren't on the wall. so I moved the keyboard input func after that so that wouldn't happen. | 1/26/2024 | ||||||||||||||||
20 | 08-02-2022 | 08-02-2022 | 2 | 2 | 2 | 18 | when the player gets to the end of a rail or gets off the skateboard, they stop grinding | PlayerBehavior GrindyRailBehavior | ||||||||||||||||||
21 | 08-04-2022 | 08-04-2022 | 3 | 1 | 1 | 19 | time trials that have been collected previously don't spawn | TimeTrialStartBehavior | ||||||||||||||||||
22 | 08-04-2022 | 08-12-2022 | 3 | 2 | 2 | 20 | Grindy rails give the player speed properly and player doesn't fly off them | PlayerBehavior | The player gets desynced from the rail very quickly around corners. the way I'm keeping the player on the rail right now is just setting their velocity tangent to the spline they are closest to, and because points on the spline are broken up to a certain resolution (finite) the player has a tendency to come off the rail around corners. SOLUTION: I just got GetNearestPoint() to work, and it doesn't do what I want it to do. I will instead use GetPointAtLinearDistance() and send the player up and down the rail with that. that means spoofing the player's velocity, because rather than move the player by changing his velocity, I'm instead going to be translating his transform. I've refactored every function that uses the player's velocity, to use the appropriate of myRB.velocity and "myImaginaryVel", which is used exclusively to translate the player along a rail. | |||||||||||||||||
23 | 08-04-2022 | 08-12-2022 | 3 | 3 | 2 | 21 | There is a big terrain south of the player (behind where the player spawns) for them to explore | |||||||||||||||||||
24 | 08-04-2022 | 08-15-2022 | 3 | 2 | 2 | 22 | There is a model and prefab for the speed trap camera | |||||||||||||||||||
25 | 08-04-2022 | 08-15-2022 | 3 | 2 | 2 | 23 | There is a script for the speed trap camera that animates the camera to look at the player | SpeedTrapBehavior | ||||||||||||||||||
26 | 08-04-2022 | 08-22-2022 | 3 | 3 | 3 | 24 | When the player is rising or falling in the air, on the skateboard, the appropriate animations play | PlayerAnimationBehavior | ||||||||||||||||||
27 | 08-04-2022 | 08-22-2022 | 3 | 3 | 2 | 25 | when the player passes a speed trap at the appropriate speed or higher, it spawns NRG | SpeedTrapBehavior | ||||||||||||||||||
28 | 08-04-2022 | 08-22-2022 | 3 | 3 | 3 | 26 | There is an element around the speed trap that denotes its challenge speed | SpeedTrapBehavior | ||||||||||||||||||
29 | 08-04-2022 | 08-24-2022 | 3 | 3 | 1 | 27 | There is a list in LevelBehavior, keeping track of speed traps completed, and speedtraps get added to that list when they are completed | LevelBehavior SpeedTrapBehavior | ||||||||||||||||||
30 | 08-04-2022 | 08-26-2022 | 3 | 2 | 3 | 28 | speed traps progress is loaded when the game starts | LevelBehavior PlayerSavedGame SpeedTrapBehavior | this line of code is unhappy: foreach (string speedTrapName in myLoadedGame.SpeedTrapsCompleted) SOLUTION: I forgot that I have 2 different constructors for PlayerSavedGame, and when the player is spawned and there is no saved game on disk, it calls a separate constructor than when the player is spawned and they *do* have a saved game. And in the constructor that is called when there is no saved game, I forgot to initialize the SpeedTrapsCompleted array. | |||||||||||||||||
31 | 08-04-2022 | 08-26-2022 | 4 | 1 | 2 | 29 | The player can denote that a speed trap has been completed by looking at it | SpeedTrapBehavior | ||||||||||||||||||
32 | 08-12-2022 | SHELVED | 4 | 2 | 3 | 30 | Rails can be closed and they don't stop the player when they reach their origin. | PlayerBehavior GrindyRailBehavior | ||||||||||||||||||
33 | 08-12-2022 | 08-23-2022 | 4 | 1 | 1 | 31 | Time trials load their collected status correctly | TimeTrialStartBehavior | When the scene is loaded, depending on when the order of execution for scripts, one time trial or the other doesn't give its collected status before the NRGTracker UI element is initialized, making the count off until it's updated. SOLUTION: NRGTrackerBehavior is now checking every frame whether or not it needs to update. | |||||||||||||||||
34 | 08-12-2022 | 4 | 2 | 4 | 32 | riding on the terrain, the player doesn't lose contact with the ground except riding off the edge or jumping | PlayerBehavior | |||||||||||||||||||
35 | 08-23-2022 | 4 | 1 | 3 | 33 | I can place more than one rail in the scene | GrindyRailBehavior | |||||||||||||||||||
36 | 08-24-2022 | 4 | 3 | 2 | 34 | speed traps will save and load the speed they were won at | SpeedTrapBehavior PlayerSavedGame LevelBehavior | |||||||||||||||||||
37 | 08-24-2022 | 4 | 2 | 4 | 35 | The terrain behind the player is populated with stuff to do | ||||||||||||||||||||
38 | 08-26-2022 | 4 | 3 | 3 | 36 | The terrain is painted to be beautiful | ||||||||||||||||||||
39 | 08-26-2022 | 4 | 3 | 3 | 37 | There is a Prefab for speed boost Pads | SpeedPadBehavior | |||||||||||||||||||
40 | 08-26-2022 | 4 | 3 | 3 | 38 | SpeedPads give the player speed based on their preset speed bonus | SpeedPadBehavior | |||||||||||||||||||
41 | 08-26-2022 | 5 | 3 | 2 | 39 | if the player passes an NRG capsule close enough and at a certain speed or greater, it will break and they will collect it | PlayerBehavior PlayerAnimationBehavior | |||||||||||||||||||
42 | 08-26-2022 | 5 | 4 | 3 | 40 | when the player collects NRG by passing by it at great speed, an animation plays of the player punching | PlayerBehavior PlayerAnimationBehavior | |||||||||||||||||||
43 | 5 | 41 | ||||||||||||||||||||||||
44 | 5 | 42 | ||||||||||||||||||||||||
45 | 5 | 43 | ||||||||||||||||||||||||
46 | 5 | 44 | ||||||||||||||||||||||||
47 | 5 | 45 | ||||||||||||||||||||||||
48 | 5 | 46 | ||||||||||||||||||||||||
49 | 5 | 47 | ||||||||||||||||||||||||
50 | 5 | 48 | ||||||||||||||||||||||||
51 | 5 | 49 | ||||||||||||||||||||||||
52 | 50 | |||||||||||||||||||||||||
53 | 51 | |||||||||||||||||||||||||
54 | 52 | |||||||||||||||||||||||||
55 | 53 | |||||||||||||||||||||||||
56 | 54 | |||||||||||||||||||||||||
57 | 55 | |||||||||||||||||||||||||
58 | 56 | |||||||||||||||||||||||||
59 | 57 | |||||||||||||||||||||||||
60 | 58 | |||||||||||||||||||||||||
61 | 59 | |||||||||||||||||||||||||
62 | 60 | |||||||||||||||||||||||||
63 | 61 | |||||||||||||||||||||||||
64 | 62 | |||||||||||||||||||||||||
65 | 63 | |||||||||||||||||||||||||
66 | 64 | |||||||||||||||||||||||||
67 | 65 | |||||||||||||||||||||||||
68 | 66 | |||||||||||||||||||||||||
69 | 67 | |||||||||||||||||||||||||
70 | 68 | |||||||||||||||||||||||||
71 | 69 | |||||||||||||||||||||||||
72 | 70 | |||||||||||||||||||||||||
73 | 71 | |||||||||||||||||||||||||
74 | 72 | |||||||||||||||||||||||||
75 | 73 | |||||||||||||||||||||||||
76 | 74 | |||||||||||||||||||||||||
77 | 75 | |||||||||||||||||||||||||
78 | 76 | |||||||||||||||||||||||||
79 | 77 | |||||||||||||||||||||||||
80 | 78 | |||||||||||||||||||||||||
81 | 79 | |||||||||||||||||||||||||
82 | 80 | |||||||||||||||||||||||||
83 | 81 | |||||||||||||||||||||||||
84 | 82 | |||||||||||||||||||||||||
85 | 83 | |||||||||||||||||||||||||
86 | 84 | |||||||||||||||||||||||||
87 | 85 | |||||||||||||||||||||||||
88 | 86 | |||||||||||||||||||||||||
89 | 87 | |||||||||||||||||||||||||
90 | 88 | |||||||||||||||||||||||||
91 | 89 | |||||||||||||||||||||||||
92 | 90 | |||||||||||||||||||||||||
93 | 91 | |||||||||||||||||||||||||
94 | 92 | |||||||||||||||||||||||||
95 | 93 | |||||||||||||||||||||||||
96 | 94 | |||||||||||||||||||||||||
97 | 95 | |||||||||||||||||||||||||
98 | 96 | |||||||||||||||||||||||||
99 | 97 | |||||||||||||||||||||||||
100 | 98 |