Commit Graph

42 Commits

Author SHA1 Message Date
Mark Vejvoda
897346d1f5 - added the beginning work to support translatable techtrees 2012-05-02 20:46:47 +00:00
Mark Vejvoda
c8fdc9269f - fix win32 build
- cleanup a lot of win32 compiler warnings
2012-04-16 20:15:57 +00:00
Mark Vejvoda
8c0bf75bf5 - got built in memory leak working. Just edit leak_dumper.h and uncomment:
//#define SL_LEAK_DUMP
- got better / more accurate stack dumps when we detect errors in game.
- Both of these need to be worked on in windows next, win32 may not compile for now until i fix it on that platform.
- BE VERY CAREFUL when working in leak_dumper.* it may cause GCC and your system to crash if you don't know what you are doing!
2012-04-14 21:21:09 +00:00
Mark Vejvoda
a23a9396c2 - added new over-ridable minimum spacing between buildings for the AI player 2012-04-02 16:11:13 +00:00
Mark Vejvoda
030582c1ef - added a new EnumParser class to convert enum to string and vice versa
- factions can now customize some more of the AI behavior
2012-03-31 05:54:24 +00:00
Mark Vejvoda
bb44cfdb7b - cleaned up some constants in prep for allowing override of more things in the AI 2012-03-30 21:56:15 +00:00
Mark Vejvoda
e6028a0555 - allow logging of AI behavior to logfiles using: AiLog=10
(this produces a logfile for each AI player called aix.log where x is the ai player #)
- changed some AI behavior so that AI player can use overidable min static resource count from faction xml
- changed some AI behavior so that AI player is more smart about producing resource producers and resources.
2012-03-17 19:22:03 +00:00
Mark Vejvoda
5f95b08c17 - a ton more load game state now working (including commands) 2012-03-13 15:21:25 +00:00
Mark Vejvoda
c5331b7e8a - initial work to save game state to XML. Current only saves when out of synch or game end occurs and saves to same folder as log files and file is called: megaglest-saved.xml
(Currently we store way too much info but this is a starting point)
2012-03-10 03:27:25 +00:00
Titus Tscharntke
780cb81324 wherever you try to hide yourself, ultra cpu will find you too now after a while :-D ..... 2011-09-27 21:51:29 +00:00
Mark Vejvoda
7d53df698a - added new in-game popup menu and new ability to switch teams in game (turned off by default in advanced settings) 2011-09-21 06:51:28 +00:00
Mark Vejvoda
bb68106912 - phase 3 of cppcheck verbose fixes 2011-09-01 18:08:56 +00:00
Mark Vejvoda
d44959d69c - phase 1 of cppcheck verbose fixes 2011-08-31 23:10:43 +00:00
Mark Vejvoda
2c80543889 - attempt to group command execution so units given the same command at the same time will work more smartly (closer units go first and so on) 2011-07-05 04:37:35 +00:00
Titus Tscharntke
6fdc8db138 switching off random pathfinding intervals becasue it causes unit "warping" while walking ( more see forum ) 2011-06-26 23:51:37 +00:00
Titus Tscharntke
105e639bd8 Mega also scouts to random ressource places .Only first tech type ressource is used to navigate now (which is typically gold) more improvement needed regarding this aspect ;pathfinder back to 900 2011-06-25 18:14:20 +00:00
Titus Tscharntke
e58ddd35b4 fixes build bug reported in forum/ adds some better mega-cpu behaviour / fixed some bugs ( I hopefully did not added new ones :-D ) 2011-06-20 23:51:13 +00:00
Mark Vejvoda
070b8b76e6 - more AI enhancements to better handle repair and build positions 2011-05-01 07:24:37 +00:00
Mark Vejvoda
c979ea1254 - more AI enhancements, now units that harvest AND attack will be more wise when choosing to attack, (think persian) since they need to harvest more than they need to attack when harvester count is very low.
- AI Units now place higher priority on repairing 'castle' style units when looking for something to repair.
2011-04-29 23:42:16 +00:00
Mark Vejvoda
99f7038a86 - added logic for AI players to ignore resources that they cannot harvest and are not unit requirements. 2011-04-06 15:44:33 +00:00
Mark Vejvoda
3ed636aae2 - fixes for some threading shutdown bugs
- We now display when a screenshot is taken in game showing an ingame console message
- Updated AI to attack closest attackers
- Updated found enemy to be closest attacker
2011-03-28 21:04:47 +00:00
Mark Vejvoda
3b56aa4475 - performance changes... (problem found by titi) most debug calls line are skipped when the debug flag is disabled even BEFORE getting into the handledebug method.
This improves performance VERY MUCH.
2011-03-28 03:54:23 +00:00
Mark Vejvoda
1136f056ce - added performance logging for new ai unblock rule when perf logging enabled 2011-02-28 16:47:01 +00:00
Mark Vejvoda
823fd842d4 - added NULL guard for units without a move command to avoid segfault 2011-02-26 00:41:00 +00:00
Mark Vejvoda
bced200dd1 - bugfix when bad values are in map file, game would freeze at game start due to endless loop 2011-02-25 22:13:11 +00:00
Mark Vejvoda
9de151d975 - added more things to try to improve pathfinding (especially for the AI)
AI players should now detect when units are blocked (surrounded by other units from same faction) and tell the other units to move out of the way
2011-02-25 16:32:27 +00:00
Mark Vejvoda
6ec92f2127 - attempt to add more randomness to pathfinding and faster AI decsions 2011-02-04 06:34:32 +00:00
Mark Vejvoda
177531c376 - commented out some debug statements and corrected stuck harvesting a bit 2011-01-28 08:37:48 +00:00
Mark Vejvoda
ccbd707ae1 - numerous bugfixes including fixing a slowdown introduced in a previous recent checkin.
- Added Network Text Message queue as this is required in some tricky cases
- added more logging of memory cleanup events
- added memory safe snprintf calls
2011-01-11 22:09:46 +00:00
Mark Vejvoda
cc4f268988 - some additional AI caching for improved performance 2010-11-11 08:02:50 +00:00
Mark Vejvoda
d89953ee96 - improved performance and bug fixes. 2010-11-09 09:06:52 +00:00
Mark Vejvoda
9d9fa0deeb - improved performance for when the AI decides which resource is closest. 2010-11-07 03:27:06 +00:00
Mark Vejvoda
7564635643 - added initial code for switching dropped network players to AI (currently hard coded to normal CPU) 2010-10-18 23:09:43 +00:00
Mark Vejvoda
02e0a1302f - more AI fixes.
#1: AI does not try to harvest resources that the unit cannot yet harvest (could be an upgrade required)

#2: AI no longer tries to expand near resources that they are not yet able to harvest. (found using RealtimeFreaks test mod and map). This makes for a more aggresive CPU in scenarios where there are additional resource types since they expand much more quickly.
2010-10-02 01:11:59 +00:00
Mark Vejvoda
6013a96efd - stupid compiler fix for vc++ (including limits gives streflop a fit) 2010-09-29 22:59:16 +00:00
Mark Vejvoda
80051e3194 - bugfix for AI units that do nothing when resources exist in the tech that the unit cannot harvest. (thanks RealtimeFreak for pointing this out and giving me a demo tech for testing)
- bugfix for restoring saved game settings (ignore closed slots that have faction set to random)
2010-09-29 04:38:41 +00:00
Mark Vejvoda
f84a710d2c - initial logic to allow client side controlled AI 2010-09-14 19:10:37 +00:00
Mark Vejvoda
6e26641799 - a possible fix for the AI. this change will randomize all possible produce, morph and build operations instead of just using the last commandtype found for candidate units 2010-07-13 22:51:27 +00:00
Mark Vejvoda
4fd75e5d7d - fixed two nasty AI bugs which would cause out of synch and memory corruption problems
- added new glest.ini setting to log commands for each client
2010-06-08 07:40:32 +00:00
Mark Vejvoda
b22adbfa02 bugfix for scripted scenarios and placing unit model not showing 2010-03-24 21:26:17 +00:00
Mark Vejvoda
43c3f2457e Code Restructuring to make mega-glest more standard 2010-03-12 05:20:53 +00:00
Titus Tscharntke
0ce9b5fcac initial version ( megaglest 3.2.3-beta3 ) 2010-01-22 01:45:58 +00:00