Videos
- edit
- /
- history
- /
- upload files
Cleaners Adventures For Sven Co-op
| Author | CAd Team |
| Original mod release | 5 May, 2006 |
| Date of release | V1.0 - 21 November, 2025 |
| .bsp filename | cad_ctraining, cad_merged00, cad_lab1, cad_merged01-09, cad_outro |
Description
Some noise. Bryan, young cleaner, wakes up thinking "Again those old bastards…" When he comes out of his room something falls on his head and he blacks out…
So that's how our mod starts. Our mod tells of a story of the unlikeliest hero… Not Calhoun… Not Freeman… Not Shepard… It's Bryan Anderson! Are you surprised? He's nothing unusual. You will feel how it is, to be a simple cleaner, not some scientist or soldier, to run, think, shoot, live, who doesn't have the expertise to deal with any extreme situations, who haven't known where he must go… But, as usual the most dire circumstances is a experience that will bring about the determination to succeed no matter what comes his way. Monsters, soldiers and even his friends will try to stop him. But he won't stop, bravery and determination is realized because his aim is freedom. Would he find this freedom or not? It's up to you. This is Half-Life: Cleaner's Adventures…
Additional info
- The maps have been merged, reducing from 32 maps to 13 maps.
- The map starting from the training room is cad_ctraining.
- The map where the train section officially begins is cad_merged00.
- If there are too many players and the train map needs to be skipped, please start from the cad_lab1 map.
- The mod's original language is Russian, and all important plot points have subtitles.
- It contains many custom entities and scripts.
Known issue
- Seems setting all players iuser4=1 is not working, players are still colliding with each other.
Additional credits
Map Conversion - Ice Box
Script - Dr.Abc, NoobLCH(RRTS-LCH), Ice Box
Model - Medkit(Hand Arm replacement): Marine, g3(The original model is from Black Ops Redux):NoobLCH(RRTS-LCH)
Give Me Help - NoobLCH(RRTS-LCH), RRTS_Shephard
Testers - BDSC server group and ACST club.
Changelog
Tags
Rate this map
4.7 / 5 (3 votes)
Reviews
Comments & discussion
Rules:
- Feedback should be constructive.
- For discussion not related to this map, post in the forum.
- If you need help installing maps, please read the installation guide.

















A huge and very well-made series, with a strong Half-Life–style story told from a point of view I never imagined! Overall, great work, with quite challenging maps — especially for solo players who can’t buy weapons.
I ran into two bugs, and I’m not sure if anyone else has experienced them:
Since I played solo, I followed the description and started with cad_ctraining, but when it ended, the map complained about cad_intro_01 and wouldn’t proceed. So I manually switched to cad_merge_00.
The second issue was more serious and affected gameplay progression. On cad_merge06, you need an NPC (I believe his name is Helmet) in order to advance. At a certain point, he’s supposed to go down the elevator with you. However, upon reaching the lower floor, he disappeared. At first I thought he had moved on to his next scripted task, but in reality he had fallen through the bottom of the elevator and ended up stuck in the elevator shaft. It was impossible to get him out.
all fixed
Thanks, Reuniclus-579!
Nice!!!
Is it just me? or anyone which playing with +2 players get crash when on next map?
havent checked but the same thing happened to me in other map. It crashed when one player was missing a sprite that was used in some script. It crashed the entire server. It could be that you need to add it to .res?
To redmyclan:
Did this happened in original version(not CE survival version)?
To Garompa:
missing sprite in scripts might be the gmr bug:
g_Game.PrecacheModel(string) seems will check gmr replacement and only precache the replaced one.
g_EngineFuncs.ModelIndex(string) didn't check gmr, can't get replaced index when a model/spr has been replaced by gmr.
eg:
a. "models/shell.mdl"->"models/custommap/shell.mdl" in gmr.
b. g_Game.PrecacheModel("models/shell.mdl") precached is "models/custommap/shell.mdl"
c. use g_EngineFuncs.ModelIndex("models/shell.mdl") will try to find original "models/shell.mdl", which is not precached
d. server crash for not precache "models/shell.mdl".
solution:
a. get index when using g_Game.PrecacheModel:
iShell = g_Game.PrecacheModel("models/shell.mdl");
b. use this index instead of g_EngineFuncs.ModelIndex
or just remove that spr in gmr
If the sprite is used in the script then the gmr doesnt matter i think. The sprite from the script has to be manually added to the .res file or manually add the extra precache line in the script like you say so the resguy can detect it and generate the .res file correctly
But alas it's just another mod putting you in Black Mesa to get out the same way everyone else did.