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 in-game chat UI for Archipelago messaging. #93

Open
Ijwu opened this issue Jun 22, 2022 · 2 comments
Open

Add in-game chat UI for Archipelago messaging. #93

Ijwu opened this issue Jun 22, 2022 · 2 comments
Labels
enhancement New feature or request high priority Do this before working on lower priority items.

Comments

@Ijwu
Copy link
Collaborator

Ijwu commented Jun 22, 2022

Consider using HKMP as a starting point/example. It would be a good idea to have an in-game UI for chat/archipelago messages which also enables sending messages to the server. This will prevent the need for HK players to need to use the TextClient alongside the game.

@Ijwu Ijwu added enhancement New feature or request high priority Do this before working on lower priority items. labels Jun 22, 2022
@Ijwu Ijwu added this to the 0.2.0 milestone Jun 22, 2022
@dewiniaid
Copy link
Collaborator

Some big challenges with this:

Text input in Unity is often messy. I've seen multiple cases when typing in one place (i.e. a C# REPL console) would trigger commands elsewhere (great fun when I had "K" set to "Kill Hero" in Debug Mod).

Benchwarp has a keyboard shortcuts feature which allows you to warp to specific benches by using two-letter combinations while the game is paused if enabled (e.g. FC => Forgotten Crossroads stag). It needs to not trigger when typing commands in chat.

Keyboard players need to not have chat be inadvertently triggered by playing the game, or game actions triggered while in chat.

@BadMagic100
Copy link
Contributor

BadMagic100 commented Nov 24, 2022

If you wanted the really easy route to this and are not concerned with taking dependencies, I just released a mod called ModTerminal which deals with all of these concerns and has support for handling commands provided by other mods. There are compelling reasons you may not want to go this route though (e.g. the key binding for toggling open the terminal is handled by taking a dependency on debug, and there are some debug commands included as well).

If you wanted a less easy route, ModTerminal uses MagicUI for text input and output, which does a good job of making the text input less awful. ModTerminal is MIT-licensed on my GitHub, so one could copy-paste most of the fiddly bits including UI creation and locking debug and benchwarp hotkeys

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request high priority Do this before working on lower priority items.
Projects
None yet
Development

No branches or pull requests

3 participants