Announcement

Collapse
No announcement yet.

DirectQ issues

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    I've looked at the IPLog code again and I'm in the process of trying it out now. I am not promising to definitely add it. If it makes a mess, or breaks anything else in the engine, or doesn't convert to C++ reasonably cleanly, or has dependencies on DLLs, I will not add it.

    One of the main problems is that the ProQuake code I'm using for reference doesn't compile clean. Specific example: there is an iplog_t structure that the whole thing depends on. This structure is defined in a file called "iplog.h". This file is not included anywhere in ProQuake. So none of the source files know what it is. So they shouldn't work.

    Why this makes things difficult is that my normal approach with this kind of thing is to run DirectQ in a debugger, run the other engine in a debugger, set breakpoints in the same place in each, and compare what's happening. I can't do that with ProQuake. I've never been able to compile any version of ProQuake.

    So while I can certainly test my own implementation and make sure that it seems to work, I have no way of knowing for certain that it really works right.

    This is one reason why I hate porting ProQuake features, and why I hate being asked to port ProQuake features, no matter how reasonable the request and no matter how nicely the person asks (and no matter how much I love ProQuake itself!)
    IT LIVES! http://directq.blogspot.com/

    Comment


    • #17
      hah I completely understand MH.

      These features or not, with %d and a timer I'll run your engine indefinitely for DM. It works so well in windows 7!!

      Comment


      • #18
        I've added IPLog and it seems to work fine. There are a few things I'm going to change; not compatibility-breaking but important all the same.

        It grabs 2 MB of memory for itself at startup. Not of major consequence, but this is against the spirit of the way memory works in DirectQ (where normally there are no memory limits and the player never needs to specify anything). It's going to need quite a bit of work to change that, so I'll probably leave it alone for the time being.

        It always uses an "iplog.dat" file in ID1. The player might not necessarily be running ID1.

        It always writes it's "iplog.dat" file on exit, even if there is nothing in it (like the person who had nothing to say but went ahead and said it anyway).

        Ok.

        Deep breath.

        Rant incoming.

        These things are not major matters to the multiplayer community. However, they are matters that the single player community and that non-technical users (and DirectQ has a lot of users who fall into both of those last two camps) would be concerned about ("what's that strange file on my computer? Have I got a virus? Oh no! DirectQ has a virus! An IP address logger! Noooooo!!!!!") The multiplayer community needs to pull it's own head out of it's own arse here and realise that it is not living in isolation and that it is actually a very small part of the overall Quake userbase.

        Worst bit over, you can uncover your eyes now.

        This I guess betrays ProQuake's origin and primary focus as a multiplayer engine. It's quite similar to how a mapper focussed engine will spew loads of warnings about limits being exceeded. A regular player will download and use that engine (normally because it was recommended by the person who made the map, who is - surprise! - a mapper, and therefore favours it), then panic when they see the warnings. This has happened before.

        So why rant over a pathetic little zero-byte file? Simple reason is that it's symptomatic of each section of the community living in it's own little ghetto and not really giving much of a damn about the others, that's why. This is a Bad Thing and Needs to Stop.
        Last edited by MH; 10-19-2010, 04:59 PM.
        IT LIVES! http://directq.blogspot.com/

        Comment


        • #19
          Another question.

          Is there any way to change the cross hair size, or shape?

          In 2650x1600, its literally 3 very very very tiny pixels wide. It vanishes during a fire fight.

          Comment


          • #20
            crosshair - it can accept values from 0 to 10 (I think), with 2 being the orange '+' sign, and 3 to 10 being 8 custom crosshairs baked into the engine. It also supports user-defined crosshairs, called "crosshair-1.tga", etc, which replace the appropriate values of crosshair. I normally use 3.

            crosshairsize - (or scr_crosshairscale, whichever you prefer), defaults to 1 which is the normal size, use higher values to zoom it up, lower values to zoom it down. With a crosshair value of 3 or more I normally find that I don't need to change this. Don't think it works for values of 1 or 2 though.

            crosshaircolor - (or scr_crosshaircolor, whichever you prefer) changes the colour of the crosshair. This is based on the Quake palette so you'll need to try it and see I guess. It works the same as the color values you'd use for pants and shirt anyway. 0 is white, 1 is pale yellow, and so on. I like 1, it's not too intrusive yet it stands out well enough against almost all backgrounds. Probably also doesn't work with crosshair 1 and 2.

            I had menu options for setting all of these once upon a time, but I removed them during the Great Menu Purge of early '10 (the menus had become too cluttered and were confusing people). I might add them back to somewhere like the multiplayer setup menu; seems a reasonable enough place for them to be (I should also add this menu to the SP menu).

            =Peg= has also asked for crosshair colours to adjust to the team colors sometime. I'm not too certain - players often pick a specific crosshair colour as it's easier for them to see. Some other UI element may be more appropriate. Backtile colour? Might obscure HUD elements. I don't know.
            IT LIVES! http://directq.blogspot.com/

            Comment


            • #21
              Ahh you know I tried crosshair 2 just to see if it worked, and the orange crosshair must have blended in with the orange DM3 as I figured a value of non-1 just disabled it.

              This helps a ton!

              Comment

              Working...
              X