Commit Graph

1795 Commits

Author SHA1 Message Date
Steffen Mecke ad74c0a25d fix rare bug that created negative peasants
when a region had non-standard wage, immigration could cause negative peasants
2015-12-08 17:57:23 +01:00
Steffen Mecke 1f4c521ac8 encapsulate r->land->peasants, money, horses, herbs, morale 2015-12-08 17:57:23 +01:00
Steffen Mecke 723c3df7b2 test for immigration 2015-12-08 17:57:23 +01:00
Steffen Mecke 703edb676c facility to inject a non-random random generator
This should be handy for writing tests that make use of randomization.
2015-12-08 17:57:23 +01:00
Enno Rehling 1a9e3db423 Merge branch 'master' into develop
Conflicts:
	src/buildno.h
2015-12-06 20:51:14 +01:00
Enno Rehling 44024878f9 Merge branch 'master' of github.com:eressea/server 2015-12-06 20:50:06 +01:00
Enno Rehling 9b7d4adda5 https://bugs.eressea.de/view.php?id=2173#c6397
by request: magic resistance never higher than 90%, so highly skilled monsters cannot become completely invincible to magic.
2015-12-06 20:48:22 +01:00
Enno Rehling acf3aaad5a release version 3.7.5 2015-12-06 18:44:31 +01:00
Enno Rehling 1075b7ce17 Merge branch 'master' into develop 2015-12-06 18:39:54 +01:00
Enno Rehling d04d8e782e https://bugs.eressea.de/view.php?id=2173
rewrite the rules for magical damage reduction
2015-12-06 18:34:31 +01:00
Enno Rehling b854213be6 Merge pull request #429 from ennorehling/develop
break_curse spell description error message
2015-12-06 16:53:04 +01:00
Enno Rehling 6a20345b53 issue #428, fix writing spell description for break_curse 2015-12-06 16:45:31 +01:00
Enno Rehling 65902ca97f do not call a function test_* that is not a test (I got confused and broke it when trying to make a change) 2015-12-06 12:02:16 +01:00
Steffen Mecke 864c875316 fix typo: fiery breath was icy 2015-12-05 22:27:03 +01:00
Enno Rehling 435d801239 fix compiation problems after merge
what is going on with this? why was critbit outdated?
2015-12-05 18:45:03 +01:00
Enno Rehling 1d57bf527d Merge branch 'master' into develop
Conflicts:
	src/battle.test.c
	src/buildno.h
2015-12-05 17:27:04 +01:00
Enno Rehling bf2920d1ae fix warnings on gcc 2015-12-05 17:25:47 +01:00
Enno Rehling 62ee1468b8 https://bugs.eressea.de/view.php?id=2166
* fix magic resistance calculation in calculate_armor.
* add related tests.
* refactor BF_CANATTACK -> BF_NO_ATTACK because it is easier.
2015-12-05 17:17:21 +01:00
Enno Rehling 3e048e2a84 Merge branch 'bug_2139' of https://github.com/stm2/server into stm2-bug_2139
Conflicts:
	scripts/tests/e3/castles.lua
	scripts/tests/e3/rules.lua
2015-12-03 11:06:55 +01:00
Enno Rehling b3e7fa63e0 Merge pull request #396 from stm2/spell_parameters
fixed treatment of spell parameters (bug 1867)
2015-12-03 11:04:57 +01:00
Enno Rehling e91310f576 Merge pull request #422 from ennorehling/feature/issue-418-seaserpent-piracy-crash
issue #419, eliminate language_struct.h, make the struct module-private
2015-12-02 11:52:16 +01:00
Steffen Mecke e3d7d23d00 re-enable sea serpent piracy 2015-12-01 22:30:51 +01:00
Steffen Mecke 9c076ba6b9 fix piracy_cmd for swimmers and flyers 2015-12-01 22:13:20 +01:00
Enno Rehling 9b645bf46c issue #419, eliminate language_struct.h, make the struct module-private 2015-12-01 12:24:22 +01:00
Enno Rehling 70354a355b disable piracy for sea serpents, piracy_cmd cannot handle it (issue #418) 2015-12-01 12:22:03 +01:00
Steffen Mecke eae87bc7f1 fix null pointer access, bug2169 2015-11-29 21:06:35 +01:00
Enno Rehling 4b7cb824bd Merge branch 'massive_overload' of https://github.com/stm2/server into stm2-massive_overload
Conflicts:
	src/move.c
	src/tests.c
2015-11-27 12:40:17 +01:00
Enno Rehling 950bf91850 fix merge conflict in PR #397 (config changes) 2015-11-26 18:48:21 +01:00
Enno Rehling 6ad5db8e22 Merge pull request #397 from stm2/taxing_message
taxing without skill does not fail silently any more
2015-11-26 18:43:57 +01:00
Enno Rehling 0410581907 Merge branch 'market_tests' of https://github.com/stm2/server into stm2-market_tests
Conflicts:
	src/move.test.c
	src/study.c
2015-11-26 18:42:23 +01:00
Steffen Mecke fe49f01bb6 added moa tests for buildingtype_exists 2015-11-25 23:25:59 +01:00
Enno Rehling 6c2f4be4af fix sea serpents using piracy (by re-ordering the decision making process) 2015-11-25 15:29:26 +01:00
Enno Rehling 90b0bdd44e re-enable all monster tests except piracy for seaserpents, which is red. 2015-11-25 14:53:29 +01:00
Enno Rehling 1cf805649e Merge remote-tracking branch 'upstream/develop' into develop
Conflicts:
	src/monsters.c
	src/monsters.test.c
2015-11-25 14:38:26 +01:00
Enno Rehling c85e489f4f Merge branch 'monster_leftovers' of https://github.com/stm2/server into stm2-monster_leftovers
Conflicts:
	src/kernel/unit.c
	src/laws.test.c
	src/monsters.c
2015-11-25 14:25:42 +01:00
Enno Rehling b6bb5dee85 fix last merge to work with new config code 2015-11-25 13:27:44 +01:00
Enno Rehling 677f7eac0a Merge branch 'master' into develop
Conflicts:
	src/move.c
2015-11-25 13:25:36 +01:00
Enno Rehling 4e4a11d40c Merge remote-tracking branch 'upstream/master' 2015-11-25 12:06:22 +01:00
Enno Rehling f301bec623 addressing comments by solthar on bug 2164, PR #408: storms should still cause damage to ships.
cleaning up some configuration lookups in sail, moving them outside of loops.
2015-11-25 12:04:09 +01:00
Enno Rehling f559c263e3 cleanup of config.c: move more code to other modules like unit.c and faction.c 2015-11-24 19:53:27 +01:00
Enno Rehling 8aa7fec54c config.c cleanup: move attribute registration to attributes.c 2015-11-24 19:32:52 +01:00
Enno Rehling 84a943b698 fix gcc build 2015-11-24 19:15:53 +01:00
Enno Rehling 64b84481b2 refactoring: move parsing and allies code out of config.c 2015-11-24 18:52:09 +01:00
Enno Rehling bdc5372537 disable test for seaserpent piracy (planned for 3.8) 2015-11-24 16:12:33 +01:00
Enno Rehling 1b3c8ea466 import monsters tests from PR #404
Monsters (i.e. sea serpents) can attack on oceans, when not guarding
2015-11-24 14:57:50 +01:00
Enno Rehling 817d81dbf9 remove the rules.hunger.reduces_skill variable, no game was doing anything other than the default. 2015-11-23 21:05:25 +01:00
Enno Rehling 0a47f0e398 eliminate SkillCap feature, it was stupid and not used by any game, ever 2015-11-23 20:58:51 +01:00
Enno Rehling 2a9dee4134 Merge branch 'master' into develop
Conflicts:
	src/move.c
2015-11-23 20:33:47 +01:00
Enno Rehling d45f16982d https://bugs.eressea.de/view.php?id=2164
ships no longer receive damage from drifting. eliminating the code for this, instead of just the configuration parameters, since all active games now agree on this rule.
2015-11-23 18:41:11 +01:00
Enno Rehling 5b9333f6d9 Merge branch 'release-3.7' into develop
Conflicts:
	src/buildno.h
	src/monsters.c
2015-11-23 17:12:48 +01:00
Enno Rehling 1ed0eaf473 release version 3.7.3 2015-11-23 17:10:49 +01:00
Enno Rehling 0e5fcbbc7c Merge pull request #407 from ennorehling/release-3.7
bugfixes 2163, 2164 and 2165
2015-11-23 17:07:11 +01:00
Enno Rehling 4b7b32cbb5 use monster_attack, not explicit create_order, because we need to check buildings, etc. 2015-11-23 17:00:07 +01:00
Enno Rehling defd870cd1 https://bugs.eressea.de/view.php?id=2163
Fix order of Arguments when checking for defensive building.
Solthar reminds us that good variable names are good.
2015-11-23 16:48:05 +01:00
Enno Rehling b6a947ca0c https://bugs.eressea.de/view.php?id=2165
Monster bewachten nicht, wenn sie nicht ausreichend bewaffnet waren, weil der nötige Check nicht in can_start_guarding gemacht wurde, sondern in guard_on_cmd.
2015-11-23 15:35:26 +01:00
Enno Rehling c7ab0e8f59 fix https://bugs.eressea.de/view.php?id=2164 (ships get no damage when they drift).
simplify attack_chance configuration, set it only once.
this way, I can more easily fudge it to 1.0 in the debugger.
2015-11-23 12:37:42 +01:00
Enno Rehling dcfc1d1f15 Merge pull request #406 from ennorehling/critbit-params
config_get/config_set refactoring, kill cache logic
2015-11-23 12:25:16 +01:00
Enno Rehling 48c75466b6 kill static caches for floating-point variables 2015-11-22 17:32:35 +01:00
Enno Rehling 2e392b4d7c eliminate even more static variable caches 2015-11-22 16:14:27 +01:00
Enno Rehling f7698d92a9 change how migrant quota is configured for a race, eliminate the related rule caching 2015-11-22 15:53:50 +01:00
Enno Rehling 5f457f77b4 refactoring: move those count_* functions out of config.c 2015-11-22 15:46:14 +01:00
Enno Rehling 3bd458b5e8 optimization: read configuration once before all battles, not before or during each individual one. 2015-11-22 15:29:43 +01:00
Enno Rehling 7bbf11c6b6 eliminate more static cached configuration values 2015-11-22 15:14:50 +01:00
Enno Rehling 17068af332 unusual potion delay attribute can use a potion in another region? unclear what this code does, but fixing my bad assumption. 2015-11-22 14:36:05 +01:00
Enno Rehling c6bac1e49e refactoring: sprout methods for all special-action potions
remove static caches for WOL configuration
2015-11-22 14:28:15 +01:00
Enno Rehling 35e7a0bc79 eliminate global.cookie and the cache-invalidation which it enabled 2015-11-22 12:50:10 +01:00
Enno Rehling 73fc5a51b3 remove more junk defines from config.h, move them closer to where they belong 2015-11-22 12:47:57 +01:00
Enno Rehling bf74eb1446 cleanup: remove movement constatns from config.h 2015-11-22 12:41:22 +01:00
Enno Rehling cf6084a5ca refactoring: move game configuration defines out of config.h
temporarily pushing them into settings.h where others already are, though they should be in their own modules or in config files.
2015-11-22 12:37:25 +01:00
Enno Rehling 74b1f9872e change visibility of configuration data structures, local to config.c only 2015-11-22 12:27:08 +01:00
Enno Rehling fe173e9551 refactor: make sure global.paramteres is used only inside config.c 2015-11-22 12:24:27 +01:00
Enno Rehling edcd79d044 add a config_token function to look for a token inside a list 2015-11-22 12:20:33 +01:00
Enno Rehling a4cb5e2906 replace all get_param_* for global.parameters with config_get_* 2015-11-22 10:44:46 +01:00
Enno Rehling b05fe9316a introducing config_set and config_get so we don't have to refer to globals.parameters everywhere 2015-11-22 10:33:31 +01:00
Enno Rehling 66dd1b8172 remove produce_exp caching in static variables (more slowdown) 2015-11-22 10:21:37 +01:00
Enno Rehling f0a47321d6 reduce log spam 2015-11-21 21:49:33 +01:00
Enno Rehling 6b83120c7a remove caching from is_guarded, which should slow it down significantly :-( 2015-11-21 21:33:17 +01:00
Enno Rehling 7dae5aa035 eliminate silly caching logic from natural armor calculation 2015-11-21 19:02:14 +01:00
Enno Rehling 990fda6234 clean up config.c, remove static configuration caching 2015-11-21 18:13:16 +01:00
Enno Rehling bc936bf019 eliminate more static variable configuration caching 2015-11-21 13:52:47 +01:00
Enno Rehling 7e27928d17 eliminate static variables and cache logic from more modules 2015-11-21 12:28:20 +01:00
Enno Rehling 86faae6eea eliminate static variables and cache logic from upkeep 2015-11-21 12:21:07 +01:00
Enno Rehling 0d91a7dfde eliminate static variables and cache logic 2015-11-21 12:18:38 +01:00
Enno Rehling 06f8ba9ee4 faster lookup for get_param with tries
eliminate unnecessary constatn from rand.c
2015-11-20 15:48:17 +01:00
Steffen Mecke ae870ff53e fix division by zero 2015-11-19 16:46:46 +01:00
Steffen Mecke afd44fc50a fix test interdependence; set silver weight to 1 2015-11-19 15:29:04 +01:00
Steffen Mecke a6757ecf9d Merge branch 'develop' into massive_overload
Conflicts:
	src/move.test.c
2015-11-19 14:54:14 +01:00
Steffen Mecke 92ee0f24a4 tweaked parameters for massive overload
so ... many ... configuration parameters
scrubbed lua test
2015-11-19 12:36:15 +01:00
Enno Rehling 0363938db0 Merge pull request #402 from stm2/follow_message
error msg for movement should contain FOLLOW SHIP order
2015-11-17 17:42:45 +01:00
Steffen Mecke acb45e079d test commit for travis 2015-11-17 17:34:03 +01:00
Steffen Mecke 8a063c3567 fix bug in dragon_affinity 2015-11-17 17:19:06 +01:00
Steffen Mecke a7a82662b7 reduce maximum overload damage to 38% 2015-11-17 15:47:43 +01:00
Steffen Mecke 742a30cc39 fix seaserpents
seaserpents could not do piracy
seaserpents should be able to attack after move
2015-11-17 12:17:28 +01:00
Steffen Mecke 2a569635df seaserpent test 2015-11-17 12:13:23 +01:00
Steffen Mecke a144686e66 monsters may attack on ocean 2015-11-17 12:13:23 +01:00
Steffen Mecke a366cd4b17 tests for plan_monster 2015-11-17 12:12:06 +01:00
Steffen Mecke 384a2ea7d7 remove duplicate monster_attacks code 2015-11-17 02:16:07 +01:00
Steffen Mecke 069303d0ae slightly improved monster code
change normalvariate to more efficient dice based method
try harder to learn a useful skill
2015-11-17 02:14:28 +01:00
Steffen Mecke 8cec4b20e0 reduce code obfuscation 2015-11-17 02:14:08 +01:00
Steffen Mecke 1789bc06e9 monster faction may learn from experience 2015-11-17 02:13:57 +01:00
Enno Rehling efc87a16e3 clarify dragon planning code (bug 2159) 2015-11-16 16:57:51 +01:00
Steffen Mecke b34fca4633 hopefully fixing travis build (thanks, valgrind) 2015-11-16 14:40:18 +01:00
Enno Rehling 8e4b9283a3 release version 3.7.2 2015-11-16 14:34:30 +01:00
Enno Rehling 6237e6dfe2 Merge branch 'release-3.7' into develop 2015-11-16 14:30:31 +01:00
Enno Rehling bf969879cd release version 3.7.1 2015-11-16 14:28:47 +01:00
Enno Rehling d07f359acb fix a minor warning, get ready for 3.7 release 2015-11-16 14:12:51 +01:00
Steffen Mecke 4fdb9e86e7 test for follow ship error msg 2015-11-16 12:51:34 +01:00
Steffen Mecke a6fe494ff4 error msg for movement should contain FOLLOW SHIP order
http://bugs.eressea.de/view.php?id=2161
2015-11-16 12:47:20 +01:00
Steffen Mecke 5326bbd9e4 refactored inside_building/building_is_active/active_building 2015-11-16 02:13:48 +01:00
Steffen Mecke dcca3f1424 test and fix for market operation, bug2083
http://bugs.eressea.de/view.php?id=2083
2015-11-16 01:13:01 +01:00
Steffen Mecke 3a18384ddb overfull ships do not drift but take damage
http://bugs.eressea.de/view.php?id=2157
removed exploit:
ships more than 2 times over their ship type's capacity do not drift but take 30% to 100% damage
2015-11-15 12:43:05 +01:00
Steffen Mecke 01f4ebd4ce test for fixed value instead of range 2015-11-14 17:14:38 +01:00
Steffen Mecke 493b45c832 taxing without skill does not fail silently any more
http://bugs.eressea.de/view.php?id=2158
added configuration parameter for tax per level
2015-11-14 15:36:14 +01:00
Steffen Mecke f9c2994de1 fixing memory bug 2015-11-13 15:52:32 +01:00
Steffen Mecke 477d69152f added tests for all kinds of syntax parameters 2015-11-13 00:57:14 +01:00
Steffen Mecke 4ab92e3caf fixed descriptions of spells with parameters (bug #2060+1867) 2015-11-13 00:57:14 +01:00
Steffen Mecke f3972a2390 prepared test for nr_spell 2015-11-13 00:57:14 +01:00
Steffen Mecke 251126054e add missing NULL check to in_safe_building 2015-11-13 00:50:54 +01:00
Enno Rehling 5ef9b624ff Merge branch 'release-3.7' into develop 2015-11-12 18:11:21 +01:00
Enno Rehling 7fb5adc7af in_safe_building needs a test and some changes to logic
github issue #393 fixed
2015-11-12 17:55:39 +01:00
Steffen Mecke e2b56cd04a fix morale change when region owner changes
http://bugs.eressea.de/view.php?id=2139
2015-11-12 16:09:26 +01:00
Enno Rehling c5965fcd59 CID 22455 Logically dead code
github issue #359
2015-11-11 16:00:07 +01:00
Enno Rehling 972b8cee40 CID 22436 Ignoring number of bytes read
github issue #333
2015-11-11 15:55:39 +01:00
Enno Rehling 1949e8710d CID 22536: Resource leak (RESOURCE_LEAK)
github issue #388
2015-11-11 15:51:48 +01:00
Enno Rehling fc73da4ae4 CID 22484 Explicit null dereferenced
github issue #386
2015-11-11 15:48:11 +01:00
Enno Rehling 3cd47bb8fa CID 22503 Negative array index write
github issue #387
I was pretty sure I had submitted this before. What is going on?
2015-11-11 15:48:09 +01:00
Enno Rehling f69311b141 Merge branch 'develop' of github.com:eressea/server into develop 2015-11-11 15:15:30 +01:00
Enno Rehling d11f8ead56 Merge branch 'release-3.7' into develop
Conflicts:
	src/buildno.h
2015-11-11 15:15:08 +01:00
Enno Rehling 4eb4ff40ac https://bugs.eressea.de/view.php?id=2155
monsters do not attack units inside a castle or watch
dragons do not attack guards
2015-11-11 14:36:56 +01:00
Enno Rehling 34c9958368 CID 22584 Result is not floating-point
github issue #326
chance of morale loss is 20-100 percent depending on loss of silver
2015-11-10 10:44:17 +01:00
Enno Rehling edb862a8fc CID 22461 Division or modulo by zero
partial fix github issue #326
also fewer calls to rmoney
2015-11-09 20:10:02 +01:00
Enno Rehling e14cc50252 CID 22522, 22520 Resource leak
helping coverity scan to understand this code
2015-11-09 20:05:55 +01:00
Enno Rehling 66e43caf9d CID 32303 Unchecked return value
appeasing coverity
2015-11-09 20:03:38 +01:00
Enno Rehling 32c777d428 add missing test file, try again 2015-11-09 19:46:01 +01:00
Enno Rehling ea8721367a test and fix shock trigger.
https://bugs.eressea.de/view.php?id=2154
2015-11-09 19:43:51 +01:00
Enno Rehling fed660987a CID 22519 et al (resource leaks)
make the failure case for get_spellbook a little slower, but make static analysis happy.
2015-11-09 19:16:20 +01:00
Enno Rehling 9ff6aa0d42 CID 22472 Division or modulo by zero
CID 22471 Division or modulo by zero
github issue #350
github issue #349
2015-11-09 18:06:11 +01:00
Enno Rehling 2e7a1a3ded CID 32208 Time of check time of use 2015-11-09 18:03:19 +01:00
Enno Rehling 4477785da0 first release candidate 2015-11-09 17:08:41 +01:00
Enno Rehling 82994e5fd1 version number increase for planned february release 2015-11-09 17:04:50 +01:00
Enno Rehling 28781dfcc8 Merge pull request #378 from ennorehling/develop
spells are allowed to have 0 hp
2015-11-09 16:45:08 +01:00
Enno Rehling 4790950daf spells are allowed to have 0 hp
https://bugs.eressea.de/view.php?id=2150
2015-11-09 16:39:30 +01:00
Enno Rehling e9ed30f9db Merge pull request #377 from ennorehling/develop
Bug 2152: Parteitarnung
2015-11-09 16:30:57 +01:00
Enno Rehling 6d0bcb246d fix compilation and setting parameters to null 2015-11-09 13:55:09 +01:00
Enno Rehling 2aafa2b54f missing test file 2015-11-09 13:41:53 +01:00
Enno Rehling ee02721c21 fix and tests for otherfaction attributes in E2
https://bugs.eressea.de/view.php?id=2152
2015-11-09 13:36:52 +01:00
Enno Rehling bf8cc4cb08 trying to trace down an intermittently failing test on windows 2015-11-08 10:34:43 +01:00
Enno Rehling 318820fb00 eliminate use of test_create_world 2015-11-07 23:49:45 +01:00
Enno Rehling 43ab9e3304 Merge pull request #372 from TurnerSE/bug/#1859
Scheint ja zu funktionieren? Wenn etwas anderes kaputt geht, dann hat das nicht genug Tests, das ist auch eine Lehre. Und noch ist ja Zeit zum Release, um das zu merken.
2015-11-07 19:21:16 +01:00
Enno Rehling 9f94979b0d Merge branch 'bug/#2144' of https://github.com/TurnerSE/server into TurnerSE-bug/#2144 2015-11-07 18:53:19 +01:00