Jump to content

Dune Legacy 0.09 released


TonyD

Recommended Posts

Excellent work Gobalopper,perhaps Ill host it on my site toooh yeah, sonic tanks will shoot shells uintil i figure out a good way of imitating the old "shimmery" effectStefan:yep thats right, i got the seeds from dune edit, I wonder if he ever finished all of them...

Link to comment
Share on other sites

Stefan:yep thats right, i got the seeds from dune edit, I wonder if he ever finished all of them...
FYI: Stefan is the author of that app. Too bad nobody knows how to use the seeds directly.It seems you're using the original graphics, just at a higher resolution.
Link to comment
Share on other sites

Nice! And it includes the d2 music I'd been missing! Why do half of the options on the menu mess up, though? And why is the game relatively slow, even on 500Mhz/128MB PC? Is it a timer-slowed game?

One problem I have is that trying to harvest spice is infuriating! The AI with prebuilt bases has a huge advantage since it's very difficult to retain enough spice to build anything but the simplest of armies. Although Troopers are extremely effective - are they actually Sardaukar, or is it just the picture?

Link to comment
Share on other sites

Tony did you use stefans u dune2 to continiue on?

and seed files what are we talking about?

That was what I was initially going to do - I tried to use stefans, but I decided it just wasn't worth the time to understand it all, so I started from scratch - although I did use a little bit of his random map generation code in there somewhere.

The seed files? For somereason I thought they came with dune2edit, did u create them stefen? Somehow it seems Im missing a few of the ordos ones, perhaps I should look around

Link to comment
Share on other sites

Nice! And it includes the d2 music I'd been missing! Why do half of the options on the menu mess up, though? And why is the game relatively slow, even on 500Mhz/128MB PC? Is it a timer-slowed game?One problem I have is that trying to harvest spice is infuriating! The AI with prebuilt bases has a huge advantage since it's very difficult to retain enough spice to build anything but the simplest of armies. Although Troopers are extremely effective - are they actually Sardaukar, or is it just the picture?
Many of the menu options wont work because they havent been implemented yet - multiplayer, editor and such. If u press on the singleplayer single or random map buttons it will apear to freeze but actually its doing some very unoptimised pre map calculation stuff - I have fixed this problem already.Problem with speed is because its got a very complex path searching algorithm which will slow oldish computers like yours down alot - Ill have to get around to optimisations soon enough.Nah thats just the image of saudarkar troopers, weren't the actually the same in the original?
Link to comment
Share on other sites

@Tony:

the rmg in UDUNE2 (the same as in Arrakis btw ;)) is very fast. And a path finder that slow? I dont know which one you use, but an A* algorithm with some danger into account should make the path finding pretty fast. You should store the result in some array ofcourse. ;)

Link to comment
Share on other sites

@Tony:

the rmg in UDUNE2 (the same as in Arrakis btw ;)) is very fast. And a path finder that slow? I dont know which one you use, but an A* algorithm with some danger into account should make the path finding pretty fast. You should store the result in some array ofcourse. ;)

me and TonyD are both using unoptimized A*

are you suggesting storing the entire path in an array?

Link to comment
Share on other sites

@Tony:

the rmg in UDUNE2 (the same as in Arrakis btw ;)) is very fast. And a path finder that slow? I dont know which one you use, but an A* algorithm with some danger into account should make the path finding pretty fast. You should store the result in some array ofcourse. ;)

yeah I had a go at storing it before but hadn't got it going but now I have :), it works excellently. I also have a check-if-searched-all-around-a-dest system happening too, to avoid a*'s habit of searching the whole map when a dest is unreachable

Link to comment
Share on other sites

for the moment, i have a Unit class:

class c_Unit:

{

// code

int path[MAX_NODES];

// code

};

each node is just representing the next cell a unit should move to. I am not really an expert in A*, i dont have one in the project i am working on. But i wrote one in a unreleased project for RealBot, which also takes danger into account and some other stuff.

Actually you only need to recalculate a path if your path is not blocked. So , only re-calculate when a node in your path is somehow occupied, and if it is occupied check also if it will move, i would do something like:

for (int i=0; i < MAX_NODES; i++)

{

// only check used nodes

if (path > -1)

{

// Because i store the cell info somewhere else i have:

if (map[path].status > -1)

{

// todo: add code for check if its a unit/building, assuming its a unit now

int unit_id = map[path].status;

if (units[unit_id].goalcell <> units[unit_id].currentcell)

{

// its okay, this cell will be cleared soon.

}

else

path_create(); // recalculate path here

}

}

else

break;

}

i just wrote it as i am writing this post, so i dont know about compiling issues or whatever. YOu'll get the idea ;)

btw, if you have a table (floyd) you can actually calculate if a unit is able to move to the destination before really calculating the entire path. However, this wont work on walls and such, so this only will make sure the unit will not calculate a path to a destination it will not reach due terrain issues. Nothing more, nothing less ;)

Link to comment
Share on other sites

c++ guys what are a class and what are the differences between a class and a function???
a function is a block of code that is written for a purpose. it always starts with the name, parameters inclosed in parenthesis, and then brackets example:void DestroyUnit(int iPlayer, int iUnit){ //code goes here}in fact, the main body of your program is all inside a Main functionfunctions are normally used to calculate something, and then return a value. you have to declare the type of the value when you are declaring the function. example:int MinusTen(int iNumber){ int iResult = iNumber - 10; return iResult;}now, when u use this in your code you will say, x = MinusTen(12); for example, and the function would assign the value of 2 to x. functions that are initialized with a data type instead of void MUST return a value
Link to comment
Share on other sites

i am still learning classes, but from what i know, they are a way of storing variables. there are a few special things about classes. like when the objects in the class are initialized, they run a whole function.

so in a way a class is like a structure, but with related functions included

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...