Announcement

Collapse
No announcement yet.

Real Flash Quake

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

  • Very interesting. I'd love to test your app in my iPhone. Can you prepare something that I can download or run in my phone?

    Comment


    • Maybe YES! The only thing I'm not sure of is if I need an actual ios device to make the build. Let me try it.
      http://www.nextgenquake.com

      Comment


      • Some of a bitch! I do need the device. That's OK, I think one of my cousins has an IPhone. I'll see if I can get them over here so I can make a build.

        ----


        1) Go to https://developer.apple.com/ios/mana...s/index.action – Devices, Click on Add Devices, you can find your Device ID in iTunes
        2) Add a name you want and the UDID of your device.

        These 2 steps have foiled me. Bah! lol.

        That is of course unless you want to go to a hell of a lot of trouble to help me....

        The device is necessary to build the certificate that authenticates my app. I probably don't need the device after that.
        http://www.nextgenquake.com

        Comment


        • 'probably don't'... lol, ever the optimist...

          you build it for a specific phone and then you can run/test it on that phone. it won't work on anyone else's phone of course (unless its explicitly built for them), because if they allow that then you'd be able to sell stuff without paying 40% of your revenue to apple...

          it'll be a cold day in hell before IOS gets an FTE port. It simply isn't practical - doing so would require a jailbreak.
          /me wonders what IOS' javascript performance is like.

          but yeah, good luck with your stuff.
          Some Game Thing

          Comment


          • If anyone with an ios device would like to help me. I have a number of things you can do so I can make an ios build.

            first download this certificate
            https://drive.google.com/open?id=0B_...2Y1RnZzVm9YT28

            then do all of this:

            Creating the Certificate

            Go to https://developer.apple.com/ios/mana...m/index.action – Certificates->Development Tab, Click on Request Certificate and upload the file CertificateSigningRequest.certSigningRequest that is in your OpenSSL bin. Submit and refresh the page a couple of times until it says DOWNLOAD. Download that file and put it in your OpenSSL bin. gyp:I need this file, the file this is telling you to upload is the one I provided in the first link.


            Adding the Device

            Go to https://developer.apple.com/ios/mana...s/index.action – Devices, Click on Add Devices, you can find your Device ID in iTunes
            Add a name you want and the UDID of your device.

            Create App ID

            Go to https://developer.apple.com/ios/mana...s/index.action and Click on New APP ID and add a name and an unique id. (Unique ID has to be the same you have in the application.xml in the FlashDevelop Project, that ID is set as default “air.MobileSomething” you should change it to something like “com.yourname.yourappname”, also remember to change the same APP_ID in SetupApplication.bat) -gyp: Put whatever ID you want, I'll change it on my end. Just remember it and tell me what it is.

            Create a Provisioning Profile

            Go to https://developer.apple.com/ios/mana...s/index.action and Click New Profile. Check everything, continue and refresh the page a couple of times until you see Download.
            Download the file in the folder “cert”

            Then send me that file plus the file from the first step and tell me what ID you used in the second step..

            If multiple people go to the trouble to help me, I will make multiple builds... I'm not gonna leave anyone hanging after doing all this. If for some reason I do need your device, I got ya covered there too. I'll just give you my code and show you how to set up flashdevelop to run it. It's real easy. FlashDevelop makes it so you don't have to do shit but select some boxes and wait for the API's to download. You don't have to know shit but how to check boxes and click "go".

            Honestly and truly, if no one decides to help, I'm going to assume there is no market and completely ignore ios as a platform for my engine. It's just true. 99% of the people I know use android/windows/linux it really doesn't matter to me if ios has a build BUT if ios folks show interest, make a small initiative, I will build it. It's not my fault that your platform is so restrictive. I've made every initiative that I can on my end to make this happen.
            Last edited by MadGypsy; 04-29-2016, 01:05 PM.
            http://www.nextgenquake.com

            Comment


            • @spike - well, whoever helps me is gonna get a version for their phone lol. Which means they will get every version for their device and fuck apple.. Also, I shouldn't need their device to build it (i think) maybe just their device to run it.

              @optimist - you won! You are the millionth person to say that to me! I'll tell you what you won when I decide to get a job.
              Last edited by MadGypsy; 04-29-2016, 12:42 PM.
              http://www.nextgenquake.com

              Comment


              • Originally posted by MadGypsy
                Actually I don't even have to write the instructions cause I just did.
                I don't think the dictionary has a word to properly describe your iOS instructions, but would be similar to stating 2 + 2 = elephant and "painful to read" was the feeling I had when I read them, but they aren't even "wrong".

                I just wanted to give you the heads up.

                If I were you, since you have a lot to do, you should focus on platforms you know and are familiar with.
                Quakeone.com - Being exactly one-half good and one-half evil has advantages. When a portal opens to the antimatter universe, my opposite is just me with a goatee.

                So while you guys all have to fight your anti-matter counterparts, me and my evil twin will be drinking a beer laughing at you guys ...

                Comment


                • lol... that was mostly a copy/paste.

                  @stick to platform...

                  Yeah I really don't care about ios. If ios people were interested in the future of this I would want to provide a solution but, really, Apple's business model implies that they are more worried about squeezing every buck they can out of people instead of keeping an open environment to build their development community. Quake lasted 20 years with the exact opposite business model. My cousin doesn't have an iphone so I'm pretty sure I know exactly NOBODY using apple products. I'm pretty sure google is a lot bigger than apple. I wonder if it has something to do with the fact that they don't make you jump through hoops to publish your work and they don't put their own devices in jail. I don't even have to have an android device to make android apps. My environment will build the entire thing for distribution and then try and install it on a connected device, if no device is connected it just dies but, the distribution copy has already been built.
                  http://www.nextgenquake.com

                  Comment


                  • Originally posted by MadGypsy View Post
                    Apple's business model implies that they are more worried about squeezing every buck they can out of people instead of keeping an open environment to build their development community. Quake lasted 20 years with the exact opposite business model.
                    There is nothing with business model tries to be profitable. Apple almost died in the 1990s.

                    Viruses, malware, ransomware that encrypts all your files and asks for ransom practically don't exist on any Apple products at all. Android takes a different approach. Each has pros and cons. Apple products are rather hassle-free in that sense, at some expense of flexibility.

                    But that lack of flexibility also protects the end-user.

                    Gaming consoles do about the same exact thing that Apple does (Apple offers more flexibility than that though), few people complain about how a game console is locked-down.

                    Some people want something that "just works all the time with no hassles". Some people want more than that, and so they don't like that model.

                    No right or wrong, just different concepts.
                    Quakeone.com - Being exactly one-half good and one-half evil has advantages. When a portal opens to the antimatter universe, my opposite is just me with a goatee.

                    So while you guys all have to fight your anti-matter counterparts, me and my evil twin will be drinking a beer laughing at you guys ...

                    Comment


                    • @spike - hah hah you got me. Message is loud and clear - check map versions.

                      I'm assuming my method for checking versions isn't versatile enough to account for other versions. Unless their is a BSP ver 844124994...lol. I was wondering why lstedge was crapping out at 250,000 +/- indexes, considering it can hold over 4 billion.

                      *The maximum size of an indexed array is 232 - 1 or 4,294,967,295.

                      jam6_daya version (in output panel)


                      e1m1 version
                      Last edited by MadGypsy; 04-29-2016, 07:45 PM.
                      http://www.nextgenquake.com

                      Comment


                      • jam6_daya is bsp2, yes.

                        bsp2 changes the version value, and changes coords to floats instead of shorts, and all other shorts into 32bit ints.
                        also beware of prior tweaks for bsp29 that used unsigned shorts instead of signed ones for everything else.
                        bsp2 is otherwise identical.
                        Some Game Thing

                        Comment


                        • I encapsulated all the brush entities and just for testing purposes I added MOUSE_DOWN events to all of them . The "hit num" in the output panel is my indicator that it recognizes my clicks. In this case the door in the picture was the 5th brush model that was created in BSP construction. I don't have to test if it really is the fifth. There's no way it's not due to how I applied it.

                          However! MOUSE_DOWN does not honor walls and the world. So, it IS possible to click through a wall and if you are also coincidentally on an entity which is on the other side of the wall, it will register as a hit. None of that matters though cause I just wanted to make sure I could and was "talking" to entities.

                          Not to mention that attaching mouse_down events to every damn brush entity is VERY expensive. What do I have like 50 listeners running right now? I couldn't apply it to the ObjectContainer3D, I had to go deeper and apply it to it's inner meshes.



                          @spike - hah hah. You gave me that map when I was barely even rendering a BSP at all. You sneaky fella you. That's pretty funny. At least your jokes are basically harmless. I only fell for it for 2 builds, the third one was with a version trace.

                          Oh also @ spike. You were right and wrong about something and I caught it. You were right about me assuming the first lightstyle is 0 BUT only in one of my projects. Apparently I caught that before but only changed it in one project. Good catch. I like how you can read AS3 (not that it's all that hard). A couple of other programmers I know look at my code like it's french. I don't understand that. It's just a bunch of functions and loops... Javascript with Classes and Strict Typing.
                          Last edited by MadGypsy; 04-29-2016, 11:32 PM.
                          http://www.nextgenquake.com

                          Comment


                          • @beware of prior tweaks for bsp29 that used unsigned shorts instead of signed ones for everything else.

                            Is this 2PSB, I think that's what it was called. If I remember correctly.

                            It's not critical that I worry about these things because, this really isn't intended to be a quake engine. There is actually going to come a point in the nearish future where this all takes a very hard turn. I'm just trying to get past the BSP part with a very solid foundation. Honestly, I'm just torturing myself with this due to things that I WANT. My API already supports obj, md2, md5 and a couple of other formats. I could do everything in blender if that's how I wanted to roll. I personally like radiant a lot for building worlds. I'll use blender to accent them.

                            The game I have been developing on paper is almost nothing like quake. It's old school looking.. quakish in appearance but I will definitely have to make my own radiant gamepack to develop my worlds. No sweat...done that like 100 times.
                            Last edited by MadGypsy; 04-29-2016, 11:50 PM.
                            http://www.nextgenquake.com

                            Comment


                            • no, 2PSB uses ints instead of floats for those coords. as well as the wrong header.
                              hexen2 has a different submodels struct (and differences in the clipnodes, but not an actual format difference there, per-se)

                              starting with an abusive map helps force you to realise how shit your current (at the time) rendering is. it means you instantly realise when any rewrite won't scale rather than thinking that its great - because pretty much every algorithm is great when you're only drawing a few quads. small maps like all the id ones are too small for any real algorithm optimisations. they're mostly pointless in terms of benchmarking now (hurrah for benchmarking things other than bsp rendering).
                              so did you actually get that map to load? if you're not using hardcoded offsets for everything then it should be pretty easy, and even if you are you can just make two versions of the function.

                              I didn't read your AS3, I looked at your rendered screenshots of e1m1 and guessed at what would cause those glitches.
                              I'm too lazy to decode your code. small disjointed snippets with random functions with non-obvious behaviours, etc. no, the limited code that can fit on a screenshot is useless and wasteful that its in a friggin screenshot. I mean, seriously? should I start providing updates for FTE by dumping the code as a series of screenshots? is that the done thing nowadays?
                              programming is about knowing where to look without having to read every single function. if you actually have to read it then its because you already know that its buggy / limited, or you're doing a code review.

                              STILL no linear filtering? going by the non-standard-format fragment program you pasted, that stuff is specified within your fragment shader. lightmaps NEED linear filtering.
                              Some Game Thing

                              Comment


                              • Why are you so stuck on whether or not I add a linear filter to shadows? I have crappy animated transparent water... why don't you beat me up that I don't have caustics yet? I have lit files on standby, throw a dagger in my guts cause I haven't added anisotropic filtering. Do you see the theme? I'm not working on shaders right now!

                                There is not even anything to play yet. I'm a hell of a lot more concerned with crushing down this parser to all kinds of unreadable disjointed blah blah blah, animated textures, harnessing and manipulating brush entities, collision detection and anything else you can think of that has not one iota to do with how pretty things are.

                                FUCK FILTERS.... for right now. When it does come time to write filters I am going to have to spin my own material because the Away3D material that supports what I need to do is not robust enough. It actually only partially supports what I need to do. It adds a second UV set and multiples the image onto the displacement. There is NO way in to add a shader unless I modify the original and I'm not ready to start modifying my API.

                                You want shaders so bad right this minute, You do them. You know where my source is. Have fun, when you apply that linear filter it is going to filter the entire combo texture... it's not like I haven't already played with this.

                                I post my code as screenshots because some people including myself like to read code and this site doesn't have a decent code tag. No syntax hilighting or anything.

                                @the limited code that can fit on a screenshot is useless and wasteful that its in a friggin screenshot.

                                What? Are you OK, man? You know what's hard to read? I'm gonna get my s&t on line 50, then Imma skip all the way to line 400 in a completely different function to get my UV's. Now let's go to another completely different function on line 212 to get lightS & lightT... Build face, man. 1 function that builds the faces and stores all their data the first time though. What is stupid about this? Is your data somehow different because you wrote 100 functions to get it and spread it all over the place? If I broke everything down into baby functions I'd have a gazillion different functions with like 3 lines in them. I'm sorry if there are people out there that can't decipher the code when it's in a straight line in one function that does exactly what I named it. function BuildFaces...cough builds faces, imagine that. And because of that my code actually does fit in a screenshot. Your code doesn't.
                                Last edited by MadGypsy; 04-30-2016, 12:04 PM.
                                http://www.nextgenquake.com

                                Comment

                                Working...
                                X