Commit graph

935 commits

Author SHA1 Message Date
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