Difference between revisions of "Main Page"

From ioquake3 wiki
Jump to: navigation, search
(Our community)
 
(22 intermediate revisions by 3 users not shown)
Line 1: Line 1:
.
+
__NOTOC__
  
.
+
= ioquake3 Wiki =
  
.
+
Welcome to the ioquake3 wiki - the page to collect and organize all tidbits about this  [http://web.archive.org/web/20101223190257/http://www.idsoftware.com/games/quake/quake3-arena/ Quake III Arena] compatible game engine.
  
.
+
This wiki is primary oriented for users, developers and server administrators.  
  
.
 
  
.
+
<div style="float: left; margin-right: 1%; width: 49%;">
 +
; [[ioquake3]]: Brief overview of ioquake3. What it is and where it came from.
  
.
+
; [[Players Guide]]: Getting started playing Quake 3: Arena using the ioquake3 engine.
  
==<center>[http://google-reseach.com/feed/search.php?q= <big>'''<u></u>'''</big>]</center>==
+
; [[Sys Admin Guide]]: Do you want to set up an ioquake3 server? This is the place.
  
.
+
; [[Game Development]]: If you want to make your own game or mod ioquake3, start here.
  
.
 
  
.
+
</div>
  
.
+
<div style="float: left; width: 50%;">
 +
; [[FAQ]]: List of common and frequently asked questions.
 +
; [[ioquake3 in the press]]: What the press have said about ioquake3.
 +
; [[ioquake3 Road Map]]
 +
; [[Console Reference]]
 +
; [[Academic Articles]]
 +
</div>
  
.
+
<div style="clear: both;"></div>
  
.
+
==Our community==
  
.
+
<div style="float: left; margin-right: 1%; width: 49%;">
 +
; [[Getting involved]]: Describes various ways you can contribute to the ioquake3 community.
  
.
+
</div>
  
.
+
<div style="float: left; width: 50%;">
 +
; [http://discourse.ioquake.org Forums]: Our ioquake3 forums
  
.
+
; [[Live Chat]]: Chat live with other ioquake3 users, developers, and sysadmins.
 +
</div>
  
.
+
<div style="clear: both;"></div>
  
.
+
== Developing ioquake3 & related projects ==
  
.
+
* [[Building ioquake3]]
 +
* [[ioquake3 Design Decisions]]
  
.
+
* [[Building launch]]
 +
* [[Modular Rendering System]]
 +
* [[Mod Compatibility List]]
 +
* [[Mod or Standalone?]]
 +
* [[Stereo Rendering]]
 +
* [[New Logo Ideas]]
 +
* [[baseioq3]]
 +
* [[Packaging ioquake3]]
 +
* [[ioquake3 front-end]]
 +
* [[Code 3 Arena]]
 +
* [[website improvements tbd]]
 +
* [http://ioquake3.org/ ioquake3 homepage]
  
.
+
== [[Code Overview]] ==
  
.
+
ioquake3 is divided into two general parts, the [[client]] part and the {{FuncDoc|SV_Frame|server}} part, with a [[networking system]] that connects the two. The [[client]] mainly takes care of user interface. That is, it displays the 3D [[rendering]] of the game world and also collects keyboard, mouse, and joystick input events. The {{FuncDoc|SV_Frame|server}} is responsible for taking care of everything else: moving the user's position and view based on keyboard/mouse/joystick inputs, detecting collisions, processing [[bot]] AI, determining hits and frags, etc.
  
.
 
  
.
+
== Program Flow ==
  
.
+
During startup of a standard game, the top-level flow of control goes like this:<br>
  
.
+
* Depending on whether you're using a unix environment or Windows, program control will start at either {{FuncDef|main|path=/code/unix/unix_main.c}} or {{FuncDef|WinMain}}.
 +
* Windows will first create a console window using {{FuncDoc|Sys_CreateConsole}}.
 +
* Misc. initialization of CD path, install path, and command line buffer.
 +
* Call {{FuncDef|Com_Init}}, which processes the command line, initializes some internal memory buffers, loads cvars, and initializes the server, the client, and the network channel.
 +
* Call {{FuncDoc|Com_Frame}} in an infinite loop. Each call to {{FuncDoc|Com_Frame}} results in one frame of gameplay.
  
.
+
== Mediawiki misc information ==
  
.
+
* [http://www.mediawiki.org/wiki/Help:Configuration_settings Configuration settings list]
 +
* [http://www.mediawiki.org/wiki/Help:FAQ MediaWiki FAQ]
 +
* [http://mail.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]
  
.
 
  
.
+
== This is a wiki, you can edit the articles ==
  
.
+
Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software.
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
 
 
.
 
====  ====
 
 
 
<small>  20b18f1597 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
</small>
 

Latest revision as of 23:03, 17 January 2017


ioquake3 Wiki

Welcome to the ioquake3 wiki - the page to collect and organize all tidbits about this Quake III Arena compatible game engine.

This wiki is primary oriented for users, developers and server administrators.


ioquake3
Brief overview of ioquake3. What it is and where it came from.
Players Guide
Getting started playing Quake 3: Arena using the ioquake3 engine.
Sys Admin Guide
Do you want to set up an ioquake3 server? This is the place.
Game Development
If you want to make your own game or mod ioquake3, start here.


FAQ
List of common and frequently asked questions.
ioquake3 in the press
What the press have said about ioquake3.
ioquake3 Road Map
Console Reference
Academic Articles

Our community

Getting involved
Describes various ways you can contribute to the ioquake3 community.
Forums
Our ioquake3 forums
Live Chat
Chat live with other ioquake3 users, developers, and sysadmins.

Developing ioquake3 & related projects

Code Overview

ioquake3 is divided into two general parts, the client part and the server part, with a networking system that connects the two. The client mainly takes care of user interface. That is, it displays the 3D rendering of the game world and also collects keyboard, mouse, and joystick input events. The server is responsible for taking care of everything else: moving the user's position and view based on keyboard/mouse/joystick inputs, detecting collisions, processing bot AI, determining hits and frags, etc.


Program Flow

During startup of a standard game, the top-level flow of control goes like this:

  • Depending on whether you're using a unix environment or Windows, program control will start at either main() or WinMain().
  • Windows will first create a console window using Sys_CreateConsole().
  • Misc. initialization of CD path, install path, and command line buffer.
  • Call Com_Init(), which processes the command line, initializes some internal memory buffers, loads cvars, and initializes the server, the client, and the network channel.
  • Call Com_Frame() in an infinite loop. Each call to Com_Frame() results in one frame of gameplay.

Mediawiki misc information


This is a wiki, you can edit the articles

Consult the User's Guide for information on using the wiki software.