Commit graph

2134 commits

Author SHA1 Message Date
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
eea99e2fd3 add missing new files. 2016-03-09 14:52:50 +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
e1f27448bc disable broken test.
fix test_study_with_teacher (simple optimization was in the wrong place)
2016-03-09 14:50:04 +01:00
Enno Rehling
13f51ab796 create a test that crashes for bug 2194 2016-03-09 14:50:04 +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
Steffen Mecke
e3f27e3571 clean up after your tests, young grashopper 2016-02-28 20:34:37 +01:00
Steffen Mecke
11b8d85167 fixed reversed logic for demon peasant hunger (bug 2187)
renamed config variable hunger.demons to hunger.demons.peasant_tolerance and reversed reversed logic in upkeep.c
2016-02-28 16:15:48 +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
5fd4d5f30b Merge pull request #491 from ennorehling/feature/data_version
eliminate global.data_version
2016-02-25 16:01:44 +01:00
Enno Rehling
e766b78345 Merge branch 'master' into develop 2016-02-25 11:06:15 +01:00
Enno Rehling
bb03517619 disable most password formats 2016-02-25 10:46:46 +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
98856a8e4b CID 65491 double free 2016-02-24 11:54:24 +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
2d30d4cce6 trigger_type.read gets a gamedata object
github issue #479
2016-02-24 11:46:54 +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
d1fdd9a89c fix failing storage test 2016-02-24 11:39:27 +01:00
Enno Rehling
45d09622cb missing include errno.h 2016-02-24 11:39:24 +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
7807e9e710 fix integration test data file 2016-02-22 21:35:37 +01:00
Enno Rehling
1e4b860a2e some trivial assertions 2016-02-22 20:48:24 +01:00
Enno Rehling
be99c02a82 fix valgrind report 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
c823a3b036 handle regions that have no owner 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
bbe8faee2b get code to compile, failing Lua tests 2016-02-21 17:24:50 +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
ca6bc638ed release version 3.7.13 2016-02-20 22:12:13 +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
5317c029d5 fix key upgrade.
should have had a test to begin with.
github issue #481
2016-02-13 21:38:42 +01:00
Enno Rehling
9c10cc6b16 fix linux build 2016-02-13 13:56:49 +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
01e864273a crash with an assert if Lua code has syntax errors.
this addresses issue #474
also, correct capitalization of Lua.
2016-02-09 21:34:24 +01:00
Enno Rehling
652136ee46 unused variable, kill 2016-02-09 16:32:01 +01:00
Enno Rehling
87aa7c887e fix build 2016-02-09 14:08:36 +01:00
Enno Rehling
997d81e34a memcpy is in string.h 2016-02-09 13:56:57 +01:00
Enno Rehling
b6e2fc28df remove unused functions 2016-02-09 13:56:15 +01:00
Enno Rehling
1201a6b739 unused variable, bad version check 2016-02-09 07:06:07 +01:00
Enno Rehling
5e631fd145 replace at_key with at_keys, some bugs found by tests. 2016-02-09 07:03:11 +01:00
Enno Rehling
dbcae5484e update test to check more than one key and cleanup. 2016-02-09 06:45:46 +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
32d43820c2 Merge remote-tracking branch 'upstream/develop' into develop 2016-02-06 23:23:26 +01:00
Enno Rehling
80eb22b1e4 Merge branch 'master' into develop
Conflicts:
	src/buildno.h
2016-02-06 23:19:49 +01:00
Enno Rehling
8279c3b348 release version 3.8.2 2016-02-06 15:28:54 +01:00
Enno Rehling
26a33e28ce Merge branch 'feature/apache-md5' of https://github.com/ennorehling/eressea into ennorehling-feature/apache-md5
Conflicts:
	src/util/password.c
	src/util/password.h
	src/util/password.test.c
2016-02-06 15:23:42 +01:00
Enno Rehling
bee97c002c use apache implementation by default 2016-02-06 15:16:15 +01:00
Enno Rehling
d2d50cb23f fix build, add test for new algorithm
Conflicts:
	src/util/password.test.c
2016-02-06 15:15:04 +01:00
Enno Rehling
4c46d9d0ef add the apache md5 implementation to valid password hash algorithms
Conflicts:
	src/util/password.c
	src/util/password.h
2016-02-06 15:14: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
e39af68dde remove unused file 2016-02-01 21:37:02 +01:00
Enno Rehling
5e148a9599 Merge remote-tracking branch 'upstream/develop' into develop 2016-02-01 18:35:09 +01:00
Enno Rehling
1b0561c07e start development on release 3.9 2016-02-01 18:24:27 +01:00
Enno Rehling
31f989d6c6 Merge branch 'develop' of github.com:eressea/server into develop 2016-02-01 18:20:23 +01:00
Enno Rehling
6c90ff97cb release version 3.8.1 2016-02-01 18:16:25 +01:00
Enno Rehling
d0f8723ffb refactoring: eliminate a_findc, and too much const-fuckery 2016-02-01 17:31:03 +01:00
Enno Rehling
23e57c6bff fix missing translation error messages during tests. 2016-02-01 14:06:56 +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
ba39fc9284 I'm really bad at reading. Fixed! 2016-01-31 22:17:55 +01:00
Enno Rehling
ca81dadedb missed a spot! 2016-01-31 22:12:08 +01:00
Enno Rehling
7ebfdb0747 manually smooth out a merge of two commits trying to do the same thing.
prevent negative parents
https://bugs.eressea.de/view.php?id=2183
2016-01-31 22:10:37 +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
caac2e65b0 remove unused includes 2016-01-31 21:41:25 +01:00
Enno Rehling
b0bb566f47 clang is picky about the correct name of stdarg.h 2016-01-31 21:40:19 +01:00
Enno Rehling
217fbca656 missing include broke the gcc build 2016-01-31 21:39:28 +01:00
Enno Rehling
3e57b19d62 stop duplicate parsing of arguments 2016-01-31 21:36:01 +01:00
Enno Rehling
8f4e6475c7 complete redesign of the log library (almost finished?) 2016-01-31 19:54:49 +01:00
Enno Rehling
1ec20aed16 fix crash when aging stone circles without an astral plane 2016-01-31 13:47:18 +01:00
Enno Rehling
9376aa5c46 Merge branch 'develop' of github.com:eressea/server into develop 2016-01-30 23:09:38 +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
f3ab4d5ca6 release version 3.7.10 2016-01-30 22:57:51 +01:00
Enno Rehling
a94a238af0 addparam_region fix: all regions in spell parameters should be in the "normal" plane. 2016-01-29 20:04:05 +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
69d2c7c9b3 get_normalplane is unnecessary 2016-01-28 12:46:38 +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
2f70054d2f braineaters outside of astral sapce lose 50% of their innate magic resistance. 2016-01-28 10:58:28 +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
5072d59636 release version 3.7.9 2016-01-24 14:51:52 +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
6286100350 github issue #458, valgrind reports uninitialized data 2016-01-24 14:21:14 +01:00
Enno Rehling
2b0a2750ba null-pointer check (coverity result) 2016-01-17 19:03:30 +01:00
Enno Rehling
0e30f392c4 Merge branch 'feature/crypt-passwords' of https://github.com/ennorehling/eressea.git 2016-01-15 08:54:56 +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
568e1a2976 prevent null-pointer crash when reading f.password (TODO: write-only variables are dumb) 2016-01-14 21:23:53 +01:00
Enno Rehling
09a0e806bc gcc compilation fix 2016-01-14 17:29:20 +01:00
Enno Rehling
6c80bc52b5 generate a good-ish salt 2016-01-14 16:50:42 +01:00
Enno Rehling
8d05f4cc25 implement MD5 crypted passwords as default 2016-01-14 15:49:09 +01:00
Enno Rehling
3a8a05380b fix gcc compilation warnings 2016-01-13 16:19:59 +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
b8a0c61fee Merge branch 'feature/crypt-passwords' of https://github.com/ennorehling/eressea.git 2016-01-13 12:37:12 +01:00
Enno Rehling
f14ee2adaa include the password module in the list of unit tests 2016-01-13 12:37:07 +01:00
Enno Rehling
58b0ad19d0 NULL needs a platform-dependent include 2016-01-13 00:06:06 +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
4f7b274bf6 Merge branch 'master' into develop
Conflicts:
	res/core/messages.xml
	src/buildno.h
2016-01-01 16:38:57 +01:00
Enno Rehling
b8a474db27 release version 3.7.8 2016-01-01 16:37:56 +01:00
Enno Rehling
c5c0a590a2 Merge branch 'master' of github.com:eressea/server 2016-01-01 16:37:31 +01:00
Enno Rehling
25966b3d7f add tests for snowglobe error messages 2016-01-01 16:30:09 +01:00
Enno Rehling
2c7790af9c Merge pull request #445 from stm2/dragon_move
make dragon movement more deterministic
2015-12-31 21:16:56 +01:00
Enno Rehling
e7c23b15db add missing files 2015-12-30 21:22:28 +01:00
Enno Rehling
e1f3b3cdcf passing order object into lua use-functions, so we can use them in error messages. 2015-12-30 21:20:59 +01:00
Steffen Mecke
1aca1c6a87 fix logic bug 2015-12-30 14:04:10 +01:00
Enno Rehling
2aafb841a5 Merge branch 'master' into develop
Conflicts:
	res/core/messages.xml
	scripts/eressea/e3/init.lua
	scripts/eressea/xmas.lua
	scripts/eressea/xmasitems.lua
	src/buildno.h
	src/laws.c
2015-12-26 14:46:20 +01:00
Enno Rehling
1dc69bb1e8 release version 3.7.7 2015-12-26 14:40:47 +01:00
Enno Rehling
e574919555 Merge branch 'master' of github.com:eressea/server 2015-12-26 14:40:21 +01:00
Enno Rehling
b66b6f7f4c testing christmas items, removing old xmas scripts 2015-12-22 19:33:44 +01:00
Enno Rehling
cf90f8cf93 it's beginning to look a lot like christmas
Conflicts:
	scripts/eressea/xmas.lua
2015-12-22 18:46:57 +01:00
Enno Rehling
3fd4884584 putting all of the pieces together for the snow globe, with final use implementation still TBD
Conflicts:
	scripts/eressea/xmasitems.lua
	src/laws.c
2015-12-22 18:46:42 +01:00
Enno Rehling
55c15c1905 add a lua binding to convert user-language strings to directions 2015-12-22 18:38:12 +01:00
Enno Rehling
1f080e2058 release version 3.7.6 2015-12-20 20:17:10 +01:00
Enno Rehling
c9d74ee6ca Merge branch 'master' of github.com:eressea/server 2015-12-20 20:13:15 +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
30acc38d53 https://bugs.eressea.de/view.php?id=2174
fix terrain type in detectocean message.
2015-12-17 20:36:21 +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
beb12372e0 remove wormhole_data struct now that it's nearly empty 2015-12-17 13:10:09 +01:00
Enno Rehling
9d1b5dccb8 resolve a TODO by reducing wormhole data size 2015-12-17 13:04:51 +01:00
Enno Rehling
74d8b53ba8 fix a TODO, reduce size of icastle_data 2015-12-17 12:59:12 +01:00
Enno Rehling
a02d71bfef https://bugs.eressea.de/view.php?id=2176
generate the reduced production message before writing reports, so it shows in the CR.
2015-12-17 12:40:22 +01:00
Enno Rehling
9e4344e3c3 resolve a TODO, make attribute (and data) a little bit smaller. 2015-12-17 12:23:07 +01:00
Steffen Mecke
09836ed249 make dragon movement more deterministic 2015-12-17 11:47:08 +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
fadccb5bd6 MS Visual Studio 2015 update 1 breaking changes (relative include files) 2015-12-16 17:02:29 +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
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