Aug 3 2016, 3:10 pm
|
|
Could I get an explanation as to why you would want to even adjust the clients FPS? I guess I don't clearly understand the point with a mostly 2D engine platform. Does it improve quality that much?
|
Quality? It improves performance on the server. So your server can run on 10 fps while the client runs on 60. This is especially important if your game is running sn update loop or scheduler, as it allows them to do more per tick.
|
Here's what it looks like (it's even better than this 30 fps recording). Keep in mind that the world is only ticking ten times per second.
http://i.imgur.com/QgnIjGC.gifv edit: 60fps recording https://streamable.com/tyr3 It seems to work pretty well over a network, too, since instead of the client receiving at most 60 frames from the server per second, the client only receives at most 10, and interpolates (linearly) on its own. The server does no extra work, and clients get much higher framerates. more edits: For comparison. world.fps = 60: https://streamable.com/2qhd world.fps = client.fps = 10: https://streamable.com/cpx6 |
Main Street has come a long way in such a short time!
We've crushed all significant bugs with the help of a fantastic and growing community. We've also adding new shop themes and tons of decorative items since launch, and adjusted all of the mathematics to perfect game progression for returning players. Here's a shot of myself and another player working in "Knicks and Knacks," my new souvenir shop on main street! |
In response to Kaiochao
|
|
Kaiochao wrote:
Here's what it looks like (it's even better than this 30 fps recording). Keep in mind that the world is only ticking ten times per second. I'd watch them if streamable wasn't hot garbage. Won't work for me. |
In response to Akto
|
|
Akto wrote:
Could I get an explanation as to why you would want to even adjust the clients FPS? I guess I don't clearly understand the point with a mostly 2D engine platform. Does it improve quality that much? Most modern videogames don't actually process logical data every time that they process visual data. BYOND isn't like most engines in the respect that it is server-driven. As such, it makes even less sense that the server should have to work hard to keep pace with the client when the client can do all the hard visual work independently of the server. This means you can get the smoothness of a 60fps game with a 10fps world update schedule. One cool thing that most people actually don't know, is that verbs can be processed and sent to the server instantly*. They don't have to happen at the beginning or end of a frame. They can happen in the middle of a frame for all the framework really cares. Check out world.tick_usage, and you can actually see verbs happening just sort of whenever, which is neat. So actually even if you have a 10fps update cycle, inputs can be handled independently of the tick timer if you set up your verbs to be instant. There's no real reason to do things in the world more than about once every 10th or 20th of a second, and rendering can be pretty good at 40 or 60fps. Really, the question you should be asking, is why you ever thought it was okay in the first place to handle game logic every 40th or 60th of a second in a networked game. |
In response to Ter13
|
|
The next step, which likely may never come, is processing DM (or DM-like syntax) on the client at a frame-rate which is independent of the server.
|
We've come an awful long way in a year's time.Not the only ones who came a long way. |
Nothing major, just a few minor improvements!
-Exploding enemies no longer instakill; now take 50% of the targets max health. -Fixed a rare crash regarding map cleanup. -Added a new weapon called the 3DG3-10RD: The 3DG3-10RD is the third pistol variant and the first official laser pistol in the game. It's fast to reload and shoot but be mindful that laser projectiles do not do piercing damage! The little bit of polish I'm trying to apply is coming along nicely, albeit slowly. Once i get weapons fixed back up I'm going to delve into enemy ai again and address some longstanding complaints regarding the awkward attack animation of the Hellbats. Cheers. |
(SimpleGame is just what I called the .dme) I don't know how anyone could be having issues with watching videos on Streamable, but I put this one on YouTube just for you. All projectiles are moving objects with default collision detection, and world.cpu flattens out to around 40% with all the hax shotgun bullets streaming out. I might put the source up on GitHub or Bitbucket soon if/when I feel like it's... presentable? |
http://files.byondhome.com/TheMagicMan/protoui.png
Mostly just UI stuff. Not much interesting to see but it's got to be done. But this means everything is finished now, except tweaks and bug fixes. And cards. I haven't added any of those yet. Probably going to add some cards then try and get a test up within a week or two to help hunt down and fix bugs. |
In response to The Magic Man
|
|
The dither... it hurts...
Everything else, though... ...eh, I'm not a fan of card games. |
In response to Kaiochao
|
|
Kaiochao wrote:
The dither... it hurts... If the differing looks weird you probably need a new(er) monitor. Cheap or old LCD monitors don't handle differing too well. But I'll replace it with a solid colour. |
In response to The Magic Man
|
|
Looking at it on a 1920x1080 22" monitor. I just don't think the dithering adds enough texture to warrant its use over a solid color or a better textured PNG background, which is what I would use.
|
In response to Kats
|
|
Wasn't suppose to add texture. I'm using a limited palette and wanted to make the colour darker so the light text wasn't too difficult to read.
|
The contrast on the dither is too high. I'm using a monitor that I bought a year ago as well.
|
I too have a prestigious Hewlett Packard monitor that I bought off craigslist 2 years ago and your attempts to dabble in the dithers do not appease me.
|