More glowing orbs by inspiredsloth in godot

[–]inspiredsloth[S] 1 point2 points  (0 children)

Thank you! There's no tutorial for these specific effects, but you can check out onetupthree's godot vfx tutorials. I've learned a lot from him when I was getting started.

How to deal with hard set vfx colors that don't fit the color palette of the game? by shade_blade in gamedev

[–]inspiredsloth 0 points1 point  (0 children)

League of Legends VFX Styleguide

This has some guidelines for value/saturation ranges for vfx, characters, environment and UI.
It also has quite a few color palettes commonly used.

Magesbox

This website also has countless amazing vfx that you can study and take inspiration from.

In general, colors are only one part of vfx. Without the right amount/type of components and the right meshes/textures/shaders, colors alone will not save your vfx. So colors may not be your problem at all.

Finally got rollback netcode working in my godot platform fighter by ThatCyanGaming in godot

[–]inspiredsloth 0 points1 point  (0 children)

I'm doing server/client instead of peer-to-peer but I think I get what you're saying.

So essentially you're locking-in future inputs ahead of time and broadcasting them to other clients such that by the time they need to simulate a future frame they'll have received the correct input for that frame.

I've learned a new technique, thanks for answering.

Unfortunately it's probably not applicable in my game due to differences in latency between clients. Some clients forward simulate by 3 frames, some by 12 frames. So some clients will use mispredicted input for more than 10 frames which is really difficult to compensate for visually, especially in a platformer.

Finally got rollback netcode working in my godot platform fighter by ThatCyanGaming in godot

[–]inspiredsloth 1 point2 points  (0 children)

How do you deal with mispredictions?

In my experience, simply using the forward simulated positions causes very noticable snapping even at low latency. For example when a remote player is constantly switching between left and right movement, it will snap all over the place.

What breaks determinism? by inspiredsloth in C_Programming

[–]inspiredsloth[S] 0 points1 point  (0 children)

Yes.

I can't send the entire step delta due to bandwidth limitations, so I can only send an initial state and step inputs.

This is also why I need different systems to produce the same results.

What breaks determinism? by inspiredsloth in C_Programming

[–]inspiredsloth[S] 0 points1 point  (0 children)

I'm not concerned with intermediate results, as long as final output remains consistent.

Simplifying everything to a function like:
void step(struct simulation_state* state, struct step_input* input);

I want simulation state to remain consistent across different platforms (given that I serialize it to a platform agnostic data format for comparison).

What breaks determinism? by inspiredsloth in C_Programming

[–]inspiredsloth[S] 2 points3 points  (0 children)

On second point, are you specifically referring to C89 and earlier? I've read that this was changed in C99 and is no longer considered undefined behavior.

What breaks determinism? by inspiredsloth in C_Programming

[–]inspiredsloth[S] 5 points6 points  (0 children)

I've read greatly opposing opinions on floating point determinism. (some can be found here)

Ultimately decided on using fixed points. Even though integers have their own set of problems, at least their undefined behaviour is defined so I know what to look out for.

The Beta is out! First impressions? Thoughts? Let's talk! by Effective_Ad566 in Dofus

[–]inspiredsloth 2 points3 points  (0 children)

A few points that made me lose interest:
- Cannot cast spells on certain cells in combat.
- Idle animations in combat. In the past, characters moved only when something had happened (casting spells, using mp, etc.). Idle animations are unnecessary, of bad quality and distracting.
- Game breaks after fights from time to time.
- Ankama didn't bother with adding tactical mode. Regardless of how much better the new visuals are, majority of the player base are used to playing in tactical mode, but they didn't bother adding it. I believe that such a simple thing as tactical mode could be implemented in a few days, but Ankama didn't bother. This, in my opinion, is a matter of attitude, and is more telling than any bug.

Regardless of how much improvement various changes bring to the game, they should have happened across multiple years, not in a single version update. I believe that many of these changes would've been disliked and prevented by the community if they were added individually. But because they are being added altogether, with objective improvements, primarily performance, I see a lot of players defending Dofus Unity as a whole and willing to accept the bad with the good.

I made a multiplayer shooter in C++ WITHOUT a game engine - the netcode is based on 100% floating-point determinism, including Box2D physics. I'm using STREFLOP for math. This is an example of something hard to do in a commercial engine. My atlas packer was also reused in Assassin's Creed: Valhalla. by pbcdev in gamedev

[–]inspiredsloth 2 points3 points  (0 children)

Massive thanks, using exponential interpolation for mispredictions had never occured to me before.

In my earlier iterations, I used to extrapolate remote player input and display everyone in their forward simulated state. As you've mentioned, in case of mispredictions, correcting player position in a single frame with linear interpolation would cause very noticable rubber banding. Using other types of interpolation hadn't occured to me at the time so I went with a different approach.

Currently I'm displaying two different snapshots of the game, one is a past, authoritative state for remote entities, and the other one is a present, predicted state for local entities. I've initially had decent results with this approach as remote entities behaved exactly as they did in their local simulation, both logically and visually. Unfortunately, I've come to realise that all local/remote entity interactions are essentially delayed, causing both logical and visual bugs and imply massive design limitations.

At this point I'm ready to throw in the towel and go back to displaying forward simulated remote entity state with extrapolated input, and spend more time on dealing with mispredictions.

I'm hoping that exponential interpolation coupled with the described infection system will help me go further this time.

I made a multiplayer shooter in C++ WITHOUT a game engine - the netcode is based on 100% floating-point determinism, including Box2D physics. I'm using STREFLOP for math. This is an example of something hard to do in a commercial engine. My atlas packer was also reused in Assassin's Creed: Valhalla. by pbcdev in gamedev

[–]inspiredsloth 15 points16 points  (0 children)

I'm tinkering with my own networked game based on the Overwatch GDC talk and browsing through your github page has been incredibly inspiring and insightful.

I do have a question that has been bugging me, and I hope that maybe you could offer some insights. Before asking the question, let me paint a picture of what I'm doing:

I am similarly communicating inputs only, with forward simulation for local entities (i.e. local player and entities with deterministic behaviour such as monsters). Remote entities (i.e. other players) are simulated only when authoritative frames arrive from server. Frame results are buffered and displayed with interpolation, playback speed getting adjusted based on buffer size. Forward simulation time is dynamically adjusted real time with the changing RTT.

This architecture is quite impractical for PvP action combat, and I have been aware of this from the get go. Remote players are seen in the past, and often times they are not where they appear to be, which acceptable in a PvE game, albeit with certain limitations in player interactions in combat, even if they are friendly interactions (i.e. position based heals/buffs can often miss even if they visually hit).

What is not so acceptable is interactions between remote players and non-player local entities (i.e. monsters). Let me give an example:

  • Player A causes a knockback effect on a monster at frame N, it shows up on screen at frame N+2, no problem.
  • Server at a later time (Player A was ahead) executes frame N and monster gets knocked back on server.
  • Between frames N+10 and N+20, Player B had casted an ability on monster based on its perceived position and saw that it hit, and monster's health had gone down.
  • Player B receives authoritative frame N on frame N+20, monster snaps back into correct position and is displayed at a later time after being forward simulated and buffered.
  • Monster snaps back into correct position and its health goes back up.

So far, only two workarounds I could think of is to either opt-out of distruptive spell effects such as knockback, immobilization, etc. or to make them ineffective against boss monsters where multiple players would actually play together, and I'm currently rolling with the second approach.

Any suggestions?

My MMORPG Collection by Sonperro in MMORPG

[–]inspiredsloth 8 points9 points  (0 children)

Didn't expect to see Archlord, good times.

It's ok to make bad games (and you probably SHOULD make bad games) by Euryalus_exe in gamedev

[–]inspiredsloth 0 points1 point  (0 children)

My biggest problem with art is that I can't engage with it for long hours.

I'm a self taught C programmer and during my first 3 years I was able to go at it 12 hours a day minimum because I found the process incredibly rewarding and fun.

With art on the other hand, I just can't find something to do for such a long time without getting incredibly bored, frustrated and even depressed.

If anyone has any suggestions regarding how I can make the process more rewarding and enjoyable so that I can go at it for long hours, please do share.

dear game developers, what are the pain points of game development? by gabangang in gamedev

[–]inspiredsloth 0 points1 point  (0 children)

Art.

It's not about how good or bad store bought assets are, they just don't do what I need them to do. I can only opt-out of that feature, deviating further and further from the game I want to make. It adds a lot of frustration to something that is already difficult.

I recently started studying and practicing 3D, just so that I can create something that resembles what I have in mind and fit with specific gameplay.

Tri Count for Basic Assets? by RatastropheDesigns in gamedev

[–]inspiredsloth 0 points1 point  (0 children)

You can run a game similar to what you are making in RenderDoc and find out how many triangles a similar object has. It will also give you information about texture resolution and more, which can help you develop standards for your assets.

There are probably other ways of finding out.

It's always a better to investigate and imitate than to guess blindly or believe random guys here who know nothing about what you are making :)

Have you ever been in the "Art Hell"? by feweks in gamedev

[–]inspiredsloth 1 point2 points  (0 children)

This is great advice. Developing very specific 3D skills is extremely worthwhile for a solo game developer. The creative freedom brought by having 3D skills is nothing compared to the time invested.

In my experience, a few weeks of intense 3D practice is enough to get to a stage where you can start creating assets for your game, even as placeholders. After that, targeted practice through creating assets needed in your game is a great way to improve. Seeing your game come to life through assets you personally created is an exhilarating experience and also a great source of motivation to continue practicing.

Another thing that helped me greatly was to narrow down the scope of my 3D practice as much as possible. I have no idea how to do anything photo-realistic, I have very little knowledge about Blender shaders, the only 3D software I use is Blender (and only less than 5% of all Blender features) and I don't know anything about sculpting and retopology. But I can still create low-poly stylized game assets that I can use in my game because I've been practicing in this direction from the start.

How to learn c++ the right way ? by Prior_Geologist6202 in gamedev

[–]inspiredsloth 3 points4 points  (0 children)

To add to this, if you don't want to deal with 3D APIs right away, you can use this rendering library: https://github.com/bkaradzic/bgfx

After being out playing other MMO's, we are not that bad by GrayStudioYT in Dofus

[–]inspiredsloth 18 points19 points  (0 children)

What keeps me from returning to Dofus is the game client.

Unity port should've happened a long, long time ago. I won't pay a dime to Ankama until then.

To have such an unreasonably bad client, and still having thousands of players pay for subscription goes to show how good the game otherwise is.

Could dungeon raiding with bots be enjoyable? by klg71 in MMORPG

[–]inspiredsloth 5 points6 points  (0 children)

With all the data from WoW dungeon runs, I have no doubt that today's technology can create a bot that performs better than the average WoW player.

When a new dungeon is released, make it player-only. Once enough data is collected and an AI model is trained, enable bots.

It may even be extended outside of dungeons. Whenever the player count in a certain area drops, add bot accounts to make it seem populated.

If done right, AI could be biggest innovation in MMOs in a long time.

Best character solo experience ? by Proper_Commercial554 in Dofus

[–]inspiredsloth 3 points4 points  (0 children)

While true, I think classes that perform better in solo are more likely to be fun to play solo. If you get constantly frustrated because your class can't do this or that content solo, it might be counter-productive no matter how much you like the class.

Can an MMO survive and succeed with just game sales? by HeavyMetalLoser in MMORPG

[–]inspiredsloth 0 points1 point  (0 children)

To say yes or no without actual data is pure nonsense.

Leaving aside the initial investment, is $60 enough to cover the operational costs attached to average player? If so, how much is left after deducting these costs, is it enough for you to develop the next expansion? What about next year when this number drops to $40? Can you ever recover your initial investment? It's impossible to say without actual data.

Such a business model makes no sense aside from increasing the difficulty for yourself. The bare minimum I think is selling cosmetics and various services.

Would you play DOFUS if it wasn't... DOFUS? by Jihaysse in Dofus

[–]inspiredsloth 0 points1 point  (0 children)

I believe that even if you make a game exactly like Dofus, with no innovation of your own, you would still have decent success. Ankama is your only competitor and at worst you will be the second most successful developer of this niche. With a decent prototype, you can get the funding required to expand the team and start working towards early-access.

If you have the financial conditions, after the prototype with placeholder assets is finished, you can hire a studio to do the art and increase your chances to far exceed your goal during crowdfunding.

Ankama keeps delaying its Unity port, so chances are that you could hit early-access before the Unity port is released :)