PathFinder status
#51
I have a feeling vanilla doesn't handle half-slabs while pathfinding, either. That's why there are the "mob-safe door" designs.
Reply
Thanks given by:
#52
Couple of minor comments:

- We've moved over to c++11 fully now so std::unordered_map should be in std rather than std::tr1.
- You might want to use std::priority_queue rather than the custom linked list you've created. That would hopefully allow you to make cPathPoint into a value type and reduce the number of memory allocations.
Reply
Thanks given by:
#53
@worktycho, I am using a priority_queue. Perhaps you're looking at the old code?

I removed the old branch to avoid further confusion. I am awaiting input regarding the inerface I proposed here.
Reply
Thanks given by:
#54
(04-22-2015, 06:53 PM)NiLSPACE Wrote: Seriously, this is awesome Smile It's werid to say, but I can't wait until the first zombie is chasing me ^^

Me too!Big Grin
Reply
Thanks given by:
#55
The interface looks good, only I'd expect it to be used as a value type rather than a reference type, so no new.
Reply
Thanks given by:
#56
(04-22-2015, 09:59 PM)worktycho Wrote: The interface looks good, only I'd expect it to be used as a value type rather than a reference type, so no new.

Updated the usage example.

Better wrap vector<Vector3d>* with a path class, the user might be interested in knowing path length, etc.

is querying cWorld for blocks expensive? should I cache the state of blocks inside the pathFinder? (Whether they're solid or not)
Reply
Thanks given by:
#57
I am having trouble compiling MCServer/master, I may have missed something.
What are the steps?

Roughly I did:
clone > cmake > initialize submodules > make

Code:
I am having trouble compiling MCServer/master, I may have missed something.
What are the steps?

Roughly I did:
clone > cmake > initialize submodules > make

[code]
[ 32%] Building CXX object src/OSSupport/CMakeFiles/OSSupport.dir/CriticalSection.cpp.o
In file included from <hidden>/MCServer/src/./Globals.h:248:0,
                 from <hidden>/MCServer/src/OSSupport/CriticalSection.cpp:2:
/usr/include/c++/4.7/chrono: In instantiation of ‘struct std::chrono::duration<int, std::ratio_multiply<std::ratio<1l, 1000l>, std::ratio<50l> > >’:
<hidden>/MCServer/src/./Globals.h:444:62:   required from here
/usr/include/c++/4.7/chrono:227:2: error: static assertion failed: period must be a specialization of ratio
make[2]: *** [src/OSSupport/CMakeFiles/OSSupport.dir/CriticalSection.cpp.o] Error 1
make[1]: *** [src/OSSupport/CMakeFiles/OSSupport.dir/all] Error 2
make: *** [all] Error 2
Reply
Thanks given by:
#58
You first initialize the submodule and then you use cmake.
Reply
Thanks given by:
#59
You're using libstdc++ 4.7, we require 4.8 with a recommendation on 4.9 now, or use a stable version of libc++. The easiest thing to do is upgrade to gcc 4.9
Reply
Thanks given by:
#60
gcc 4.9 is not available in Debian Wheezy(7), which is what I'm using.
I am seriously paranoid about mixing Jessie and Wheezy packages. Do you have any proposals?
Reply
Thanks given by:




Users browsing this thread: 9 Guest(s)