Java-Gaming.org    
Featured games (81)
games approved by the League of Dukes
Games in Showcase (497)
Games in Android Showcase (114)
games submitted by our members
Games in WIP (563)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  AI Blackboards - anyone any experience with them?  (Read 1998 times)
0 Members and 1 Guest are viewing this topic.
Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Posted 2011-08-24 00:12:10 »

So, Blackboards. I suspect I need something like this to hold shared/inferred state for my mission generator, and a blackboard seems to fit what I'm after. Has anyone any experience with these? At the moment I'm literally starting with a simple struct and a couple of hardcoded variable (a 'static blackboard' is the lingo I believe). However I'm not sure how this is going to expand/change as time goes on.

In particular most of the stuff of the web about blackboards seems to be about dealing with typesafety in a C/C++ blackboard. I'm wondering if there are any cunning tricks people have used that make a blackboard easier to work with in Java...

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
Offline delt0r

JGO Knight


Medals: 27
Exp: 18 years


Computers can do that?


« Reply #1 - Posted 2011-08-27 09:11:26 »

I use blackboards in my game to quite good effect. One use case (not the only one) is what units to target and what priority (its a RTS). I hate it when every unit just attacks the closest, typically faster light unit while heavy hard hitting units are left free to wander up to do massive damage a few seconds later. Also indirect fire can take a long time to hit, so the unit may already be dead soon. So when a unit attacks some enemy unit it first checks the blackboard of the enemy unit to see what is already attacking and what damage is expected to be delivered and when. If it then decides to continue with the attack it writes the details on the BB. Pretty simple and works quite well.

This part of the implementation is very specific for that data, it just faster. So far i just add more add hoc stuff as it goes. There are some flags that can be set or cleared etc. I don't like generic code for generics sake.

I realized this may differ slightly from some definitions of blackboards in AI, but it is one of them. I got the idea from a AI book.

I have no special talents. I am only passionately curious.--Albert Einstein
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

UprightPath (12 views)
2014-09-20 20:14:06

BurntPizza (26 views)
2014-09-19 03:14:18

Dwinin (40 views)
2014-09-12 09:08:26

Norakomi (70 views)
2014-09-10 13:57:51

TehJavaDev (95 views)
2014-09-10 06:39:09

Tekkerue (49 views)
2014-09-09 02:24:56

mitcheeb (70 views)
2014-09-08 06:06:29

BurntPizza (52 views)
2014-09-07 01:13:42

Longarmx (39 views)
2014-09-07 01:12:14

Longarmx (45 views)
2014-09-07 01:11:22
List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06

List of Learning Resources
by SilverTiger
2014-07-31 11:54:12

HotSpot Options
by dleskov
2014-07-08 01:59:08
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!