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

Detect Terminal settings prior to Fake Mailer "[ESC] to continue" in wwivd #1656

Open
the-godfather-007 opened this issue Dec 30, 2024 · 5 comments

Comments

@the-godfather-007
Copy link

Is there a way to have terminal support checked prior to the [ESC] to continue "bot check"? I would like to add color and animation to that portion of the login process but am unclear on what all is involved to do this. At the moment if I change the colors of the strings in wwivd.cpp the output displays ansi codes and not ansi color. If it's simple and someone could point me in the right direction I'm happy to play with getting it to work and submitting a "patch" once someone shares how to submit one :)

@the-godfather-007 the-godfather-007 changed the title Feature Request for Fake Mailer [ESC] to continue "bot check" Detect Terminal settings prior to Fake Mailer "[ESC] to continue" in wwivd Dec 31, 2024
@wwiv
Copy link
Contributor

wwiv commented Jan 9, 2025

what would you want that part to look like? Just trying to understand the usecase here.

Right now wwivd is pretty dumb, it doesn't have any of the ansi code linked into it.

@the-godfather-007
Copy link
Author

the-godfather-007 commented Jan 9, 2025 via email

@the-godfather-007
Copy link
Author

and or move fake mailer "Press [ESC]" to possibly lilo.cpp where ANSi is already detected and have it display prior to login info, as long as it can still serve as a good bot check.

@wwiv
Copy link
Contributor

wwiv commented Jan 16, 2025

and or move fake mailer "Press [ESC]" to possibly lilo.cpp where ANSi is already detected and have it display prior to login info, as long as it can still serve as a good bot check.

That wouldn't work since once we're in lilo, we've launched the bbs.exe which is pretty heavyweight compared to a lightweight thread from wwivd.exe and what the bot guard is designed to block.

if wwiv could add ansi detection, and optionally display a text file if ansi is detected (and a different once if it's not), woudl that wotrk? No MCI codes, but it all could be done with ANSI

just not sure how the delays and countdown would work without mci codes, is there a way to do that with ansi statically?

@the-godfather-007
Copy link
Author

If I were to write (i.e. I knew how) what I wanted I'd do as you suggest, to look for a static ansi, and if present display it, and not the string "Print [ESC] twice to continue". I would then want a choice between showing "....." periods to represent seconds versus numeric valued count down [ 1,2,3,4 ], within a sysop assigend x/y location, if numeric is selected. Likely if one is displaying a static ansi they probably would want a numeric countdown that less aesthetically disruptive to the static ANSI. I'd want the ability to change from numeric countdown to printfile 1,2,3,4,5 for each second that has passed. This would be a simple if the printfile5,4,3,2,1 exists display the ANSI File and do not display numeric 5,4,3,2,1. I would then draw a custom ansi file for each second that had passed which would animate the process and not require MCI codes. The only "MCI codes" needed for the aforementioned can be accomplished with hardcoding: X/Y and shutting the cursor off so that it's not bouncing all over the screen as the number countdown moves to the designated X/Y location (see my logoff as to how bad that looks with the cursor on as an example, smilez).

The aforementioned is more coding but would allow for legacy character countdown ".", numeric countdown within (or not) a static ANSI file at sysop assigned X/Y location [N] at say |[38;12H, or full ansi count down.

Lastly if the count down got to zero, I'd display a string or printfile that said "time expired please call back and try again" or "BOT Blocked." or whatever. Just some .. reason .. the terminal was disconnected by WWIV.

I will try to give this a go today, but would assume I fail miserably at first :) If It's helpful I can draw an ANSI for this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants