Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add OSD messages + rework game strings #1285

Merged
merged 13 commits into from
Apr 9, 2024
Merged

Add OSD messages + rework game strings #1285

merged 13 commits into from
Apr 9, 2024

Conversation

rr-
Copy link
Collaborator

@rr- rr- commented Apr 8, 2024

Checklist

  • I have read the coding conventions
  • I have added a changelog entry about what my pull request accomplishes, or it is an internal change

Description

Resolves #1220

@rr- rr- added the Enhancement Improvement of an existing feature label Apr 8, 2024
@rr- rr- added this to the 4.0 milestone Apr 8, 2024
@rr- rr- requested review from a team, eikehein, lahm86 and walkawayy and removed request for a team April 8, 2024 23:45
Copy link
Collaborator

@walkawayy walkawayy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only noticed one issue. Everything else seems to work great! Only one question besides the bug I commented, is the console supposed to advance its timer in the inventory? If you use a give guns or some cheat in the inventory, the console log never disappears. This may be intended, but I wanted to bring it up just in case.

src/game/shell.c Outdated
Config_Write();
}

if (g_InputDB.toggle_fps_counter) {
g_Config.rendering.enable_fps_counter ^= true;
Console_Log(
g_Config.rendering.enable_perspective_filter
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the only bug I noticed. The FPS message is incorrectly linked to the enable_perspective_filter option.

CHANGELOG.md Outdated
@@ -14,6 +14,7 @@
- added the ability to move the look camera while targeting an enemy in combat (#1187)
- added the ability to skip fade-out in stats screens
- added support for animated room sprites in custom levels and an option to animate plant sprites in The Cistern and Tomb of Tihocan (#449)
- added OSD messages for certain actions (#1220)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might be worth writing out on screen display or console. Tbh, I didn't even know what OSD was at first til I googled it lol.

@rr-
Copy link
Collaborator Author

rr- commented Apr 9, 2024

Only noticed one issue. Everything else seems to work great! Only one question besides the bug I commented, is the console supposed to advance its timer in the inventory? If you use a give guns or some cheat in the inventory, the console log never disappears. This may be intended, but I wanted to bring it up just in case.

The text takes long time to disappear but eventually it does. The time is the same both inside and outside the inventory.

I noticed it's possible to use the item cheat in the title menu which does not make sense. I'll fix that.

Copy link
Collaborator

@lahm86 lahm86 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great.

One other cheat I thought of was opening doors while in fly mode - Door_OpenNearest in door.c. Might be awkward though to log all the activated doors - maybe just a single general message if it succeeds or not?

Also, is it worth perhaps adding a table in GAMEFLOW.md with the available string definitions? Otherwise level builders may need to refer to old gameflow files if they are looking to override any.

@rr-
Copy link
Collaborator Author

rr- commented Apr 9, 2024

Also, is it worth perhaps adding a table in GAMEFLOW.md with the available string definitions? Otherwise level builders may need to refer to old gameflow files if they are looking to override any.

I thought about this, and I've changed the package Docker command to rewrite the gameflow JSON file and include the strings from the .def file. This means the pre-releases and stable releases will contain the strings table populated as before. Unfortunately, Mac users will not benefit from this change due to the unique setup we use for its builds. I didn't see it as a priority to port this solution to this platform.

IMO this isn't the cleanest approach. I can easily see it breaking when we expect it the least, so if you can think of a way to land this table in GAMEFLOW.md instead without having to declare the same strings twice, I'm all for it. Maybe a pre-commit hook?

Added messages for the door cheat – good catch :)

Copy link
Collaborator

@walkawayy walkawayy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Tested only on Mac with no Docker though.

@rr- rr- merged commit c1ce8be into develop Apr 9, 2024
2 checks passed
@rr- rr- deleted the issue-1220-osd branch April 9, 2024 13:45
@rr- rr- added the TR1 label Oct 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement Improvement of an existing feature TR1
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Console logs for cheats and special actions
3 participants