1
0
forked from 0ad/0ad
Commit Graph

1104 Commits

Author SHA1 Message Date
64a02932e3 refactor headers: path_util -> path, native_path -> os_path, remove where unnecessary
This was SVN commit r9108.
2011-03-23 14:43:35 +00:00
dcd192cb60 refactor path interface:
- use wrapper class instead of std::wstring (reduces mixing of
strings/paths; allows safe+easy join via operator/ and convenient
case-insensitive comparison via operator==, avoids NativePathFromString,
similar to boost::filesystem)
- NativePath -> OsPath
- add hash and To/FromJSVal for Path
- add TS_ASSERT_PATH_EQUALS
- replace _wfopen_s with sys_OpenFile
- remove obsolete SortFiles/Directories

This was SVN commit r9107.
2011-03-23 13:36:20 +00:00
f618605477 Changes default random map sizes.
Tweaks random map resources.
Adds support for circular maps to rmgen library.
Various fixes in map generator.
On Miletus map, change player 2 civ, as Romans are not fully implemented
(fixes #758)

This was SVN commit r9104.
2011-03-23 08:12:04 +00:00
0e0ed94926 Implements random map system, fixes #6.
Includes default library "rmgen" w/ API based on rmgen tool.
Modifies rmgen scripts Cantabrian Highlands, Neareastern Badlands, and
Latium.
Old map support dropped from MapReader.
Fixes a few bugs in existing game setup and initialization scripts.

This was SVN commit r9096.
2011-03-22 01:34:45 +00:00
c0a105432e Use path types and conversions more consistently.
This was SVN commit r9094.
2011-03-21 22:59:00 +00:00
83271ec816 Fix build errors.
Fix VFS root directory failing IsDirectory, which breaks the search for
textures.xml.
Fix incompatible change to loose cache name determination.

This was SVN commit r9092.
2011-03-21 21:06:08 +00:00
c3405e6f50 path improvements/fixes:
- replace more std::wstring with Native or VfsPath; wstring_from_utf8 ->
NativePathFromString
- replace sequences of Join(Path(), Basename+extension) with
ChangeExtension in wsdl, CacheLoader
- add Path::IsDirectory to replace .empty() / path_is_dir_sep(.back()).
also changed behavior to reflect the fact that "" is the VFS root
_directory_
- Path::Join now allows 2 identical path types (e.g. VfsPath) or one
char* literal (prevents inadvertently introducing non-safe characters).
to convert from wstring or wchar_t, use an explicit ctor (e.g.
VfsPath(wchar_t_string))

This was SVN commit r9091.
2011-03-21 19:54:08 +00:00
6d25329412 # towards locale-independent pathnames on Linux
c.f.
http://www.wildfiregames.com/forum/index.php?showtopic=14541&st=0&p=217250&#entry217250
and 2011-03-19 meeting

This was SVN commit r9090.
2011-03-21 17:53:13 +00:00
2392eb6720 Skip reporting caches that were initialised but never filled in
This was SVN commit r9086.
2011-03-19 15:17:14 +00:00
d805e764c5 # Render unit silhouettes when behind buildings.
Fixes #144.
Start using stencil buffer.
Simplify materials a little.

This was SVN commit r9076.
2011-03-18 16:57:54 +00:00
5b91e2d7ab move cache detection into separate file.
add support for CPUID.2 cache descriptors (many Bothans died to bring us
this information)
simplify the API - use one structure to describe cache and TLB; only one
accessor for both.

HWDetect: version change, since dtlbs and itlbs are no longer
distinguished

fixes #752

This was SVN commit r9074.
2011-03-18 16:44:03 +00:00
9659ec298b Fix off-by-one error in date logging, and rearrange to standard format.
This was SVN commit r9065.
2011-03-15 20:29:29 +00:00
51b58328f7 Fix negative 'unlogged' time in profiler at start of game.
Remove redundant Reset call.

This was SVN commit r9047.
2011-03-08 16:58:07 +00:00
7d6cfe58de Fix non-PCH build
This was SVN commit r9037.
2011-03-06 00:01:23 +00:00
6f9da85d9f Improve performance of full state hash computation, by skipping script components that are known to have no data.
Switch to much quicker (and less comprehensive) per-turn hashing in
multiplayer games.

This was SVN commit r9036.
2011-03-05 22:30:32 +00:00
18798c3f8d OS X build fix
This was SVN commit r9022.
2011-03-05 13:49:36 +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
6bcce22a88 Tell the profiler about a few more bits of code
This was SVN commit r9007.
2011-03-03 22:38:01 +00:00
58ae08522f Let local.cfg override the hardware-dependent defaults set by hwdetect
This was SVN commit r9005.
2011-03-03 01:49:49 +00:00
1c1564daaf Make profiler JSON output much more concise.
Right-align values in in-game profile viewer.
Add alternating row shading in profile viewer, to make it easier to
read.

This was SVN commit r9004.
2011-03-03 01:09:19 +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
cb0e322a61 # Minor AI fixes.
Avoid script errors on Miletus.
Use pre-existing female citizens as workers.
Fix autostart.

This was SVN commit r8999.
2011-02-27 19:20:36 +00:00
407b1ef80f Bump hwdetect version, to identify reports that include recent bugfixes
This was SVN commit r8992.
2011-02-26 19:41:01 +00:00
6d7c27edfe Fix occasionally rendering just terrain and no models when starting a game
This was SVN commit r8988.
2011-02-26 00:07:16 +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
77fe5c9e40 Disable shadows and fancy-water by default on some slower graphics devices.
See #623.

This was SVN commit r8983.
2011-02-25 02:00:57 +00:00
a903b4c9d3 Fix #684 (disable S3TC on R600 drivers).
Clean up hwdetect a tiny bit.

This was SVN commit r8982.
2011-02-25 01:31:00 +00:00
0378500bdc Fix #712 (remove S3TC warning).
Add timer to S3TC decoder so it's still easy to determine if it was
used.

This was SVN commit r8981.
2011-02-25 01:28:46 +00:00
059a53dd37 Fix startup hang on OS X, caused by using timers before initialising them
This was SVN commit r8974.
2011-02-23 09:19:41 +00:00
6b783aebd6 Try to fix build errors
This was SVN commit r8973.
2011-02-22 21:50:26 +00:00
9bbda8b80b HTTP proxy discovery for Windows
This was SVN commit r8969.
2011-02-21 21:54:47 +00:00
25039d3aff Fix build errors with old glext.h.
Report full cache details, and lsb-release when available.

This was SVN commit r8968.
2011-02-21 18:56:23 +00:00
ee8b193cdb Fix profiler crash differently
This was SVN commit r8967.
2011-02-21 11:57:01 +00:00
a155809447 avoid crash due to null pointer in profiler (triggered by returning from the root node)
This was SVN commit r8966.
2011-02-21 09:41:11 +00:00
d75d9c3b75 Make the script profiler more useful, by giving the filename/line for anonymous functions.
Fix the turn-based profiler a bit.

This was SVN commit r8964.
2011-02-21 02:16:12 +00:00
d7a243343d Add per-turn counts to profiler, as well as per-frame.
Remove percent-of-parent and percent-of-frame timings since they're not
particularly useful.
Simplify profiler update code by using RingBuf.
Handle profiler keys via character codes rather than keysyms, to
hopefully work with different keyboard layouts.
Make console intercept all keys, to stop digits, shift-D, etc having
unexpected side-effects.
Disable console copy/paste when console is inactive.

This was SVN commit r8960.
2011-02-20 20:50:26 +00:00
5f64937d02 Skip detecting some not-very-useful GL values that cause errors in some drivers
This was SVN commit r8953.
2011-02-20 11:46:48 +00:00
c29f2d26b3 Add some more stuff to hwdetect, because there can never be too much
This was SVN commit r8951.
2011-02-20 00:54:36 +00:00
b2f5dd1b62 Non-PCH build fixes
This was SVN commit r8949.
2011-02-19 22:30:34 +00:00
7445342b61 wdll_ver: avoid errors while reading DLL version due to (lack of) FS redirection
UserReport: avoid windows iterator debugging warning due to invalid
operator[]

This was SVN commit r8942.
2011-02-19 19:15:00 +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
ceb4bc9b94 Report more hardware details
This was SVN commit r8937.
2011-02-19 00:39:32 +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
3d997365d8 Fix CStr numeric constructors on 32-bit platforms.
Remove unnecessary assignment operators.

This was SVN commit r8926.
2011-02-16 21:14:08 +00:00
0da7e822ff # Add opt-in automatic feedback system.
Add GL implementation limits to hwdetect.
Make the in-game manual support multiple text files.
Remove unnecessary instruction on how to close the manual window.
Make guitextobject.caption return the original value without stripping
formatting tags.
Remove unused non-VFS support from config system.
Support writing config files back to their original path.
Remove unnecessary user profile directory; use normal config directory.

This was SVN commit r8925.
2011-02-16 20:40:15 +00:00
fca69efd76 Fix build for GCC 4.5
This was SVN commit r8920.
2011-02-13 18:38:22 +00:00
11837204b6 Fix archive builder to not compress the recently-renamed terrain blend textures
This was SVN commit r8919.
2011-02-13 17:37:33 +00:00
c7056490b2 Restrict the initial window size to the screen size (hopefully fixes #532).
This was SVN commit r8915.
2011-02-12 21:21:07 +00:00
eb074ba28c Fix #495 (warn when locale is bogus), based on patch from darrenhoffman and sergiovier
This was SVN commit r8913.
2011-02-12 00:19:59 +00:00
11bc751fd3 Save replay log's commands.txt in new locations when playing multiple games in a single session
This was SVN commit r8906.
2011-02-10 23:57:19 +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
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
1e02fe70a7 Add texture limits to hwdetect
This was SVN commit r8881.
2011-01-31 18:59:37 +00:00
03c75100ab # Fix terrain blending logic.
Add terrain priority rendering mode in Atlas.
Fix terrain painting in Atlas to be less profligate with priority
values.
Support hotloading of blend textures.
Clean up some trivial things.

This was SVN commit r8872.
2011-01-29 16:31:48 +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
40933c06e1 Primitive support for gamepad camera movement
This was SVN commit r8844.
2010-12-30 19:45:13 +00:00
ad3f33dd27 Build fix for very old SDL
This was SVN commit r8833.
2010-12-11 02:25:21 +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
2540e17f45 Fix non-PCH builds
This was SVN commit r8816.
2010-12-08 18:54:05 +00:00
8ddef2fee0 Add fast-forward/rewind commands, to help with testing.
This was SVN commit r8803.
2010-12-06 19:58:06 +00:00
1201956b93 Additional cleaning up of logging: removed LOG_CATEGORY macro definitions.
This was SVN commit r8792.
2010-12-05 08:50:33 +00:00
19dbbb816d Changed all references from old CLogger API to use the new API. Removed old API. Fixes #247
This was SVN commit r8791.
2010-12-05 08:41:55 +00:00
95da3789cd Handle SDL_ACTIVEEVENT which notifies us of mouse focus change. If mouse focus is lost don't render cursor, reverting back to OS style. When focus is regained, render cursor again. Fixes #626
This was SVN commit r8789.
2010-12-05 05:17:28 +00:00
819bacd538 Automatically disable audio on OS X since it's stupid and broken.
This was SVN commit r8788.
2010-12-04 19:42:50 +00:00
4575c26616 Disable compression of public.zip (fixes #671).
This was SVN commit r8785.
2010-12-04 15:57:55 +00:00
4b37898ab9 Fix tests.
This was SVN commit r8784.
2010-12-04 15:08:18 +00:00
74114bf09a Handle XMB caching with the same system as texture caching.
Fixes #694.

This was SVN commit r8782.
2010-12-04 00:08:26 +00:00
2963422173 Add screenshot location logging w/ rendered console message. Rendered messages are hidden before screenshot is taken. Fixes #675
This was SVN commit r8675.
2010-11-21 01:25:16 +00:00
c36fc2b8d7 Add script-based system for doing messy stuff based on system configuration.
Display warning for certain broken NVIDIA drivers.

This was SVN commit r8663.
2010-11-20 19:46:49 +00:00
74c19b5015 Add xmessage-based GUI dialog box for debug messages on Linux (fixes #663).
Switch out of fullscreen before displaying dialog boxes.
Add Engine.DebugWarn for testing.

This was SVN commit r8661.
2010-11-20 17:14:45 +00:00
f286ce0b13 Fix crash when loading zero-length config files
This was SVN commit r8634.
2010-11-17 01:39:14 +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
042972e298 Renamed "session_new" to "session"
This was SVN commit r8608.
2010-11-14 20:32:38 +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
25cd781641 Support horizontal scroll wheels for camera rotation
This was SVN commit r8582.
2010-11-13 01:00:54 +00:00
e43eb0c18b # Various hotkey fixes and cleanups.
Support ctrl for removing entities from selection.
Move big screenshot hotkey to shift+F2.
Increase mouse wheel rotation speed.
Fix HotkeyIsPressed when a more specific hotkey was matched instead.
Support multiple hotkeys with the same binding.
Use hotkeys instead of raw key events in GUI.
Delete some obsolete hotkey definitions.
Remove unused broken EntitySelection toggle method.

This was SVN commit r8546.
2010-11-07 20:42:52 +00:00
a13836bd68 safely handle zero-sized XMB files ensuing from a crash while loading
fixes #662

This was SVN commit r8545.
2010-11-07 16:14:13 +00:00
3407983e98 remove no-longer needed (and non-reentrant) MICROLOG as per today's meeting
This was SVN commit r8542.
2010-11-06 19:11:40 +00:00
818ea52c3b Delete obsolete non-working i18n code
This was SVN commit r8527.
2010-11-03 17:52:07 +00:00
81f5e0ac5f Allow continuing playing when a client leaves a multiplayer game (fixes #620).
Fix multiplayer autostart.
Make NETTURN_LOG syntax differently ugly.

This was SVN commit r8525.
2010-11-03 00:21:52 +00:00
52851faeb6 cleanup - remove old cpu_memcpy and cpu_i64FromDouble that are no longer needed
This was SVN commit r8517.
2010-11-01 11:09:03 +00:00
aefc87f226 Windows fixes
This was SVN commit r8513.
2010-10-31 22:26:41 +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
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
97019c3a5a Fix launching Atlas from the main menu
This was SVN commit r8491.
2010-10-29 21:04:59 +00:00
9e499cdec5 # Fix hotkey bugs.
Simplify hotkey system to use strings consistently.
Restrict scope of GUI hotkey bindings to the associated page.
Avoid hard-coding list of hotkeys.
Clean up the code a little bit and fix some bugs.
Remove unused "!" prefix for key negation.
Fixes #567.

This was SVN commit r8444.
2010-10-23 02:37:00 +00:00
3eed24a338 Fix Mesa S3TC-enabling to work in Atlas
This was SVN commit r8433.
2010-10-21 23:44:54 +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
d11bc41d9a move support for GL swap control into wsdl (based on patch from wacko)
fixes #523

This was SVN commit r8399.
2010-10-17 08:55:47 +00:00
ee55b92667 Avoid wasting address space on currently-broken cache (see #611).
This was SVN commit r8371.
2010-10-15 23:20:28 +00:00
835609df20 Change S3TC warning yet again, to point to a web page with more information. Also stop hard-coding the message.
This was SVN commit r8367.
2010-10-15 12:29:20 +00:00
a1a7264aec Set force_s3tc_enable automatically for greater chance of compressed texture support on Linux (see #575).
This was SVN commit r8356.
2010-10-15 00:06:48 +00:00
3d2b17f1bf Fix some warnings on Windows
This was SVN commit r8352.
2010-10-13 21:58:31 +00:00
6f62ef3f3c better ChooseCacheSize: always clamp to 500 MB, remove assertion (refs #611)
This was SVN commit r8329.
2010-10-11 07:03:53 +00:00
c9cc7d9784 skip populating directories when mounting and scanning archives => reduces startup time by about half a second when archives are present.
also disable archive stats (currently unused) and refactor directory
creation/association logic.

This was SVN commit r8321.
2010-10-10 10:22:11 +00:00
48360edf21 noticed during testing that the file cache is much smaller than our dataset; added logic to choose a decent size. rebuild-workspaces required.
wversion: move into separate component from wutil to allow inclusion
from GameSetup without pulling in windows.h (causes conflicts)

This was SVN commit r8319.
2010-10-09 21:14:08 +00:00
a4e47abf34 Stop suggesting the now-unnecessary libtxc_dxtn when S3TC support is missing
This was SVN commit r8315.
2010-10-09 16:07:41 +00:00
0436dc4cb9 Fix memory leak
This was SVN commit r8302.
2010-10-07 18:42:35 +00:00