From f005ade2b2b5e39a5031e226c1483a69d255c6d0 Mon Sep 17 00:00:00 2001 From: mr-russ <> Date: Sun, 6 Jun 2004 05:22:25 +0000 Subject: [PATCH] Updated main documentation further to be current. Accidently committed half updated config.html --- doc/development.html | 82 +++++++++++++++++++++++++++++++---------- doc/faq.html | 35 +++--------------- doc/scripts/config.html | 45 ++++++++++++++++++++++ doc/todo.html | 54 ++------------------------- 4 files changed, 118 insertions(+), 98 deletions(-) diff --git a/doc/development.html b/doc/development.html index f962beac2..1bf010e2d 100644 --- a/doc/development.html +++ b/doc/development.html @@ -174,33 +174,33 @@ Please read the doxygen/doc++ documentation. // /_______ /|__| |__| (____ /__| (____ /\___ /|____//____ > // \/ \/ \//_____/ \/ // ______________________ ______________________ -// T H E W A R B E G I N S -// Stratagus - A free fantasy real time strategy game engine +// T H E W A R B E G I N S +// Stratagus - A free fantasy real time strategy game engine // /**@name {filename}.c - {One line description of this file} */ // -// (c) Copyright 2004 by {insert your name here} +// (c) Copyright 2004 by {insert your name here} // -// This program is free software; you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation; only version 2 of the License. +// This program is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation; only version 2 of the License. // -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. // -// You should have received a copy of the GNU General Public License -// along with this program; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -// 02111-1307, USA. +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +// 02111-1307, USA. // -// $Id$ +// $Id$ //@{ /*---------------------------------------------------------------------------- --- Includes +-- Includes ----------------------------------------------------------------------------*/ #include <stdio.h> @@ -210,13 +210,13 @@ Please read the doxygen/doc++ documentation. // More game includes. /*---------------------------------------------------------------------------- --- Variables +-- Variables ----------------------------------------------------------------------------*/ // Global and local variables of this module. /*---------------------------------------------------------------------------- --- Functions +-- Functions ----------------------------------------------------------------------------*/ // Local and global functions of this module. @@ -234,12 +234,56 @@ If you fix in other modules, please imitate the coding style of the original cod found online <a href="http://lwn.net/2001/1115/a/CodingStyle.php3">here</a>). <ul> <li>Write ANSI C. - <li>Use 4 spaces tabulators. + <li>All Tabs (Developers use 4 columns for a tab). <li>No line should be longer than 78 characters. <li>All comments should be on their own line. <li>Use { } even for one statement blocks. </ul> +<b>Coding Examples:</b> +<pre> + // Example for statement with i incremented + for (i = 0; i < sample->Length >> 1; ++i) { + ... + } + + // if statement with brackets and functions. + if ((i = CLread(f, &chunk, sizeof(chunk))) != sizeof(chunk)) { + ... + } + + // function with variables defined. + int function(int a, int b) + { + int x; + int y; + + x = a; + y = b; + + return 0; + } + + // Example of a function + static int CclLoadPud(lua_State* l) + { + const char* name; + + if (SaveGameLoading) { + return 0; + } + + if (lua_gettop(l) != 1) { + LuaError(l, "incorrect argument"); + } + name = LuaToString(l, 1); + LoadPud(name, &TheMap); + + // FIXME: LoadPud should return an error + return 0; + } +</pre> + NOTE: If you make big changes please always extend the copyright with your name, and always update the copyright year if required.<p> diff --git a/doc/faq.html b/doc/faq.html index 25f9ed238..2c7a5108a 100644 --- a/doc/faq.html +++ b/doc/faq.html @@ -44,35 +44,6 @@ For any questions not mentioned here, please visit A: Yes, if you compiled SDL with alsa support and you compiled stratagus using SDL video mode.<p> - <b>Q: Does Stratagus work with the W*rcr*ft 2 BNE version?</b><br> - A: No. The file format of this version is currently not supported.<p> - - - <b>Q: What W*rcr*ft 2 CD's do work with Stratagus?</b><br> - A: If you have any trouble with extracting, please contact us. - Also if you have a CD not listed here, please send us the test results. - - <ul> - <li>US Expansion (both MAC/DOS) - <li>US Original (both MAC/DOS) - <li>UK/Australian Original - <li>UK/Australian Expansion - <li>German Original - <li>German Expansion - <li>Spanish Original - </ul><p> - - <b>Q: Can I use Stratagus to join in a W*rcr*ft 2 network game?</b><br> - A: Sorry, Stratagus use its own network protocol. - The protocol needs the exact same code executed on all machines, - and it is not possible to have this with the original WC2, - therefore you can only connect to a Stratagus server.<p> - - <b>Q: What about other RTS games?</b><br> - A: St*rcr*ft and W*rcr*ft 1 support is in development. T*ber*an Sun - may be added in the distant future. For the old C&C games, you can - use freecnc.<p> - <b>Q: What ports does the Stratagus network protocol use?</b><br> A: 6660 by default, you may start stratagus with '-Pxxxx' flag to use port xxxx instead.<p> @@ -85,6 +56,12 @@ For any questions not mentioned here, please visit A: Install Stratagus to the C: drive. This has solved the problem for everybody who has had this bug.<p> + <b>Q: Stratagus runs really slow in large resolutions, what can I do?</b><br> + A: Versions of Stratagus from 2.1 update the screen every frame, and are + designed to be used with OpenGL support. Using Software/SDL to update + large screens is too slow and will cause the game to be slow. Use + OpenGL if possible, or play in 640x480.<p> + <b>Q: I have installed the windows version, when I start Stratagus I get only the splash screen and the game stops, but consumes 100% CPU. What have I done wrong?</b><br> diff --git a/doc/scripts/config.html b/doc/scripts/config.html index 426058632..e551ad48f 100644 --- a/doc/scripts/config.html +++ b/doc/scripts/config.html @@ -49,6 +49,13 @@ <hr> <a href="#AStar">AStar</a> <a href="#DecorationOnTop">DecorationOnTop</a> +<a href="#+DefineDefaultIncomes">DefineDefaultIncomes</a> +<a href="#+DefineDefaultResourceAmounts">DefineDefaultResourceAmounts</a> +<a href="#+DefineDefaultResourceNames">DefineDefaultResourceNames</a> +<a href="#+DefineDefaultResources">DefineDefaultResources</a> +<a href="#+DefineDefaultResourcesHigh">DefineDefaultResourcesHigh</a> +<a href="#+DefineDefaultResourcesLow">DefineDefaultResourcesLow</a> +<a href="#+DefineDefaultResourcesMedium">DefineDefaultResourcesMedium</a> <a href="#HealthSprite">HealthSprite</a> <a href="#ManaSprite">ManaSprite</a> <a href="#RevealMap">RevealMap</a> @@ -170,6 +177,44 @@ AStar("fixed-unit-cost", 1000, "moving-unit-cost", 20, "know-unseen-terrain", "u Show bars and dots always on top. +<a name="DefineDefaultIncomes"></a> +<h3>DefineDefaultIncomes([number, number, ...])</h3> + +Defines the amount of resource to pickup by default when harvesting/collecting. +When collecting gold for example you get 100 gold for a single pickup. + +<dl> +<dt>number</dt> +<dd>The amount of resource to collect by default per pickup. +<dt><i>RETURNS</i></dt> +<dd>Nothing</dd> +</dl> + +<h4>Example</h4> + +<pre> + -- Define 7 default incomes + -- Resources "time", "gold", "wood", "oil", "ore", "stone", "coal" + DefineDefaultIncomes(0, 100, 100, 100, 100, 100, 100) +</pre> + +<a name="DefineDefaultResourceAmounts"></a> +<h3>DefineDefaultResourceAmounts()</h3> + + +<a name="DefineDefaultResourceNames"></a> +<h3>DefineDefaultResourceNames()</h3> +<a name="DefineDefaultResources"></a> +<h3>DefineDefaultResources()</h3> +<a name="DefineDefaultResourcesHigh"></a> +<h3>DefineDefaultResourcesHigh()</h3> +<a name="DefineDefaultResourcesLow"></a> +<h3>DefineDefaultResourcesLow()</h3> +<a name="DefineDefaultResourcesMedium"></a> +<h3>DefineDefaultResourcesMedium()</h3> + + + <a name="HealthSprite"></a> <h3>HealthSprite(file, hotx, hoty, width, height)</h3> diff --git a/doc/todo.html b/doc/todo.html index 6c29fffef..e39814086 100644 --- a/doc/todo.html +++ b/doc/todo.html @@ -38,38 +38,17 @@ <a href="gpl.html">"GNU General Public License"</a></b> <hr> -<h2>Note:</h2> - -<a href="http://savannah.nongnu.org/pm/?group=stratagus"> -You can find a more up to date list of the planned tasks here: -http://savannah.nongnu.org/pm/?group=stratagus</a> -<p> -<a href="http://savannah.nongnu.org/bugs/?group=stratagus">Look at already submitted feature requests here: -http://savannah.nongnu.org/bugs/?group=stratagus -</a> -<p> -<a href="http://savannah.nongnu.org/bugs/?group=stratagus">You can submit your own ideas and feature requests here: -http://savannah.nongnu.org/bugs/?group=stratagus -</a> - -<h2> This should be done for the next release (1.19):</h2> +<h2> This should be done for the next release (2.3):</h2> <!-- ---- ====== -- ---- --- --- ---- ------- ------- --> <ul> <li>Worker with gold/wood could go to depot under construction! <li>Ai can't find any way, tries this to often. -<li>Decoration on top not supported. -<li>Regenerating forest looks weird. -<li>Touch of darkness has wrong time for damage. -<li>SVGALIB version does not support 3 mouse button. -<li>Sometime it seems that the command buttons aren't changed. <li>Let target of attack command blink, if selected (like right click) <li>Should rewrite the create player code. <li>Should show planed buildings, if I build with alt+shift more than one. <li>Canceled buildings stills shows gray rectangle, if new building is build. <li>New show actions produces new errors, buttons aren't correctly updated. <li>The color cycling isn't 100% correct. See FIXME: in ColorCycle() -<li>Scroll with the keyboard: use state and not the repeat rate. Than make - the scroll speed configurable. Use the repeat flag for faster scrolling. <li>Ships do not go up and down, if attacking. <li>I cannot change unit 'pending' or however you call it (command applied to new trained units) when there is a unit in train queue, I think I could. @@ -78,18 +57,10 @@ http://savannah.nongnu.org/bugs/?group=stratagus <li>The thing is, if whatever is blocking the path to the wood moves, the worker moves to some wired position (-1,-1), if no hall is available. <li>First sound of attack i never hear, only second,.. -<li>4map of orc campaign - I can't get option for creation of transport - (can't upgrade townhall) <li>Let single player maps played as multiplayer. -<li>More suggestions? -<li>Building-cursor and cursor over units shouldn't change to looking glass. -<li>Flying and ships could only be on even fields. <li>The heading of attacking units isn't 100% correct. <li>The heading of missiles isn't 100% correct. <li>Units trained says nothing? -<li>Fix all known core dumpers. -<li>Ships should first attack units with distance weapon. -<li>Units attacked, which can't re-attack should go out of range. </ul> <h2> Next to implement: </h2> @@ -98,28 +69,18 @@ http://savannah.nongnu.org/bugs/?group=stratagus <li>Document all functions with doc++ or doxygen comments. <li>Show the units in a transporter on map. (Partly done) <li>New spell "show units in enemy transporters" -<li>Make a spy unit. -<li>Costs Spells -<li>Corpse have a sight-range which will slowly reduced. -<li>Reduce memory use. (16 MB) <li>Unit moves away from magni.., glass must disappear. (duplicate) -<li>The price and name of something to be built/upgraded doesn't disappear, - and will remain on the screen until another price comes up. -<li>The brown background is never updated, and it will build a mass of - strange bits of pictures. -<li>Water buildings couldn't be always be reached with new ship code. -<li>Selecting with rectangle and scrolling with keyboard: some solutions?? -<li>Transporter and party didn't meet automatic (fixed, but not perfect)! +<li>Selecting with rectangle and scrolling with keyboard, scrolls selection area: some solutions?? <li>Another big thing I noticed - When loading data/puds/multi/jimland.pud, before the player stats appear, MANY lines saying "REGM: contains unknown action 0x4100" are shown. I didn't even look to see where this message is generated, but this serves as a heads-up. -<li>Status line isn't correct cleared. <li>Make color-cycling speed configurable. <li>ActionNone is used, where? <li>Support different AI for levels. <li>Let the campaigns play like the original. <li>Setting the units limit for each player separate. +<li>Decoration on top not supported. </ul> <h2>In the near future:</h2> @@ -130,7 +91,6 @@ http://savannah.nongnu.org/bugs/?group=stratagus <li>Fog of war (correct) <li>Exploration (correct) <li>Never chop the same wood twice. -<li>DGA X11 supported. <li>individual speeds for players. <li>Training queues without resources. <li>Hear range, and sound handling of only bearable sounds. @@ -140,7 +100,6 @@ http://savannah.nongnu.org/bugs/?group=stratagus <!-- == === === ======= --> <ul> <li>Documentation -<li>Support for debian / rpm packets (Yes: on www.debian.org or www.suse.de) </ul> <h2>Future plans:</h2> @@ -150,7 +109,7 @@ http://savannah.nongnu.org/bugs/?group=stratagus <li>Editing Build multiple units (training queue) <li>Editing Build list for buildings (building queue) <li>Z coordinates -<li>Ground effects (roads faster,...) +<li>Ground effects (roads faster,...) (Map Support Needed, A* Works) <li>Animated cursors <li>Automatic repairs <li>Show how time of bloodlust... (blink if short before end) @@ -165,8 +124,6 @@ http://savannah.nongnu.org/bugs/?group=stratagus <ul> <li>Animated resource icons. <li>All icons animated. -<li>Paladins: Autohealing + Autoexorcism -<li>Ogres: Autobloodlust <li>Upgradeable magic: One level of upgrade == -(10-15)% required mana to cast, but +(15-20)% of cost. Up to level 9. <li>Upgradeable weapon accuracy: In the same manner as upgradeable magic, @@ -174,13 +131,10 @@ http://savannah.nongnu.org/bugs/?group=stratagus increases in step of 5. accuracy improvements enabled after full strength upgrades. <li>Units can patrol between other units. -<li>Mage Tower/Temple of Death accumulates energy. Then it can be transferred - to nearby units in x8 value. <li>What about if peon attack is modified in this way that if attacks building it returns 1/2 of the resources for it. something like demolishing, not needed buildings or enemy ones. <li>Support for W*rC*rft. (without II) -<li>Support for W*rC*rft Alpha. (Some nice ideas was dropped) <li>Allow multiple tilesets / map or pud. <li>1) Randomly generate unit structure. Random health, mana, accuracy. <li>2) Allow bridges over rivers, that can be destroyed.