.:Xash3D Engine:.

Custom Gold Source Engine build from a scratch



Developers:
Unkle Mike (aka G-Cont, aka Дядя Миша) - main developer
HLFX.ru & CS-Mapping.com.ua forum members - help, support, testing

CortexReaver, nemyax - English translation

Xash3D Engine has been tested for compatibility with many of Gold Source games and MODs. At this moment it should provide you an ability to successfully complete almost any existing singleplayer Half-Life mod without compatibility problems. Some mods can be not totally compatible, if they are too hardly modified or using some very specific or unstable features of Gold Source engine. Also multiplayer part of Xash3D engine is not fully completed yet because of lack of some important information and hidden source codes of Gold Source engine. So in most cases multiplayer mods should work good in a local or a LAN game, but some features can not work or work not exactly as under Gold Source engine. Check a detailed list of tested mods and a list of tested maps in "Features" section. A full list of Xash3D Engine features is also there, plus a guide on how to get work Half-Life and its' mods under Xash3D (in English and in Russian).


#######################################


Since Xash3D is a Half-Life compatible engine, then all the innovations below will be given in comparsion with GoldSrc engine.


Basic limits.

Xash3D limits are not just higher than Half-Life ones, they also can be tuned in gameinfo.txt file.
- MAX_EDICTS is 600 - 4096 (versus 900 in Half-Life).
- MAX_TEMPENTS is 300 - 2048 (vs. 500).
- MAX_PARTICLES is 1024 - 8192 (vs. 4096).
- MAX_BEAMS is 64 - 512 (vs. 64)
Careful limits reduction can save RAM in mods which don't need many edicts. Also MAX_EDICTS parameter is broadcasted from server during a multiplayer session, it adjusts clients to new conditions automatically.


Other limits.

These limits are engine-hardcoded and can not be tuned by user.
- MAX_VISIBLE_PACKET is 512 entities (256 in Half-Life).
- MAX_MODELS is 2048 unique models (including sprites and bmodels)
- MAX_SOUNDS is 2048
- MAX_SENTENCES is 2048 (1534 in Half-Life)
- MAX_USER_MESSAGES is 191 (128 in WON Half-Life)
- MAX_TEXTURES is 4096 (2048 of them can be used for VGUI)
- MAX_MESSAGES is 2048 (1024 in Half-Life) (quantity of messages in titles.txt)
- Maximum size for indexed textures is 4096х4096 (vs. 512х512 in Half-Life)
- Maximum size for true-color textures is 4096x4096.


Limits for bsp-models.

- MAX_MAP_MODELS 1024 (256 in half-life)
- MAX_MAP_LEAFS 32767 (8192 in half-life)
Note: other BSP-model limits are specified by compiler tools and don't depend on the engine.


Realisitic lighting values on server.

Xash3D allows to get more accurate value of current lighting level, because it considers lightstyles and their current values. The player's lighting is taken directly from renderer and considers all lighting types, including entity light and dynamic light.


Improved decal save.

Half-Life supports decal save only on world surfaces and very rare on doors, elevators and other moving models. Xash3D saves decals on every brush model. Decal transition between levels is also maintained (implemented in Half-Life, but doesn't really work).


Entity patch technology support.

This technology allows to load entities from external .ent script file. This script can be produced by the external ripent.exe application or by engine's facilities by typing the entpatch command. If the command is entered when a map is loaded, a new entity patch will be created.


Various map formats support.

Xash3D supports following BSP-map formats: Quake 1, Half-Life, Half-Life Blue Shift. Besides, Quake 1 external bmodels are supported (medikit and ammo models). Note: it is recommended to play Quake 1 maps in Deathmatch Classic mod to prevent stuckness of player because of the difference between hull's sizes of Half-Life and Quake.


Hot resource precaching support.

Xash3D allows to precache models "on the fly" that helps to avoid nasty PF_PRECACHE_ERROR. Also Xash3D doesn't crash if a model or sound wasn't found.


Reliable changelevel.

Before switching to a next map Xash3D will analyze its state (without unloading the current map) and decides whether correct changelevel procedure is possible. In case of any error in a next map the engine will signal about it in the developer's console, and the changelevel will be aborted. The error message also contains troubleshoot tips that can make level designer's life easier, because such errors are most difficult to diagnose and fix.


Built-in credits.

To display credits and exit the game after, run the pfnEndSection command with oem_end_credits argument. The credits code is placed in menu.dll and can be changed by user at his discretion.


MOVETYPE_PUSH physics is more stable.

Xash3D entities behave more stable on moving platforms and don't shift away on sharp turns.


New MOVETYPE_COMPOUND physics type.

It allows to tie one entity to another, taking into account movement and rotation of the former entity. You can see an example in SDK - a crossbow bolt that correctly attaches itself to func_pushable, func_rotating, func_tracktrain and other brush models.


Console autocomplete support.

Xash3D has a powerful console autocomplete system that allows not just print command lists, but also describe all of them during the search. For more comfort you can type "makehelp" in the console, and the engine will generate help.txt that contains the list of all commands and variables with short descriptions. Map, movie, background track, cfg script, save, weapon (give command), sound (play command), game directory names input is also assisted by the autocomplete feature.


No parent directory restriction.

Most Quake engines are restricted to the parent directory with specific name, which doesn't matter when you make mod, but very uncomfortable when you make total game conversion and therefore replace the parent directory. Xash3D doesn't restricted to specific folder, and the parent directory is defined by the launcher. This way you can make your own game that doesn't depend on Half-Life.


Dedicated server has the autocomplete feature now, your command history can be saved.

Dedicated server has the autocomplete feature now, your command history can be saved.


Background maps support.

Background map is a map to be displayed as a menu background. You could see them in Half-Life 2. Xash has a simplier background map system - it doesn't depend on unlocked chapters (because original Half-Life has no chapters system) and it chooses the background map from the list. This list file must be named as chapterbackgrounds.txt and placed in scripts directory (if you don't have such directory, then just make it). Every list's entry is separated by new line. You can use any playable map as the background, but better don't use maps where player starts in a moving train, because it won't look good.


Lightstyle interpolation.

Turned off by default. Doesn't work with short sequences like switching on and off the light. It smooths light animation very well on long slow sequences like SlowStrobe or SlowPulse. Note: FPS rate may suffer from this option.


luma glowing textures support (Quake-style).

You can see such textures in original quake maps as glowing fields on a texture. Because this feature is caused by the Quake pallet's special features, the engine enables it for textures that have Quake or Quake2 pallet. This pallet is saved well after the simple conversion of wad2 files to wad3.


Improved model and sprite lighting.

Improved model lighting includes per-bone lighting from static and dynamic light sources, and it also includes correct model lighting on every stage of long sequence execution, when model goes far enough from its real location. The best example is forklift.mdl Sprite lighting is a correct lighting of all sprites that is rendered in additive mode and had "alphtest" during the compilation. For example, blood decals uses the world lighting and doesn't glow in darkness. Both sprites and models don't just use the world lighting, but also consider lighting of the closest brush model if there is one.


Player model display in the menu.

Instead of a usual player image you can see his 3D model in the menu and track all changes right on-the-spot.

  • View media
  • View media
  • View media
  • View media
  • View media
  • View media
Post article RSS feed Related Articles

Hi guys! We have many news (good and bad) for this long time. I, a1batross, will try to share all big news with you.


Customizable touch controls

Our developer mittorn is made a big changes in the engine. He is wrote a native touch controls and removed Beloko's controls. Now these buttons fully customizable. There isn't need much words, just watch this tutorial made by SergioPoverony.


Virtual Reality

Third party developer Solexid is did another changes in the engine. Now Xash3D SDL support Side-By-Side rendering and gyroscope headtracking. This will affect every mod that runs on Xash3D SDL. Watch his Half-Life 1 demo which present Virtual Reality in-game!


CS16Client Beta Leak

One of our betatesters did the bad thing. He is leaked beta build of CS16Client to some people.

You may read our article about this in VKontakte (only in Russian): Vk.com

I think that would be better if we release current beta version than it will do someone instead of us. You may download in "Download" section on ModDB. But we don't give any support about this version!

You need Xash3D Android v0.17 test or higher to run it.

Counter-Strike client.dll replacement
Xash3D Android

Counter-Strike client.dll replacement

Xash3D Android 19 comments

A week ago I was started rewriting Counter-Strike 1.6 client library.

XashNT in development

XashNT in development

News 9 comments

There are some important news about further Xash development.

Xash3D Engine build 2664 and XashXT v0.65 rev.1 are released

Xash3D Engine build 2664 and XashXT v0.65 rev.1 are released

News 0 comments

Greetings! This spring brings to us another double update of Xash3D Engine and Xash Mod, they are both already awaiting for you in Downloads section :)

Pre-Alpha Footage
Secret Operation®: Guardians

Pre-Alpha Footage

Secret Operation®: Guardians 2 comments

Little teaser from Technology Preview. Сontains footage from the first build of the game. And we still need modelers, texture artists and codders.

Add game Games
Meanwhile in Russia

Meanwhile in Russia

First Person Shooter

Welcome to the Skolkovo Research Facility. If you are here by accident, please kill yourself immediately as possible. This complex - top secret and strictly...

Xash3D Android

Xash3D Android

First Person Shooter

Fork of Xash3D engine that ported to Android. Allows play Half-Life out-of-box.

Paranoia 2: Savior

Paranoia 2: Savior

First Person Shooter

Paranoia 2 Savior — first-person shooter in the style of survival horror, which is unfolding in a secret underground laboratory facility somewhere in...

Secret Operation®: Guardians

Secret Operation®: Guardians

First Person Shooter

The development of an entirely new Secret Operation. With the new engine, and a new approach. This project is a large scale, compared with the previous...

No Name

No Name

Third Person Shooter

This game is in early development and it is a common clone of GTA. If you would like to help, please contact me -kyp1998.

Cotra

Cotra

Arcade

Добрый-Бобрый, лол. С вами балабер, а это КОТРА: Зубодробительный экшн где вы играете...

BOOM: Anatoly in Time

BOOM: Anatoly in Time

First Person Shooter

BOOM is returned :) Play this game and you узнаете, what is the PAIN! You play the BOOM when Boom plays YOU!

IONIZATION

IONIZATION

First Person Shooter

You will know a chilling story about misterious incident, which was happened in the middle Russia in 1994. Closed city Sverdlovsk-900 was abandoned and...

Xash3D : Half-Life : Enhanced

Xash3D : Half-Life : Enhanced

First Person Shooter

Played Half-Life? Wanted more? More Gore? More Explosions? If yes - Welcome to Half-Life : Enhanced on Xash3D engine which provide extended limits and...

Post comment Comments  (70 - 80 of 406)
HRN(BMN)
HRN(BMN)

can you make support for cs 1.6 + amxmodx ??

Reply Good karma Bad karma+1 vote
Qwertyus Creator
Qwertyus

Only if Valve gives CS sources for public use (but this will never happen). Also, with its' current state of multiplayer part Xash3D is mainly oriented for single player games/mods (and looks like this will never change too).

Reply Good karma+1 vote
HRN(BMN)
HRN(BMN)

oh sorry just one question does it support amxmox ??

Reply Good karma Bad karma+1 vote
HRN(BMN)
HRN(BMN)

Okay thank you :)

Reply Good karma Bad karma+1 vote
Alex-Wolfenstein97
Alex-Wolfenstein97

I installed the latest Xash3d build and and loaded a copy of half-life 1.1.1.0... that worked fine, so i went ahead and installed / patched opposing force to 1.1.0.8 and blue shift to 1.0.0.1, but when i go to run them, i get an error saying i need to have to CD inserted to play, and even if i do, it still doesn't work! any ideas on what i'm missing here ?

Thanks :D

Reply Good karma Bad karma+1 vote
Qwertyus Creator
Qwertyus

Here you go:
Moddb.com
Also, read some comments below there.

Reply Good karma+1 vote
Alex-Wolfenstein97
Alex-Wolfenstein97

ah i see, but what's the difference between blue shift unlocked and the other patch ? are there any bug fixes (and stuff like that) between the two ?

as for the opposing force dlls, isn't 1.1.0.8 the latest version ? where did you get 1.1.0.9 from ?

also, i have the original 2002 generations 3 CDs for all 3 games, how can i add the soundtrack into the games so that they would play just like in steam HL ?

Thanks :)

Reply Good karma Bad karma+1 vote
Qwertyus Creator
Qwertyus

The latest OF version is 1.1.0.9. It hasn't been shipped on CD, as I know, it's only exists as a patch. Blue Shift patch by Shambler team is a bit better, it fixes a small issue that Unlocked has. What about CD - you can't use CDs directly with Xash3D, but read the comment below.

Reply Good karma+1 vote
Alex-Wolfenstein97
Alex-Wolfenstein97

also, should i use Steam HL or WON ? witch one is more "compatible" ?

WON, Right ? :)

Reply Good karma Bad karma+1 vote
Qwertyus Creator
Qwertyus

WON or Steam doesn't matter much. The best choice is to install patched WON (1.1.1.0) and add soundtrack files into "media" folder from Steam. Or you can even rip your CD and use WAV-files with same names as MP3s (you will need to edit cdaudio.txt in "media" folder to use any audio you want).

Reply Good karma+1 vote
Alex-Wolfenstein97
Alex-Wolfenstein97

hm, I tried ripping the soundtrack from my HL CDs, it plays fine in a media player, but when trying to load it in xash nothing worked, tried wav / mp3 at different kbps, with different file names (like, "02_vague voices.wav" and placed the same file name at the 3rd line in cdaudio.txt), and even tried using same names as in steam HL with wav extention in cdaudio.txt, even mp3 at 192 / 320kbps didn't wotk... yet if I take the soundtrack from the steam version it works... what am I missing here ?

Tried this with "Exact Audio Copy" and with windows media player, and still nothing...

Thanks :D

Reply Good karma Bad karma+1 vote
Alex-Wolfenstein97
Alex-Wolfenstein97

oh, so you're saying that, no matter how i get the soundtrack, they have to have the same names as in Steam HL. right ?

Or can they have any names, and i just have to edit the txt file with the proper names ? (or what) ?

also, i looked everywhere, i can't seam to find the 1.1.0.9 patch for OP4, a link would be nice :)

Thanks

Reply Good karma Bad karma+1 vote
Qwertyus Creator
Qwertyus

You can use any file names, or even WAV-files instead of MP3s, while you accordingly edit cdaudio.txt.

OF patch 1.1.0.9 was included in full WON patch 1.1.1.0, just install WON patch and check for opforup.exe in your HL folder.

Reply Good karma+1 vote
Alex-Wolfenstein97
Alex-Wolfenstein97

thanks, one more thing, I had the blue shift HD pack installed before i used the shambler bshift patch... after i ran the exe and told it to go to "siera\blue shift", i ran "setup_bshift.bat" and noticed that it seams to have removed the "pack1.pak" file... isn't that where the HD pack was ? i'll have to install that again, wouldn't i ?

Reply Good karma Bad karma+1 vote
Qwertyus Creator
Qwertyus

I don't know what exactly you did, so I can't say if something was wrong. Just start the game and check how it works. If you lost HD pack it's not a problem to reinstall it. In fact, you only need dlls from a patch, you don't even need to patch Blue Shift maps, because Xash3D can use them like a charm.

Reply Good karma+1 vote
Post a comment

You are not logged in, your comment will be anonymous unless you join the community. Or sign in with your social account:

Platforms
Windows
Company
Xash XT Group
Contact
Send Message
Licence
GPL
Release date
Engine watch
Start tracking
Share
Community Rating

Average

9.6

100 votes submitted.

You Say

-

Ratings closed.

Highest Rated (3 agree) 10/10

Very good work,Uncle Mike.

Jun 19 2011 by red-bear

Lowest Rated (5 agree) 1/10

The writers of this engine don't care about copyright at all. The engine is riddled with valve code, some from the hl sdk, possibly some from the hl2 beta leak... Bottom line, it's illegal.

Note: this review was written on 12/29/13, and may not reflect how the code is later...

Dec 29 2013 by Danfun64

Embed Buttons
Link to Xash3D Engine by selecting a button and using the embed code provided more...
Xash3D Engine
Statistics
Rank
5 of 776
Last Update
Watchers
250 members
Games
9
Downloads
49
Articles
19
Reviews
34