Open wootguy opened 9 months ago
I've noticed that new players can't do most sven maps because they're poorly designed and give no clues on what to do. So, I'm also working on making a plugin that tells you what to do and where to go in every map, complete with pathfinding that accounts for what a player can/can't reach in the moment. This will speed up map testing, detect when a map is softlocked, and lay the groundwork for better pathfinding for bots and npcs in the future. A huge project on its own. This is also high priority because whenever I do add new maps, I often see players complaining:
X: this map sucks
X: what do we do
X: pls rtv
X: rtvvvvvvvvvvvvv
- X has left the game.
In sven this is less of a problem because there is usually a veteran there who's played every map 30 times. HL on the other hand got an influx of new players who are still learning how to crouch jump.
My goal is to have every sven map working for a 1.0 version of this mod. After that, I start trying more of my own ideas, and make guides for others to do the same. There is a lot more you can do with open-source game code.
Most 4.x era Sven Co-op maps work as is. Many 5.x era maps should also work but will need porting if they were compiled with increased limits or use angelscript. The current list of supported maps is here .
Some major changes you'll notice is that sven-specific weapons are replaced with stock Half-Life weapons (uzi/saw/minigun/m16 -> mp5, sniper -> crossbow, deagle -> 357). Unimplmented monsters are also remapped (kingpin -> tor, stukabat -> alien controller). Some basic features are implemented in plugins which haven't been added here yet (player unstucking, thirdperson camera, etc.).
Bugs and other to-do items noted during public testing (updated 2024/11/17)
``` - don't flinch monsters so much - shock troopers not retaliating against pit drones (auspices) - scripted_sentence doesnt work (convert to normal sounds?) - grunts crouching to attack which obscures their view and they shoot their cover instead - force players out of the way of scripted sequences (extended, c1a0c) - add kingpin, stukabat, sqknest, rpg grunt - skill cfg (megamonstermassacre) - grunt uses turret 50 feet away (hostage2a) - EF_NOINTERP doesn't work (sc_waterworks tunnel trigger getaway_chase) (apache isn't interpolated, so maybe other ents can do the same?) - global sound replacement for mod (ub_megaman2 pit drone custom models) - tor fliching(?) too much (megaman3 boss mp5 stunlock) - right click gauss should gib robos - shockroaches always spin around when trooper gibbed - monsters can't walk over opened door (oberon14) - clear text menu on server join - warn if no worldspawn entity - can zoom in with xbow during cutscene - starting server on infested2 causes UserMsg client disconnects, even though entity data is fine (https://github.com/ValveSoftware/halflife/issues/1894) - "Cache_Free: not allocated" server crash after ~285 map changes - tb_mesa2bgold ladder in vat area teleport you (ladder with origin?) - no weapons assassins easily stun locked with egon or smth - hwgrunt has trouble targetting things (daikon_warfare1) - garg should react to being damaged and retarget or just turn around - spamming +use breaks rotating button controllers (kyper_kuutio_2 lift stuck, tb_mesagold lift) - thirdperson camera can skip map cameras - hwgrunt should play spinning sound. seems broken otherwise - otis will still follow/unfollow if provoked after hurting a friendly - female assassin drop gun - custom saw grunt guy still firing in tiny bursts - don't shuffle sounds on map restart (Slowdl bug) - wonky pushables (touch each other and dont stop sliding, or on elevators like con3hl_19) - provoked friendlies should calm down once they kill someone - blkop osprey hud name - can hear reload sounds but not gunshots outside of PAS - sound replacment to fix "sound not precached" for custom models using paths without hlcoop/ - change friendly garg dot color - friendly alien has human gibs - increase sniper vision (tututu2) - warn if spawner is blocked by something and the spawner/mosnter would trigger something - impact sounds for apache glass/engine (you get really close in thebackdoor) - barnacle doesn't play death animation sometimes (sc_another) - npcs talk to themselves (barney tb_mesa3gold, sc_tetris2 medic) - nm_uspninjas friendly grunts fixated on enemies on the other side of the map? that they never saw? - warn if trigger_condition has multiple targets for true/false (sven only triggers first found) - key values like MOVETYPE_SOLID work with changevalue - Banned for move commands flooding (burst) <-- this is kicking innocent players - grunt speech needs more variety for some things (kills, ) - cvar for isalve revivals (code is already written, just uncomment it) - upwards trigger_push weaker than in sven - trick the client into thinking they're underwater, to simulate fog? - tapping e on rotating button breaks it - SV_BuildSoundMsg: gonome/gonome_step1.wav not precached (0) - monsters trying to run into trigger_push that is too strong to pass (nm_attackdefend) - camera turning to face when it shouldn't? sectore_1 - sc_tl_cf_library intro broken (removed from cycle) - SV_BuildSoundMsg: sectore/pit_drone_die3.wav not precached (0) - SV_BuildSoundMsg: hlcoop/shockroach/shock_idle3.wav not precached (0) - SV_BuildSoundMsg: hlcoop/shockroach/shock_idle3.wav not precached (0 (sectore_3 - SV_BuildSoundMsg: player/pl_wade2.wav not precached (0) (conect.bsp) - httpstop fixes slowdl whens maps restart with a different precache list. Can this command be forced down the client's throat? - mp_edictsorting for high priorty ents isn't needed. You can increase delta.lst values and the client is fine with that - unordered_map is faster - shotgun grunts don't always have the same head? (extension first room from vent) - can block spawning of non-solid items (mountainpass ammo) - garg stomp attack wrong death icon - hwgrunt not using repel animation - maybe have barnacle flip your view so you can't kill it - healthkits dont work with higher max health (tox_surface8-0) - Error: server failed to transmit file 'hlcoop/320hudof01.spr' - looped music restarts when leaving audible range (arcade) - kyper assistant gets blocked by a player and waits like 5s to try following again - bullsquid keeps shooting at dead enemy squid? fall on one in stadium3 to reproduce - extra longjump spawning in con3 every spawn - grunts changing skins on death sc_trollworld (weapons group not at expected index) - voltigore beam shouldn't be interruptable (eastbase1 behind door) - respawning takes out of camera - should be able to stunklock agrunts with headshots? - old maps used netname for custom names (the_stairs) - "huh tankrocket or any tank controllable not giving score?" - gagged npcs can't use scripted_sentence (ey_compo) - sometimes not seeing bullet impact effects? packet loss? - "FATAL ERROR (shutting down): Cache_Free: not allocated" after about 260 map changes, called by Mod_LoadStudioModel_internal - people also saying all monsters are frozen or something 10 maps before the crash, on etc2_1 - FATAL ERROR (shutting down): PM_HullPointContents: bad node number (sometimes triggered instead of the bad plane crash) - scripted sequnce causing mosnters to teleport into you if you make them follow (otis in last, zelda in loz) - headshot punchangle reset on weapon shot (client sets this on mp5 so cant fix?) - houndeyes damaging each other in stacja? -ema - corrupted options in alamo model event 4 (models/ne/superzombie.mdl) caused model ptr corruption? - Missing RIFF/WAVE chunks Failed loading ../media/half-life02.mp3 -ema - killing a train/elevator doesn't stop its sounds - dropping weapon in water doesnt fall slow - can kill friendly torch grunt with mp_npckill off - infested roof snipers not attacking - shock doesnt blow up dead robos - tentacle too much hp and should maybe stay dead (invasion2) - babygrunt staring, possibly stunlocked - egon should gib corpses - spectate afk timer bullies - Can't apply gunshot decal for edict 2326 'func_clip' (sc_defmapN_v3) - first person spectate doesnt show beams for shockroach/displacer - cameras dont work with spectate - shock roach underwater gibs teammates - voltigore not responding to damage from behind - underwater use animation - holding use animation - hlbugfixed cl_forceteammatesmodels breaks custom models - no weapons animation on player - glock ammo not precached sc_spaceviking1 - grunts not responding to damage sc_spaceviking1 bathroom - fy_vertstadt can't move, also con3hl_17 checkpoint past apaches - gonome and proly all monsters eating corpse million miles away - garg stomp attack shouldnt be interruptable (babygarg) - last 1-2 corpses shouldnt fade out on monstermaker - flashlight glow not always working, depending on where u are on the map (ghost_buster) - turrets aiming at feet of monsters (sc_conspiracy intro) - increase abs box for uposiede down monsters (werongworld) - pizza guy teleported then barnacle tongue attached to a player and was dragging the player around - weapon bug where you cant select it looks like weapon detached from player (happens often on breakdown_heist start area) - sc_dead_zones assassins at end dont respond to sound or damage - male assassins still deaf (the_prison_v2 end) - crouching on pushable is a lag fest. Test if vanilla hl server also has that problem - no free edicts from gibs from sc_robination ending - robogrunt stunlocked from crowbar - weaponbox does not respawn (svencoop2) - friendly fire avoidance not working nm_uspninjas - barney dropping 357? - crossbow sniper mode has no impact sound? - turrets pushed down a bit? war.bsp - op_blackmesa9 shotgun model for friendly grunt showing as rpg - visual feedback for gauss explosion and self-hit logic - can overheal sentry with wrench pve_building_rb - grunt caught by barnacle floated down with caught anim between.bsp - check if grunt dropping gun inside wall on death, then do origin or smth if so - zombie barney head hitbox not working defmap - sentry kicked away by garg or tor beamed away - alien controllers sometimes have stuttering movement - head hitbox for houndeye (oneshot with revolver) - mp3 looping 3+ times causes it to be unstoppable? - dropped shotguns give 8/4 ammo not 12 - reload sounds should be quieter for other players - grunts seem to take cover on first sight, but hwgrunt shouldn't do that (cassault1) - hud_centerid not centering second line for hp - ammo ents not floating (combined) - swimming anim plays even when not moving - tor running into wall forever (con3hl_6) - stopped specating message not shown for yourself - tentacle sounds not working outside of hl - different fall noise for falling on player - barney/otis turning their head to talk while shooting? - sc_another worldspawn textures scolling but shouldnt (force rendercolor value?) - crossbow icon for pitdrone spit and other projectiles from monsters - turn off status hud after kill - just call zombie barney/solider "zombie" - elights + dlights for shock beams and voltibeams - deactivated turrets shw as neutral in kill feed - shooting multiple super explosives left me in standing death pose sc_strangers - tb_mech3 killed an item_airtank - someone switched to spectator mode but it didnt show in scoreboard the entire time - still getting blue flicker shooting npcs - no prached on every dropped weapon with no ammo? mp5 did it too on expermnt_r - make all monsters flinch like the alien grunt (20 heavy damage for idle flinching, but less flenching while attacking) - not all heals should be capped to max health (crushing healer thing that gives you 999999 hp from fun maps) (hlywood) - voltigore not using range attack when unable to reach (noob_og) - don't precache model event sounds, the mod does this automatically now (voltigore and some others?) - crosshair not reset on nosuit map - new joiner should see camera - some indicator that a player is taking timed damage - stop cowering from grenade sounds after it explodes - laser gun in adventure_1 not counting as player kikll - tor stunlocked too easily (make it 1/3 chance again?) - my own crowbar was usable somehow (krabban) - player/pl_wood_scr1.wav not precached (mistake_coop_c) (client side material sounds?) - ioshockiron breakables "explosives" but not actually - breakout_extended "invalid_step_sound not precached" (sc_wilkes_c2 at spawn) -m onsters obsessed with the player it killed and wont react to sounds/damage anytmore? (robogrunt) - aerodock1 SV_BuildSoundMsg: player/pl_tile3.wav - Sc_alley friendly garg double killfeed message - dont unstuck from dying players - reset weapon carry anim on respawn if no weapons (or dropping all weps?) - underwater use animation - replace injury with nothing and suicide with own name - "xen_tree" in kill feed and "nihilanth_energy_ball" - killed by "Breakable" and hud shows explosives only - "game_player_hurt" killed player - fy_vertstadt +use sound anywhere you arem, but not after dropping weapons - mem usage goes up like 4% for each player joined? - tentacle perma shock effect - tram got stuck on rotating thing. I think because someone was wedged in the platform so it wouldnt move when lever was pulled (etc2_7) - head hitbox for assassins, zombie grunts, hwgrunts custom models - can't get down vent. trigger_push is solid for some players. even jumping on it cant get them past it (tower2) - restart vote passes with first yes vote? (sc_robination) - treadmill fucking insane speed (sc_another) (smth about worldspawn rendermode/amt keyvalue?) - no free edicts after 35 minutes creating spark_shower (sc_spaceviking2, also sc_catalyst) - water instakills you (svenergy, sc_strangers) - gonomes dont attack sometimes. ai bugged? (septic_morass_demo) tweaks: - black ops should fight hecu - alien grunts fight race x hl 25th todo (didn't copy over yet): - CHalfLifeMultiplay::FShouldSwitchWeapon (cl_autowepswitch) (HLGetNextBestWeapon for singleplayer rules too) - sv_cheats stuff (i think rehlds handles this?) - scripted sentence changes for letting buttons or smth speak (scripted.cpp) - snark anglevectors stuff (what is that for?) - buster mode + HasPlayerItemFromID low prio: - scversion world keyvalue probably affects lots of ents in unknown ways - thirdperson cancels cutscene - bounce spam drop weapon on elevator going down - https://archive.svencoop.com.br/web/svencoop/20230220030651/https://sites.google.com/site/svenmanor/entguide/input_output_ref - triggers support wildcards (e.g. target = "asdf_*") - naming a game_end "game_end" prevents it from being triggered - friendlies not aiming at osprey motors - env_laser flickering between actual position and 0,0,0 (pointless_b2) - update reload time to fit weapon animation for custom models - custom muzzle flashes/events - show hud what opens doors, what buttons do, etc. (random shitty mapper logic) - AllocBlock full after 100 map changes or so (client engine problem) - hornet and shock gun can instant reload by dropping - why do dead players have better collision than corpse? - gruntwar floating guns when wall broken - holding reload on mp5 reloads it twice - hwgrunt goes idle after a kill and spinning sound stops? - agrunt custom model without bees trying to shoot bees and not moving? re_evil_directors_cut - dont allow changing some cvars unless special cases (mp_weaponstay, forcerespawn) - fall damage for monsters - getting stuck jumping out of water sometimes - custom gibs for every monster - respawn vehicles that leave the map - try updating richpresence_ vars and scr_connectmsg - item code duplication (weapons, ammo, items, weaponbox) - monster code duplication for things like damage and death (basemonster, machines, special monsters) - physics for sentries - create a million different idle animations to handle sentences for grunts/otis/etc without precaching? - turret bezerk death should show skull - fem assins dont have room to jump away from nade so they flip in-place and go nowhere (sparrows_op_1) - check cl_Autoswitch cvar or smth to detect beta clients, then don't send high edicts to them (kh3) model todo: - fixup turret textures (chrome triangle has wrong texture, gun brace uses some of the side texture) - merge op4 grunt models - merge textures for monsters that split them up too much (rgrunt, most aliens) - merge v/p/w models - merge zombie models - op4 grunt mp arm isnt blue design/vision/server todo: - make cutscenes optional or able to skip instantly for yourself - game_text lore and author comments should be removed from any maps that are meant to be serious - auto-add env_sound to maps that don't have it? the campaign feels more immersive with it. Almost like a different game. - hl is meant to be relatively light on combat. no bullet sponges. No insta-respawning enemies - not knowing what to do in a cryptic map might not be a totally bad thing, considering the alternative is usually grunt spam - no waiting around for things to happen, like timed horde sections. "something needs to happen every 3-5 seconds" -gaben unreproducible bugs: - gordonsci2 sequence never plays for button. He just stares at the button - dead grunts/robogrunts(?) sometimes get stuck shooting invsiibly despite having no body or smth - egon was stuck on for other player ```