• Door Games

    From Omegus to digitalman on Tue Jul 9 15:05:33 2024
    If I wanted to write a MUD type door game with real time interaction between players is it doable with the Synchronet JavaScript or would it require a compiled language with OpenDoor toolkit etc. Obviously doing it in JavaScript would limit it to Synchronet only, are there any other caveats to using one or the other? I'm just getting my feet wet with Synchronet and it's a very impressive codebase with massive features so I wanted to poke around a little with writing door games for fun and learning. Also i couldnt seem to find in the sbbs src where the actual telnet server implementation code was. The telnet.h and telnet.c are pretty brief so i was wondering where the actual implementation of the telnet server code was located.
  • From Digital Man to Omegus on Tue Jul 9 15:41:53 2024
    Re: Door Games
    By: Omegus to digitalman on Tue Jul 09 2024 03:05 pm

    If I wanted to write a MUD type door game with real time interaction between players is it doable with the Synchronet JavaScript or would it require a compiled language with OpenDoor toolkit etc.

    No, JS doors can be multi-player real time. One method of inter-node communication (used by several JS doors you can find in your sbbs/xtrn directory or here:
    https://gitlab.synchro.net/main/sbbs/-/tree/master/xtrn) is the "JSON database" (or json-db) service. Shared files is another method popular with door games, forever. Sockets would be another method of inter-node communication.

    Obviously doing it in
    JavaScript would limit it to Synchronet only, are there any other caveats to using one or the other?

    JavaScript is quicker to get going and the develop/debug turn-around time is really quick. And by default, yes, the JS doors can only be used on modern Synchronet BBSes. If I were to write a new door game today, I'd write it in JS.
    Deuce's jsdoor (a special port of Synchronet's jsexec) does theoretically let you run JS doors on other (non-Synchronet) systems, but it requires you use the "dorkit" JS door kit when developing such JS doors.
    https://doors.bbsdev.net/

    I'm just getting my feet wet with Synchronet and
    it's a very impressive codebase with massive features so I wanted to poke around a little with writing door games for fun and learning. Also i couldnt seem to find in the sbbs src where the actual telnet server implementation code was. The telnet.h and telnet.c are pretty brief so i was wondering where the actual implementation of the telnet server code was located.

    Mostly in src/sbbs3/main.cpp.
    --
    digital man (rob)

    Synchronet "Real Fact" #91:
    Captured chat with Wayne Bell: http://wiki.synchro.net/history:waynebell_chat Norco, CA WX: 94.0°F, 41.0% humidity, 5 mph NNW wind, 0.00 inches rain/24hrs
  • From Omegus to Digital Man on Tue Jul 9 16:29:05 2024
    Thanks Rob for taking time to answer! I appreciate being pointed in the right direction and I'm sure this will lead to more questions but i will use the resources provided before asking here. Thanks again!