game-engine-2d
OpenSSL
game-engine-2d | OpenSSL | |
---|---|---|
9 | 150 | |
720 | 24,254 | |
0.0% | 1.1% | |
0.0 | 9.9 | |
over 1 year ago | 3 days ago | |
Lua | C | |
MIT License | Apache License 2.0 |
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...
OpenSSL
-
RVM Ruby 2.6.0 — built with custom openssl version on Ubuntu 22.04
ENV OPENSSL_PREFIX=/opt/openssl ENV SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt WORKDIR /tmp RUN git clone --branch OpenSSL_1_0_2n https://github.com/openssl/openssl.git RUN cd openssl RUN ./config shared --prefix=$OPENSSL_PREFIX --openssldir=$OPENSSL_PREFIX/ssl RUN make RUN make install RUN rvm install 2.6.0 -C --with-openssl-dir=$OPENSSL_PREFIX ENV PATH /usr/local/rvm/bin:$PATH RUN rvm --default use ruby-2.6.0 ENV PATH /usr/local/rvm/bin:/usr/local/rvm/rubies/ruby-2.6.0/bin:$PATH ENV GEM_HOME /usr/local/rvm/rubies/ruby-2.6.0/lib/ruby/gems/2.6.0
-
Heartbleed and XZ Backdoor Learnings: Open Source Infrastructure Can Be Improved Efficiently With Moderate Funding
Today, April 7th, 2024, marks the 10-year anniversary since CVE-2014-0160 was published. This security vulnerability known as "Heartbleed" was a flaw in the OpenSSL cryptography software, the most popular option to implement Transport Layer Security (TLS). In more layman's terms, if you type https:// in your browser address bar, chances are high that you are interacting with OpenSSL.
-
Ask HN: How does the xz backdoor replace RSA_public_decrypt?
At this point I pretty much understand the entire process on how the xz backdoor came to be: its execution stages, extraction from binary "test" files etc. But one thing puzzles me: how can the ifunc mechanism be used to replace something like RSA_public_decrypt? Granted this probably stems from my lack of understanding of ifunc, but I was under the impression that in order for the ifunc mechanism to work in your code, you have to explicitly mark specific function with multiple implementations with __attribute__ ((ifunc ("the_resolver_function"))). Looking at the source code of the RSA function in question, ifunc attribute isn't present:
https://github.com/openssl/openssl/blob/master/crypto/rsa/rsa_crpt.c#L51
So how does the backdoor actually replace the call? Does this means that the ifunc mechanism can be used to override pretty much anything on the system?
-
Use of HTTPS Resource Records
OpenSSL and Go crypt/tls has no support yet, so none of the webservers that depend on them support it. Apache, Nginx, and Caddy, they all need upstream ECH support first.
- https://github.com/openssl/openssl/issues/7482
- https://github.com/openssl/openssl/pull/22938
- https://github.com/golang/go/issues/63369
- openssl-3.2.0 released
- Large performance degradation in OpenSSL 3
- OpenSSL 3.2 Alpha 2
-
Encrypted Client Hello – the last puzzle piece to privacy
If I'm understanding the draft correctly, I think the webserver you're hosting your sites on would need it implemented as it requires private keys and ECH configuration. In the example of nginx since it uses openssl, openssl would need to implement it. I found an issue on their Github but it's still open: https://github.com/openssl/openssl/issues/7482
- eBPF Practical Tutorial: Capturing SSL/TLS Plain Text Data Using uprobe
-
OpenSSL Versions... whats the plan here
I confirmed that the systm was on 1.1.1f with openssl version command. Hmm...... I check the openssl version in the repo with apt list... LOL package names wernt helpful. finally went to the repo pages and found that its still on 1.1.1f, https://launchpad.net/ubuntu/+source/openssl. Meenwhile I looked up the version history on https://www.openssl.org/ and saw that 1.1.1v was released at the beginning of this month... ok. I can understand it it was out less then 30 days. I looked up when f came out, end of MARCH 2020. NEARLY 3-1/2 YEARS
What are some alternatives?
teiserver - Middleware server for online gaming
GnuTLS - GnuTLS
helium
Crypto++ - free C++ class library of cryptographic schemes
love - LÖVE is an awesome 2D game framework for Lua.
mbedTLS - An open source, portable, easy to use, readable and flexible TLS library, and reference implementation of the PSA Cryptography API. Releases are on a varying cadence, typically around 3 - 6 months between releases.
resolution_solution - Scale library, that help you add resolution support to your games in love2d!
libsodium - A modern, portable, easy to use crypto library.
DoubleFloats.jl - math with more good bits
LibreSSL - LibreSSL Portable itself. This includes the build scaffold and compatibility layer that builds portable LibreSSL from the OpenBSD source code. Pull requests or patches sent to [email protected] are welcome.
lc64 - LÖVE C64 Emulator
cfssl - CFSSL: Cloudflare's PKI and TLS toolkit