OpenRift Posted September 23, 2020 (edited) Remember DWANGO? No, not the Doom WADs, the dial-up service. And y'know DOSBox? In comparison to most source ports, finding a person to play with in DOSBox has always been a challenge. You have no immediate chance of finding someone to play over the internet with you without seeking people out on forums, Discord, or IRC. There's no DWANGO anymore to look for players and servers with, so the appeal of DOSBox multiplayer has, unsurprisingly, faded into small niches. Enter TWANGO. TWANGO is a take at not only reviving the DWANGO service into the emulation age, but to make DOSBox multiplayer more accessible to all, newcomers and veterans alike. Our goals for TWANGO are as follows: Connection over DOSBox's IPXnet tunneling through TCP/IP Support for connection via real hardware and virtual machines like PCem through @fraggle's Dali Compatibility with all of DWANGO's originally supported titles A common medium for finding players to play with in DOSBox Any other ideas that may come up along the way Now, our call to action. If any of you have any programming skills in relation to DOS programs, DOSBox, IPX emulation/tunneling, general networking knowledge, decompiling, or anything of the sort, please join us at https://discord.gg/vaFTspN and give us a hand!! Edited December 30, 2020 by OpenRift 10 Share this post Link to post
MaxwellDoug Posted September 23, 2020 Correction from the lead developer: team of 3, plus 1 tester at the time of posting. 3 Share this post Link to post
Doomkid Posted September 24, 2020 I know sometimes fraggle used to host vanilla Doom servers, though I don’t know if he’s done that for a while. Some sort of vanilla servers browser, with pre-launch chat available, would be fantastic. It’s funny, just the other day I was thinking “how hard would it be to make a server browser that runs in DosBox?” and now here’s this thread! Probably old news for DosBox doomers, but xttl’s fixed ipxsetup.exe from 2016 allows -extratics and -dup 2 which make laggy connections much more playable. I heard that the DWANGO launcher automatically enabled these commands to help with the latency issues. The old version of ipxsetup was not able to take advantage of these commands. I hope to see more people getting involved with this, the thought of a browser that runs in DosBox has always appealed to me. You might find some interested parties in the Chocolate Doomslayers discord too! 1 Share this post Link to post
OpenRift Posted September 24, 2020 15 hours ago, Doomkid said: I know sometimes fraggle used to host vanilla Doom servers, though I don’t know if he’s done that for a while. Some sort of vanilla servers browser, with pre-launch chat available, would be fantastic. It’s funny, just the other day I was thinking “how hard would it be to make a server browser that runs in DosBox?” and now here’s this thread! Probably old news for DosBox doomers, but xttl’s fixed ipxsetup.exe from 2016 allows -extratics and -dup 2 which make laggy connections much more playable. I heard that the DWANGO launcher automatically enabled these commands to help with the latency issues. The old version of ipxsetup was not able to take advantage of these commands. I hope to see more people getting involved with this, the thought of a browser that runs in DosBox has always appealed to me. You might find some interested parties in the Chocolate Doomslayers discord too! I did find some people that were interested, one of which being the developer of a DOSBox fork, DOSBox-staging. I did advertise in the choco discord among a great many others. 2 Share this post Link to post
OpenRift Posted October 27, 2020 TCP/IP Wide Area Network Games Operation 2 Share this post Link to post
Redneckerz Posted October 27, 2020 Does VanillaDM help here? Quote Twango Love the name. 1 Share this post Link to post
OpenRift Posted October 27, 2020 5 hours ago, Redneckerz said: Does VanillaDM help here? Love the name. Well right now we're working to have it all run in DOS, thanks to the guy who made this, the project has become very much plausible. Our (my) original vision of reverse-engineering the original DWANGO client to be a front end has been pushed to the side until we can find someone up to the task, because Scott, having created the predecessor to DWANGO has some um... feelings against DWANGO, so he's making his own front-end. However, he is allowing us room to have custom clients interface with the middleman/backend, so TWANGO Classic, as I've come to call it, is still a possibility. Also @Baratus II proposed the idea of a Win32 client reminiscent of DWANGO95. It's a definite maybe, albeit very low priority, because that could be a lot more work to get things properly interfacing between Windows and DOSBox. Or it could be a client designed for Win9x that would connect to TWANGO servers via Dali and launch DOS games natively. I don't know. 1 Share this post Link to post
THEBaratusII Posted October 28, 2020 TWANGO Proof of Concept Mockup Screenshot! I originally uploaded this to a Discord server, now I will show it to this thread. 6 Share this post Link to post
Mr.Rocket Posted November 21, 2020 (edited) I made a Doom and Doom2IPX game dll a few years ago, and actually works pretty well, it of course also uses DosBox as the primary engine for IPX emulation. The concept is similar but in this case it uses Doom Connector for its frontend. However the real reason for my post is this: I was looking at some BBS software that uses modern connection emulation to host an actual BBS. This was awhile back and at the time I had an idea to achieve something very similar to the TWANGO project mentioned in this very thread, though some years ago. The BBS software can be found here, if it could be of some help. Here's also a list of currently running BBS's. ;) 1 Share this post Link to post
OpenRift Posted December 15, 2020 UPDATE: Due to some recent difficulties, our lead programmer is in need of a "C++ Guru" for assistance with various issues. If you or someone you know fits such a description, join/tell them to join this discord. 1 Share this post Link to post
Ralphis Posted December 15, 2020 6 hours ago, OpenRift said: UPDATE: Due to some recent difficulties, our lead programmer is in need of a "C++ Guru" for assistance with various issues. If you or someone you know fits such a description, join/tell them to join this discord. It might be a better idea to just pose the questions here so that a wide array of people can attempt to answer 0 Share this post Link to post
sduensin Posted December 15, 2020 AH HA! I finally managed to get logged in here again! I'm the "lead programmer" mentioned above. I don't really have any specific issues other than there's now a "subproject" (if you will) of the main client and I would like help with it so this can go online before the end of time. :-) I've basically broken the GUI toolkit off of the main client and set it up so it can run on both DOS and Linux. I'd like help finishing this up. Once our screens aren't so ugly, we can start showing things to people. And, it's not like we're writing an entire GUI. We're just providing a "driver" for FLTK that is shared by both OSs so it behaves the same on each. That allows us to debug and test with Linux and see the same thing we'll end up with in DOS. Basically looking for someone good in C++, ideally on Linux, and even better if they have familiarity with SDL2. Also, unlike most internet pie-in-the-sky projects, this one is entirely do-able and will be done. I actually know what I'm doing. :-D 2 Share this post Link to post
wallabra Posted December 23, 2020 (edited) Wait, how did you figure out building ISO C++ for a platform like MS-DOS? Did you use the OpenWatcom compiler? That thing still requires local variables to be put in the start of functions, like truly pre-C99 stuff. Or perhaps you use DJGPP? I don't know if people still use that thing. Or perhaps you build a freestanding x86 binary, like a .COM file. I've used SDL with C, but not really used C++ that much. I have done C++ stuff in the past, and the classes might actually be nice for stuff like dynamic dispatch, say, should we ever need multiple possible backends for a connection handler, like dunno, if we wanted users to be able to join via the network (serial/TCP), or register via web (HTTP). 0 Share this post Link to post
sduensin Posted December 23, 2020 Using OpenWatcom 2.0 beta. It's not bleeding edge but it's good enough to handle what I need. I've been able to compile a surprising amount of modern code with it. At the moment I'm trying to work out some memory issues with FLTK and then we'll be back off and running. Drop by the Discord! 1 Share this post Link to post
wallabra Posted December 23, 2020 Ah, that's interesting. OpenWatcom is indeed a surprisingly standardized and just overall good compiler, all things considered. True to its legacy, I'd say! Are you sure you can get FLTK to work with VGA? Like, directly into the framebuffer? It definitely is a fine library, and I find its minimalism often turns out to be a big plus more than anything else. But it might be necessary to write support manually if you want to draw widgets or even windows directly in the framebuffer. I still think it could turn out better than using an existing alternative, like perhaps a weird TUI dialog library, or even something silly like some ancient version of Allegro. 0 Share this post Link to post
sduensin Posted December 23, 2020 I already have it working, although with some bugs (RGB byte order, some pointer fubars, etc). This is what I want help with. I've taken the DOS port and merged it back into the FLTK master branch code. The DOS port I am using provides the low-level hardware access for reading the keyboard and mouse as well as the VESA SVGA code to draw to the screen. However, it also uses 8.3 filenames which there's really not a need for during development. So I took the FLTK "driver" bits and made them work with the master branch of FLTK 1.4. Then I simplified the driver by removing the legacy Allegro code and only leaving the new SVGA code. Finally, I took the low-level DOS stuff and split it off the driver and wrote Linux stubs for all those functions. The end goal is to have a driver for FLTK that runs on both Linux and DOS so I can debug and enhance it using modern tools on my Linux box. It's getting there. But I'd love help! (Also, FYI, there's a lot more complete than just a broken GUI port. The client and server communications, security as well as a bunch of database features and such are in place and working.) 1 Share this post Link to post
sduensin Posted December 30, 2020 Just a follow up... We're moving again! A large amount of the DOS UI code now runs under Linux where it can be properly debugged and enhanced. Drop by the Discord! 3 Share this post Link to post