Release 0.8-pre #77
RaphaelIT7
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Warning
This is a pre-release for the upcoming
0.8This release does not include all the changes that were planned to be inside of the
0.8though it still has a lot of things.Mainly this release is aimed to be a stable version of the current changes and anything unstable was either fixed or disabled.
This Update
- [+] Any files in
lua/autorun/_holylua/are loaded by HolyLib on startup.- [+] Added a new module
luathreads- [+] Added
NS_enums togameservermodule.- [+] Added missing
CNetChan:Shutdownfunction to thegameservermodule.- [+] Added LZ4 compression for newly implemented net channel.
- [+] Added
util.CompressLZ4&util.DecompressLZ4toutilmodule.- [+] Implemented a custom
CNetChanfor faster Server <-> Server connections. See #42- [+] Added
HolyLib.ReceiveClientMessagetoHolyLibmodule.- [+] Added
physenv.IVP_NONEflag tophysenvmodule.- [+] Added a few stringtable related functions to the
stringtablemodule.- [+] Added a new hook
HolyLib:OnClientTimeoutto thegameservermodule.- [+] Optimized
GM:PlayerCanHearPlayersVoiceby only calling it for actively speaking players/when a voice packet is received.- [+] Added
voicechat.LoadVoiceStreamFromWaveString,voicechat.ApplyEffect,voicechat.IsPlayerTalking&voicechat.LastPlayerTalkedto thevoicechatmodule.- [+] Added
VoiceStream:ResetTick,VoiceStream:GetNextTick,VoiceStream:GetCurrentTick,VoiceStream:GetPreviousTickto thevoicechatmodule.- [+] Added
util.FancyJSONToTable&util.AsyncTableToJSONto theutilmodule.- [+] Added
gameserver.GetClientByUserIDto thegameservermodule.- [+] Added a config system allowing one to set convars without using the command line.
- [+] Added
IPhysicsEnvironment:SetInSimulationto thephysenvmodule.- [+] Added
HttpResponse:SetStatusCodetohttpservermodule. (See #62)- [+] Added
HttpRequest:GetPathParamtohttpservermodule. (See #63)- [+] Added
bitbuf.CreateStackReadBuffer&bitbuf.CreateStackWriteBuffertobitbufmodule.- [+] Added a fallback method for HolyLib's internal
Util::PushEntityfunction in case a Gmod update breaks our offsets which previously lead to undefined behavior- [#] Added some more safeguards to
IPhysicsEnvironment:Simulateto prevent one from simulating a environment that is already being simulated.- [#] Highly optimized
utilmodule's json code to be noticably faster and use noticably less memory.- [#] Better support for multiple Lua states
- - This required most of the lua setup to be changed >:(
- [#] Solved a few possible stack issues
- [#] Fixed a crash after a map change. See #41
- [#] Update internal
netadrstuct to now properly supportloopbackandlocalhostinputs for IP's.- [#] Possibly fixed memory issues caused by
IGModAudioChannel's being deleted & having undefined behavior.- [#] Fixed
HolyLib:OnPhysicsLagpossibly being called recursively causing a crash.- [#] Fixed every function from the
physenvmodule not accepting gmod's PhysObj.- [#] Fixed a crash caused by
comcommandmodule since Gmod'sConCommand_IsBlockedchanged. (See #45)- [#] Fixed a few Windows issues.
- - [+] Added support for the
stringtablemodule on Windows.- - [#] Fixed entitylist not being loaded on Windows
- [#] Solved a few Bass bugs.
- [#] Fixed possible undefined behavor & two buffer overflows in
gameservermodule.- [#] Updated
VoiceStreamfile structure to also save the server tickrate and include a file version.- - The
VoiceStreamnow properly updates the tickCount for the savedVoiceDatato scale the tickCount when the server changed tickrate which should ensure the audio remains usable.- [#] Fixed a issue with the
gameservermoduel causing randomLost Connectiondisconnects (See #51)- [#] Extented
networkingmodule to include some new things.- - Made some optimization for
PackEntities_Normalreducing overhead- - Slightly optimized our own implementation of
CServerGameEnts::CheckTransmit- - Added
holylib_networking_fastpathwhich will use a transmit cache forCServerGameEnts::CheckTransmitas a noticable optimization.- - Added
holylib_networking_maxviewmodelsallowing one to limit view models to1for each player instead of each having3of which2often remain unused.- - Added
holylib_networking_transmit_all_weapons- - Added
holylib_networking_transmit_all_weapons_to_owner- [#] Slightly improved memory usage & performance for UserData created by HolyLib
- [#] Updated
VoiceStreamLoad/Savefunction to be able to read/write.wavfiles- [#] Fixed
IModule::ServerActivatenot being called when being loaded as a binary module- [#] Fixed
HolyLib:ProcessConnectionlessPacketbeing called for SourceTV packets- [#] Fixed
gameserver.SendConnectionlessPacketcrashing instead of throwing a lua error when NET_SendPacket couldn't be loaded- [-] Removed some unused code of former fixes that were implemented into Gmod
You can see all changes/commits here:
Release0.7...main
Existing Lua API Changes
- [+] Added third
protocolVersionargument togameserver.CreateNetChannel- [+] Added fourth
socket(useNS_enums) argument togameserver.CreateNetChannel&gameserver.SendConnectionlessPacket- [+] Added second and thrid arguments to
HolyLib:OnPhysicsLagproviding the entities it was working on when it triggered.- [+] Added
voicechat.SaveVoiceStream4th argumentreturnWaveData(previously the 4th argument wasasyncbut that one was removed)- [+] Added
directDataargument toVoiceStream:GetData,VoiceStream:GetIndex,VoiceStream:SetIndexandVoiceStream:SetData- [+] Added overflow checks for
gameserver.BroadcastMessage,CNetChan:SendMessageandCBaseClient:SendNetMsgwhen you try to use a overflowed buffer- [+] Added a few more arguments to
HolyLib:OnPhysicsLaglikephys1,phys2,recalcPhys,callerFunctionand the argumentsent1&ent2were removed since you can callPhysObj:GetEntity- [#] Fixed
addonsystem.ShouldMount&addonsystem.SetShouldMountworkshopIDarguments being a number when they should have been a string.- [#] Changed
VoiceData:GetUncompressedDatato now returns a statusCode/a number on failure instead of possibly returning a garbage string.- [#] Limited
HttpServer:SetNameto have a length limit of64characters.- [#] Fixed
IGModAudioChannel:IsValidthrowing a error when it's NULL instead of returning false.- [#] Fixed
HttpServer:SetWriteTimeoutusing the wrong arguments. (See #65)- [#] Fixed
bf_read:ReadBytesandbf_read:ReadBitsboth failing to push the string properly to lua.- [#] Changed
voicechat.SaveVoiceStream&voicechat.LoadVoiceStreamto remove their 4thsyncargument, if a callback is provided it will be async, else it'll run sync- [-] Removed
VoiceData:GetUncompressedDatadecompress size argument- [-] Removed
CBaseClient:Transmitthird argumentfragments.- [-] Removed
gameserver.CalculateCPUUsageandgameserver.ApproximateProcessMemoryUsagesince they never worked.QoL updates
- [#] Changed some console message to be more consistent.
- [#] Solved a possible crash caused by a
CGameClientdisconnecting afterg_LuabecameNULLThis discussion was created from the release Release 0.8-pre.
Beta Was this translation helpful? Give feedback.
All reactions