-
Posts
2.755 -
Joined
-
Last visited
-
Days Won
47
Posts posted by historic_bruno
-
-
Wouldn't it make more sense to have all animal corpses convert to Gaia when they die? Seems odd that a corpse would belong to anyone.
You've never bought meat? ;D
-
One additional issue is that the troublesome DELAYLOAD issue is back, it appears some changes were lost in 9830. (Maybe we need to add a list of exceptions for delayed loading?) Removing openal from the DELAYLOAD options seems to work.
-
Edit 3: Looks like an issue with SpiderMonkey. otool -L on the premake 3 binary looks like it's looking for spidermonkey in /usr/local/lib rather than the current binaries directory
The Spidermonkey build should be fixed now so that it uses a relative path instead of /usr/local/lib (same fix we used for ENet). You'll still have to copy pyrogenesis from the app package to /binaries/system/. In my opinion the package serves no purpose and only makes the build process more complicated by breaking the paths. It's worth looking into for releases if anyone can be bothered.
-
Might it not look weird if only some things have pixel art? I'd think if one resource had it (metal) the others should too, for consistency. Civic centres would make sense as the only buildings. Downscaling the resource icons may work (although trees should probably look vaguely like trees, not logs.
IMO mines are the rarest and most useful resource on the map and also the most sparse (hardest to find if you don't know where to look). I would have stone mines appear as small greyish rock shapes, and metal mines appear as anvils (should look pretty good even with so few pixels). Trees are very easy to find by comparison. Animals are constantly moving so I would avoid using pixel art for them, it will just be clutter.
-
Yeah, I think AOEIII had little pixel art gold mines on its minimap. AOM had little house pixel art icons for settlements. Etc.
This is an interesting idea. Pixel art would certainly convey more information than single colored points, if it's not overused.
-
It'd be higher resolution (since it's geometry instead of textures) and more flexible (we could easily use it for rendering more complex splines) and could probably cope with steep slopes without stretching (unlike decal textures)
I think this is an important point. The pre-rendered textures method sounds like we'd be painting ourselves into a corner, we shouldn't do that unless there's no other choice (mostly for performance reasons, I guess).
-
what are your thoughts so far?
On the last mockup, I would change the minimap design a bit. Eventually we are going to have at least 4 buttons (example), in the corners, so there should be room for those. Also I think it would be more aesthetically appealing if the curves on the minimap flowed to the edge of the screen instead of coming back around at the top.
-
Did some experimenting on how to render territory borders. I think the default settings there aren't too bad - it computes the boundary points, smooths them to get rid of the staircase effect on 30/45-degree angles, then draws a simple spline through them, and offsets perpendicularly inwards to stop the boundary lines overlapping.
Looks good. In fact all the smoothed lines look about the same to me, with the natural cubic and rounded nonuniform looking best IMO. Maybe do which ever is fastest?
-
- Some way to emulate an experience and level system, like Warcraft III heroes. This would help any RPG mod (e. g. a hack'n slash solo campaign). 0AD already has a promoting system, but it is quite limited for a RPG.
- Abilities defined through scripting (or XML). This too would help any RPG mod.
- Items and inventories.
An RPG mod would be almost completely tangential to 0AD because the game play would differ so much from an RTS, it wouldn't be easy to say the least. Technically, it would be possible. I guess the renderer, GUI, pathfinder, hardware abstractions, component system, etc., could be reused.
By the way, does the interface support "menus" (you click on an ability, and you get a new set of abilities, like the "buildings" button in AOE2) ?That's possible, we just haven't designed the in-game GUI that way.
Triggers system through scripting. I'm quite sure this has been or will be implemented.Someone expressed interest in working on this recently. As far as I know, that is planned for scenarios but will maybe have to wait until we iron out the rest of the gameplay.
Possibility for a unit to walk on impassable terrain (this is like flying at ground level, and I gather flying units are supported so it shouln't be hard to implement).Impassable terrain can be defined fairly easily in passability classes, depending on what you want to do it may require additional changes to the pathfinder.
Some way to turn off the "delete" button (or the formations, or the stances, or any command)Sure, most of that stuff is scripted so you could even test changes during a game.
Custom keyboard shortcuts for abilities, including user-defined ones. This would also be nice for buildings, in "normal" game. It may already exist, I haven't played much yet.We've got a hotkey system.
Unit "categories" ("hero", "normal", "machine", building" etc.) accessible from the triggers system. This too is very common., and probably already exists.That's already there in the entity templates.
-
I love the dynamic borders! I also liked the previous territory concept, but if forced to choose I would pick dynamic borders.
Agreed, it reminds me a bit of the old board game Risk. I'm generally in favor of dynamic gameplay, so that every game is different.
I don't think buildings should be drained of HP as a part of territory behavior, like ribez said they could be repaired, but it's not all that realistic anyway. Instead their aura of influence should be slowly diminished (slow enough that it may be preferable to attack the building rather than waiting).
-
OK, here's a patch (for SVN trunk) that fixes the XCode test project's shell script. VS and XCode need the same path adjustment so I combined the two.
-
@Lexa Did you see our behaviour tree? I hope you can use some of our code so you don't have to start over
We do plan on finishing ours, so it hopefully will be finished before Alpha 7
Cool, I look forward to your updates. More AIs means more variety, it's great to see so many people working on them
-
I'd say like this:
The gradient could be more subtle too. I gave the gradient a pretty high spread.
I originally had in mind a more 3D line (raise up off the ground) but your mockup shows the boundaries very distinctly.
-
Ok I hope this is the last and successful try, version 3 of the patch.
It's quickly tested on Linux, Mac and Windows... if I wasn't too tired and made mistakes .
Further testing appreciated!
Tested your patch on OS X, both gcc and xcode3 projects are working with PCH now That leaves the xcode3 test project, which fails to build:
/Users/ben/0ad/build/workspaces/xcode3/obj/test_Release/test.build/Script-9607AE1010C857E500CD1376.sh: line 58: ../../build/bin/cxxtestgen.pl: No such file or directory -
Now cpuid() can just invoke __cpuidex without the need for any additional #if faff.
Does that work? *drumroll*
Edit: Philip helped me with some things and it works now! Attaching system_info.txt to verify it does whatever it needs to do.
And finally the patch for these changes:
-
Honestly, I find it quite a success that the game could be compiled successfully in XCode with just those two changes: build without PCH and manually run nasm!
The nasm-problem is a known issue and should be documented in the build instructions.
XCode ships with an older version of nasm which does not support the macho64 flag.
I've solved it on my system by replacing the nasm-binary of Xcode with a symbolic link to the newer one installed via macports.
I'm not sure if that's a good solution though
That makes sense because the 64-bit OS X kernel is fairly new, surely they have fixed this for XCode 4? I could buy it from the App Store and see what fun awaits... I wouldn't call replacing XCode's binaries a good solution, maybe there's some setting or path variable we could override to force the newer MacPort nasm, assuming we still need it
-
Like this? If so, it did compile.
static void cpuid(x86_x64_CpuidRegs* regs)
{
#if HAVE_CPUIDEX
cassert(sizeof(regs->eax) == sizeof(int));
cassert(sizeof(*regs) == 4*sizeof(int));
__cpuidex((int*)regs, regs->eax, regs->ecx);
#else
#define __cpuid(level, index, a, b, c, d) \
__asm__ ("cpuid\n\t" \
: "=a" (a), "=b" (, "=c" ©, "=d" (d) \
: "0" (level), "2" (index))
#endif
} -
Well this is funny, I ran nasm manually on the command line and then tried building again and it succeeded (using the environment vars from the above error message). I wonder if there's something it doesn't like about the format of that string, maybe extra whitespace somewhere? Or more likely something in the environment that breaks it but what...
hm, Philip had already fixed this one by adding <bitset>.
I think <set> is no longer needed (there's certainly no std::set in there), so replacing <set> should be fine.
Ah you're right, but somehow that wasn't updated even though I have the latest revision O.o
Unfortunately I can't help with the nasm problem, except to indicate that we're really close to stomping out the last of the asm.I've been discussing this with Philip and the best guess at something GCC-palatable is:
#define __cpuid(level, index, a, b, c, d) \
__asm__ ("cpuid\n\t" \
: "=a" (a), "=b" (, "=c" (c), "=d" (d) \
: "0" (level), "2" (index))This would be inserted into static void cpuid #if !HAVE_CPUIDEX, replacing the two asm calls.
level is the initial value of regs->eax, index is regs->ecx, and a,b,c,d are the output values that are to be written to regs->eax,ebx etc.
Would you like to give that a try?
If that compiles despite GCC -fPIC, then we're golden.
Umm I'll need a while to digest this, but sure I'll try it
-
I'm exploring the xcode support (on 10.6.6 OS X). Interesting notes so far:
- It won't compile with PCH enabled because there's a relative path issue - it can't find precompiled.h so the build fails
- Running update-workspaces-new.sh using the --without-pch option allows the build to continue
- source/lib/sysdep/arch/x86_64/topology.cpp fails to compile due to std::bitset not being defined. So I included <bitset> instead of <set> and it compiled, hopefully this works on other platforms?
- There's a lot of annoying Boost warnings like these, but which don't seem to affect the build:
/opt/local/include/boost/mpl/has_xxx.hpp:344:0 /opt/local/include/boost/mpl/has_xxx.hpp:344:9: warning: "BOOST_MPL_HAS_XXX_NO_EXPLICIT_TEST_FUNCTION" is not defined
/opt/local/include/boost/mpl/has_xxx.hpp:357:0 /opt/local/include/boost/mpl/has_xxx.hpp:357:9: warning: "BOOST_MPL_HAS_XXX_NO_WRAPPED_TYPES" is not defined
/opt/local/include/boost/mpl/has_xxx.hpp:386:0 /opt/local/include/boost/mpl/has_xxx.hpp:386:9: warning: "BOOST_MPL_HAS_XXX_NO_EXPLICIT_TEST_FUNCTION" is not defined
/opt/local/include/boost/mpl/has_xxx.hpp:459:0 /opt/local/include/boost/mpl/has_xxx.hpp:459:8: warning: "BOOST_MPL_HAS_XXX_NEEDS_TEMPLATE_SFINAE" is not defined
/opt/local/include/boost/detail/container_fwd.hpp:71:0 /opt/local/include/boost/detail/container_fwd.hpp:71:9: warning: "BOOST_CLANG" is not defined - Next I ran into a few problems:
- I get a fatal error from nasm about unrecognized output format 'macho64', which is strange but led me to this ticket (I'm running the 64-bit kernel)
PhaseScriptExecution ../../../source/lib/sysdep/arch/amd64/amd64_asm.asm
cd /Users/ben/0ad/build/workspaces/xcode3
setenv ACTION build
setenv ALTERNATE_GROUP staff
setenv ALTERNATE_MODE u+w,go-w,a+rX
setenv ALTERNATE_OWNER ben
setenv ALWAYS_SEARCH_USER_PATHS NO
setenv APPLE_INTERNAL_DEVELOPER_DIR /AppleInternal/Developer
setenv APPLE_INTERNAL_DIR /AppleInternal
setenv APPLE_INTERNAL_DOCUMENTATION_DIR /AppleInternal/Documentation
setenv APPLE_INTERNAL_LIBRARY_DIR /AppleInternal/Library
setenv APPLE_INTERNAL_TOOLS /AppleInternal/Developer/Tools
setenv APPLY_RULES_IN_COPY_FILES NO
setenv ARCHS x86_64
setenv ARCHS_STANDARD_32_64_BIT "x86_64 i386"
setenv ARCHS_STANDARD_32_BIT i386
setenv ARCHS_STANDARD_64_BIT x86_64
setenv BUILD_COMPONENTS "headers build"
setenv BUILD_DIR /Users/ben/0ad/build/workspaces/xcode3/../../../binaries/system
setenv BUILD_ROOT /Users/ben/0ad/build/workspaces/xcode3/../../../binaries/system
setenv BUILD_STYLE Release
setenv BUILD_VARIANTS normal
setenv BUILT_PRODUCTS_DIR ../../../binaries/system
setenv CACHE_ROOT /var/folders/Zm/ZmwMaQ8yEtKxnaAD0zWSBE+++TI/-Caches-/com.apple.Xcode.501
setenv CCHROOT /var/folders/Zm/ZmwMaQ8yEtKxnaAD0zWSBE+++TI/-Caches-/com.apple.Xcode.501
setenv CHMOD /bin/chmod
setenv CHOWN /usr/sbin/chown
setenv CLASS_FILE_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/JavaClasses
setenv CLEAN_PRECOMPS YES
setenv CLONE_HEADERS NO
setenv CODESIGNING_FOLDER_PATH ../../../binaries/system/liblowlevel.a
setenv CODE_SIGNING_ALLOWED NO
setenv COMPOSITE_SDK_DIRS /var/folders/Zm/ZmwMaQ8yEtKxnaAD0zWSBE+++TI/-Caches-/com.apple.Xcode.501/CompositeSDKs
setenv CONFIGURATION Release
setenv CONFIGURATION_BUILD_DIR ../../../binaries/system
setenv CONFIGURATION_TEMP_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release
setenv COPYING_PRESERVES_HFS_DATA NO
setenv COPY_PHASE_STRIP NO
setenv COPY_RESOURCES_FROM_STATIC_FRAMEWORKS YES
setenv CP /bin/cp
setenv CURRENT_ARCH x86_64
setenv CURRENT_VARIANT normal
setenv DEAD_CODE_STRIPPING NO
setenv DEBUGGING_SYMBOLS YES
setenv DEBUG_INFORMATION_FORMAT dwarf
setenv DEPLOYMENT_LOCATION NO
setenv DEPLOYMENT_POSTPROCESSING NO
setenv DERIVED_FILES_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/DerivedSources
setenv DERIVED_FILE_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/DerivedSources
setenv DERIVED_SOURCES_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/DerivedSources
setenv DEVELOPER_APPLICATIONS_DIR /Developer/Applications
setenv DEVELOPER_BIN_DIR /Developer/usr/bin
setenv DEVELOPER_DIR /Developer
setenv DEVELOPER_FRAMEWORKS_DIR /Developer/Library/Frameworks
setenv DEVELOPER_FRAMEWORKS_DIR_QUOTED "\"/Developer/Library/Frameworks\""
setenv DEVELOPER_LIBRARY_DIR /Developer/Library
setenv DEVELOPER_SDK_DIR /Developer/SDKs
setenv DEVELOPER_TOOLS_DIR /Developer/Tools
setenv DEVELOPER_USR_DIR /Developer/usr
setenv DEVELOPMENT_LANGUAGE English
setenv DO_HEADER_SCANNING_IN_JAM NO
setenv DSTROOT /tmp/lowlevel.dst
setenv DWARF_DSYM_FILE_NAME liblowlevel.a.dSYM
setenv DWARF_DSYM_FOLDER_PATH ../../../binaries/system
setenv ENABLE_HEADER_DEPENDENCIES YES
setenv ENABLE_OPENMP_SUPPORT NO
setenv EXCLUDED_INSTALLSRC_SUBDIRECTORY_PATTERNS ".svn .git CVS"
setenv EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES "*.nib *.lproj *.framework *.gch (*) CVS .svn .git *.xcodeproj *.xcode *.pbproj *.pbxproj"
setenv EXECUTABLE_EXTENSION a
setenv EXECUTABLE_NAME liblowlevel.a
setenv EXECUTABLE_PATH liblowlevel.a
setenv EXECUTABLE_PREFIX lib
setenv EXECUTABLE_SUFFIX .a
setenv FILE_LIST /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/Objects/LinkFileList
setenv FIXED_FILES_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/FixedFiles
setenv FRAMEWORK_FLAG_PREFIX -framework
setenv FRAMEWORK_SEARCH_PATHS "\"../../../binaries/system\" "
setenv FRAMEWORK_VERSION A
setenv FULL_PRODUCT_NAME liblowlevel.a
setenv GCC3_VERSION 3.3
setenv GCC_C_LANGUAGE_STANDARD gnu99
setenv GCC_DYNAMIC_NO_PIC NO
setenv GCC_ENABLE_SYMBOL_SEPARATION NO
setenv GCC_MODEL_TUNING G5
setenv GCC_OPTIMIZATION_LEVEL 3
setenv GCC_PFE_FILE_C_DIALECTS "c objective-c c++ objective-c++"
setenv GCC_PREPROCESSOR_DEFINITIONS "NDEBUG CONFIG_FINAL=1 LIB_STATIC_LINK"
setenv GCC_SYMBOLS_PRIVATE_EXTERN NO
setenv GCC_TREAT_WARNINGS_AS_ERRORS NO
setenv GCC_VERSION 4.2
setenv GCC_VERSION_IDENTIFIER __2
setenv GCC_WARN_ABOUT_RETURN_TYPE YES
setenv GCC_WARN_UNUSED_VARIABLE YES
setenv GENERATE_MASTER_OBJECT_FILE NO
setenv GENERATE_PKGINFO_FILE NO
setenv GENERATE_PROFILING_CODE NO
setenv GID 20
setenv GROUP staff
setenv HEADERMAP_INCLUDES_FLAT_ENTRIES_FOR_TARGET_BEING_BUILT YES
setenv HEADERMAP_INCLUDES_FRAMEWORK_ENTRIES_FOR_ALL_PRODUCT_TYPES YES
setenv HEADERMAP_INCLUDES_NONPUBLIC_NONPRIVATE_HEADERS YES
setenv HEADERMAP_INCLUDES_PROJECT_HEADERS YES
setenv HEADER_SEARCH_PATHS "\"../../../binaries/system/include\" /usr/X11R6/include/X11 /usr/X11R6/include /usr/include/X11 ../../../source/pch/lowlevel ../../../source ../../../libraries/valgrind/include ../../../libraries/cxxtest/include /opt/local/include"
setenv ICONV /usr/bin/iconv
setenv INFOPLIST_EXPAND_BUILD_SETTINGS YES
setenv INFOPLIST_OUTPUT_FORMAT same-as-input
setenv INFOPLIST_PREPROCESS NO
setenv INPUT_FILE_BASE amd64_asm
setenv INPUT_FILE_DIR /Users/ben/0ad/build/workspaces/xcode3/../../../source/lib/sysdep/arch/amd64
setenv INPUT_FILE_NAME amd64_asm.asm
setenv INPUT_FILE_PATH /Users/ben/0ad/build/workspaces/xcode3/../../../source/lib/sysdep/arch/amd64/amd64_asm.asm
setenv INPUT_FILE_REGION_PATH_COMPONENT
setenv INPUT_FILE_SUFFIX .asm
setenv INSTALL_DIR /tmp/lowlevel.dst/usr/local/lib
setenv INSTALL_GROUP staff
setenv INSTALL_MODE_FLAG u+w,go-w,a+rX
setenv INSTALL_OWNER ben
setenv INSTALL_PATH /usr/local/lib
setenv INSTALL_ROOT /tmp/lowlevel.dst
setenv JAVAC_DEFAULT_FLAGS "-J-Xms64m -J-XX:NewSize=4M -J-Dfile.encoding=UTF8"
setenv JAVA_APP_STUB /System/Library/Frameworks/JavaVM.framework/Resources/MacOS/JavaApplicationStub
setenv JAVA_ARCHIVE_CLASSES YES
setenv JAVA_ARCHIVE_TYPE JAR
setenv JAVA_COMPILER /usr/bin/javac
setenv JAVA_FRAMEWORK_RESOURCES_DIRS Resources
setenv JAVA_JAR_FLAGS cv
setenv JAVA_SOURCE_SUBDIR .
setenv JAVA_USE_DEPENDENCIES YES
setenv JAVA_ZIP_FLAGS -urg
setenv JIKES_DEFAULT_FLAGS "+E +OLDCSO"
setenv KEEP_PRIVATE_EXTERNS NO
setenv LD_GENERATE_MAP_FILE NO
setenv LD_MAP_FILE_PATH /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/lowlevel-LinkMap-normal-x86_64.txt
setenv LD_OPENMP_FLAGS -fopenmp
setenv LEX /Developer/usr/bin/lex
setenv LIBRARY_FLAG_NOSPACE YES
setenv LIBRARY_FLAG_PREFIX -l
setenv LIBRARY_SEARCH_PATHS "\"../../../binaries/system\" ../../../binaries/system /usr/X11R6/lib /opt/local/lib"
setenv LINKER_DISPLAYS_MANGLED_NAMES NO
setenv LINK_FILE_LIST_normal_x86_64 /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/Objects-normal/x86_64/lowlevel.LinkFileList
setenv LINK_WITH_STANDARD_LIBRARIES YES
setenv LOCAL_ADMIN_APPS_DIR /Applications/Utilities
setenv LOCAL_APPS_DIR /Applications
setenv LOCAL_DEVELOPER_DIR /Library/Developer
setenv LOCAL_LIBRARY_DIR /Library
setenv MACH_O_TYPE staticlib
setenv MAC_OS_X_PRODUCT_BUILD_VERSION 10J567
setenv MAC_OS_X_VERSION_ACTUAL 1066
setenv MAC_OS_X_VERSION_MAJOR 1060
setenv MAC_OS_X_VERSION_MINOR 0606
setenv NATIVE_ARCH i386
setenv NATIVE_ARCH_32_BIT i386
setenv NATIVE_ARCH_64_BIT x86_64
setenv NATIVE_ARCH_ACTUAL x86_64
setenv NO_COMMON YES
setenv OBJECT_FILE_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/Objects
setenv OBJECT_FILE_DIR_normal /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/Objects-normal
setenv OBJROOT /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release
setenv ONLY_ACTIVE_ARCH NO
setenv OPTIMIZATION_LEVEL 0
setenv OS MACOS
setenv OSAC /usr/bin/osacompile
setenv OTHER_CFLAGS "-Wno-switch -Wno-reorder -Wno-invalid-offsetof -Wextra -Wno-missing-field-initializers -Wunused-parameter -Wredundant-decls -Wnon-virtual-dtor -Wundef -fstack-protector-all -D_FORTIFY_SOURCE=2 -fstrict-aliasing -fpch-preprocess -msse -fno-omit-frame-pointer -msse2 -fvisibility=hidden -I/opt/local/include/SDL -D_GNU_SOURCE=1 -D_THREAD_SAFE"
setenv OTHER_CPLUSPLUSFLAGS "-Wno-switch -Wno-reorder -Wno-invalid-offsetof -Wextra -Wno-missing-field-initializers -Wunused-parameter -Wredundant-decls -Wnon-virtual-dtor -Wundef -fstack-protector-all -D_FORTIFY_SOURCE=2 -fstrict-aliasing -fpch-preprocess -msse -fno-omit-frame-pointer -msse2 -fvisibility=hidden -I/opt/local/include/SDL -D_GNU_SOURCE=1 -D_THREAD_SAFE"
setenv OTHER_INPUT_FILE_FLAGS
setenv PACKAGE_TYPE com.apple.package-type.static-library
setenv PASCAL_STRINGS YES
setenv PATH_PREFIXES_EXCLUDED_FROM_HEADER_DEPENDENCIES "/usr/include /usr/local/include /System/Library/Frameworks /System/Library/PrivateFrameworks /Developer/Headers /Developer/SDKs /Developer/Platforms"
setenv PFE_FILE_C_DIALECTS c++
setenv PKGINFO_FILE_PATH /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/PkgInfo
setenv PLATFORM_DEVELOPER_APPLICATIONS_DIR /Developer/Applications
setenv PLATFORM_DEVELOPER_BIN_DIR /Developer/usr/bin
setenv PLATFORM_DEVELOPER_LIBRARY_DIR /Developer/Library
setenv PLATFORM_DEVELOPER_SDK_DIR /Developer/SDKs
setenv PLATFORM_DEVELOPER_TOOLS_DIR /Developer/Tools
setenv PLATFORM_DEVELOPER_USR_DIR /Developer/usr
setenv PLATFORM_NAME macosx
setenv PLATFORM_PRODUCT_BUILD_VERSION 10M2518
setenv PLIST_FILE_OUTPUT_FORMAT same-as-input
setenv PREBINDING NO
setenv PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR YES
setenv PRECOMP_DESTINATION_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/PrefixHeaders
setenv PRESERVE_DEAD_CODE_INITS_AND_TERMS NO
setenv PRIVATE_HEADERS_FOLDER_PATH /usr/local/include
setenv PRODUCT_NAME lowlevel
setenv PRODUCT_SETTINGS_PATH
setenv PRODUCT_TYPE com.apple.product-type.library.static
setenv PROFILING_CODE NO
setenv PROJECT lowlevel
setenv PROJECT_DERIVED_FILE_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/DerivedSources
setenv PROJECT_DIR /Users/ben/0ad/build/workspaces/xcode3
setenv PROJECT_FILE_PATH /Users/ben/0ad/build/workspaces/xcode3/lowlevel.xcodeproj
setenv PROJECT_NAME lowlevel
setenv PROJECT_TEMP_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build
setenv PUBLIC_HEADERS_FOLDER_PATH /usr/local/include
setenv RECURSIVE_SEARCH_PATHS_FOLLOW_SYMLINKS YES
setenv REMOVE_CVS_FROM_RESOURCES YES
setenv REMOVE_GIT_FROM_RESOURCES YES
setenv REMOVE_SVN_FROM_RESOURCES YES
setenv REZ_COLLECTOR_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/ResourceManagerResources
setenv REZ_EXECUTABLE YES
setenv REZ_OBJECTS_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/ResourceManagerResources/Objects
setenv REZ_SEARCH_PATHS "\"../../../binaries/system\" "
setenv RUN_CLANG_STATIC_ANALYZER NO
setenv SCAN_ALL_SOURCE_FILES_FOR_INCLUDES NO
setenv SCRIPT_INPUT_FILE /Users/ben/0ad/build/workspaces/xcode3/../../../source/lib/sysdep/arch/amd64/amd64_asm.asm
setenv SCRIPT_OUTPUT_FILE_0 /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/DerivedSources/amd64_asm.o
setenv SCRIPT_OUTPUT_FILE_COUNT 1
setenv SDKROOT
setenv SDK_PRODUCT_BUILD_VERSION 10J567
setenv SED /usr/bin/sed
setenv SEPARATE_STRIP YES
setenv SEPARATE_SYMBOL_EDIT NO
setenv SET_DIR_MODE_OWNER_GROUP YES
setenv SET_FILE_MODE_OWNER_GROUP NO
setenv SHARED_DERIVED_FILE_DIR ../../../binaries/system/DerivedSources
setenv SHARED_PRECOMPS_DIR /var/folders/Zm/ZmwMaQ8yEtKxnaAD0zWSBE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders
setenv SKIP_INSTALL NO
setenv SOURCE_ROOT /Users/ben/0ad/build/workspaces/xcode3
setenv SRCROOT /Users/ben/0ad/build/workspaces/xcode3
setenv STANDARD_C_PLUS_PLUS_LIBRARY_TYPE dynamic
setenv STRINGS_FILE_OUTPUT_ENCODING UTF-16
setenv STRIP_INSTALLED_PRODUCT YES
setenv STRIP_STYLE debugging
setenv SYMBOL_REPOSITORY_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build/SymbolRepositories
setenv SYMROOT /Users/ben/0ad/build/workspaces/xcode3/../../../binaries/system
setenv SYSTEM_ADMIN_APPS_DIR /Applications/Utilities
setenv SYSTEM_APPS_DIR /Applications
setenv SYSTEM_CORE_SERVICES_DIR /System/Library/CoreServices
setenv SYSTEM_DEMOS_DIR /Applications/Extras
setenv SYSTEM_DEVELOPER_APPS_DIR /Developer/Applications
setenv SYSTEM_DEVELOPER_BIN_DIR /Developer/usr/bin
setenv SYSTEM_DEVELOPER_DEMOS_DIR "/Developer/Applications/Utilities/Built Examples"
setenv SYSTEM_DEVELOPER_DIR /Developer
setenv SYSTEM_DEVELOPER_DOC_DIR "/Developer/ADC Reference Library"
setenv SYSTEM_DEVELOPER_GRAPHICS_TOOLS_DIR "/Developer/Applications/Graphics Tools"
setenv SYSTEM_DEVELOPER_JAVA_TOOLS_DIR "/Developer/Applications/Java Tools"
setenv SYSTEM_DEVELOPER_PERFORMANCE_TOOLS_DIR "/Developer/Applications/Performance Tools"
setenv SYSTEM_DEVELOPER_RELEASENOTES_DIR "/Developer/ADC Reference Library/releasenotes"
setenv SYSTEM_DEVELOPER_TOOLS /Developer/Tools
setenv SYSTEM_DEVELOPER_TOOLS_DOC_DIR "/Developer/ADC Reference Library/documentation/DeveloperTools"
setenv SYSTEM_DEVELOPER_TOOLS_RELEASENOTES_DIR "/Developer/ADC Reference Library/releasenotes/DeveloperTools"
setenv SYSTEM_DEVELOPER_USR_DIR /Developer/usr
setenv SYSTEM_DEVELOPER_UTILITIES_DIR /Developer/Applications/Utilities
setenv SYSTEM_DOCUMENTATION_DIR /Library/Documentation
setenv SYSTEM_LIBRARY_DIR /System/Library
setenv TARGETNAME lowlevel
setenv TARGET_BUILD_DIR ../../../binaries/system
setenv TARGET_NAME lowlevel
setenv TARGET_TEMP_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build
setenv TEMP_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build
setenv TEMP_FILES_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build
setenv TEMP_FILE_DIR /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release/lowlevel.build
setenv TEMP_ROOT /Users/ben/0ad/build/workspaces/xcode3/obj/lowlevel_Release
setenv UID 501
setenv UNSTRIPPED_PRODUCT NO
setenv USER ben
setenv USER_APPS_DIR /Users/ben/Applications
setenv USER_LIBRARY_DIR /Users/ben/Library
setenv USE_DYNAMIC_NO_PIC YES
setenv USE_HEADERMAP YES
setenv USE_HEADER_SYMLINKS NO
setenv VALIDATE_PRODUCT NO
setenv VALID_ARCHS "i386 ppc ppc64 ppc7400 ppc970 x86_64"
setenv VERBOSE_PBXCP NO
setenv VERSION_INFO_BUILDER ben
setenv VERSION_INFO_FILE lowlevel_vers.c
setenv VERSION_INFO_STRING "\"@(#)PROGRAM:lowlevel PROJECT:lowlevel-\""
setenv WARNING_CFLAGS -Wall
setenv XCODE_APP_SUPPORT_DIR /Developer/Library/Xcode
setenv XCODE_PRODUCT_BUILD_VERSION 10M2518
setenv XCODE_VERSION_ACTUAL 0400
setenv XCODE_VERSION_MAJOR 0400
setenv XCODE_VERSION_MINOR 0400
setenv YACC /Developer/usr/bin/yacc
/bin/sh -c "nasm -D OS_UNIX=1 -i${INPUT_FILE_DIR}/ -f macho64 ${INPUT_FILE_PATH} -o ${DERIVED_FILES_DIR}/${INPUT_FILE_BASE}.o"
nasm: fatal: unrecognised output format `macho64' - use -hf for a list
type `nasm -h' for help
Command /bin/sh failed with exit code 1 - I tried upgrading nasm through MacPorts but already have the latest port (2.09.09)
- In the process I upgraded all outdated ports. Boost was upgraded from @1.46.1_0 to @1.47.0_0 but this seems to have broken the build badly (many errors about random::rand48 being re-declared), so I had to revert back to 1.46. Safe to say, 1.47 should not be used until that's fixed. If you upgrade by accident, try "sudo port activate boost @1.46.1_0" or install it as needed.
[*]And finally a linker error due to the above error in liblowlevel (but why would the build process continue?)
Ld ../../../binaries/system/pyrogenesis.app/Contents/MacOS/pyrogenesis normal x86_64
cd /Users/ben/0ad/build/workspaces/xcode3
/Developer/usr/bin/g++-4.2 -arch x86_64 -L../../../binaries/system -L../../../binaries/system -L/usr/X11R6/lib -L../../../libraries/spidermonkey/lib -L../../../libraries/cxxtest/lib -L../../../libraries/enet/lib -L../../../libraries/valgrind/lib -L../../../libraries/nvtt/lib -L/opt/local/lib -F../../../binaries/system -filelist /Users/ben/0ad/build/workspaces/xcode3/obj/pyrogenesis_Release/pyrogenesis.build/Objects-normal/x86_64/pyrogenesis.LinkFileList -ljpeg -lpng -lz -lmozjs185-ps-release -lvorbisfile -lboost_signals-mt -lboost_filesystem-mt -lboost_system-mt -lenet -lcurl -lnvcore -lnvmath -lnvimage -lnvtt -lpthread -framework OpenGL -L/opt/local/lib -lSDLmain -lSDL -framework Cocoa -L/opt/local/lib -lxml2 -framework OpenAL /Users/ben/0ad/binaries/system/libmocks_real.a /Users/ben/0ad/binaries/system/libnetwork.a /Users/ben/0ad/binaries/system/libsimulation2.a /Users/ben/0ad/binaries/system/libscriptinterface.a /Users/ben/0ad/binaries/system/libengine.a /Users/ben/0ad/binaries/system/libgraphics.a /Users/ben/0ad/binaries/system/libatlas.a /Users/ben/0ad/binaries/system/libgui.a /Users/ben/0ad/binaries/system/liblowlevel.a -o ../../../binaries/system/pyrogenesis.app/Contents/MacOS/pyrogenesis
i686-apple-darwin10-g++-4.2.1: /Users/ben/0ad/binaries/system/liblowlevel.a: No such file or directory
Command /Developer/usr/bin/g++-4.2 failed with exit code 1 - I get a fatal error from nasm about unrecognized output format 'macho64', which is strange but led me to this ticket (I'm running the 64-bit kernel)
- It won't compile with PCH enabled because there's a relative path issue - it can't find precompiled.h so the build fails
-
I also think territory "fairness" should not be enforced by the game. In AoK some of the most challenging and fun maps where those where I had poor defense compared to other players, being "dealt a bad hand" so to speak, it made for some very epic games. This is mostly the case with random maps, ours don't have much variation yet but I hope to change that. In scenarios, it should be the map designer's responsibility to consider resource distribution and territory size.
This will need some major AI changes I expect - are we looking at some form of territories being in A7?
I don't know if it will be major, but the AI system can be considered very incomplete and subject to change (I didn't realize how much until I saw the Rootbot project and how it progressed). The main effect on AI in the short term would be slightly restricting where they can build, I guess this will be something like terrain passability which the AI already checks before building, only it may be a distinct concept - I'm not sure how many passability classes the pathfinder supports. Then the higher level goals of e.g. conquering territories, building new civil centres, are already a bit beyond our AIs which it seems use a simple attack/defend strategy. We may be adding diplomacy soon as well, and that will require even bigger changes to AI in my opinion: knowing who to attack, responding to diplomatic changes, giving/receiving tribute, etc.
-
I remember of using a stance to divide equally a group in two. The tooltip of the stance said it was to surround enemies, attacking at the flanks, but i used it to divide the army as well, half guarding the city, half attacking the enemy. Any plans of this in 0A.D.?
That sounds like the flank formation, we do have that
-
WOW! I LOVE the AOE soundtrack! Man, i was but a baby (1 year old) when the first AOE was released, but i watched my father and my cousin playing it and i grew playing it too!
Yeah, it was pretty epic, easily one of my favorite game soundtracks along with Myst/Riven Though I have to say, the 0 A.D. soundtrack is coming along quite nicely, and with live instruments!
-
Export is a little problematic since our heightmap is 16-bit - it's possible to do 16-bit PNGs but I don't know how widely supported they are, so more likely we'd have to do a lossy 8-bit export, which doesn't sound entirely ideal.
BMP can be 16-bit, that's a pretty basic format isn't it? The files wouldn't be so large that compression is necessary, after all maps can only be 512x512. Support is a good question, I was using Photoshop CS and even it didn't support 16-bit TIFFs (you can get those when converting a 12 or 14-bit raw format digital image), but GIMP does support them. Not sure about PNGs.
-
Importing an image as a heightmap sounds very useful and easy to implement. While we're at it, we could add "export" for symmetry. Other applications (not necessarily games) support this and it's fairly intuitive for artists. Of course ideally they wouldn't need this, because Atlas would have most of the useful painting features of a basic image editor, but as an additional capability... Maybe make a Trac ticket for this so it doesn't get buried by other topics?
Territories
in Game Development & Technical Discussion
Posted
Yep, this was discussed a few posts earlier The border graphics will definitely improve.