Commit Graph

1190 Commits

Author SHA1 Message Date
Enno Rehling 98a3b31953 cfindhash is gone 2016-03-25 21:51:49 +01:00
Enno Rehling 87b09cd3c6 refactor tests to use test locale where possible 2016-03-24 13:01:47 +01:00
Enno Rehling aba0be505e refactor many tests to use the test locale instead of building their own 2016-03-24 13:01:47 +01:00
Enno Rehling f97b6c9821 bug: learn_skill was not learning the right skill
refactor: further reduce learn_skill_depr usage
2016-03-24 13:01:42 +01:00
Enno Rehling 0464fb629a remove some dead declarations 2016-03-24 13:01:41 +01:00
Enno Rehling c91da12883 refactor demon_skillchange to use learn_skill
Also extracting it into the study module. No idea yet how I am going to sense this for a test, so the test currently does nothing.
2016-03-24 12:59:50 +01:00
Enno Rehling cae966f4fe nextborder wurde nicht gelesen, wird aber gebraucht 2016-03-13 09:49:04 +01:00
Enno Rehling 637054bc22 memory leak: clean up mstream after test 2016-03-11 11:33:45 +01:00
Enno Rehling b81f9db074 memory leak: free race->parameters 2016-03-11 11:31:05 +01:00
Enno Rehling c9e524d161 memory leak: test_group_readwrite leaks an attrib
- groups were not clearing attribs when they were destroyed.
- new critbit module fixes leak in cb_erase
2016-03-10 22:30:19 +01:00
Enno Rehling 7e98384542 fix some memory leaks
- t_free does not free
- free_factions frees the wrong list
- cleanup after attrib test
2016-03-10 13:27:08 +01:00
Enno Rehling d43265f937 a new test for the happy case of a working academy
dependency injection for learn_skill
memory leak fixes (triggers, armor)
2016-03-09 23:20:05 +01:00
Enno Rehling 02cfacd7f8 refactorings
- learn_skill from unit.c to study.c
- add academy.c module
2016-03-09 14:52:50 +01:00
Enno Rehling 3d5c7ba8fb refactoring: move produceexp from unit.c to study.c 2016-03-09 14:50:54 +01:00
Enno Rehling 2b62747718 fix datafile reading problems for versions 350 and 351 2016-03-09 14:50:03 +01:00
Enno Rehling 197241df0d fix datafile reading problems for versions 350 and 351 2016-02-29 16:18:14 +01:00
Enno Rehling fcc846da95 all of the easy external file tests are eliminated 2016-02-26 20:07:51 +01:00
Enno Rehling 5f923295e6 remove datafiles from save.test.c
this should fix intermittent tests on windows.
2016-02-26 19:49:58 +01:00
Enno Rehling 63408501b9 convert another test to read_/write_game 2016-02-26 19:01:28 +01:00
Enno Rehling 3c272fd53f fix reading and writing curses from test (crash)
fix read_game/write_game incomaptibility.
2016-02-26 17:54:25 +01:00
Enno Rehling ce867af34f this is a static variable, and it is bad 2016-02-25 23:11:44 +01:00
Enno Rehling 81a2dd9d21 extract read_game and write_game (take a gamedata argument, not filenames) 2016-02-25 19:12:38 +01:00
Enno Rehling 5fed36903c some drmemory fixes
some tests leaked.
current test_eressea reports:
     41 unique,    41 total,   3778 byte(s) of leak(s)
    120 unique,   270 total,   5615 byte(s) of possible leak(s)
2016-02-25 10:16:50 +01:00
Enno Rehling db852a05fd eliminate global.data_version completely 2016-02-24 11:58:05 +01:00
Enno Rehling d48d9a25e0 forward-declare struct gamedata 2016-02-24 11:54:23 +01:00
Enno Rehling 8a9d617aa3 read_referernce takes a gamedata object.
with all the trimmings that requires,
this is for github issue $479
2016-02-24 11:53:22 +01:00
Enno Rehling 2e41c4972c read_spellbook, use gamedata.version
github issue #479
2016-02-24 11:48:46 +01:00
Enno Rehling 21aee8ece8 remove global.data_version where gamedata.version is available
github issue #479
2016-02-24 11:47:46 +01:00
Enno Rehling 73a6b96bc7 remove global.data_version from border.read
remove global.encoding
github issue #479
2016-02-24 11:44:19 +01:00
Enno Rehling 3e584245c0 attrib.read gets a gamedata object
stop using global.data_version
for github issue #479
2016-02-24 11:44:19 +01:00
Enno Rehling 7f6ced99b9 attrib.read gets a gamedata object (remove dependency on global.data_version) 2016-02-24 11:44:18 +01:00
Enno Rehling 775bbe7ea6 refactor another test to not create files. 2016-02-24 11:39:24 +01:00
Enno Rehling ec3839fb9f rewrite intermittent test to use memory stream. 2016-02-24 11:39:23 +01:00
Enno Rehling 6ca81646eb extract gamedata into a separate file. 2016-02-24 11:38:09 +01:00
Enno Rehling e6f3dc8b85 Merge branch 'master' into develop
Conflicts:
	scripts/run-turn.lua
	src/buildno.h
	src/kernel/group.c
	src/kernel/save.c
	src/kernel/save.test.c
	src/kernel/version.h
	src/util/password.c
	src/util/password.test.c
	tests/run-turn.sh
2016-02-23 10:47:33 +01:00
Enno Rehling 1bb215dd52 Merge remote-tracking branch 'upstream/master'
Conflicts:
	src/kernel/save.c
	src/triggers/createunit.c
2016-02-23 08:35:31 +01:00
Enno Rehling 1e4b860a2e some trivial assertions 2016-02-22 20:48:24 +01:00
Enno Rehling 370338736c gcc is picky, fix gcc warnings 2016-02-22 20:47:06 +01:00
Enno Rehling 7fe07439f5 fix write_faction_reference, check for f->alive in other places
TODO:
1. I added some new TODOs
2. What happens to morale when region owners die?
3. Needs tests
2016-02-22 20:47:06 +01:00
Enno Rehling 6b1367dff1 fix gcc build 2016-02-22 15:48:43 +01:00
Enno Rehling 4f01d7041f Merge branch 'upstream-master'
Conflicts:
	src/kernel/save.test.c
	src/kernel/version.h
2016-02-22 08:55:46 +01:00
Enno Rehling b09c6974c6 revert back to plaintext passwords, crypting isn't working 2016-02-21 17:22:43 +01:00
Enno Rehling 2c82ddd4d1 rename to password_encode, streamline tests
Conflicts:
	src/kernel/save.c
2016-02-21 16:03:42 +01:00
Enno Rehling 535a864ffe bcrypt hashes implementation, not activated yet. 2016-02-21 15:59:39 +01:00
Enno Rehling 4bf282bdd7 Merge branch 'release-3.7.11' into upstream-master
accidentally added a test that fails for the currently broken passwort-crypting

Conflicts:
	scripts/tests/e3/rules.lua
	src/attributes/reduceproduction.c
	src/building_action.c
	src/buildno.h
	src/kernel/region.c
	src/kernel/save.c
	src/kernel/save.test.c
	src/kernel/version.h
	src/laws.c
	src/magic.c
	src/magic.h
	src/wormhole.c
2016-02-21 11:01:50 +01:00
Enno Rehling dd94771ed8 test password reading and writing for BADCRYPT_VERSION (requires external file) 2016-02-21 10:25:18 +01:00
Enno Rehling 9ac05666ea add a test for succesful read/write of password
TODO: do this for different datafile versions (BADCRYPT, etc)
2016-02-21 10:10:26 +01:00
Enno Rehling 1682b3d583 fix off-by-one error 2016-02-20 22:23:19 +01:00
Enno Rehling 1b28beeaa1 fix off-by-one error when analyzing passwords.txt (crash E3 and E4
today)
2016-02-20 21:43:01 +01:00
Enno Rehling 8054a145cc hack to read passwords from an external file 2016-02-20 18:21:39 +01:00
Enno Rehling fc86de85f1 resolve a TODO, make attribute (and data) a little bit smaller. 2016-02-20 16:50:11 +01:00
Enno Rehling 33d1521bfd pass the parent of an attribute into a_age and attrib_type::age 2016-02-20 16:50:04 +01:00
Steffen Mecke 22367249db fix morale change when region owner changes
http://bugs.eressea.de/view.php?id=2139

Conflicts:
	scripts/tests/e3/castles.lua
2016-02-20 16:42:18 +01:00
Enno Rehling 29c9e719da eliminate plane.watchers feature
. we don't use them anywhere
. they have no tests
. they crash readgame when watchers have died
2016-02-18 08:48:54 +01:00
Enno Rehling 57085ea47b gcc fix, disable test properly
TBD:plane.watchers
2016-02-18 08:11:39 +01:00
Enno Rehling 9f62e74a37 add a test to check that destroyfaction updates the alliance leader.
clean up save.test.c a bit.
disable failing test temporarily.
2016-02-17 14:06:59 +01:00
Enno Rehling a6fe697c7a tests for read/write of triggers that reference factions, with bugfixes. 2016-02-17 13:55:48 +01:00
Enno Rehling 325a0ccbf1 write a test that proves the bug in turn 966 2016-02-17 09:24:19 +01:00
Enno Rehling 4050f994a4 fix write_faction_reference, check for f->alive in other places
TODO:
1. I added some new TODOs
2. What happens to morale when region owners die?
3. Needs tests
2016-02-16 07:30:26 +01:00
Enno Rehling 54e4b7a508 E2 turn 966 desaster: code was writing a bad datafile 2016-02-13 22:07:51 +01:00
Enno Rehling 40530f2066 rename to password_encode, streamline tests 2016-02-12 08:33:08 +01:00
Enno Rehling c0c6d19be2 bcrypt hashes implementation, not activated yet. 2016-02-12 07:16:45 +01:00
Enno Rehling 87aa7c887e fix build 2016-02-09 14:08:36 +01:00
Enno Rehling 1201a6b739 unused variable, bad version check 2016-02-09 07:06:07 +01:00
Enno Rehling 0189111876 update key attribute api
prepare to replace at_key. do not return the internals. add basic test.
2016-02-09 06:43:19 +01:00
Enno Rehling abc3caa6d1 optimized storage of attribs.
save the hash instead of the name and save a few bytes.
2016-02-09 00:28:23 +01:00
Enno Rehling 7b4b879cc1 quick addition to a_removeall
additional testing for attributes
2016-02-06 10:56:08 +01:00
Enno Rehling 8a3bb35987 eliminate global log_flags, revert the mode arguments for fopen.
turns out that text is default, and windows hates it if I open a binary file without 'b'
standardize on using join_path to create filenames
(use backslash on windows, even though fopen doesn't seem to care).
2016-02-05 23:10:05 +01:00
Enno Rehling d0f8723ffb refactoring: eliminate a_findc, and too much const-fuckery 2016-02-01 17:31:03 +01:00
Enno Rehling b3db14465e fix logic error in json_buildings 2016-02-01 13:59:35 +01:00
Enno Rehling 85010e5358 seems like there is a problem opening files with the optional 'b' mode, so remove it everywhere? 2016-02-01 12:29:41 +01:00
Enno Rehling 2f2bbb16ab remove wild mkdir calls all over the code, catch EEXIST errors
use join_path more consistently
fix a test that's intermittent on windows because fopen(..., "wb") fails, why?
2016-02-01 09:26:24 +01:00
Enno Rehling 09ae3d8993 Merge branch 'feature/issue-462-log-test-errors' of https://github.com/ennorehling/eressea into ennorehling-feature/issue-462-log-test-errors
Conflicts:
	src/magic.test.c
2016-01-31 21:58:16 +01:00
Enno Rehling c08235693d Merge branch 'master' into develop
Conflicts:
	src/buildno.h
	src/kernel/item.c
	src/kernel/region.c
	src/laws.c
2016-01-30 23:09:02 +01:00
Enno Rehling c557778731 fix https://bugs.eressea.de/view.php?id=2183 2016-01-30 23:04:41 +01:00
Enno Rehling 73f16d5bb6 adding a join_path function to try and narrow down misbehavior. 2016-01-29 19:11:48 +01:00
Enno Rehling 9bf1059d8a trying to make tests not throw out so many ERROR log mesages, commenting on some of them. 2016-01-29 17:49:27 +01:00
Enno Rehling 729c4ceea1 increase error-logging from unit tests.
suppress some unrelated errors.
2016-01-28 16:00:36 +01:00
Enno Rehling 91f894b290 teleport.c is the astral space implementation, and it is not one of the core concepts, so move it out of the kernel/ directory 2016-01-28 12:25:16 +01:00
Enno Rehling fa130d9ce5 make all the rset-asserts look the same 2016-01-24 14:57:36 +01:00
Enno Rehling cc4367f1b7 borken merge fix 2016-01-24 14:55:43 +01:00
Enno Rehling a66e81e90d Merge branch 'master' into develop
Conflicts:
	src/buildno.h
	src/kernel/region.c
2016-01-24 14:55:05 +01:00
Enno Rehling a6b15813ed relax strict assertion (should be allowed to set ocean to 0 peasants) 2016-01-24 14:45:46 +01:00
Enno Rehling 023686fab2 add a liberal sprinkling of assertions to catch negative peasants bug 2182 2016-01-24 14:35:46 +01:00
Enno Rehling 3d7b22fa21 avoid crashing because of bug 2182 2016-01-24 14:31:24 +01:00
Enno Rehling 76475b9bf7 add a little extra randomness to the seed salt (still bad).
remove dead prototype code from faction.c
2016-01-15 08:01:12 +01:00
Enno Rehling 8d05f4cc25 implement MD5 crypted passwords as default 2016-01-14 15:49:09 +01:00
Enno Rehling c3da0cd42d as long as we use no encryption, all tests pass. 2016-01-13 16:16:02 +01:00
Enno Rehling 799514bf40 implement md5 password hashing (untested)
disable test for case-insensitive password test
fix faction/checkpasswd test
2016-01-13 14:41:09 +01:00
Enno Rehling 54d25e91dd add a new password module
start adding password hashing logic (WIP)
does not yet pass all tests
2016-01-12 23:52:30 +01:00
Enno Rehling b6d44410b7 make the password pseudo-private to faction.c 2016-01-12 06:46:51 +01:00
Enno Rehling dc6cc41d2d additional warnings 2016-01-12 02:27:22 +01:00
Enno Rehling 19390dd8e2 log a warning when passwords would fail for being case-sensitive.
add a test to enforce the status quo, for now.
2016-01-12 00:52:42 +01:00
Enno Rehling fadc92ee52 do not leak memory for factions that have died. 2016-01-11 18:17:24 +01:00
Enno Rehling 20063e0e0e fix errors in the order of cleanup 2016-01-11 18:03:53 +01:00
Enno Rehling 04e2fb73c7 fix test of allies status after destroying a faction 2016-01-11 15:08:36 +01:00
Enno Rehling 50eba2d308 I don't really believe that this is going to work, but let's see where it fails. 2016-01-11 14:59:25 +01:00
Enno Rehling 04624179ce make destroyfaction not have to loop over all factions to clear HELP status. 2016-01-11 14:42:36 +01:00
Enno Rehling 8742317979 hack: do not free faction when we destroy it (issue #451) 2016-01-11 14:01:55 +01:00
Enno Rehling ca500a499e adding a much-needed getter function for faction_alive 2016-01-11 12:25:23 +01:00
Enno Rehling b4389c91fe fix compilation (what was I thinking?), remove uses of f.alive where they should not be needed. 2016-01-11 11:54:45 +01:00
Enno Rehling de512be1ba make destroyfaction remove the faction from the list (slightly scary change) 2016-01-11 09:55:47 +01:00
Enno Rehling 7d426dc3ed call destroyfaction instead of free as a quick fix 2016-01-10 12:07:00 +01:00
Enno Rehling 810ad094af suppress misc warnings in the log file by reorganizing E3 strings and tuning down log levels 2015-12-18 15:13:15 +01:00
Enno Rehling 18c0c235db Merge pull request #440 from ennorehling/feature/bug-2176-reduceproduction
bug 2176, reduceproduction message im CR
2015-12-17 13:17:00 +01:00
Enno Rehling 9e4344e3c3 resolve a TODO, make attribute (and data) a little bit smaller. 2015-12-17 12:23:07 +01:00
Enno Rehling 5187788f3c pass the parent of an attribute into a_age and attrib_type::age 2015-12-16 22:18:44 +01:00
Enno Rehling d85123fe8b Merge pull request #439 from ennorehling/develop
MS Visual Studio 2015 update 1 breaking changes
2015-12-16 17:06:04 +01:00
Enno Rehling c66d6c7457 Address MS Visual Studio 2015 update 1 breaking changes 2015-12-16 17:01:47 +01:00
Enno Rehling 24f559b4ad Address MS Visual Studio 2015 update 1 breaking changes 2015-12-16 16:55:52 +01:00
Enno Rehling fa55f84b41 remove unnecessary assert that prevents throwing away money on an ocean
github issue #437
https://bugs.eressea.de/view.php?id=2173#c6411
2015-12-16 13:32:02 +01:00
Enno Rehling 3fafb04b57 fix ahort to int converaion problems, fox PR 2015-12-11 18:03:55 +01:00
Steffen Mecke 1f4c521ac8 encapsulate r->land->peasants, money, horses, herbs, morale 2015-12-08 17:57:23 +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 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 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 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 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 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 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 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 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 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 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 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 06f8ba9ee4 faster lookup for get_param with tries
eliminate unnecessary constatn from rand.c
2015-11-20 15:48:17 +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 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 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 6237e6dfe2 Merge branch 'release-3.7' into develop 2015-11-16 14:30:31 +01:00
Steffen Mecke 5326bbd9e4 refactored inside_building/building_is_active/active_building 2015-11-16 02:13:48 +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 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 972b8cee40 CID 22436 Ignoring number of bytes read
github issue #333
2015-11-11 15:55:39 +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 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 e14cc50252 CID 22522, 22520 Resource leak
helping coverity scan to understand this code
2015-11-09 20:05:55 +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 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 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 26b6ae4e30 github issue #374
stick some assertions in natural_armor
refactor it for readability
eliminate a static memory leak
reset num_races to zero at end of test
2015-11-07 18:21:47 +01:00
Enno Rehling 2f8dc29396 clean up item tests so they don't use test_create_world
fix intermittent skillpotion test
2015-11-07 13:52:18 +01:00
Philipp Dreher 663d947b2a New behaviour in case of low skill during building
Insufficient skill after hitting the next improvement stage is now
handled by leaving the for-loop and skipping to after-build-processing.
2015-11-06 21:04:35 +01:00
Philipp Dreher b0a986e155 Revert "added a lua-test"
This reverts commit a452ad1517.
2015-11-06 20:57:19 +01:00
Philipp Dreher a452ad1517 added a lua-test
New lua-test for the bug concerning the minskill for castle-stages.
(#1859)
2015-11-06 20:53:10 +01:00
Philipp Dreher be5d81acd1 Revert "new test"
This reverts commit cb16315e7c.
2015-11-06 20:51:38 +01:00
Philipp Dreher cb16315e7c new test
Added test for the handling of castles' buildstages and their individual
skillcaps.
2015-11-06 13:14:19 +01:00
Enno Rehling 8a057f183f CID 22580 Time of check time of use
no need to check this first
2015-11-05 13:22:51 +01:00
Enno Rehling 797eee025d fix cb_insert comparison (new return value for success) 2015-11-05 13:01:48 +01:00
Enno Rehling 2a7fc87656 CID 30742 Dereference before null check
CID 30741 ditto
2015-11-05 10:59:14 +01:00
Enno Rehling b81e56d306 CID 22486 Dereference after null check 2015-11-05 08:32:21 +01:00
Enno Rehling b6190b5193 CID 22527 Resource leak 2015-11-04 19:20:34 +01:00
Enno Rehling 8ab4784e3f Merge branch 'coverity-scan' of https://github.com/ennorehling/eressea into ennorehling-coverity-scan
Conflicts:
	src/kernel/jsonconf.c
	src/kernel/save.h
	src/names.c
2015-11-04 12:44:45 +01:00
Enno Rehling 8bc44d82ed CID 22500 Argument cannot be negative 2015-11-04 12:29:51 +01:00
Enno Rehling 5887e8e48f CID 22434 Ignoring number of bytes read 2015-11-04 12:19:16 +01:00
Enno Rehling 47f678d2a3 CID 22436 Ignoring number of bytes read, github issue #333 2015-11-04 11:51:19 +01:00
Enno Rehling 731dac3363 CID 22437 Unchecked return value from library
github issue #332
2015-11-04 11:45:13 +01:00
Enno Rehling d4ff807c20 Merge pull request #364 from ennorehling/coverity-fixes
several smaller coverity fixes
2015-11-04 11:04:32 +01:00
Enno Rehling 024e4c45ca fix a bug introduced by f78fe842 (CID 22443) 2015-11-04 10:40:53 +01:00
Enno Rehling c57668e6ee failing test for newly discovered storage problems 2015-11-04 09:48:51 +01:00
Enno Rehling 04b5bc0c60 CID 22474 Evaluation order violation 2015-11-03 23:19:35 +01:00
Enno Rehling 1093a23d5a CID 22464 Division or modulo by zero 2015-11-03 23:14:06 +01:00
Enno Rehling 876e4122b1 CID 22463 Division or modulo by zero 2015-11-03 23:13:04 +01:00
Enno Rehling 307c5ec85b CID 22435 Unchecked return value from library 2015-11-03 22:56:05 +01:00
Enno Rehling 0c5ef21c10 CID 22434 Ignoring number of bytes read
also potential missing  null-termination
2015-11-03 22:53:19 +01:00
Enno Rehling f959f43f1e extensive tests for armor calculation 2015-11-03 18:59:09 +01:00
Enno Rehling 91a6324a97 cleanup: functions do not need to be dereferenced with an & in C. 2015-11-03 13:30:34 +01:00
Enno Rehling 7e81b98fa4 Merge pull request #339 from TurnerSE/improvement/CID22481
Improvement/cid22481
2015-11-03 13:08:03 +01:00
Philipp Dreher 07fd3dc970 formal correction 2015-11-02 18:06:19 +01:00
Enno Rehling 072bfd3912 testin building_is_active
testing multiple units in one building
2015-11-02 15:06:30 +01:00
Enno Rehling 4bf2509fb3 test inside_building vs. overflow
fix default building capacity (should be 1 per size)
2015-11-02 14:56:58 +01:00
Enno Rehling 42ae086def unit is inisde a building also when it was not paid for 2015-11-02 14:49:48 +01:00
Enno Rehling 24ff4c301d refactor: separate building_is_active from inside_building 2015-11-02 14:18:50 +01:00
Philipp Dreher b107ddadf5 added assert to check the faction-pointer 2015-11-01 21:43:18 +01:00
Philipp Dreher 491e5faed9 Revert "general check for sf->faction's validity"
This reverts commit f18b5ea7d2.
2015-11-01 21:40:06 +01:00
Philipp Dreher f18b5ea7d2 general check for sf->faction's validity
The handling of an ally without a valid faction-pointer is now skipped
in favor of a logged error.
2015-11-01 18:54:29 +01:00
Enno Rehling 21a2313e2a CID 22517: Parse warning (PW.PARAM_SET_BUT_NOT_USED) 2015-10-30 15:20:06 +01:00
Enno Rehling e7ca5345d7 CID 22509: Dereference null return value (NULL_RETURNS)
potential problems at the edge of the map.
2015-10-30 12:57:07 +01:00
Enno Rehling e1eb5098d4 CID 22554: Improper use of negative value (REVERSE_NEGATIVE)
I believe this was a false positive, but more asserts can never hurt.
2015-10-30 12:40:48 +01:00
Enno Rehling 93b7bacff5 CID 22552: Dereference before null check (REVERSE_INULL) 2015-10-30 12:37:27 +01:00
Enno Rehling 5d273e475e CID 22558: Copy into fixed size buffer (STRING_OVERFLOW)
bsdstring buffer size check
2015-10-30 11:41:59 +01:00
Enno Rehling 1fb04179dc CID 22557: Copy into fixed size buffer (STRING_OVERFLOW)
eliminate code duplication. bsdstring is better than libc strings.
2015-10-30 11:39:47 +01:00
Enno Rehling 4eb6a89821 CID 26262: short and unsigned types are the devil, use int everywhere for fewer headaches 2015-10-29 20:39:44 +01:00
Enno Rehling 4f25831407 coverity scan CID 22576: arguments in wrong order
I believe that was a false positive, and will try to aquelch it by naming the arguments better.
2015-10-29 11:24:01 +01:00
Enno Rehling 976b6aaea1 coverity CID 22593: write to pointer after free
github issue #324
use free_land where we need it.
2015-10-29 11:17:31 +01:00
Enno Rehling c298b7fd74 coverity CID 22501 imroper use of negative value
explicitly use SK_MAGIC instead of a lookup. Faster, easier to reason about.
2015-10-29 11:06:25 +01:00
Enno Rehling 8675002e68 coverity scan CIDs 22540 22541 22546: resource leak
the calendar should only ever be initialized once, but based on static analysis, I agree that this was sloppy.
2015-10-29 09:56:53 +01:00
Enno Rehling 2372d3aacd coverity scan CID 22516: out-of-bounds write
potentially a bug with bad XML files? only matters if we have those, but we shouldn't
2015-10-29 09:49:26 +01:00
Enno Rehling 8b92003fff coverity scan CID 22487: dereference after null check
we don't use many differnt calendars, so this has never happened.
2015-10-29 09:43:51 +01:00
Enno Rehling 70d4a6af03 coverity scan CID 22553: dereference before null check 2015-10-29 09:06:50 +01:00
Enno Rehling f2b0ba1ec6 eliminate find_spell warning for games where nobody is cursed, and you cannot summon igjarjuk 2015-10-27 12:40:03 +01:00
Enno Rehling 47e925473e always use a macro, not magical constants 2015-10-15 08:40:52 +02:00
Enno Rehling c9e7a76d9b minor leak: release memory held by curse_type structures 2015-10-15 08:38:43 +02:00
Enno Rehling d4655ee88a leak: do not create new message_type objects in test_cleanup 2015-10-15 08:29:20 +02:00
Enno Rehling 467ce2a719 visual studio compilation fix 2015-10-14 22:09:11 +02:00
Enno Rehling ef1a2dfc4f fixed a crash 2015-10-14 22:06:40 +02:00
Enno Rehling 3200dd2dc8 leak: free locale_data 2015-10-14 21:51:43 +02:00
Enno Rehling b5455531e7 do not leak terrain.herbs 2015-10-14 21:37:27 +02:00
Enno Rehling c04bda102b call free_order for each remaining reference 2015-10-14 20:56:09 +02:00
Enno Rehling a3b27ad6d2 leak: remember to call test_cleanup 2015-10-14 20:49:30 +02:00
Enno Rehling 03ff8f612d leaks: remember to call test_cleanup 2015-10-14 20:48:01 +02:00
Enno Rehling 284a74c878 leak: deleting a config entry did not free its name 2015-10-14 20:45:43 +02:00
Enno Rehling f740f2829a leak: in tests, when correct message_type doesn't exist, arguments should not leak 2015-10-14 20:41:42 +02:00
Enno Rehling 144aeb23ac leaks: call cleanup, free triggers 2015-10-14 20:29:07 +02:00
Enno Rehling 5018bbb0c0 correctly release messages created in test_merge_split 2015-10-14 20:21:38 +02:00
Enno Rehling 2abdba9e8a refactor free_messagelist, fix leak in test_merge_split 2015-10-14 14:08:50 +02:00
Enno Rehling 1c2922aafa leak: spell names and other strings need to be released. 2015-10-14 13:58:55 +02:00
Enno Rehling 254cda86e8 short commands speedup wasn't working (never got assigned) 2015-10-14 13:20:27 +02:00
Enno Rehling 4fc5ac7740 there is a memory leak in test_long_order_hungry, but the root cause lies deeper 2015-10-14 12:51:45 +02:00
Enno Rehling bdf4834dc2 leak: region_owner data was never released 2015-10-14 12:22:37 +02:00
Enno Rehling ae3210ec87 pervious commit did not compile: small copy/paste error 2015-10-14 12:14:33 +02:00
Enno Rehling 2c659c1f47 memory leak: free building maintenance data 2015-10-14 12:13:05 +02:00
Enno Rehling 3cfb22876b memory leak: free params after test 2015-10-14 12:01:33 +02:00
Enno Rehling f0671aafda leak: some tests were leaking seen_factions becaus they don't call destroyfaction or render reports 2015-10-13 23:33:11 +02:00
Enno Rehling a3210aaed7 leak: free per-locale cached order data (has additional refcount) 2015-10-13 23:25:44 +02:00
Enno Rehling 377b0d0305 leak: teardown build tests, free construction data 2015-10-13 23:09:50 +02:00
Enno Rehling a6ca489d9a free multi-level construction correctly, avoid duplication 2015-10-13 22:56:16 +02:00
Enno Rehling 26f5b592bd leak: free construction materials 2015-10-13 22:41:54 +02:00
Enno Rehling 457465b4a2 memory leak: free message_list objects 2015-10-13 22:37:45 +02:00
Enno Rehling 333c27403f memory leaks: ship_type.construction, give_cmd return values 2015-10-13 22:34:22 +02:00
Enno Rehling c70d987c09 memory leak: free weapon data 2015-10-13 22:27:43 +02:00
Enno Rehling 0facb386a8 memory leaks: call test_cleanup, free strlist, free message 2015-10-13 22:21:05 +02:00
Enno Rehling d264c454b8 memory leak: building_type::construction was never released 2015-10-13 22:13:50 +02:00
Enno Rehling 7e9c36b599 memory leak: free spell components and spells at exit 2015-10-13 22:02:58 +02:00
Enno Rehling 67135c8ea3 avoid triggering null-pointer assert 2015-10-13 21:50:23 +02:00
Enno Rehling 2f35246f8c memory leak: when freeing factions, also free their spellbooks 2015-10-13 21:47:45 +02:00
Enno Rehling 3741a19437 prevent memory leak of cJSON structures in tests 2015-10-13 21:21:31 +02:00
Enno Rehling 7854684d8b fix memory leaks in all tests that create an order without calling free_order at the end. 2015-10-13 15:45:38 +02:00
Enno Rehling 7f81cee36d Merge pull request #305 from ennorehling/feature/log-reduce
reduced log spam in cron emails
2015-09-28 12:27:04 +02:00
Enno Rehling 3eead446d0 reduce cron log spam 2015-09-26 22:42:22 +02:00
Enno Rehling 84a92124bd Merge branch 'feature/bug-2053-attack-monsters' of https://github.com/ennorehling/eressea into ennorehling-feature/bug-2053-attack-monsters
Conflicts:
	conf/e3/config.xml
2015-09-19 13:35:53 +02:00
Enno Rehling b0c79b9978 refactor some get_param lookups
kill unused global.functions.maintenance
2015-09-13 10:11:56 +02:00
Enno Rehling 90bcf30628 fix bad terrain definitions in E2 (string, not number: these values are used for dice throws).
clean up the jsonconf.c code for reading these a little bit, report more specific errors.
2015-09-13 09:46:40 +02:00
Enno Rehling 71c4cb53c0 add missing guard.h include everywhere, remove duplicate prototypes from config.h 2015-09-12 23:41:37 +02:00
Enno Rehling dd9420fc38 move at_guard into guard module as well 2015-09-12 23:38:31 +02:00
Enno Rehling 3055f517dc move guard implementation into a module (WIP) 2015-09-12 22:53:54 +02:00
Enno Rehling 8fa3234159 Merge branch 'master' into develop
Conflicts:
	tests/runtests.bat
2015-09-12 21:00:28 +02:00
Enno Rehling a027139057 remove global variable `verbosity` in favor of static in main.c (use log_* functions everywhere) 2015-09-12 20:58:09 +02:00
Enno Rehling 06a04d0e20 fix logging for sp_igjarjuk, temporarily set log-levels for the game to error|warn|info
remove some code that accesses `verbosity` variable (todo: hide it more, fix logging)
2015-09-12 19:48:03 +02:00
Enno Rehling 7259a4b45e remove parse_main from xmlreader, everything superseeded by jsonconf 2015-09-12 18:16:23 +02:00
Enno Rehling 1e75255d51 allow disabling skills through json 2015-09-12 17:43:31 +02:00
Enno Rehling a01955e06a disable features by name that are not keywords 2015-09-12 17:37:29 +02:00
Enno Rehling c76b118fb8 eliminate game/order from XML data 2015-09-12 17:12:02 +02:00
Enno Rehling 44eb3a4f58 disable keywords through JSON configuration 2015-09-12 17:06:55 +02:00
Enno Rehling 7906cdbcb6 do not read gamename from XML, read it from JSON only (two mechanisms for the same feature are too many) 2015-09-12 16:49:18 +02:00
Enno Rehling d65e9aaf94 eliminate xml reading of produceexp chance 2015-09-12 16:42:02 +02:00
Enno Rehling 8a95ea0c00 speeding up produceexp_chance 2015-09-12 16:41:22 +02:00
Enno Rehling 9bdc811582 produceexp uses a json-configurable constant
make get_param_flt return a double, floats are for wimps.
2015-09-12 16:38:51 +02:00
Enno Rehling 68c448b3fb fix signature of callback 2015-09-12 16:29:57 +02:00
Enno Rehling d1686849e0 refactoring: move produceexp into unit module, for want of a better one. add a bit of test coverage.
https://bugs.eressea.de/view.php?id=2137 - fix learning-by-doing with less than u->number people.
2015-09-12 16:25:47 +02:00
Enno Rehling aa32cf190e remove xmlreader code for prefixes 2015-09-12 13:40:10 +02:00
Enno Rehling 09efd9c2a9 fix anything that uses the calendar module. opps. 2015-09-12 12:54:49 +02:00
Enno Rehling 13e1573611 moving the calendar module out of the kernel directory, it does not belong with the major game objects 2015-09-12 12:54:09 +02:00
Enno Rehling 47c95aee35 implement JSON prefixes. fix free_prefixes not resetting size (TODO: quicklist). 2015-09-12 12:49:12 +02:00
Enno Rehling f0e255924f add a unit test for add/free prefixes. fix bad free_prefixes call site. 2015-09-12 12:41:04 +02:00
Enno Rehling 9f6b374056 add a (red) test for JSON prefixes. 2015-09-12 12:33:25 +02:00
Enno Rehling 44d982d210 free race prefixes when the game is done (small memory leak). 2015-09-12 12:29:42 +02:00
Enno Rehling f1476c2167 refactoring: split out a module for race prefixes 2015-09-12 12:24:10 +02:00
Enno Rehling bd51ac7dd7 eliminate terrain parsing from xmlreader.c, it's all in JSON now! 2015-09-11 22:46:47 +02:00
Enno Rehling c57918ede0 replace XML terrains for E3 and E4 with JSON configuration 2015-09-11 22:43:08 +02:00
Enno Rehling b4971dd651 replace all of the E2 terrains with JSON data (no more XML!) 2015-09-11 22:11:59 +02:00
Enno Rehling 7c4d18ec2d avoid an annoying division by zero when terrains are not fully initialized (size=0) 2015-09-11 21:31:59 +02:00
Enno Rehling db4cb2618b transfer most core and all game-specific terrains for E2 from XML to JSON. 2015-09-11 21:14:10 +02:00
Enno Rehling 9df5799efd define core plain and ocean in JSON for E2. 2015-09-11 12:52:18 +02:00
Enno Rehling a582c69523 finished and tested: terrains can be completely defined in JSON. 2015-09-11 12:27:45 +02:00
Enno Rehling 43bac506a4 fix bad size for calloc. 2015-09-11 12:25:28 +02:00
Enno Rehling c707ff39b6 memory leak: properly free terrain_production objects 2015-09-11 12:17:35 +02:00
Enno Rehling 59e2c12605 completing the implementation of JSON terrains (WIP).
seeing a crash when trying to allocate a resource for stone in test_json_terrains.
2015-09-11 12:12:53 +02:00
Enno Rehling cf08cdf3fb configuration type-fixes: int to bool where appropriate (possibly incomplete)
rename some rules to make it more obvious that they are flags or other integer values.
2015-09-11 10:04:08 +02:00
Enno Rehling c5e14c85a6 read boolean json values
be smarter about reading number values that are integers
2015-09-11 09:17:07 +02:00
Enno Rehling 9bb2a625f9 fix xmlreader bug introduced by last commit (xpath->node not initialized) 2015-09-11 09:10:00 +02:00
Enno Rehling 1a7d6dd91d xmlreader no longer needs to parse settings, that's all in json now. 2015-09-10 23:29:18 +02:00
Enno Rehling 1969c165d3 allow settings in json configuration file
move E2 settings from XML to JSON
2015-09-10 23:16:17 +02:00
Enno Rehling 337aca9b3c remove region.donations, replace with a global list. 2015-09-09 16:47:09 +02:00
Enno Rehling d29d38f710 refactor donations into a seaprate code module, add a basic test 2015-09-09 15:45:20 +02:00
Enno Rehling 60111282b3 make findunitr be O(1) instead of O(#r->units) 2015-09-09 13:29:58 +02:00
Enno Rehling 6f212686f3 Merge pull request #287 from ennorehling/feature/issue-282-link-seen
eliminate duplicate call to link_seen
2015-09-09 12:41:14 +02:00
Enno Rehling f7c1efc287 memory error seems to be in test_write_flag (curse-hashing?), not in the new ones. 2015-09-09 11:22:35 +02:00
Enno Rehling 65c39866e1 refactor: add a faction_add_seen function that also updates [first, last) interval.
add tests for add_seen.
disable test_faction_add_seen, looks like it needs a valgrind check?
2015-09-09 11:08:33 +02:00
Enno Rehling 77912166bf Backfill missing tests for Bug 1818. Actual bug appears to have been fixed some time ago. 2015-09-07 14:49:57 +02:00
Enno Rehling b8df3f3a5f increase the datatype for scores from int to long long
this fixes https://bugs.eressea.de/view.php?id=2136
2015-09-06 19:04:04 +02:00
Enno Rehling 79663d5933 relatively simple fix to bug 1685: unit ids must start with alphanumerical characters.
https://bugs.eressea.de/view.php?id=1685
2015-09-05 19:48:25 +02:00
Enno Rehling a2c269e805 add another failing unit test for bug 1685, closer to the core of the problem 2015-09-05 19:45:34 +02:00
Enno Rehling 3dc173b6ec add unit tests for read_unitid 2015-09-05 19:44:30 +02:00
Enno Rehling 400b8f1ffa add another failing test for bug 1685
add test for forbiddenid (cannot have a unit with id TEMP)
2015-09-05 19:25:55 +02:00
Enno Rehling 2e3c0db02a add a failing test for bug 1685 2015-09-05 18:14:28 +02:00
Enno Rehling 70aff6f567 Merge pull request #283 from ennorehling/cursed-faction
The revenge of Igjarjuk
2015-08-31 07:58:16 +02:00
Enno Rehling efca4d1979 fix last merge, signature of effskill changed 2015-08-29 15:00:59 +02:00
Enno Rehling 78cf76464a Merge pull request #281 from ennorehling/todo-cleanup
code cleanup
2015-08-29 14:09:36 +02:00
Enno Rehling e4026e0f6b eliminate more non-critical arguments. 2015-08-27 16:59:39 +02:00
Enno Rehling de808bf146 change effskill signature to take a region, change eff_skill to work on a skill * to avoid multiple lookups. 2015-08-27 16:16:55 +02:00
Enno Rehling 71dea1eca7 backfill missing tests for herbsearch (alchemy). 2015-08-27 13:19:58 +02:00
Enno Rehling bc1c3dd712 move NEWATSROI out of item_modification 2015-08-26 19:59:11 +02:00
Enno Rehling c5f4d213ce test familiar/mage connection and ageing of same. 2015-08-26 08:42:45 +02:00
Enno Rehling b27f0787a8 test familiar skill bonus 2015-08-26 08:36:25 +02:00
Enno Rehling 4dee1744a2 write some tests around effskill and skillmod. 2015-08-26 08:22:51 +02:00
Enno Rehling 5fc1587879 age_unit accidentally returned AT_AGE_REMOVE (caused by a recent change to curse_age) 2015-08-25 22:50:58 +02:00
Enno Rehling dd667aa752 cursed factions get to fight a wolfhowl if they attack (WIP) 2015-08-22 17:56:36 +02:00
Enno Rehling 89bc83c4ab Merge branch 'master' into develop
Conflicts:
	src/bind_region.c
	src/buildno.h
	src/kernel/item.c
2015-08-20 16:58:07 +02:00
Enno Rehling d69bf18e23 suspect some submodule shenanigans 2015-08-20 16:26:32 +02:00
Enno Rehling 853290413f fix segfault, disable intermittent test 2015-08-20 16:18:15 +02:00
Enno Rehling f12454870f fix segfault, disable intermittent test 2015-08-20 16:17:19 +02:00
Enno Rehling dfb0bcaccf Merge branch 'master' into develop
Conflicts:
	src/buildno.h
	src/kernel/save.c
	src/laws.c
2015-08-20 15:49:36 +02:00
Enno Rehling 1641e6ef89 remove spellbook repair code, we are done 2015-08-20 15:09:38 +02:00
Enno Rehling 8716e5fdc5 repair spellbooks that broke in E3 and E4 (temporary measure, remember to remove this code). 2015-08-20 12:13:09 +02:00
Enno Rehling e6eb53c864 save the faction.max_spelllevel in the data file, do not recalculate it each time.
when recalculating it, include spellbook to determine max-level (dead mages may have pushed the level up).
2015-08-19 19:43:47 +02:00
Enno Rehling ebe365fd6e move travelthru logic to a separate module. todo: split off the report writing from the collection of units. 2015-08-18 18:57:04 +02:00
Enno Rehling 7e64f3177d refactoring: rewrite tests to use test_find_messagetype instead of assert_messages.
tests: add cleanup of message_types to reduce global state.
2015-08-17 19:36:28 +02:00
Enno Rehling df5eaa6ef2 eliminate warning (unused variable) 2015-08-16 19:55:11 +02:00
Enno Rehling b50c1720cf several monster_attack fixes.
1. do not try to attack other monsters.
2. monsters outside of a building can attack units outside of buildings.
3. dragons can guard without weapons.
2015-08-16 16:18:59 +02:00
Enno Rehling 3fe0e62105 do not remove battles from dead faction before writing the report. 2015-08-16 12:06:05 +02:00
Enno Rehling 27b5588e8f Merge region messages and individual messages before writing them into the report.
This fixes https://bugs.eressea.de/view.php?id=2073
2015-08-16 11:30:44 +02:00
Enno Rehling 47dccc667b Add a message that contains the password in the first report, so Magellan can pick it up.
Fix a bad type conversion when setting skills.
2015-08-15 20:25:36 +02:00
Enno Rehling 816243d2d7 magicians can always identify their own curse-effects.
magic-resistance on a building is always visible to anybody, just like it is on units.
2015-08-07 15:52:10 +02:00
Enno Rehling 12a2a1f412 get_captain is wrong, the rules say the captain is the FIRST unit in the ship, which I believe means ship_owner, not best skill.
clean up shipspeed tests a little (WIP, missing edge cases).
ignore some temporary files.
2015-08-07 13:07:45 +02:00
Enno Rehling 3bfc05c3b0 test bonus for new ship-speed rules (WIP). 2015-08-07 13:03:19 +02:00
Enno Rehling b72f48c044 enhanced ship speed for selected ships (currently none). 2015-08-07 12:51:20 +02:00
Enno Rehling c322fbffd5 rename ship_sailors to crew_skill, it's more descriptive 2015-08-07 12:46:32 +02:00
Enno Rehling afbc4c816b refactoring ship speed, extract total skills of sailors into a function. 2015-08-07 12:43:18 +02:00
Enno Rehling bfdef37808 fix the test and the formula for damaged ships' speeds. 2015-08-07 12:03:33 +02:00
Enno Rehling 8636aabe8a tests for existing shipspeed features, failing ship for ship-damage. 2015-08-07 11:50:49 +02:00
Enno Rehling b3a8a95a24 cherry-picking ship tests from range_max code 2015-08-07 11:48:46 +02:00
Enno Rehling 3081a89f1c Merge branch 'develop' of github.com:ennorehling/eressea into develop 2015-08-06 19:17:00 +02:00
Enno Rehling 397a157fdc Merge branch 'develop' into feature/bug-1588-magicpower-limit
Conflicts:
	scripts/tests/e2/init.lua
	src/battle.c
	src/bind_unit.c
	src/kernel/spellid.h
	src/magic.c
	src/magic.h
2015-08-06 19:16:05 +02:00
Enno Rehling 4c877288d3 remove spellid.h, it represents an outdated way of doing things.
merge the enum into combatspells, and reduce it to the spells actually used here.
2015-08-06 17:57:51 +02:00
Enno Rehling b8a2b9d0b7 Merge pull request #7 from ennorehling/feature/bug-2101-study-teach-testing
bug 2101: increase max printed length of orders
2015-08-06 17:05:32 +02:00
Enno Rehling 1e6a83f357 resize buffer in eval_command, it was too small for many commands.
increase MAXTEACHERS.
eliminate oldterrain warning in json_report.
2015-08-06 16:52:24 +02:00
Enno Rehling 8dc4e93e90 fix missing units from CR, add a test, partially convert from FILE* to stream 2015-08-05 14:45:46 +02:00
Enno Rehling 8efc874952 backfill missing tests for ally_cmd 2015-08-05 12:19:17 +02:00
Enno Rehling c22636ca13 unit tests for update_long_order. e3 tests are still broken. 2015-08-05 00:03:30 +02:00
Enno Rehling 4d061d8592 repair update_long_order and K_DESTROY handling according to discussion in https://bugs.eressea.de/view.php?id=2080 2015-08-04 22:47:55 +02:00
Enno Rehling 2288b8fb27 Merge remote-tracking branch 'upstream/master' into develop
Conflicts:
	.travis.yml
	s/build
	s/cmake-init
	s/runtests
	src/buildno.h
	src/kernel/config.c
	src/kernel/save.c
	src/kernel/unit.c
	src/laws.c
	src/move.c
2015-08-03 19:43:26 +02:00
Enno Rehling 9938b3fb66 eliminate update_gbdream completely, make code smaller and simpler.
simplify tests (no need to use create_spell if we don't use it)
increase build no for hotfix.
2015-08-02 23:16:41 +02:00
Enno Rehling d99ffaf1ed filter by curse-type before trying to call update_gbdreams. 2015-08-02 22:45:59 +02:00
Enno Rehling b5ed7c562d wait until curse->magician has been resolve()'s before calling effskill() to find f->max_spelllevel. 2015-08-02 22:08:35 +02:00
Enno Rehling 17f15b69ee fix some of the unicode replacement symbol bullshit in comments 2015-08-02 21:37:12 +02:00
Enno Rehling a119f7617f add some assertions to make sure update_gbdream is not called without a magician 2015-08-02 21:17:21 +02:00
Enno Rehling 21a81bd307 cleanup: struct declaration, more static. 2015-07-12 14:24:46 +02:00
Enno Rehling 0a57933e30 minor optimizations, error checking (static analysis) 2015-07-12 14:17:27 +02:00
Enno Rehling c0c3400f21 remove junk files, thank you windows 2015-07-12 11:01:59 +02:00
Enno Rehling 7087c0e0ab Update to latest submodules, fix iniparser and critbit.
I did this before, must have lost it in the merge. Crazy.
2015-07-12 10:38:01 +02:00
Enno Rehling 11e1fab0d0 Merge branch 'hotfix-3.4.1' into feature/travis-migration
Conflicts:
	.travis.yml
	s/build
	s/cmake-init
	s/runtests
	s/travis-build
	src/kernel/region.c
2015-07-12 04:12:32 +02:00
Enno Rehling c6da0c2189 fix tolua, I guess 2015-07-11 23:45:59 +02:00
Enno Rehling 05f444bab1 Merge branch 'feature/rename-cerddor' into develop 2015-07-08 17:53:09 +02:00
Enno Rehling 6abf8f7adb bug 1692: rewrite of magicresistance curse-info, especially for buildings (homestome spell). 2015-07-08 05:12:26 +02:00
Enno Rehling d7f4fbe05d remove enum constants for curses that are no longer referred to by them (deprecated style). 2015-07-07 21:10:18 +02:00
Enno Rehling c8ffe8da7a Bug 2115: fix cerrdor -> cerddor spelling errors. 2015-07-07 20:30:34 +02:00
Enno Rehling 76a9dd6741 Merge remote-tracking branch 'upstream/develop' into develop 2015-07-07 15:34:42 +02:00
Enno Rehling 391a123a3e test that correct messages are sent to correct factions. 2015-07-07 14:42:07 +02:00
Enno Rehling f9130fcb38 some more easy tests for sabotage. 2015-07-07 13:38:14 +02:00
Enno Rehling e25d3c8ed1 Fix a bug reporting DETROY messages to the correct unit.
Add missing not-null assertions before accessing function parameters.
Eliminate all of the PVS-Studio warnings.
2015-07-07 00:49:12 +02:00
Enno Rehling 05ec74f9ec annotate with finds from PVS Studio trial static analysis 2015-07-06 21:31:27 +02:00
Enno Rehling ef4052b0f6 the outcome of a casual static analysis session. 2015-07-06 19:53:09 +02:00
Enno Rehling c42227c9e4 Bug 1838: Giftwolken dauern nur eine Woche, erscheinen nicht im Report.
https://bugs.eressea.de/view.php?id=1838
- fix dc_age return value
- speed up curse reporting a little
2015-07-03 17:36:37 +02:00
Enno Rehling 59745c7ed0 parentheses to fix operator precedence. 2015-07-03 16:13:24 +02:00
Enno Rehling b2d981e577 improved tests for DESTROY, fix destroy-after-attack 2015-07-03 13:08:06 +02:00
Enno Rehling 98c161869f Merge pull request #244 from badgerman/develop
Bug 1861 (MAXTEACHERS) and misc fixes
2015-07-02 16:32:25 +02:00
Enno Rehling a975073c0d fix an issue when reading pre-spellbook datafiles for E3. 2015-07-02 14:39:13 +02:00
Enno Rehling 37eb189cd0 Merge pull request #242 from badgerman/feature/bug-2080-move-after-destroy
bug 2080: long actions after DESTROY
2015-07-02 11:58:12 +02:00
Enno Rehling fc2b8f3471 bug 2080: long actions after DESTROY
https://bugs.eressea.de/view.php?id=2080
we forgot to set the flags. also added a test for the future.
2015-07-02 11:42:18 +02:00
Enno Rehling 414f6d3210 bug 2069: not all E3 magic schools have a familiar.
https://bugs.eressea.de/view.php?id=2069
quick fix: defaulting all additional schools to the illaun familiar.
2015-07-02 09:49:51 +02:00
Enno Rehling 15e9c5962c merge feature/test-cleanup
removing old test files
merging old tests into current system
fixing some internal bugs (i.e. adjust_coordinates)
2015-07-01 21:24:44 +02:00
Enno Rehling 3ba2b3d4d7 indentation fixes (tab->spaces) 2015-06-26 14:31:21 +02:00
Enno Rehling 6a42b6231e Merge branch 'master' into develop
Conflicts:
	src/buildno.h
2015-06-21 18:32:10 +02:00
Enno Rehling a085442b8f eliminate unused variable. 2015-06-21 17:54:39 +02:00