# Counter-Strike 1.6 Server Hosting - everything RE:NODE has published

> A Counter-Strike 1.6 server on RE:NODE: plans, how the panel runs it, and every tutorial RE:NODE has published about it.

Generated from https://www.renode.space/game-servers/counter-strike-1-6, the live catalogue, the deploy docs, the panel guides and the RE:NODE blog. English. Source of truth for anything that changes: https://www.renode.space/game-servers/counter-strike-1-6.

Contents: what it is, plans and prices, panel how-to, tutorials, rules for the assistant.

## What it is

ReHLDS servers with AMX Mod X and Metamod already installed. Nothing to configure — pick a plan and connect.

- Genres: Action
- Developer: Valve
- Released: 1 Nov, 2000
- Steam: https://store.steampowered.com/app/10/

### What comes with every Counter-Strike 1.6 server

- Configured before you see it: The install runs, the configuration is written and the server starts. No first-boot checklist, and nothing left on a default password shared with every other Counter-Strike 1.6 server on the internet.
- The real console: Live output, command input and the server's own logs - not a filtered summary. Web-server noise is folded behind a counter you can switch off.
- Files and SFTP: A full file manager with an editor, plus SFTP credentials. Upload mods, edit configs, pull a world down to your machine.
- 2-2 backup slots: Taken on demand or on a schedule, restored with a button. Deleting a server takes its backups with it, on purpose.
- 1 port allocated: Add and remove ports yourself from the Network tab, including the query and RCON ports where the game wants them.
- People on the same server: Invite friends or staff with granular permissions - console only, files only, no billing - through subusers, roles and teams.

### Which Counter-Strike 1.6 plan do you need?

Memory is what decides whether a server holds together, so start there. The Starter tier gives 1 GB and 0.5 vCPU, which suits a private group. The Advanced tier at 2 GB is where most public servers sit, and Premium at 4 GB exists for the servers that stay full.

Storage matters more than people expect once mods and backups are involved - plans here run from 5 GB to 30 GB of NVMe. Moving up or down a tier later does not rebuild your world; it changes the limits on the container you already have.

If you are not sure, take the middle tier. It is cheaper to move up after a busy weekend than to spend one explaining lag to your players.

More game servers: https://www.renode.space/ai/game-servers.md

### General questions

### Getting started

**How quickly is my server ready?**

Game, app, web and database servers are created the moment payment clears, usually inside a minute. The game or runtime is installed and started for you, and the console is live in your browser while it happens. VDS and dedicated servers are prepared by hand and delivered within 24 hours.

**Do I need to configure anything before it works?**

No. The install runs, the configuration is written, and admin passwords are generated for your server rather than shared with everybody else's. The exception is four games whose publisher issues a credential to a person - those say so on the shop before you pay, and ask for it on a Setup tab afterwards.

**Which games need a key from me?**

Counter-Strike 2 needs a Steam game-server token, Don't Starve Together a Klei cluster token, FiveM a Cfx.re licence, and DayZ, Project Zomboid, 7 Days to Die, Arma 3 and Unturned need a Steam account or token of your own. We cannot create any of them and we never share one between customers. Your server is built immediately and the installation waits until you paste yours in.

**Can I try before buying?**

There is no free tier. The entry plans start at $1.50 a month precisely so that trying something costs about as much as a coffee.

**Can Claude or ChatGPT set my project up?**

Yes, and the panel gives it what it needs. On a server's Console tab, pick a purpose and press Connect AI: the panel copies a private link with the runtime, the port the code must read from SERVER_PORT, the code path, the GitHub branch, the databases and the limits. Paste it into Claude, ChatGPT or any assistant that can open links; the same link followed by /mcp works as an MCP server URL. It stops by itself after 7 days unused. You can also connect Claude, or any MCP client, to your whole account at https://panel.renode.space/api/client/mcp. Linked repositories get a pre-flight check that shows what will break before a deploy, no AI needed. No password or token is ever shown to the assistant - the AI setup page explains it all.

### Running the server

**Do I get full file access?**

Yes - a complete file manager with an in-browser editor, plus SFTP credentials. There is no plan on which the file manager is disabled or read-only.

**Can I install mods and plugins?**

Yes. Upload them through the file manager or SFTP, or use the game's own workshop support where it has any. Nothing here whitelists which mods you are allowed to run.

**Can other people help me run it?**

Yes. Invite subusers with granular permissions - console only, files only, no billing - or build a team with a role and grant it access to several servers at once. Permissions are a union, so nobody loses access they were given elsewhere.

**What happens if my server runs out of memory?**

New servers are configured so the kernel stops the container and it restarts clean, rather than swapping and dragging the whole machine down. If a server restarts repeatedly we warn you on the server page and open a support ticket before anything is suspended - you get told twice before it stops.

**Is the CPU limit a hard limit?**

Yes, and it cannot be breached: the container is throttled to the share you bought. A server sitting at 100% is slow, not broken, and is never suspended for it.

### Backups and safety

**Are backups included?**

Every plan carries backup slots - two on the entry tiers, more further up. Take them on demand or on a schedule, and restore with a button rather than a support ticket.

**Where are backups stored?**

Off the machine they protect. A backup sitting on the same disk as the thing it is insuring covers you deleting your world and covers nothing at all about the disk failing.

**What happens to my backups if I cancel?**

Deleting a server deletes its backups with it, deliberately and including locked ones. Download anything you want to keep first - the panel lets you.

### Billing

**How do I pay?**

PayPal, card, your wallet balance, or bank transfer. Every method produces a proper invoice you can download or print, with our details and the bank account on it while it is unpaid.

**Can I pay in Georgian lari?**

The panel displays every figure in lari at the National Bank of Georgia's published rate, marks converted figures as approximate, and always shows the amount that will actually be charged. Invoices stay in the currency they were raised in, because an invoice is a demand for a specific amount.

**What happens when my subscription is due?**

An invoice is raised and emailed to you seven days before expiry, and again on the day. Paying it settles that same document rather than raising a second one.

**Can I upgrade or downgrade later?**

Yes, and it does not rebuild anything. Changing plan changes the limits on the container you already have - your world, files and database stay exactly where they are.

**Do you offer refunds?**

There is no automatic refund button. If a server cannot do what it was sold to do, open a ticket and we will sort it out - including refunding you. We would rather fix the plan than argue about the policy.

### Support and the honest bits

**How do I get help?**

Open a ticket from the panel - it reaches every member of staff and every administrator, not a queue aimed at nobody in particular. Attach a screenshot if it helps; attachments are private to your ticket rather than sitting at a guessable public URL. Discord is there for faster, less formal questions.

**Where are the servers?**

Germany, on hardware we run. That is one location: if you need players in another region on a low ping, say so before buying rather than after.

**Is there an uptime guarantee?**

We measure node availability every five minutes and report it in the panel rather than printing a number with four decimal places we have not earned. If something is down you will usually hear it from us first.

**Who actually runs this?**

A small team that writes the panel, the shop and the automation itself. When something is wrong the fix is a code change, which is why the list of things wrong keeps getting shorter.

## Plans and prices

Read from the live catalogue at 2026-10-15 02:50 UTC. Prices are in US dollars per month; checkout also takes Georgian lari and bills for 1, 3, 6, 12 or 24 months. Prices change - re-check on https://www.renode.space/game-servers/counter-strike-1-6 or in the panel shop at https://panel.renode.space before quoting one.

| Plan | Price / month | Memory | CPU | NVMe disk | Databases | Backups | Ports |
|---|---|---|---|---|---|---|---|
| Starter | $3 | 512 MB | 0.5 vCPU | 5 GB | 1 | 2 | 1 |
| Standard | $5 | 1 GB | 0.8 vCPU | 10 GB | 1 | 2 | 1 |
| Advanced | $7 | 2 GB | 1 vCPU | 15 GB | 1 | 2 | 1 |
| Pro | $10 | 3 GB | 1.5 vCPU | 20 GB | 1 | 2 | 1 |
| Premium | $13 | 4 GB | 2 vCPU | 30 GB | 1 | 2 | 1 |


## Panel how-to

From the panel guides at https://www.renode.space/guides.

### Ordering a server

Ordering takes about a minute and happens in three screens: find what you want to run, pick a plan, and pay. Pay by card or PayPal and the server is set up the moment the payment goes through - you can watch it install in its console.

- Takes: About a minute
- Pay with: Card, PayPal or bank transfer
- Billed for: 1, 3, 6, 12 or 24 months
- Prices in: US dollars or Georgian lari

Open the shop and find what you want to run:

1. Sign in to the panel and open the shop. The tabs along the top are the product lines: VDS, Game Servers, App Hosting, Web Hosting and Databases.
2. Find your game - there is a search box - and press View plans. The card already shows the lowest price and the range of memory on offer.

Compare the plans and pick one:

3. Every plan lists its memory, CPU and NVMe storage, roughly how many players it suits, and what is included - updates, backup slots, file and SFTP access.
4. Press Get Started on the one you want. Not sure? Start smaller: you can move to a bigger plan later without losing your world.

Choose how long, then pay:

5. Pick a billing period - 1, 3, 6, 12 or 24 months. The total for the whole period is shown before you pay, so there are no surprises.
6. Pay with PayPal, or press Debit or Credit Card - paying by card does not need a PayPal account. The server is created as soon as the payment completes.

Paying by bank transfer instead: Prefer to pay from your bank? Choose bank transfer at checkout. The server is set up once the payment arrives, usually the next working day.

1. Switch the payment tab to Bank transfer. The account details for Bank of Georgia and TBC Bank appear, each with a Copy button.
2. Press Order & get invoice, then pay that invoice from your banking app, quoting the reference on it.

After you pay:

- The server appears under My Servers and installs itself. Open it to watch the install in the console.
- Your orders, invoices and subscriptions are under Finances in the side menu.
- Stuck at any step? Open Support in the side menu and raise a ticket.

### The console

Live output, a command line, power controls and the resource graphs. It is the server's own output rather than a filtered summary - if the game prints it, you see it.

- Start, stop, restart and kill, with the current state always visible.
- Command history with the arrow keys, and tab completion for common commands.
- Web-server noise - the internet knocking on doors that are not there - is folded behind a count you can switch off. A real error always prints.
- Graphs for memory, CPU and disk against your limits, so whether it is the plan or the mod is answerable.

### Files and SFTP

A complete file manager with an editor in the browser, plus SFTP credentials for the tools you already use. Upload a modpack, fix a config, pull a world down to your machine.

- Drag files in, or upload a folder. Archives can be unpacked in place.
- Edit any text file with syntax highlighting and save without downloading it.
- PDFs and images preview in the panel rather than downloading first.
- SFTP on the same credentials - use FileZilla, WinSCP or your editor's remote mode.

### Backups

Take one before you try something. Restore it when the something goes wrong. Lock the ones that matter so they are not rotated away.

- Slots on every plan - two on the entry tiers, more further up.
- Take one on demand, or on a schedule you set.
- Download any backup to your own machine.

> Important: Deleting a server deletes its backups, including the locked ones. A lock stops you removing a backup by accident; it is not a claim on the disk after the server is gone. Download what you want to keep before you cancel.

### Subusers, roles and teams

Give somebody the console without giving them your files, or the files without your billing. Three separate ideas, kept apart deliberately.

- A role holds permissions - what may be done.
- A team holds people.
- A grant joins a team to a server with a role, so adding a moderator to the team gives them the same access everywhere at once.
- Invite by link, by a join code, or by email address - and require approval on the codes if you would rather vet people.
- Access can be time-boxed, and expiry stops working immediately rather than overnight.

### Scheduled tasks

Restart nightly, back up before the restart, announce it to players first. Tasks run in order with delays between them, so a schedule can be a small routine rather than one action.

- Send a console command - a warning to players, a save, a world flush.
- Take a backup.
- Power actions: start, stop, restart.

### Games that need a key from you

A few games want a credential their publisher issues to a person - a Steam game-server token, a Steam account that owns the server files, a Klei cluster token, a Cfx.re licence. We cannot create one and we never share one between customers.

> Note: Those games say so on the shop before you pay. Your server is built immediately, and the game installation is held until you paste the value into a Setup tab, because installing without it produces a server with no game files in it and no explanation.

## Tutorials

2 posts, newest first. Each one follows in full after the list.

- [AMX Mod X plugins for CS 1.6 servers](https://www.renode.space/blog/counter-strike-1-6-amx-mod-x-plugins) (2026-10-07): Install and manage AMX Mod X plugins on a Counter-Strike 1.6 server: plugins.ini, modules, compiling .sma files, SQL admins, popular plugins and fixing load errors.
- [Counter-Strike 1.6 server: ReHLDS, AMX Mod X](https://www.renode.space/blog/counter-strike-1-6-server-guide) (2026-09-21): How a CS 1.6 server works today: ReHLDS instead of plain HLDS, the server.cfg settings that matter, Metamod, AMX Mod X admins, maps, bots and ports.

---

### AMX Mod X plugins for CS 1.6 servers

Published 2026-10-07 by RE:NODE Team. https://www.renode.space/blog/counter-strike-1-6-amx-mod-x-plugins

An AMX Mod X plugin for Counter-Strike 1.6 is a compiled `.amxx` file. You install one by copying it into `cstrike/addons/amxmodx/plugins/`, adding its file name on its own line in `cstrike/addons/amxmodx/configs/plugins.ini`, enabling any module it needs in `modules.ini`, and changing map. That is the whole mechanism. What makes a 1.6 server good or bad is which plugins you pick, how few of them you run, and whether you can tell why one failed to load - the AMX Mod X log tells you in one line, and most people never open it. This guide covers the plugin files, the stock plugins worth keeping, popular third-party plugins, compiling from source, admins in a file or a database, and the errors you will actually see.

#### The files that control plugins

AMX Mod X loads through Metamod, and its own configuration lives under `cstrike/addons/amxmodx/`. If you have not set up the stack yet, [the Counter-Strike 1.6 server guide](https://www.renode.space/blog/counter-strike-1-6-server-guide) covers ReHLDS, Metamod and the `liblist.gam` change. Assuming `meta list` shows AMX Mod X running, these are the files that matter for plugins:

| File | Purpose |
| --- | --- |
| `configs/plugins.ini` | Which plugins load, in order |
| `configs/plugins-*.ini` | Extra plugin lists, loaded after the main one |
| `configs/maps/plugins-<map>.ini` | Plugins loaded only on one map |
| `configs/modules.ini` | Modules to load, when auto-loading is not enough |
| `configs/amxx.cfg` | Core cvars, executed on each map start |
| `configs/users.ini` | Admins, when not using SQL |
| `configs/sql.cfg` | Database settings for SQL admins and SQL plugins |
| `plugins/` | The `.amxx` files themselves |
| `logs/` | Daily logs, and `error_*.log` for plugin errors |
| `scripting/` | `.sma` sources, include files and the compiler |

`plugins.ini` is read top to bottom, and order sometimes matters: a plugin that registers a command another plugin also uses wins or loses depending on which loaded first. A semicolon comments a line out, which is how you disable a plugin without deleting it.

configs/plugins.ini (abridged):

```ini
; Admin base - exactly one of these
admin.amxx            ; admins from users.ini
;admin_sql.amxx       ; admins from a database

; Basic
admincmd.amxx         ; amx_kick, amx_ban, amx_map and the rest
adminhelp.amxx        ; amx_help
adminslots.amxx       ; reserved slots
multilingual.amxx     ; per-player language

; Menus
menufront.amxx        ; amxmodmenu
plmenu.amxx           ; player menus: kick, ban, slap, team
mapsmenu.amxx         ; map and vote menus

; Chat and votes
adminchat.amxx        ; amx_say, amx_chat, amx_psay
antiflood.amxx        ; chat flood protection
adminvote.amxx        ; amx_votemap, amx_votekick, amx_voteban

; Maps
nextmap.amxx          ; "nextmap" in chat
mapchooser.amxx       ; end-of-map vote
timeleft.amxx         ; "timeleft" in chat

; Counter-Strike
statsx.amxx           ; /rank, /top15, round stats (needs csx)
;restmenu.amxx        ; weapon restrictions

; Third-party plugins below this line
resetscore.amxx
```

The stock list differs a little between AMX Mod X 1.8.2, 1.9 and 1.10, but the structure is the same. Third-party plugins go at the bottom, under a comment, so that an upgrade of AMX Mod X - which may replace the stock `plugins.ini` - is easy to merge back.

##### Per-map plugins and extra lists

Any file named `configs/plugins-<something>.ini` is loaded after `plugins.ini`, which is a tidy way to keep a group of plugins together: `plugins-zombie.ini` for a mod, `plugins-community.ini` for your own additions. Per-map lists in `configs/maps/` load a plugin only on that map, which is how a server runs a knife-arena plugin on `35hp_` maps and nowhere else. Some AMX Mod X versions also accept a map prefix file such as `plugins-de.ini` in the same folder; check your version's documentation before relying on prefix matching.

#### Modules: the part people miss

Plugins call functions that live in modules - compiled libraries in `addons/amxmodx/modules/`. Stock modules include `fun`, `engine`, `fakemeta`, `hamsandwich`, `cstrike`, `csx`, `sqlite` and `mysql`. AMX Mod X 1.8 and later auto-load the modules a plugin declares it needs, so `modules.ini` mostly stays as shipped. When a plugin needs a module that is missing from the folder entirely, it fails to load and the log says so.

One third-party module deserves a mention on modern servers. **ReAPI** is an AMX Mod X module that exposes ReHLDS and ReGameDLL hooks to plugins. Many newer plugins - and most of those written for current public servers - require it, because hooking the game through ReGameDLL is faster and more reliable than patching it through `fakemeta`. If a plugin's page says "requires ReAPI", install the module build that matches your ReHLDS and ReGameDLL versions into `modules/`, and check with `amxx modules` that it loaded.

```text
amxx version
amxx modules
amxx plugins
meta list
```

Run those four in the server console after any change. `amxx plugins` lists every plugin with its status - `running`, `paused`, `bad load` or `stopped` - and `amxx modules` shows which modules loaded. A plugin listed as `bad load` has a reason in `logs/`.

#### Admins: users.ini or a database

Admins are covered in detail in the [CS 1.6 server guide](https://www.renode.space/blog/counter-strike-1-6-server-guide), with the full flag table. The short form: one admin per line in `configs/users.ini`, identified by SteamID with account flags `ce`, access flags chosen per person, and `amx_reloadadmins` to apply changes without a restart.

configs/users.ini:

```ini
; identity          password  access flags      account flags
"STEAM_0:1:123456"  ""        "abcdefghijklmnopqrstu" "ce"
"STEAM_0:0:987654"  ""        "bcdefiju"        "ce"
```

Admin flags and immunity work the same way across every Source and GoldSrc admin system - [SourceMod admin flags and immunity](https://www.renode.space/blog/sourcemod-admin-flags-and-immunity) covers the general model if you also run newer games.

For more than one server, or a staff team that changes often, put admins in a database. Comment out `admin.amxx`, uncomment `admin_sql.amxx`, enable the `mysql` module if it is not auto-loaded, and fill in `sql.cfg`:

configs/sql.cfg:

```cfg
amx_sql_host "db.example.net"
amx_sql_user "amxx"
amx_sql_pass "a-long-random-password"
amx_sql_db "amxx"
amx_sql_table "admins"
amx_sql_type "mysql"
```

On first start with a working connection, `admin_sql` creates its admins table. Every server pointing at the same database then shares one admin list. A game plan on RE:NODE includes one database slot with a generated host, user and password; AMX Mod X's SQL plugins expect a MySQL-compatible server, so check the slot's engine in the panel before pointing them at it.

#### Core cvars in amxx.cfg

`configs/amxx.cfg` runs on every map start. A handful of its cvars change how every admin plugin behaves:

| Cvar | Common value | What it does |
| --- | --- | --- |
| `amx_mode` | `1` | `0` off, `1` normal, `2` kicks everyone not in the admin list |
| `amx_password_field` | `"_pw"` | Client setinfo field that carries an admin password |
| `amx_default_access` | `""` | Flags for players not in `users.ini`; keep empty |
| `amx_show_activity` | `2` | Announce admin actions with the admin's name |
| `amx_reservation` | `0` or `1` | Slots kept free for admins with flag `b` |
| `amx_vote_ratio` | `0.02` | Share of votes needed for a vote to pass |
| `amx_vote_time` | `10` | Seconds a vote lasts |
| `amx_votekick_ratio` | `0.40` | Share needed for a vote kick |
| `amx_voteban_ratio` | `0.40` | Share needed for a vote ban |
| `amx_extendmap_max` | `90` | Longest a map can be extended to, minutes |
| `amx_extendmap_step` | `15` | Minutes added per extension |

Defaults vary slightly between AMX Mod X versions, and the shipped `amxx.cfg` documents each one in a comment. Read it once; it is short.

#### Popular plugins and what they cost

The 1.6 plugin catalogue is enormous and twenty years deep. Most servers need very few of them. These are long-standing, widely used choices, grouped by what they solve:

| Plugin | Solves | Notes |
| --- | --- | --- |
| AMXBans | Bans with history, a web interface, shared across servers | Needs a MySQL-compatible database and a web host for the panel |
| Advanced Bans | Timed bans stored locally or in SQL, no web panel | Simpler than AMXBans |
| Galileo or Deagsmapmanager | Better map votes, nominations, rock the vote | Replaces stock `mapchooser.amxx` |
| Reset Score | `/rs` resets a player's own score | Tiny, universally expected on public servers |
| High ping kicker | Removes players above a ping for too long | Set a generous limit and a grace period |
| AFK manager | Moves or kicks idle players | Matters most on full servers |
| CSDM | Deathmatch with respawns and gun menus | A module plus plugins; ReGameDLL has its own variants |
| GunGame | Weapon progression mode | Turns the server into a different game |
| Zombie Plague | Zombie infection mod | A full mod with its own plugin set and models |
| Deathrun manager | Deathrun maps with one trap-runner | Needs deathrun maps |

When you replace a stock plugin - Galileo for `mapchooser.amxx`, an advanced ban system for the ban commands - comment out the stock one. Two plugins registering the same vote or the same command is the most common cause of a "the vote ran twice" or "my command does nothing" report.

##### Ban systems

The stock `amx_ban` writes bans into the engine's own ban list, `banned.cfg`, through `writeid`. It works, it is invisible to players, and it has no history: you cannot see who banned whom, when or why, and the list is per server. That is fine for a server with two admins who talk to each other. It stops being fine the moment you have a staff team, because the first ban dispute turns into an argument with no record.

AMXBans moves bans into a database with the admin, reason, length and map recorded, and adds a web interface where players can look up their ban and staff can lift it. The cost is setting up a database and a small PHP site for the interface, which is where the [web hosting](https://www.renode.space/web-hosting) side of things comes in if you do not already have somewhere to put it. Advanced Bans is the middle ground: timed bans with reasons, stored in a file or SQL, no web panel. Pick one ban system and remove the others; two plugins each keeping their own ban list means a player banned in one is welcome in the other.

##### Map management

Stock `mapchooser.amxx` runs a vote near the end of the map from `configs/maps.ini`, or from the map cycle if that file is empty. It has no nominations, no rock-the-vote, and no memory of what played recently, so the same three maps win every evening. Galileo and Deagsmapmanager both add nominations, "rtv" in chat, a recent-maps exclusion list and better vote menus. Either is worth installing on any public server with more than a handful of maps, and both need the stock `mapchooser.amxx` and usually `nextmap.amxx` disabled - their documentation says which. Keep the map list in step with what is actually on the server and on your FastDL host, or the vote will offer a map that half the players then download at 20 KB/s.

Full mods like Zombie Plague, GunGame and CSDM change the whole server. Run them on a separate server rather than as a toggle on a public one; their players are a different crowd, and a mod's plugins assume they are the only ones running.

> [!WARNING]
> A plugin is code running inside your server with full access to it. Download from sources that publish the `.sma`, prefer source to pre-compiled `.amxx` files from unknown authors, and be suspicious of anything that asks for `amx_rcon` access or sends data to an outside address. "Backdoored" plugins that hand someone admin rights have been a real problem in the 1.6 scene for years.

#### Compiling plugins from source

Half the useful 1.6 plugins are distributed as `.sma` source, and compiling them is easy once you know where the compiler is. AMX Mod X ships `amxxpc` in `scripting/`, with the standard include files in `scripting/include/`.

```bash
$ cd cstrike/addons/amxmodx/scripting
$ ./amxxpc resetscore.sma -o../plugins/resetscore.amxx
```

On Windows it is `amxxpc.exe` and the same arguments. If a plugin needs a third-party include - ReAPI plugins need `reapi.inc` and its companions - drop those files into `scripting/include/` before compiling. The compiler reports missing includes and syntax errors with a line number.

Compile with the same AMX Mod X version the server runs, or older. A plugin compiled with a 1.10 compiler can use natives a 1.8.2 server does not have, and it will fail to load with an error about a missing native. On a panel host where you do not have a shell, compile on your own machine with the matching AMX Mod X package and upload the `.amxx` file through the file manager or SFTP - [SFTP and the file manager](https://www.renode.space/blog/sftp-and-the-file-manager) covers both.

#### A worked example: a 24-slot public server

To make the above concrete, here is the plugin set a typical classic public server - `de_` and `cs_` maps, 24 slots, a handful of volunteer admins - actually needs, and why each line is there.

1. **Stock base.** `admin.amxx`, `admincmd.amxx`, `adminhelp.amxx`, `plmenu.amxx`, `menufront.amxx`, `adminchat.amxx`, `antiflood.amxx`, `multilingual.amxx`. These are the admin tools every staff member expects, and they cost almost nothing.
2. **Votes.** `adminvote.amxx` for vote kicks with sensible ratios. Players removing a cheater while no admin is online is worth having; set `amx_votekick_ratio` high enough that three friends cannot vote out a stranger.
3. **Maps.** Galileo or Deagsmapmanager instead of `mapchooser.amxx`, plus `timeleft.amxx`. The map vote is the feature players notice most.
4. **Stats.** `statsx.amxx` for `/rank` and `/top15`. Players like it and it is light.
5. **Bans.** Advanced Bans, or AMXBans if there is more than one server or more than a few admins.
6. **Comfort.** Reset Score and an AFK manager. A full server with three idle players is a server losing people at the door.
7. **Nothing else, at first.** Run that for a week, then add one plugin at a time when somebody asks for something specific.

That is roughly fifteen plugins, and a 24-slot server with them runs comfortably in well under a gigabyte of memory on one core. The temptation is to add sound packs, hats, trails, extra HUD messages and five kinds of chat colour. Each of those is a download for every new player, a little more work on the game thread, and one more thing to break on an update. The servers that keep their population for years are usually the boring ones.

Keep a copy of the working `addons/amxmodx/configs` folder and the plugin list somewhere off the server. On RE:NODE a manual backup before every change is one button, and it can be locked so rotation does not remove it; [backups that actually restore](https://www.renode.space/blog/backups-that-actually-restore) covers why you should try restoring one before you need to.

#### Debugging and performance

When a plugin misbehaves, add `debug` after its name in `plugins.ini` and change map:

```ini
resetscore.amxx debug
```

Runtime errors then include the line number and call stack in `logs/error_<date>.log`. Remove `debug` again when you are done; it makes the plugin slower.

The 1.6 engine is single-threaded, and AMX Mod X plugins run on that thread. A plugin that runs a repeating task every tenth of a second, or loops over every entity on every frame, is a direct tax on the server's frame time. A busy 32-slot public server with thirty plugins can be noticeably worse than the same server with ten. The routine for finding a slow plugin is unglamorous: pause plugins one at a time with `amxx pause <name>` while full, or comment out half the third-party list and compare. Ping complaints that follow a new plugin are rarely the network.

#### Troubleshooting

**`bad load` in `amxx plugins`.** Open the newest file in `logs/`. "Module/Library not found" means a missing module - often ReAPI or `csx`. "Function not present" or "native not found" means the plugin needs a newer AMX Mod X or a module you do not have.

**A plugin loads but its command does nothing.** Another plugin registered the same command first, or the player lacks the flag the command requires. Check `amxx cmds` for duplicate registrations.

**Admins have no rights after a restart.** `admin.amxx` and `admin_sql.amxx` are both commented out, both enabled, or the SQL connection failed and the plugin fell back to nothing. Exactly one admin base must be active.

**The map vote appears twice.** Two map plugins. Comment out `mapchooser.amxx` when using a replacement.

**Everything stopped loading after an update.** Metamod or AMX Mod X binaries were replaced or `liblist.gam` was reset. `meta list` tells you which layer is missing. [What to do when a mod update breaks](https://www.renode.space/blog/what-to-do-when-a-mod-update-breaks) covers the rollback habit.

**Plugin works on Windows, not on Linux.** File name case. Linux treats `ResetScore.amxx` and `resetscore.amxx` as different files; match `plugins.ini` exactly.

#### FAQ

##### Where do I put AMX Mod X plugins on a CS 1.6 server?

The `.amxx` file goes in `cstrike/addons/amxmodx/plugins/`, and its file name goes on its own line in `cstrike/addons/amxmodx/configs/plugins.ini`. Change map or restart, then check `amxx plugins` in the console.

##### Can I use .sma files directly?

No. The server only loads compiled `.amxx` files. Compile the `.sma` with `amxxpc` from the `scripting/` folder of the same AMX Mod X version your server runs, then upload the result.

##### How many plugins is too many?

There is no fixed number, but every plugin runs on the server's only game thread. Twenty well-written plugins are fine; five badly written ones are not. Keep only what players use and measure after each addition.

##### Do I need ReAPI?

Only if a plugin requires it, but many modern ones do. If your server runs ReHLDS and ReGameDLL - which a current 1.6 server should - ReAPI is the natural companion and costs almost nothing to load.

##### Can admins be shared across several servers?

Yes. Use `admin_sql.amxx` with every server pointed at the same database in `sql.cfg`. AMXBans works the same way for bans.

Counter-Strike 1.6 servers on RE:NODE ship with ReHLDS, Metamod and AMX Mod X already installed, from 0.5 GB and $3 a month, with a database slot for SQL admins and two backup slots. Plugins go in through the file manager or SFTP - there is no whitelist of what you may run.

[See CS 1.6 plans](https://www.renode.space/game-servers/counter-strike-1-6)

---

### Counter-Strike 1.6 server: ReHLDS, AMX Mod X

Published 2026-09-21 by RE:NODE Team. https://www.renode.space/blog/counter-strike-1-6-server-guide

A Counter-Strike 1.6 server needs about 256 MB of memory, one CPU core it will only ever use one thread of, and a single UDP port. That has not changed in twenty years. What has changed is that almost nobody runs Valve's original HLDS any more: the servers people actually play on run ReHLDS, a reimplementation of the engine, with Metamod loading AMX Mod X on top of it, and that stack is the difference between a server that feels like 2004 and one that feels like a museum.

This guide covers the whole thing: what ReHLDS and ReGameDLL are and why they replaced the originals, installing from SteamCMD, every `server.cfg` setting worth changing, Metamod and AMX Mod X, admin flags and the command list, maps and downloads, bots, and the honest situation with cheating and non-Steam clients. RE:NODE's CS 1.6 installs ship with ReHLDS, AMX Mod X and Metamod already in place, so if you are on one of those, read this as the explanation of what is already there.

#### What a CS 1.6 server runs: HLDS, ReHLDS and ReGameDLL

The original stack is three pieces. The engine (`hlds_linux` with `engine_i686.so` on Linux, `hlds.exe` with `swds.dll` on Windows) runs the world and the network. The game library (`cstrike/dlls/cs.so` on Linux, `mp.dll` on Windows) implements Counter-Strike itself - buy menus, bomb, money. And the mod folder `cstrike/` holds maps, configs and everything you will actually edit.

The community replaced the first two:

| Piece | Original | Replacement | Why |
| --- | --- | --- | --- |
| Engine | HLDS | ReHLDS | Crash and exploit fixes, better performance, extra cvars |
| Game library | `cs.so` / `mp.dll` | ReGameDLL_CS | Fixed long-standing bugs, exposed hard-coded behaviour as cvars |
| Plugin loader | none | Metamod, or Metamod-r | Lets AMX Mod X and other plugins hook the game |

ReHLDS is a drop-in: you overwrite the engine binary and everything else keeps working. ReGameDLL_CS is the same for the game library, and it is the one that adds most of the new `mp_` cvars people quote - free-for-all mode, infinite rounds, weapon behaviour that used to be fixed in code. Neither changes how the game plays by default. Both are maintained on GitHub, and both are worth taking, because plain HLDS has not had a meaningful fix in a very long time and several of its bugs are remotely triggerable.

Installing the base game from SteamCMD is app `90`, the Half-Life dedicated server, with the mod selected before the update runs:

```bash
$ steamcmd +force_install_dir /home/cs16/server +login anonymous \
    +app_set_config 90 mod cstrike +app_update 90 validate +quit
$ cd /home/cs16/server
$ ./hlds_run -game cstrike +ip 0.0.0.0 +port 27015 \
    +maxplayers 24 +map de_dust2
```

App 90 is famously awkward. SteamCMD frequently fails the first attempt with a subscription or manifest error and succeeds on the second or third identical run, and `+app_set_config 90 mod cstrike` must come before `+app_update` or you get Half-Life deathmatch instead. GoldSrc is 32-bit, so a 64-bit Linux box needs the 32-bit C library installed before anything starts. On a panel host all of this has already happened and the server you get is the finished tree.

`hlds_run` is a wrapper script that restarts the server if it exits; `hlds_linux` is the binary itself. Old guides add `-pingboost 1` to `2` or `3`, which changes how the engine sleeps between frames. It was a workaround for kernels that no longer exist, and on ReHLDS you should leave it off.

#### Requirements and resource usage

| Setup | RAM | CPU | Notes |
| --- | --- | --- | --- |
| 12-16 slots, vanilla plus AMXX | 256-512 MB | 1 core | The common public server |
| 24-32 slots, a dozen plugins | 512 MB - 1 GB | 1 core | Plugin count matters more than slots |
| Zombie Plague, CSDM, Jailbreak at 32 slots | 1-2 GB | 1 fast core | Heavy AMXX mods with per-player state |
| Two servers on one box | Double the above | 1 core each | They will not share a thread usefully |

The install is under a gigabyte. Everything that grows is content you add: custom maps, sprites, sounds and models, which is what the disk on a plan is really for.

CPU is where 1.6 is unusual. GoldSrc runs the whole simulation in one thread, so core count does nothing and clock speed does everything. `sys_ticrate` sets the server's frame rate target, and the community default of `1000` really does spend CPU to get smoother movement and registration. On a plan that buys a fraction of a core, `sys_ticrate 500` is a sensible compromise and the difference is hard to feel; `sys_ticrate 100` is not, and players will notice.

Network use is tiny by modern standards - a full 32-slot server is a few hundred kilobytes per second. What matters is latency and jitter, because 1.6's lag compensation is good but not magic, and a server two countries away is a server you lose duels on.

#### server.cfg, line by line

`cstrike/server.cfg` is read at startup and on every map change. Here is a complete one for a public server, with nothing decorative:

cstrike/server.cfg:

```cfg
hostname "Longship 1.6 // Classic maps // EU"
rcon_password "a-long-random-string"
sv_password ""
sv_contact "you@example.com"
sv_lan 0
sv_region 3

// Rounds and rules
mp_timelimit 30
mp_maxrounds 0
mp_winlimit 0
mp_freezetime 6
mp_roundtime 2.5
mp_buytime 0.25
mp_c4timer 35
mp_startmoney 800
mp_friendlyfire 0
mp_tkpunish 0
mp_autoteambalance 1
mp_limitteams 2
mp_autokick 0
mp_flashlight 1
mp_footsteps 1
mp_forcecamera 0
mp_fadetoblack 0
mp_hostagepenalty 0
mp_chattime 10
mp_playerid 0

// Physics
sv_gravity 800
sv_maxspeed 320
sv_airaccelerate 10
sv_cheats 0
pausable 0

// Network
sys_ticrate 1000
sv_maxrate 25000
sv_minrate 5000
sv_maxupdaterate 101
sv_minupdaterate 20
sv_unlag 1
sv_maxunlag 0.5
sv_timeout 65

// Content
sv_allowupload 1
sv_allowdownload 1
sv_downloadurl ""
mp_consistency 1

// Logs
log on
mp_logmessages 1
mp_logdetail 3
sv_logbans 1
sv_logecho 1

exec banned.cfg
exec listip.cfg
```

| Setting | Default | What it does |
| --- | --- | --- |
| `mp_roundtime` | `5` | Round length in minutes, between `1` and `9`. Competitive uses `1.75` |
| `mp_freezetime` | `6` | Buy freeze at round start, in seconds |
| `mp_buytime` | `1.5` | Buy menu time in minutes. `0.25` is fifteen seconds |
| `mp_c4timer` | `45` | Bomb timer. `35` is the competitive value |
| `mp_startmoney` | `800` | Round-one money, `800` to `16000` |
| `mp_friendlyfire` | `0` | On for competitive, off for a public server that wants to stay populated |
| `mp_autoteambalance` | `1` | Moves players to even the teams at round end |
| `mp_limitteams` | `2` | Maximum team size difference before joins are blocked |
| `mp_forcecamera` | `0` | `1` limits dead players to spectating their own team |
| `mp_fadetoblack` | `0` | `1` blacks out the screen on death. Anti-ghosting for matches |
| `mp_playerid` | `0` | `0` names for everyone, `1` team only, `2` nobody |
| `sv_maxupdaterate` | `60` | Snapshots per second per client. `101` is the community standard |
| `sv_unlag` | `1` | Lag compensation. Never turn this off |
| `mp_consistency` | `1` | Rejects clients whose model and sprite files do not match |

The last two lines of the config matter more than they look. `banned.cfg` and `listip.cfg` are where the engine writes bans when you run `writeid` and `writeip`, and they are not loaded automatically in every build - execing them from `server.cfg` makes bans survive a restart. Forgetting this is the classic "I banned him yesterday and he is back" report.

> [!WARNING]
> `sv_lan 1` does not mean "private", it means the server skips Steam authentication entirely. Anybody who can reach the port can join, with any identity, and SteamID bans stop working. If you want a private server, set `sv_password`.

#### Ports, RCON and connecting

| Port | Protocol | Purpose |
| --- | --- | --- |
| `27015` | UDP | Game traffic, and the Steam query the browser uses |
| `27015` | UDP | RCON. GoldSrc runs RCON over UDP on the game port |
| `27020` | UDP | HLTV, only if you run a proxy |

That RCON row is the trap for anyone coming from a Source game. CS:GO and CS2 speak RCON over TCP; GoldSrc speaks it over UDP on the same port as the game, in the clear, with the password in every packet. Anyone capturing traffic between you and your server gets the password, and there is no version of the protocol that fixes this. Use the panel console, which is authenticated by your account instead, and keep `rcon_password` long and rotated. [Using RCON safely](https://www.renode.space/blog/rcon-safely) is the general case and applies double here.

A CS 1.6 plan on RE:NODE comes with one port allocation, which is exactly what a server needs. HLTV is a second process on a second port, added on the Network tab if you want it.

Players connect three ways: the in-game browser under Find Servers, a favourite added by address, or `connect 203.0.113.10:27015` typed into the console. Direct connection is the one that works when the master list is being slow, and the one to test with before you believe a problem is real. If you would rather hand out a name than an address, [connecting a domain to a game server](https://www.renode.space/blog/connecting-a-domain-to-a-game-server) covers the A record, and it works fine for 1.6 as long as the port stays in the address.

#### Metamod and AMX Mod X

Metamod is a shim that sits between the engine and the game library so that several plugins can hook the game at once. AMX Mod X is the plugin platform almost every 1.6 server runs, and it loads as a Metamod plugin. Nothing else in the 1.6 world has a fraction of its plugin catalogue.

Metamod is installed by pointing the mod at it instead of at the game library. In `cstrike/liblist.gam`:

cstrike/liblist.gam:

```text
gamedll "addons\metamod\dlls\metamod.dll"
gamedll_linux "addons/metamod/dlls/metamod_i386.so"
```

Metamod then loads whatever is listed in `cstrike/addons/metamod/plugins.ini`, one plugin per line with the platform first:

cstrike/addons/metamod/plugins.ini:

```text
linux addons/amxmodx/dlls/amxmodx_mm_i386.so
win32 addons\amxmodx\dlls\amxmodx_mm.dll
```

```diagram
title: What loads what on a CS 1.6 server
engine = ReHLDS | the engine binary
liblist = liblist.gam | names the game library
meta = Metamod | addons/metamod
amxx = AMX Mod X | amxmodx_mm_i386.so
game = ReGameDLL_CS | cs.so, the real game
plugins = Plugins | .amxx files
engine -> liblist : read at startup
liblist -> meta
meta -> amxx : plugins.ini
meta -> game
amxx -> plugins : configs/plugins.ini
```

Start the server and type `meta list` in the console. If AMX Mod X shows as running, type `amxx version`. Two commands, thirty seconds, and you know whether the stack is alive. The tree underneath looks like this:

```text
cstrike/addons/amxmodx/
  configs/
    amxx.cfg        core settings
    users.ini       admins
    plugins.ini     which plugins load
    modules.ini     which modules load
    maps.ini        the map vote list
    cmds.ini        commands run at map start
  plugins/          the .amxx files
  modules/          engine, fun, cstrike, fakemeta, hamsandwich
  data/lang/        translations
  logs/             one file per day
  scripting/        .sma sources and the compiler
```

Plugins are `.amxx` files in `plugins/`, enabled by adding their file name to `configs/plugins.ini`. Several plugins need a module switched on in `modules.ini` first - `fun`, `cstrike`, `fakemeta` and `hamsandwich` are the usual suspects, and a plugin that fails to load with a "module not found" line in `logs/` is almost always this. Plugins written in Pawn are compiled from `.sma` to `.amxx` with the compiler in `scripting/`, which is worth knowing because half the useful plugins for 1.6 are posted as source.

`configs/amxx.cfg` holds the core settings. `amx_default_access` sets what a player with no entry in `users.ini` may do, and should stay empty. `amx_show_activity 2` announces admin actions with the admin's name, which is the setting that keeps a staff team honest. `amx_password_field "_pw"` names the client-side variable an admin's password goes in, which is the `setinfo _pw "yourpassword"` line an admin adds to their own config.

#### Admins, flags and commands

Admins live in `cstrike/addons/amxmodx/configs/users.ini`, one per line, in four fields: identity, password, access flags, account flags.

configs/users.ini:

```text
; identity            password     access flags            account flags
"STEAM_0:1:123456"    ""           "abcdefghijklmnopqrstu" "ce"
"STEAM_0:0:987654"    ""           "bcdefijmnu"            "ce"
"Anna"                "herring42"  "bcdefij"               "a"
```

The account flags decide how the admin is recognised. `c` means the identity is a SteamID, `d` means it is an IP address, `e` means no password is required, and `a` disconnects anyone who gives a wrong password while using that name. SteamID with `ce` is the right answer for anyone you trust; name-plus-password is for people whose ID you do not have yet, and it is only as good as the password.

The access flags are single letters, and they stack:

| Flag | Grants |
| --- | --- |
| `a` | Immunity from other admins |
| `b` | Reserved slot |
| `c` | `amx_kick` |
| `d` | `amx_ban`, `amx_unban`, `amx_banip` |
| `e` | `amx_slay`, `amx_slap` |
| `f` | `amx_map` |
| `g` | `amx_cvar` for most cvars |
| `h` | `amx_cfg` |
| `i` | `amx_chat`, `amx_say`, `amx_psay`, `amx_tsay` |
| `j` | Vote commands |
| `k` | Access to protected cvars such as `sv_password` |
| `l` | `amx_rcon` and `rcon_password` |
| `m` to `t` | Custom levels that individual plugins define |
| `u` | Access to the admin menu |
| `z` | Ordinary user, no admin rights |

Handing out `abcdefghijklmnopqrstu` to everybody is how 1.6 servers get destroyed by their own staff. A moderator needs `bcdefiju` and nothing else; `l` gives RCON, which is the whole server, and belongs to one person.

| Command | Effect |
| --- | --- |
| `amx_kick <name> [reason]` | Removes a player |
| `amx_ban <minutes> <name> [reason]` | Bans by SteamID. `0` is permanent |
| `amx_banip <minutes> <name>` | Bans the address |
| `amx_addban <steamid> <minutes>` | Bans somebody who is not connected |
| `amx_unban <steamid>` | Lifts a ban |
| `amx_slay <name>` / `amx_slap <name> [damage]` | Kills, or hits and shoves |
| `amx_map <map>` | Changes map |
| `amx_extendmap <minutes>` | Adds time to the current map |
| `amx_votemap <map...>` | Starts a map vote |
| `amx_cvar <cvar> [value]` | Reads or sets a cvar |
| `amx_rcon <command>` | Runs a server command |
| `amx_who` | Lists players with their access |
| `amx_reloadadmins` | Re-reads `users.ini` without a restart |
| `amx_plugins` / `amx_modules` | What loaded and what failed |
| `amxmodmenu` | Opens the admin menu in game |

`amx_reloadadmins` is the one to remember: adding a moderator during an evening costs nothing and needs no restart.

#### Maps, the map cycle and downloads

Maps are `.bsp` files in `cstrike/maps/`, often beside a `.res` file listing the extra sounds, sprites and models the map needs so clients know what to download. `mapcycle.txt` in `cstrike/` is the rotation, one map name per line, and `motd.txt` is the panel of text players see when they connect.

AMX Mod X takes over rotation on most servers. `configs/maps.ini` is the list the vote plugins offer, and the standard `mapchooser`, `nextmap` and `timeleft` plugins between them run an end-of-map vote, announce what is next and answer `say timeleft`. If you want a fixed rotation instead, remove `mapchooser` from `plugins.ini` and let `mapcycle.txt` do it.

Custom content is where 1.6 servers lose players. A client that does not have your map has two ways to get it:

1. In-engine download, with `sv_allowdownload 1`. It works and it is painfully slow, and a 20 MB map means a two-minute stare at a progress bar. Some clients give up.
2. `sv_downloadurl "http://files.example.com/cstrike"`, pointing at a web server that mirrors the folder structure - `maps/`, `sound/`, `sprites/`, `models/`. Files can be stored bzip2-compressed as `de_yourmap.bsp.bz2` and the client will unpack them. This is tens of times faster and is what every busy server does.

Any static web host works for the second option, including a small [web hosting](https://www.renode.space/web-hosting) plan - it is a folder of files over HTTP with nothing clever about it. Keep the content identical to what the server has, because a mismatched sprite with `mp_consistency 1` gets the player kicked with a message nobody understands.

#### Bots, cheating and non-Steam clients

CS 1.6 ships with ZBot, the bot ported from Condition Zero. `bot_add`, `bot_add_t`, `bot_add_ct`, `bot_quota <n>`, `bot_difficulty 0` to `3` and `bot_kick` are the whole interface. Bots need a navigation file for the map, `maps/de_dust2.nav`, which official maps have and custom maps almost never do. The alternative is a Metamod bot such as YaPB or POD-Bot, which bring their own waypoints, handle custom maps better and can be configured per map - which is why almost every populated 1.6 server that uses bots uses one of those rather than ZBot.

Cheating is the honest weak point of the game. VAC exists and catches the careless. The server-side defences are `sv_cheats 0`, `mp_consistency 1`, and an AMX Mod X anti-cheat plugin that watches for impossible behaviour, plus ReAuthCheck on the ReHLDS side to reject clients presenting SteamIDs that are not theirs. None of this is a solved problem, and a server that grows will need an active admin more than it needs another plugin. [Keeping a modded server clean](https://www.renode.space/blog/keeping-a-modded-server-clean) is about mods rather than cheats, but the discipline is the same one.

Then there is the thing every 1.6 guide skips. A large share of the remaining 1.6 population plays non-Steam builds of the client, and servers that want those players install ReUnion, which accepts them and issues generated identities. It is a real fork in the road, not a detail. Accept them and you get a busier server, an unauthenticated population, and SteamID bans and SteamID admin that no longer mean much because a banned player returns with a new identity. Refuse them and you keep `sv_lan 0`, real Steam authentication, bans that stick, and a smaller pool of players. Both kinds of server exist and both work. Decide deliberately, because retrofitting the decision onto an established server means rebuilding your admin and ban lists.

#### Troubleshooting

**SteamCMD fails to install app 90.** Run it again. And again. It is not you; the app 90 manifest fails intermittently and the same command succeeds on a later attempt. Check `+app_set_config 90 mod cstrike` comes before `+app_update 90`.

**The server starts but does not appear in the browser.** Check `sv_lan 0` and `sv_region`, then test a direct `connect` by address. If direct works, the server is fine and the master list is slow.

**`meta list` says nothing.** `liblist.gam` still points at the original game library. Check both the `gamedll` and `gamedll_linux` lines - editing only the one for your platform is fine, editing neither is the usual mistake.

**AMX Mod X loads but a plugin does not.** Read `addons/amxmodx/logs/`. It will name the missing module or the compile error. Modules are enabled in `modules.ini`, plugins in `plugins.ini`, and the plugin file itself must exist in `plugins/`.

**Admins have no rights.** Either the SteamID in `users.ini` is not exactly the one the player has, or the account flags are missing `c`. Run `amx_who` while they are connected to see what the server thinks they are, then `amx_reloadadmins`.

**Players are kicked for inconsistent files.** `mp_consistency 1` with content on the server that differs from what the download URL serves. Make the two identical.

**Everything stutters at 32 players.** Look at `sys_ticrate` against the CPU limit before blaming the plugins. A server at its hard CPU limit is slow rather than broken, and it does not announce itself except in the frame rate.

#### FAQ

##### Is Counter-Strike 1.6 still worth hosting in 2026?

Yes, in the sense that the servers with a community still fill every evening. It is the cheapest game to host by a wide margin, the mod scene has twenty years of depth behind it, and the entire population that remains chose to remain. It is not a game you launch a server for and wait to be found.

##### What is the difference between HLDS and ReHLDS?

ReHLDS is a reimplementation of the same engine, binary-compatible with existing mods and plugins, with the accumulated crashes and exploits fixed and extra cvars added. It is a drop-in replacement, and there is no practical reason to run original HLDS now.

##### How much RAM does a CS 1.6 server need?

256 MB for a small server, 512 MB for a full 32-slot server with a normal plugin set, and 1 GB or more for the heavy AMXX game modes like Zombie Plague that hold state for every player. Memory is almost never the limit on 1.6; single-thread CPU is.

##### How do I make myself admin?

Add a line to `cstrike/addons/amxmodx/configs/users.ini` with your SteamID, no password, the access flags you want and the account flags `ce`. Run `amx_reloadadmins` in the console. Then type `amxmodmenu` in game.

##### Why do players have to download maps so slowly?

Because the engine's own file transfer is from 1998. Set `sv_downloadurl` to a web server holding the same `maps/`, `sound/` and `sprites/` folders, ideally with bzip2-compressed copies, and downloads become fast enough that people stay.

##### Can non-Steam clients join my server?

Only if you install ReUnion, which accepts them and assigns generated identities. The trade-off is that SteamID bans and SteamID-based admin become much weaker. A default server with `sv_lan 0` accepts Steam clients only.

CS 1.6 servers on RE:NODE ship with ReHLDS, Metamod and AMX Mod X already installed, so `meta list` answers on the first start and `users.ini` is the only file you have to touch. Plans begin at 0.5 GB with one port allocation, the RCON password is generated per server, and the file manager edits `server.cfg` and `plugins.ini` in the browser.

[See CS 1.6 plans](https://www.renode.space/game-servers/counter-strike-1-6)

## Rules for the assistant

- Never ask the user for a password, token, API key or `.env` contents, and tell them not to paste one into this chat. Describe where a secret goes instead.
- Secrets reach the server through the panel: `.env` is uploaded through the Files tab, startup variables are set on the Startup tab. `.env` never goes in the repository.
- An app server has exactly one reachable port. Read it from `SERVER_PORT` (also `PORT` when the panel starts a linked repository) and bind `0.0.0.0`; never hard-code a port.
- On every panel-managed server (everything except VDS and dedicated servers, which come with full root) only `/home/container` persists, and the process runs unprivileged: no root, `sudo`, `apt`, `systemd` or Docker.
- Memory is a hard limit; a process that reaches it is killed with no error message. Suggest a bigger plan only after ruling out a leak.
- Do not suggest changing the server's startup command or image to work around a code problem - fix the code or the repository.
- Prices and plans above were read when this file was generated. Send the user to the page linked at the top before quoting a price as current.
- For a specific server, the panel's Connect AI link (Console tab) gives the exact runtime, port, path and branch. Prefer it over these general rules when the user has one.
- If something here does not answer the question, the full deploy docs are at https://www.renode.space/llms-full.txt and support is at https://www.renode.space/contact.
