No announcement yet.

What's Going On


There are currently 30 users online. 0 members and 30 guests.

Most users ever online was 1,083 at 04:38 AM on 2016-11-18.

Nostalgia Realms - Combat Test

  • Filter
  • Time
  • Show
Clear All
new posts
  • #16

    Originally posted by Chicken View Post
    Awesome work :O Hopefully it doesn't look like I'm speed hacking again XD
    Lol hopefully not because that would mean I did something terribly wrong. But in all seriousness unless I missed something in my code the server is now running a fixed tickrate of 60hz (which will be configurable with a config.json when I release the server) and tossing any extra data read by the sockets and automatically closes your connection to the server if you start flooding it with significantly more than 60fps of data, but any extra data isn't processed to begin with.
    Chicken likes this.


    • #17

      Getting close to where I was with my last demo. Have tiles, particles and basic client networking ported over to the refactored engine using the new animations runtime (haven't made the attack and walk animations yet) and serialization format. Also have players fading in and out when they log in / disconnect.

      GIF is butchering the quality as usual, also the small framedrop when I take the mouse off the screen is only from chromes javascript optimization on unused tabs when I switched to a different window to log in with another player.

      (Click gifv link for faster gif loadtimes.)

      The particles are working a lot more efficiently now that I have a much more optimized WebGL backend. Tonight I'm working on implementing the new clientside lag compensation using the "timelines programming model" based on a paper I read recently. If anyone is interested in reading that the link is here:
      Last edited by Rou; 2017-10-09, 11:44 PM.
      Dylan, tricxta and 2 others like this.


      • #18

        That fade effect is actually a pretty comfy idea. I've played a lot of games where players just pop in/out of existence and it weirds me out lol
        Rou likes this.
        Originally posted by antago
        Dude I would rip your fucking head off, you really think you're tough talking nasty and taking low blows--and I would feast on your fucking heart & love it. How does it feel? I'd scalp you alive and destroy your name in the pages of history like I'm doing now. I am here to write history, not cry like a little bitch and I didn't do it to myself.

        So by all means, come with me out seas off borders and see what I do to you. Better yet, accept the curse from God you've just begged for--and now your life will go to shit.


        • #19

          So implementing the timelines programming model ended up being a lot more work than I thought, and I got some work done on it but after seeing the mountain of code required, I've just decided to implement simple valve-like lag compensation for now. It still needs some work and tweaking but here it is tested with a full 1000 ms/ping of simulated lag (which would be absolutely ridiculous in a real scenario for a real-time game).

          I'd still like to go with the timelines model for lag compensation as I feel it'll make it much easier to experiment with different lag compensation algorithms in the future and create the most optimal one for this game. However, I've spent too much time on it now and I'd like to move on to other features and come back to finish it in the future. Ultimately it's all an iterative process.

          tricxta, Dylan and 2 others like this.


          • #20

            Added chat, tile collisions and a re-sizable canvas window back in. Currently working on combat which requires lag compensation to work properly so we'll see about if I can get the demo out this week. There's no point in releasing a test if there's no combat since that's the true test as to whether the new lag compensation / networking is working well.

            2ndwolf, Dylan and Chicken like this.


            • #21

              Many cools :O I look forward to try this, at a normal speed
              Rou likes this.


              • #22

                Today I did some more work on lag compensation, and also added efficient collision checking on the server using a spatial hashing algorithm. At the moment I'm working on debugger features for lag compensation which will show where your client hit someone and where the server thinks that you hit them. Similar to Valve's source engine.


                Also displaying your ping/latency to the server now. No animations yet but I'll work on some quick temporary ones tonight. A new combat test release should be ready by tomorrow, most likely.
                Yggdrasil, Dylan and 2 others like this.


                • #23

                  Continuing to work on lag compensation and working on some test animations.



                  Get ready soon boyos!
                  Last edited by Rou; 2017-10-22, 11:36 AM.
                  Dylan and Chicken like this.


                  • #24

                    So a rudimentary form of the demo has actually been silently up for the past week so that I could test with a friend but I didn't post anything because I've been trying to figure out a very vital bug which is creating a deadlock on the server after a few minutes of playing with my friend. One of the goroutine threads is getting starved but the complexity of multi-threaded coding is making it really hard to track down why it's getting starved and eventually blocking (which means it can't receive data from other goroutines effectively freezing the server entirely for a few seconds or forever). Here's a thirty-minute profile I took, which will also give you a good visualization of my server architecture if anyone is curious.


                    I also wrote bot clients that connect to the server and move around randomly to help me test it. (Connected to a real remote server.)

                    Here it is with 5 bots.


                    Here it is with hundreds (for stress testing and curiosity).


                    Don't know how much time I'll have to work on it this weekend because I'm traveling soon and have to prepare. But I will obviously be bringing a laptop with me and I'll be obsessively trying to figure this out. Hopefully, I'll be able to figure it out tonight.
                    tricxta, Dylan and 3 others like this.


                    • #25

                      That's a lot of lady Links.
                      Originally posted by LoakeyRonso
                      oh and the reason graal reborn is dead isn't what ever reason you want to blame it on , it's you . you publicly humiliate anyone who shows up , call them derogatory word's and treat them like shit . you close any thread you don't have any interest in even if other people do . slam their work without consideration for the person themself . how it is anyone can even consider you a decent human being is beyond me .


                      • #26

                        Currently on vacation. I've mostly been working on server stuff. Some good news, however, is that my wife recently started practicing pixel art, so we've started on an original default tileset and sprites and have gotten rid of all placeholders. Currently a work in progress. The style is inspired by Minish Cap and Secret of Mana.


                        No ETA for the next demo but I'm hoping before the end of January. I've also started working on another game with my engine which will be singleplayer and for mobile phones which I will post about in another thread later.

                        Happy New Year everyone.


                        • #27

                          That's beautiful! :O
                          Of course, some things need more work but that's promising talent!


                          • #28

                            Still been hard at work on the engine. As I said last time no ETA until the next demo but I'm getting very close. My wife continues to work on the pixel art for the default tileset and art assets for the engine. Work in progress, but check it out:


                            Much more to come soon. (Also working on new animations.)

                            I've also decided to add Lua as a second optional scripting language using LuaJIT, since so many game modders are familiar with the language.

                            I personally prefer Javascript (arguably the most popular language in the world at the moment, to some peoples disdain), which along with Google's v8 engine I'm using to JIT compile code as a scripting language in my engine (I originally was using an interpreter, only because the v8 engine is a pain to compile the first time, about 7 hours on my high-end machine, which I have to do both on Windows and Linux to be cross-platform, which combined can be roughly 14+ hours, but I was always planning to switch over after initial prototyping) we're getting close to native speed making it equivalent to scripting performance in a real game engine like Unity or Unreal Engine.

                            Not to mention binding to C functions within my engine's API for LuaJIT and v8 Javascript which is quite literally C/C++ native speed. The JS v8 engine is actually faster than LuaJIT, by the way. But both should be adequate for most cases.

                            There appears to be this common and outdated misconception that Javascript is still interpreted on modern engines when actually modern JS engines (JIT) compile Javascript to machine code, performing in many cases just as well or close to VM languages such as C# and Java in benchmarks. Not to mention when WebAssembly is ready, we'll get low-level memory management with javascript and it might hypothetically become equivalent to native C speed by itself, but that's a topic for another time.
                            Last edited by Rou; 2018-02-22, 06:24 AM.


                            • #29

                              Badass :O

                              Your wife's damn good at pixel art.


                              • #30

                                Originally posted by Chicken View Post
                                Badass :O

                                Your wife's damn good at pixel art.
                                Thanks mate, she appreciates the compliments.

                                I'm just relieved that I can focus purely on coding now, which drastically increases the chance of this engines success, trusting that she can the fulfill graphical work for the game and giving it a unique look right off the bat.