|Not much news lately!|
|Eric Coleman||If anyone comes across something that might be of interest to VB game programming, then post some news!|
quote:I guess the Axiom engine is out of the question huh? It's for C# and .NET and is based on the Orge engine. [url]http://axiomengine.sourceforge.net/index.php[/url]
quote:Actually maybe I do have some potential news. I could post my new Scent Tracking AI sample app! I just got working. Basicly the principle behind it is this. As the player moves around the world they leave scent molecules behind them. Each scent molecule has a decay rate so that the molecules scent strength is reduced over time until it completly dissapates. As for the enemy AI, I gave the enemies 2 scent detectors. One on each side of it's body that extend foward. When a scent detector detecs a scent molecule the enemy will turn in the direction that it's scent detector was facing and move in that direction. I was caught compleatly off guard by how simple the code is to get the enemies to track your characters scent. I was going to try and do a video screen capture but the screen capture software is unable to capture the AI at work. But I will keep trying. But i attached some stills of it in action! see the attached pics! So why did I try my hand at coding some scent tracking AI you ask? Well first off for gamming, but also it can be a cool feature to have in games like RPG's where you could have a pack of wild dogs or monsters that will catch your scent and start fallowing you! Once I have played around with the code some more I intend to add additional AI both for vision and sound tracking. Currently the enemy AI does not wonder around the map very well. They pretty much just walk in a straight line until you walk in front of them and they catch on to your scent trail. One problem is that the Scent tracker AI is written in VB.NET 2005 express beta 1 and requires the .NET framework v2.0 beta in order to compile and run. So I am not sure if I should make a post or not as most people will not be able to compile and run the app, they will only be able to view the source. The EGEngine is really aimed at being a simulation rather than a traditional game engine where by each object or "entity" in the simulation is required for the most part to be self suffecient and not rely on other objects or aspects of the game engine to function. I kinda wanted to do something similar to the MS terrarium screen saver, but make it more game specific. So what do you think, To post or not to post that is the question! Imageery ... Download Attachment: [url="http://www.vbgamer.com/msgboard/uploaded/cbx/2004725132213_Image1.gif"][img]icon_paperclip.gif[/img]Image1.gif[/url]
13.29áKB Download Attachment: [url="http://www.vbgamer.com/msgboard/uploaded/cbx/2004725132226_Image6.gif"][img]icon_paperclip.gif[/img]Image6.gif[/url]
12.6áKB Download Attachment: [url="http://www.vbgamer.com/msgboard/uploaded/cbx/2004725132237_Image7.gif"][img]icon_paperclip.gif[/img]Image7.gif[/url]
13.6áKB Download Attachment: [url="http://www.vbgamer.com/msgboard/uploaded/cbx/2004725132245_Image8.gif"][img]icon_paperclip.gif[/img]Image8.gif[/url]
|VBBR||This scent engine could also be used to make things like a crew following you (like in some RPGs, that have a lead character and another two that keep following him). Also couldn't the core code be converted to VB6 or VB.NET 2002/2003 easily?|
quote:I know it could be converted to vb.net 2002/2003 with out too much trouble but vb5/6 would probably not be worth it, as it tries to be interface driven as well as rely hevaly on objects and inheritance. The code as it is now works but it far from being optomized. It is my intention to try and implement a theory I have about creating a game engine that consists of single objects that are almost entirly interface/contract driven and for each object to be responcible for it's own needs.
quote:Hmmm I can't seem to upload the 1.2mb source code for the engine, so you could have a look at it. Apparently were only allowed 90kb upload to the fourms. Oh Well. If anyone wants the source code just let me know in this thread or email me.
|sdw||Whoa, why the large filesize just for sourcecode?|
quote:Got it down to 421kb after removeing all unnessary files like exe dll pdb etc. And that does not even include the DX9ToolsR6 source code that is used by the Chewe app to render graphics using D3D!
|Eric Coleman||You're drawing circles and lines by using D3D? Isn't that a bit too much for such a simple looking program? 1.2 MB is just crazy. That's about 1/3 the size of the orginal DOOM. Is this type of file and code bloat normal for .NET?|
|Lachlan87||I've written apps in .Net that only took 68 kb (though the source was just over 100 kb). He might be including the Managed DX 9 runtimes, which are huge.|
quote:LOLOLOL [:I] Oh man that made me laugh! "... 1/3 the size of the orginal DOOM" LOL Holy crap, you make it sound like it has 1 million+ lines of code. LOL Actually no I'm not using D3D to to draw circles, I was going to because the engine will be a 3D engine, but right now I am using DirectDraw. I have my code setup with conditional defines and #IF statments so I can toggle between D3D, DirectDraw, and GDI. GDI tends to be too slow, DirectDraw works OK, and I have not fully written the code for D3D yet. I got the Zip file down to 117k but that's probably the limit! I had some direct *.X files stored in it as well as the DX9ToolsR6.dll and DX9ToolsR6.xml files. But you need the DX9ToolsR6.dll in order to compile. DX9ToolsR6.dll alone is 228kb in size. There is about 84kb in code just for chewe. Another 120kb in code for the engine core, and about 56kb in code for the "WhatsThatSmell" app. And that does not include the code for DX9ToolsR6. So yep that's a lot of code, ... well it's not all code I do have alot of comments in the code as well so take the total and divide by 2 to get a rough gestimate to the total size of all the source code. All that intelisence really tends to pay off! Take that C#! I just did a little test to check if my memory was correct and I re-discovered that all you really need to build/compile the source is to install .net 2.0 beta. .NET 2.0 uses MSBuild to build it's projects so you just need to type "msbuild someproject.vbproj" to compile the code. Which makes it alot easier then trying to compile just using vbc.exe (vb.net command line compiler). I am probably going to be upgrading my account over at www.brinkster.com from a "instant web site package" to a "developer package" that should allow me to do much more as well as add more content to my site. Right now I only have 1mb left. Hopfully then I will not have to keep posting my works on other sites like PSC, gotdotnet etc, and will be able to host them myself. Although I probably will not be doing the upgrade for another few months.
|cbx||WAIT! WAIT! I have news I have news, related to vb.net and gaming. The guys over at Channel9 have a contest going called "Summer of express coding contest" check it out at [url]http://channel9.msdn.com/express/[/url] Would that count as news??!? [?] You can win a free XBOX! (BTW: Check out this,... um,... cute kitten image, a channel 9 fourm member has for a user image! [url]http://channel9.msdn.com/User/Profile.aspx?UserID=3265[/url] Awww, look at the cute kitty. [:p])|
|Hoss||Hello everyone! I've been following these forums every day for several months now, but have decided to finally register. This is my very first post. [:o)]
quote:Great concept! I do have one thing to say though: I see in your screenshots that as the 'player' moves, the circles that designate the scent trail shrink. This might be what you're going for, but hear me out... I'm really not an idiot. It would make more sense for the scent trail circles to expand as their potency weakens. A smelly fart does travel, after all. The idea of the smell expanding would keep the smell-bots from never finding the player at all! Rather, the smell-bots could catch a whiff of the stench, no matter how weak it is, and know the general direction of the player. From there, the bots could follow their noses. Just some input! -Hoss
quote:LOL Great way to make an entrance. [:p] And welcome to VBGamer! The best vb gamming site I have found! And my favorite web site overall. [:D] As for drawing the Scent molecules larger as they dissapate... The circles size are relative to there scent strength, so if a circle were any bigger I think the scent tracking code would get confused. I believe the settings as they are now are at an optimal level. This is basically what is going on. 1: The player moves and leaves a scent trail behind them. 2: It is important that the scent trail is long, and takes a long time to disapate. And that the scent molecules are close enough together that the enemy ai won't loose the scent trail. 3: Although enemies can have any number of scent detecting antenni, 2 is an optimal number. One on either side of the body, and both pointed in a forward direction. 4: When the ScentManager detects that a enemy has detected a scent molecule it instructs the enemy to face in the direction that the antenni is facing in and move in that direction. 5: This will cause the 2nd antenni to collide with the scent molecule if the molecule is large enough. 6: When the 2nd antenni collides with the molecule it will cause the enemy to face in the direction of the 2nd antenni 7: Repeating the process of detecting a scent, telling enemy to face in the direction of the scent and move in that direction causes the enemy to keep the scent molecule in between it's antenni. And as such causes the enemy to fallow the scent trail. Kind of like rolling a ball on the floor back and fourth between both your hands (ball = scent molecule and hands = scent detectors) 8: Sounds too simple right? ... Well it really is that simple. Even I was cought of guard by its simplicity. With this basic "keep the scent molecule between your 2 antenni" behavior you also get surprising and unpredictable behaviours like enemies that will do a 180 if they start fallowing the scent trail the wrong way (IE: backwards away from the player) The AI also appears to have the ability to choose to fallow the stronger scent molecules rather then the weaker. I noticed this behavior when I tried to shake off an enemy that was tracking my scent by walking in a circle and crossing my own scent trail, to try and throw them off. It all comes down to 2 lines of code [code] ' if scent detected then ... Enemy.Direction += Detector.Direction Enemy.MoveForward()[/code]
quote:Have you tried submitting the "WhatsThatSmell" application only, the rest seems to have nothing to do with Scent Tracking AI.
quote:The developer package looks like a crappy deal for $17.95/mo. Have you done much other searching?
|Eric Coleman||The version of Doom that everyone played and downloaded off of BBS systems is 2393 KB. So I retract my original statment of "1/3," because it's closer to 1/2. Of course, Doom didn't need 59612 KB of extra runtime files. (23698 KB .NET 1.1 Redist., 35914 KB DirectX 9.0b Redist.) I think Hoss has a good idea for the scent tracking algorithm. The circles should get larger and fainter as they get older. When an enemy enters into a circle it shouldn't be able to automatically find the unit that is giving off the smell. A large circle allows an enemy unit to know that something has been in the area but it doesn't know the direction. The AI could then allow the enemy unit to explore the area to help find a stronger signal and then move in that direction.|
|Lachlan87||What really sucks about using DirectX 9 (which I do), is that your just about guaranteed that no one already has the Managed DirectX runtimes, since they aren't included in the re-distributable that is shipped with commercial games. So the extra download is basically unavoidable.|
quote:Crappy deal?!? $150 a year is crappy for 2gig storage and unlimited bandwidth?[?] I'm thinking it's a great deal compared to any local solution here in Terrace. Actually no I have not looked around. I had inteded to stay loyal to brinkster only because I have been with them for about 2 years now and have never had any problems with there service. I am always concerned about giving my credit card numbers out to business I don't know about. I chose brinkster beause it was listed by microsoft in the vs.net 2002 ide under the start page category "Web Hosting". I have also been seeing advertisements for brinkster in magazines, so I knew choosing them as my web site provider was a safe bet that they were not some fly by night company. Although if you think there are better deal out there to be had, I may just shop around and see if I can find a better deal.
quote:I can already hear the comments a comming, so before you make a post regarding my code make note that it is basically still in the pre alpha/theory stages and is far from compleation. Also note that speed here is not my primary concern,... OK sdw here is the vb.net 2005 code for the WhatsThatSmell app and the EGEngine core. Download Attachment: [url="http://www.vbgamer.com/msgboard/uploaded/cbx/2004727141953_Engine.zip"][img]icon_paperclip.gif[/img]Engine.zip[/url]
33.89áKB Download Attachment: [url="http://www.vbgamer.com/msgboard/uploaded/cbx/2004727142015_WhatsThatSmell.zip"][img]icon_paperclip.gif[/img]WhatsThatSmell.zip[/url]