This wiki is static and therefore read-only as of August 2011. More information here.
Hosted by NexuizNinjaz.com

This is an old revision of the document!


QuakeC programming introduction

This is WORK IN PROGESS by GreEn`mArine

Give me some time until this is finished

Introduction

Welcome to the QuakeC programming introduction. This article is intended for people who have their fair share of experience in other programming languages like Java or C/C++. As you know, there is already the QuakeC reference guide which gives you an overview of the language used in server-side and client-side quake code. You will actually need to read that page at some point. Anyways, this page will provide the following information:

  • How to get the compiler for the server-side and client-side QC
  • How to use the compiler, what files it creates and where these files belong
  • An easy way how to get a current build of an (unmodified) DarkPlaces engine
  • Introduction to working with SVN using Eclipse and Subclipse
  • Introduction to the CodeBlocks IDE that allows not only syntax-highlighting but also navigating through the code, as well as autocompletion
  • Tips and tricks for staying up-to-date with your own probably massive code-changes, tips for merging conflicted code, and saving your work in modular patch files


To summarize this page: It explains how to setup an environment in which you can efficiently develop SVQC (server-side QC) and CSQC (client-side QC).
Keep in mind that this page does not provide coding tutorials. Some of these may be created another time at another place.

Build system

TODO: Explain general purpose of buildsystem, where to get it, create a file mirror somewhere.

Windows

TODO: Create a down-sized build.bat that only builds FTEQCC and DP engine including SDL version.

Linux

TODO: Someone else has to do the linux part!

Accessing SVN

TODO: Introduce Eclipse+Subclipse Plugin. Alternative: TortoiseSVN (what about Linux?)

Playing with the code

TODO: Introduction to CodeBLocks, explain the features of it. Explain known bugs.

Getting to know QuakeC

TODO: Link to the article in this wiki. Some explanations.
TODO2: Explain how to access built-in functions.

Working with SVN

TODO: Explain the common tasks that come with the usage of SVN and the fact that you likely changed (a lot of) code:
- Updating SVN by using Team Synchronisation feature of Subclipse to prevent conflicts when updating
- Creating patches to backup your work, keeping your work modular.

 
dev/programming_introduction.1231681517.txt.gz · Last modified: 2009/01/11 14:45 by green_marine
Nexuiz Ninjaz Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki
GFDL logoGFDLcontent Unless mentioned on the licensing page, the work on this page is licensed under the GNU Free Documentation License. The author states that the text and images can be used within the restrictions of this license (for example, they can be incorporated into certain free encyclopedias such as Wikipedia).
Kindly hosted by NexuizNinjaz.com