This engine modification created especially for ESHQ mod for Half-Life part 1.
Modification based on one of old (from 2019) versions of Xash3d engine (v0.99, rev 4529) and may contain some bugs.
-
We have fix some known bugs (like non-rotating
func_rotating
; crashes at killed scientists sentences, etc) for which we had enough mind and time. -
We have added the
trigger_sound
entity that replaces theenv_sound
. It works as well astrigger_multiple
(with hardcoded “wait” value – 1 s). We cannot understand why there were no brush entities to set sound effect. Sphericalenv_sound
has very weird and unpredictable behavior, and it is difficult to apply it in cases like long narrow building entrances (f. e., partially opened gates). This situation really needs two brushes – before and after the gate – to trigger sound effects. -
We have returned green blood to some monsters. This feature was implemented but wasn’t enabled in client library. Also it has been added to
env_blood
andmonster_generic
entities (with an ability to set it up). -
Also we have returned human-like gibs and red blood to zombie. We think that zombie is more like a scientist than a bullsquid.
-
We have removed the
cycler_sprite
entity from our maps and added “Non-solid” flag to thecycler
entity. Also ourcycler
now have the “Material” field (crowbar sound depends on it) and two fields that defines collision box endpoints (like the “Color” setup).cycler
andenv_sprite
entities can also accept “body”, “skin” and “sequence” fields. Alsocycler
now can trigger its target. -
Our doors (momentary, rotating and simple) have different fields for “Just opened” and “Just closed” sounds. We’re planning to split “Opening” sound to “Opening” and “Closing”. But it’s not necessary for now. Also we’ve fixed some bugs (basically, around the “Starts open” flag) and expanded the list of sounds (not only replaced exist ones). Finally, our doors will not play “locked” sounds when they’re opened.
-
Our turrets and apaches can trigger something on their deathes.
-
Breakables can spawn crowbars (why it was not so?) and gauss gun clips.
-
Our
ambient_generic
(and all entities that can sound) has more accurate sound radius (minimal as default). -
We’ve added the
item_key
entity in addition toitem_security
to simplify doors triggering. It can look like a card or like a bunch of keys. -
We’ve added the
game_player_set_health
entity that sets absolute value of health and armor. It is applicable when you need to create an effect of immediate but controllable damage. -
Our
func_illusionary
triggers its textures when get call (as well asfunc_wall
orfunc_button
). -
Our grunts, barneys, scientists and zombies got “burned” state. Now it is possible to add burned corpses to the map. Also zombie got “dead” animation.
-
Our gman has “Killable” flag and two skins.
-
Our
monster_rat
can run and can be smashed (as well asmonster_cockroach
, but with red blood, of course). -
Our .357 and crossbow got correct reload sounds.
-
We really want to create fog entity. We think that
func_water
without oxygen loss and swimming-like movement (and some other sound effect) can be used for it. -
We’ve added “Don’t reset view angle / speed” flag to the
trigger_teleport
entity. It’s useful in case of map space expanding. -
Our
weapon_fastswitch
mode is now really fast (as it is in HL2). You just need to press slot button again to select the next weapon. -
Our
game_end
entity now works correctly (ends the game), andplayer_loadsaved
can “kill” player (so you don’t need thetrigger_hurt
or some other “freezing” method). -
Wood, glass and snow textures got their own sounds for player steps.
-
We have added the
trigger_ramdom
entity that can randomly trigger targets from a specified list with specified probabilities. No more lasers needed! -
Our
item_security
anditem_antidote
are collectable now. Their counts can be used to trigger events on maps and activate extra abilities. -
Our lasers can be turn off correctly. The older version of an engine turned off a sprite, but didn’t turn off the damage field.
-
Added support for an achievement script. Our modification generates script with extended player’s abilities according to count of collected
item_antidote
items. -
Added support of “origin” brush for breakables and pushables when they drop items on break. Now item will be dropped at the center of the “origin” brush or at the center of entity if the brush is not presented.
-
Range of sounds for pushables has been expanded and now they depend of materials. Sound script for pushables has been improved (better behavior fitting).
-
The
scripted_sentence
entity now can play single sound (it must be prefixed with “!!”). Also you can add text message fromtitles.txt
in addition to the sound sentence. -
Some speed improvements applied to shotgun, mp5, hornetgun, 357 and other.
-
Fixed mouse wheel’s behavior and some inconveniences in the keyboard settings interface.
-
Fixed “gag” flag’s behavior: now all scientists with “gag” will be silent.
-
“Credits” section added to main menu; map for it can be specified in the game configuration.
-
Added “Locked sequence” flag for all monsters. When set, engine will loop the sequence that is specified in monster’s settings before its first damage, death or before the call from the
scripted_sequence
entity. This feature works without additionalscripted_sequence
entities. -
Behavior of sounds of momentary doors reviewed: sounds of moving and stop work’s properly now.
-
Fixed bug with stuck weapons that can be dropped by dead human grunts.
-
“Use only” flag for doors will now work as a lock. Triggering these doors by their names will unlock them without opening. If no name specified, the door will be initially unlocked.
-
Added replacements for entities from HL: blue shift and Afraid of monsters.
-
Barnacles can shoot nothing on death.
-
Fixed too long time stuck on jumping from the water.
-
Switching between walk and run modes now works as well as in HL2 (run requires “/” key holding by default). “Always run” flag has been added to Advanced controls menu (disables this behavior).
-
Fixed mapping for additive textures: now they are able to be transparent and semitransparent conveyors.
-
Breakables now have sounds that depend on their sizes.
-
HUD now can display extra abilities (superflashlight, invisibility for enemies, damageproof).
-
Pushables are now react on explosions, shooting and hitting by a crowbar.
-
Implemented the “meat mode”: corpses can now be destroyed by bullets and crowbar in ome hit. Requires line
meat_mode "1"
in fileconfig.cfg
.
Unfortunately, we cannot fix some bugs yet:
func_pushable
bug: incorrect collision box.func_door_rotating
bug: incorrect collision if door has “Ox” and/or “Oy” flags.
But we believe that it is not serious problem for now.
- This assembly completely adapted for building with Visual studio 19.0 and newer (some fixes for type declarations and headers syntax added).
- This assembly is enough to launch Half-Life (WON) and some compatible mods.
- This assembly is a fork of original Xash3D engine with the same license.
This Policy (ADP), its positions, conclusion, EULA and application methods describes general rules that we follow in all of our development processes, released applications and implemented ideas. It must be acquainted by participants and users before using any of laboratory’s products. By downloading them, you agree and accept this Policy!