game-engine-2d
DoubleFloats.jl
game-engine-2d | DoubleFloats.jl | |
---|---|---|
9 | 1 | |
720 | 146 | |
0.0% | 1.4% | |
0.0 | 7.9 | |
over 1 year ago | about 1 month ago | |
Lua | Julia | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
game-engine-2d
-
Fighting games use delay-based and rollback netcode
I don't think it's unpopular. We need more and better game software, what exists today is unsatisfactory for a plethora of reasons. I'm personally interested in this because I ship Planimeter Game Engine 2D, which comes with client-side prediction standard, and it's the largest pure-Lua game engine on GitHub.[1]
[1]: https://github.com/Planimeter/game-engine-2d
-
Starting Box2D 3.0
> Another benefit of speculative collision is that I can elminate[sic] the polygon skin/radius on collision shapes. That was necessary to keep shapes separated for the time of impact algorithm. This should no longer be necessary in version 3.0. I never liked this artificial separation of shapes.
Hah! In Planimeter Game Engine 2D, we shrink physics objects by approximating the polygon skin so that we can achieve "pixel approximate" physics.[1]
[1]: https://github.com/Planimeter/game-engine-2d/blob/master/eng...
-
When \ is not \
From what I've found maintaining https://github.com/Planimeter/game-engine-2d is that you should be explicitly checking for nil, separately from checking for false-evaluating values.
We found that this had the added benefit of semantically checking for something that did not exist, versus some contextual "false" value.
I suspect this is a good practice in other languages as well.
-
Ask HN: Any solo game developers here?
Maybe consider https://github.com/Planimeter/game-engine-2d? We have multiplayer with client-side prediction out of the box. Example code is included to demonstrate the ease of networking entity fields, and there is an included payload abstraction for creating networked events.
You can set the tick rate for your game based on your needs as well. And prediction is robust, supporting exceptional packet loss and smoothing over latency concerns for player movement.
-
Hathora: Multiplayer Made Easy
Examples in Lua/LOVE:
https://github.com/Planimeter/grid-sdk/blob/master/engine/sh...
https://github.com/Planimeter/grid-sdk/blob/master/engine/sh...
https://github.com/Planimeter/grid-sdk/blob/master/engine/sh...
https://github.com/Planimeter/grid-sdk/blob/master/engine/se...
-
The Right Way to Compare Floats in Python
I remember having to write something similar for Lua, because there was no math.approximately() function and I was dealing with networking floats and comparing values over the wire to predicted movement in 2D space.
https://github.com/Planimeter/grid-sdk/blob/master/engine/sh...
-
The specs behind the specs – a deep-dive on ASN.1
What’s so great about ASN.1 and it’s encoding rules is that anyone writing type-length-value serialization for networking purposes, for example[1], is basically independently reinventing ASN.1 because it’s so fundamentally optimal.
It truly will make you wonder why Protobufs and others exist.
[1]: https://github.com/Planimeter/grid-sdk/blob/master/engine/sh...
DoubleFloats.jl
-
The Right Way to Compare Floats in Python
https://github.com/JuliaMath/DoubleFloats.jl
Of course, if you are calling BLAS/LAPACK, you are constrained to use floats, but the recommendation on DoubleFloats is clear: if you know you algorithms, use the increased precision only in the parts that matter
What are some alternatives?
teiserver - Middleware server for online gaming
FFTW.jl - Julia bindings to the FFTW library for fast Fourier transforms
helium
SpecialFunctions.jl - Special mathematical functions in Julia
OpenSSL - TLS/SSL and crypto library
LogarithmicNumbers.jl - A logarithmic number system for Julia.
love - LÖVE is an awesome 2D game framework for Lua.
mlscorecheck - Testing the consistency of binary classification performance scores reported in papers
resolution_solution - Scale library, that help you add resolution support to your games in love2d!
Hecke.jl - Computational algebraic number theory
lc64 - LÖVE C64 Emulator
NLopt.jl - Package to call the NLopt nonlinear-optimization library from the Julia language