# 3D GameStudio

3D GameStudio or 3DGS is a pan 3D computer game development system which allows the users to create 3D games and other virtual reality applications, and publish them royalty-free. It includes a model/terrain editor, a level editor, a script editor/debugger and comes with a big collection of textures, models and artwork, as well as a game template system that allows the creation of basic shooter games or RPGs without programming. For complex games or other applications, either the integrated programming language named Lite-C or an external development language such as Visual C++ or Borland Delphi can be used.
Gamestudio is marketed at users of various skill levels, providing three different levels of usage ("beginner", "advanced", and "professional") for hobbyists, artists, as well as programmers. Additionally, Conitec also markets the system for uses such as advergame development and the creation of real-time presentations, simulations, and virtual exhibitions. Most published titles made from Gamestudio are created by development teams of only 2 to 3 developers. There is also a large online community of users in support of the development system.

## History

* 1993: ACK 3D (Animation Construction Kit) by Lary Myers (Wolfenstein-like open source engine) A Linux version was created in 1994.
* 1994: ACK NEXT GENERATION by Johann Christian Lotter / oP Group (improved version of ACK 3D, open source)
* 1995: ACKNEX-2 written for the German TV show X-BASE (engine comparable to Doom)
* 1995: ACKNEX-2 becomes Conitec property and is released as '3D GameStudio'
* 1997: ACKNEX-3 released
* 1999: A4 released (Windows Based Quake-like Engine)
* 2000: A5 released (Terrain Engine)
* 2003: A6 released (Physics and Shaders)
* 2007: A7 released (new ABT renderer and Lite-C)
* 2010: A8 released (Enet Network Library, Nvidia PhysX, PSSM)
Free updates are normally available once every 4 to 8 weeks. Gamestudio / A8 has 2 different meanings. The Gamestudio part refers to the editors and game template system, but the A8 part refers to the game engine.

## Game engine

The A8 engine uses panes for physics simulation. The engine automatically updates the game state on all machines when playing over a network, but also provides functions for more low-level multiplayer programming. It uses an ABT (Adaptive Binary Tree) renderer for indoor and outdoor levels, and an additional BSP renderer for indoor levels. The BSP renderer is only available in the Pro edition. The free edition and Extra edition don't support shaders.
The engine supports high resolutions, terrain rendering, pre-rendered shadow maps and dynamic stencil shadows (single dynamic shadows for models). The 2D system (GUI system) of the A8 Engine is not very powerful (see scripting section), but replaceable using the 3D system if needed. Using Lite-C, most things can be customized. Shader model 3.0 support and post-processing using stages may assist shader programmers in chaining together effects to produce any number of custom-made shader effects.

## The editors

Gamestudio supplies users with an editing suite. However, software like Blender, 3ds Max, Maya and Adobe Photoshop or GIMP can also be used to create professional imagery and models for Gamestudio.
The editors allow users to put together games by creating a terrain or building environment, inserting models, and adding behaviors to them from template scripts or own scripts. If desired, users can create their own models and designs, textures, and scripts. Textures are created in external paint programs like GIMP, Photoshop, Paintshop Pro or Microsoft Paint.

### The world editor (WED)

The World Editor (or WED for short), is the main editor. With it, the user may position the various objects, assign actions to models (also known as entities) which are defined through scripts, assign textures to level geometry, and build levels using the Binary space partitioning tree (or BSP for short) technique.
WED is the main program of Gamestudio, the user can startup their game from here, attach the scripts to it, etc. WED is the location where the user can merge all the parts of their game (programming, 3d graphics, levels).
The layout for WED is fairly simple. The main part, the central right section, is where most of the editing is done. There are three graphs and a 3D view. Through re-arrangeable, the top left window is the top view, which has the X and Y coordinates. The bottom left is the side view, or the X and Z coordinates. The bottom right is the back view, or the Y and Z coordinates. The top right is the 3D view, which gives a quick preview of the level without building (compiling) it.
The graphs are split into multiples of 128 and further split into multiples of 16 to help with snapping and spacing. The graphs will automatically resize when zoomed out a bit and in steps of multiples of 8 (1024 and 128 then 8192 and 1024).
The left central section lists objects in the level, textures, and some other things. Textures must be of a power of 2 (such as 256×128, 1024×256, or 64×64) for best effects. Odd ones (like 394×213 or 723×1280) look worse and are slower at rendering.
The top is the tool bar which allows the user to manipulate objects, add new objects (such as entities, sounds, and lights), build a level, run it, and several other options.
When right-clicking on something and choosing properties, the user can manually enter a position, assign an action to an entity, or adjust textures on the individual sides of a block.
A disadvantage of WED is its incapability to do anything without blocks or terrain. E.g. it is really hard to build a street (that is not just a plane), because it is nearly impossible to move the blocks in the perfect position, so no "steps" or gaps are in the street (it is just not possible to get the edges of the blocks perfectly together, the snap-to-grid-feature helps only when using nearly non-rotated blocks). Triangles or a snap-block-edge-to-block-edge feature would fix that and would make it possible to make a more complex floor out of more than one single block without gaps or steps.

### The model editor (MED)

Though many users prefer to use external modeling programs, the model editor (or MED for short), gives you the capabilities to design models, and is sometimes used to make levels. Models can be made of anything ranging from simple boxes, to human models or complex environments like an entire city. Models are made of meshes, a group of vertices and triangles (often called "polygons") put together to form a shape; a skeleton of bones for animation; one or several textures for the skin; and effect files (.fx) for shaders.
Like WED, MED's general layout is almost the same. It has the three graphs and the 3D view. They are arranged in the same way as WED.
MED is somewhat like WED in the general layout, but MED also has a skin editor, which allows the model to be textured. The skin editor has a completely different layout. The texture is shown on the left side and the model is shown on the right with tool bars surrounding these. Textures are frequently created in external graphics editors and imported from a BMP, TGA, or PCX image file. MED uses UV mapping which has vertices from the model's mesh placed on the texture to texture the model.
Model shapes are created either through primitives (like cubes and pyramids) or by creating vertices and building faces. Models don't have to follow the restrictions that BSP has which, along with faster rendering, makes them a better choice for level design in most cases.

### The script editor (SED)

The script editor, SED, is a plain text editor with a compiler and debugger. However, key words like "function", "alpha", variable types, or numbers are highlighted in different colors for ease of identification, line numbers help to find syntax errors given by the engine faster, a code jumper allows jumping to different functions, actions and objects, and other functions further assist in programming and organizing projects. The script editor is used to program in Lite-c or C-Script (a scripting language somewhat similar to C used in previous generations but supported for compatibility's sake).

### The game editor (GED)

GED is just like WED, but creating levels in realview (realtime). It doesn't support creating blocks or lights, yet.

## Scripting and Programming

Gamestudio uses two different types of script, C-Script and Lite-C.
C-Script was the old scripting language of Gamestudio. It is still supported, but was replaced by Lite-C in A7 and is not recommended anymore for new projects. C-Script is a simplified version of C programming. It only includes one type of variable, a var, and does not support classes.
Lite-C was introduced in 2007. It is similar to the real C language, but includes many aspects that make it easier than C. Unlike C-Script, Lite-C supports the full C/C++ variable set, structs, and external classes, and is compiled instead of interpreted. It offers access to the DirectX command set as well as to the Windows API. Lite-C supports classes from external libraries, but a user cannot define their own classes in Lite-C. There is also a free standalone version of Lite-C, which can be used separately from Gamestudio.

## Intense X

The Intense X plug-in is designed to assist in creation within Gamestudio without programming, integrating into the level editor. Intense X uses artificial intelligence and pathfinding engines that attempt to remove the “cookie cutter” look that often accompanies other game design packages. Intense X is open source and can be expanded and customized for users with programming experience.

## The editions

Gamestudio has four different editions. All editions come with free updates within an engine version (Free within A8, but not from A7.x to A8.x). They also all come with the model editor, level editor, and script editor. Games created in all editions may be published with the exception of Team editions.
* The Free edition has WED level editor, the shadow mapping compiler and the game template system that allows 'clicking together' games from prefabricated scripts and components. Scripts are compiled at runtime and there is a watermark on the game screen.
* The Extra edition adds the ability to create precompiled scripts. It costs $99.
* The Commercial edition adds multiplayer networking and shaders. It costs $199.
* The Professional Edition is for commercial game companies and includes security mechanisms and a file packer. It costs $899.
There are three main online magazines which provide new tips, tricks and tutorials. Two of them (3AM and 3PM) are paid for, while the third, Acknex User Magazine (AUM for short) is free, created and published monthly by George Dan Pirvu.
In addition to the manual, there are several tutorials available ranging from basic things such as how to use WED, MED, and/or SED to more advanced things such as how to design multiplayer levels, editing shades, or creating interactive environments.
A special license term restricts the use of Gamestudio to applications that do not "propagate genocide against a certain group, race, nation or religion existing in today's real world".

## Games

Games that have used GameStudio include
* Skaphander: Der Auftrag (1995, NAVIGO Multimedia GmbH & Co. Produktions KG) - Germany
* H.U.R.L. (1995, Millennium Media Group) - USA
* Angst: Rahz's Revenge (1996, ManMachineGames) - USA
* Incidente em Varginha (1998, Perceptum) - Brazil
* Mr. Pibb: The 3D Interactive Game (1998, BrandGames, Mr. Pibb) - USA
* Saints of Virtue (1999, Shine Studios, Cactus Game Design) - USA
* Hades 2 (1999, Espaço Informática) - Brazil
* Taco Bell: Tasty Temple Challenge (2000, BrandGames, Taco Bell) - USA
* Under Ash (2002, Afkar Media) - Syria
* Bhagat Singh (2002, Mitashi Edutainment Pvt. Ltd.) - India
* W.A.R Soldiers (2002, MissionFailed de, IncaGold, AsylumGames) - Germany
* Funny Pizza Land (2002, Roman, GOBBOGOES) - Europe
* Airborne Hero: D-Day Frontline 1944 (2004, MissionFailed de, AsylumGames) - Germany
* Ardennes Offensive - Operation "Rhine Watch" - Winter 1944 (2004, MissionFailed de, AsylumGames) - Germany
* War Train Normandie 1944 (2004, MissionFailed de, AsylumGames) - Germany
* Terminal Machine (2006, ColdShock Studios, AsylumGames) - Germany
* Daemonica (2005, Cinemax) - Czech Republic
* Kabus 22 (2006, Son Isik LTD, Merscom LLC) - Turkey
* Kabus 22: Demolition Day (2006, Son Isik LTD) - Turkey
* Star Assault (2007, Kalypso - GamesArk Entertainment) - Germany
* Citroën C4 Robot (2008, 2GEN Studio, Citroën Turkey) - Turkey
* Dejobaan's Windows Games - USA
* Razor2: Hidden Skies (2010, Invent4 Entertainment, Strategy First) - Brazil
* Süpercan (2010, Sobee Studios, TTÇocuk) - Turkey
* Minotaur (2012, Pig Farmer Games) - USA
* Halloween (2013, Pig Farmer Games) - USA
* Zula: BattleRoyale (2016, MadByte Games) - Turkey
* Rigid Force Alpha (2018, com8com1 Software) - Germany
* Pogostuck: Rage With Your Friends (2019, Hendrik Felix Pohl) - Germany