Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

DarkBASIC Discussion / DarkPro's - What do you think?

Author
Message
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 10th Sep 2009 00:33
@No Time to Code
Looks like a good start! Can you create this as a text document in perhaps an outline format with headings and sub-headings etc.? That way everyone can have a copy and it remove some of the difficulties with maintaining it as a post within a thread. The updates would be changes to the document itself and then redistributing that.

For genre it will be a First Person shooter. There may be occasional 3rd person elements. For testing purposes, we'll need multiple camera perspectives including 1st and 3rd person.

And a note on media. We cannot use any copyrighted material unless we have express written consent from the copyright holder. So if anyone goes surfing the net for images, textures, sounds, etc., provide a copy of the licensing agreement/terms of use, a link to the website that specifically states this information, etc. or we will not use it.

We should keep track of the agreements as well relating to media.

Enjoy your day.
No Time To Code
15
Years of Service
User Offline
Joined: 22nd Dec 2008
Location:
Posted: 10th Sep 2009 00:51
Quote: "Can you create this as a text document in perhaps an outline format with headings and sub-headings etc.? "

I'll do it in MS Word and post it as an attachment.

Quote: "For genre it will be a First Person shooter"

Oops, that's what I meant...

Quote: "We cannot use any copyrighted material unless we have express written consent from the copyright holder."

I wasen't even thinking about that. I'll be aware of that as I surf.
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 10th Sep 2009 01:00
Don't do it in Word. Everybody might not have Word. If you do it in word, save it as a text document.

Enjoy your day.
Brick Break
User Banned
Posted: 10th Sep 2009 01:42
Quote: "Timeline: Hard to say it this point but I guess it good to set one as a goal. As a start I'll put it out to those already working on something if they have an ETA.
OBese87 - Pathfinding
RTR - Waypoints
TheComet - Farm/barn models
No Time To Code - I could probably have a good library of sounds/music after vacation (2 weeks)
I would say the object models are not as time sensitive as the basic engine since we can probably use placeholders for the real models for now."

*imaginary webcam snapshot of my face*

WINNER list:
Brick Break, Latch, Lee Bamber, TDK, TheComet
Thanks for the help!
BN2 Productions
20
Years of Service
User Offline
Joined: 22nd Jan 2004
Location:
Posted: 10th Sep 2009 02:19
Quote: "Everybody might not have Word"

Open Office is a free imitation that supports .doc format. Just sayin. If you don't have word, it would be a good idea to get it, lest you need to type something.

Great Quote:
"Time...LINE??? Time isn't made out of lines...it is made out of circles. That is why clocks are round!" -Caboose
Libervurto
17
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 10th Sep 2009 02:26 Edited at: 10th Sep 2009 19:39
Quote: ""Though a pain in the butt to maintain but very useful, we should have a document that lists the variables, the image numbers, the object numbers, the memblocks, bitmaps, etc""

Totally agree, I would add to that a list of custom functions with explanations on what they do how to use them. I did this when I used basic on my ps2 but never got into the habit with db for some reason.

OK I think we should find some random pics and stuff to inspire us.
@Comet did you get any reference pics for your modelling?

check this creepy barn out






TGC Forum - converting error messages into sarcasm since 2002.
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 10th Sep 2009 03:18
Quote: "Open Office is a free imitation that supports .doc format. Just sayin. If you don't have word, it would be a good idea to get it, lest you need to type something"

Text is much more translatable, cross platform, formattable, and smaller, than any proprietary format that relies on a specific application. Anyone involved in the project at least has a text editor; if not in the form of the DBC editor itself, then in DarkEDIT or even Notepad.

The document should be distributed as text. If individuals want to maintain a Word or any other type of document on their own machine, that's fine. But let's keep the distribution in a more universal format.

Enjoy your day.
Brick Break
User Banned
Posted: 10th Sep 2009 03:51
We can plan later. Let me rephrase that- you guys can plan, while I'll actually make the game. Latchie, just tell me what you want, and I'll do it. You want zombies? Done. Shooting? Done. Bad AI? Done. I already made something kind of like this. I could use it as a template for a quick tech demo. Remember Dark Survival? This is a ripoff of that as far as I'm concerned. We could call it Dark Survival 2 if you want. I'm more than happy to take credit.

WINNER list:
Brick Break, Latch, Lee Bamber, TDK, TheComet
Thanks for the help!
No Time To Code
15
Years of Service
User Offline
Joined: 22nd Dec 2008
Location:
Posted: 10th Sep 2009 04:06
Here it is in text format.

@brick
Quote: "*imaginary webcam snapshot of my face*"


I was just listing projects that I knew people were working on. If you want me to add you with a specific task, let me know.

Attachments

Login to view attachments
Brick Break
User Banned
Posted: 10th Sep 2009 04:15
PLEASE PLEASE DO! That's exactly what I want! Why didn't you assign me to something in the first place? Oh, wait- you want ME to come up with something? Well... I guess I was working on pathfinding and waypoints, and I kind of wanted to do collisions too. I would also like to make the level loading code and I'd like to try my hand at a couple models- don't make me texture, though.

WINNER list:
Brick Break, Latch, Lee Bamber, TDK, TheComet
Thanks for the help!
Brick Break
User Banned
Posted: 10th Sep 2009 04:54
Actually, I just posted something in response, but you'll never hear it because these admins DON'T MESS AROUND.


Quote: "[quote]She should post screens, to benefit the other members"

Hmmm I'm a lil scared how others may benefit from this lol [/quote]
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 10th Sep 2009 05:03
This is going to sound like I'm waffling around but, No Time to Code, you can distribute the document in Word format. It's probably easier for you to format it and manage it,that's probably why you suggested it in the first place. We can address any issues with anybody that has trouble opening the document.

I was thinking of past experiences in the real world for data transfer operations where compatible format was critical. I'm just thinking too much. I'll ease up on my exacting expectations or I'll scare everyone away from this project!

Enjoy your day.
No Time To Code
15
Years of Service
User Offline
Joined: 22nd Dec 2008
Location:
Posted: 10th Sep 2009 05:18
I actually don't have MS Word at home myself, I thought it came with Windows Home edition but I was sadly mistaken. I was doing it at work and yes, it's easier to format. You can open a Word doc with Wordpad (I've got it on my PC and I think it came with Windows) and it retains the formatting pretty well.
Libervurto
17
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 10th Sep 2009 18:05 Edited at: 10th Sep 2009 18:09
I've written some very oldskool horror music for this, sounds a lot like Halloween. I'll make a proper recording and upload in the next couple of days.

[edit]
I've got today off so I'm going to read up on pathfinding.
If someone like no time to code who has exp

TGC Forum - converting error messages into sarcasm since 2002.
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 10th Sep 2009 19:01 Edited at: 10th Sep 2009 19:33
I could have sworn that there was discussion earlier that the enemy wouldn't be zombies. It could be any kind of creature, alien, mutant, animal, robot, but I thought the consensus was that zombies are over done.

@Brick Break
Quote: " Latchie, just tell me what you want, and I'll do it."

from latch in response to Brick Break:
Quote: "Quote: "I have some great ideas involving waypoints and raycasting to find the shortest route to a target."
Sit down with pencil and paper and work out your ideas. Keep these things in mind:
1. The shortest distance isn't necessarily the best route. If an enemy is downstairs directly below the player then the shortest route is through the floor. However, the enemy should manuever to a stairway and try to move through accessible channels to get to the player.
2. There are basically two kinds of waypoints:
a. Dynamic
b. Static
2a. Dynamic - the path is created on the fly based on the changing position between two points. This tends to be more processor intensive and if handled poorly or applied to too many entities at once, can slow things down.
2b. Static - the path is created ahead of time and stored in a table (array). This is fast and only subject to the lookup time of the next point in the path.

Once you have your ideas together, converse with Obese87 and see about hashing out the ideas into code. Also reference the path finding links I listed a few posts above to see if there is useful information to glean."


If you don't want to do that, then try working on the model of the main character/player.

Enjoy your day.
Caleb1994
15
Years of Service
User Offline
Joined: 10th Oct 2008
Location: The Internet you idiot!
Posted: 10th Sep 2009 21:06
So we are going to have a model for the player? so it will be fps OR third person. ok. so if we have a animated model then in first person does the camera need to be tied to the head so that when lets say your running and the head is moving up and down(as if kinda jogging) the camera with too? just trying to get as much info as possible. and are we using sparkys dll for collision?

New Site! Check it out \/
No Time To Code
15
Years of Service
User Offline
Joined: 22nd Dec 2008
Location:
Posted: 10th Sep 2009 21:47
Quote: "I could have sworn that there was discussion earlier that the enemy wouldn't be zombies. It could be any kind of creature, alien, mutant, animal, robot, but I thought the consensus was that zombies are over done."


I may have missed that but aliens or mutants work well for me.

Quote: "So we are going to have a model for the player? "


Since it's a FPS I don't think we need a player model...
Caleb1994
15
Years of Service
User Offline
Joined: 10th Oct 2008
Location: The Internet you idiot!
Posted: 10th Sep 2009 21:57 Edited at: 10th Sep 2009 22:02
Quote: "Since it's a FPS I don't think we need a player model... "


That's what i thought but then i think i saw latch say something about it.

Quote: "We can plan later. Let me rephrase that- you guys can plan, while I'll actually make the game."


Hey dude i don't want to sound mean but your posts are sounding like you are trying to make this YOUR project. this is a team project and latch is the team ummm leader or whatever you want to call it. if you need a job ask him, and you have a job don't you? you were going to try and help out with AI. taking on more then one job is not a good idea. that's one point of the team it takes the pressure of one guy and spreads it out.

New Site! Check it out \/
TheComet
16
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 10th Sep 2009 22:01
Quote: "Any chance we could get a model of the landscape, or at least it's dimensions relative to the structures so we can start thinking about sizing the world/characters/ speeds of movement, etc.?"


You are not the one needing the dimensions... I am the one needing the dimensions. I would have to rescale the level to the according world size. What is it by the way? Shall we make it 10000 squared?

Quote: "This could be presented as text before the game or, if we get really ambitious, we could animate this scene and show it as the game intro."


As soon as I get some more time, I'm in for that.

@Obese

Thanks a lot for the pics! They are going to help me a bit with realism.

@everyone

Now just hold on a little. Waypoints are our least concern. Right now we need a level done, a main character and some simple "walk around with collision" program. Next come various pick-ups, then we program boarding up windows, and at the VERY END come the waypoints and AI.

Besides, if Brick is going to write the waypoint system, I'm just going to come along with my waypoint plugin a little (or a lot) later and it will be a pain to replace the waypoint code with my plugin. Wouldn't it be easier to wait until my plugin is finished? I'll send the DLL to you Brick and you can program the waypoint system in just a few hours, instead of breaking your head like I am currently with my plugin with waypoint code.

My waypoint plugin comes with a pretty much professional waypoint editor, and the plugin DLL includes commands that load the systems, control the systems and there are even path-finding algorithms integrated. I really think we should wait. But it is up to the person responsible for the waypoints, which I am not.

TheComet


Make the paths of your enemies easier with WaypointPro!
Libervurto
17
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 11th Sep 2009 01:00
I think comet is right that waypoints and pathfinding aren't priorities at the moment but then again we are a team and one person can be preparing things that will be integrated later.

I sifted through my old programs and found a 2D pathfinding one that's pretty neat but it's not in DB. I will explain how it worked in case there is anything we could use from this method.
An array stores the tile type of each square, a second array stores the footfall on each square, and the third and final array stores the departure direction from each square.
The program looks for the least travelled adjacent square and moves to it; it continues this process until it reaches the target square. The route left behind is the shortest distance between the two points.

I'm just going to check that because you'd think it would move over every square but it doesnt. back in a mo...

TGC Forum - converting error messages into sarcasm since 2002.
Brick Break
User Banned
Posted: 11th Sep 2009 01:56
Guys, guys, what are you doing? Arrays are the last thing we want for pathfinding! What if the enemies have to find their way around each other, or what if something randomly changed the map? It needs to be full real-time 3D dynamic pathfinding. I know that's not my decision to make, but that's the only way to do it. There will be no tiling or grids. 100% dynamic meshes all the way, and Sparky's will handle it like a charm. Actually, I already have a function for collision using sparky's that I've used before. The only thing that needs to be added in your own code is a "safety line" so people can't penetrate corners/fall through the ground.

OBJ-Object
R#-Radius
CO#-Correct origin (relative to actual origin)


Quote: "[quote]She should post screens, to benefit the other members"

Hmmm I'm a lil scared how others may benefit from this lol [/quote]
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 11th Sep 2009 06:25
@No Time to Code:
I know you are going on vacation next week, but in the mean time, take a look through this thread and find all the points that I have been trying to make and see if you can get them in an organized fashion in the design document. Ultimately, everyone should be able to reference that document to understand what they are doing and where the project is. I'll take a look at it too and see if I can help you organize it a bit.

@Caleb1994
from latch to Caleb previously:

Quote: "Caleb1994 Quote: "Couldn't we just start working on a basic engine to walk around on a matrix. if we are going to use a matrix as the ground, but i have heard they are slow. we also could just make a large plane for the ground. either way create the basic player controls and stuff that way when we get the map we can just plug it in and there we go!"
Sure. Why not? Though it's not the matrix's speed I worry about. It's the texturing. A matrix loses 1 pixel in between tiles and for any kind of repeating texture, except perhaps a solid color, you can always see the seams of the tiles. For functionality and ease of use, a matrix is great. For the look of the environment, I have never been impressed with a matrix. But that's not to say don't use it as a testing environment to try out different engine methods. Go ahead and build a movement engine. As I perceive the project I would say keep this in mind:
1. There will be an actual animated player character that will walk around and raise, lower, shoot, and reload it's weapon.
2. You'll need to be able to put the camera at the player's eye level and be able to see and aim the gun as well as move both player and camera around.
3. You'll need a testing mode and/or a 3rd person mode where the camera can be anywhere and independent of the character so that we can objserve the player's interaction with environment (to make sure they aren't walking through a wall or something and are at the correct height in the environment and their animation is playing correctly."


@TheComet
Quote: "Now just hold on a little. Waypoints are our least concern. Right now we need a level done, a main character and some simple "walk around with collision" program. Next come various pick-ups, then we program boarding up windows, and at the VERY END come the waypoints and AI."

If you look above, Caleb is supposed to be getting a generic level together to test out camera control and such. As far as your other points, I'm going to have to disagree.

The easier things to implement will be player movement, bumping into things and such. The collision system will be dependent on the AI and waypoint navigation. In fact, those methods may be the collision system for the enemy and the environment. I think it's important to tackle some of the tougher parts of the project while the energy is high, and it will also help to develop more universal type libraries that can be applied to other games than this.

Quote: "Besides, if Brick is going to write the waypoint system, I'm just going to come along with my waypoint plugin a little (or a lot) later and it will be a pain to replace the waypoint code with my plugin. Wouldn't it be easier to wait until my plugin is finished? I'll send the DLL to you Brick and you can program the waypoint system in just a few hours, instead of breaking your head like I am currently with my plugin with waypoint code.

My waypoint plugin comes with a pretty much professional waypoint editor, and the plugin DLL includes commands that load the systems, control the systems and there are even path-finding algorithms integrated. I really think we should wait. But it is up to the person responsible for the waypoints, which I am not."


Your time constraints may hinder the production and completion of your waypoint system. The team should move forward. Though I have no doubts it is a quality product, since it is currently unavailable, the time that would be used for you to complete your plugin can be used by another team member to create a waypoint system specific to this project. Robert The Robot is taking on that task. Obese and Brick Break are working on a Path finding system for interaction between the enemies and the player.

I'll differenciate between the two methods:
1. The Waypoint system will be used to establish hard-coded paths from the outside to the entry points of the house. This way, the enemies will choose specific premade paths to walk up to windows and doors. These need never be calculated on the fly. There will be many of these paths and each entity will randomly choose one from the pool. This will cut down on any calculation overhead that may occur in game and prevent each enemy from just going to the closest window (they may walk around the house to another entrance that the player doesn't expect)

2. The Player - Enemy interaction path finding. This is how the enemy will track to the player once the enemy is inside the house, or the player is outside of the house. This may be as simple as checking the distance and pointing the enemy towards the player and turning 90 degrees when bumping into an object other than the player to walk around the obstacle. Or it will be an on the fly calculated array of positions to track to the player. Or it will be a combination of both: perhaps a simple direction check until the enemy is within a certain proximity then a more elaborate path to player calculation.

@All
Any one of us could put together a quick first person camera move around thing. Here, I'll type one up now:



We need to get those not so easy things under way like paths and ai and the gernal game engine. And all those things are supposedly being worked on. A placeholder environment for testing can be created almost as easily as the code I posted above, so let's return our attentions to our assigned tasks.

@Brick Break
You are obvisouly exploding with a lot of energy and ideas, but we need to work as a team and all try to move in the same direction. Obese87 is taking the lead on a path finding system. Your task is to work with him to figure out the best way to get this. Collision, gun fire, all that is going to come later once there is a basic movement engine for the player and the enemies. And in order to get the enemies to move, there has to be a path/ai system in place.

Enjoy your day.
Libervurto
17
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 11th Sep 2009 18:56
@Brick Break
I can't see how we are going to do pathfinding without some sort of array, to plot a route you need something to plot it through.
If you have found a way to do it without arrays please post.

I found this tutorial on A* pathfinding for anyone who wants to help. I don't have time to go through it tonight but it seems very similar to what I was doing on my own.

What I'm struggling with here is that we seem to require a 2D array, but how do we represent 3D objects accurately on this 2D map?
How accurate does the representation need to be?
How quickly can these calculations be done? (If we include dynamic objects in the pathfinding these will have to be updated on the array and restart pathfinding)

TGC Forum - converting error messages into sarcasm since 2002.
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 12th Sep 2009 00:09
Quote: "What I'm struggling with here is that we seem to require a 2D array, but how do we represent 3D objects accurately on this 2D map?
How accurate does the representation need to be?
How quickly can these calculations be done? (If we include dynamic objects in the pathfinding these will have to be updated on the array and restart pathfinding)"


Since objects will be traveling on the X Z plane, a 2d array should suffice. A * path finding doesn't have to be the method used, you can use any method that gets the enemy to the player. Path finding is more of a description of what needs to happen. The Y value of the enemy can be determined with ground collision so it's height always adjusts according to the terrain or floor it is over. in the case of the player being upstairs and the enemy being downstairs, a simple check of y heights can mean that the enemy will head for the stairs under specific circumstances (above or below the player inside the house).

The only real dynamic objects should be other enemies so that shouldn't be an issue for this game.

In general, path finding uses a set grid, so it checks the passability of each square so to speak. If an enemy moves 5 units per turn, then it could use a grid based on the boundaries of the house made up of 5 or even 10 units per square. The finer the check, the more iterations it will take to find a path. The coarser the check, the less iterations it will take. An option would be to map out the interior of the house with every square that is impassable ahead of time, and only check for a route on passable squares.

There are many options, even using a variation of what Brick Break had posted on casting rays using Sparky's. Though it would be nice to find a DBC solution without having to result to using a DLL.

Don't worry about how long the calculations will take until you do it and find out. You won't know it works until it works. Again, check out Alien 001's path finding algorithm. If I recall, it functions with very little overhead.

Also consider there may be a max of 20 enemies walking around at a time. What if you had to do 100000 iterations of those 20 enemies each main loop? That would be 2,000,000 iterations. That's probably a lot more than you'd need, but without calculations at a sync rate of 60, it takes about 200 milliseconds. That's not much time at all. Now if the interior of the house worked out to about 100 tiles by 100 tiles, that's only a max check of 10,000 tiles instead of 100,000. That's 1/10th the time. And you wouldn't even be checking every tile so the time would be even less.

Again, you won't know how well your system works until you get it working. And then from there you can figure out how to speed it up. You may abandon path finding all together and just point the enemy at the player and make it turn when it bumps into something other than the player. There are many options.

Enjoy your day.
No Time To Code
15
Years of Service
User Offline
Joined: 22nd Dec 2008
Location:
Posted: 12th Sep 2009 00:34
@Latch
Quote: "@No Time to Code:
I know you are going on vacation next week, but in the mean time, take a look through this thread and find all the points that I have been trying to make and see if you can get them in an organized fashion in the design document."


I will get something out to the team by tomorrow night.

@OBese87
Quote: "I found this tutorial on A* pathfinding for anyone who wants to help. I don't have time to go through it tonight but it seems very similar to what I was doing on my own."


This is the tutorial I based my A* code on. I can post it here or email to you if you want to see it. It works, I'm just not sure how it would run if we modify it to work with multiple enemies and a moving target (the player).
Libervurto
17
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 12th Sep 2009 00:40 Edited at: 12th Sep 2009 00:55
Thanks for the input Latch.

Have we decided what the enemies will be?
How challenging would it be to have insects crawling over the walls and ceiling?
What is the tone of this game, are we making it scary or tongue-in-cheek?

@No Time
Yes post it here please, then we can all look at what needs to be modified for use in the project.

TGC Forum - converting error messages into sarcasm since 2002.
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 12th Sep 2009 01:03
Quote: "Have we decided what the enemies will be?"

It may come down to what we can model; though I've been tinkering around with a wierd humanoid alien looking creature. The head and the hands really need some work, but the overall form looks a bit creepy.

Quote: "How challenging would it be to have insects crawling over the walls and ceiling?"

That's a whole new set of collision/path ground height rules I don't think we should tackle for this project. When the movement engine is complete, we can look at what kind of adjustments we'd need, but I would put the ceiling/wall walking in the Out Of Scope category for this project.

Quote: "What is the tone of this game, are we making it scary or tongue-in-cheek?"

I like No Time To Code's intro. It's simple and to the point and sets the stage for some monster bashing mayhem. I would like this to be more on the creepy, scary side rather than the comical.

Enjoy your day.
No Time To Code
15
Years of Service
User Offline
Joined: 22nd Dec 2008
Location:
Posted: 12th Sep 2009 05:28
Here is the A* code. I think I documented it pretty well when I wrote it and I've been looking it over to refresh my memory. I used arrays for some of the variables only so they would be recognized within the function (global).

Libervurto
17
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 12th Sep 2009 18:16
@NTTC
Thanks
This tutorial is amazing, did you go through the extra stuff?
There's so much information! That's why coding is awesome, you could write volumes about any aspect of it.
There's some interesting stuff about dynamic objects that we could use.

TGC Forum - converting error messages into sarcasm since 2002.
No Time To Code
15
Years of Service
User Offline
Joined: 22nd Dec 2008
Location:
Posted: 12th Sep 2009 18:25
I did look at the extra stuff. I was just happy to get the basic A* pathfinding to work for me but, thats just scratching the surface. There is a ton of information about AI/Pathfinding on that website.
Robert The Robot
17
Years of Service
User Offline
Joined: 8th Jan 2007
Location: Fireball XL5
Posted: 12th Sep 2009 21:12 Edited at: 12th Sep 2009 21:16
Sorry I've been a while posting back, but the internet connection was down .

I've attached a (very) early version of my waypoint editor. So far, you can create a single path of up to 1000 nodes by just pointing and clicking. If you place a node within one unit of another node (i.e. directly on top) then the node becomes a junction. Up to 8 paths can link to a single node - the idea is that when an entity reaches a node, it randomly selects one path from those leading to it, and so finds the next waypoint. It's not much, I know, but I was just wondering - is this the kind of thing people had in mind?

Quote: "Have we decided what the enemies will be?"

I must say I have a few queries about the idea of zombies in the moonlight - not least how the player is supposed to kill a walking corpse! Perhaps I'm thinking too much about this, but as yet there's no reason for any zombies to be walking around a farmhouse. I mean, I can understand zombies in a graveyard or in a vampire's castle, but a farmhouse in the middle of nowhere?

It did cross my mind that (at least from a limb-based modelling point of view) skeletons might be better because the joints would be plainly in view and so DBC limbs would be an advantage.

Actually (and now I'm completely changing tack) the whole farmhouse at night scenario reminded me of Pixar's "Lifted" cartoon short (brilliantly funny, but has a nice dramatic opening), so what if we had this farm being used as the lead command post for an alien battle droid strike force? The use of fighting robots means that limb-based animation can be used easily, and it also explains why the player couldn't just run for help (even 20 miles to the next town) because no one would ever believe him.

@No Time to Code
I like you're story intro, but you didn't sound too keen on the "running out of gas" scenario. Maybe you could say the car broke down and (depending on when exactly the game is set) there was either no mobile phone signal or it's battery was dead?

"I wish I was a spaceman, the fastest guy alive. I'd fly you round the universe, in Fireball XL5..."

Attachments

Login to view attachments
No Time To Code
15
Years of Service
User Offline
Joined: 22nd Dec 2008
Location:
Posted: 12th Sep 2009 21:28
@OBese87
I did check out this link http://www.red3d.com/cwr/steer/ on that page called "Steering Behaviors For Autonomous Characters". May not be useful for this project but it was pretty interesting

@Robert The Robot
Quote: "I must say I have a few queries about the idea of zombies in the moonlight - not least how the player is supposed to kill a walking corpse! Perhaps I'm thinking too much about this, but as yet there's no reason for any zombies to be walking around a farmhouse. I mean, I can understand zombies in a graveyard or in a vampire's castle, but a farmhouse in the middle of nowhere?"

Think about zombie movies - Night of the Living Dead, Dawn of the Dead, etc. They can be found anywhere graveyards, countryside, shopping mall, etc. That being said, I think we're off the zombie idea and on to aliens or mutants. If we go with aliens it would go nicely with your "alien battle droid strike force" concept.

Quote: "I like you're story intro, but you didn't sound too keen on the "running out of gas" scenario. Maybe you could say the car broke down and (depending on when exactly the game is set) there was either no mobile phone signal or it's battery was dead?"


Yeah, the running out of gas was a little corny but I was just trying to get something started. When you think about it, the car breaking down is corny too but, hey, it does happen! We do have to decide what time the story is set in and, if it's the present, explain the no cell phone thing.
TheComet
16
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 12th Sep 2009 22:40 Edited at: 14th Sep 2009 11:15
Quote: "I mean, I can understand zombies in a graveyard or in a vampire's castle, but a farmhouse in the middle of nowhere?"


How about the farmer is a sick witch-doctor and kills any human that enters his barn? And you have to unlock the secrets of him and find his cellar where he hangs up the humans and tortures them until they die. He could be the final boss...

@Robert

Nice Waypoint editor, I am working on a very similar project right now (See attachment), but I really need to try out Dark Windows...

Attached is my WaypointPro very early test version editor. Before creating waypoints you need to import a level (ctrl+I or file/import level...). There should be a level under "media\level1.x", if not you will need to load your own X file.

MMB + drag to view, scroll to zoom. If you don't have a MMB, you can press space, but you can not zoom yet.

The rest speeks for itself. You can not delete waypoints yet, still working on it, and the exporter is bugged so I rem'd it out. If you click on a connection, 2 boxes will appear with a line between them. This means that you can pass through that connection in two ways. You can change the direction under "edit/set one way connection", so you can only pass through one way (from the waypoint without the box to the waypoint with the box). Enjoy!

I however am spending my little bit of free time on the week-ends updating my computers hardware. My Windows hard disk crashed and won't re-boot any more, so I had to replace it with a new one (2TB, lol) and re-install everything I used to have. Luckily I backed up all of my data before it happened. Does anyone have any idea why windows is missing some drivers for my network card? It worked perfectly before...

TheComet


Make the paths of your enemies easier with WaypointPro!

Attachments

Login to view attachments
No Time To Code
15
Years of Service
User Offline
Joined: 22nd Dec 2008
Location:
Posted: 13th Sep 2009 02:21
I've attached what I've put together so far for the design document. I'll take a look a the teams comments and make any changes when I get back from vacation. I'll also try to help out with pathfinding and work on some of the small models (weapons, wooden boards, boxes, etc).

Attachments

Login to view attachments
Digger412
16
Years of Service
User Offline
Joined: 12th Jun 2007
Location:
Posted: 13th Sep 2009 06:03
Hey, I've been kinda following this thread for a bit now. I looked over the Design Document out of curiosity, and noticed the data storage section at the end of page 4. Would www.mediafire.com be okay? For free, you get unlimited storage, up to 100MB per file, unlimited uploads, unlimited downloads, and unlimited bandwidth. It seems like it would provide everything you guys need.

Also, I MAY be able to provide some models, I haven't had much experience, and it'd be more along with some of the easier weapons (pitchforks, axes, etc.), but I'd like to try my hand at it. If it doesn't turn out well, then I still got practice doing it =).
Libervurto
17
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 13th Sep 2009 17:09
@Digger
we always welcome more modellers, Comet is building the scene at the moment so we'll have to wait and see what he wants.

@No TIme
That could be a great help for when we have lots of monsters running around.
Have we decided what these monsters will be? It could impact the AI so we need to know that before we get into advanced stuff like steering behaviours.
Aliens could be fun and the good thing is a ship can land anywhere so we don't have to have a storyline for how they got there.
I think you should play as the farmers not outsiders, this gives a reason for them to protect the farm and also means they'll have some firearms if only a basic shotgun.

TGC Forum - converting error messages into sarcasm since 2002.
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 13th Sep 2009 21:29 Edited at: 13th Sep 2009 21:38
Just to keep on track and not let us wander around debating ideas about the premise, here comes a bit of an interjection. The design plan of this first project is to keep the theme and the design as simple as possible so something can actually be finished. The theme is survival - as long as possible. The style is arcade - the game play will change by increasing the difficulty by adding more and possibly faster enemies each wave. The genre is First Person Shooter. There will be only 1 level/scene - the farm. There will be no boss, there will be no end, there will be no extra goals.

When a working game is finished, not only will there be a completed game, but all of the ground work for making a more advanced FPS should be laid out, and the addion of other levels, goals, bosses, should be able to be added with minor modification.

This initial project has got to be kept concise. I would outline the focus in this manner:

1. Team work - This will probably be one of the more difficult aspects of the project. What I mean is, everyone has ideas and everyone has opinions about how things should or could be done. Everyone's input is important, but everyone should have the chance to be involved and complete a task. If my task was to make an explosion animation, and I agreed to it, I shouldn't be working on Wiggels' (pretend there is a team member named Wiggels) shooting code because I think shooting code is cool and I know how to do it. If Wiggels needs help and asks for it, then it's reasonable for me to help as long as I balance my time to get my task done when expected.

However, there will be times when something needs to get done in order for the project to move forward. If I never get my explosion code done when the team really needs it, it's reasonable for that task to be shared or reassigned so the project can move forward.

2. Coding Language - This is a DBC project. The coding should be in DBC. Complete applications/games were made 5 to 10 years ago using DBC alone. With more modern computers, it should be possible to program something with fairly good performance that looks at least as good if not better than a DBC app from the past - but of course that's relative to ability and resources. 3D modeling and texturing is a world all it's own.

I know DLLs can help and give speed boosts, but supposedly, as this is a DBC board, everyone involved in the project uses DBC so we should try to complete the project using DBC. If there is no way around a problem, then let's introduce a DLL.

Here's an example: DBC 1.20 has an animation bug. If we coded 3d animations using the ROTATE LIMB command, there is an angle reversal error that occurs when the rotation is >= 120 degrees. Robert The Robot and I discussed the problem some time ago and found the solution could be corrected with custom made quaternions. Robert The Robot put together an app and a DLL that could correct the animations created in DBC 1.20. In this case, it makes sense to use the external DLL to correct the animations to deal with the bug. NOTE: This bug doesn't affect animations that are created with external 3d animators if the quaternions from those animators are output correctly.

If performance is terrible, or we need to implement something that just can't be done in DBC, then we can look at using a DLL.

focus....
I had a few other points for focus but I've forgotten them as I'm writing this. Maybe I'll remeber later.

@No Time To Code:
The design doc is starting to shape up. Good job

@Robert the Robot
So far pretty good. As far as the interface, the automatic screen sizing didn't reformat the text sizes approriately for my screen and most of the text overlapped and the Z box wasn't even in screen.

Quote: "'ve attached a (very) early version of my waypoint editor. So far, you can create a single path of up to 1000 nodes by just pointing and clicking. If you place a node within one unit of another node (i.e. directly on top) then the node becomes a junction. Up to 8 paths can link to a single node - the idea is that when an entity reaches a node, it randomly selects one path from those leading to it, and so finds the next waypoint. It's not much, I know, but I was just wondering - is this the kind of thing people had in mind?"

That seems to be pretty good. I would like to see a free draw option where you can keep the mouse button down and add points just moving the mouse around instead of individually clicking each point.

This statement from the code doesn't make sense to me:
Quote: "Up to 8 roads can link at a single point. When a point is reached,
a random number is chosen from the maxnumber of paths leading away
from the point, and the waypoint this leads to is the next
destination."

Why aren't all the paths independent? 1 set of waypoints or a path created by the waypoints should be it's own thing. Why would it be influenced by another path?

This is how I would see waypoints/paths being used in game specifically for the outside area - not in the house: An overhead map of the scene is created. Most likely a 2d map of the scene with obstacles and the entry points to the house. a path is created in the waypoint editor ahead of time during the designing of a level. For this particular game, each path starts somewhere at the edges or furthest boundaries of the scene. The paths are drawn from the edges to entry points around the house. The path(s) from the editor are stored in an array and that is saved. In game, the array is loaded. When enemies are chosen to descend upon the house, a random path number is chosen from the array and assigned to that enemy. The enemy moves through the series of waypoints in it's custom path to get into the house.

If the player is outside, the waypoint system is halted for a number of enemies that are perhaps closest to the player, or just a percentage of all enemies; and they then track directly to the player. If the player goes back into the house, those enemies that were tracking to the player outside resume their waypoint walking.

@Digger412
Media fire? Thanks. we'll have to take a look at that.
Quote: "Also, I MAY be able to provide some models, I haven't had much experience, and it'd be more along with some of the easier weapons (pitchforks, axes, etc.), but I'd like to try my hand at it. If it doesn't turn out well, then I still got practice doing it =). "


Thanks. There's a big emphasis on MAY in your post though. You are welcome to participate but let us know a little more definitively whether or not you will provide models so we can plan accordingly.

What's the Enemy?
As far as the enemy, I've been trying to model an alien or mutant type creature in Blender. I'm attaching a picture of a draft. It's limbed for DBC so it can be animated. At this point, the waist seam is a bit visible, I'll try and correct/hide that with a belt or a shirt or something - the draft is also higher poly than the final version will be. Opinions?

Enjoy your day.

Attachments

Login to view attachments
TheComet
16
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 13th Sep 2009 21:36
Latch, that model looks really awesome! Very nice job on it, I congratulate you!

The waste and hips may need some adjustments like you said, and maybe add something like tentacles at the end of the creature.

A small question: Is this game going to have blood?

TheComet


Make the paths of your enemies easier with WaypointPro!
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 13th Sep 2009 21:43 Edited at: 13th Sep 2009 21:45
Quote: "A small question: Is this game going to have blood?"

Most likely. There will probably be a whole series of special effects. Blood as impact sprays and such. I don't know about bleeding though. If bleeding can be pulled off without looking too corny or without emptying the bank in terms of performance, I don't see why that couldn't be added.

I haven't had a chance to download your attachment yet. I'll try and look at it later this evening.

Enjoy your day.
Digger412
16
Years of Service
User Offline
Joined: 12th Jun 2007
Location:
Posted: 13th Sep 2009 23:02
@Latch - What I meant is that I'll attempt some models, and depending on the quality of them, you can either accept or reject them. Since I'm a novice at it, others will probably be able to create higher quality models than I can.
No Time To Code
15
Years of Service
User Offline
Joined: 22nd Dec 2008
Location:
Posted: 14th Sep 2009 01:01
Quote: "The design plan of this first project is to keep the theme and the design as simple as possible so something can actually be finished. The theme is survival "

I agree. For some of us (me included) this is the first time working on a team project. We'd all like to do the next Half-Life but I think we should stick to a reasonable scope that we can actually complete. Then, if we not all at each other's throats after working together , we can add functionality to the completed project or start a more ambitious project.

@Latch
Nice model!

@digger412
Quote: "Since I'm a novice at it, others will probably be able to create higher quality models than I can. "

I'm probably in the same boat as you as far as modeling so I'm going to work on some of the smaller, less complex objects. If the team rejects them I'll go back to the drawing board (no pun intended) and try again, hopefully with constructive criticism from the group.

Happy coding to all and I'll check back on the thread we I get back from vacation.
Robert The Robot
17
Years of Service
User Offline
Joined: 8th Jan 2007
Location: Fireball XL5
Posted: 14th Sep 2009 16:58
@Latch
Wow, I like your alien!! I wish I was as good as that! I think maybe shape the lowest parts of the arms into some kind of clawed hand rather than tentacles, from an animation point of view tentacles might be difficult to control.

@All
Quote: "A small question: Is this game going to have blood?"

I don't think it would be wise to do more than a token gesture, at least from a performance point of view - I don't see how we can map any blood splats onto whatever surface is behind the alien monster when the player shoots.

Quote: "This statement from the code doesn't make sense to me:

Quote: "Up to 8 roads can link at a single point. When a point is reached,
a random number is chosen from the maxnumber of paths leading away
from the point, and the waypoint this leads to is the next
destination."
Why aren't all the paths independent? 1 set of waypoints or a path created by the waypoints should be it's own thing. Why would it be influenced by another path?"


If we have (say) all separate paths leading across the farmyard and towards the windows, then an entity following one path wouldn't be able to change path (unless there's some other AI code, for instance the entity might chace the player and then return to the nearest waypoint path).

My thinking was that by having all kinds of paths interconnected, an entity could randomly walk around and change direction. Hence at a junction of (say) four pathways, an entity could reach it and branch off in any of three directions, instead of following a rigid route to the house.

I think a blend of this method and possibly some kind of "I want to end up at this waypoint" system to giver overall guidance on a waypoint path might work better, though I'm not too sure how it could be implemented. Maybe we could give each path a priority, and the highest priority is the one the entity is most likely to choose.


Anyway, I've just attached a slightly reworked version of my editor, although it doesn't look much different to the last one and still has the bugs Latch spotted, I've fixed all the internal pathway links so each point leads to the next. I still need to make it more user-friendly though!

I also don't quite know how to handle the code for objects/enemies to patrol the waypoint network though. Should an "Update Waypoints" command be something like this:


or this


Also, is there a better way of organising the data to work out if an entity is near a waypoint? I'm keeping it as just a list of coordinates, but every single one must be checked to see if its in range. Could we use some kind of lookup table, so the data is duplicated but sorted by x- or z-value? Or perhaps the XZ plain could be carved up into regions (say quartered) so we could say "If entity has positive x and negative z, look in region three, which holds waypoints 45 to 62"? I'm just not sure how to set it up...




I've also been reading the latest design document, and I really like the new opening! Just glancing through the "Code Required" section, I've been thinking - the level editor is basically object and light placement, which is exactly what Lightning Lights was designed to do. It doesn't have any waypoint features, but they could be supplied through the editor I'm currently working on. So why not just say that the editor is already created?

The entry on particle effects reminded me of a command library I wrote a while back as part of BN2 Production's "Community Function Library" (which sadly didn't come to much, but anyway...). I've attached the library, which includes a demo of some of what it can do. It is limited, in that there's no particle collision check (so if they're used in a smoke filled room, the particles will just fly through the walls with no questions asked). Also, the particles bouncing off the floor (second example shown in the demo) don't look overly convincing, but I'm sure it could be improved with a bit of help.




@The Comet
Your waypoint editor looks good, although I'm not exactly sure how to use all the features. I like the menu system, I'll have to try and get something similar into DarkWindows!

I think you need to change the navigation system a bit, I didn't really like pressing the scroll wheel to be able to slide around the level (are you using a 3 button mouse?). Also, I think your file borwser is perhaps a bit too responsive! I clicked one file, but then I dragged the mouse up a little so it just touched the folder icon above it, and then I was immediately in that folder. You need something like this to ensure only one icon can be clicked at any time:



The only other thing I would say is that you should either make it a full-screen application (no window) or restrict users to one drive. DBC can crash if you use "Set Window On" and then call "Perform Checklist for Drives" or "If Path Exist("D:\")". The problem lies with removable drives - the disc drive "D" may technically exist, but if there's no disc in it then DBC will fail. I think this might actually be a fairly common computer problem rather than a flaw in DBC, but when i found a guide to solving it, it asked me to go fiddling in the registry so I decided to leave it!

"I wish I was a spaceman, the fastest guy alive. I'd fly you round the universe, in Fireball XL5..."

Attachments

Login to view attachments
TheComet
16
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 14th Sep 2009 22:23
I just want to let you all know that I am having serious problems with my computer, and I won't be able to be online for some time at home now, only at work. It's so typical... First my Harddisk blows, and then my power supply... Yes, my power supply is broken. I am running off a car battery right now (to back up my data and write this message), which isn't really a good idea, since it's draining the power at such an incredible speed that it could almost start smoking.

So this means that I will have to stop development on every project including DarkPro's until I get a new power supply. And since my computer is very old, I can only get second hand power supplies for this model, if there are any left on earth...

TheComet


Make the paths of your enemies easier with WaypointPro!
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 14th Sep 2009 22:59
That's terrible TheComet! I guess when it rains, it pours!

You may be able to snag a computer that's free or realively cheap by asking around at any local businesses or banks. When equipment reaches a certain depreciation, companies usually swap it out, the old equipment is often thrown out or given to charity. I know where I worked last, every year there seemed like there were 100s of computers and monitors they were throwing away that worked just fine. It didn't have as much to do with poorly functioning technology as it did with deprication analysis that would determine whether it was more cost effective to maintain old equipment that lost value over time or use newer equipment. If a computer was considered an asset, then it's relative value can be added (or subtracted) from the company's worth. If it's value has depreciated too much, the company's worth can suffer and they will dump the older equipment for newer equipment.

What I'm saying is, you might be able to get hold of a pretty good computer from some nearby business for free. Especially the big banks, or brokerages. It might be worth looking into.

Enjoy your day.
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 17th Sep 2009 20:31 Edited at: 18th Sep 2009 16:21
@Digger412
Any models that you can take a stab at would be great! How about a double barreled shotgun? Any chance on that? Also, have you used media fire? How secure is it? Any failings that you are aware of?

@All
With something like a shotgun, we'd need a disipating area effect. The closer the blast, the more direct concentrated damage. The further away, the less damage but over a greater area where damage = quality of damage + damage to a number of enemeies. If anyone has some ideas on how to achieve this please post.

from Robert The Robot:
Quote: "If we have (say) all separate paths leading across the farmyard and towards the windows, then an entity following one path wouldn't be able to change path (unless there's some other AI code, for instance the entity might chace the player and then return to the nearest waypoint path)."

That's ok. The entity doesn't need to change the path.

Quote: "My thinking was that by having all kinds of paths interconnected, an entity could randomly walk around and change direction. Hence at a junction of (say) four pathways, an entity could reach it and branch off in any of three directions, instead of following a rigid route to the house.

I think a blend of this method and possibly some kind of "I want to end up at this waypoint" system to giver overall guidance on a waypoint path might work better, though I'm not too sure how it could be implemented. Maybe we could give each path a priority, and the highest priority is the one the entity is most likely to choose."

I don't think this level of complexity is necessary. If there are 100s of or even 50 paths for any entity to choose from on it's initiation, creatures will be coming from all directions (assuming the paths are drawn such). If paths cross or follow the same direction then branch off, it will ggive the appearance that the entities are choosing where to go, but we wouldn't need a series of checks and recalculations along the way. Start with a simple approach. Have the entity(ies) follow a predestined path to an entry point. The only time they may ever need to divert from that is if they have to fight with the player outside. For the most part, the player will be running around inside the house shooting out of the windows at approaching hostiles.

Where is everyone at with their portion of the project?
Robert The Robot has posted some examples.

Haven't heard anything from Caleb1994.

Obese87 - are you waiting for an interior model? If so, can you make generic functions that can be adapted to any situation, or would this be too difficult or impractical?

Here's an update of what I've been working on:
1. I've started expanding and reformatting the Design Document. When No time to Code gets back I'll have him/her take a look at that

2. Since TheComet is having so much computer trouble, there's no telling when participation will resume. I've created a draft terrain of the area of the farm. It's 4000 x 4000 3d units. I've also just about completed a house; still need quite a few details. The dimensions are 480 X by 550 Z by 170 Y 3d units.

I wanted to keep the world units in nice easy to use units so 1 world unit = 10 3d units. So the house is really 48 world units by 55 world units but since each world unit is 10 3d units, it's 480 x 550. So a bullet might be 1 3d unit long to give an idea of the scale.

Should I post those here or wait till we have a media exchange place?

3. I've also started putting together an example of the outside waypoint path builder so it's a little more clear what I was talking about. I'll only post it if it seems it would be helpful. Otherwise we can start breaking down Robert The Robot's code and design the outside path system as he envisions it. The goal, however, should be to remove as much overhead as possible by avoiding in game calculations. Most of the time, the mosters are only going to be directly chasing the player inside of the house.

Enjoy your day.
Caleb1994
15
Years of Service
User Offline
Joined: 10th Oct 2008
Location: The Internet you idiot!
Posted: 17th Sep 2009 22:42
Sorry guys i am not going to be able to help with this now, School just started up last week and stuff has been heckteck plus my own project i am working on, Sorry again. i will definetly be looking on in aw whenever i can.

New Site! Check it out \/
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 18th Sep 2009 17:14
@Caleb1994
Life takes precedent. Good luck with school!

@Remaining
In any project worth completing, there are going to be periods when the tasks and the amount of effort and time on a task are going to challenge people's patience. If we want to create something of quality, we have to be willing to work through those difficult periods. In all likelihood, this project will take some time to complete and there are going to be spans where people can't contribute because of work, or school, or family. In the end, if we really want to complete the project, we will.

With that being said, I will be having company from out of town for about 2 weeks starting next Tuesday. It's likely I won't be working on anything DB during that time. I'll try to get a reformatted version of the Design Document to No Time to Code before I vanish. Take the project whereever it wants to go.

I had wanted to respond to this before from Robert The Robot:
Quote: "@All

Quote: "A small question: Is this game going to have blood?"
I don't think it would be wise to do more than a token gesture, at least from a performance point of view - I don't see how we can map any blood splats onto whatever surface is behind the alien monster when the player shoots. "

Agreed in that any special effects should not impede performance. Special effects, additions, sound effects, all that stuff should come later and be decided upon in terms of what is necessary and what is just icing on the cake.

Quote: "I don't see how we can map any blood splats onto whatever surface is behind the alien monster when the player shoots."

Can be tricky but is possible. The angle of the projectile on the X,Z plane from the player to the monster can be calculated using atanfull(). Using this angle, we can project a ray (using Sparky's) away from the monster a certain distance and get the impact point of a collision with a surface. Using the normal to the surface, we could put a textured plain with a splatter on the surface. If there isn't a surface within the distance, then at the distance drop a ray to the ground, get the impact point and the normal, and put the spatter plain there. After time, we could remove old splatters so the polygon count doesn't become insane.

Enjoy your day.
Robert The Robot
17
Years of Service
User Offline
Joined: 8th Jan 2007
Location: Fireball XL5
Posted: 18th Sep 2009 19:19
@Everyone
I was sorry to see so many people (temporarily) dropping out of the project, but I hope you all manage to join in again at some point soon!

@Latch
Quote: "The entity doesn't need to change the path. "

That's OK, it'll simplify the code tremendously. In game, all the entity has to do is stand at a point, rotate to it's next target waypoint and then keep moving forwards! I'll keep the crossover in mind though, for more complex pathfinding in any later projects (not that I'm counting my chickens, you understand )

Anyway, I'll get on and modify the core elements so I can continue the editor. Shouldn't take long - I just need to know how I'm to handle the movement function from point to point. Do I write that movement, or is that part of the general player/entity AI code?

Quote: "I don't see how we can map any blood splats onto whatever surface is behind the alien monster when the player shoots."
Can be tricky but is possible. "

Never did get my head round raycasting and object normals, though I follow what you're saying. I'll have to do a bit of research...

"I wish I was a spaceman, the fastest guy alive. I'd fly you round the universe, in Fireball XL5..."
Libervurto
17
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 18th Sep 2009 19:44
I've been looking at different ways of pathfinding and I found on the forum someone (I think it was Prasoc) made an A* pathfinder that didnt use a fixed grid, it cast rays out from the player and sort of build the grid around them. What this means is he could put the system in any level and it would just work!
It's another option.
I have been a bit ill lately so havent done much coding but hopefully I'll have enough to post in a few days. I'm having to learn as I go with this so it may take a bit longer.

TGC Forum - converting error messages into sarcasm since 2002.
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 18th Sep 2009 19:55
Quote: " Do I write that movement, or is that part of the general player/entity AI code?"

What do you mean?

Isn't this what you are doing:
Quote: "In game, all the entity has to do is stand at a point, rotate to it's next target waypoint and then keep moving forwards!"


Basically there would be 2 arrays. 1 array stores all of the paths and all of the waypoints per path. The other array stores the object number that is assigned to a path and stores the next waypoint in the path to move towards.

In game there would be an iteration through entities to check if they are close enough to the next waypoint to consider that waypoint reached, if so, then the object array for that entity index would be updated with the next waypoint to move towards. A flag can be included in the array if the entity has to leave the path (to chase the player say). In which case, the outside waypoint routine is bypassed for that entity and directed towards the entity to player alogrithm that Obese is working on or to a custom routine where the enemy just points towards and moves towards the player, turning if it bumps into an obstacle. When chasing the player or whatever is done, the flag is reset and the entity will resume it's old path.

Enjoy your day.

Login to post a reply

Server time is: 2024-03-29 05:41:00
Your offset time is: 2024-03-29 05:41:00