Commit Graph

462 Commits

Author SHA1 Message Date
Mark Vejvoda
9f0546c008 - set correct exit codes (for tomreyn)
- fix loading when too many units on map (do not segfault)
- deprecate ThreadedNetworkClient setting
2012-07-17 23:04:30 +00:00
Titus Tscharntke
e311c439f6 sound is no more switched on when switching factions ( not a 100% fix but I think good enough ) 2012-07-15 19:45:55 +00:00
Mark Vejvoda
d9e2a64bb3 *NOTE: This is not backwards compatible with previous builds
- disable the alpha fog of war cache as it takes too much RAM (not sure if it really improves performance that much)
- inline some common functions for speed
2012-07-03 19:31:52 +00:00
Mark Vejvoda
0f5cb29919 - build silhouette now uses team colour and you see all team players building placement
- improve performance when rending cell markers
2012-06-22 13:30:15 +00:00
Mark Vejvoda
acc2a5f9c9 - show light green with alpha silhouette of building when unit is moving to a location to build another unit 2012-06-22 04:58:44 +00:00
Titus Tscharntke
ca39f8c6b1 new try with changed fighting behaviour of ultra and mega;
fix for "*" in chat
2012-06-04 21:53:20 +00:00
Titus Tscharntke
3f604ae359 I give up on this :( . Softcoder must help me here I don't understand whats going on. We still see out of syncs if this is commented in. 2012-05-31 21:54:00 +00:00
Titus Tscharntke
d6f04c66e0 ctNetworkCpuUltra was the problem ... 2012-05-31 20:59:04 +00:00
Titus Tscharntke
4a70d090a8 commented out all my last changes to hunt down out of sync 2012-05-30 23:17:17 +00:00
Titus Tscharntke
1595eb3043 Skill can be NULL .... 2012-05-30 22:26:55 +00:00
Titus Tscharntke
b8401bf208 Making it a bit random if standing or runnning units are attacked by Ultra/Mega CPUs 2012-05-30 21:53:41 +00:00
Titus Tscharntke
00b1bea1ac CPU-Ultra and Mega attack standing units in attack range first now. Lets see if this is good ... 2012-05-30 20:35:27 +00:00
Mark Vejvoda
8fd436b612 - added new lua method to play video's in scenarios:
playStaticVideo
2012-05-22 06:17:56 +00:00
Mark Vejvoda
0f25276e6f - applied patch from MuwuM 2012-05-21 20:15:37 +00:00
Mark Vejvoda
e2844938b7 - updated to not segfault when loading a saved game and tileset is not found 2012-05-11 19:52:34 +00:00
Mark Vejvoda
bf3e5a15bf - modders can now override land and air field names using lng specific files for a tileset (follows same principle as techtree lng files). Currently supported translatable strings:
FieldLandName=Land
FieldAirName=Air
2012-05-11 05:49:47 +00:00
Mark Vejvoda
2d6cda1f6f - more pathfinder tweaks to try improve performance 2012-05-09 23:56:14 +00:00
Mark Vejvoda
1b2b1f9821 - improved the new pathfinder using hashmap 2012-05-05 06:23:09 +00:00
Mark Vejvoda
f79222defa - more pathfinder in progress changes, nothing to test yet 2012-05-05 04:38:49 +00:00
Mark Vejvoda
3ff0796bec - some in progress pathfinder work 2012-05-04 21:03:52 +00:00
Mark Vejvoda
771ff91c1c - added a new pathfinder to test to see if it performs better than the old one 2012-05-04 14:57:59 +00:00
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
6e7d4aeec5 - speed up some heavily used functions 2012-04-17 07:51:45 +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
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
Mark Vejvoda
d16396db0a - more save / loadgame bugfixes 2012-04-02 15:17:31 +00:00
Mark Vejvoda
fce4d55dd5 - better error handling, try to display proper error message and restore state as best as possible 2012-04-02 01:45:13 +00:00
Mark Vejvoda
3d386936dc - updated loading games to translate tutorials and scenario paths 2012-03-31 20:58:33 +00:00
Mark Vejvoda
152e83399d - added a new lua method isUnitAlive(unitId) 2012-03-31 20:17:19 +00:00
Titus Tscharntke
0c16882d0a fix for "The last wave"-problem in amazon(light) scenario 2012-03-31 20:02:49 +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
Titus Tscharntke
45ff24dbd7 new switch "count-kill-for-unit-upgrade" if a unit has set this switch to false , killing it does not count up the number of kills of the attacking unit. 2012-03-31 10:14:42 +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
c02c90427b - added some more lua commands:
vector<int> getUnitsForFaction(factionIndex,commandTypeName, field)
int getUnitCurrentField(unitId)
2012-03-30 07:10:14 +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
Titus Tscharntke
7cdf6eedd3 Map heightFactors above 100 are handled like heightFactor=heightFactor/100. By this you can have an effective heightFactor of 1.5 for a map now if you enter 150 in the map editor. 2012-03-29 20:18:20 +00:00
Mark Vejvoda
433f4e84ce - a few more fixes found using cppcheck 2012-03-28 06:34:34 +00:00
Mark Vejvoda
9286130138 - bugfixes and code cleanup found using cppcheck 2012-03-28 06:25:57 +00:00
Mark Vejvoda
bf3fbf5e71 - ensure that new check for ignore resource morph does not result in an invalid command type pointer. 2012-03-27 20:13:08 +00:00
Mark Vejvoda
12fdf262da - bugfix for passing commandtype 2012-03-27 19:53:43 +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
4f1bee5aea - attempt to save and load scenario info in saved games 2012-03-26 06:48:58 +00:00
Mark Vejvoda
d502e95d9f - bugfix for saving / loading cell info, fixes the resource explored bug 2012-03-20 07:14:50 +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
ecbd2fe06d - fix terrain loading 2012-03-18 06:59:43 +00:00
Mark Vejvoda
62254685d5 - fixed saved / load game to restore terrain 2012-03-17 20:59:03 +00:00
Mark Vejvoda
8860fd0dc8 - fix saved games in headless server mode 2012-03-14 23:25:47 +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
3926a34ef4 - missed another bad index 2012-03-13 22:28:36 +00:00
Mark Vejvoda
a67a3776af - fixed conflicting loop index variable names in map 2012-03-13 22:27:34 +00:00
Mark Vejvoda
9a1b4cf680 - small fix for map state 2012-03-13 22:23:42 +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
82cd1d3e9c - restore timeflow and gamecamera on load game 2012-03-12 23:40:54 +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
9d6607a051 - added new lua method so users can create units without spacing rules:
createUnitNoSpacing
2012-02-21 21:56:20 +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
Titus Tscharntke
9f703f2303 faction links, modders can include factions from other techtrees if techtree.xmls are compatible.
( Still problems with CRC-calculation and download in Multiplayer for those linked factions )
2012-01-17 01:34:50 +00:00
Titus Tscharntke
e05984d527 - daylight effects for unit particles ( best use with mode "black" )
- meadow has good looking mist in night now
- startdelay for particles
2012-01-07 20:24:54 +00:00
Mark Vejvoda
e351def1cb - added new lua function to display playername:
getPlayerName(i)
2012-01-05 00:45:17 +00:00
Mark Vejvoda
6f924b310d - added new lua method to get system macro values:
dofile(getSystemMacroValue("$SCENARIO_PATH") .. "unit.ai.class.lua")
2012-01-05 00:04:55 +00:00
Mark Vejvoda
ec2f889a76 - scenario pause command should work in network mode 2011-12-28 07:26:16 +00:00
Mark Vejvoda
61bebd6b86 - numerous fixed for network scenario handling 2011-12-28 04:46:36 +00:00
Mark Vejvoda
0338841689 - initial code to try out network based scenarios (not yet implemented for masterserver) 2011-12-26 06:29:14 +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
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
Mark Vejvoda
cfe01253b9 fixed ambient sounds when rain is disabled. 2011-11-28 06:38:07 +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
f626ebbe45 - attempt to fix lua code to properly get unit's killer:
lastDeadUnitKillerName
lastDeadUnitKiller
2011-11-18 15:43:05 +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
b2adc16ca6 - added Muwums lua function 2011-11-15 17:39:49 +00:00
Titus Tscharntke
cbdde66999 we dont need to be too picky with translations which are mainly meant for logfiles 2011-11-04 01:12:05 +00:00
Mark Vejvoda
30e1f45cc7 - intro is now fully translatable and configurable (see english.lng file at the bottom for intro strings)
- added game loading text strings to language file
- ONLY load the font type we are using
2011-11-02 17:17:28 +00:00
Mark Vejvoda
b5d4867316 added one too many invalid position messages to console 2011-10-28 22:28:24 +00:00
Mark Vejvoda
9ffad02f8f - bugfix for detecting if one unit is next to another
- now repair command does NOT require a move skill. If a move skill is not defined then the repairer must be beside the unit he will repair or they get an invalid position console message
2011-10-28 05:22:41 +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
f8da775fe0 - fixed issue raised by Ishmaru when unit is holding position and we run out of ep, re-queue another hold position command (unless the stop skill takes ep as well then it cancels) 2011-10-12 04:40:48 +00:00
Mark Vejvoda
762699ef88 - bugfixes for passing from one scenario into another when keeping faction state 2011-10-07 03:25:17 +00:00
Mark Vejvoda
a7cfcc1d99 - added special placement code when carrying over units from one scenario to another 2011-10-06 22:19:58 +00:00
Mark Vejvoda
b126768d9c - updated scenario lua function to allow carry over of factions or not 2011-10-06 20:44:55 +00:00
Mark Vejvoda
2d42f59fe1 - added a new lua function to allow loading a new scenario from inside an existing scenario
loadScenario('capture_the_flag2')
2011-10-06 18:04:59 +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
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
048f97e698 - initial attempt to add jump point symetry to astar pathfinding (please test) 2011-09-26 23:55:18 +00:00
Mark Vejvoda
ece2927350 - attempt to fix command grouping 2011-09-25 04:07:59 +00:00
Mark Vejvoda
9268e3f5a7 - attempt to fix tomreyns segfault bug (mutex protection around cache) 2011-09-24 22:17:48 +00:00
Mark Vejvoda
37fd0d6c71 - disable grouped commands by default until i track the segfault 2011-09-23 19:19:09 +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