Jump to content

[Collection] Comms Patch for Caves Travel


Recommended Posts

Hey,

I ramble on a bit. If bored, skip ahead.

Reason for mod:
https://forums.kleientertainment.com/forums/topic/123680-qol-suggestion-load-chat-history-when-traveling-to-caves-and-back

  • I had an epiphany that this would be a really cool QOL thing to have.
  • And someone had already commented on that recently. Meaning other people want to see it too.
  • Others said it would work (at least partially) in a mod format.
  • I don't know if the developers intend to fix this. But I'm holding out hope this year's QOL alludes to this.
  • I would like to inspire the devs to fix this, because it looks to me like a server-side mod for a full fix (ie: wouldn't work on official, or unmodded servers). And I liked the way the quick-drop mod was made standard :) . Good QOL
  • I'm an ex-coder and would like to exercise my coding muscles before I lose them, so to speak :p

That being said, reasons this mod(pack?/set?) might not get finished:

  • I get lazy
  • I want to do other things
  • It's happened in the past :p

So I don't want to 100% promise anything either. If I can't deliver.

Existing (similar) mods:


With that in mind:

I would very much like to make a fully featured chat history mod. But don't know how long it'll last. Or if people will want to use it how it ends up. I'm also new to DST modding (and don't want to pester people for every little thing). So I'm going to be aiming for the low-hanging fruits as much as possible.

I also like to play unmodded, so I'll be aiming to make [client-only] things where possible.

Here are the current mod "collection" parts planned:

[client-side] Announce Travel
Announce that you're travelling to/from caves (suggestion from SamSquanch)
   https://steamcommunity.com/sharedfiles/filedetails/?id=2392734498
    
I don't know how the forums work that much. If I should have a thread for each mini-mod or not. And if I should upload the mod files to the forum. If you have any particular preference, please comment on this thread.

known bugs:

  • Will show character examine text instead of chat line when Alt+Shift+Click ing

    Cherry-on-top Upgrades (maybe later): Auto announce option (stuck), Removing examine text (took too long for MVP), Actually integrate to Status Announcement mod if found/installed, non-spammable even without Status Announcements mod

[client-side] Chat History restore v1.1.1

    https://steamcommunity.com/sharedfiles/filedetails/?id=2397985175

v1.0.0: Works
v1.1.0: Added Host mode
v1.1.1: Removed "Whisper" messages from "host" mode (instead of only showing all aboveground whispers)
v1.1.2: Added a colour and icon fix. Turned out to be easier than I thought.

    known bugs:

  • Whispers bugged (in client mode will show all whispers for the server you're connected to, not just ones you see. This is an original-game bug imo. But can be fixed mod-side).
  • Will carry chat accross unconnected servers (because it's in local chat logs)

    Cherry upgrades:

  • any possibility of getting messages missed by chat log when not hosting?
  • make compatible with Electroely's mod? (need client side auto-trigger, like Announce-Travel)
  • add option to make colour of "offline" players coloured, if you remember their last colour?
  • Alert player of potentially missed messages (optional)

    Untested:

  • Are players currently "transitioning", "offline" for purposes of colour and icon?
  • Does this work on foreign-language versions? (ie: do the chat log files change based on language)
  • What happens with large* log files? (When) Does this become a problem? Is there anyting we can do about it?
  • When and where do old chat logs disappear?

[server-only/all-clients-require] Chat History restore
    Suggested by ShadowDuelist in the above QOL thread.

  • Need to figure out if I need to do networking stuff to send info from server to client, and if so, how that works
  • Will probably not be compatible with the [client-side] version. So fix that as part of the scope of this. (read: disable client-side, when server-side exists)

    Cherry upgrades: Possible to suppress/show all whispers from server logs (is this even desirable?), extract common functionality?
    
[????] Scrollable chat history

  • Mouse wheel already works on recipes
  • Scroll bar does exist in DST natively (player menu if more than 6)
  • Possible to cludge the existing chat history widget
  • Possible to create new UI
  • Possible to display only client, or possibly integrate with server-side history

    
    Cherry upgrades: Possible to notify of other players unavailability; timestamps (currently disparate between server and client logs); Copy/paste select; someone suggested text colour/size/font customization?; Move as much as possible to client-side for use on unmodded server; have a server-mod way of not polluting joining clients keybinds, or changing their existing UI, but also be intuitive to use otherwise?; is it even possible to have a chat window open DURING loading??; somehow syncing existing chat hostory/log files for edge cases?; all of the above, and customizable in mod options :p

Thank you for listening to my Ted Talk. Now it's my time to listen to you.

Edited by Bigfootmech
Link to comment
Share on other sites

Hey, I was making a mod for keeping messages when traveling between caves and surface when a friend informed me of one of your mods. I saw this thread and I figured, I might as well post this here:
https://steamcommunity.com/sharedfiles/filedetails/?id=2400388649
It's a mod that will save messages a user receives while loading, and send them back once they finish loading. It's all clients require, though.

  • Like 1
Link to comment
Share on other sites

I like it :D

Haven't tested it yet, but intend to when I get the chance

For mod compatibility, we'd need to figure out how to synchronise properly:

- messages sent before player disconnects from old server (logs)

- messages sent after player disconnects from old server, and connects to new one (your mod side)

- messages sent after player connects to new server, but before player's fully loaded in/appears (???, edge case. I don't know exactly when "USERFLAGS.IS_LOADING" changes. Currently, it could be that both mods pick up the message, or they're sent out of order)

- messages sent at the moment player connects? (???, edge case, need to test)

Do you wanna work on this together at all? :o

My Steam name is the same as here

Edited by Bigfootmech
Link to comment
Share on other sites

Tested it finally,

Currently, the mods aren't fully compatible, but they're both better than nothing.

The time they do collide (like 1/3 of the time. maybe less), you only lose old messages you would have seen with my client mod.

I'm tempted to say that "this should be solved client-side, but it could be done on either". (I could be wrong on both counts)

But I don't know how much work it'd be, or the demand for it, so I'm gonna put it as a lower priority for now, until I get more stuff out

 

Your mod also seems more lightweight, and is likely to be more language-compatible than my solution for now. But also doesn't provide older history.

 

I wanna say that I'll keep going with what I was doing and make my own all-clients-require version (since that fits better with my own compatibility / in the scheme of "Chat History"). Then people can use whichever they prefer :)

Then if yours gets hugely more popular, or implemented in to the base game, I can make mine compatible

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
  • Create New...