Volatile Engine and J.A.C.K.

J.A.C.K.

J.A.C.K. (formerly known as Jackhammer) is a brand new level editor for games with a quake-style BSP architecture. The title stands for “Just another creation kit”, but actually it’s not just another level editor! The aim is to develop a convenient cross-platform tool capable of incorporating the best features of existing editors, such as Valve Hammer Editor, Q3Radiant and others. Despite Quake and Half-Life having been released a long time ago, the large community have arisen around, still developing mods and games on their bases. However the existing editors suffer from fundamental disadvantages their users are well familiar with. J.A.C.K. does aspire to be the universal level design tool for classic games. But not only the classics! We’re also planning Source engine and even UDK support. The editor shall become a key development tool for the Volatile engine, that is why its second name is Volatile Development Kit. And the last but not the least, J.A.C.K. has finally passed Greenlight and soon will be available in Steam store!

jack_sponza jack_sq3t2

Supported Games

  • Half-Life (including mods and Gunman Chronicles);
  • Quake (including mods and some Quake-based games, e.g. Hexen II);
  • Quake II (including mods);
  • Quake III (including mods and idTech3 based games, e.g. Tremulous).

Feature List
Download the latest J.A.C.K. version!
Articles and Manuals

uv_lock

The latest version of J.A.C.K. is 1.1.1064, released July 20, 2016.

New version highlights

  • Hexen II Support: now the editor supports Hexen II, the game based on Quake engine. There are compilers, FGD file and palette in the install package. Game configuration of the editor is identical to Quake’s.
  • VMF Format: now one can import and export maps in VMF format; this is a Source engine format. Although the support is still in beta mode, and not all the features are supported (e.g. the editor can’t process Displacements), you can use the feature to transfer your projects between VHE4 and J.A.C.K., and also to include other utilities to the development pipeline (e.g. HammUEr – an UE4 plugin).
  • User Cameras: now it is possible to place, move and delete user cameras, like in VHE. There is also an ability to load and save such cameras to JMF, RMF and VMF formats.
  • Triangulation: a special command enables triangulation of non-planar faces that frequently arise during vertex manipulation. This helps to get rid of many “Invalid Solid Structure” errors, and to facilitate creation of curved columns and other complex geometry using vertex rotation tool. Simply triangulate your complex stuff after you’re done. This command, along with others, is added to a new context menu in Vertex Manipulation mode.
  • Incremental Save: a new version saving command automatically adds version number to the file name. Such behaviour is familiar to 3DSMax users; it enables easy creation of checkpoints during prolonged project development.
  • Improved Entity Report: now hidden entities in “Include Hidden Objects” mode are marked in italic; also there are Hide and Unhide buttons added, to hide and show selected entities. Besides the dialog remembers last parameters entered, even between sessions.
  • Advanced Patch Texturing: Naturalize and Set patch texturing functions now account not only for scale, but also for shift and 90-fold rotation (i.e. 0, 90, 180 and 270 degrees). Along with that, Set function now performs in “naturalized” mode, i.e. taking into account segment lengths. These features greatly facilitate texturing of curves in Quake 3.
  • Other Useful Stuff: tabs in Texture Browser, ability to hide triggers and unknown entities, ability to “lock” texture axes in Scale Vertices operation during vertex manipulation, display of selection center in status bar, tear-off mode for submenus, support for deformVertexes autosprite and autosprite2 in Quake 3 shaders, and many more.
  • Lots of Improvements: the new version traditionally contains lots of bugfixes and improvements in comparison with the previous release. The editor became much more stable and functional.

The full version 1.1.1064 changelog is available here.


Volatile Engine

Volatile engine is still under development, but we’re ready to shed some light on the current progress. Although the engine itself was written from scratch, it intentionally implements many design principles we refer to as “Quake ideology”. We’re pretty sure old-school Quake/Half-Life programmers and level designers will notice that almost everything looks familiar. We do our best to incorporate the best principles from the best engines, so you’ll find some features you’ve already learnt from Source or Unreal. The engine will be cross-platform (Windows, Linux/SteamOS, Android), high-perfomance, flexible for game developers, and Steam-friendly. And certainly it is highly integrated with J.A.C.K. editor.

 

Key Features

  • scalable multi-renderer (Direct3D, OpenGL, and OpenGL ES) supports low-end video cards (e.g. GeForce 6600) but also exploits modern features of high-end hardware;
  • real-time per-pixel lighting with bump and parallax mapping, combined with lightmaps;
  • dynamic soft shadows for point, directed and parallel light sources;
  • “static” renderer based on lightmapping and “deluxmapping” (static bump/parallax mapping), also supporting dynamic projected lights; can be a nice fallback for low-end and/or integrated video;
  • precalculated lightmap/deluxmap styles (up to 8 styles per face) enable animated and toggleable lights even in “static” renderer;
  • precalculated radiosity for static and immobile dynamic light sources; “radiosity light grid” technique accounts for indirect lighting of dynamic objects;
  • multi-pass recursive rendering enables nested mirrors, portals and screens;
  • layered, Quake III style, GPU-optimized texture scripts with different blend modes, geometry deformation, color and texture coordinate generation; most of the texture scripts can be evaluated in hardware, although software fallback for low-end video is also possible;
  • advanced effects: spectral refractions, parallax-corrected cubemap reflections, volumetric fog, streamed video textures, light flares and coronas;
  • post-process effects: bloom, color correction, NDAA anti-aliasing;
  • high-throughput, SIMD-optimized software skinning for skeletal animation with vertex weighting up to 4 bones per vertex;
  • multithreading based on SMP model (rendition is performed in a separate thread);
  • advanced network model (IPv4, IPv6, IPX) with packet fragmentation, reliable and unreliable messaging systems, and packet compression;
  • multiplayer supporting up to 256 players with smooth local player and weapon prediction, and frame-based highly customizable delta encoding;
  • demo recording and playback;
  • embedded Lua scripting system enables custom server-side logic and client-side predictable events;
  • collision detection, ray casting and arbitrary hull sweeping through brushes, curves, and models;
  • custom GUI system supports the most common controls, such as text input fields, list boxes, image grids, buttons, scrollbars, and others;
  • separated engine game server and game client modules allow easy modification; most of game-specific code is moved to server and client libraries.

 

System Requirements

  • CPU 1.4 GHz (4-core 2.6 GHz CPU recommended);
  • 512 Mb RAM (2+ Gb RAM recommended);
  • Direct3D/OpenGL compliant video card (GF8800-class hardware recommended);
  • Windows XP SP3 or better; Debian 7.8 or better (64-bit OS recommended).

The minimum system requirements are very low, but expect poor visual quality; obsolete fixed-function render paths may be selected on low-end hardware. Nevertheless most of the gameplay features (e.g. dynamic flashlight, mirrors) will still function. Windows version supports both Direct3D and OpenGL renderers, but Direct3D renderer is recommended; other versions support OpenGL only.

 

Screenshots

sponza sq3t1
test34_1 test34_2
sq3t2_2 sq3t2_1

Unfortunately the demo version is not yet ready; but let’s be in touch! Subscribe our Twitter channel to be among the first who gets news and updates!


Sponza Atrium model originally created by Marko Dabrovic (2002), converted and modified by FiEctro and XaeroX (2016).
Test34 level was originally created for HLFX: Area51 by ZhekA (2012), converted by XaeroX (2016).
SQ3T1 and SQ3T2 levels were originally created for Quake III by Scrama (2010, 2011), converted by XaeroX (2016).

One comment

Comments are closed.