18cdbd9eab
Increase tile-based pathfinder maximum search range, so it's at least enough to reach from one side of Acropolis to the other
...
This was SVN commit r9026.
2011-03-05 14:38:08 +00:00
e608d9269a
Load entity templates for the AI via the progressive loader.
...
Display message while loading the map list for the setup screen.
This was SVN commit r9019.
2011-03-05 01:56:59 +00:00
bec4c6437b
Make non-combat units flee when under melee attack, and not attack enemies automatically.
...
Fixes #703 .
This was SVN commit r9010.
2011-03-04 14:36:41 +00:00
2ef1b9a867
Make projectiles that miss their target continue until hitting the terrain.
...
Fixes #706 .
This was SVN commit r9008.
2011-03-04 00:43:48 +00:00
16a4eb36dd
Various minor optimisations.
...
Enable SpiderMonkey method JIT in Release mode.
Add Engine.ProfileStart/Engine.ProfileStop functions for scripts.
Fix AI to clone initial entity data and shared metadata.
This was SVN commit r9003.
2011-03-03 00:16:14 +00:00
dbc6d27411
Optimise obstruction grid updates in the common case when terrain hasn't changed
...
This was SVN commit r9001.
2011-02-28 01:24:12 +00:00
794584ea11
Optimise tile-based pathfinder, particularly for large maps.
...
This was SVN commit r9000.
2011-02-28 00:35:53 +00:00
d805ef356e
FileExists -> VfsFileExists (see next commit)
...
scriptInterface: fix bool cast warning
This was SVN commit r8984.
2011-02-25 16:30:55 +00:00
f4f36af852
Block new buildings being placed on top of existing not-yet-started foundations. Fixes #740 .
...
This was SVN commit r8980.
2011-02-24 21:49:24 +00:00
f6c1d98c9a
Fix #739 (test failures).
...
Use JSON in debug serializer output unless it fails due to e.g. cyclic
values, in which case use toSource.
Disable file stats code by default, since its output isn't used.
This was SVN commit r8975.
2011-02-24 00:32:38 +00:00
b24396740c
Disable XML validation when loading templates for AI, to save startup time
...
This was SVN commit r8959.
2011-02-20 20:45:39 +00:00
6ba12dd2ff
Pretty-print JS values in debug serializer
...
This was SVN commit r8958.
2011-02-20 20:44:36 +00:00
720bb3c87d
Remove unnecessary rooting
...
This was SVN commit r8957.
2011-02-20 20:44:13 +00:00
1b1230ca3e
wgl compile fix: add types required by new wglext.h
...
wutsname fix (noticed by Philip from hwdetect information, thanks!):
uname.release wasn't always set.
BinarySerializer.h: warning fix
This was SVN commit r8940.
2011-02-19 18:00:09 +00:00
f3372bf11d
Add some rough performance reporting.
...
Make the profiler converge a bit faster.
This was SVN commit r8939.
2011-02-19 03:14:37 +00:00
3e13c300cc
Fix non-PCH build error
...
This was SVN commit r8938.
2011-02-19 00:46:14 +00:00
1c7e33b528
Remove a load of implicit CStr type conversions, since they're error-prone and can cause silent data loss.
...
Handle most CStr8/CStrW conversions via UTF-8 instead of effectively
assuming Latin-1.
Return UTF-8 strings from Xeromyces API.
This was SVN commit r8929.
2011-02-17 20:08:20 +00:00
9b25df5958
Fix #591 (Disable sounds for units in FoW/SoD), based on patch from Bogi
...
This was SVN commit r8910.
2011-02-11 23:02:19 +00:00
b73c544f2a
Fix warning
...
This was SVN commit r8903.
2011-02-10 22:55:41 +00:00
b8925fbbc9
# Support AI construction of buildings.
...
Pass terrain passability data to AI scripts.
Expand pathfinder passability data to 16 bits per tile, to allow more
classes.
Support 16-bit ints in serializer.
Partially support JS typed arrays.
Allow foundations to be placed on top of units (fixes #499 ).
Stop farms and fishes blocking movement (fixes #534 ).
Add obstruction flags to allow finer control over what they block.
Associate entity IDs with obstruction shapes, to allow finding colliding
entities.
Support moving to the edge of a target entity with inactive obstruction.
Support foundation entities in AI.
Support playing as non-hele civs.
This was SVN commit r8899.
2011-02-10 16:06:28 +00:00
57e5bb878a
Initial terrible AI player scripts.
...
This was SVN commit r8891.
2011-02-05 20:35:34 +00:00
caad072347
Expand pathfinder boundaries to stop units disappearing off the edge of the visible map.
...
This was SVN commit r8887.
2011-02-03 19:40:41 +00:00
02e7eb69ff
# Add solid black sides to the map, to hide underwater terrain.
...
This was SVN commit r8886.
2011-02-03 14:36:54 +00:00
fe21c5e023
# Rewrite fog-of-war rendering.
...
Disable shadows when only 2 TMUs available.
Clean up some other rendering code.
This was SVN commit r8882.
2011-02-03 01:12:24 +00:00
c3b734775b
Simplify component interface: remove explicit context parameter, use GetSimContext() instead.
...
This was SVN commit r8867.
2011-01-16 14:08:38 +00:00
f39f279132
Add AI script code to provide a cleaner API around the engine interface.
...
Handle AIProxy entirely through scripts.
Support structured clones of script values.
Improve performance.
Support multiple script contexts sharing a runtime.
Use a separate context per AI player.
This was SVN commit r8866.
2011-01-15 23:35:20 +00:00
dd501b2a5a
# Add initial basic player AI framework.
...
Support direct access to serializer streams, so serializers can be
nested.
Make component script "this.template" read-only.
Stop globally-subscribed component scripts receiving messages posted to
local components, to reduce out-of-sync risks.
Move pathfinder data out of entity template directory.
Fix GuiInterface deserialization.
This was SVN commit r8865.
2011-01-12 12:29:00 +00:00
d8cd31d4b6
Add probably-unnecessary script serialization test.
...
This was SVN commit r8862.
2011-01-12 12:13:11 +00:00
aaef1b0d74
Add script for generating mostly-useless component interaction graphs.
...
Fix some components to use more standard syntax.
This was SVN commit r8857.
2011-01-07 20:31:48 +00:00
5e3049f6b2
BuildLimits. Needs some configuration changes to work
...
This was SVN commit r8836.
2010-12-11 23:19:17 +00:00
ba2a9d7af3
improvements from work: [update-workspaces required]
...
- split precompiled.h into several headers (simplifies reuse)
- enable additional warnings not in W4
- split ErrorReaction into ErrorReactionInternal - clarifies which
values can actually be returned by debug_DisplayError
- wsdl: slightly safer HDC usage via CS_OWNDC, avoid dipping into DC
cache via ValidateRect instead of BeginPaint; remove unused thread
create
- StdDeserializer - wasn't including byte_order => BYTE_ORDER was
undefined
- wsysdep: clean up error dialog message handling
This was SVN commit r8828.
2010-12-09 11:16:21 +00:00
f04c2561b7
Various resource shuttling improvements. Fixes #672 .
...
This was SVN commit r8811.
2010-12-08 16:12:04 +00:00
0b0b11d2e0
Fix occasional assertion failure in time warp mode
...
This was SVN commit r8810.
2010-12-08 16:09:53 +00:00
6b4478209b
Fix accidental use of hard-coded constant.
...
Don't bother recomputing terrain speeds multiple times per turn.
This was SVN commit r8753.
2010-11-30 14:48:04 +00:00
ab186c2b16
Update UnitMotion logic, to partially simplify it.
...
Do all pathfinding asynchronously.
Recalculate paths when the target has moved.
Fix vertex pathfinder start point heuristic, to avoid finding
zero-length paths.
When units fail to reach a resource to gather, look for another resource
of the same type.
This was SVN commit r8751.
2010-11-30 12:31:54 +00:00
3b405efc6b
Increase serializer reserved buffer space to cope with huge maps.
...
This was SVN commit r8748.
2010-11-30 12:24:46 +00:00
f378a63d94
Add some tests for UnitAI.
...
Fix said tests for UnitAI.
Hopefully fix #647 too.
Document HFSM interface a bit.
Add Engine.DumpSimState() console command for debugging.
This was SVN commit r8681.
2010-11-22 20:12:04 +00:00
e4d356c3bf
Map exploration counter for summary screen
...
This was SVN commit r8679.
2010-11-21 19:42:26 +00:00
bd3bd084c0
Support new SpiderMonkey API.
...
wposix: Define int8_t compatibly with SpiderMonkey.
Remove unused camera, lightenv JS interfaces.
Remove most of vector JS interface.
Remove some of the redundant JS string conversion functions.
Remove unneeded vmem, _lodBias functions.
Clean up some formatting.
This was SVN commit r8629.
2010-11-16 23:00:52 +00:00
9c521ceb3b
Add minimum range to range queries
...
This was SVN commit r8627.
2010-11-16 20:43:15 +00:00
13d2e44ff5
Run GC frequently in the simulation script context, to keep memory usage down
...
This was SVN commit r8622.
2010-11-15 15:03:40 +00:00
816c810791
Windows fix
...
This was SVN commit r8614.
2010-11-15 00:48:34 +00:00
4a1bc8e11a
Optimise LOS visibility updates
...
This was SVN commit r8613.
2010-11-15 00:36:15 +00:00
4100a13e0a
# Add resource shuttling.
...
Add resource-carrying animations/props to an actor for testing.
Warn more quietly about invalid cursor names.
This was SVN commit r8589.
2010-11-13 19:15:29 +00:00
644b9aedea
# Add double-click and triple-click selection modes, based on patch by Christoph and evans.
...
Fixes #515 .
This was SVN commit r8544.
2010-11-07 00:12:55 +00:00
5d764f1435
Run network server in a separate thread, to minimise latency.
...
Make some parts of logger and console thread-safe.
Simplify console: remove special commands; remove prefix for script
commands.
Remove LOG_ONCE, to simplify logger.
Change some code to use the new logger interface.
Fix OOS when revealing map.
Clean up some formatting.
This was SVN commit r8511.
2010-10-31 22:00:28 +00:00
1840bb3507
Stop units walking outside the edges of circular maps.
...
Switch the GUI between square/circular minimap automatically.
This was SVN commit r8500.
2010-10-30 18:25:34 +00:00
10c5dbcba4
Fix Atlas and autostart.
...
Fix non-POD in varargs.
Remove misleading max_players config variable (the engine doesn't care
about it, all the limits are hard-coded).
Remove civ-center-based player civ initialisation hack.
Add dummy player_defaults.json.
Clean up formatting a bit.
This was SVN commit r8498.
2010-10-30 13:27:23 +00:00
9ee44bd9b8
Game setup changes, including showing name, civ, team, and some options loaded from the scenarios. Civ data added. Civ info window to preview civs. Icon tooltips. Support for random map implementation. Fixes #590 .
...
This was SVN commit r8494.
2010-10-30 04:02:42 +00:00
02aa8499ed
Partial experimental version of circular maps
...
This was SVN commit r8470.
2010-10-25 21:59:52 +00:00
bcc5c87045
Fix bandbox selection of out-of-world entities
...
This was SVN commit r8450.
2010-10-23 21:48:18 +00:00
e13196e7a2
Fix serialization of most components
...
This was SVN commit r8449.
2010-10-23 19:59:40 +00:00
c0a7a36f7a
Use JSFastNative API in more places, for improved compatibility with future SpiderMonkey versions.
...
Remove some unnecessary script-exposed functions, and move some more
into the Engine namespace.
This was SVN commit r8428.
2010-10-21 19:54:59 +00:00
ab6702ffaa
Fix typo in comment
...
This was SVN commit r8326.
2010-10-10 19:14:22 +00:00
7b82173bad
Avoid potential integer overflow in pathfinder
...
This was SVN commit r8298.
2010-10-06 23:50:07 +00:00
de673be78a
Fix likely cause of "unexpected PathResult" warnings
...
This was SVN commit r8297.
2010-10-06 22:17:34 +00:00
f2e96f3f3c
Reduce brightness of fogged objects.
...
This was SVN commit r8273.
2010-10-04 17:35:13 +00:00
ab77ec40e4
Fix highlighting of obstructed building placement previews.
...
Prevent building in non-visible areas.
Fixes #594 .
This was SVN commit r8272.
2010-10-04 17:34:33 +00:00
795be260be
Improve docs
...
This was SVN commit r8268.
2010-10-04 11:38:43 +00:00
aa32677784
Restore highlighting of units on hover.
...
Optimise overlay code a bit.
This was SVN commit r8253.
2010-10-03 16:48:52 +00:00
9a0db9713e
Add resource supply status bars.
...
Change bar size for buildings.
Only highlight one entity on mouse hover, and only if it's not a unit.
Display status bars on foundations.
This was SVN commit r8249.
2010-10-03 00:30:43 +00:00
7ea522a484
# Add on-screen health bars
...
This was SVN commit r8241.
2010-10-02 12:41:29 +00:00
fcedcae052
# Add victory/defeat conditions, based on patch from fcxSanya.
...
Fixes #565 .
This was SVN commit r8234.
2010-10-01 20:51:21 +00:00
82691683cb
Fix #56 (add unit-following camera mode (press 'F')), based on patch from markelov.
...
Remove obsolete IsNewSimulation function.
This was SVN commit r8190.
2010-09-26 23:05:25 +00:00
85deca90e4
Fix projectiles in FoW
...
This was SVN commit r8163.
2010-09-23 13:09:35 +00:00
e1082e5adb
Fix warnings
...
This was SVN commit r8162.
2010-09-23 12:54:16 +00:00
924d1219a7
# Add fog-of-war.
...
Move Vision component to C++, for more efficient FoW processing.
Disable FoW on demo maps.
This was SVN commit r8160.
2010-09-23 12:13:13 +00:00
3d8d354a18
# Optimise spatial queries.
...
This was SVN commit r8136.
2010-09-19 18:08:56 +00:00
8a98102195
Fix serialize/deserialize API asymmetry.
...
Add serialization support to more components.
This was SVN commit r8122.
2010-09-17 17:53:26 +00:00
a29bb003f2
Fix warning message in replays
...
This was SVN commit r8121.
2010-09-17 17:50:43 +00:00
db047e5bee
Cache message JS conversions, to make broadcasts faster
...
This was SVN commit r8120.
2010-09-17 17:49:39 +00:00
2e7436434d
warning fixes: mostly size_t vs. specialized API type and other type conversion.
...
added player_id_t typedef and INVALID_PLAYER, use that instead of -1.
also added sanity checks to cpu.cpp to ensure ARCH_* is correct (see
http://www.wildfiregames.com/forum/index.php?showtopic=13327&hl= )
and further predefined macros to arch.h just to be sure.
This was SVN commit r8079.
2010-09-05 09:38:30 +00:00
1fb90357b2
Fix build error
...
This was SVN commit r8059.
2010-09-03 10:09:41 +00:00
2b57f4f998
# Initial support for formation movement.
...
Support asynchronous path queries.
Allow escaping when stuck in impassable terrain tiles.
Split Update message in multiple phases, to cope with ordering
requirements.
Support automatic walk/run animation switching.
This was SVN commit r8058.
2010-09-03 09:55:14 +00:00
b712efac07
Optimise vertex pathfinder (typically ~6x faster).
...
This was SVN commit r8056.
2010-09-03 09:44:41 +00:00
188a3cab12
Split pathfinder into multiple files, to make it more manageable.
...
This was SVN commit r8055.
2010-09-03 09:32:12 +00:00
28ee4fdb5d
Fix template error when creating foundations
...
This was SVN commit r8023.
2010-08-22 10:09:01 +00:00
4e1b6d08f4
Fix lithobolos size and projectile.
...
Fix projectiles launching from actors with no ammo prop.
Fix default camera location on maps with no civ centers.
Avoid units getting stuck on the edges of buildings.
This was SVN commit r7950.
2010-08-14 22:11:32 +00:00
6c7b82130c
# Redesigned the camera control system.
...
Add shift+wheel (and Q/E, and ctrl+arrows, and ctrl+WASD) to rotate the
camera.
Restrict the rotation and zoom to narrow ranges. (Constraints can be
disabled in the dev overlay).
Smooth the movement and rotation.
Fix some stupid whitespace.
Fix some const correctness.
This was SVN commit r7930.
2010-08-13 13:26:29 +00:00
e6c3f1c482
# Use more sound effects
...
This was SVN commit r7891.
2010-08-10 01:25:24 +00:00
2ef4371798
Fix build error in tests
...
This was SVN commit r7885.
2010-08-09 09:25:13 +00:00
c728aa972c
Support the <float/> property in actors
...
This was SVN commit r7883.
2010-08-09 01:28:13 +00:00
e64d115d7c
# Change selection circles to match the player colour
...
This was SVN commit r7880.
2010-08-08 17:28:51 +00:00
07615310f2
# Add rally points for newly-trained units, based on patch from evans.
...
Fixes #521 .
This was SVN commit r7849.
2010-08-05 10:20:47 +00:00
65bcedb9fc
Load map descriptions from their XML file.
...
Add basic hold-fire stance, and use it for some test maps.
Add JSON data container to map XML files, to simplify the interaction
between scripts and maps.
Fix fixed-point printing so it roundtrips safely through map files.
Fix camera startup positions in old-format maps.
This was SVN commit r7844.
2010-08-04 21:15:41 +00:00
b292a32505
Add JS memory usage to profiler.
...
Add dumpHeaps() console function for debugging JS memory usage.
Increase default JS heap size.
Make call-time profile table appear first when toggling.
Remove some unused script functions.
This was SVN commit r7842.
2010-08-02 19:23:58 +00:00
41ad5bd965
# Add corpse decay and building collapse.
...
Make 'delete' command kill the unit instead of destroying it.
Make projectiles vanish after a timeout.
Fix projectile landing positions with low framerates.
This was SVN commit r7837.
2010-08-01 17:38:01 +00:00
423b31c130
Fix units trying to move outside themselves when ordered to their current location.
...
Remove redundant comparisons in pathfinder.
Simplify range query result ordering.
Avoid throwing exception on script errors in debug serializer.
This was SVN commit r7828.
2010-07-31 21:22:39 +00:00
3124b55cc0
Warning fixes
...
This was SVN commit r7821.
2010-07-29 21:04:07 +00:00
0cd0a1f584
# Add auto-attacking of nearby enemies.
...
Add general range-detection code.
Avoid unnecessarily computing 3D entity positions.
This was SVN commit r7817.
2010-07-29 20:39:23 +00:00
1706363bab
Fix #423 (Switch from CppDoc to Doxygen), based on patch from anr.
...
Also delete some unused declarations, and rename is_playing to
snd_is_playing.
This was SVN commit r7813.
2010-07-29 15:55:41 +00:00
ee20d0c2cb
Fix compile error
...
This was SVN commit r7807.
2010-07-25 17:03:07 +00:00
96a73bb580
Discourage units from walking outside the map.
...
Improve pathfinder performance by avoiding unnecessary grid
recalculations.
This was SVN commit r7806.
2010-07-25 14:11:21 +00:00
07d21e6a2b
Fix #497 (Make square unit outlines match the ground better), based on patch from evans
...
This was SVN commit r7788.
2010-07-22 20:52:25 +00:00
4471d37ca5
Fix script caching of inherited templates.
...
This was SVN commit r7773.
2010-07-21 16:04:17 +00:00
bd2fd6c713
Extend animal AI to all animals.
...
This was SVN commit r7771.
2010-07-20 08:45:09 +00:00
e19146cf25
# Added AI for chickens.
...
Add scripted HFSM system.
Add very basic animal AI.
Support script-only message types.
Add shift+D hotkey to toggle dev command panel.
This was SVN commit r7763.
2010-07-18 15:19:49 +00:00
8c1deecdbe
C++0x compatibility (fix narrowing conversions in initialisers; avoid ambiguity with std::next)
...
This was SVN commit r7739.
2010-07-11 22:40:17 +00:00
a46612d51e
GCC 4.0 build fix
...
This was SVN commit r7703.
2010-07-06 10:43:06 +00:00
65f4f2f0f2
Fix houses increasing pop limit before construction has finished
...
This was SVN commit r7698.
2010-07-05 18:28:19 +00:00
586ba51e4a
Fix lossy fixed<->jsval conversion.
...
(Hopefully this will really fix the OOS errors.)
This was SVN commit r7692.
2010-07-04 19:47:31 +00:00
dff694f0f0
Fix units spawning on top of each other.
...
Add type-safety to prevent that kind of bug happening again.
This was SVN commit r7691.
2010-07-04 17:19:38 +00:00
f6081101e7
Use more precision in debug serialization, to help debugging of OOS errors
...
This was SVN commit r7689.
2010-07-04 17:03:45 +00:00
d2cf6ceb88
less global variables: make most uses of g_VFS explicit (required for another app that has two VFSes), g_yres is no longer required by cursor module
...
This was SVN commit r7686.
2010-07-04 10:15:53 +00:00
df86f4d27b
Fix tokenisation to ignore multiple spaces
...
This was SVN commit r7676.
2010-07-03 15:21:50 +00:00
c57575df3e
Set each player's default camera location to their civ center.
...
This was SVN commit r7672.
2010-07-03 13:15:57 +00:00
0560e1c970
Fix warning
...
This was SVN commit r7669.
2010-07-03 10:48:44 +00:00
272c2865b0
windows build fix: more boost headers were required, and string.hpp doesn't include join.hpp
...
This was SVN commit r7668.
2010-07-03 09:35:43 +00:00
5bc3c4b751
Fix inheritance of construction/training lists.
...
This was SVN commit r7667.
2010-07-03 01:23:23 +00:00
1c0536bf08
# Refactored the networking code, and redesigned the game setup screen.
...
Major updates to most network classes.
Simplify CNetServer so it doesn't duplicate any client behaviour; all
players now run CNetClient.
Remove most player/slot management from networking code.
Wait for all players to finish loading before starting the simulation.
Remove CGameAttributes; attributes are now just a JS object.
Remove CPlayer; they are now just simulation entities.
Handle player colours via simulation system.
Add a default map for Atlas, so it always has something to load.
Move network documentation to Doxygen.
Remove lots of now-unused code.
This was SVN commit r7653.
2010-06-30 21:41:04 +00:00
1edb23e7a4
Fix script serializer to cope with spliced array enumeration quirk
...
This was SVN commit r7637.
2010-06-27 11:57:00 +00:00
23c92b7fe3
Fix actor viewer animation offsetting.
...
Fix attack animation drifts.
This was SVN commit r7612.
2010-06-05 22:23:28 +00:00
d3048906cb
# Unit animation improvements.
...
Animate props much more sensibly.
Move ammo code out of CUnit.
Move animation logic out of CModel.
Launch projectiles from the correct location.
Use entity's speeds and sounds in actor viewer.
Add -nosound option to disable audio, and allow audio by default in
Atlas.
Remove some obsolete options.
This was SVN commit r7609.
2010-06-05 00:49:14 +00:00
310f3466a8
# Hotloading of actor XML files.
...
Stop ignoring actor XML animation speeds.
Add decentralised registration of hotloaders.
Move player ID storage into CModel, to simplify CUnit.
Remove obsolete unit ID allocation code.
Remove some material junk.
This was SVN commit r7605.
2010-06-03 01:29:43 +00:00
11a20e1bcf
# Handle terrain passability and movement costs in pathfinder.
...
Simplify terrain code (remove Handle indirection).
Delete unused terrain properties.
This was SVN commit r7590.
2010-05-27 23:31:03 +00:00
828400d82e
# Support floating units in new simulation system.
...
Fix rendering of underwater lines.
Fix rendering of unit selection outlines in Atlas.
Remove some obsolete hotkeys.
This was SVN commit r7589.
2010-05-27 23:23:53 +00:00
ff17691d4f
Add STL-compatible pool allocator.
...
Use pool allocator in serialization code.
This was SVN commit r7584.
2010-05-25 19:24:14 +00:00
1e40c8c776
MSVC warning fixes
...
This was SVN commit r7583.
2010-05-25 19:12:00 +00:00
01bec7a454
Convert serialization code to use less virtuals and allow more inlining.
...
This was SVN commit r7582.
2010-05-25 19:01:30 +00:00
5ce9acc263
MSVC warning fixes
...
This was SVN commit r7580.
2010-05-25 18:44:33 +00:00
47a03c3397
Replace JS_Enumerate with manual enumeration, to avoid its memory allocations.
...
Use LookupProperty to avoid having to check for getters.
Add a quicker method of rooting many script values.
This was SVN commit r7579.
2010-05-25 18:24:12 +00:00
121d1ead20
Avoid some redundant HasProperty calls.
...
This was SVN commit r7578.
2010-05-25 18:18:32 +00:00
6fdb947ff0
Convert CCmpTemplateManager to use ASCII strings internally, to save memory and serialisation cost.
...
This was SVN commit r7577.
2010-05-25 18:17:12 +00:00
a9963dee56
Serialize JS strings as UTF-16(ish), to avoid the cost of UTF-8 conversion.
...
This was SVN commit r7576.
2010-05-25 18:07:41 +00:00
fd1f864cde
Avoid unreliable float conversions when loading old maps.
...
Use debug_printf in performance test, to work better on Windows.
This was SVN commit r7575.
2010-05-25 17:55:41 +00:00
64a610baab
Add some code for rough testing of state hashing performance.
...
Simplify the code needed for tests based on real maps.
This was SVN commit r7574.
2010-05-25 17:28:26 +00:00
be4e355ef3
VC2005 build fix
...
This was SVN commit r7572.
2010-05-22 23:12:12 +00:00
5c3a59234c
Fix OOS errors when placing buildings.
...
Allow script components to supply custom serialization objects.
This was SVN commit r7571.
2010-05-22 23:02:07 +00:00
0fa4bc9b21
Add some (disabled) code to help debug OOS
...
This was SVN commit r7569.
2010-05-22 16:58:08 +00:00
4e661a205d
Serialize RNG state
...
This was SVN commit r7564.
2010-05-22 01:32:11 +00:00
386f322b1c
Make Math.random() more deterministic
...
This was SVN commit r7563.
2010-05-22 00:38:33 +00:00
cf85004f61
Windows build fixes.
...
Remove unused function.
This was SVN commit r7557.
2010-05-20 20:05:38 +00:00
56bb858802
# Delete a lot of obsolete simulation code.
...
This was SVN commit r7555.
2010-05-20 18:09:23 +00:00
c684c211a2
# Basic experimental multiplayer integration with new simulation system.
...
Add new turn manager that should be more correct and potentially more
efficient.
Remove evil CNetServer/CNetClient multiple inheritance of CTurnManager.
Add multiplayer autostart.
Various minor cleanups.
This was SVN commit r7551.
2010-05-20 00:59:01 +00:00
cdcee291cf
Convert all remaining entity template data to new file format.
...
Add dummy component implementations for new data.
Partly support multiple weapons for a single unit.
This was SVN commit r7547.
2010-05-15 21:07:52 +00:00
ae08adc55d
# Fix possible GC crash bugs
...
This was SVN commit r7546.
2010-05-15 11:21:40 +00:00
434248167b
Fix warnings in tests
...
This was SVN commit r7535.
2010-05-10 09:52:35 +00:00
037770a2a3
Fix use of 'undefined' sound group on death.
...
Warn about implicit script/native type conversions.
This was SVN commit r7527.
2010-05-09 13:56:06 +00:00
dc53d739b8
Make tests clean up after themselves
...
This was SVN commit r7508.
2010-05-07 17:50:38 +00:00
93c30810c8
Fix tests. Tidy up some old files.
...
This was SVN commit r7507.
2010-05-07 16:32:33 +00:00
40f2cfd809
Skip component script tests when the mods/public/ directory is unavailable (see #490 ).
...
Report errors ealier when test data directories are missing.
This was SVN commit r7506.
2010-05-07 15:59:23 +00:00
d0599f4c7a
Share component template scripts to save some memory.
...
This was SVN commit r7504.
2010-05-07 00:24:22 +00:00
fe53bce3b1
Rewrite the clone-object-between-JS-contexts code (for GUI<->simulation interface) to be more efficient.
...
Delete unnecessary unused incomplete profiler scripting support.
Clean up some JSAPI code to use newer features.
Display simulation script functions in the profiler.
This was SVN commit r7503.
2010-05-05 22:36:35 +00:00
04018773fd
Fix fixed overflow when pathfinding across smallish maps
...
This was SVN commit r7500.
2010-05-03 19:12:42 +00:00
646c218b2e
Reduce the likelihood of units getting stuck when walking
...
This was SVN commit r7499.
2010-05-03 16:46:14 +00:00
f33706bf8b
Switch everything to 15.16-bit precision fixeds, to allow more accurate unit vectors and angles.
...
This was SVN commit r7497.
2010-05-02 20:32:37 +00:00
d485ecafdc
Optimise pathfinder tile storage a bit (improves speed by maybe 10%).
...
Increase the maximum search tile limit (reduces worst-case speed by
lots).
This was SVN commit r7495.
2010-05-02 20:14:09 +00:00
e140aa7baf
Avoid running the old simulation code in the background when it's not needed.
...
Optimise GUI updates to only occur when necessary.
Switch to more peaceful music after starting the game.
This was SVN commit r7492.
2010-05-01 16:20:58 +00:00
4fe991074f
Expose Footprint::GetShape and TemplateManager::FindAllTemplates to scripts.
...
Make CSimContext accessible to all component code, so they don't all
have to save their own copies of it.
This was SVN commit r7490.
2010-05-01 09:48:39 +00:00
cfae58928f
# New unit movement system, which does a far better job of approaching targets and avoiding obstacles.
...
Add short-range vertex-based pathfinder.
Integrate new pathfinder into unit motion code.
Change obstruction system to get rid of circles, and differentiate
structures from units.
Make PositionChanged messages synchronous.
Try to prevent some accidental float->int conversions.
This was SVN commit r7484.
2010-04-29 23:36:05 +00:00
5daac34ef9
Support startup scripts in map files, for testing.
...
Support CDATA sections when writing XML.
This was SVN commit r7483.
2010-04-29 23:22:18 +00:00
f4ad5906c9
# Display units on the minimap
...
This was SVN commit r7480.
2010-04-23 18:36:48 +00:00
29b458da40
# Use the footprint shape when rendering unit selection outlines
...
This was SVN commit r7479.
2010-04-23 16:57:18 +00:00
dd809f83e8
# Add documentation of the entity template XML file format.
...
Simplify the format a bit.
Use less <interleave> in the RNG so that error reports become
understandable.
Fixes #491 .
This was SVN commit r7478.
2010-04-23 16:09:03 +00:00
08db7ebe13
# Support training units in buildings.
...
Includes basic batch training (see #298 ).
This was SVN commit r7469.
2010-04-19 19:47:23 +00:00
9f1d904278
# Fix use-of-freed-memory bug.
...
Don't call xmlCleanupParser after parsing documents.
("This function name is somewhat misleading. It does not clean up parser
state, it cleans up memory allocated by the library itself.")
This was SVN commit r7465.
2010-04-18 16:35:06 +00:00
0547757a30
Make CUnit::GetModel return a reference so it's clear it can never be NULL.
...
This was SVN commit r7464.
2010-04-17 11:44:08 +00:00
6a9de50692
# Use the correct projectile models.
...
Fixes #470 .
Make CUnit::GetObject return a reference so it's clear it can never be
NULL.
This was SVN commit r7463.
2010-04-17 11:34:40 +00:00
d6ab843f9d
# Documentation updates
...
This was SVN commit r7457.
2010-04-15 19:59:07 +00:00
3117f52d7c
# Automatic runtime validation of entity template files.
...
Fixes #413 .
This was SVN commit r7455.
2010-04-14 17:22:32 +00:00
40688ec5df
# Initial support for automatic validation of entity template XML.
...
Add RelaxNG schemas for all current components.
Add -dumpSchema command-line option to dump the combined entity schema.
Add a Perl script to validate entity templates against the schema.
See #413 .
This was SVN commit r7452.
2010-04-09 19:02:39 +00:00
1fa8052cbe
Support 'replace' attribute in entity template inheritance.
...
Escape whitespace when emitting XML, to avoid attribute-value
normalization.
This was SVN commit r7448.
2010-04-09 18:43:50 +00:00
2f34e5fbc6
Fix #472 (fixed-point CTerrain::GetExactGroundLevel), based on patch from JubJub
...
This was SVN commit r7443.
2010-04-06 17:31:38 +00:00
4c0d47707b
# Fix animation syncing.
...
Make animations trigger sound effects.
Adjust attack animation timings to match simulation.
Simplify the animation speed settings.
This was SVN commit r7438.
2010-04-05 23:09:34 +00:00
cfca28cab0
# Initial audio integration with new simulation system.
...
Support sound group playback from simulation scripts. See #486 .
Update some sound group files to sound better for rough testing.
Clean up CSoundGroup a tiny bit.
This was SVN commit r7437.
2010-04-04 21:24:39 +00:00
0d6882dad2
# Fix the actor viewer in Atlas.
...
Delete the old standalone actor viewer.
Import some terrain textures that are useful for tools.
Fixes #483 .
This was SVN commit r7428.
2010-04-03 11:07:42 +00:00
e1c6249eab
Fix warning and debug spew on OS X
...
This was SVN commit r7417.
2010-03-31 20:33:42 +00:00
38feae61fb
Minor bug fixes
...
This was SVN commit r7411.
2010-03-29 10:22:34 +00:00
53744640ec
Fix non-PCH builds
...
This was SVN commit r7409.
2010-03-28 18:21:48 +00:00
49eb176b25
Fix MSVC compiler warnings (replace most M_PI with (float)M_PI)
...
This was SVN commit r7404.
2010-03-26 19:04:40 +00:00
89cce1b3ac
# Switch to new simulation system by default
...
This was SVN commit r7401.
2010-03-26 16:10:42 +00:00
0bbb99c3cd
move M_PI etc. to wposix.h to ensure they're always present on Windows (previously required MathUtil.h)
...
use M_PI instead of nonstandard PI
This was SVN commit r7380.
2010-03-20 20:54:03 +00:00
a5b8ec6028
Add obstruction debug mode, with GUI toggle.
...
Make pathfinder debug mode off by default, with GUI toggle.
This was SVN commit r7377.
2010-03-20 19:18:01 +00:00
23a702c335
# OS X build fixes.
...
spidermonkey-tip script fix.
GCC 4.2 compatibility.
Remove redundant code in extern_libs.lua
This was SVN commit r7371.
2010-03-20 16:26:25 +00:00
ed69187450
Build with spidermonkey-tip by default. Remove codepaths for old SpiderMonkey.
...
This was SVN commit r7366.
2010-03-19 20:54:44 +00:00
baead3409e
Move Position.h to a better location.
...
Update some files I forgot in previous commits.
This was SVN commit r7361.
2010-03-17 23:13:21 +00:00
18b5a7f17c
Add the Obstruction component to entity previews, to support collision detection for building placement
...
This was SVN commit r7360.
2010-03-17 23:02:40 +00:00
0f0a3774d0
Split collision detection out of pathfinder so it can be used more widely.
...
Support collision detection of footprints.
This was SVN commit r7359.
2010-03-17 23:01:12 +00:00
705db5181d
Fix non-smooth vertical interpolation of unit positions
...
This was SVN commit r7358.
2010-03-17 22:57:36 +00:00
99a261328a
Support scripted modulation of actor colours
...
This was SVN commit r7357.
2010-03-17 22:56:49 +00:00
bcd5e78b7a
Fix test code
...
This was SVN commit r7356.
2010-03-17 22:53:47 +00:00
aca1074188
Load build speeds and foundation actors from entity template files
...
This was SVN commit r7353.
2010-03-12 22:28:51 +00:00
9213ee8c27
# Construct buildings from foundations.
...
Display construction costs in tooltips.
Stop buildings leaving corpses.
Add debug info option to GUI.
This was SVN commit r7352.
2010-03-12 21:41:40 +00:00
c55cba34e5
Fix shape ID allocation bug in pathfinder
...
This was SVN commit r7351.
2010-03-12 20:42:33 +00:00
06928f7694
# Basic bandbox selection of units in new simulation system
...
This was SVN commit r7349.
2010-03-11 20:01:16 +00:00
86205b4d8e
# Basic projectile attacks in new simulation system
...
This was SVN commit r7347.
2010-03-07 21:38:39 +00:00
1712b2cdb1
# Support death in new simulation system
...
This was SVN commit r7344.
2010-03-07 20:14:30 +00:00
a7484933e7
wchar.h -> utf8.h (see previous change)
...
This was SVN commit r7341.
2010-03-01 14:55:34 +00:00
dc0cd4bedd
Move test cache output into a better place
...
This was SVN commit r7332.
2010-02-28 21:22:52 +00:00
5bb14c7a59
Misc. unity fixes (missing includes, undefs, and other things that could be considered generic cleanup)
...
This was SVN commit r7328.
2010-02-18 00:06:50 +00:00
96bb3afaaf
Support disabling of inherited components in entity templates
...
Allow units to walk through farms
This was SVN commit r7323.
2010-02-12 22:48:16 +00:00
f8aca33a14
# Support resource gathering in new simulation system
...
This was SVN commit r7322.
2010-02-12 22:46:53 +00:00
60a9e63c71
# Improved unit animation in new simulation system
...
Tried to make the motion/AI/animation state transitions saner
Added smoothed rotation of moving units
Slightly more informative error reporting
This was SVN commit r7319.
2010-02-10 19:28:46 +00:00
02ffe82ab7
Optimised pathfinder, particularly to avoid slow MSVC debug STL.
...
Added rough pathfinder test system.
MapReader: support loading maps into a minimal non-graphical environment
(for tests).
This was SVN commit r7317.
2010-02-08 22:05:05 +00:00
d609a9f81c
# Basic animation support in new simulation system.
...
Movement speed.
Improved accuracy of walking.
This was SVN commit r7313.
2010-02-07 20:06:16 +00:00
b25076ed4d
Min/max range support in pathfinder
...
This was SVN commit r7311.
2010-02-06 20:58:48 +00:00
b21e798243
# Primitive melee combat support in new simulation system
...
This was SVN commit r7309.
2010-02-05 22:00:39 +00:00
7770b414b7
Fix hotloading of scripts with registered message handlers
...
This was SVN commit r7307.
2010-02-05 21:40:08 +00:00
1fb9a1768e
Make CParamNode not return NULL pointers, based on patch from Puel
...
Fixes #425 , #451
This was SVN commit r7302.
2010-02-02 23:01:17 +00:00
9829138e56
Handle pathfinding to inaccessible points better.
...
Make the path debug display more useful.
This was SVN commit r7301.
2010-02-02 21:22:22 +00:00