MU Soapbox

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Muxify
    • Mustard

    +repose

    MU Code
    18
    58
    17710
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Thenomain
      Thenomain @Derp last edited by Thenomain

      @Derp said:

      OR, do them in a temproom, which would theoretically make recalling the poses there impossible once its destroyed.

      If they are logged, they can be recalled. It's the security that keeps things from getting out of hand, things that need to be taken into account no matter how the information is recorded. So log the whole game already.

      I don't think it's a horrible idea, given the "security" caveat, and the security is going to be part of the game culture. The original post (or original poster-by-proxy) probably doesn't realize they are requesting this, but it's the only way to make it work.

      I can think of many ways to make this safer, some of which have been touched upon. "That room only" and "last 10 poses", yes. You can even make the logger forget anything older so that nobody else (staff) can pull the information.

      Even "that room only" depends upon determining "that room" to be more unique than the dbref. With how often dbrefs get re-used thanks to temprooms and jobs, the chances that you'll end up in a temproom that has been logged before isn't enough to zero to say it's secure.

      My security feature: Turn it on only by request, be noisy about it, and remove anything logged when it's turned off. Automatically turn off if the last person leaves the room. I would use this as an easy way for the game to generate wiki-friendly scene logs, but catching up on poses would be a nice secondary feature.

      I would say the rest of you are over-thinking it, but in truth it's because I've been thinking about this for years already and that's how I would do it.

      1 Reply Last reply Reply Quote 1
      • I
        Ide last edited by

        This is one of those situations where you realize rooms ≠ scenes.

        1 Reply Last reply Reply Quote 1
        • WTFE
          WTFE @TNP last edited by

          @TNP said:

          And if you REALLY want to be safe from the code, go into a private room with a locked exit, create an item then enter the item and RP there. Now that's paranoia.

          Oh, are we playing the paranoia game?

          If you REALLY want to be safe from code that logs, go into a private room with a locked exit, create an item, enter the item, and while in the item, whisper to each other the address of a private IRC server and a channel on said server. Then go RP on that IRC server.

          Arkandel 1 Reply Last reply Reply Quote 0
          • Arkandel
            Arkandel Admin @WTFE last edited by

            @WTFE Isn't it easier to just exchange Skype/IM info and do it there?

            • He who takes offense when not intended is a fool. He who takes offense when intended is a greater fool.
            1 Reply Last reply Reply Quote 0
            • Thenomain
              Thenomain last edited by

              Isn't it safest not to log in at all?

              1 Reply Last reply Reply Quote 0
              • Sponge
                Sponge @Thenomain last edited by

                @Thenomain said:

                @Sponge said:

                @Thenomain said:

                Why not simply log the entire game? We're over halfway there as it is.

                I do, but I'm hesitant to try and build a mechanism to scrape the pcaps and push them into the game on demand. 😉

                Why? That's what people are asking for. If you mean for security reasons, then build better security, security considerations that would need to be made regardless of the system you would end up using.

                Without parsing the streams the most granular filtering I have in the pcap data is remote IP + remote port. Without a really sophisticated stateful parser (that I'd have to write) there's no differentiation between MU output that's destined just for the user and MU output that's for the "room". Even the concept of a "room" or a list of other players in the same location as the recipient are really hard to infer.

                You wouldn't even need to scrape. @ahear on the master room and boom, game-wide listening. I'm not a fan of soft-code extensions to hard-coded functions, but what could possibly go wrong using a system that can retrieve poses in a room you weren't in when they were being made, like Pose Order Tracker? A system that will have to be always-running to be effective as this kind of tool?

                This reads like you missed the word "pcaps".

                Thenomain 2 Replies Last reply Reply Quote 0
                • Thenomain
                  Thenomain @Sponge last edited by

                  @Sponge

                  What's pcaps?

                  1 Reply Last reply Reply Quote 0
                  • Sponge
                    Sponge last edited by

                    Packet Capture. I capture all the traffic that goes in and out of the game.

                    This runs before ./Startmux:

                    /usr/sbin/tcpdump -pns0 -C 8 -w newprospect -W 64 'tcp port 7777 and not (net 127.0.0.0/8 or net $home_ip/32)'

                    1 Reply Last reply Reply Quote 0
                    • Misadventure
                      Misadventure last edited by

                      Stop reading my TS!
                      Or my bad coding attempts.

                      I have a waggish sense of humor.

                      1 Reply Last reply Reply Quote 0
                      • Thenomain
                        Thenomain @Sponge last edited by

                        @Sponge said:

                        Packet Capture

                        I still had to look this up to understand what point you were trying to get at. (tl;dr: I still don't know.)

                        After doing the scant research about it, I don't see how that changes my response. You don't need to scrape anything; it can be done (and by your comments, done better) by using in-game resources. You can also scrape the logfile that you can convince Mu* to make to begin with, where everything typed is logged, but it also doesn't have the context to make a good poselogger.

                        You know what does? Master room, &log_everything <object>=$*:<log it>, done. The default TinyMUX install passes through commands instead of absorbing them when matched, though you may not get the "Huh?" message because the server sees it getting matched. Compare to @Chime's "@whence" output and if fails, report the Help Text.

                        Anyway, yeah, your correction didn't make much sense to me.

                        A secondary point there is: It doesn't require hardcode fiddling, and really isn't that hard on the softcode side, to log everything outputted to every room or object on the game. This was to the people concerned with such things being abused, a point that @WTFE made as well. @TNP's solution wouldn't work in this case.

                        Sponge 1 Reply Last reply Reply Quote 0
                        • Sponge
                          Sponge @Thenomain last edited by

                          @Thenomain said:

                          @Sponge said:

                          Packet Capture

                          I still had to look this up to understand what point you were trying to get at. (tl;dr: I still don't know.)

                          It makes more sense with the 😉 winky face. Every byte that the Internet passes in and out of the game is saved. If a packet gets lost and retransmitted, I've (probably) saved both the lost packet and the retransmitted copy. I get the empty ACK packets generated by the KEEPALIVE flag. I get all the communication to and from the client before the user logs in.

                          Anyway, it was a silly comment. I have complete logs of everything but not at the right level to be useful for this problem.

                          After doing the scant research about it, I don't see how that changes my response. You don't need to scrape anything; it can be done (and by your comments, done better) by using in-game resources. You can also scrape the logfile that you can convince Mu* to make to begin with, where everything typed is logged, but it also doesn't have the context to make a good poselogger.

                          You know what does? Master room, &log_everything <object>=$*:<log it>, done. The default TinyMUX install passes through commands instead of absorbing them when matched, though you may not get the "Huh?" message because the server sees it getting matched. Compare to @Chime's "@whence" output and if fails, report the Help Text.

                          Anyway, yeah, your correction didn't make much sense to me.

                          A secondary point there is: It doesn't require hardcode fiddling, and really isn't that hard on the softcode side, to log everything outputted to every room or object on the game. This was to the people concerned with such things being abused, a point that @WTFE made as well. @TNP's solution wouldn't work in this case.

                          As I mentioned, I don't like @hook for this and if I implement something it will be akin to what @Bobotron describes: a system to create a Monitor object that does the logging work and is conspicuous about what it's doing.

                          Bobotron Thenomain 2 Replies Last reply Reply Quote 0
                          • Bobotron
                            Bobotron @Sponge last edited by

                            @Sponge
                            @hook isn't super hard to utilize. But the concept of an object that does it (which stores on the object, which recycles itself when dismissed/after a period of time) works. Heck, you could even timer it so that when the last person leaves the room (via @listen or periodic lvplayers() search on the room), that's summoned to the room and is clearly marked eitheri n the room desc or there in the contents, would work too. Most POTs I've seen hold the last say 10 poses, so I'd say that's a good default.

                            1 Reply Last reply Reply Quote 0
                            • Thenomain
                              Thenomain @Sponge last edited by Thenomain

                              @Sponge said:

                              Anyway, it was a silly comment. I have complete logs of everything but not at the right level to be useful for this problem.

                              Oooohhhhhhh. Then yeah, it's funny.

                              Yes.

                              Funny.

                              [...] if I implement something it will be akin to what @Bobotron describes: a system to create a Monitor object that does the logging work and is conspicuous about what it's doing.

                              Again:
                              https://github.com/thenomain/Mu--Support-Systems/blob/master/Global Pose Logger.txt

                              Bobotron 1 Reply Last reply Reply Quote 0
                              • Bobotron
                                Bobotron @Thenomain last edited by

                                @Thenomain
                                And what if you're a coder that hates or is not familiar enough with SQL to not break stuff? Therein lies my problem (which is why I'm writing my own variant of the @hook'ed one for TheatreMUSH anyway).

                                1 Reply Last reply Reply Quote 0
                                • Lithium
                                  Lithium last edited by

                                  That's my problem too, I don't have any real experience with SQL at all and so trying to work it into things is impossible for me. I just do what I can and hope I am going to make a game that people want to play and RP on, and works.

                                  Hello! Long time listener, first time caller...

                                  1 Reply Last reply Reply Quote 0
                                  • Thenomain
                                    Thenomain last edited by

                                    @Bobotron,

                                    That was aimed to Sponge. I do have somewhere around here a system that logs to objects, but if we're logging an entire game to objects then headache, heart-ache, and ache-ache, not to mention database bloat like whoa.

                                    I have been lost in posts and madness for long enough that I don't know your final goal, but as long as it's "log to object" then it doesn't matter, because the log is destroyed with the objects.

                                    Likewise: Consider putting a real object in the room with @ahear/@listen and not @hook. It'll be easier and more conspicuous.

                                    Bobotron 1 Reply Last reply Reply Quote 0
                                    • Bobotron
                                      Bobotron @Thenomain last edited by

                                      @Thenomain
                                      I think you're also missing the fact that most of the time, we're not logging the whole game. We're keeping the last <X> poses, with some arbitrary default and/or maximum, on. It'll eventually cycle out and close itself up. We're not keeping forty days worth of logs on an object.

                                      I agree with the thought about @hooks; I use one for my custom look commands so that people can look at Virtual Characters for NPCs and such, but overall I find hook to be easier to break stuff with if you're not careful.

                                      1 Reply Last reply Reply Quote 0
                                      • Thenomain
                                        Thenomain last edited by

                                        This post is deleted!
                                        1 Reply Last reply Reply Quote 0
                                        • 1
                                        • 2
                                        • 3
                                        • 3 / 3
                                        • First post
                                          Last post