games
Games
The Factorio server's compose file and the CS2 configs. Hover a block for the copy button, or curl the raw URL. The game server is at factorio.wihan.dev, UDP 34197.
# Factorio game server, run and managed by Factorio Server Manager
# (the maintained Tricade fork). One container holds the manager UI
# and the Factorio headless server it downloads and controls.
#
# - The UI listens on 80/tcp; Dokploy routes HTTPS to it via Traefik.
# - The game speaks UDP on 34197. Traefik cannot route it; Docker
# publishes the port directly, so the DNS record stays DNS-only.
# - RCON stays inside the container with a generated password.
services:
manager:
# Pin an exact manager release. Releases are immutable SemVer tags.
image: ghcr.io/tricade/factorio-server-manager:0.17.5
restart: unless-stopped
# The manager asks Factorio for a clean save-and-stop on SIGTERM
# and needs up to 165 s for it.
stop_grace_period: 3m
environment:
# First-install game version. The UI switches versions after,
# and the server must match the players' client version.
FACTORIO_VERSION: stable
FSM_MAX_UPLOAD: "512"
# Every login goes through Traefik over HTTPS.
FSM_COOKIE_SECURE: "true"
RCON_PASS: ""
ports:
- "34197:34197/udp"
volumes:
- fsm-data:/opt/fsm-data
- factorio-data:/opt/factorio
volumes:
# Explicit names, so the volumes do not carry the compose project
# prefix and a backup job can address them by name.
fsm-data:
name: factorio-fsm-data
factorio-data:
name: factorio-datarawcurl -sL https://wihan.dev/games/factorio
// =============================================================
// CS2 autoexec.cfg
// Place in: ...\Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo\cfg\
// Launch option: +exec autoexec.cfg
// Lines marked <-- SET THIS are personal; change them.
// =============================================================
// ------------------------- NETWORK ---------------------------
rate "786432" // Max bandwidth = "unrestricted" in settings
cl_net_buffer_ticks "0" // 0 = no packet-loss buffering (lowest latency).
// ---------------------- FPS / PERFORMANCE --------------------
fps_max "0" // Uncapped
fps_max_ui "120" // Stops the menu chewing your GPU
engine_no_focus_sleep "0" // Keeps FPS up when alt-tabbed
snd_mixahead "0.05" // Audio buffer. Lower = less latency, more crackle risk.
cl_autohelp "0" // CS:GO leftover -- may no-op in CS2, harmless either way
// ----------------------- MOUSE / AIM -------------------------
zoom_sensitivity_ratio "1.0"
m_yaw "0.022" // Default. Don't touch unless you know why.
// ------------------------ VIEWMODEL --------------------------
viewmodel_fov "68" // 68 is the max
viewmodel_offset_x "2.5"
viewmodel_offset_y "2"
viewmodel_offset_z "-1.5"
cl_righthand "1"
r_drawtracers_firstperson "1" // Show your own tracers (this is already the default)
// -------------------------- RADAR ----------------------------
cl_radar_always_centered "0"
cl_radar_scale "0.4"
cl_radar_icon_scale_min "0.6"
cl_radar_rotate "1"
cl_hud_radar_scale "1.15"
// --------------------------- HUD -----------------------------
hud_scaling "0.85"
cl_hud_color "0" // 0 = team colour
cl_showloadout "1"
cl_teammate_colors_show "1" // 2 = colours + letters
gameinstructor_enable "0"
cl_use_opens_buy_menu "0" // Stops E opening the buy menu
// -------------------------- AUDIO ----------------------------
volume "0.5" // Master volume. <-- SET THIS
snd_menumusic_volume "0.2" // Main menu music
snd_roundstart_volume "0.2" // Music sting when the round starts
snd_roundend_volume "0.2" // Round win / loss music
snd_mapobjective_volume "0.2" // Music while the bomb is planted
snd_deathcamera_volume "0.2" // Music on the death camera
snd_mvp_volume "0.2" // Round MVP anthem
snd_tensecondwarning_volume "0.6" // 10-second bomb warning. Real info, keep it audible.
// ------------------------- ALIASES ---------------------------
// Quickswitch on Q -- HOLD for knife, RELEASE to snap back to your gun.
alias "+quickswitch" "slot3"
alias "-quickswitch" "lastinv"
// -------------------------- BINDS ----------------------------
// Weapons
bind "1" "slot1" // Primary
bind "2" "slot2" // Secondary
bind "3" "slot3" // Knife
bind "q" "+quickswitch" // Quickswitch
// Utility
bind "4" "slot8" // Smoke
bind "mouse4" "slot7" // Flashbang
bind "5" "slot6" // HE
bind "x" "slot10" // Molotov / Incendiary (auto-picks by side)
bind "z" "slot5" // C4
// Misc
bind "g" "drop"
bind "mouse5" "+voicerecord" // Needs voice set to push-to-talk in settings
// ------------------------ CONFIRMATION -----------------------
echo ""
echo "==============================="
echo " autoexec.cfg loaded OK"
echo "==============================="
echo ""rawcurl -sL https://wihan.dev/games/cs2
sv_cheats 1
mp_limitteams 0;
mp_autoteambalance 0;
mp_maxmoney 60000;
mp_startmoney 60000;
mp_buytime 9999;
mp_buy_anywhere 1;
mp_freezetime 0;
mp_roundtime 60;
mp_roundtime_defuse 60;
mp_respawn_on_death_ct 1;
mp_respawn_on_death_t 1;
sv_infinite_ammo 1;
bind "lalt" noclip
sv_grenade_trajectory 1
sv_grenade_trajectory_prac_pipreview true
sv_grenade_trajectory_prac_trailtime 15
sv_grenade_trajectory_time_spectator 15
sv_grenade_trajectory_time 15;
sv_showimpacts 1;
sv_showimpacts_time 10;
ammo_grenade_limit_total 5;
bot_kick
god //doesn't work for now, maybe they will enable it in the future
mp_warmup_end;
mp_restartgame 1
buddha 1
sv_regeneration_force_on 1rawcurl -sL https://wihan.dev/games/practice