Releases: SoftwareGuy/Ignorance
Ignorance 1.4.0 LTS Release 2
Fruity Device owners rejoice, now you can host server instances using Ignorance and actually be able to connect to them from other devices!
Important notice: Ignorance now lives in the Mirror/Runtime/Transports
folder. This is to match Mirror's folder structure and keep it clean. If you import this version, you may get conflicts. Delete Ignorance from Mirror/Runtime/Transport
to rectify.
Bug Fixes:
- Issue #84
Improvements:
- Added more debugging messages
- Changed wording of some debug messages
- Added a decent comment about fruity devices and the server mode issue
Note: The native ENet binary does not support the Apple Silicon sub-build target. If you want to use Ignorance in your project, ensure you build for Intel x86_64 and tell your user base that they can use Rosetta. I don't have a M1 Mac to compile ENet on, but I suppose I could look into cross-compiling (which would be low priority).
As always, if you like what I do, please consider a Ko-Fi or a GitHub Sponsorship. Thanks for using Ignorance. ❤️
Ignorance 1.4.0 LTS Release 1
Bug Fixes:
- Fix for issue #83
Updates:
- Internal: Update Mirror to Asset Store version.
- Demos: Update BasicWithIgnorance to fix unwanted errors
I hope you find Ignorance useful. If Ignorance is used in your project, please consider sponsoring via GitHub Sponsors or consider buying me a tea/coffee - details in the readme. Your support is appreciated. 😃
Ignorance 1.4.0 LTS Release 0
This is the first gold release of Ignorance 1.4.0 LTS. Please ensure you read the README. Ignorance will be supported via LTS.
Ensure you're using a recent Mirror version (Mirror LTS recommended). Then drop in Ignorance. Follow the setup process and you're good to go.
Ignorance v1.4.0b6.1
Just like v1.4.0b6 but this time I didn't derp.
Use this one instead of v1.4.0b6. Just fixes compatibility with pre-Mirror 37 installations.
Refer to v1.4.0b6 release for more information.
Ignorance v1.4.0b6
NOTE: Use v1.4.0b6.1 instead. This one is slightly broken for pre-Mirror 37.x users.
This is a incremental update from v1.4.0b5. It introduces some refinements for Mirror 37.x and up, as well as Mirror 40.x.
There are no major changes in this update. To update, simply import over the top of Ignorance v1.4.0b6. A new install is also possible.
Thank you for using Ignorance to power your game's low-level network packet delivery!
Ignorance v1.4.0b5
This is Beta 5 of Ignorance 1.4. It has some updates, some demo scripts have been given some fixes and improvements, and it now optionally can use either the FixedUpdate + Update cycle or the Mirror-controlled Early/Late Client/Server Update Loops.
New Stuff and Improvements
- Support for Mirror's own Server/Client Update Loop: Defining
IGNORANCE_MIRROR_POLLING
will disable the high performance FixedUpdate + Update tag-team cycles in favor for Mirror's own network update loop. This may or may not give better performance in all situations. I would advise to keep using the stock Ignorance update loop unless you want to do some extensive performance testing.
By default, Ignorance will use the FixedUpdate + Update tag-team loop. You must define that code define in your project settings to switch over to the Mirror-controlled loop.
-
Removed ProcessClientConnectionEvents. Placed its code inside ProcessClientEvents.
-
Who's talking: Ignorance will now tell you who's spewing what on the Debug.Log calls, so you can see if it's the Ignorance Server instance or Ignorance Client instance.
Fixes and Updates
-
Updates from Ignorance 1.4.0b4 included, which was updates to the ENet bindings and split mobile libraries for easier mobile management.
-
PongChamp 2600 got some TLC and got it working again. Shit was breaking, so I brought out the WD40 and sprayed it a bit and she started working again. Bloody oath. As an added bonus, the demo's even faster! Those old Ataris are jealous.
Notes
-
Please report any bugs you get when using the Mirror-controlled Update Loop. You shouldn't get any but since I don't use that update loop myself, if it breaks I'll fix it.
-
There is a empty menu item in the Ignorance menu that I didn't program in before the time of release. Oops. It doesn't do anything but look pretty.
As always, thank you for using Ignorance! Your support over the years of me developing this is greatly appreciated. ❤️
Ignorance v1.4.0b4: I did the dumbs
Yeah, blame my recovering brain for a silly mistake. Oops.
Just import over the top of v1.4.0b3, it will update the ENet C# Bindings Ignorance uses.
Ignorance v1.4.0b3: Updated baked goods
Probably a bunch of TLC fixes and tweaks in this release, but mostly freshly baked ENet native binaries. Important things to note:
- iOS Support has now been split into ARMv7 (Classic iDevices), ARM64 (New iDevices) and x64 (iOS Simulator 64Bit). This should make debugging easier than one big chubby FAT library.
- Android support for x86 has now returned. Apparently Unity doesn't see that as a deprecated platform anymore, so it was trivial to set it up to Android NDK compile for ARMv7, ARM64 and x86 Android targets (no Android x64 love yet, at least in Unity 2019.4
☹️ ).
As always, thanks for choosing Ignorance airlines to fly your packets.
Ignorance v1.4.0b1: Now with 100% more working authenticator support
Ignorance 1.4.0b1 is the second beta version of Ignorance 1.4.0.
This release is an update to the first beta version of 1.4.0. Notable things that have been fixed is that if you were using the Mirror Authentication mechanism, the client would be stuck in limbo. This was due to polling the client connection event queue only when the ENet thread was alive. When the thread was shut down, Mirror wouldn't get the memo. This version fixes it.
Another thing to make note is Ignorance Sample Scenes and Demo are now under "Ignorance" in the root of the Unity Package. If you get any errors with duplicate script names or anything, consider deleting any entries outside the "Ignorance" folder. Or delete all Ignorance related things from your project and re-import the unity package.
Ignorance 1.4.0a1: Wake up and smell the coffee
Welcome to the first release of the Ignorance 1.4 series!
Please note that while this is a Alpha 1 release of the transport and may contain bugs, however it has been maturing on the workbench and would be acceptable to use in a game during development stages. Version 1.4 of Ignorance introduces new design decisions where the Core is seperated into 3 components: The glue layer (Ignorance, the transport itself), the Client (Ignorance Client) and the Server (Ignorance Server).
The namespace for Ignorance is no longer Mirror
. It is now in it's own called IgnoranceTransport
. Make sure you update your scripts respectively.
To install this release, uninstall all Ignorance related files from your project. A backup is strongly recommended before uninstallation. Once cleared of Ignorance, install Ignorance from the UnityPackage provided below. Then, attach the Ignorance component on your NetworkManager, drag it to the Transport field, remove Telepathy/KCP or any other transport and call it a day. You're ready to rock.
Please ensure you report bugs that you find! I cannot stress this enough as it will help me fine-tune and improve Ignorance. Make sure you provide enough details so I can attempt to replicate your report.
As always thanks for using Ignorance. I hope you like it as much as I did pouring time, effort, blood, sweat and tears making it.