CTD
5e2c5657bd
Falscher Magischer Beutel bei Gewichtsberechnung
...
Bei der Änderung
92f43a7b51
wurde der Magische Beutel durch den Magischen Kräuterbeutel ersetzt, so
das dieser nun das Gewicht reduzierte und der "Bag of Holding" völlig
nutzlos wurde.
2014-07-17 12:59:47 +02:00
TomBraun
19ce861120
Change umlauts in the german comment
2014-07-16 12:10:58 +02:00
CTD
3bd63955a2
Klammern vergessen
2014-07-16 10:28:32 +02:00
CTD1
700a88fd79
Umlaute in Kommentaren
...
sind doof.
2014-07-15 15:46:02 +02:00
CTD1
6987c61d97
Bug 0002014: Zwergenausrüstung kann nicht hergestellt werden
...
Nicht auf die Fraction Rasse checken, (die ist normalerweise Halbling, kann aber auch Zwerg sein wenn mit der Starteinheit eigenartige Dinge gemacht wurden) sondern ob der Hersteller eine Zwergen oder Golem ist.
Da Zwergensachen nur von Zwergen benutzt werden können, stellt es keinen Vorteil für andere Völker da wenn sie über Golems Zwergensachen machen können.
2014-07-15 15:34:42 +02:00
CTD1
38a754844e
BUG 0001980: Gegener hält Burg obwohl alle geflohen sind!
...
http://bugs.eressea.de/view.php?id=1980
Der Test unten erzeugt eine Temp-Einheit welche nach dem Kampf die Burg hält, trotz einer vernichtenden Niederlage innerhalb von 2 Kampfrunden. Der Angreifer darf die Burg zwar betreten, bekommt aber nicht das Kommando.
Grund ist das beim Betreten der Burg via u_set_building() nur dann die betretende Einheit zum Burgenbesitzer wird wenn es keinen Burgenbesitzer gibt.
Die eher aufgerufene Funktion building_owner() versucht zwar nach dem Kampf einen neuen Burgenbesitzer zu finden, da sich zu diesem Zeitpunkt aber nur eine Tote Einheit und einen Temp Einheit, beide mit 0 Personen, in der Bug befinden schlägt dies Fehl. Es wird von der Funktion zwar 0 zurückgegeben, aber b->_owner wird nicht zurückgesetzt (Vermutlich da der Server an anderer Stelle sonst annimmt das noch nie jemand in der Burg war). Daher die Überprüfung bei u_set_building ob der Burgenbesitzer tot ist, und wenn ja wird die betretende Einheit neuer Burgenbesitzer.
local r1 = region.create(1, 2, "plain")
local f1 = faction.create("a@b.de", "human", "de")
local f2 = faction.create("c@d.de", "human", "de")
f1.age=20
f2.age=20
local b1 = building.create(r1, "castle")
b1.size = 100
local u0 = unit.create(f1, r1, 10)
u0.building = b1
u0:add_item("money", u0.number * 100)
u0:clear_orders()
u0:add_order("KÄMPFE")
u0:add_order("MACHE TEMP 1")
u0:add_order("ENDE")
local u1 = unit.create(f1, r1, 100)
u1.building = b1
u1:add_item("money", u1.number * 100)
u1:clear_orders()
u1:add_order("KÄMPFE FLIEHE")
u1:add_order("GIB TEMP 1 ALLES PERSONEN")
u1:add_order("GIB TEMP 1 ALLES")
u1:add_order("GIB TEMP 1 Kommando")
local u2 = unit.create(f2, r1, 101)
u2:add_item("sword", u2.number)
u2:add_item("money", u2.number * 100)
u2:set_skill("melee", 16)
u2:clear_orders()
u2:add_order("KÄMPFE")
u2:add_order("ATTACKIEREN " .. itoa36(u1.id))
u2:add_order("BETRETE BURG " .. itoa36(b1.id))
process_orders()
Das sollte für Schiffe eigentlich das gleiche sein, also da die gleiche Änderung.
2014-07-15 15:24:21 +02:00
Enno Rehling
acb0cd7404
installed build 677 in production, increase build number to 678
2014-07-07 03:42:43 +02:00
Enno Rehling
b2b35fd9d0
add a test for the E3 reduced give quota.
...
foreign units receive only 50% of silver given to them.
Conflicts:
tests/pool.lua
2014-07-07 03:41:33 +02:00
Enno Rehling
68d96014b1
a new method for finding out that a unit died in battle.
...
turns out, a unit can have 0 people without dying or being a TEMP (GIVE them all away, then RECRUIT more).
2014-07-06 13:00:14 -07:00
Enno Rehling
4d173cf7e2
if a unit is empty, and not a TEMP, then it is dead and cannot recruit.
...
This fixes http://bugs.eressea.de/view.php?id=2010
2014-07-06 12:39:03 -07:00
Enno Rehling
fdae518ef7
also read the extended race::ec_flags from JSON configuration.
2014-07-06 00:53:15 -07:00
Enno Rehling
88f9d247bd
Revert "use race::flags|RCF_NOGIVE instead of race::ec_flags|GIVEITEM"
...
E3 Tests (GIVE) did not pass.
This reverts commit 5ec3f5b83a
.
2014-07-06 00:29:52 -07:00
Enno Rehling
5ec3f5b83a
use race::flags|RCF_NOGIVE instead of race::ec_flags|GIVEITEM
...
None of this has tests, it'd going to be years before a change like this can be made without fear D-:
2014-07-05 23:31:34 -07:00
Enno Rehling
b21cb8f5c7
Simple test for rules.give (there are many more, can_give deserves a test to itself).
...
The more tests I write, the more I hate the infrastructure for them.
2014-07-05 23:06:51 -07:00
Enno Rehling
b9b627a171
refactor setup for economy tests.
...
rename can_steal->check_steal for consistent naming, check_give->can_give, too.
2014-07-05 22:47:26 -07:00
Enno Rehling
f14264e3bb
test coverage for can_steal.
...
add a default message for when no messages are loaded, so that msg_feedback/msg_message doesn't return NULL when XML has not been laoded.
initialize some core stuff before running tests (there probably needs to be more).
2014-07-05 20:14:11 -07:00
Enno Rehling
072f927d5b
replace RCF_CANSTEAL with RCF_NOSTEAL for less confusing default behavior.
2014-07-05 19:29:12 -07:00
Enno Rehling
5b437c5833
Replace RCF_PLAYERRACE with RCF_NPC, it's the less confusing default for tests.
2014-07-05 19:21:06 -07:00
Enno Rehling
4a8707b06d
fix a fall-through in jsonconf causing an error message.
...
add tests for pool, not working because of missing GIVEITEM on
JSON-configured races (TBD).
2014-07-05 18:21:20 -07:00
Enno Rehling
d743d32215
bind "blocked" flag for Lua (bug 1922).
...
remove unused region-flags.
2014-07-05 10:46:43 -07:00
Enno Rehling
d5e9899544
remove battle statistics, the flag is not set anywhere, and I have not used them in ages.
2014-07-05 10:45:03 -07:00
TomBraun
990b6505bf
Fix BUG 0001976
...
http://bugs.eressea.de/view.php?id=1976
Check that only buling owner set k_pay disable
If other unit inside the building set k_pay disable
it have now no effect, before only fraction was check
Conflicts:
scripts/tests/eressea.lua
2014-07-04 22:45:53 -07:00
TomBraun
783df84055
BUG owner of a building can't enter ship
...
If owner of a building want to enter a ship or other building,
he must first leave the bulding.
Commands are "leave" and "enter <ship/tower> <ID>".
For buildings was that OK but not for ships.
The building owner was inside the region after that commans
and not in the ship.
2014-07-04 22:31:09 -07:00
Enno Rehling
8fc137d780
Expose the "working" flag for buildings to Lua.
...
Test working vs. unpaid harbour landigns with a ship.
2014-07-04 22:12:12 -07:00
Enno Rehling
26d6808ea1
read building-maintenance requirements from JSON.
2014-07-04 21:48:17 -07:00
Enno Rehling
e0ee82e977
Do not default newly created buildings to being maintained and working (do that in the create order instead).
...
This was mucking up one of the new tests.
2014-07-04 16:13:48 -07:00
Enno Rehling
dd408da3f4
resolve naming conflict on windows.
2014-07-03 12:20:50 -07:00
Enno Rehling
ccbcf14458
Merge branch 'master' of github.com:eressea/server
2014-07-03 05:15:47 -07:00
Enno Rehling
f505ae8eb7
copy names of callbacks when registering them
2014-07-03 05:15:38 -07:00
Enno Rehling
162375842b
introducing new callback system
2014-07-03 05:10:53 -07:00
Enno Rehling
22c5b4d45c
Merge branch 'master' of github.com:eressea/server
2014-07-02 21:27:53 -07:00
Enno Rehling
b5439a1279
fix line/column calculation for JSON Errors.
...
+ start building a test for http://bugs.eressea.de/view.php?id=1692
2014-07-02 21:17:31 -07:00
Enno Rehling
91a776c0ac
begin configuring spells from JSON
2014-07-02 21:15:22 -07:00
Enno Rehling
ee1d97df19
remov e the old recycling quota, it was always 0.5 everywhere, and a
...
silly feature..
2014-07-01 20:36:31 -07:00
Enno Rehling
54a3c2e070
recycle quota is always 0.5 in every game, no reason to toch this.
2014-06-30 19:25:08 -07:00
Enno Rehling
927ada92b6
improve construction data in JSON.
...
test castle naming function
2014-06-30 19:21:42 -07:00
Enno Rehling
e39336e87a
move declaration to top of block
2014-06-29 20:09:21 -07:00
Enno Rehling
7a6b237de0
Merge branch 'master' of github.com:TomBraun/server into TomBraun-master
...
Conflicts:
src/kernel/build.c
src/kernel/item.c
2014-06-29 20:05:44 -07:00
Enno Rehling
9dcf5bbf4c
fix a crash for invalid race enums
2014-06-29 19:15:03 -07:00
Enno Rehling
12661fc373
new_itemtype has been replaced, delete it.
2014-06-29 19:09:37 -07:00
Enno Rehling
22f64abaf2
caching get_race() calls
2014-06-29 19:04:30 -07:00
Enno Rehling
c3dfbdea18
eliminate new_race array in favor of a function (TODO: make it fast)
2014-06-29 18:10:02 -07:00
Enno Rehling
11a264742b
appearance is something only items have, so move it to item_type
2014-06-29 17:35:37 -07:00
Enno Rehling
2a00301949
unused variable
2014-06-29 17:31:33 -07:00
Enno Rehling
062ba71bd7
fix reading items in xmlreader (still has no tests)
2014-06-29 17:29:41 -07:00
Enno Rehling
5d32896407
rt_register is no longer required, new_resourcetype replaced by rt_get_or_create.
2014-06-29 17:02:45 -07:00
Enno Rehling
95929a99b5
we are about to remove rt_register, but not quite yet.
2014-06-29 16:46:42 -07:00
Enno Rehling
773f3767d3
eliminate cb_items
2014-06-29 16:41:03 -07:00
Enno Rehling
7ee6f0444d
reduce use of cb_items, because we want to remove it.
2014-06-29 16:39:53 -07:00
Enno Rehling
7249630e3c
Eliminate some Visual Studio warnings, rename itemnames->resourcenames.
2014-06-29 15:41:04 -07:00
Enno Rehling
2e4adddb8f
Merge branch 'master' of github.com:eressea/server
2014-06-29 21:51:41 +02:00
Enno Rehling
2af434cfef
installing build 676 in production
2014-06-29 21:51:28 +02:00
Enno Rehling
1000c1f911
random encounters in land regions only (nobody will ever enter a firewall, and astral plane shouldn't have it either)
2014-06-29 12:47:11 -07:00
Enno Rehling
6bd2b3be26
add a test for stone golems building castles.
...
fix a bug when stone golems use themselves up.
2014-06-28 23:58:00 -07:00
Enno Rehling
a48cca5db8
building naming function configured from JSON (this needs work).
...
started writing tests for castles.
2014-06-28 16:55:28 -07:00
Enno Rehling
612dfea36f
Merge branch 'master' of github.com:eressea/server
2014-06-28 16:39:54 -07:00
Enno Rehling
89e7a7826f
added some tests for building buildings.
2014-06-28 16:19:46 -07:00
TomBraun
c31c436cc7
change u->number >> 0 to u->number>0
2014-06-28 20:45:17 +02:00
Enno Rehling
34ce9a0573
JSON configuration can read strings, with test.
2014-06-28 10:37:40 -07:00
Enno Rehling
9e21f1d05e
Merge branch 'master' of github.com:eressea/server
2014-06-27 07:50:08 -07:00
Enno Rehling
9b01b71a19
config returns a value, so we can assert corrrect JSON syntax
2014-06-27 07:36:18 -07:00
TomBraun
b346788e43
Merge remote-tracking branch 'eressea/server'
2014-06-27 07:35:21 +02:00
Enno Rehling
39f78354b9
Merge branch 'master' of github.com:eressea/server
2014-06-26 22:06:38 -07:00
Enno Rehling
06d92181fe
option for release builds
2014-06-26 22:05:17 -07:00
Enno Rehling
68aa903130
make tests pass through valgrind
...
introduce more #ifdef LOMEM to bitfield structs.
2014-06-26 21:48:01 -07:00
Enno Rehling
c5cf8bb3be
add some asserts, chasing a valgrind message
2014-06-26 21:27:50 -07:00
Enno Rehling
5e835618f3
fix weight calculation, uninitialized value
2014-06-26 21:02:03 -07:00
Enno Rehling
dba51bf0f7
remove duplicate handling of "speed" attribute in JSON
...
add weight and capacity in this test (still broken)
2014-06-26 19:11:34 -07:00
TomBraun
99da4de9ad
Define "pf_generic cast = 0" and "pf_generic fumble = 0" early
...
Visual Studio 2013 express don't compile without errors if
this definition comes to late.
2014-06-26 07:20:59 +02:00
TomBraun
be4e02cc16
Merge remote-tracking branch 'upstream/master'
2014-06-26 07:37:30 +02:00
Enno Rehling
d0e2ad542a
tests for basic movement
2014-06-25 14:30:24 -07:00
Enno Rehling
12e15978b8
read weight, capacity and flags of items
2014-06-25 08:00:09 -07:00
Enno Rehling
af77a1d8e5
speed up float params, exploiting alphabetic sorting
2014-06-25 07:25:54 -07:00
Enno Rehling
07d10d9ab0
add tests for get_param functions
2014-06-25 07:22:39 -07:00
TomBraun
d4fdddbc27
Iron golems can now create dwarfen only items
...
(makes irongolems usable for dwarfs)
2014-06-25 13:24:06 +02:00
TomBraun
0400bcafad
Iron and Stone golems now use the corect number of stones / iron.
...
0001946: Eisengolems stellen keine Waren her
http://bugs.eressea.de/view.php?id=1921
2014-06-25 13:22:42 +02:00
TomBraun
84fb776d1c
Fixed a bug that crasehed the server
...
when Stonegolems created a new building
and the whole unite was consumed during this process
(could not enter the new building as no one was left in the unit)
2014-06-25 13:15:37 +02:00
Enno Rehling
a75d91fb6d
remove the last of the static item_type variables.
2014-06-24 23:13:18 -07:00
Enno Rehling
31c0e5c2a4
read items from JSON, with no properties yet
2014-06-24 22:54:10 -07:00
Enno Rehling
92f43a7b51
eliminate it_find calls, replace it_find with something backed by rt_find
2014-06-24 22:44:05 -07:00
Enno Rehling
9d24c3c291
testing resource caching
2014-06-24 19:51:06 -07:00
Enno Rehling
dc8a8cdd71
rt_find -> get_resourcetype optimization
2014-06-24 08:19:11 -07:00
Enno Rehling
d581737744
optimization: caching resource types in get_resourcetype.
...
eliminate some it_find calls.
eliminate static variables, they make testing hard.
2014-06-24 07:42:45 -07:00
Enno Rehling
7adb8498aa
Merge branch 'fix_block_movement' of github.com:stm2/server into stm2-fix_block_movement
...
Conflicts:
scripts/tests/eressea.lua
src/kernel/move.c
2014-06-23 20:34:07 -07:00
Enno Rehling
77ee0b7af7
remote the item_t enum for good
2014-06-23 19:17:13 -07:00
Enno Rehling
73da14e305
getting rid of the olditemtypes[] array
...
reduce use of statics
reduce use of item_t enum
2014-06-23 07:28:10 -07:00
Enno Rehling
1444ee58f2
kill XEBALLOON etc, fix some strings
2014-06-22 10:43:05 -07:00
Enno Rehling
2c831230a0
Added a test for expensive skills.
...
When resetting the game rules, make sure basic resources (money, hp, person) are initialized.
2014-06-22 07:55:14 -07:00
Enno Rehling
43dc69d94a
copy/paste error
2014-06-21 14:44:40 -07:00
Enno Rehling
d9972a9da9
call init_skills when not using JSON config
2014-06-21 14:39:56 -07:00
Enno Rehling
bfadc4914f
add JSON configuration to skills, and tests
2014-06-21 08:53:14 -07:00
Enno Rehling
46f6628a08
remove obsolete commands (PRAY) and parameters
2014-06-21 07:34:36 -07:00
Enno Rehling
bff25f3c51
move skill_t into a separate file, give it unit tests.
...
name functions the same as we did for keyword/direction earlier.
to do: json configuration and lua test.
2014-06-20 23:59:04 -07:00
Enno Rehling
ceabbebc90
switch remaining flags from unsigned to int.
2014-06-18 20:53:06 -07:00
Enno Rehling
eb567918e5
forgot to init the bindings for game.pkg
...
next problem to solve: skills
2014-06-17 23:50:13 -07:00
Enno Rehling
3625ba6a95
remove static variables optimizations, they create global state that is bad for testing
2014-06-17 23:10:55 -07:00
Enno Rehling
8166519d30
add a list of valid coasts to ship definition in JSON.
...
fix endless loop in error-line counting.
2014-06-17 21:33:42 -07:00
Enno Rehling
6788d552cd
remove parameters for old PRAY command.
...
Add an eressea.game module to Lua bindings.
2014-06-17 18:12:24 -07:00
Enno Rehling
b6b790d7e7
add a config.reset function to clear configuration state before tests.
2014-06-17 08:46:22 -07:00
Enno Rehling
0675c50c7f
keyword lookup macro
2014-06-16 23:05:39 -07:00