Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - tomreyn

Pages: [1] 2 3 4 5 ... 20
1
MegaGlest / Dealing with abuse
« on: 9 April 2019, 07:19:44 »
During the past years, and again recently, we've seen occasional abusive behaviour on both the lobby chat (people insulting others) and on game servers (people grabbing multiple gameservers - possibly to prevent others from playing, game preparation screen chat abuse and kicking others off their games).
This brings up the questions of whether and how we want to handle this, and who will do it. So this can be a mix of policy (declaring a ban policy), organisational (identifying whom we trust to handle things according to this policy, and granting access to them), and technical (developing and installing tools to manage bans on IRC and gameservers) measures.
First of all, we should discuss what the extent of the issue is, which of these we need to counter, which counter measures should and can realistically be taken. Thne we will need to see who is going to implement and manage them.
Thanks in advance for your thoughts on this.

2
Bug reports / MOVED: v3.11.1 = Last for XP?
« on: 20 July 2017, 17:52:10 »

3
Off topic / Open-Source Discussion
« on: 4 July 2016, 19:17:03 »
I try to make MegaGlest usable on the most widely used operating systems. Unfortunately, those are currently proprietary ones. Since I hold MegaGlest dear, I do so despite my antipathy to those OS.

From my perspective, that's a different choice to running some closed-source software on an open source OS, since it means loosing control. I could run it on Windows, but I don't normally use that OS, and this software is meant to be used while your computer is powered on but not being used (which is never the case for Windows here).

4
Hi everyone,

I am grateful to the past and present developers of the SimpleMachines forum software (which this forum runs on) for all the time and energy they spent on it for many years. You did a great job, there.

Presently, however, I am not convinced that SMF is being well maintained. There are critical security bugs in the current stable release which have been made public, addressed to a wide audience of both white and blackhat hackers early this month (two months after they were privately anonunced to the developers, as the person announcing them now states). To date, there is no public reaction to those by SMF, and attempts to discuss these vulnerabilities and possible counter measures are actively prevented on their support forum. While it's perfectly fine for a software which is based on volunteer work to develop slowly, this is not the right way to handle security vulnerabilities, be it a professional or volunteer run project.

Moreover, SMF development seems to have slowed down a lot during the past two years, while there are known issues which really should be addressed (an embedded anti-spam mechanism which works, support for newer versions  of dependencies such as PHP and MySQL, an extension / mod interface which is not patching, a more complete API, and more). While there was (and is?) a major version upgrade in the works for two or three years, it has not yet made it to a production ready release. At the same time, the source code repositories for the current stable release are not open, which is somewhat unusual for an open source software project.

Some of these issues may be better addressed by ElkArte, which forked off SMF a year (?) ago and has since undergone massive code changes. Whether those are, for our needs, to the better or worse I need yet to test. Which is why I'm currently in the process of setting up a test install on the staging site. This should happen once initial bugs (note that I'm testing a beta pre-release) have been sorted out.

If we should decide to go with ElkArte (it is definitely too early to tell at this point), there is an SMF importer available (which I am going to test, too) which has apparently undergone some testing on this migration path before.

So I'm mostly posting this to get some initial feedback on whether this sems like a good or bad idea from your POV, and to see whether I missed some major road blocks.
(Lack of response will not discourage me.)

Thanks,

Tom

5
Mods / "Free" (temporary) file hosters do not work - let's fix it
« on: 13 February 2015, 05:19:53 »
Like so many file hosters with a "free" model before, Rapidshare are going out of business next month, too.

In an attempt to not loose files forever again I dumped the forum to a file, and searched this file for Rapidshare URLs, writing them to a text file.  Once this was done I checked with Rapidshare to find out whether these files are still available (if not, Rapidshare would return an error message).

Here's what I found:
Code: [Select]
$ while read url; do echo $url; wget -qO - $url | grep ^ERROR; done < /tmp/urls_sorted.txt
http://rapidshare.com/files/103825709/Painted.rar.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/125903576/francais_26-06-2008.7z.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/171151473/behemoth_mod_2.zip
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/21404528/wandergart_tile.rar.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/21647117/Canyon_map.rar.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/21702134/portugues.lng.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/22310524/wandergart_scenario.zip.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/22952027/ARIALUNI.TTF.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/23341832/shontuz_luften.zip.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/23534340/map_and_scenario.zip.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/23535010/magic_mod_vampire.zip.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/23680487/gold-units.zip.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/23755749/creaturesbreed.zip.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/23856521/texture_mage_worker.tga.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/272475529/glestTD.zip.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/3743488771/Baradin.rar
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/388565291/Darktide_OST_-_Feeble_Minded_Enemy_of_Mine_160kbps.mp3.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/389204493/Darktide_OST_-_Fight_For_Your_Life__128kbps_.7z
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/390785032/hey.blend.html
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/413919975/lang.7z
ERROR: File not found. (e029a7af)
http://rapidshare.com/files/428082021/karni_omega.7z
ERROR: File not found. (e029a7af)
https://rapidshare.com/files/1522605895/megaglest_3.6.0.3_verbose_1.7z
ERROR: File not found. (e029a7af)
https://rapidshare.com/files/458342535/Movie_0001.wmv
ERROR: File not found. (e029a7af)

An error message is returned for every single of these files. So they are all lost already. Some are, based on their filenames (only), not actually related to (Mega)Glest, some are probably not very relevant anymore, but at least some look as if we would have wanted to preserve those - but they are lost.

So pleeeease, whenever possible please don't use file hosters which host your files only temporarily with terms like "unless there are n requests / day" or "unless we change our mind". Instead, host with some personal cloud storage where you have an account with them and at least get notified before they take down your files. Or with your ISP (they often offer free file storage for a while) where files will at least last until you cancel your contract.

So far I have been hesitant to offer a file upload / hosting service myself since we were not really able to make a (much) better offer (no backups, no data loss prevention) and hosting a file upload site securely (and preventing abuse, restricting how those limited resource can be used by whom) is not that easy. But I am now convinced we really need to change this - and I think we can do it properly by now.

So I'd be happy to set this up but will need someone's help with HTML frontend / web design, optionally also with writing the actual (PHP or other CGI) code.

Is anyone interested in giving this a try?

6
If you are trying to run MegaGlest 3.9.1 on Ubuntu 14.10, please apply the fix for Ubuntu 14.04 as well as this:
Code: [Select]
cd ~/megaglest
rm -f lib/libtasn1.so* lib/librtmp.so* && \
case `uname -i` in i686) ln -s /usr/lib/i386-linux-gnu/libtasn1.so.6 lib/libtasn1.so.3; ln -s /usr/lib/i386-linux-gnu/librtmp.so lib/librtmp.so.0 ;; x86_64) ln -s /usr/lib/x86_64-linux-gnu/libtasn1.so.6 lib/libtasn1.so.3; ln -s /usr/lib/x86_64-linux-gnu/librtmp.so lib/librtmp.so.0 ;; *) echo 'Error: unknown architecture' >&2 && exit 1;; esac

Note that I am blatantly assuming that you have MegaGlest installed in ~/megaglest here. If you have it elsewhere, please change into that directory instead in the first line.

Thanks to andy123 for notifying us of this issue.

7
David123 (Windows 7), Typedef and I (both Linux x86_64) were playing a game with Prax on one of the "MG Team" headless servers (the one listening on port 62001 on the "initiate" server) today. Somewhere in the middle of the game the process failed for both Typedef and me (possibly for David as well). I was controlling (headless admin / controlling player) this game from the start to this point.

Typedef's terminal output:
Code: [Select]
megaglest v3.9.1
Compiled using: GNUC: 40801 [64bit] on: Jan 30 2014 22:03:50 platform: Linux-X64 endianness: little
GIT: [Rev: 4638.0b86e1c] - using STREFLOP [SSE] - [no-denormals]
Game unique identifier is: 01b421ee-c1cf-11e3-95fe-43a44111f694
Game unique identifier is: 55b7c218-c234-11e3-bf24-11d82b53a9b9
*ERROR* [2014-04-12 13:39:38] In [/home/andy/bin/megaglest-source/source/glest_game/world/unit_updater.cpp::updateRepair Line: 2170] Error [ut == NULL
Stack Trace:
./megaglest:Shared::Platform::megaglest_runtime_error::megaglest_runtime_error(std::string const&, bool)address [0xb119d8] line: 305
./megaglest:Glest::Game::Map::findBestBuildApproach(Glest::Game::Unit const*, Shared::Graphics::Vec2<int>, Glest::Game::UnitType const*) constaddress [0xa0c02a] line: 1198
./megaglest:Glest::Game::UnitUpdater::updateRepair(Glest::Game::Unit*, int)address [0x9ec37b] line: 1945
./megaglest:Glest::Game::UnitUpdater::updateUnitCommand(Glest::Game::Unit*, int)address [0x9e42d5] line: 343
./megaglest:Glest::Game::UnitUpdater::updateUnit(Glest::Game::Unit*)address [0x9e48a8] line: 179
./megaglest:Glest::Game::World::updateAllFactionUnits()address [0x9cb5a9] line: 712
./megaglest:Glest::Game::World::update()address [0x9d2625] line: 871
./megaglest:Glest::Game::Game::update()address [0x560a4b] line: 2157
./megaglest:Glest::Game::Program::loopWorker()address [0x6a528e] line: 476
./megaglest:Glest::Game::glestMain(int, char**)address [0x6f66b7] line: 5451
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x6fa0a1] line: 5699
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7fd8bdfe0de5] line: 0
./megaglest() [0x4e70a8]address [0x4e70a8]
]
*ERROR* [2014-04-12 13:39:39] In [/home/andy/bin/megaglest-source/source/glest_game/world/unit_updater.cpp::updateUnitCommand Line: 374] Error [ut == NULL
Stack Trace:
./megaglest:Shared::Platform::megaglest_runtime_error::megaglest_runtime_error(std::string const&, bool)address [0xb119d8] line: 305
./megaglest:Glest::Game::Map::findBestBuildApproach(Glest::Game::Unit const*, Shared::Graphics::Vec2<int>, Glest::Game::UnitType const*) constaddress [0xa0c02a] line: 1198
./megaglest:Glest::Game::UnitUpdater::updateRepair(Glest::Game::Unit*, int)address [0x9ec37b] line: 1945
./megaglest:Glest::Game::UnitUpdater::updateUnitCommand(Glest::Game::Unit*, int)address [0x9e42d5] line: 343
./megaglest:Glest::Game::UnitUpdater::updateUnit(Glest::Game::Unit*)address [0x9e48a8] line: 179
./megaglest:Glest::Game::World::updateAllFactionUnits()address [0x9cb5a9] line: 712
./megaglest:Glest::Game::World::update()address [0x9d2625] line: 871
./megaglest:Glest::Game::Game::update()address [0x560a4b] line: 2157
./megaglest:Glest::Game::Program::loopWorker()address [0x6a528e] line: 476
./megaglest:Glest::Game::glestMain(int, char**)address [0x6f66b7] line: 5451
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x6fa0a1] line: 5699
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7fd8bdfe0de5] line: 0
./megaglest() [0x4e70a8]address [0x4e70a8]                                                                                           
                                                                                                                                     
Stack Trace:                                                                                                                         
./megaglest:Shared::Platform::megaglest_runtime_error::megaglest_runtime_error(std::string const&, bool)address [0xb119d8] line: 305
./megaglest:Glest::Game::UnitUpdater::updateRepair(Glest::Game::Unit*, int)address [0x9ec844] line: 2173                             
./megaglest:Glest::Game::UnitUpdater::updateUnitCommand(Glest::Game::Unit*, int)address [0x9e42d5] line: 343                         
./megaglest:Glest::Game::UnitUpdater::updateUnit(Glest::Game::Unit*)address [0x9e48a8] line: 179                                     
./megaglest:Glest::Game::World::updateAllFactionUnits()address [0x9cb5a9] line: 712                                                 
./megaglest:Glest::Game::World::update()address [0x9d2625] line: 871                                                                 
./megaglest:Glest::Game::Game::update()address [0x560a4b] line: 2157                                                                 
./megaglest:Glest::Game::Program::loopWorker()address [0x6a528e] line: 476                                                           
./megaglest:Glest::Game::glestMain(int, char**)address [0x6f66b7] line: 5451                                                         
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x6fa0a1] line: 5699                                               
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7fd8bdfe0de5] line: 0                                                 
./megaglest() [0x4e70a8]address [0x4e70a8]                                                                                           
]                                                                                                                                   
*ERROR* [2014-04-12 13:39:39] In [game.cpp::update Line: 2774] Error [ut == NULL                                                     
Stack Trace:                                                                                                                         
./megaglest:Shared::Platform::megaglest_runtime_error::megaglest_runtime_error(std::string const&, bool)address [0xb119d8] line: 305
./megaglest:Glest::Game::Map::findBestBuildApproach(Glest::Game::Unit const*, Shared::Graphics::Vec2<int>, Glest::Game::UnitType const*) constaddress [0xa0c02a] line: 1198                                                                                               
./megaglest:Glest::Game::UnitUpdater::updateRepair(Glest::Game::Unit*, int)address [0x9ec37b] line: 1945                             
./megaglest:Glest::Game::UnitUpdater::updateUnitCommand(Glest::Game::Unit*, int)address [0x9e42d5] line: 343                         
./megaglest:Glest::Game::UnitUpdater::updateUnit(Glest::Game::Unit*)address [0x9e48a8] line: 179                                     
./megaglest:Glest::Game::World::updateAllFactionUnits()address [0x9cb5a9] line: 712
./megaglest:Glest::Game::World::update()address [0x9d2625] line: 871
./megaglest:Glest::Game::Game::update()address [0x560a4b] line: 2157
./megaglest:Glest::Game::Program::loopWorker()address [0x6a528e] line: 476
./megaglest:Glest::Game::glestMain(int, char**)address [0x6f66b7] line: 5451
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x6fa0a1] line: 5699
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7fd8bdfe0de5] line: 0
./megaglest() [0x4e70a8]address [0x4e70a8]

Stack Trace:
./megaglest:Shared::Platform::megaglest_runtime_error::megaglest_runtime_error(std::string const&, bool)address [0xb119d8] line: 305
./megaglest:Glest::Game::UnitUpdater::updateRepair(Glest::Game::Unit*, int)address [0x9ec844] line: 2173
./megaglest:Glest::Game::UnitUpdater::updateUnitCommand(Glest::Game::Unit*, int)address [0x9e42d5] line: 343
./megaglest:Glest::Game::UnitUpdater::updateUnit(Glest::Game::Unit*)address [0x9e48a8] line: 179
./megaglest:Glest::Game::World::updateAllFactionUnits()address [0x9cb5a9] line: 712
./megaglest:Glest::Game::World::update()address [0x9d2625] line: 871
./megaglest:Glest::Game::Game::update()address [0x560a4b] line: 2157
./megaglest:Glest::Game::Program::loopWorker()address [0x6a528e] line: 476
./megaglest:Glest::Game::glestMain(int, char**)address [0x6f66b7] line: 5451
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x6fa0a1] line: 5699
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7fd8bdfe0de5] line: 0
./megaglest() [0x4e70a8]address [0x4e70a8]

Stack Trace:
./megaglest:Shared::Platform::megaglest_runtime_error::megaglest_runtime_error(std::string const&, bool)address [0xb119d8] line: 305
./megaglest:Glest::Game::UnitUpdater::updateUnitCommand(Glest::Game::Unit*, int)address [0x9e459f] line: 377
./megaglest:Glest::Game::UnitUpdater::updateUnit(Glest::Game::Unit*)address [0x9e48a8] line: 179
./megaglest:Glest::Game::World::updateAllFactionUnits()address [0x9cb5a9] line: 712
./megaglest:Glest::Game::World::update()address [0x9d2625] line: 871
./megaglest:Glest::Game::Game::update()address [0x560a4b] line: 2157
./megaglest:Glest::Game::Program::loopWorker()address [0x6a528e] line: 476
./megaglest:Glest::Game::glestMain(int, char**)address [0x6f66b7] line: 5451
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x6fa0a1] line: 5699
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7fd8bdfe0de5] line: 0
./megaglest() [0x4e70a8]address [0x4e70a8]
]

Mine:
Code: [Select]
megaglest v3.9.1
Compiled using: GNUC: 40403 [64bit] on: Jan 18 2014 17:44:55 platform: Linux-X64 endianness: little
GIT: [Rev: 4628.11ac54a] - using STREFLOP [SSE] - [no-denormals]
radeon: Acquired access to Hyper-Z.
*ERROR* [2014-04-12 13:20:10] SOCKET WRITE TIMEOUT In [/home/softcoder/Code/megaglest/git/source/shared_lib/sources/platform/posix/socket.cpp::isWritable Line: 1786] i = 0 sock = 12 []
Game unique identifier is: 55b7c218-c234-11e3-bf24-11d82b53a9b9
*ERROR* [2014-04-12 13:39:41] In [/home/softcoder/Code/megaglest/git/source/glest_game/world/unit_updater.cpp::updateRepair Line: 2170] Error [ut == NULL
Stack Trace:
./megaglest:Shared::Platform::megaglest_runtime_error::megaglest_runtime_error(std::string const&, bool)address [0xc05d8e] line: 305
./megaglest:Glest::Game::Map::findBestBuildApproach(Glest::Game::Unit const*, Shared::Graphics::Vec2<int>, Glest::Game::UnitType const*) constaddress [0xb39346] line: 1198
./megaglest:Glest::Game::UnitUpdater::updateRepair(Glest::Game::Unit*, int)address [0xb139ae] line: 1945
./megaglest() [0xb084db]address [0xb084db]
./megaglest:Glest::Game::UnitUpdater::updateUnit(Glest::Game::Unit*)address [0xb19b14] line: 179
./megaglest:Glest::Game::World::updateAllFactionUnits()address [0xafc0c7] line: 712
./megaglest:Glest::Game::World::update()address [0xafd7b6] line: 871
./megaglest:Glest::Game::Game::update()address [0x6707fd] line: 2157
./megaglest:Glest::Game::Program::loopWorker()address [0x7dc958] line: 476
./megaglest:Glest::Game::glestMain(int, char**)address [0x7d2a75] line: 5451
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x7d45c1] line: 5699
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7f58e578bde5] line: 0
./megaglest() [0x5eddd9]address [0x5eddd9]
]
*ERROR* [2014-04-12 13:39:42] In [/home/softcoder/Code/megaglest/git/source/glest_game/world/unit_updater.cpp::updateUnitCommand Line: 374] Error [ut == NULL
Stack Trace:
./megaglest:Shared::Platform::megaglest_runtime_error::megaglest_runtime_error(std::string const&, bool)address [0xc05d8e] line: 305
./megaglest:Glest::Game::Map::findBestBuildApproach(Glest::Game::Unit const*, Shared::Graphics::Vec2<int>, Glest::Game::UnitType const*) constaddress [0xb39346] line: 1198
./megaglest:Glest::Game::UnitUpdater::updateRepair(Glest::Game::Unit*, int)address [0xb139ae] line: 1945
./megaglest() [0xb084db]address [0xb084db]
./megaglest:Glest::Game::UnitUpdater::updateUnit(Glest::Game::Unit*)address [0xb19b14] line: 179
./megaglest:Glest::Game::World::updateAllFactionUnits()address [0xafc0c7] line: 712
./megaglest:Glest::Game::World::update()address [0xafd7b6] line: 871
./megaglest:Glest::Game::Game::update()address [0x6707fd] line: 2157
./megaglest:Glest::Game::Program::loopWorker()address [0x7dc958] line: 476
./megaglest:Glest::Game::glestMain(int, char**)address [0x7d2a75] line: 5451
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x7d45c1] line: 5699
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7f58e578bde5] line: 0
./megaglest() [0x5eddd9]address [0x5eddd9]

Stack Trace:
./megaglest:Shared::Platform::megaglest_runtime_error::megaglest_runtime_error(std::string const&, bool)address [0xc05d8e] line: 305
./megaglest:Glest::Game::UnitUpdater::updateRepair(Glest::Game::Unit*, int)address [0xb13f64] line: 2173
./megaglest() [0xb084db]address [0xb084db]
./megaglest:Glest::Game::UnitUpdater::updateUnit(Glest::Game::Unit*)address [0xb19b14] line: 179
./megaglest:Glest::Game::World::updateAllFactionUnits()address [0xafc0c7] line: 712
./megaglest:Glest::Game::World::update()address [0xafd7b6] line: 871
./megaglest:Glest::Game::Game::update()address [0x6707fd] line: 2157
./megaglest:Glest::Game::Program::loopWorker()address [0x7dc958] line: 476
./megaglest:Glest::Game::glestMain(int, char**)address [0x7d2a75] line: 5451
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x7d45c1] line: 5699
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7f58e578bde5] line: 0
./megaglest() [0x5eddd9]address [0x5eddd9]
]
*ERROR* [2014-04-12 13:39:43] In [game.cpp::update Line: 2774] Error [ut == NULL
Stack Trace:
./megaglest:Shared::Platform::megaglest_runtime_error::megaglest_runtime_error(std::string const&, bool)address [0xc05d8e] line: 305
./megaglest:Glest::Game::Map::findBestBuildApproach(Glest::Game::Unit const*, Shared::Graphics::Vec2<int>, Glest::Game::UnitType const*) constaddress [0xb39346] line: 1198
./megaglest:Glest::Game::UnitUpdater::updateRepair(Glest::Game::Unit*, int)address [0xb139ae] line: 1945
./megaglest() [0xb084db]address [0xb084db]
./megaglest:Glest::Game::UnitUpdater::updateUnit(Glest::Game::Unit*)address [0xb19b14] line: 179
./megaglest:Glest::Game::World::updateAllFactionUnits()address [0xafc0c7] line: 712
./megaglest:Glest::Game::World::update()address [0xafd7b6] line: 871
./megaglest:Glest::Game::Game::update()address [0x6707fd] line: 2157
./megaglest:Glest::Game::Program::loopWorker()address [0x7dc958] line: 476
./megaglest:Glest::Game::glestMain(int, char**)address [0x7d2a75] line: 5451
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x7d45c1] line: 5699
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7f58e578bde5] line: 0
./megaglest() [0x5eddd9]address [0x5eddd9]

Stack Trace:
./megaglest:Shared::Platform::megaglest_runtime_error::megaglest_runtime_error(std::string const&, bool)address [0xc05d8e] line: 305
./megaglest:Glest::Game::UnitUpdater::updateRepair(Glest::Game::Unit*, int)address [0xb13f64] line: 2173
./megaglest() [0xb084db]address [0xb084db]
./megaglest:Glest::Game::UnitUpdater::updateUnit(Glest::Game::Unit*)address [0xb19b14] line: 179
./megaglest:Glest::Game::World::updateAllFactionUnits()address [0xafc0c7] line: 712
./megaglest:Glest::Game::World::update()address [0xafd7b6] line: 871
./megaglest:Glest::Game::Game::update()address [0x6707fd] line: 2157
./megaglest:Glest::Game::Program::loopWorker()address [0x7dc958] line: 476
./megaglest:Glest::Game::glestMain(int, char**)address [0x7d2a75] line: 5451
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x7d45c1] line: 5699
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7f58e578bde5] line: 0
./megaglest() [0x5eddd9]address [0x5eddd9]

Stack Trace:
./megaglest:Shared::Platform::megaglest_runtime_error::megaglest_runtime_error(std::string const&, bool)address [0xc05d8e] line: 305
./megaglest() [0xb087b1]address [0xb087b1]
./megaglest:Glest::Game::UnitUpdater::updateUnit(Glest::Game::Unit*)address [0xb19b14] line: 179
./megaglest:Glest::Game::World::updateAllFactionUnits()address [0xafc0c7] line: 712
./megaglest:Glest::Game::World::update()address [0xafd7b6] line: 871
./megaglest:Glest::Game::Game::update()address [0x6707fd] line: 2157
./megaglest:Glest::Game::Program::loopWorker()address [0x7dc958] line: 476
./megaglest:Glest::Game::glestMain(int, char**)address [0x7d2a75] line: 5451
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x7d45c1] line: 5699
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7f58e578bde5] line: 0
./megaglest() [0x5eddd9]address [0x5eddd9]
]

David was not in the position to preserve his output. Nor does the server do so. The error.log file was no updated on Davids computer, mine nor on the server.

8
Currently the max. wait time during game initialization is 180 seconds. However, whenever you have to wait more than 90 (or even 60) seconds it means that this player you are waiting for has too slow hardware or a very bad Internet connection and will get disconnected either immediately or shortly after the start of this game.  For me, with my old, old graphics card it never takes longer than 10-15 seconds.

So I think it's a good idea to reduce the game initialization time to a maximum of 120s or 90s. This really ought to be enough. And it's annoying for all other players to have to wait for a single player with bad hardware or connection who will just time out.

9
The 'General' headless server froze again. I'm not sure whether the __lll_lock_* state is indicative for this, but searching on the forums will show that we've seen similar freezes on several servers going back to at least v3.5.1.

This is what gdb -q -n -ex "bt" -batch megaglest `pidof megaglest` reports:

Code: [Select]
#0  __lll_lock_wait_private () at ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:95
#1  0x00007f70be1e8b6d in _L_lock_49 () at malloc.c:5151
#2  0x00007f70be1e161c in ptmalloc_lock_all () at arena.c:248
#3  0x00007f70be2248e2 in __libc_fork () at ../nptl/sysdeps/unix/sysv/linux/x86_64/../fork.c:95
#4  0x00007f70be1d39e1 in _IO_new_proc_open (fp=fp@entry=0x2a58400, command=command@entry=0x7fffaf23c0c0 "addr2line -C -e /home/megaglest/megaglest-3.9.1/megaglest -f -i 0x7a7117", mode=<optimized out>, mode@entry=0xea65e7 "r") at iopopen.c:183
#5  0x00007f70be1d3d37 in _IO_new_popen (command=0x7fffaf23c0c0 "addr2line -C -e /home/megaglest/megaglest-3.9.1/megaglest -f -i 0x7a7117", mode=0xea65e7 "r") at iopopen.c:301
#6  0x0000000000c0552d in getFileAndLine (flen=<optimized out>, file=<optimized out>, address=<optimized out>, function=<optimized out>) at /home/softcoder/Code/megaglest/git/source/shared_lib/sources/platform/sdl/platform_util.cpp:131
#7  Shared::Platform::PlatformExceptionHandler::getStackTrace () at /home/softcoder/Code/megaglest/git/source/shared_lib/sources/platform/sdl/platform_util.cpp:289
#8  0x00000000007a7117 in Glest::Game::ExceptionHandler::handleRuntimeError (msg=<optimized out>, getStackTraceString=true) at /home/softcoder/Code/megaglest/git/source/glest_game/main/main.cpp:638
#9  0x00000000007a780f in Glest::Game::handleSIGSEGV (sig=<optimized out>) at /home/softcoder/Code/megaglest/git/source/glest_game/main/main.cpp:5606
#10 <signal handler called>
#11 malloc_consolidate (av=av@entry=0x7f7090000020) at malloc.c:4086
#12 0x00007f70be1e37e8 in _int_free (av=0x7f7090000020, p=0x7f7090076ca0, have_lock=0) at malloc.c:3994
#13 0x0000000000b1b225 in deallocate (this=<optimized out>, __p=<optimized out>) at /usr/include/c++/4.4/ext/new_allocator.h:95
#14 _M_deallocate (__p=<optimized out>, this=<optimized out>, __n=<optimized out>) at /usr/include/c++/4.4/bits/stl_vector.h:146
#15 ~_Vector_base (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/c++/4.4/bits/stl_vector.h:132
#16 ~vector (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/c++/4.4/bits/stl_vector.h:313
#17 ~UnitRangeCellsLookupItem (this=<optimized out>, __in_chrg=<optimized out>) at /home/softcoder/Code/megaglest/git/source/glest_game/world/unit_updater.h:47
#18 ~pair (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/c++/4.4/bits/stl_pair.h:68
#19 destroy (__p=<optimized out>, this=<optimized out>) at /usr/include/c++/4.4/ext/new_allocator.h:115
#20 _M_destroy_node (__p=<optimized out>, this=<optimized out>) at /usr/include/c++/4.4/bits/stl_tree.h:383
#21 std::_Rb_tree<int, std::pair<int const, Glest::Game::UnitRangeCellsLookupItem>, std::_Select1st<std::pair<int const, Glest::Game::UnitRangeCellsLookupItem> >, std::less<int>, std::allocator<std::pair<int const, Glest::Game::UnitRangeCellsLookupItem> > >::_M_erase (this=0x7f709006ac48, __x=0x7f709006ac80) at /usr/include/c++/4.4/bits/stl_tree.h:972
#22 0x0000000000b1b504 in _M_erase (__x=0x7f70941ddaf0, this=<optimized out>) at /usr/include/c++/4.4/bits/stl_tree.h:970
#23 ~_Rb_tree (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/c++/4.4/bits/stl_tree.h:614
#24 ~map (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/c++/4.4/bits/stl_map.h:87
#25 ~pair (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/c++/4.4/bits/stl_pair.h:68
#26 destroy (__p=<optimized out>, this=<optimized out>) at /usr/include/c++/4.4/ext/new_allocator.h:115
#27 _M_destroy_node (__p=<optimized out>, this=<optimized out>) at /usr/include/c++/4.4/bits/stl_tree.h:383
#28 std::_Rb_tree<int, std::pair<int const, std::map<int, Glest::Game::UnitRangeCellsLookupItem, std::less<int>, std::allocator<std::pair<int const, Glest::Game::UnitRangeCellsLookupItem> > > >, std::_Select1st<std::pair<int const, std::map<int, Glest::Game::UnitRangeCellsLookupItem, std::less<int>, std::allocator<std::pair<int const, Glest::Game::UnitRangeCellsLookupItem> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<int, Glest::Game::UnitRangeCellsLookupItem, std::less<int>, std::allocator<std::pair<int const, Glest::Game::UnitRangeCellsLookupItem> > > > > >::_M_erase (this=0x7f7090053bf8, __x=<optimized out>) at /usr/include/c++/4.4/bits/stl_tree.h:972
#29 0x0000000000b1b679 in ~_Rb_tree (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/c++/4.4/bits/stl_tree.h:614
#30 ~map (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/c++/4.4/bits/stl_map.h:87
#31 ~pair (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/c++/4.4/bits/stl_pair.h:68
#32 destroy (__p=<optimized out>, this=<optimized out>) at /usr/include/c++/4.4/ext/new_allocator.h:115
#33 _M_destroy_node (__p=<optimized out>, this=<optimized out>) at /usr/include/c++/4.4/bits/stl_tree.h:383
#34 _M_erase (__x=0x0, this=0x2a2b8c0) at /usr/include/c++/4.4/bits/stl_tree.h:972
#35 _M_erase (__x=0x2da11e0, this=0x2a2b8c0) at /usr/include/c++/4.4/bits/stl_tree.h:970
#36 _M_erase (__x=<optimized out>, this=0x2a2b8c0) at /usr/include/c++/4.4/bits/stl_tree.h:970
#37 _M_erase (__x=<optimized out>, this=0x2a2b8c0) at /usr/include/c++/4.4/bits/stl_tree.h:970
#38 _M_erase (__x=<optimized out>, this=0x2a2b8c0) at /usr/include/c++/4.4/bits/stl_tree.h:970
#39 _M_erase (__x=<optimized out>, this=0x2a2b8c0) at /usr/include/c++/4.4/bits/stl_tree.h:970
#40 std::_Rb_tree<Shared::Graphics::Vec2<int>, std::pair<Shared::Graphics::Vec2<int> const, std::map<int, std::map<int, Glest::Game::UnitRangeCellsLookupItem, std::less<int>, std::allocator<std::pair<int const, Glest::Game::UnitRangeCellsLookupItem> > >, std::less<int>, std::allocator<std::pair<int const, std::map<int, Glest::Game::UnitRangeCellsLookupItem, std::less<int>, std::allocator<std::pair<int const, Glest::Game::UnitRangeCellsLookupItem> > > > > > >, std::_Select1st<std::pair<Shared::Graphics::Vec2<int> const, std::map<int, std::map<int, Glest::Game::UnitRangeCellsLookupItem, std::less<int>, std::allocator<std::pair<int const, Glest::Game::UnitRangeCellsLookupItem> > >, std::less<int>, std::allocator<std::pair<int const, std::map<int, Glest::Game::UnitRangeCellsLookupItem, std::less<int>, std::allocator<std::pair<int const, Glest::Game::UnitRangeCellsLookupItem> > > > > > > >, std::less<Shared::Graphics::Vec2<int> >, std::allocator<std::pair<Shared::Graphics::Vec2<int> const, std::map<int, std::map<int, Glest::Game::UnitRangeCellsLookupItem, std::less<int>, std::allocator<std::pair<int const, Glest::Game::UnitRangeCellsLookupItem> > >, std::less<int>, std::allocator<std::pair<int const, std::map<int, Glest::Game::UnitRangeCellsLookupItem, std::less<int>, std::allocator<std::pair<int const, Glest::Game::UnitRangeCellsLookupItem> > > > > > > > >::_M_erase (this=0x2a2b8c0, __x=<optimized out>) at /usr/include/c++/4.4/bits/stl_tree.h:970
#41 0x0000000000b091c6 in ~_Rb_tree (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/c++/4.4/bits/stl_tree.h:614
#42 ~map (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/c++/4.4/bits/stl_map.h:87
#43 Glest::Game::UnitUpdater::~UnitUpdater (this=0x2a2b850, __in_chrg=<optimized out>) at /home/softcoder/Code/megaglest/git/source/glest_game/world/unit_updater.cpp:113
#44 0x0000000000af1235 in Glest::Game::World::~World (this=0x2a2b038, __in_chrg=<optimized out>) at /home/softcoder/Code/megaglest/git/source/glest_game/world/world.cpp:148
#45 0x000000000068144b in Glest::Game::Game::~Game (this=0x2a2aff0, __in_chrg=<optimized out>) at /home/softcoder/Code/megaglest/git/source/glest_game/game/game.cpp:471
#46 0x0000000000795319 in Glest::Game::BattleEnd::~BattleEnd (this=0x96ec510, __in_chrg=<optimized out>) at /home/softcoder/Code/megaglest/git/source/glest_game/main/battle_end.cpp:103
#47 0x00000000007e2e93 in Glest::Game::Program::~Program (this=0x29e4470, __in_chrg=<optimized out>) at /home/softcoder/Code/megaglest/git/source/glest_game/main/program.cpp:283
#48 0x00000000007a251f in Glest::Game::MainWindow::~MainWindow (this=0x29e4a60, __in_chrg=<optimized out>) at /home/softcoder/Code/megaglest/git/source/glest_game/main/main.cpp:813
#49 0x00000000007cc0f7 in Glest::Game::glestMain (argc=0, argv=0x2a54000) at /home/softcoder/Code/megaglest/git/source/glest_game/main/main.cpp:5570
#50 0x00000000007d45c1 in Glest::Game::glestMainSEHWrapper (argc=4, argv=0x7fffaf248f38) at /home/softcoder/Code/megaglest/git/source/glest_game/main/main.cpp:5697
#51 0x00007f70be184de5 in __libc_start_main (main=0x7d46d0 <main(int, char**)>, argc=4, ubp_av=0x7fffaf248f38, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffaf248f28) at libc-start.c:260
#52 0x00000000005eddd9 in _start ()

10
MegaGlest / Organizing the cup - please comment
« on: 22 March 2014, 17:17:24 »
Organizing MegaGlest Cup #1

Dadadu66 and I worked out an organizational process and rules for the cup today. These are not final, I post them here as a request for comments - so please tell us what you think! We will finalize them during the next few days, taking your comments into account.

We were a bit undecided about how many players to allow to enroll, how long the cup should span in general and how many rounds we should play per week. We seemed to agree that it should not span longer than a month altogether, and that we should not have too many players, (surely less than 100) during this first cup. If 16 players or less will enroll then we want to play one round per week, if there are more players, we may need to do more rounds per week.

I've added some more details which dadadu66 and I did not actually discuss, based on what I realized was imprecise and what I think makes most sense. None of this is final today.

General overview

We will play a classic elimination style cup. That is, as soon as the enrollment period is over, the cup organizers will form groups of two players (either randomly, or paired by players' timezones, or supposed player strengths, or a mix of these - this is yet unclear and will be decided by the organizers when the enrollment period ends). These players will compete in the first round. The winner of the round will advance to the next round. In case there will be an uneven number of players in a round, the leftover player will automatically win this round and advance.

Organizers

The cup is organized by dadadu66, tomreyn and titi_linux. Organizers cannot take part in the cup as players. ( titi: organizers  are allowed to play too!)

Cup rounds

Since we are in different time zones we need to be flexible about the time of day to play at. We will use Doodle.com to suggest several times on Saturdays and Sundays to each of these groups. For each of the groups, the players will have to vote on these suggested times no later than 2 days before the round will take place. At this time (cup day - 2 days) the cup organizers will review the group votes and will announce when each of these groups will play - based on a time slot both players can make. If the players have not found a time slot which they can both make, it's a draw, and neither player advances to the next round. If either player does not vote in time, he looses and the other player advances to the next round. If both players do not vote in time, it's a draw and neither player advances to the next round.

Example match time vote which the two members of a rounds group will be invited to vote on:
http://doodle.com/rgbc36s6cti52fxd

By default, the times given on Doodle refer to Berlin, Germany, which matches the times listed on Play.MG. Players can use the options provided on Doodle (or a service such as timeanddate.com) to convert the times to their local time zone.

If players would prefer to play at a different time or on a different day, they are welcome to do so by arranging an alternative match time (and date) on the forums in advance. To do so, both players must post the same Berlin, Germany time and date they have agreed to play at to the same forum topic, providing the round number this refers to. Alternative dates and time and only be during or before the designated dates, never later. Only when both players participating in a round have agreed to the same Berlin, Germany, match time, this will overrule any votes for their groups' game in this round only. Other than that, the game will take place at the times voted for on Doodle (or not at all, if players forget to vote there, causing both of them to loose).

Matches, winning conditions

How are matches carried out?
  • Players must use their forum user name as a player name. The player name can be set in options. If a player does not show up within five minutes after the designated match time, the other player wins.
  • At match start time, one of the players will setup a headless server (first come, first serve). Games are played on any of the "MG-Team" headless servers. If they are busy, players can choose to use a different headless server or host a game themselves.
  • Games are played on the Conflict map, with the Desert2 tileset. One player will play in player slot #1, the other player on player slot #4 (first come, first serve).
  • Each player is free to choose their faction
  • The game must not be started before both players have signalled 'ready'. If a player has not signalled ready 5 minutes after the game host was setup (but no earlier than 5 minutes after the match start time), he looses. If the game host / controlling admin fails to start the game 5 minutes after the other player signalled ready, the game host / controllig admin looses
  • If a player gets disconnected during the first 5 minutes of a game, the game will be restarted. If a player gets disconnected more than once, or later than 5 minutes into the game, the other player wins.
  • Play.MG is the authoritative source for information on whether a game took place, whether it was finished, who won and who exited a game prematurely.  A game is won if the winner shows up as the games winner on Play.MG. Only once this is the case, and the players received the in-game notification message on whether or not they have won the match, they can safely disconnect. If a player exits a game prematurely, he looses.
  • When the game ends, the winner must post to the forums that he won a game, providing the game round, the start time of the game (as listed on play.mg) and the designated participants. Unless the winner is listed as a winner of this game on Play.MG he must also post why he claims to be the winner of this game. The other player has the ability to challenge this by posting to the same forum, either on the same forum post, or on another one where he claims to be the winner in the same way.
  • The final decision on who, if anyone, wins a round is made by the organizers.
While it is technically possible to cheat, but please do not do it. It just spoils the fun for everyone, including you.
If someone tries to cheat and the organizers learn about it (and can be convinced that it took place), this player will be excluded from this and any future cups.
Building paths through shallow water is not cheating.



For reference, here's a (slightly edited, to remove unrelated content and fix spelling mistakes) log of the chat which, for the most part, lead to this post:
http://pastebin.com/raw.php?i=EZUPxmEt

11
Forum discussion / MySQL 5.6 patch applied
« on: 21 March 2014, 00:19:02 »
The MySQL 5.6 compatibility patch discussed at the SMF forums is now applied to the staging and live variant of our forums. The live forum backup file is forum_20140321_000418.tar.xz

12
MegaGlest / Versioning of map editor
« on: 17 March 2014, 17:01:11 »
While testing basxto's map editor, I notices that the map editor is versioned, and versioned differently than the game. The map editor shipped with MegaGlest 3.9.1 is versioned "1.6.1".

I think the map editor should not be versioned, or not versioned differently than the game itself, for as long as it is released as part of it. That's unless there is a good reason to do so, which I cannot currently think of.

What I think should be versioned is the map format. And once that's done the map editor should point out which map format versions it is compatible to.

I'd appreciate any developers' feedback on this.

13
MegaGlest / WIP: dabascht's QT4/5 based map editor
« on: 15 March 2014, 18:33:07 »
dabascht AKA basxto is currently working on a QT4/5 based clone of the (cureently wxgtk based) map editor:
https://github.com/dabascht/megaglest-source/tree/qt4

It's work in progress, most functionality isn't there, yet, but it's possible to build it already.

So here's how to build it on Ubuntu:

Ubuntu 12.04 LTS (QT4):

Code: [Select]
cd
mkdir SCM
cd SCM
git clone https://github.com/dabascht/megaglest-source.git megaglest-source_dabascht
cd megaglest-source_dabascht
# If you also want the default MegaGlest assets:
#git submodule update --init --recursive
git checkout qt4
cd mk/linux
sudo ./setupBuildDeps.sh
sudo apt-get install libqt4-dev
sed -i 's/^EXTRA_CMAKE_OPTIONS=$/EXTRA_CMAKE_OPTIONS="-DBUILD_MEGAGLEST=Off -DBUILD_MEGAGLEST_MAP_EDITOR=On -DBUILD_MEGAGLEST_MODEL_IMPORT_EXPORT_TOOLS=Off -DBUILD_MEGAGLEST_MODEL_VIEWER=Off -DUSE_QT5=Off"/' build-mg.sh
./build-mg.sh

Ubuntu 13.10 (QT5):

Code: [Select]
cd
mkdir SCM
cd SCM
git clone https://github.com/dabascht/megaglest-source.git megaglest-source_dabascht
cd megaglest-source_dabascht
# If you also want the default MegaGlest assets:
#git submodule update --init --recursive
git checkout qt4
cd mk/linux
sudo ./setupBuildDeps.sh
sudo apt-get install qt5-default
sed -i 's/^EXTRA_CMAKE_OPTIONS=$/EXTRA_CMAKE_OPTIONS="-DBUILD_MEGAGLEST=Off -DBUILD_MEGAGLEST_MAP_EDITOR=On -DBUILD_MEGAGLEST_MODEL_IMPORT_EXPORT_TOOLS=Off -DBUILD_MEGAGLEST_MODEL_VIEWER=Off -DUSE_QT5=On"/' build-mg.sh
./build-mg.sh

Ubuntu 14.04 LTS will likely work the same as 13.10.

SCM stands for source code management, it's just where I like to keep any source code repositories - you can name this differently and place it elsewhere, of course. The same goes for the megaglest-source_dabascht directory.

14
When you try to start the advanced tutorial from the CEGUI-fied tutorial menu, you run into a SegF with this:

Code: [Select]
*ERROR* [2014-03-14 21:53:57] In [/home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp::handleRuntimeError Line: 633] [listBoxScenario.getSelectedItemIndex() >= scenarioFiles.size(), = [4][3]
Stack Trace:
./megaglest:Shared::Platform::megaglest_runtime_error::megaglest_runtime_error(std::string const&, bool)address [0xc54ad8] line: 305
./megaglest:Glest::Game::MenuStateScenario::loadGameSettings(Glest::Game::ScenarioInfo const*, Glest::Game::GameSettings*)address [0x8b6871] line: 532
./megaglest:Glest::Game::MenuStateScenario::launchGame()address [0x8b9cbc] line: 441
./megaglest:Glest::Game::MenuStateScenario::callDelayedCallbacks()address [0x8b5e58] line: 207
./megaglest:Glest::Game::MenuStateScenario::update()address [0x8c0528] line: 432
./megaglest:Glest::Game::Program::loopWorker()address [0x8396ac] line: 467
./megaglest:Glest::Game::glestMain(int, char**)address [0x819e07] line: 5509
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x81c631] line: 5757
./megaglest:Glest::Game::glestMainWrapper(int, char**)address [0x81c834] line: 5831
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7faf87219de5] line: 0
./megaglest() [0x617f09]address [0x617f09]
] gameInitialized = 1, program = 0x3216630
listBoxScenario.getSelectedItemIndex() >= scenarioFiles.size(), = [4][3]

Stack Trace:
./megaglest:Shared::Platform::megaglest_runtime_error::megaglest_runtime_error(std::string const&, bool)address [0xc54ad8] line: 305
./megaglest:Glest::Game::MenuStateScenario::loadGameSettings(Glest::Game::ScenarioInfo const*, Glest::Game::GameSettings*)address [0x8b6871] line: 532
./megaglest:Glest::Game::MenuStateScenario::launchGame()address [0x8b9cbc] line: 441
./megaglest:Glest::Game::MenuStateScenario::callDelayedCallbacks()address [0x8b5e58] line: 207
./megaglest:Glest::Game::MenuStateScenario::update()address [0x8c0528] line: 432
./megaglest:Glest::Game::Program::loopWorker()address [0x8396ac] line: 467
./megaglest:Glest::Game::glestMain(int, char**)address [0x819e07] line: 5509
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x81c631] line: 5757
./megaglest:Glest::Game::glestMainWrapper(int, char**)address [0x81c834] line: 5831
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7faf87219de5] line: 0
./megaglest() [0x617f09]address [0x617f09]

GDB:
Code: [Select]
Core was generated by `./megaglest'.
Program terminated with signal 6, Aborted.
#0  0x00007faf8722ef77 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#0  0x00007faf8722ef77 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1  0x00007faf872325e8 in __GI_abort () at abort.c:90
#2  0x000000000080976e in Glest::Game::ExceptionHandler::handleRuntimeError (msg=<optimized out>, getStackTraceString=getStackTraceString@entry=false) at /home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp:760
#3  0x0000000000809c84 in Glest::Game::ExceptionHandler::handleRuntimeError (ex=...) at /home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp:614
#4  0x0000000000810b2e in Glest::Game::glestMain (argc=argc@entry=1, argv=argv@entry=0x7fff17237f38) at /home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp:5569
#5  0x000000000081c631 in Glest::Game::glestMainSEHWrapper (argc=argc@entry=1, argv=argv@entry=0x7fff17237f38) at /home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp:5755
#6  0x000000000081c834 in Glest::Game::glestMainWrapper (argc=1, argv=0x7fff17237f38) at /home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp:5830
#7  0x00007faf87219de5 in __libc_start_main (main=0x5fe590 <main(int, char**)>, argc=1, ubp_av=0x7fff17237f38, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fff17237f28) at libc-start.c:260
#8  0x0000000000617f09 in _start ()

15
On the CEGUI branch, the video options menu offers two Rain Effect options at Options > Video > Rain Effect. However, in the CEGUI variant, there i only one such option (or one of the tick boxes is completely covering the other). There should be two such options, one for enabling/disabling the rain effect on the menus, the other for enabling / disabling it in-game.

16
The camera move speed option at Options > Misc > Camera Move Speed provides a text input box. However, any attempts to replace an existing value there  by a value of 20 by means of editing the text failed for me. Since these are fixed values, this should probably not be editable text in the first place, but just a drop down menu. Alternatively, and maybe better, allow a specific range of values without intervals (I assume there is any need for the steps of 5 in the first place).

17
Two minor issues in this version:

Code: [Select]
Compiled using: GNUC: 40801 [64bit] on: Mar 13 2014 19:03:45 platform: Linux-X64 endianness: little
GIT: [Rev: 4769.e03536f] - using STREFLOP [SSE] - [no-denormals]

Horizontal table width is too large by default (specifically the first table row is too wide).



These messages display on download / removal of translation updates from Transifex:
 
There should not be a YES / NO prompt there, since these messages are purely informational.

18
I'm not sure this is actually a bug or just lack of implementation. Currently, when I just run the CEGUI branch on atibox and press Escape while the intro is still running, I run into this:

Code: [Select]
megaglest v3.10.0-dev
Compiled using: GNUC: 40801 [64bit] on: Mar 13 2014 17:43:41 platform: Linux-X64 endianness: little
GIT: [Rev: 4768.5660876] - using STREFLOP [SSE] - [no-denormals]
In [/home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5660] Error detected: signal 11:
Error saved to logfile [/home/tomreyn/.megaglest/error.log]
*ERROR* [2014-03-13 18:01:04] In [/home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp::handleRuntimeError Line: 633] [In [/home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5660] Error detected: signal 11:
] gameInitialized = 1, program = 0x1eea630
*ERROR* [2014-03-13 18:01:06] In [/home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp::handleRuntimeError Line: 652] [In [/home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5660] Error detected: signal 11:

Stack Trace:
./megaglest:Glest::Game::ExceptionHandler::handleRuntimeError(char const*, bool)address [0x809102] line: 643
./megaglest() [0x80941f]address [0x80941f]
/lib/x86_64-linux-gnu/libc.so.6:()address [0x7f075f615ff0] line: 0
./megaglest:CEGUI::NamedElement::isChild(CEGUI::String const&) constaddress [0xd52754] line: 0
./megaglest:Glest::Game::MegaGlest_CEGUIManager::getMessageBoxRoot(std::string)address [0x7c3214] line: 506
./megaglest:Glest::Game::MegaGlest_CEGUIManager::isMessageBoxShowing(std::string)address [0x7c416f] line: 542
./megaglest:Glest::Game::Program::keyDown(SDL_KeyboardEvent)address [0x836552] line: 327
./megaglest:Glest::Game::MainWindow::eventKeyDown(SDL_KeyboardEvent)address [0x7e942e] line: 1105
./megaglest:Shared::Platform::Window::handleEvent()address [0xc4e3d7] line: 420
./megaglest:Glest::Game::glestMain(int, char**)address [0x8194e5] line: 5422
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x81bd31] line: 5757
./megaglest:Glest::Game::glestMainWrapper(int, char**)address [0x81bf34] line: 5831
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7f075f600de5] line: 0
./megaglest() [0x6175f9]address [0x6175f9]
]
In [/home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5660] Error detected: signal 11:

Stack Trace:
./megaglest:Glest::Game::ExceptionHandler::handleRuntimeError(char const*, bool)address [0x809102] line: 643
./megaglest() [0x80941f]address [0x80941f]
/lib/x86_64-linux-gnu/libc.so.6:()address [0x7f075f615ff0] line: 0
./megaglest:CEGUI::NamedElement::isChild(CEGUI::String const&) constaddress [0xd52754] line: 0
./megaglest:Glest::Game::MegaGlest_CEGUIManager::getMessageBoxRoot(std::string)address [0x7c3214] line: 506
./megaglest:Glest::Game::MegaGlest_CEGUIManager::isMessageBoxShowing(std::string)address [0x7c416f] line: 542
./megaglest:Glest::Game::Program::keyDown(SDL_KeyboardEvent)address [0x836552] line: 327
./megaglest:Glest::Game::MainWindow::eventKeyDown(SDL_KeyboardEvent)address [0x7e942e] line: 1105
./megaglest:Shared::Platform::Window::handleEvent()address [0xc4e3d7] line: 420
./megaglest:Glest::Game::glestMain(int, char**)address [0x8194e5] line: 5422
./megaglest:Glest::Game::glestMainSEHWrapper(int, char**)address [0x81bd31] line: 5757
./megaglest:Glest::Game::glestMainWrapper(int, char**)address [0x81bf34] line: 5831
/lib/x86_64-linux-gnu/libc.so.6:__libc_start_main()address [0x7f075f600de5] line: 0
./megaglest() [0x6175f9]address [0x6175f9]

gdb:
Code: [Select]
Program terminated with signal 6, Aborted.
#0  0x00007fce7ada2f77 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#0  0x00007fce7ada2f77 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1  0x00007fce7ada65e8 in __GI_abort () at abort.c:90
#2  0x0000000000808e6e in Glest::Game::ExceptionHandler::handleRuntimeError (msg=msg@entry=0x7fff22cc5b00 "In [/home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5660] Error detected: signal 11:\n", getStackTraceString=getStackTraceString@entry=true) at /home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp:760
#3  0x000000000080941f in Glest::Game::handleSIGSEGV (sig=<optimized out>) at /home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp:5664
#4  <signal handler called>
#5  0x0000000000d52754 in CEGUI::NamedElement::isChild(CEGUI::String const&) const ()
#6  0x00000000007c3214 in Glest::Game::MegaGlest_CEGUIManager::getMessageBoxRoot (this=this@entry=0x144ec20 <Glest::Game::MegaGlest_CEGUIManager::getInstance()::manager>, rootMessageBoxFullName=...) at /home/tomreyn/SCM/megaglest-source/source/glest_game/gui/megaglest_cegui_manager.cpp:506
#7  0x00000000007c416f in Glest::Game::MegaGlest_CEGUIManager::isMessageBoxShowing (this=this@entry=0x144ec20 <Glest::Game::MegaGlest_CEGUIManager::getInstance()::manager>, rootMessageBoxFullName=...) at /home/tomreyn/SCM/megaglest-source/source/glest_game/gui/megaglest_cegui_manager.cpp:542
#8  0x0000000000836552 in Glest::Game::Program::keyDown (this=0x30a8630, key=...) at /home/tomreyn/SCM/megaglest-source/source/glest_game/main/program.cpp:327
#9  0x00000000007e942e in Glest::Game::MainWindow::eventKeyDown (this=0x30d7c60, key=...) at /home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp:1103
#10 0x0000000000c4e3d7 in Shared::Platform::Window::handleEvent () at /home/tomreyn/SCM/megaglest-source/source/shared_lib/sources/platform/sdl/window.cpp:419
#11 0x00000000008194e5 in Glest::Game::glestMain (argc=argc@entry=1, argv=argv@entry=0x7fff22ccdff8) at /home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp:5422
#12 0x000000000081bd31 in Glest::Game::glestMainSEHWrapper (argc=argc@entry=1, argv=argv@entry=0x7fff22ccdff8) at /home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp:5755
#13 0x000000000081bf34 in Glest::Game::glestMainWrapper (argc=1, argv=0x7fff22ccdff8) at /home/tomreyn/SCM/megaglest-source/source/glest_game/main/main.cpp:5830
#14 0x00007fce7ad8dde5 in __libc_start_main (main=0x5fdc80 <main(int, char**)>, argc=1, ubp_av=0x7fff22ccdff8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fff22ccdfe8) at libc-start.c:260
#15 0x00000000006175f9 in _start ()

19
MegaGlest / Development update
« on: 8 March 2014, 16:47:29 »
Since Omega brought this up:

For two releases now, we use a semantic method of versioning, if not "semantic versioning".

We use MAJOR.MINOR.PATCH but their meaning is slightly different (and actually makes more sense to me). We increment the:
  • MAJOR version when we make major changes, which may include incompatible API changes, or a major change in functionality or usability
  • MINOR version when we make "normal" changes, which may include new or improved functionality and other changes, as well as non backward compatible bug fixes
  • PATCH version when we make backwards-compatible bug fixes.
Softcoder, Titi, please correct me if I'm wrong.

As you know we migrated to Git and GitHub not too long ago, and have since started using the Git Flow branching model, and (optionally) the Git Flow AVH Edition for managing the branches. Currently there are two feature branches, one (managed by Softcoder) introduces a new GUI (thanks to CEGUI), the other holds Titi's light-weight headless server variant.

For the past months we used Travis-CI for Continuous Integration. And just since yesterday our own Continuous Integration (Jenkins) installation is back (but it needs yet to be configured), so we shall have snapshot builds for Linux and Windows again soon, too.

When I say we then I mean it inclusively, namely whoever regularly contributes to MegaGlest's development and the project as a whole, or will do so in the future.

20
When you start a game and any one (does not need to be host or controlling player) player runs into an initialization timeout (180s), this can cause the entire game to fail for all connected players, meaning that every player gets disconnected just because one timed out.

This should not happen. If one player is unable to initialize the game, it should be dropped and replaced by AI, allowing the other players to start the game fine.

21
When a user timed out at the start of a game (i.e. the 180s timeout), all players get to see the timeout notice in the language of the player who timed out, instead of their own.

Example:
Code: [Select]
*ERROR* [2014-03-06 00:24:27] In [network_interface.cpp::DisplayErrorMessage Line: 198] sErr [Tiempo de espera para el servidor.]
This message is also displayed in this locale on the GUI in a message window.

22
MegaGlest / New headless servers "MG-Team"
« on: 3 March 2014, 15:11:06 »
Last night, Titi set up three new headless servers ("MG-Team") which run on a new very well equipped VM (3 GB RAM and a strong CPU) and are listed with dutch IP addresses (the actual server is hosted in France, though). This VM is currently managed by Titi and me (Filux was also invited).

For locations in at least Europe and North America (surely eastern locations), the "Near East" and for parts of Africa and  these new gameservers should be quite well connected and stable (that is if your local Internet connection is fine - a common problem we cannot solve). This online service checks how well this new server is reachable from several locations around the world - look for a location close to you to get an estimate of how well you will be able to play there.

To test, each of these sites send a couple ping (ICMP echo) requests, which the server responds to. The site measures the period from when it sent the packet until it receives the servers' reply, called the round trip time (RTT). min. rtt is how long the shortest round trip took, max. rtt is how long the longest round trip took, and avg. rtt is the average across all packets sent.

You can get individual statistics on your own network connection to the server by using the "ping" command line utility (available on Linux, Windows and - I assume - OS X). For more details and an optional graphical interface, there is the "mtr" utility which is available for Linux and Windows ("winmtr" then). By default, Windows also has the "pathping" command line utility which does something quite similar.

23
The General headless server (Ubuntu 13.10 64-bit) ran into this segmentation fault today (Feb 26 17:33 UTC, roughly an hour before I'm posting this) while two network players were playing Japanese.

The game ID is b6ca0fbc-9f0b-11e3-8337-7dbb6aca62c7.

Console output:
Code: [Select]
== Current in-game stats (interval 600) ==
Render FPS: -1[-1]
Update FPS: 0[-1]
Time: 7.50 [0.00]
Log buffer count: 0
UnitRangeCellsLookupItemCache: pos [0] size [0] range [0][0] total KB: 0
ExploredCellsLookupItemCache: pos [36] sight [36] [16396][4957] total KB: 170
FowAlphaCellsLookupItemCache: surface count [0] total KB: 0
Selection type: color
Color picking used color list size: 831
Map: conflict
Tileset: desert2
Techtree: japanese
Frame count:0
Total unit count: 36

*TESTING*: START Waiting for lagging client playerIndex = 0 [Djordje] clientLagCount = 19.000000 [0.000000]
Switching masterserver admin to slot#1...
In [/home/softcoder/Code/megaglest/git/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5602] Error detected: signal 11:
Error saved to logfile [/home/megaglest/.megaglest/error.log]
*ERROR* [2014-02-26 17:33:31] In [/home/softcoder/Code/megaglest/git/source/glest_game/main/main.cpp::handleRuntimeError Line: 629] [In [/home/softcoder/Code/megaglest/git/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5602] Error detected: signal 11:
] gameInitialized = 1, program = 0x17384b0
*ERROR* [2014-02-26 17:33:34] In [/home/softcoder/Code/megaglest/git/source/glest_game/main/main.cpp::handleRuntimeError Line: 648] [In [/home/softcoder/Code/megaglest/git/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5602] Error detected: signal 11:

Stack Trace:
./megaglest:Glest::Game::ExceptionHandler::handleRuntimeError(char const*, bool)address [0x7a7117] line: 639
./megaglest:Glest::Game::handleSIGSEGV(int)address [0x7a780f] line: 5607
/lib/x86_64-linux-gnu/libc.so.6:()address [0x7f5a8d7e3ff0] line: 0
./megaglest:Shared::Platform::Mutex::p()address [0xc133ab] line: 517
./megaglest:Glest::Game::ConnectionSlot::hasDataToRead()address [0xa0d46f] line: 1630
./megaglest:Glest::Game::ConnectionSlot::update(bool, int)address [0xa12238] line: 636
./megaglest:Glest::Game::ConnectionSlot::updateSlot(Glest::Game::ConnectionSlotEvent*)address [0xa1a85b] line: 516
./megaglest:Glest::Game::ConnectionSlotThread::execute()address [0xa1b100] line: 264
./megaglest:Shared::Platform::Thread::beginExecution(void*)address [0xc17452] line: 297
/usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0:()address [0x7f5a9193eac8] line: 0
/usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0:()address [0x7f5a9197e189] line: 0
/lib/x86_64-linux-gnu/libpthread.so.0:()address [0x7f5a91716f6e] line: 0
/lib/x86_64-linux-gnu/libc.so.6:clone()address [0x7f5a8d8a79cd] line: 0
]
Message:
In [/home/softcoder/Code/megaglest/git/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5602] Error detected: signal 11:

Stack Trace:
./megaglest:Glest::Game::ExceptionHandler::handleRuntimeError(char const*, bool)address [0x7a7117] line: 639
./megaglest:Glest::Game::handleSIGSEGV(int)address [0x7a780f] line: 5607
/lib/x86_64-linux-gnu/libc.so.6:()address [0x7f5a8d7e3ff0] line: 0
./megaglest:Shared::Platform::Mutex::p()address [0xc133ab] line: 517
./megaglest:Glest::Game::ConnectionSlot::hasDataToRead()address [0xa0d46f] line: 1630
./megaglest:Glest::Game::ConnectionSlot::update(bool, int)address [0xa12238] line: 636
./megaglest:Glest::Game::ConnectionSlot::updateSlot(Glest::Game::ConnectionSlotEvent*)address [0xa1a85b] line: 516
./megaglest:Glest::Game::ConnectionSlotThread::execute()address [0xa1b100] line: 264
./megaglest:Shared::Platform::Thread::beginExecution(void*)address [0xc17452] line: 297
/usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0:()address [0x7f5a9193eac8] line: 0
/usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0:()address [0x7f5a9197e189] line: 0
/lib/x86_64-linux-gnu/libpthread.so.0:()address [0x7f5a91716f6e] line: 0
/lib/x86_64-linux-gnu/libc.so.6:clone()address [0x7f5a8d8a79cd] line: 0

Game ending with stats:
-----------------------
Description: Conflict
Faction count: 4
Game duration (mins): 0
Max Concurrent Units: 40
Total EndGame Concurrent Unit Count: 40
player #0 Djordje (Network) faction: Japanese Team: 0 victory: 0 # kills: 0 # enemy kills: 0 # deaths: 0
# units produced: 0 # resources harvested: 0
player #1 Brle23 (Network) faction: Japanese Team: 0 victory: 0 # kills: 0 # enemy kills: 0 # deaths: 0
# units produced: 0 # resources harvested: 0
player #2 AI1 (CPU x 1.0) faction: Japanese Team: 1 victory: 0 # kills: 0 # enemy kills: 0 # deaths: 0
# units produced: 1 # resources harvested: 25
player #3 AI2 (CPU x 1.0) faction: Japanese Team: 1 victory: 0 # kills: 0 # enemy kills: 0 # deaths: 0
# units produced: 1 # resources harvested: 50
-----------------------

Headless server is about to quit...
Waiting for the following threads to exit [1]:
Thread index: 0 ptr [0x17d5400] isBaseThread: 1, Name: [connection_slot.cpp_396]
Waiting for the following threads to exit [1]:
Thread index: 0 ptr [0x17d5400] isBaseThread: 1, Name: [connection_slot.cpp_396]
Waiting for the following threads to exit [1]:
Thread index: 0 ptr [0x17d5400] isBaseThread: 1, Name: [connection_slot.cpp_396Segmentation fault (core dumped)
ERROR: Server has quit unexpectedly.

GDB trace:
Code: [Select]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `./megaglest --ini-path=./ --data-path=./ --headless-server-mode=vps,exit'.
Program terminated with signal 11, Segmentation fault.
#0  0x000000000068a5db in std::_Rb_tree<std::string, std::pair<std::string const, long>, std::_Select1st<std::pair<std::string const, long> >, std::less<std::string>, std::allocator<std::pair<std::string const, long> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, long> >*) ()
#0  0x000000000068a5db in std::_Rb_tree<std::string, std::pair<std::string const, long>, std::_Select1st<std::pair<std::string const, long> >, std::less<std::string>, std::allocator<std::pair<std::string const, long> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, long> >*) ()
#1  0x000000000068a80d in std::map<std::string, long, std::less<std::string>, std::allocator<std::pair<std::string const, long> > >::~map() ()
#2  0x0000000000681527 in Glest::Game::Game::~Game (this=0x17daf60, __in_chrg=<optimized out>) at /home/softcoder/Code/megaglest/git/source/glest_game/game/game.cpp:471
#3  0x00000000007e2e93 in Glest::Game::Program::~Program (this=0x17384b0, __in_chrg=<optimized out>) at /home/softcoder/Code/megaglest/git/source/glest_game/main/program.cpp:283
#4  0x00000000007a7292 in Glest::Game::ExceptionHandler::handleRuntimeError (msg=<optimized out>, getStackTraceString=true) at /home/softcoder/Code/megaglest/git/source/glest_game/main/main.cpp:723
#5  0x00000000007a780f in Glest::Game::handleSIGSEGV (sig=<optimized out>) at /home/softcoder/Code/megaglest/git/source/glest_game/main/main.cpp:5606
#6  <signal handler called>
#7  Shared::Platform::Mutex::p (this=0x3f800000) at /home/softcoder/Code/megaglest/git/source/shared_lib/sources/platform/sdl/thread.cpp:517
#8  0x0000000000a0d46f in Lock (this=<optimized out>) at /home/softcoder/Code/megaglest/git/source/glest_game/../shared_lib/include/platform/sdl/thread.h:193
#9  MutexSafeWrapper (ownerId=..., mutex=<optimized out>, this=<optimized out>) at /home/softcoder/Code/megaglest/git/source/glest_game/../shared_lib/include/platform/sdl/thread.h:164
#10 Glest::Game::ConnectionSlot::hasDataToRead (this=0x17e08c0) at /home/softcoder/Code/megaglest/git/source/glest_game/network/connection_slot.cpp:1630
#11 0x0000000000a12238 in Glest::Game::ConnectionSlot::update (this=0x17e08c0, checkForNewClients=216, lockedSlotIndex=<optimized out>) at /home/softcoder/Code/megaglest/git/source/glest_game/network/connection_slot.cpp:636
#12 0x0000000000a1a85b in Glest::Game::ConnectionSlot::updateSlot (this=0x17e08c0, event=0x7f5a7effac20) at /home/softcoder/Code/megaglest/git/source/glest_game/network/connection_slot.cpp:512
#13 0x0000000000a1b100 in slotUpdateTask (event=<optimized out>, this=<optimized out>) at /home/softcoder/Code/megaglest/git/source/glest_game/network/connection_slot.cpp:158
#14 Glest::Game::ConnectionSlotThread::execute (this=0x17d5400) at /home/softcoder/Code/megaglest/git/source/glest_game/network/connection_slot.cpp:264
#15 0x0000000000c17452 in Shared::Platform::Thread::beginExecution (data=data@entry=0x17d5400) at /home/softcoder/Code/megaglest/git/source/shared_lib/sources/platform/sdl/thread.cpp:295
#16 0x00007f5a9193eac8 in SDL_RunThread (data=0x17e1720) at ../../src/thread/SDL_thread.c:204
#17 0x00007f5a9197e189 in RunThread (data=<optimized out>) at ../../src/thread/pthread/SDL_systhread.c:47
#18 0x00007f5a91716f6e in start_thread (arg=0x7f5a7effd700) at pthread_create.c:311
#19 0x00007f5a8d8a79cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

24
Mods / Anyone needs these files?
« on: 26 February 2014, 18:18:33 »
I just looked at the *Glest* related files I have here. Some of the old downloads were since deleted off file hosting sites, so maybe I have something here which is otherwise missing. Please let me know if so and I'll make it available (that's IF it used to be publicly available before).

Code: [Select]
55M     astro_marines.zip
2,3M    glest_logo_kit.zip
28K     Glest_model.zip
69M     battleglest-0003-001.7z
75M     battleglest-0003-003.7z
3,4M    glest-icons+sources.7z
45M     GlestINspaceModWorkingGame_18.7z
42M     GlestINspaceModWorkingGame_9.7z
65M     MRise_CoreFiles_v2.0.7z
265M    MRise_Hyperion_v2.0.7z
230M    MRise_Necribus_v2.0.7z
12M     new_lands.7z
28M     prax_0.5.9.1.7z
30M     prax_alpha_0.2.2.7z
181M    republic_vs_police_state_linux.7z
14M     storm_raven_clan.7z
72K     Tigers Maps.7z
14M     undeadpack.7z
20M     woodsmen1.2.7z
20M     woodsmen.7z

25
Mods / Mod downloads
« on: 26 February 2014, 13:00:48 »
A mostly complete list of MegaGlest mods and downloads can now be found at

   https://docs.megaglest.org/Mods/List

Please note that several of these mods are also available from the games' mod menu for easy installation.

New mods should be added to the above list and announced here on the Mods forum.

Pages: [1] 2 3 4 5 ... 20