branchrust_reboot/main/naval_update/naval_missionscancel
69 Commits over 61 Days - 0.05cph!
- Setup objective resetting for go to underwater lab objective
- Removed serialized mission icon definitions from mission assets, instead paired these with an enum value in new MissionIconsConfig scriptable object. Objectives have a virtual method to define which icon type should be used per objective. SpeakWith type objectives now use the talk with mission provider speech bubble icon, other objective types use the generic mission icon
- Setup being able to have multiple active objective markers on the map and compass at once
- Fix issue with check for prerequisite objectives
- NPC dialogue panel no longer appears clickable when clicking does nothing
- Improvements for resetting some objective types, setup for the deep sea islands and floating city missions. Affected objectives will no longer appear as complete if you no longer meet their complete criteria
- Add 'blockReset' to objective statuses. Used to block objectives from resetting themselves if they are auto completed by another objective
- Moved mission point for floating city to be the a zeroed child transform of Casino Barge
- Map markers now get updated immediately upon opening and closing map
- Fix SpeakWith objective types showing pings outside of the tutorial
- SpeakWithTargetNPC now properly updates the objective location
- Objective ShouldShowOnMap now also checks if prerequisite objectives are met
- Objectives now check if prerequisite objectives are met before marking themselves as started
- Fix missions list in map sometimes not showing active missions
- Fix rotation of map mission marker for the deep sea entrance portal
- Cache update map markers delegate
- Fix deep sea map marker jitter
- Clicking a mission in map view now centers on the deep sea marker if next objective is in the deep sea
Run S2P on a bunch of scenes due to updated NPC prefabs
Deep sea prefab variants missing from manifest entity list
- Setup metal detector source spawn points for rest of the deep sea islands
- Remove NPC name from ConversationData and added to NPCTalking, prevents some NPC's from having names defined in different places
- Made placeholder floating city mission provider look not placeholder
- Improved how we retrieve conversation data node names
- Fix issue where loaded mission data could retrieve an invalid active mission index
- Improvements for how map and compass mission markers handle deep sea locations
- Various bits of cleanup to places retrieving the active mission instance from a player
Make floating city delivery mission non repeatable
Change phrase drawer colour to be transparent so it's more readable in certain circumstances
- Add deep sea island treasure hunt mission, given from Vagabond in outpost
- Setup metal detector sources for deep sea islands, only setup for tropical1 for now. Metal detector sources in the deep sea have their own loot list
- Add IsValidSource to IMetalDetectable. Useful for defining spawned sources which can only be detected by players under certain circumstsances
- Add 'soft completed' flag to objective statuses as an additional way of handling objective progress
- Add ability to hide objective progress in mission objectives todo HUD
Codegen, rebuild phrases, update manifest
Run FishingVillageB S2P
- Add support for incremental bonus rewards, to dispense a reward depending on how close we got to the objective target. Setup for underwater labs bonus objective
- Add option for distance threshold for kills from team members on KillEntity objective types. Enabled this and set to 50m for the scientist boat hunt mission objective
- Decreased scientist boat hunt target amount to 8 and updated mission phrases to be specific to RHIB
- Increased wood item amount for floating city wood delivery mission
- Add ability to hide mission markers on map and compass per objective. Set this up for underwater labs mission, so compass marker disappears whilst within the vicinity of the lab. Marker stays visible on map to indicate the general mission area
- Modify mission location to belong to each objective rather than a single mission location belonging to the mission instance to enable having more than one marker for a mission active at once (not fully setup yet)
- Add some client equivalent methods on missions for Think and OnObjectiveStart. Did not end up using these but leaving them as could be useful
- Separate out the methods for flagging missions protobuf data as dirty and saving that data. Saved a few instances where we were uneccessarily generating and sending data more than once in a server update cycle
- Made ObjectiveStatus poolable and removed associated allocations
- Fix kill entity mission objectives being incremented twice if kills from team members are enabled
- Fix mission fail timer not using Unix time
- Bump network protocol due to updated protobuf
Commit progress
- Setup bonus objective for underwater labs mission
- Add persistent mission entities to MissionInstance, for tracking entities which exist outside of the mission and are not spawned as part of the mission. Entity info added alongside spawned mission entities in mission protobuf data
- Small improvements for Divemaster and Hunter conversation dialogue
- Fix NRE when opening dialogue graphs which contain speech nodes with several fail conditions
- Small improvement for displaying mission list node
- Add attribute and property drawer for ConversationData to display button to open graph view where a ConversationData asset is displayed in the inspector
- Improved BaseMission editor inspector for objectives
- String optimisation for MissionsHUDToDo
- Conversation panel size no longer appears to quickly change after pressing a response and then waiting for server response
- Changes to how conversation data is saved from the dialogue editor graph
- Fix oil rig mission item shortname
- Dialogue options populated through a mission list node now display a mission icon next to the dialogue choice, indicating the option is a mission name. Added flex elements to dialogue option UI to support this
- Fixed issue where displayed dialogue option number could be wrong when displaying a mission list node
- Can now talk to NPC's whilst using noclip
Post merge fixes:
- Fix phrase conflict
- Rebuild manifest
- Add mission relating to underwater labs, given by fishing village Divemaster
- Some small improvements to existing Divemaster dialogue
- Fix dialogue graph node connections not being deleted with the node
- Add string identifier field to mission event payload
- Dialogue graph now saves before closing due to an assembly reload
- Fix NPCMissionProvider releasing the wrong list to pool
Some fixes for the boombox as it relates to the new mission:
- Boombox play phrase no longer refers to a cassette tape if there is no valid tape inserted
- Microoptimizations to boombox distance checks
Reapply oilrig monument changes for mission
Improvements to dialogue graph speech nodes, they now look nicer
FIx for recent change to LocalizationTokenDrawer, label text should now being displayed correctly
Add mission to hunt deep sea RHIB scientists, given to placeholder floating city mission provider
- Adds additional mission from Lumberjack to pay a visit to a floating city
- Update Lumberjack to support dispensing more mission types
- Update Lumberjack dialogue tree, slightly better responses for having recently completed missions and having no missions available
- Add temp new NPC on floating city for new missions
- Update mission list dialogue tree node to support having different dialogue depending on the selected mission
- Add option for kills from team members counting towards kill entity type mission objectives (does not affect existing missions)
Revert change to EditorSettings
Fix how phrases were being displayed and edited in conversation graph editor, now utilizes the custom editor for phrases
- Various fixes for oil rig mission
- Bonus rewards are now displayed in the mission complete screen if you achieved them
- Various fixes and improvements for how rewards are displayed in the editor mission preview window~
- Bonus rewards can now also be non-items
- Cleanup bits of MissionsHUD, moved UpdateTImeText to InvokeRepeating
Codegen and localization rebuild
Restore mission rewards rebalance lost in merge
- Finish objectives for oil rig mission, assigned as new available mission from Outpost scientist
- Optional objectives are now prefixed as optional in the mission preview conversation dialogue
- Fix some issues with new reward choices
- Remove ShowIf attribute, was not working well enough across the board
- Add TryGetEntity to EntityRealm, works like Find but a little neater