Skip to content

Instantly share code, notes, and snippets.

View Rainyan's full-sized avatar

Rain Rainyan

  • Finland
  • 12:35 (UTC +03:00)
View GitHub Profile
@Rainyan
Rainyan / nt_ghost_no_alltalk.sp
Last active October 14, 2024 22:39
Experimental plugin for Neotokyo. Forces alltalk off when the ghost is picked up. Untested.
#include <sourcemod>
#pragma semicolon 1
#pragma newdecls required
ConVar sv_alltalk;
bool alltalkWas;
public Plugin myinfo = {
name = "NT Disable Alltalk When Ghosting",
GALLIUM_HUD="fps+frametime+cpu+GPU-load+memory-clock+VRAM-usage" glxgears
@Rainyan
Rainyan / nt_getbaseentity.inc
Last active August 11, 2024 11:06
Address to index converter for Neotokyo SourceMod plugins.
#include <sdktools>
// For a valid base entity pointer, returns its entity index.
stock int GetBaseEntity(Address self)
{
static Handle call = INVALID_HANDLE;
if (call == INVALID_HANDLE)
{
StartPrepSDKCall(SDKCall_Raw);
PrepSDKCall_SetVirtual(5);
@Rainyan
Rainyan / launch.vs.json
Last active June 21, 2024 14:14
NT;RE launch.json for Visual Studio 2022. Set the env variables accordingly & restart the IDE to use.
{
"version": "0.2.1",
"defaults": {},
"configurations": [
{
"type": "dll",
"exe": "${env.SDK2013MP}\\hl2.exe",
"project": "CMakeLists.txt",
"projectTarget": "client.dll (game\\client\\client.dll)",
"name": "client.dll (game\\client\\client.dll)",
@Rainyan
Rainyan / public_code_signing_key.asc
Last active March 31, 2024 13:30
old, revoked as of 31/03/2024
-----BEGIN PGP PUBLIC KEY BLOCK-----
mQINBGWVem8BEADlPQ/DDdGYruPvlVecaG7wEjs4xrpmNVUzNUUfiMMAp9EeY/CI
NV5nxDEYzu2DHbo6pcitS+rWDH4H82zUa69xIZ6W+ulIxfWgLm/phu9taoEmfMtz
4ZzybOaTayH+sydk80pHTpQr1YPDzDxbS+zBKWM8XhECFf0gxIAWydUBbKT8Xi2O
abBJywmpUcuinw3AI6OydsEWLWabEM7jyw8dZmGqOn6GFyXSXV20cp+stWCvj0++
V/9NDEnJSR9bvCw3FcM4B4vQYMM+XpPAc1CooLZva12RPVtO1jTZuqri1cCbfkEv
2NWWRrlWWowgkrQjYYT02ZmqjwfCXjaqpKJcoIJCIoSlynkeEASMqnlznLhC62O2
CeBhlFAAcuoNPNLjBcx4OL75uPQjPA8Ly900VuYdaBdmtpMFWzyqhgCzcDRY3ufT
0ZWsCJqE6Vi/ZT8XfQHehLCQNwkgHpJ7X75MEyk4vgenvJCVODa8fuk6lzxyIi/6
@Rainyan
Rainyan / killcs.ahk
Last active December 23, 2023 18:08
AutoHotkey hotkey for killing cs2, for recovering from GPU driver failures without needing a restart. Press CTRL+P to activate.
; THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
; INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
; PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
; HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
; OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
; List of apps to kill on hotkey
^p::
Process,Close,cs2.exe
@Rainyan
Rainyan / gh_disable_shortcuts.user.js
Last active July 18, 2023 16:15
Make the GitHub web interface usable by turning off all its forced keyboard shortcuts that are interfering with browser and OS shortcuts.
// ==UserScript==
// @name Disable all GitHub shortcut keys
// @description Make the GitHub web interface usable by turning off all its forced keyboard shortcuts that are interfering with browser and OS shortcuts.
// @version 0.3.0
// @namespace githubPls
// @include https://github.com/*
// @updateURL https://gist.githubusercontent.com/Rainyan/bdc81d2280936e26ac8690e7ac1292f9/raw/
// ==/UserScript==
const ALLOWED_KEYS = [
@Rainyan
Rainyan / files_of_dir.sp
Created June 21, 2023 00:30
Get files of a directory as DataPack for SourceMod
// For path "dir_path", get files that match the "filter_by_extension" filter,
// and pass them by reference to a valid DataPack "out_datapack".
// Optionally supports SM's OpenDirectory parameters.
// Returns the number of files passed by reference.
// Caller is responsible for initializing and freeing the DataPack memory.
int GetFilesOfDir(const char[] dir_path, DataPack out_datapack,
const char[] filter_by_extension="",
bool use_valve_fs=false, const char[] valve_path_id="GAME")
{
int num_files_found = 0;
@Rainyan
Rainyan / get_aspect_ratio.py
Last active May 7, 2023 12:51
Return the aspect ratio of a screen resolution.
#!/usr/bin/env python3
import sys
def get_aspect_ratio(width: int, height: int) -> tuple[int, int]:
"""Return the aspect ratio of a screen resolution."""
a, b = width, height
while b != 0:
temp = b
@Rainyan
Rainyan / autohotkey.ahk
Last active May 9, 2024 13:15
My AutoHotkey stuff
; Ripcord doesn't have mouse binds yet, so use F24 redirection as the mic mouse bind.
#HotIf WinExist("ahk_exe Ripcord.exe")
*$~xButton1::F24 ; don't block the mouse action, just replicate as a function key
#HotIf
; Disable left Windows key when inside CS to avoid mispresses
#HotIf WinActive("ahk_exe cs2.exe")
~LWin::vkFF ; only block plain key press, ie. still allow Win+key combos
#HotIf