Commit Graph

504 Commits

Author SHA1 Message Date
Mark Vejvoda
b8fb60b325 - speed up the pathfinder a bit 2012-04-21 03:42:25 +00:00
Mark Vejvoda
dbb116f250 - load of changes to get things compiling under VC++ 2010 (with updated deps seperate for vc2010) 2012-04-20 01:04:05 +00:00
Mark Vejvoda
aa831dbb61 - inlined a few more functions 2012-04-17 15:25:31 +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
3b8dd289ac - updated cmake to check for support of backtraces in gcc compiler
- fixed numerous bugs / warnings from cppcheck
2012-04-16 19:29:37 +00:00
Mark Vejvoda
a37dc8a7b3 - fix headless server crash due to new call to setgama in headless mode
- a few code optimizations to start to improve performance
2012-04-16 06:14:10 +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
9aca26a0f0 - bugfix for unit selection segfault on game exit
- added thread hardening to try to ensure we never try to delete a thread more than once.
2012-04-12 20:43:19 +00:00
Mark Vejvoda
76c3fa1949 - fixed segfault when a unit is selected and they die (this is a long standing bug and not related to savegame) 2012-04-12 15:38:53 +00:00
Mark Vejvoda
22f43f4267 - added new lua method for setting the direct position of a unit (can be used for teleporting):
setUnitPosition(int unitId, Vec2i pos)
2012-04-11 05:41:40 +00:00
Titus Tscharntke
4aae520da6 Highlighting rendering without cycling through all units each frame ... 2012-04-04 22:57:32 +00:00
Titus Tscharntke
6c12bfbec8 Improved resource object selection implementation which allows highlight effects now too.
Generally changed highlight effect to something more obvious
2012-04-04 00:30:16 +00:00
Mark Vejvoda
2f885406e0 - added logic to delay AI player from path finding more than 10 units per frame (we make him think he is blocked and he will retry another frame) 2012-03-31 19:50:45 +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
Titus Tscharntke
d8ba2443cf new switches "count-unit-death-in-stats", "count-unit-production-in-stats" and "count-unit-kill-in-stats" for unit.xml ( allows better "resource" production for example ) 2012-03-30 23:38:05 +00:00
Mark Vejvoda
45b92f4316 - allow for a scenario based faction to be 'neutral' by specifying a team # of 9
- added some new lua methods:
networkShowMessageForFaction(text,header,int factionIndex)
networkShowMessageForTeam(text,header,teamIndex)
2012-03-30 05:53:33 +00:00
Mark Vejvoda
af5c38b4c4 - fixed save / load of fire particle when unit is burning 2012-03-30 03:20:33 +00:00
Mark Vejvoda
9286130138 - bugfixes and code cleanup found using cppcheck 2012-03-28 06:25:57 +00:00
Mark Vejvoda
c0f3658faa - bugfix for network scenarios to NOT close unconnected network slots before loading, they will turn into AI players (this is required because the scenario code may require those factions)
- added ability to morph and indicate the morph command should ignore resource costs, add this to the command type:
<ignore-resource-requirements value="true" />
2012-03-27 03:23:03 +00:00
Mark Vejvoda
163271203d - tilesets now support animated models:
<model path="models/copter_sit.g3d" anim-speed="190"/>
2012-03-26 23:24:29 +00:00
Mark Vejvoda
98351fedba - bugfix when morphing, do a level check to see if the morphed unit should have its level updated based on current kills 2012-03-25 20:38:05 +00:00
Mark Vejvoda
bc3cc07aba - corrected multiple model processing based on hp
- fixed cmake scripts (thanks Andrew Clarke)
- fixed streflop files to ignore softfloats if not used during build
2012-03-24 18:30:49 +00:00
Mark Vejvoda
a7e45eb354 - added the ability to record all game command to a replay file. To test saving / loading games from a replay file, add this to glestuser.ini:
SaveCommandsForReplay=true
2012-03-20 04:53:26 +00:00
Mark Vejvoda
b481fbcbb5 - proper save and restore for particles 2012-03-19 21:35:54 +00:00
Mark Vejvoda
6571281a48 - proper restore of meeting point 2012-03-17 22:08:04 +00:00
Mark Vejvoda
8d5de12d42 - added some particles to load game logic 2012-03-14 07:23:41 +00:00
Mark Vejvoda
4481151c5b - check if unit is dead when loading game and do NOT set cell map for dead unit 2012-03-13 23:51:39 +00:00
Mark Vejvoda
d4ca1c36cb - fixed some particle issues 2012-03-13 23:18:09 +00:00
Mark Vejvoda
0ea22572dd - fix ally list when loading games 2012-03-13 23:10:48 +00:00
Mark Vejvoda
aa93999dce - fixed map placement when loading untis from file 2012-03-13 22:55:11 +00:00
Mark Vejvoda
d1a0eeca2e - check for null for particles 2012-03-13 22:37:47 +00:00
Mark Vejvoda
917adc8c98 - bugfix for game save and load (string buffer was too small for one item) 2012-03-13 21:58:31 +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
e3fde99359 - fixed gamma correction so it works now
- added more state when loading saved game
2012-03-13 01:34:14 +00:00
Mark Vejvoda
9271d7d7f6 - initial loading logic for loading of saved games.
- currently we always save the game during out of synch or on game quit.
- added a new commandline option to load the last saved game, this doesn't do much yet, just creates units in the map locations they were when the game was saved
./megaglest --load-saved-game
2012-03-12 23:08:22 +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
Mark Vejvoda
4ad42518c0 - updated for better handling of streflop on different platforms
- attempt for bugfix on windows when socket send buffer is continuously full
2012-02-10 06:21:06 +00:00
Mark Vejvoda
c11266d529 - fix custom player colors for mods 2011-12-14 23:01:13 +00:00
Mark Vejvoda
157c052a82 - allow mod's to change player colors 2011-12-14 22:42:38 +00:00
Mark Vejvoda
9852325da6 - fixed Martiño Figueroa's name in all copyrights in source code
- added copyrights to files that were missing it
2011-12-14 07:40:48 +00:00
Mark Vejvoda
2dd2afb296 - changed selection code to use color picking, can disable using new ini setting:
EnableColorPicking=false
2011-12-13 01:30:52 +00:00
Mark Vejvoda
609bc528d2 - fixed fog of war bug in map preview for connected client
- in headless mode keep three caches in case its related to out of synch
- comment out spurious irc console text
2011-12-03 01:19:54 +00:00
Mark Vejvoda
01ea0787a3 - a few more updates to cut down on RAM use for headless server 2011-12-03 00:39:03 +00:00
Mark Vejvoda
8bdf863636 - cleanup of masterserver global flag
- attempt to cut down on resources required for masterserver mode to minimize RAM
2011-12-02 22:04:02 +00:00
Mark Vejvoda
66f44ff7c4 - more cleanup from cppcheck (using eclipse plugin now) 2011-12-02 17:46:02 +00:00
Mark Vejvoda
d33e1174a5 - bugfixes related to cppcheck report
- bugfixes found using valgrind (memory leaks)
2011-12-02 16:07:59 +00:00
Titus Tscharntke
1cd6520335 fast commands only for fighting / no regeneration when in "be_build" state 2011-11-29 00:54:38 +00:00
Mark Vejvoda
21d06fd386 - bugfix for hp regeneration (Thanks for pointing this out Ishmaru) 2011-11-28 06:25:20 +00:00
Mark Vejvoda
03a7a72ef5 revert network code back to beta1 code 2011-11-27 05:27:50 +00:00
Mark Vejvoda
fbb3f0b8e5 - faction threads now use semaphores to signal completion lowering cpu use on main thread 2011-11-26 23:11:33 +00:00
Mark Vejvoda
3cdf50c399 - a load of bugfixes including:
- proper handling of invalid client connects, after 6 bad attempts in a 60 second period of time the IP address is blocked from the current game
  - Added check for invalid particles for tileset objects
  - Made messagebox wider in game mod menu
  - Fixed numerous threading issues discovered while testing on my 8 core CPU
  - a Little bit of rendering cleanup
2011-11-23 08:00:09 +00:00
Mark Vejvoda
2d367bd26e - added new lua functions from Muwum:
new events:
    unitAttacked
   unitAttacking
 
   methods:
   lastAttackedUnitName()
   lastAttackedUnit()
   lastAttackingUnitName()
   lastAttackingUnit()
   giveKills(unit,amount)
2011-11-16 21:38:12 +00:00
Mark Vejvoda
0039354c15 - added name to attack-boosts and shared attack boosts per unit type 2011-11-11 04:17:55 +00:00
Mark Vejvoda
0b62b4137e - added a validation / warnhing logic to handle cases of duplicate resource values entered in XML 2011-11-10 22:36:44 +00:00
Mark Vejvoda
1e34bc66c1 added a detailed error message to try to hunt down a bug discovered by Elimnator 2011-11-10 21:00:50 +00:00
Mark Vejvoda
0b511efe36 bugfix for particles, proper checking for valid particle states when using particles 2011-11-05 05:45:02 +00:00
Mark Vejvoda
0f6e8ba928 attempt to bugfix attackboost segfault discovered while playing vs Romans 2011-10-30 06:12:40 +00:00
Mark Vejvoda
ca45749cd8 see if this fixes command transitions issues outstanding 2011-10-28 22:49:00 +00:00
Mark Vejvoda
64eeba93cb bugfix for command transition not properly resetting status 2011-10-28 04:37:10 +00:00
Mark Vejvoda
4223567f2b attempt to fix weird command transition behavior 2011-10-28 04:17:26 +00:00
Mark Vejvoda
421e38cab4 cleaned up the code a bit for the command transition 2011-10-28 01:22:36 +00:00
Mark Vejvoda
b08516e7de fixed command transition choppiness 2011-10-28 01:11:42 +00:00
Mark Vejvoda
fdb2b65bf7 make transition to new command less choppy 2011-10-28 00:51:01 +00:00
Mark Vejvoda
f2e497f855 bugfix for switching to another command should be immediate and not wait until the current skill in finished 2011-10-28 00:22:03 +00:00
Mark Vejvoda
c6fe352da7 disabled 'grouped' commands to see if this is the cause of out of synch (try this out guys) 2011-10-26 00:30:58 +00:00
Mark Vejvoda
b1ed59959e - bugfix so player who dies and becomes an observer can hear sounds from other players units 2011-10-12 16:03:55 +00:00
Mark Vejvoda
e25e925ff0 - bugfix for ep regen being done twice per tick 2011-10-12 02:46:31 +00:00
Mark Vejvoda
8729c32b68 - bugfix AI, no longer try to build a farm type unit if the faction does not have a unit that is able to build it yet
- new optional feature added to tell each faction some basic info regarding which units should take priority when building,producing and morphing
2011-10-04 06:49:44 +00:00
Mark Vejvoda
aed293bba2 - fixed a bunch of memory leaks that will hopefully mean less overall memory requirements. 2011-09-28 06:57:42 +00:00
Mark Vejvoda
21005cc1e7 - in headless mode skip call to set window icon 2011-09-27 17:15:56 +00:00
Mark Vejvoda
2a86cb4f7d - added support for proper quiting and console input/output in headless mode. Type: quit followed by return into the console to properly shutdown in headless mode. 2011-09-27 10:16:09 +00:00
Mark Vejvoda
9caff9dac3 - in headless mode avoid init of sdl's video surface so that we stay in console window (no graphics window shown) 2011-09-27 07:01:08 +00:00
Mark Vejvoda
c68aa74fcf - more updates for headless mode (try to avoid using opengl completely), server now runs at around 20 MB RAM at game start. 2011-09-27 05:29:57 +00:00
Mark Vejvoda
ebc174be03 - cleanup some compiler warnings 2011-09-25 04:09:54 +00:00
Mark Vejvoda
ece2927350 - attempt to fix command grouping 2011-09-25 04:07:59 +00:00
Mark Vejvoda
42bbbd2e42 - trying to bugfix crashes with grouped commands 2011-09-23 18:54:35 +00:00
Mark Vejvoda
72c12a3459 - another attempt to fix command grouping bug (its now turned on be default again), please test for crashes or out of synch 2011-09-22 20:42:06 +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
15cad68faf - attempt to fix a segfault in grouped units 2011-09-09 20:30:13 +00:00
Mark Vejvoda
41dfe298d3 - re-enable grouped commands for better unit moving (was previously causing out of synch but i think it works properly now) 2011-09-09 17:49:10 +00:00
Mark Vejvoda
bb68106912 - phase 3 of cppcheck verbose fixes 2011-09-01 18:08:56 +00:00
Mark Vejvoda
57afc2d715 - phase 2 of cppcheck verbose fixes 2011-09-01 01:11:23 +00:00
Mark Vejvoda
d99a8236ae - added the ability to synch unit particles with model animation using start-time and end-time attributes 2011-08-27 06:52:17 +00:00
Mark Vejvoda
7bc9394e85 - fixed some bugs around hp regeneration and attack-boost 2011-07-22 20:06:48 +00:00
Mark Vejvoda
82a0f23487 - attempt to add hp regen to upgrades and attack-boost 2011-07-22 07:05:47 +00:00
Titus Tscharntke
6f649daa6b I hope rotated climb works now... ( angle correction is a bit smoother now ) 2011-07-17 21:47:56 +00:00
Titus Tscharntke
6437d79aa4 rotated _climb units which morph into non rotated_climb units have no more problems morphing on steep terrain 2011-07-16 17:33:48 +00:00
Titus Tscharntke
acca8c118c smoother anim for anim-progress-bound ( better but not perfect :-/ ) 2011-07-13 20:54:04 +00:00
Mark Vejvoda
bc4f33bc9a - added new cmake build option (and fixed bugs from people who added code but did not respect NON streflop define) 2011-07-13 19:57:29 +00:00
Mark Vejvoda
5400126332 - try bugfix for titi's verticle rotation
- added deep copy for child particles
2011-07-12 01:48:14 +00:00
Mark Vejvoda
44c73392ee - bugfix for attackboost, don't try to make particle on affected units if particle not defined in xml 2011-07-12 00:58:09 +00:00
Titus Tscharntke
9bc26f418d rotated_climb. For example tanks are rotated along the x- and z-axis when driving up or down a hill ... 2011-07-11 23:59:16 +00:00
Mark Vejvoda
cd0ce1d840 - bugfix for smoke particle 2011-07-08 06:36:36 +00:00
Titus Tscharntke
c21f07ec7d "anim-hp-bound" is now called "anim-progress-bound" and available for produce/morph/upgrade skills too! Deprecated "anim-hp-bound" will be dropped VERY soon! 2011-07-07 23:02:46 +00:00
Mark Vejvoda
9a6aca1bdc - remove debug info in gui 2011-07-06 22:45:44 +00:00
Mark Vejvoda
b8bd927b7b - finally fixed the unit sorting hang bug, try it tomryen 2011-07-06 06:38:56 +00:00
Mark Vejvoda
15488ddb31 - bugfixes related to attack-boost memory leaks 2011-07-06 05:16:25 +00:00
Mark Vejvoda
1fd179196c - attempt to fix hang issue reported by tomreyn 2011-07-05 18:26:09 +00:00
Mark Vejvoda
1f8d1b68eb - attempt to fix crash issue reported by tomreyn 2011-07-05 15:43:39 +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
Mark Vejvoda
a8b25cf111 - bugfix for start / stop smoke particles 2011-07-04 15:55:13 +00:00
Mark Vejvoda
14c70966b0 - bugfix for hpanim on bebuilt, to interplotate out the last reset frames 2011-07-02 21:44:29 +00:00
Titus Tscharntke
a1ab98d4b9 new param <anim-hp-bound value="true"/> for BeBuilt skill to have the animation progress bound to the HP. / fixed a nullpointer exception related to particles 2011-07-02 16:07:04 +00:00
Mark Vejvoda
f9ad27f655 - bugfix for stopping damage particles properly 2011-07-02 03:59:46 +00:00
Mark Vejvoda
8b23634332 - fixed a bug found during test related to min / map particle logic 2011-07-02 02:52:30 +00:00
Mark Vejvoda
32950a168c - more bugfixes for attack-boost 2011-07-02 00:20:28 +00:00
Mark Vejvoda
7c996e3296 - added percentage support for min / map hp on damage particles
- bugfixes for png support for pixmap3d (water textures)
2011-07-01 23:13:55 +00:00
Mark Vejvoda
850825695e - added support for min / max hp associated with damage particles 2011-07-01 21:47:54 +00:00
Mark Vejvoda
4d6f39d257 - added support for multipliers in attack-boost 2011-06-26 07:06:32 +00:00
Mark Vejvoda
a3cd886b9d - bugfix again for negative upgrade sums 2011-06-26 03:50:42 +00:00
Mark Vejvoda
4013af9447 - for multiple animations added a new xml node to tell the engine to pick a random animation ONLY x number of times (so death animation is random but not changing when completed animating):
<animation-random-cycle-maxcount value="1" />
2011-06-25 21:40:27 +00:00
Mark Vejvoda
1700cbba2d - working implementation of particles for new attack-boost xml tag 2011-06-25 20:44:46 +00:00
Mark Vejvoda
14b6f195e6 - for multiple animations, now can specify a 'preferred' animation based on the units hp using:
<animation path="models/archer_standing.g3d" fromHp="0" toHp="10" />
2011-06-25 15:30:18 +00:00
Mark Vejvoda
86743e2718 - more bugfixes for attack-boost check (and now in debug mode if unit selected show his attack-boost radius as well as the units affected) 2011-06-25 14:18:53 +00:00
Mark Vejvoda
b0f8675a65 - small bugfix for attack-boost check 2011-06-25 09:01:31 +00:00
Mark Vejvoda
c252402e71 - initial implementation of attack-boost logic (this is in progress code which is only triggered by new xml entries). Will explain later once tested. 2011-06-25 08:53:53 +00:00
Mark Vejvoda
5dda269151 - bugfix for multiple models per skilltype (let existing model finish animating before allow next random model to be selected)
- started work on a new feature called 'attack-boost' that should prove VERY INTERESTING once fully implemented (shhh its a secret)
2011-06-25 07:31:01 +00:00
Titus Tscharntke
8b9d4a662a switch for non rotatable objets in tilesets; cleaned up the way the particles were bound to tileset objects 2011-06-22 20:26:39 +00:00
Titus Tscharntke
9ce83ed21b queued commands are displayed in a better way 2011-05-01 20:19:41 +00:00
Mark Vejvoda
f71f83d2b8 - bugfix for AI repairing fixes a long standing legacy bug where the AI never repaired units with a cell map starting with a 0 at the first x,y in the cellmap (like magic faction). 2011-05-01 05:36:04 +00:00
Mark Vejvoda
700e768b0f - changed default command display text to be same as 3.4 but with support to override and show queued commands up to a max of: MaxQueuedCommandDisplayCount=x where x is max queued text to show
- added ini support on linux so it by default looks for glest.ini and glestkeys.ini in /usr/share/megaglest and /usr/local/share/megaglest first
2011-05-01 03:12:36 +00:00
Mark Vejvoda
5ef1313296 - only show queued # in text if queued commandcount > 1 2011-05-01 02:31:36 +00:00
Mark Vejvoda
d266bbb55c - changed default displayed command queue text to 3 2011-04-29 04:13:31 +00:00
Mark Vejvoda
c747a7c037 make queued commandcount configurable 2011-04-28 00:16:26 +00:00
Mark Vejvoda
0abca7fb7a - bugfixes for clicking outside of the map co-ordinates
- show up to 5 descriptions for queued items when producing
2011-04-27 22:35:45 +00:00
Mark Vejvoda
dd9b984a82 - in observer mode, show queued work for all factions
- when showing queues, now also show up to a max of 4 details for the first 4 items in the queue
2011-04-27 05:58:08 +00:00
Mark Vejvoda
89de9f4c8b - fixed to handle duplicate resources in unit requirement costs without crashing 2011-04-26 22:28:37 +00:00
Mark Vejvoda
8d3a53235a - better error message on null resource 2011-04-26 22:11:18 +00:00
Mark Vejvoda
47ef05ceed - attempt to improve pathfinder performance and lengthen max nodes to 900 2011-04-26 21:51:18 +00:00
Mark Vejvoda
cb113514e1 - limit current resource amounts to max storage allowed at game start 2011-04-25 06:39:40 +00:00
Mark Vejvoda
16ea7881ab - no longer allow killing self or team to update your skill levels 2011-04-20 16:46:47 +00:00
Mark Vejvoda
1b68053397 - attempt disabling threaded faction pathfinder precache 2011-04-18 06:51:10 +00:00
Mark Vejvoda
0a0ee9113c - found a rare case where cancelling an upgrade with multiple upgrades happening and a unit dies causes a crash 2011-04-18 05:34:31 +00:00
Mark Vejvoda
734db6c7d4 - bugfix, units can now heal self if they are capable of healing own unit type 2011-04-17 06:25:08 +00:00
Mark Vejvoda
06fb3decda - added some code for possible future use to improve pathfinder (not for this release) so disabled right now 2011-04-14 02:51:13 +00:00
Titus Tscharntke
5aa6092f1f produce commands are not ALWAYS queued! Behaviour should be like in original glest! 2011-04-08 20:25:03 +00:00
Mark Vejvoda
a48406a592 - attempt to fix bailout pathfinding logic to have better performance 2011-04-04 04:32:01 +00:00
Mark Vejvoda
678fca2aad - disable faction threads when user selects route planner pathfinder (fixes current crash) 2011-04-03 06:18:21 +00:00
Mark Vejvoda
0e9cf65e70 - more code cleanup (removal of dead code that is no longer used)
- fix the icon for wartime mechanic's heal command
2011-03-29 16:27:01 +00:00
Mark Vejvoda
c58f338d1b - clear pathfinder precache for units when they die to free memory sooner 2011-03-29 10:01:01 +00:00
Mark Vejvoda
1fc330ace3 - bugfix (And removal) for stop command and animation stopping when upgrading 2011-03-28 23:47:22 +00:00
Mark Vejvoda
56bc84923a - disabled the stopcommand throttling for now to see if performance is still ok 2011-03-28 21:10:49 +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
68f1ec06b5 - fix for harvesting workers to reset to original harvest location each time they deliver resources 2011-03-25 20:51:14 +00:00
Mark Vejvoda
90c12da33e - see if this removes the command delay when issuing commands on idle units 2011-03-25 01:50:35 +00:00
Mark Vejvoda
860777aaec - try to see if this stil lfixes performance without so much delay. 2011-03-25 01:08:34 +00:00
Mark Vejvoda
47a81f8b44 - performance improvements for units using the stop command when units are idle 2011-03-24 21:55:39 +00:00
Mark Vejvoda
6c9ba8bea4 - added more error details when some errors are generated 2011-03-22 17:55:11 +00:00
Mark Vejvoda
e3fd34c18c - attempt to make more randomized cell direction when harvesting using locations in the resource cache 2011-03-21 01:03:14 +00:00
Mark Vejvoda
bca617cf18 - bugfix for socket mutex locked when deleting socket
- added faction detail in lobby when CRC's do not match on techtree
2011-03-19 12:04:18 +00:00
Mark Vejvoda
505abbd1ec - observers now hear sounds from units of all team units in visible quad 2011-03-18 21:23:34 +00:00
Mark Vejvoda
07f56669b7 - attempt to see if threaded pathfinding will work and if it improves performance 2011-03-18 03:53:06 +00:00
Titus Tscharntke
5e844c39e4 particles for ressouces ... the gold will glow tomorrow :-D 2011-03-09 01:32:27 +00:00
Titus Tscharntke
4874d31ddd hopefully fix for tileset particle related crash in windows; particles must be removed from objects before the particle manager is cleared 2011-03-06 22:50:04 +00:00
Titus Tscharntke
273ab4c502 Option to switch on/off tileset particles 2011-03-06 13:11:22 +00:00
Titus Tscharntke
fefed3e3ce No more flickering! Thanks gonana ! ; Tilesetparticles are only rendered/calculated when visible now 2011-03-05 14:34:36 +00:00
Titus Tscharntke
792d0aa665 particles for tilesets ( too much rendered at the moment ) 2011-03-01 23:36:33 +00:00
Mark Vejvoda
c4795eb6cb - more fixing of map corner position actions causing memory access violations (this will further stabilize the code) 2011-02-25 04:15:22 +00:00
Mark Vejvoda
16c7316887 - initial attempt to enable pathfinder caching (think it might work now). Please test 2011-02-23 07:03:38 +00:00
Mark Vejvoda
2357e2cfd1 - Titi, fixed the remove object so its done in the Object destructor (using an interface) 2011-02-15 04:34:19 +00:00
Mark Vejvoda
31e722287f - bugfixes for when players disconnect, do not switch observers to AI and only show message once.
- Attempts to debug/improve network performance
2011-02-15 03:32:14 +00:00
Titus Tscharntke
a214fa87f5 clickable resources with display ; softcoder please look at unit_updater.cpp line 1032 2011-02-13 21:04:30 +00:00
Mark Vejvoda
7dcb12ff60 - some more memory cleanup 2011-02-12 09:08:50 +00:00
Mark Vejvoda
0533ce2c63 - a simple attempt to improve pathfinder performance (this needs to be tested well and can easily be disabled by setting: const bool tryLastPathCache = false;) 2011-02-11 23:32:24 +00:00
Mark Vejvoda
7cae047f15 - added more code guards around morph validation
- some render debug info
2011-02-11 04:48:17 +00:00
Titus Tscharntke
e856d5e4f0 MuwuMs changes ( spawn attack and more ) 2011-02-06 18:33:49 +00:00
Mark Vejvoda
1a3545f8ab - cleaned up compiler warnings in g3d viewer
- added a bunch of new lua commands for 'da boys' to be documented after being fully tested.
2011-01-29 12:42:18 +00:00
Mark Vejvoda
23135b5bab - when units get congested now we try to randomly pick different approaches to find resources 2011-01-28 07:17:32 +00:00
Mark Vejvoda
66261ad662 - updated line endings to unix style characters to fix Bug #3085838 2011-01-20 15:56:30 +00:00
Mark Vejvoda
c54e6dbf5d - a little bit of plumbing for VBO's for static models (currently disabled via # define)
- small small speed improvement when calculating interpolations
2011-01-18 07:52:06 +00:00
Mark Vejvoda
c51eb0a3c4 - attempt to cleanup some debug logging to see if it helps restore normal performance 2011-01-17 16:31:25 +00:00
Mark Vejvoda
a7ca23d18e - speed improvement for anti-hack checking 2011-01-15 04:13:15 +00:00
Mark Vejvoda
2ab82c9271 - added some basic protection against memory hacking tools 2011-01-14 23:51:15 +00:00
Mark Vejvoda
ccaaf5ab35 - simple attempt to avoid one small type of cheating related to resource values (please test this tomreyn) 2011-01-14 21:16:43 +00:00
Mark Vejvoda
9b275a5077 - added guard against NULL commandtype clicking in icon panel (discovered during testing) 2011-01-10 06:43:47 +00:00
Mark Vejvoda
7347dc9545 - bugfix for multi-build queued commands 2011-01-08 21:53:05 +00:00
Mark Vejvoda
ec467b6ac4 - bugfix, when a unit morphs we now add to stored resource count if the unit is of that type (used to only work when building, now works during a morph) 2011-01-07 05:15:39 +00:00
Mark Vejvoda
896b1c308c - added a backtrace for gcc compiled binary when we get a runtime error.
- added more out of synch checks and better error handling
2011-01-02 00:39:13 +00:00
Mark Vejvoda
335749a15e - updated hp regeneration method to look for negative hp regen values and if health ticks below 0 the unit dies 2010-12-28 02:17:44 +00:00
Mark Vejvoda
409c15d3f0 - more tweaking of threaded logging as well as removal of world synch logging items that are not needed 2010-12-26 01:13:04 +00:00
Mark Vejvoda
03eaa2c033 numerous important bugfixes:
- observers and end game fog of war enable would most likely cause out of synch, I think its fixed now
- better handling of threaded logging
- cleanup of socket thread processing to ensure all network packets get processed properly and in order
2010-12-24 08:43:09 +00:00
Titus Tscharntke
cfba817280 dansk language; fix for fog of war off; command queuing works a bit better ( especially when attacking ); 2010-12-23 10:44:11 +00:00
Mark Vejvoda
045c2f95e8 - added new commandline options to tell the game where to look for data, ini's and where to write logs 2010-12-09 20:41:11 +00:00
Mark Vejvoda
8deec8d518 - changed debug world synch formatting so on xplatform we don't have issues with filename and other header tag items 2010-12-01 23:38:03 +00:00
Mark Vejvoda
c55855c6f2 - bugfix for stack overflow 2010-12-01 00:05:33 +00:00
Mark Vejvoda
b02da7d1e0 - finally found and fixed out of synch related to AI.
- added ability to log all unit activity to world synch logfiles so we can diff game info from different network clients
2010-11-30 23:32:39 +00:00
Mark Vejvoda
33aac9f2ae - added useful debug info for world synch debugging (unit path and faction info) 2010-11-28 03:46:28 +00:00
Mark Vejvoda
664b2b1b7d - disabled another cache in pathfinder trying to hunt down xplatform out of synch 2010-11-28 00:07:08 +00:00
Mark Vejvoda
81d755cc83 - disabled a cache (cacheUnitCommandClassList) as we suspect this may cause crashes and is unstable 2010-11-26 00:09:54 +00:00
Mark Vejvoda
c1529fd8dc - added validation for unit's to ensure they still have the cached commandclass 2010-11-16 23:32:15 +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
ca9cbc6e75 - removed some debugging that created very large debug files and improved performance a little bit 2010-11-07 02:37:00 +00:00
Mark Vejvoda
9978cbeff5 - added some initial work to support FBO (frame buffer objects)
- added many NULL check guards throughout the code
- added a safe mutex around ptr access of background thread on custom menu
2010-11-01 16:44:05 +00:00
Mark Vejvoda
dfedf2259b - numerous bugfixes to building an d repairing units.
- added new unit cell property called allowEmpty to allow units to build other units with cellmaps that have all 0's (since you can produce these types of units anyways)
2010-10-30 08:54:00 +00:00
Mark Vejvoda
dec9dfe653 - added new attribute for tileset objects named "height". Air units will try to fly above the height of units and objects now (up to a max of terrain height + 15) 2010-10-30 04:05:48 +00:00
Mark Vejvoda
5cf0313c5a - bugfix for cancel icon displaying when unit has only the 'stop' command active 2010-10-28 18:31:12 +00:00
Mark Vejvoda
de3a92081d - a bunch of in progress work related to texture compression and more timely texture memory management cleanup. For now to test texture compression use the following ini setting: EnableTextureCompression=true 2010-10-28 00:51:25 +00:00
Mark Vejvoda
43670f76c9 - bugfix for invalid map co-ordinates when looking for resources 2010-10-26 15:25:38 +00:00
Mark Vejvoda
c47b6c676c - attempt to further improve pathfinder performance when MANY units are on the map 2010-10-26 06:43:42 +00:00
Mark Vejvoda
8bbbe403ad - more performance improvements for resource cache logic (try to avoid repetitive caching logic when it was already done once) 2010-10-25 22:02:36 +00:00
Mark Vejvoda
117521a8d4 - disabled the recently introduced pathfinding cache as its too slow and not sure that it really does any good. This should help performance to be better. 2010-10-24 06:53:30 +00:00
Mark Vejvoda
7cb1d6a5b1 - some performance improvements with the new cached resource data 2010-10-24 01:49:25 +00:00
Mark Vejvoda
e53e6b49a9 - bugfix for multiple consumable resources applying incorrectly during the update interval. (thanks silnarm) 2010-10-22 22:52:37 +00:00
Mark Vejvoda
b72124a89a - bugfix for segfault (using wrong index variables again). This time I understand what to change and what not to change :) 2010-10-22 17:29:23 +00:00
Mark Vejvoda
cf5164d5ce - bugfix for consumable resources. Now we get the total usage value BEFORE applying the consequences (thanks for finding this Zoythrus) 2010-10-22 04:16:11 +00:00
Mark Vejvoda
178809ada3 - changed resource faction cache to a map for better performance 2010-10-21 21:53:08 +00:00
Mark Vejvoda
07fe6a2196 - added to the faction resource cache pool for even better AI discovery of resources 2010-10-21 20:31:09 +00:00
Mark Vejvoda
ae367fb252 - updated to units harvesting so they try to harvest different resources when blocked if other resources are close by. 2010-10-21 19:26:14 +00:00
Mark Vejvoda
bc7ba297fd - more tweaking for units harvesting, this hopefully cleans up segfaults and makes things more stable. 2010-10-20 20:40:29 +00:00
Mark Vejvoda
6104dedc76 - added a resource harvest success cache for stuck units to look at when they cannot harvest. 2010-10-20 07:28:27 +00:00
Mark Vejvoda
913df7ec3b - added more cached information to help deal with units getting stuck while harvesting. Trying to keep them busy instead of standing around. 2010-10-19 22:26:49 +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
3d4ccb460c - added a little extra logic for units when pathfinding. We keep temporary lists of bad cells of harvest resources where a unit simply cannot get to. This is kept for small periods of time and then the bad cell list is purged when data gets old. This tremendously helps units to be more active when getting stuck in challenging places on maps. 2010-10-17 08:50:27 +00:00
Mark Vejvoda
55b4f0bd2b - Incremented version to next major release # so new work can begin.
- some initial work to assist units from getting stuck when given commands. This is for both AI and human players and deals with the pathfinder and units getting constantly blocked from their destination.
2010-10-17 06:34:42 +00:00
Mark Vejvoda
67c1c52caa - added an extra NULL check to new max unit check 2010-10-11 15:58:10 +00:00
Titus Tscharntke
59b2cdb78f max-unit-count works for buildings 2010-10-08 19:30:53 +00:00
Titus Tscharntke
88335f112b fix for the AI not respecting max-unit-count 2010-10-04 19:21:09 +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
James McCulloch
9d8bb49a1b * fix static resource production on unit morph 2010-09-25 02:23:47 +00:00
Mark Vejvoda
b836bf0039 - turned off staggered faction updates (can toggle via ini setting: StaggeredFactionUpdates)
- added more debug info for resource depletion
2010-09-17 04:00:48 +00:00
Mark Vejvoda
f84a710d2c - initial logic to allow client side controlled AI 2010-09-14 19:10:37 +00:00
Mark Vejvoda
ab88a2971a - small improvement for when units and objects are deleted. 2010-09-10 19:44:00 +00:00
Mark Vejvoda
793ac7a8cb - added a dirty cache flag when a unit dies 2010-09-10 15:51:16 +00:00
Mark Vejvoda
3f393fd37d - added a way to signal the cache is dirty for when resources are deleted. 2010-09-10 15:47:19 +00:00
Mark Vejvoda
0783b23e12 - bugfixes for rendering (new ini setting toggles new quad cache and is called: UseQuadCache=true) 2010-09-10 08:51:32 +00:00
Mark Vejvoda
2c1b6b6304 - added a caching system for rendering game entities 2010-09-10 00:28:14 +00:00
Mark Vejvoda
d806e7f9ff - a few more performance optimizations and logging changes 2010-09-09 05:42:19 +00:00
Mark Vejvoda
77eadd7710 - attempt to improve explorecells usage when each unit is signalled to move 2010-09-09 01:44:25 +00:00
Titus Tscharntke
8552f76798 renamed/fixed lua function enableHunger to enableConsume and disableAI now disables consume too ( to stay somehow compatible with the former behaviour ) 2010-09-08 19:00:22 +00:00
Mark Vejvoda
958184e018 - more memory cleanup 2010-09-07 21:01:22 +00:00
Mark Vejvoda
63cf199322 - more memory cleanup 2010-09-07 18:28:09 +00:00
Mark Vejvoda
9817e8a860 - memory leak fixes 2010-09-07 17:30:13 +00:00
Mark Vejvoda
ab44c83168 - added leak_dumper header all over the place (not yet functional in linux)
- Bugfix for particle cleanup
2010-09-07 05:25:40 +00:00
Mark Vejvoda
ca30612c9c - attempt to cleanup particles when a unit is deleted 2010-09-06 17:52:33 +00:00
Mark Vejvoda
21ded6679f - some code cleanup for multi-build debug 2010-09-01 04:42:10 +00:00
Mark Vejvoda
ca49e0ba68 - attempt to fix multi-build 2010-08-31 23:14:15 +00:00
Mark Vejvoda
e32eb9c162 - modified command object to support special states which flow through network play as well. This allows for better handling of multi-unit build and allows for better future expanding of command processing. 2010-08-30 20:45:12 +00:00
Mark Vejvoda
dc5bf0f850 - bugfix for AI not losing HP when food is out
- added new LUA commands (for Tiger):
giveAttackCommand
disableAi
enableAi
disableHunger
enableHunger
2010-08-28 08:06:32 +00:00
Mark Vejvoda
2ea8b69e22 - first attempt at allowing multiple units to build at the same time 2010-08-28 01:46:26 +00:00
Mark Vejvoda
855443d98f - added a lookup cache for unit updater's frequently called unitOnRange logic 2010-08-25 07:29:35 +00:00
Mark Vejvoda
65cf1bfdac - attempt to lessen memory footprint of particles and speed up rendering 2010-08-24 01:21:34 +00:00
Titus Tscharntke
8e281e2faf new attribute MaxUnitCount in units and yellow select circle for allies 2010-08-22 21:09:35 +00:00
Mark Vejvoda
f43fffc083 - added more debug for game end crash 2010-08-10 22:46:08 +00:00
Mark Vejvoda
fe8d3b3130 - numerous bugfixes mostly centered around network lag, but also added more logging and protective code (like buffer overflow checks)
*NOTE: This version is NOT backwards compatible with other builds
2010-08-07 03:26:38 +00:00
Mark Vejvoda
c63283ffac - another attempt to fix game end crash for ultifd 2010-08-04 16:56:24 +00:00
Mark Vejvoda
ff586afd0d - some final updates to get the new pathfinder working after adding multi-pathing support 2010-07-21 22:05:50 +00:00
Mark Vejvoda
74b6fc8139 - some code cleanup related to supporting multiple path finders 2010-07-21 19:17:45 +00:00
Mark Vejvoda
bca03b0c0c - initial changes to support multiple path finders 2010-07-21 18:21:40 +00:00