{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":120537532,"defaultBranch":"master","name":"3D-Stream-Radio","ownerLogin":"Grocel","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2018-02-06T23:44:02.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/2457653?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1718126525.0","currentOid":""},"activityList":{"items":[{"before":"fcb96c3ffc207368b16ad79837a816afecf6aa3a","after":"aec2918fd8a66b449730a765e455f369774b86d4","ref":"refs/heads/master","pushedAt":"2024-06-11T17:14:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixed error lua/streamradio_core/network.lua:673: attempt to index local 'entTable' (a nil value)","shortMessageHtmlLink":"Fixed error lua/streamradio_core/network.lua:673: attempt to index lo…"}},{"before":"9f84e26fdd7fbdbeb13dda210d968d5354afebb4","after":"fcb96c3ffc207368b16ad79837a816afecf6aa3a","ref":"refs/heads/master","pushedAt":"2024-02-17T14:25:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixed performance issues on quieter-behind tracers","shortMessageHtmlLink":"Fixed performance issues on quieter-behind tracers"}},{"before":"8ffd79a39317858074ad42f8aadd572bb4515a69","after":"9f84e26fdd7fbdbeb13dda210d968d5354afebb4","ref":"refs/heads/master","pushedAt":"2024-01-07T19:22:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Recompiled radio models. Removed an unneeded function.\n\nCo-Authored-By: Wolf <17761396+sligwolf@users.noreply.github.com>","shortMessageHtmlLink":"Recompiled radio models. Removed an unneeded function."}},{"before":"11dd2c72739732cb71bd7a44d5222fe2bbf8a35c","after":"8ffd79a39317858074ad42f8aadd572bb4515a69","ref":"refs/heads/master","pushedAt":"2024-01-04T22:43:23.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Improved error handling and fixed broken loading","shortMessageHtmlLink":"Improved error handling and fixed broken loading"}},{"before":"be5afd0802d7b633b5785a0368a6a36154a4ca72","after":"11dd2c72739732cb71bd7a44d5222fe2bbf8a35c","ref":"refs/heads/master","pushedAt":"2024-01-04T17:49:52.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Merge pull request #22 from wrefgtzweve/remove-unused-model-formats\n\nRemove unused model formats","shortMessageHtmlLink":"Merge pull request #22 from wrefgtzweve/remove-unused-model-formats"}},{"before":"cca3c64aa840ae125ee9cf0b31ff95ff7421f263","after":"be5afd0802d7b633b5785a0368a6a36154a4ca72","ref":"refs/heads/master","pushedAt":"2023-12-31T21:27:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixed extrem slow loading time on some clients\n\n- This was done by replacing `file.Exists(luafile, \"LUA\")` with a custom implementation. See: https://github.com/Facepunch/garrysmod-issues/issues/5674","shortMessageHtmlLink":"Fixed extrem slow loading time on some clients"}},{"before":"296ed5cd7bf9f15c3218924189f1c81ee12510b0","after":"cca3c64aa840ae125ee9cf0b31ff95ff7421f263","ref":"refs/heads/master","pushedAt":"2023-12-30T03:25:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Improved load times on some cases and updated wirelink support\n\n- Removed `collectgarbage( \"collect\" )` calls to improve load times on some cases.\n- Updated Wirelink detection to upcomming Wiremod changes.","shortMessageHtmlLink":"Improved load times on some cases and updated wirelink support"}},{"before":"1e4e1856ae57f4bd13a29c3f1ce78445fe6360b5","after":"296ed5cd7bf9f15c3218924189f1c81ee12510b0","ref":"refs/heads/master","pushedAt":"2023-11-24T22:25:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixed fonts being duplicated and removed math.randomseed calls","shortMessageHtmlLink":"Fixed fonts being duplicated and removed math.randomseed calls"}},{"before":"f46b5c1e5544aa02c33cf7b0bd1e96f7f7661f34","after":"1e4e1856ae57f4bd13a29c3f1ce78445fe6360b5","ref":"refs/heads/master","pushedAt":"2023-11-14T00:40:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixed songs loops and allow URLs from admin radios\n\n- Fixed songs ending with \"sound stopped\" on song switch\n- Radios owned by admins will allow all URLs as admins are a trusted sources of media. ConVar: `sv_streamradio_url_whitelist_trust_admin_radios 0/1`, Enabled by default.","shortMessageHtmlLink":"Fixed songs loops and allow URLs from admin radios"}},{"before":"7959186671d12da3a7cf92678a22ea278efdacdc","after":"f46b5c1e5544aa02c33cf7b0bd1e96f7f7661f34","ref":"refs/heads/master","pushedAt":"2023-11-09T02:52:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixed Lua Errors, clean up and added a GUI skin\n\n- Fixed Lua errors:\n - `lua/streamradio_core/tool.lua:480: attempt to call method 'GetMode' (a nil value)`\n - `lua/entities/base_streamradio.lua:486: attempt to index upvalue 'LIBUtil' (a nil value)`\n- Fixed global scope pollution\n- Some code clean up and new glualint config\n- Added a new GUI skin preset called \"Stream Original\"","shortMessageHtmlLink":"Fixed Lua Errors, clean up and added a GUI skin"}},{"before":"190039d575f705fd1a3e0cab741054d8b68b8656","after":"7959186671d12da3a7cf92678a22ea278efdacdc","ref":"refs/heads/master","pushedAt":"2023-10-29T23:40:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Updated help texts, changed whitelist logic\n\n- Updated help and description texts to reflect the latest changes. Spelling and grammar fixes.\n- Added info buttons and new options to admin panel\n- Updated help links in whitelisting errors\n- CFC Whitelist and built-in whitelist logic are completely separated now\n- Added ConVar `sv_streamradio_url_whitelist_enable_on_cfcwhitelist`. Built-in whitelist is disabled by default if CFC Whitelist is installed to improve radio usability. Use added ConVar to change this behavior. It's safe to change.","shortMessageHtmlLink":"Updated help texts, changed whitelist logic"}},{"before":"d902a7569c4eb960326c05aea8cc5a93583c5099","after":"190039d575f705fd1a3e0cab741054d8b68b8656","ref":"refs/heads/master","pushedAt":"2023-10-26T17:50:23.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixes Lua error in VR and playback error screen","shortMessageHtmlLink":"Fixes Lua error in VR and playback error screen"}},{"before":"57cb64a349946154a31bd07928182ab560310535","after":"d902a7569c4eb960326c05aea8cc5a93583c5099","ref":"refs/heads/master","pushedAt":"2023-10-26T01:49:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixes to \"stopsounds\" and better whitelisting code\n\n- Fixed \"stopsounds\" concommand not working on radios.\n- Added GUI cases and controls to resume radios stopped by \"stopsounds\".\n- Added context menu options for resuming radios stopped by \"stopsounds\".\n- Improved Dropbox support with CFC HTTP Whitelist.\n- Improved URL checks for addon's whitelist.\n- Improved URL checks for CFC HTTP Whitelist.\n- Improved rendering performance of GUIs a bit..\n- Refactored auto converters for URLs and removed dead YouTube code.\n- Added max age of files (7 days) to the cache system. Older cache files are deleted.\n- Moved the file cache location to \"cache-sv\" and \"cache-cl\" for server/client. The old cache directory is wiped.","shortMessageHtmlLink":"Fixes to \"stopsounds\" and better whitelisting code"}},{"before":"423b6e6f2b0b7d03e7f2358b8a7639cafa80ffc3","after":"57cb64a349946154a31bd07928182ab560310535","ref":"refs/heads/master","pushedAt":"2023-10-23T16:17:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Added Stream URL whitelisting, optimized netcode\n\n- Added Stream URL whitelisting:\n - It is on by default, even for existing installs.\n - Can be changed in admin panel or via console `sv_streamradio_url_whitelist_enable 1/0`. Although, it is not recommended to turn it off.\n - Clients will ask the server if a URL is good. If it isn't, any attempt to play from it will result in error 1000 (`STREAM_ERROR_URL_NOT_WHITELISTED`). This will prevent radio abuse such as IP graping and other malicious intends. You can ask an admin to have it whitelisted on the server.\n - Whitelists is based on the installed playlist.\n - Added several ways for admins to quickly add new whitelist entries to so-called quick-whitelists. Quick-whitelists are playlist files too.\n - Removed `sv_streamradio_allow_customurls`, as it has been replaced with the new whitelisting.\n - Added integration for CFC HTTP Whitelist to this addon's whitelist. If CFC whitelists an URL, the addon will whitelist it for your client too (but not necessarily for others).\n\n- Improved info texts a bit.\n- Optimized networking to have less entity.__index calls.\n- Added better URL and path sanitation.\n- Fixed potential race conditions when loading files or streams.","shortMessageHtmlLink":"Added Stream URL whitelisting, optimized netcode"}},{"before":"6fa509874358b5bd58c6ba87fb1e6ee6e55866a1","after":"423b6e6f2b0b7d03e7f2358b8a7639cafa80ffc3","ref":"refs/heads/master","pushedAt":"2023-10-13T20:41:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixed E2 wirelinks not working (#20)","shortMessageHtmlLink":"Fixed E2 wirelinks not working (#20)"}},{"before":"aa7c08c2745818092ad005ff72da566fcb0e3c66","after":"6fa509874358b5bd58c6ba87fb1e6ee6e55866a1","ref":"refs/heads/master","pushedAt":"2023-09-10T18:04:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixed offline Stream URLs with spaces being broken.\n\n- Added extra error code for drive letter paths (\"C:/...\"). These never worked and shouldn't be used. This will help users to learn how to use relative paths.\n- Added more information about relative paths to the Stream URL description in the spawner tool.\n- Removed crash fix in an debug output, as it it has been fixed on engine level. Requires latest game version.","shortMessageHtmlLink":"Fixed offline Stream URLs with spaces being broken."}},{"before":"e2eae9276c094ef4eafaf71dab10ea73ee63fb83","after":"aa7c08c2745818092ad005ff72da566fcb0e3c66","ref":"refs/heads/master","pushedAt":"2023-09-10T15:36:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixed playback getting stuck at the end of some songs.","shortMessageHtmlLink":"Fixed playback getting stuck at the end of some songs."}},{"before":"63a85a33b9e1cda571511d1f22a5ee66ac4cf336","after":"e2eae9276c094ef4eafaf71dab10ea73ee63fb83","ref":"refs/heads/master","pushedAt":"2023-09-10T15:18:18.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Merge pull request #17 from somefoolouthere/master\n\nShow \"flac\" and \"webm\" files when browsing sound files","shortMessageHtmlLink":"Merge pull request #17 from somefoolouthere/master"}},{"before":"e291000b5635e0741cf7cd8e352889362ab13798","after":"63a85a33b9e1cda571511d1f22a5ee66ac4cf336","ref":"refs/heads/master","pushedAt":"2023-08-12T00:35:18.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixed radio not playing on spawn. Crash fix.\n\n- Fixed radio not playing from toolgun on spawn.\n- Fixed a crash when the radio is being looked at in developer 1 on some streams. This was caused by a debugoverlay.EntityTextAtPosition() call.\n- Improved Stream URL text fields. They are multi line now to improve UX with long URLs. You can still put only one URL it it, though.\n- Put the Toolgun Stream URL description into a collapsible box.\n- Sanitized Stream URLs to prevent abuse with malformed URLs.\n- Limited Stream URLs to 480 chars (GMod networking limit). This also prevents abuse.\n- Radios owned by admins are no longer affected by \"sv_streamradio_allow_customurls 1\". So admins can always spawn radios with customs URLs.\n- Changes to \"sv_streamradio_allow_customurls\" will affect all spawned radios immediately. Including automatically stopping/resuming streams with \"illegal\" URLs.\n- Added multiple Wire Inputs and Outputs for Display and switching tracks.","shortMessageHtmlLink":"Fixed radio not playing on spawn. Crash fix."}},{"before":"3b203bab816bee8fffbb11c8a5cd9bf1fa52ed54","after":"e291000b5635e0741cf7cd8e352889362ab13798","ref":"refs/heads/master","pushedAt":"2023-08-10T03:30:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixed #15, improved Tool UI, added Admin Setting.\n\n- Moved playlist logic away from GUI to entity (fixes #15).\n- Improved Toolgun UI, added description and examples for the \"Stream URL\" field.\n- Improved property options UI and added Play/Pause, Stop, and Next/Previous track options.\n- Added admin settings panel.\n- Added more Wire Outputs.\n- Fixed more potential memory leaks.\n- Minor playlist fixes.","shortMessageHtmlLink":"Fixed #15, improved Tool UI, added Admin Setting."}},{"before":"921a58fcbe2cb7a03c4e7cf259b6c69e44735d28","after":"3b203bab816bee8fffbb11c8a5cd9bf1fa52ed54","ref":"refs/heads/master","pushedAt":"2023-07-29T02:05:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"No more song restart and a new loading screen\n\n- Fixed the radio restarting the song when a new player approaches it.\n- Fixed dupe load up being wonky sometimes.\n- Fixed networking being wonky sometimes. It should no longer getting stuck on some servers.\n- Added a new loading screen. It is used when the GUI loads up.\n- Added an option to reset the GUI in case it went stuck.\n- Changed the noise sound to start up later, so no more static noise between songs.\n- Local and caches songs are played immediately now.\n- Fixed a ton of race conditions in GUI.\n- Long songs (longer than 1.5 hours) can not longer be cached.\n- Fixed potential memory leaks.","shortMessageHtmlLink":"No more song restart and a new loading screen"}},{"before":"24fa68036933f8005e0fee2057af3250849b3c6d","after":"921a58fcbe2cb7a03c4e7cf259b6c69e44735d28","ref":"refs/heads/master","pushedAt":"2023-07-25T03:36:33.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"More optimizations, error/bug fixes and clean up.\n\n- Fixed addon not loading on some servers. Fixed error spam.\n- A lot of minor optimizations and some code clean up\n- Reduced networking footprint of lists and GUI skins.\n- Better error handling. If the addon won't load, it will tell you why in a graceful way. This fixes error spams.\n- The addon loads on servers with version 230628 or later now. This also fixes error spams.\n- Some hardening against abuse. All network caches are limited now, so they no longer fill up until out of memory. Caches are cleared on overflow and on map cleanup event.","shortMessageHtmlLink":"More optimizations, error/bug fixes and clean up."}},{"before":"eabc71f73ebe7dc37e17ab1b7f18c12affb4c621","after":"24fa68036933f8005e0fee2057af3250849b3c6d","ref":"refs/heads/master","pushedAt":"2023-07-20T15:45:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixed Radio being broken if cfc_cl_http_whitelist was installed.","shortMessageHtmlLink":"Fixed Radio being broken if cfc_cl_http_whitelist was installed."}},{"before":"d40c39aa23db023624140fe8aad33107cceecf00","after":"eabc71f73ebe7dc37e17ab1b7f18c12affb4c621","ref":"refs/heads/master","pushedAt":"2023-07-19T20:58:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Anti-Abuse / security changes, bugfixes, better UX and better performance.\n\nUX:\n- Moved error buttons to the side to make more space for the error message.\n- Added entity options (C-Menu > Right click) for the radio.\n- Added clientside only options to the entity options and entity property editor for volume and muting. (Not affected by Prop Protection)\n- Added a clientside only way to look up the error state and the URL on GUI less radios (e.g. speakers). (Not affected by Prop Protection)\n- Added a better explanation for \"error 20\".\n- Added more error codes for future updates.\n- Added mute option (not clientside!) to the toolgun and added seperator lines to its UI.\n\nPerformance / Networking:\n- Networking is now delayed to ease on the server performance.\n- The GUI is loaded with a delay to avoid freezes on radio spawns.\n- The GUI is actually deleted when disabled instead of just being hidden.\n- Fixed freezes when entering/leaving a room full of radios.\n- The radio being randomly broken/desynced (empty or white screen) on spawn is a way less likely to happen. If it does disabling/enabling the GUI can fix it.\n\nAnti-Abuse / Security:\n- Radios from other players can be muted via the addon settings. Does not support buddies.\n- Individual radios can be muted on the clientside, even if Prop Protection would block access otherwise.\n- Individual radios can have their volume changed the clientside, even if Prop Protection would block access otherwise.\n- Added support to the cfc_cl_http_whitelist addon. It is a security addon that whitelist and monitors HTTP and streaming requests. The Radio has a decicated error state for blocked URLs and content now.\n- Clientside GM_BASS3 loading can be disabled by the server. (sv_streamradio_bass3_allow_client 0)\n\nConVars:\n- Changed the CVar default of sv_streamradio_rebuildplaylists_community_auto to 2. Pre-existing installs are not affected.\n- Added sv_streamradio_bass3_enable: When set to 1, it uses GM_BASS3 on the server if installed. Default: 1\n- Added sv_streamradio_bass3_allow_client: Allows connected clients to use GM_BASS3 when set to 1. Overrides cl_streamradio_bass3_enable. Default: 1\n- Added cl_streamradio_bass3_enable: When set to 1, it uses GM_BASS3 if installed and allowed on the server. Default: 1\n\nGM_BASS3:\n- If installed GM_BASS3 is lazy loaded now. It only loads if it is actually needed by an radio. GM_BASS3 is not supported on x86-64 branches.","shortMessageHtmlLink":"Anti-Abuse / security changes, bugfixes, better UX and better perform…"}},{"before":"356ff23788e4a8e350b1a25605600319abcae16b","after":"d40c39aa23db023624140fe8aad33107cceecf00","ref":"refs/heads/master","pushedAt":"2023-06-23T22:27:54.390Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixed dropbox support not working for some users.","shortMessageHtmlLink":"Fixed dropbox support not working for some users."}},{"before":"56bcb1ffc04be9e47ca67f39ee420a6b1154427a","after":"356ff23788e4a8e350b1a25605600319abcae16b","ref":"refs/heads/master","pushedAt":"2023-06-12T16:57:50.278Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Moved networking back to NW2\n\n- This should fix the playlist not loading for some users.\n- Fixed radio entities being miscounted on the client side for some users.\n- Moved bigrig.fm to new URL. It still might not work as it is currently down.","shortMessageHtmlLink":"Moved networking back to NW2"}},{"before":"e950f54a0132a84d66b31642574a93d66b6ae53e","after":"56bcb1ffc04be9e47ca67f39ee420a6b1154427a","ref":"refs/heads/master","pushedAt":"2023-06-09T00:14:55.059Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"Fixed a bad calls to PlayerUse hook causing lua errors with many addons\n\n- Added a cache to prop protection +USE checks avoid call spams. The cache expires after 3 seconds.\n- Fixed some edge cases with attempting to use a radio blocked by prop protection.\n- Fixed display freezing or menus disappearing when they aren't supposed too.\n\nThanks for reporting this issue on Steam:\n- [DSTM] hesitantv4mpire\n- BEan","shortMessageHtmlLink":"Fixed a bad calls to PlayerUse hook causing lua errors with many addons"}},{"before":"fcbd0f532a90e7aef5e7f6c37a611ca67889b22b","after":"e950f54a0132a84d66b31642574a93d66b6ae53e","ref":"refs/heads/master","pushedAt":"2023-06-08T02:34:43.307Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"New Features, Better Networking, Faster Performance\n\n- Added option for cursor in VR. It was requested by user Peekofwar on Steam.\n- Added button for switching playback mode (no loop, song loop, playlist loop). Fixes #12\n- Added option for the playback mode to the Toolgun.\n- Added/Changed Wiremod ports represent the playback mode.\n- Added support (including the GUI) for the Wiremod User entity. It can be used in contraptions to trigger use operations (+use) as like as play would do on other entities.\n- Changed playlist icons to a new custom one.\n\n- Moved networking from NW2Vars to NWVars, because NW2 is actually a buggy unfinished mess.\n- Fixed multiple cases of networking being unreliable casing the radio being wonky in multiplayer. It should be much more robust now.\n- Reduced networking overhead, by utilizing string tables for repeated strings.\n\n- Improved overall performance.\n- Fixed huge FPS drops when seeking songs. This happened also when the radio synchronizes between players or other radios (master / slave setup).\n- The GUI is no longer re-rendered every frame when radio playback is paused or stopped. It still has too when it play backs a song, though.\n\n- Fixed several UI / UX bugs, causing hiccups, stucked playback and other wonky behaviors.\n- Replaced hacky hashing algorithms (for networking). Because the game actually ships with decent official ones now, we no longer have to abuse util.CRC()","shortMessageHtmlLink":"New Features, Better Networking, Faster Performance"}},{"before":"8eb3c20e2204f08d43cdff136405d68aee882f37","after":"fcbd0f532a90e7aef5e7f6c37a611ca67889b22b","ref":"refs/heads/master","pushedAt":"2023-05-14T23:46:42.591Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":" Code cleanup, respecting native Lua syntax more","shortMessageHtmlLink":" Code cleanup, respecting native Lua syntax more"}},{"before":"22423c5facbd97297eb9933d60d5812a24e5e9e1","after":"8eb3c20e2204f08d43cdff136405d68aee882f37","ref":"refs/heads/master","pushedAt":"2023-03-07T20:04:26.955Z","pushType":"push","commitsCount":1,"pusher":{"login":"Grocel","name":"Grocel","path":"/Grocel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2457653?s=80&v=4"},"commit":{"message":"- Fixed Lua-Error: lua/streamradio_core/client/cl_vgui.lua:22: attempt to index field 'Stream' (a nil value)","shortMessageHtmlLink":"- Fixed Lua-Error: lua/streamradio_core/client/cl_vgui.lua:22: attemp…"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEYnxLygA","startCursor":null,"endCursor":null}},"title":"Activity · Grocel/3D-Stream-Radio"}