MG/FAQ
This article or section requires a cleanup in order to meet the Glest Wiki's quality standards.
You can edit this page to improve it.
|
Using Windows 7, I cannot connect to a server that is hosting a game on my LAN, help!
Answer: This may be caused by the Windows Firewall be turned on for Private Networks. Disable the Windows firewall for private networks and you should be able to click Find games to find a hosted server on your LAN.
You get an error stating Glest needs an OpenGL version of at least 1.3 to work.
Answer: You likely need updated video drivers or your video card belongs with the XT it is sitting in . For more details see here
Can I play Mega Glest with different operating systems?
Answer: Currently the answer is YES.
What network ports are required for network play (these must be open on your firewall)?
The network game interface window displays the actual port # used by Mega-Glest. The actual Port # is specified in glest.ini and the default is:
ServerPort=61357
If a user changes this port #, then all other clients wanting to play must also change their port #'s. TCP is used for game communication, UDP is used by Servers to broadcast to Clients on the same network that they are waiting for clients to connect.
New for v3.3.5 is the ability to seperate the 'External' port from the 'Internal' Port. The 'External' port is the port exposed to the outside world (Internet) and is usually the entry point into your network via a router. This 'External' port is the port that other users will see, and require to connect into your network. When you create a network game (by selecting a 'Network' slot in the custom game menu you will see the 'External Port #' option at the top of the screen. By default we use the port # 61357 but users may pick from a list of various port #'s (the one you pick must be setup on your router / firewall to 'Port Forward' incoming connections from the Internet to your computer). This list of External Port #'s is configurable as a property in glest.ini:
MasterServerExternalPortList=61357,80,143,587,21,110,25,443,993,995
If you plan on changing values in glest.ini it is best practise to add/edit the entries you want to change in glestuser.ini
The 'Internal' Port is the port that Mega-Glest itself will listen on for connections. This Internal Port # is set via a property in glest.ini:
ServerPort=61357
For LAN Games clients will look for servers using this port #. For Internet Games, Clients will ask the Master Server for the 'External Port' sent to it by a Mega-Glest User who will be hosting a Game.
Users should therefore configure their router / firewall to 'Port Forward' The External Port they will use in the Custom Game Menu (default is 61357) to their Internal Port (configured in glest.ini or glestusers.ini, default is 61357).
My mouse seems to move sluggish, too slow or too fast.
This could be for many reasons. (see references to DGAMOUSE http://www.libsdl.org/faq.php?action=listentries&category=3#28). Alternately you may edit glestuser.ini and add the entry (or edit if it already exists):
No2DMouseRendering=true
Where are the hotkeys defined for MegaGlest?
look at glestkeys.ini (you may override these defaults by making override changes to glestuserkys.ini)
For those Linux users who want to install the game into your home directory
You'll want to ensure you have 7-zip installed so that you can unpack the data package. On Debian and its derivates (Ubuntu etc.) you can use:
apt-get update && apt-get install p7zip-full
Then create a new directory the game will be placed in:
cd mkdir megaglest-3.3.5 cd megaglest-3.3.5
Now you need to download the "Linux XX bit x86 binaries" and the "Full Data package". What XX is depends on the architecture your Liux distribution is optimized for. On Debian and its derivates (Ubuntu etc.) you can use the arch command to determine what you have. If it says x86_64 then you want the 64 bit version of the game, otherwise use the 32 bit version.
For example, to download the 64 bit Linux version:
wget 'http://sourceforge.net/projects/megaglest/files/current_release/megaglest3.3.5_i386_64_linux_bin.tar.bz2/download' wget 'http://sourceforge.net/projects/megaglest/files/current_release/megaglest-data-3.3.5.7z/download'
Now extract the archives (I'm using the 64 bit file names again in this example) in the directory you are in:
7z x megaglest-data-3.3.5.7z tar xjvf megaglest3.3.5_i386_64_linux_bin.tar.bz2
...and play!
./glest
Next time you want to play, you just need to:
cd ~/megaglest-3.3.5 ./glest
You can, of course, also create a shortcut on your favourite window manager so that you just need to point and click to start the game in the future (and need not play around in a terminal window).
My Frames Per Second (FPS) are horrible, what can i do?
If you are a Linux user TURN OFF Compiz, as It can drop FPS for 3D games from 500FPS to 70FPS! Also disable synch to vblank:
File:Disable sync to vblank.png
Otherwise try the following settings by adding or editing them in glestuser.ini
AutoMaxFullScreen=false CheckGlCaps=true ColorBits=16 DepthBits=16 Filter=Bilinear FilterMaxAnisotropy=1 MaxLights=1 PhotoMode=false RefreshFrequency=75 ScreenHeight=768 ScreenWidth=1024 ShadowTextureSize=256 Shadows=Disabled StencilBits=0 Textures3D=false UnitParticles=false
You may (on Linux) also try running these commands from your mega-glest root folder (then retry running mega-glest):
mkdir lib_bkp mv lib/* lib_bkp/ cp lib_bkp/libcurl* lib/ cp lib_bkp/libgnu* lib/ cp lib_bkp/libicu* lib/ cp lib_bkp/liblua* lib/ cp lib_bkp/libxerces* lib/
What optional command line options exist?
--version
(gives you the version of mega-glest)
example:
C:\Code\megaglest\branches\release-3.3.5.1\data\glest_game>glest_game --version v3.3.5.1-alpha3 built: Jul 19 2010 10:52:07 Compiled with VC++: 1500, STREFLOP enabled. --opengl-info
(gives you video card driver information)
example:
C:\Code\megaglest\branches\release-3.3.5.1\data\glest_game>glest_game --opengl-info OpenGL Info: OpenGL Version: 2.1 Chromium 1.9 OpenGL Renderer: 2.1 Chromium 1.9 OpenGL Vendor: Humper OpenGL Max Lights: 8 OpenGL Max Texture Size: 8192 OpenGL Max Texture Units: 4 OpenGL Modelview Stack: 32 OpenGL Projection Stack: 4
Starting with 3.3.5.1 beta1 we will allow you to run with a special command line parameter to validation your techtrees for known mis-configurations. Example shown below:
./glest.bin --validate-techtrees ... Errors were detected: ===================== The Unit [archer] in Faction [norsemen] has the command [hold_position] which has upgrade requirement [training_field] but there are no units able to perform the upgrade! ...
Where is the sourcecode for the master server and what does the masterserver currently do?
The source code for the master server (which is currently PHP / MySQL based) is in the svn repository under the source/masterserver folder. The masterserver currently ONLY facilitates clients and servers so that they may find one another, it DOES NOT create a dedicated server for network games. This means that users who 'host' a network game may choose to 'publish' their game to the masterserver where other users may 'join' published network games (thus connecting directly to the hosted server player). Currently there is a masterserver by default setup for the community to use for network games played over the internet. If so some reason a person wanted to setup their own masterserver you require: a) a webserver that handles PHP (like Apache or IIS) and b) a MySQL database.
1. Edit config.php and edit the database values to match your server.
2. FTP all the files in the masterserver folder in SVN to your webserver
3. Run the createDB.sql to create the apropriate database table(s) from a database tool like phpmyadmin or something similar.
4. Ensure all clients that will use your masterserver have the correct root URL to point to your server:
Masterserver=http://megaglest.pepper.freeit.org/masterserver/
5. Done.
What are all the configurable game settings?
There are two categories of game settings, a) 'visible' settings which are changed by options in the game itself and b) 'invisible' settings which are typcially intended to be changed by more knowledgable users who understand the consequences of changing them.
a) visible settings:
--------------------
Property Name | Default Value | Description |
AutoMaxFullScreen | false | When set to true this tells the game to set the video mode to the maximum fullscreen resolution (spanning all monitors) |
ColorBits | 16 | |
DepthBits | 16 | |
FactorySound | OpenAL | The sound API to use, for Windows this includes: DirectSound8, OpenAL or None, for all other platforms: OpenAL or None |
Filter | Bilinear | |
FilterMaxAnisotropy | 1 | |
FontSizeAdjustment | 0 | This makes font sizes larger (+) or smaller (-) |
Lang | english | The default language to display game text |
MaxLights | 3 | |
NetPlayerName | newbie | Your Player name for network games |
RefreshFrequency | 75 | |
ScreenHeight | 768 | |
ScreenWidth | 1024 | |
ServerIp | This is the last Server IP Address that you connected to | |
Shadows | Projected | |
SoundVolumeAmbient | 80 | |
SoundVolumeFx | 80 | |
SoundVolumeMusic | 90 | |
StencilBits | 0 | |
Textures3D | 1 | |
UnitParticles | true | When set to true this enables special graphical eye-candy particles for Units that support them |
Windowed | false | When set to false the game runs fullscreen, otherwise it is a Window on your desktop |
b) invisible settings:
--------------------
Property Name | Default Value | Description |
AiLog | 0 | The log level when logging AI (CPU Player) activity |
AiRedir | false | Redirect AI activity to the conole |
AllowDownloadDataSynch | false | Do not use, untested download of network game content |
AllowAltEnterFullscreenToggle | false | When true this allows players to press Alt-Enter to toggle between fullscreen and window mode |
AllowGameDataSynchCheck | false | When true this will check map, tileset and techtree between client and server (for network games) to determine in the lobby if the xml's match or not and display the synch status in the lobby |
AutoTest | false | |
CheckGlCaps | true | |
ConsoleMaxLines | 7 | The maximum # text lines to display in the game text console |
ConsoleMaxLinesStored | 20 | The maximum # text lines to store for recall in the text console |
ConsoleTimeout | 20 | # seconds before text disappears from the Text Console |
DayTime | 1000 | |
DebugLogFile | debug.log | This is where normal game debug data will be logged |
DebugLogFileNetwork | This is where network game debug data will be logged | |
DebugLogFilePerformance | This is where performance game debug data will be logged | |
DebugLogFileWorldSynch | This is where network world synch game debug data will be logged | |
DebugMode | false | When true this enables normal debug logging |
DebugNetwork | false | When true this enables network debug logging |
DebugPerformance | false | When true this enables performance debug logging |
DebugWorldSynch | false | When true this enables network world synch debug logging |
DEFAULT_HTTP_TIMEOUT | 10 | This is the # seconds before HTTP requests will timeout |
FactoryGraphics | OpenGL | |
FastSpeedLoops | 2 | |
FirstTime | false | |
FocusArrows | true | |
FogOfWarSmoothing | true | |
FogOfWarSmoothingFrameSkip | 3 | |
FONT_CHARCOUNT | 256 | This is the # characters expected for the selected font type |
FONT_TYPENAME | Times New Roman | This is the Font Type to use |
FontConsoleBaseSize | 18 | |
FontConsolePostfix | -*-*-*-*-*-*-* | |
FontConsolePrefix | -*-helvetica-*-r-*-*- | |
FontDisplayBaseSize | 12 | |
FontDisplayPostfix | -*-*-*-*-*-*-* | |
FontDisplayPrefix | -*-helvetica-*-r-*-*- | |
FontDisplaySmallBaseSize | 12 | |
FontMenuBigBaseSize | 20 | |
FontMenuBigPostfix | -*-*-*-*-*-*-* | |
FontMenuBigPrefix | -*-helvetica-*-r-*-*- | |
FontMenuNormalBaseSize | 14 | |
FontMenuNormalPostfix | -*-*-*-*-*-*-* | |
FontMenuNormalPrefix | -*-helvetica-*-r-*-*- | |
FontMenuVeryBigBaseSize | 25 | |
FullScreenAntiAliasing | false | When true this enables OpenGL full screen anti-aliasing |
HardwareAcceleration | false | When true this enables OpenGL hardware acceleration |
Masterserver | http://megaglest.pepper.freeit.org/masterserver/ | This is the path to the root of the master server URL's |
MasterServerExternalPortList | 61357,80,143,587,21,110,25,443,993,995 | This is a comma seperated list of allowed External Network ports supported |
MaxExploredCellsLookupItemCache | 5000 | This is the maximum cache size for cell explorered / visible lookup (0 disables) |
MaxFrameCountLagAllowed | 30 | This is the maximum # of network frames that a client is allowed to fall behind before action is taken |
MaxClientLagTimeAllowed | 20 | This is the maximum # seconds that a client is allowed to fall behind before action is taken |
WarnFrameCountLagPercent | 0.65 | This is the % of the maximum threshold of the above reached when a client is warned they are falling too far behind |
MaxUnitSelectCount | 16 | This is the maximum # of units that can be selected at one time |
NetworkConsistencyChecks | true | When true this enforces client and server to have the same data for network games |
NetworkFramePeriod | 20 | This is the # of frames that commands are sent out for network games |
No2DMouseRendering | false | When true this forces the use of ONLY the operating system mosue (no mouse rendering is done in game) |
PhotoMode | false | When true this disables things like the minimap so that nice screenshots can be taken |
PlatformConsistencyChecks | true | When true it enforces the same version to be used for all platforms for network play |
ServerPort | 61357 | The port to use when hosting games |
ShadowAlpha | 0.2 | |
ShadowFrameSkip | 2 | |
ShadowTextureSize | 512 | |
SoundStaticBuffers | 16 | |
SoundStreamingBuffers | 4 | |
ThreadedSoundStream | false | When true this enables sound handling in a seperate thread (offloading some of the work from main game processing) |
UserData_Root | mydata/ | This is the folder where user created maps, tilesets, techtrees, scenarios and tutorials are to be stored. This is the folder where user created content should go meaning game data that does not come with the Mega-Glest install packages. It is very important to keep user data seperate so that users making changes to their user data do not affect their ability to play network games with other players. Each time a network game is played a CRC check is done to ensure all players have the same data so that the game is fair and does not go "out of synch" with each other. User data should use UNIQUE naming and not use duplicate names that are already used in the main Maga-Glest folders. For example the main Mega-Glest folders contain a faction in the megapack techtree called tech. This same techtree and faction combination should NOT be reproduced in the mydata folder. |
UserOverrideFile | This optional parameter specifies the path and location of the glestuser.ini and glestuserkeys.ini files (if different than the default) |