Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

SaladBadger

Members
  • Content count

    1446
  • Joined

  • Last visited

Everything posted by SaladBadger

  1. SaladBadger

    Partial Doom alpha network driver

    ... Well, kinda. It only generates random player commands for player 2 so far, since I wanted to verify that it works before I actually do anything, but amazingly it seems to: Doom 0.4 and 0.5 watch for a block of memory installed at an interrupt vector 0x60 to 0x68, and if it finds it will use that to hold some of the game state, including player commands. If it includes a vector number for network callbacks, it will treat the game as a netgame and run some extra code for synchronization. This driver synchronizes the fake player 2 with player 1 and then generates a random ticcmd, but hypothetically it shouldn't be hard to get this communicating over a network. I don't know if it'll stay synced at all, but I guess there's only one way to find out. My early source code and driver are here. Put it in your alpha 0.4 directory and run "ALPHANET" to start the game. This has only been tested in Dosbox-X and may not work on a real machine. I've also had problems with the alpha constantly crashing, I think due to leaky state between sessions, you may need to restart Dosbox in order to run it again. Otherwise, watch as player 2 zips off into the sunset and then finds some obscure physics bug to vanish until they randomly reappear again. ALPHANET.zip The source code has been compiled with a recently nightly build of OpenWatcom, can't comment on whether or not it'll work in any other version. The player will probably vanish the moment they leave the starting sector since the game doesn't have any code to relink the player. Alpha 0.5 does, so I'll probably adapt this to work with it.
  2. SaladBadger

    Partial Doom alpha network driver

    sheer laziness, that's about it. OpenWatcom did the job well enough and it runs in DosBox well enough (as well as the pcem virtual PC I use for further testing)
  3. SaladBadger

    Partial Doom alpha network driver

    heh, honestly I'm just fine with the satisfaction of getting this nonsense working in the first place. I got it working with Alpha 0.5, though I had to make some minor patches to the binary to make it work, since some refactoring broke the starting of net games. Sadly I misremembered and things that cross sectors still aren't linked. Also looking at adapting the network code from IPXSETUP, but at some point the novelty of it's wearing off so no idea if I'll get to the actual multiplayer state. Maybe for two players only.
  4. I've been curious if any emulator can run the Doom alpha's high color mode. The Dr. Dobbs overview on the Sierra High Color DAC mentions that the Tseng Labs ET4000 can do high color rendering, but trying it with a ET4000 emulated in pcem produces weird artifacts

    image.png.ac9f7c5f80a9615f07a89b572ee43b35.png

     

    I also tried DosBox-X, which also emulates the ET4000, but the effect is even worse, with the screen being divided into a bunch of small tiles and flickering heavily. I don't know if the emulation is wrong or if Doom's high color mode is just incompatible.

    1. SaladBadger

      SaladBadger

      After playing with more devices, the Cirrus Logic CL-GD5429 is the closest I've gotten so far, but it's not 100% right, it seems to be wanting linear memory organization but Doom is using planar memory.

      79970705_Screenshotfrom2022-04-2123-22-44.png.24d87a9bda00027bbfbd06d658fe1b83.png

  5. SaladBadger

    Texture Archaeology

    Some of the greebles on the toy were made into wall textures, from what I remember
  6. SaladBadger

    Are these early doom versions "Shareware"?

    well, if that's all you're looking at, then there's no way it would be shareware. Indeed, before the game was released, id software was a bit less okay with it. In any case, the later uploads at the idgames archive all mention that they were uploaded with id's blessing, and id software employees/ex-employees have discussed them before, with Romero showing them at his post-mortem and one of the more recent members of the staff sponge discussing them here.
  7. SaladBadger

    Are these early doom versions "Shareware"?

    I don't think they can be considered shareware properly, though id software has historically been okay with their distribution. No one's made a source port for the Doom Press Release Beta ever, but it's been reverse engineered multiple times so there's nothing stopping someone from doing so if they had the patience. I did reverse engineer and make a source port of the 0.5 alpha version as a research project a while back, but that's about it ATM. MBF derived ports have their "beta emulation mode", but it's not really that accurate since Killough had to make guesses at certain features since the fancy disassemblers weren't available back then.
  8. In earlier versions, you'd need to make a little mod to do it. You can put this into a decorate lump in a wad: actor NewRocket : Rocket replaces Rocket { +OLDRADIUSDMG } This won't be generalized though so any mod that adds new explosive types won't have that effect.
  9. SaladBadger

    Doom and Strife source code restoration

    Yes, it is. The core difference is that Doom uses a planar video mode commonly called mode X, whereas Heretic uses a linear video mode, the stock mode 13h. This change does have a few downsides, like removing the ability to do double buffering in hardware and the low detail mode, but is potentially faster since the drawing code doesn't need to specify what banks it should be writing to. Additionally the multiple software framebuffers scheme that Doom had isn't present at all in Heretic. Functions like I_Update are also considerably different. And now that I'm looking at it closer, the update scheme is a lot different, not using the concept of a "dirty box" like in Doom.
  10. In a current version of GZDoom, you can go to Compatibility options -> Physics options -> Use original Doom explosion behavior. The reason for this is because Doom didn't consider Z-heights when calculating explosion damage, but ZDoom added this later down the line.
  11. SaladBadger

    Classic Doom source code questions

    The code used to calculate it is still present in r_main.c, just commented out. int i; long t; float f; // // slope (tangent) to angle lookup // for (i=0 ; i<=SLOPERANGE ; i++) { f = atan( (float)i/SLOPERANGE )/(3.141592657*2); t = 0xffffffff*f; tantoangle[i] = t; } The input is mainly used for R_PointToAngle which extracts an angle relative to the origin for a given x and y coords -- so basically an atan2 function. This function calculates the slope with SlopeDiv, which does a bounds check and also checks for a divide overflow on the denominator. Thinking about it, this should basically be the case that 0 corresponds to a slope of 0 and 2048 corresponds to a slope of 1, the inbetween values being linear (if you look at the values in the table, you can see they're indeed roughly linear), with it outputting 45. The function PointToDist just performs a FixedDiv and shifts down by DBITS, which converts a 16:16 fixed point value in the range 0-1 to that range.
  12. SaladBadger

    GTA The Trilogy/Definitive Edition

    not trying to defend this crap of course, but (especially with fixed point, floating point should be more stable I'm confused here) continually doing multiplications to an orientation matrix can slightly distort it, and since the orientation matrix controls both the object's orientation and scale, it's understandable why it starts distorting. Now, let's start asking the questions... Descent had this problem (made worse by the use of fixed point arithmetic), but before any public release occurred, the devs implemented a simple solution which recomputes the matrix on a moving object to ensure it's not distorted. Pretty easy to do, strictly speaking a little expensive but nothing unmanageable. I'm told this bug existed in the original, so I'm surprised it existed back then, but in the process of being ported to UE4, apparently had absolutely no changes made to it to improve it. Honestly, I'm not even sure why the effects are so pronounced, it feels like it should be so much more subtle. Maybe I'm missing something.
  13. I mean, these guys have collected 7500 (as mentioned by Kinsie, weighing in at 50GB) samples of all sorts of things all over the world. Animal sounds. Machinery sounds of all different kinds. Vehicles of all sorts. Nature sounds. I can't imagine that was anything less than a staggering amount of work. It's also aimed at professionals, where $500 is probably just a tiny drop in the budget of things it's being used in, including something like Doom.
  14. SaladBadger

    Explain to me what the deal with Skyline Chili is

    I like the stuff, but I basically only make it at home, and I use about an 8th of the cheese of some of these pictures, if not less.
  15. SaladBadger

    Windows 11 - anyone taken the plunge?

    Reading up on things, it seems like there's efforts to try to fix some of the weird UI changes but becoming reliant on these things bothers me. Almost certainly Microsoft is going to make changes that end up breaking them, and who knows if those working on them will be interested in fixing them. Ugh. Other things like needing pro versions to even use local user accounts not tied to MS ones are also.. ugh. I haven't tied a Microsoft account to my W10 account ever. Maybe I'll try Linux, but I suspect I'm going to have to submit at some point. It's not like things in these operating systems are ever going to stop changing for reasons that are hard for me to comprehend, and I guess I just need to learn how to live with it. (Honestly, I'm the kinda person who hates change, and I wish I could get over that since it's always happening)
  16. SaladBadger

    From Doom to Descent

    Okay, just to be sure of something, how were you playing Descent? Did you use DXX-Rebirth? or did you use vanilla? If you used vanilla, things may have been harder since there's a bug where homing missiles do not scale properly on higher framerates. Around 50-60 it becomes almost impossible to avoid. DXX-Rebirth, and heck even D2X-XL fix this (and my Chocolate Descent works around it by limiting the framerate).
  17. SaladBadger

    From Doom to Descent

    Chaff isn't some miracle solution to homing missiles TBH. It's pretty limited in supply and the "stinger" bots vomit out missiles like no tomorrow. The upside is that the missiles are easier to avoid in general and they do only a little damage. The downside is that stingers are super maneuverable and can be difficult to hit. Actually almost everything in the game can be a colossal pain in the ass to even hit in the first place since they're so much maneuverable than the previous games. For whatever it's worth, homing missile bots do exist in Descent 2, but unlike Descent 1 where supermechs appear in 23 of the game's 27 levels (+2 of the secret levels), lou guards only appear in 12 of the game's 24 levels.
  18. SaladBadger

    From Doom to Descent

    The bug was fixed in Descent 2, so it doesn't apply there. The bug is a weird mistake, it tries to check if you have lasers selected but they messed up and it instead checks if you're firing the blue laser some robots shoot, which you can't.
  19. SaladBadger

    From Doom to Descent

    Fusion can be good, due to its penetration ability. It's a bit tricky to aim and shoot right due to how large the projectiles it shoots are, but it can be great for clumped monsters, such as those out of a matcen. Plasma is polarizing, some say it's alright, some find no need. I really can't tell. Missiles are interesting. In general I find the place I use mega missiles the most is when trying to destroy supermechs (the red guys) in tricky locations, since a direct hit will always kill one, and if they're close together it'll weaken the others. Homing missiles are also perfect against class 1 drillers.
  20. SaladBadger

    From Doom to Descent

    Honestly quad laser level 4 in the original descent is completely broken, partially due to a bug. Quad lasers are supposed to only do 1.5x damage compared to normal lasers, but a bug introduced in I think version 1.4 makes them do a full 2x damage. This bug is emulated in more recent dev builds of Rebirth. Weapons like spreadfire tend to only really shine when playing fresh starts, due to this. Spreadfire's fast projectiles and decent damage makes them competitive with non-quad lasers if the quad laser powerup isn't available. Weapon balance in the Descent series is pretty sketchy tbh, I think in part due to almost all of the game's weapons using the same "ammo" type. Descent 2 made it worse, deliberately weakening weapons like the fusion to near-uselessness in order to make the already ridiculously powerful new weapons shine even more I guess. A lot of big levelsets these days like Plutonian Shores will actually go out of their way to undo some of these changes just to make the weapon balance that much better. I also don't think Descent 2 was helped by the pace at which you get weapons, since the 3 level demo has 7 of the 10 weapons, you get 70% of the game's arsenal within 12.5% of the game's main levels. Ugh.
  21. SaladBadger

    From Doom to Descent

    I think Descent 1 is most unforgiving to new players who haven't learned where all the supermechs and driller spots are heh. I've played the game many times, on hotshot, on ace, and on both skills with laser starts on all levels (though for me Ace is suffering under those circumstances) and it doesn't feel that bad anymore, but I realize I have a rough idea of where all the danger lives, and how to deal with it. I don't know if I've just settled into some sort of masochism, but I honestly really enjoy Descent 1, rough edges and all. Descent 2 is probably better overall, but I have such a soft spot for Descent 1. Descent 3... I spent a lot of time trying to make a program to make it less dumpy but it's still easily my least favorite game in the series.
  22. SaladBadger

    Let's talk palettes

    To be fair, Descent 2 has 6 palettes, one for each world. That one's optimized for the water world, hence all the teals. If you look at the lava world, there's more reds. And brighter cyans for some reason. Oddly the fire palette is the only one which feels like it had any human intervention in, but it's still eh. The rest look very much like they were machine generated by sampling the textures used in each level and picking a palette, but the machine doesn't know what kind of optimizations a human would do.
  23. SaladBadger

    Let's talk palettes

    Here's a palette I have some mixed feelings about. Descent 1. It feels like it could be so good, having a reasonably wide selection of ranges, but what's with the weird seemingly random contents of the first 3 rows? (it almost looks like it's generated from the colors used by the cockpit graphic). Two rows of grays, and then a varied selection of different colors. 2 purples, 2 blues, 3 greens, 3 yellows, two reds and an orange, and that kinda weird tanish color. The problem I see is that due to those 3 rows being wasted by the cockpit colors, many of the ranges get crunched pretty tight, leading to some messy fades in the colormap. Though for all it's faults, at least it's about 10x better than the highly redundant, unordered, machine generated palettes that plague Descent II: The first 6 rows for all Descent 2 palettes are the same, but the color choices are so weird. Why is there no true grayscale range? Why are even the colors common across all palettes unordered and machine generated? Why is an almost entire row taken up by dark colors that are almost impossible to perceive? why does the water palette have so many colors that are basically black? The game probably would have looked tons better if more care was put into making the individual palettes.
  24. SaladBadger

    Quake Remastered

    Port support for the new models will be interesting, since they're using Doom 3's MD5 format instead of the original. I do hope some ports implement support for it.
  25. since ff2 has been brought up, I'll admit I've never ground the conventional way in that. In general my battle plan was to always beef up evasion with equipment and magic use, and simply avoid all damage rather than beef myself up to take it on. This strategy has worked wonderfully, though it does still involve grinding for spells like Blink, and it always comes as a shock to people when I show up to the last boss with half my team <1000 health. (I don't actually recommend that, though, it's resulted in some hairy fights) The GBA version automatically advances your health as you fight battles, though, so you'll usually end up with >1000 just by playing.
×