MASSIVE Clone redux

General discussion about the development of the open source Blender

Moderators: jesterKing, stiv

harkyman
Posts: 98
Joined: Fri Oct 18, 2002 2:47 pm
Location: Pennsylvania, USA
Contact:

MASSIVE Clone redux

Post by harkyman »

Forum bugs are driving me nuts. I've moved development dicussion to:
http://www.elysiun.com/forum/viewtopic.php?p=194007

As the original thread has fallen victim to the blender.org forum poltergeist, I've begun a new one. I'll recreate my most recent post here...

New animation to look at...

http://66.134.133.114/battle3comp.avi

It's divx5.0.5 and only 310k. Watch the blue guy at the top center try to run when his buddy bites it. Ha!

This is turning out to be fun. Enjoy!

New things implemented:

- Actual attack and "neutralization". Older animations showed actors getting "stuck" against each other. They now exchange (mathematical) blows until one dies, then move on.

- Randomized actor stats. Upon initialization, actors are given base stats according to their type, randomized to an definable percentage. Seperate intialization stage allows you to hand edit stats in the database if you want to do something special.

- Orders: Defend, Attack, Retreat, Regroup, March (with a heading and speed modifier), and Goal Seek (march toward a user-specified Blender Object). Actors currently receive orders as a group, but will receive them from their commanders in future revisions. Orders can be changed on the fly with a simple update to the database.

Next:

- Hierarchical command and control. Each actor receives orders from its superiors, acts on them, and advertises those orders to their subordinates.

- Effects of the Intellect statistic. Actors will make errors in judgement in their interpretation of Orders and Goals according to their Intellect stat. This will lead to more realistic action.

- Direction. Currently, Actors are omnidirectional. Implementation of which way they are facing.

- Pathfinding. Moving around a set of obstacles and the consideration of terrain (slopes/edges)

- States. Calculation and storing of states for use by the animation side (i.e., "Attacking","Running","Hiking")

- Some code style help. My code is a horrific morass of poo. Not knowing the in's and out's of Python, I'm sure I've done many things in the least efficient manner possible. Maybe once I get it all working, I'll get some help, and do a full rewrite.
Last edited by harkyman on Fri Feb 20, 2004 8:41 pm, edited 1 time in total.

harkyman
Posts: 98
Joined: Fri Oct 18, 2002 2:47 pm
Location: Pennsylvania, USA
Contact:

Post by harkyman »

***
Forum bugs are driving me nuts. I'm continuing discussion on:
http://www.elysiun.com/forum/viewtopic.php?p=194007
***
Latest work finished and tested:

- Supports up to 255 different opposing teams

- Unit types. You can define the stat ranges and variances for different types of units.

- Heirarchical Command and Control. Any Actor can reference any other Actor for C&C instructions. Command designations can be autoassigned or manual, via object selections. For H-C&C, there can be up to 6 levels of "officers". This means that different units within the same team can have different objectives. Orders can be given at the top, to trickle down the command chain, or may be delivered directly to any unit in play.

- Fixed some faulty behavior in the 'Regroup' order. Still need to play with it.

No animation to show this time... I'm waiting to finish the last three bits of movement logic.

Also, I think I've determined an overall architecture that will allow "normal" (non-db guru) people to use the system, and will also allow the later addition of character animation. When I have object avoidance/pathfinding, intellect and loyalty coded in (shouldn't be too hard), I'm going to get some terrain shots and try to recreate a historic mideaval battle using around 500 actors as a proof of concept.

The cool thing about this is that the Blender code is relatively small. A lot of the work was done in the beginning with the database structure itself, and MySQL does all the hard stuff (like selecting the nearest opponent, finding force concentrations, etc.).
Last edited by harkyman on Fri Feb 20, 2004 8:42 pm, edited 1 time in total.

mr_rob
Posts: 0
Joined: Fri Jul 04, 2003 5:11 pm
Location: US of A
Contact:

Post by mr_rob »

[Einstein voice] INCREDIBLE! Most incredible!

You never cease to amaze me Harkyman! How do you do it!? The latest test is awesome! With this tool in the hands of Blender users worldwide, think of all the amateur films that will be able to have large battles. The Star Wars fanfilm community ( http://www.theforce.net/theater ) would like it!

Once again, this is great!

ilac
Posts: 131
Joined: Mon Oct 14, 2002 8:24 am

Post by ilac »

harkyman wrote:I'm going to get some terrain shots and try to recreate a historic mideaval battle using around 500 actors as a proof of concept.
Time for a 'build a rigged medieval character' contest... :wink:


Cool work harkyman! keep it up! :D

OTO
Posts: 60
Joined: Wed Oct 16, 2002 8:51 pm
Contact:

Post by OTO »

Hello and great work

Bravo

kencanvey
Posts: 0
Joined: Mon Jun 02, 2003 7:54 am
Location: Smethwick West Midlands UK

Post by kencanvey »

I watched the "Helms Deep" battle creation on dvd 4 of LOTRTT, about Weta, I think what you are doing is of fantastic benefit to the whole Blender community, :D really great work and so fast too :shock: :D .

Also did you see the size of the "brains" of some of the digital actors Weta has eeep :shock: , and the hardware they has is a wet dream come true :D

Ken

kencanvey
Posts: 0
Joined: Mon Jun 02, 2003 7:54 am
Location: Smethwick West Midlands UK

Post by kencanvey »

I watched the "Helms Deep" battle creation on dvd 4 of LOTRTT, about Weta, I think what you are doing is of fantastic benefit to the whole Blender community, :D really great work and so fast too :shock: :D .

Also did you see the size of the "brains" of some of the digital actors Weta has eeep :shock: , and the hardware they has is a wet dream come true :D

Ken

steve_t
Posts: 30
Joined: Tue Nov 05, 2002 7:10 am

Post by steve_t »

This is amazing, almost too good to be true. Keep up the good work!

mr_rob
Posts: 0
Joined: Fri Jul 04, 2003 5:11 pm
Location: US of A
Contact:

Post by mr_rob »

Yes some of the brains they had were, well, massive lol! I haven't seen ROTK yet but I can't wait to see the Battle of Pelennor Fields! 200,000 orcs!

harkyman
Posts: 98
Joined: Fri Oct 18, 2002 2:47 pm
Location: Pennsylvania, USA
Contact:

Post by harkyman »

The cavalry cutting through the Mordor hordes is absolutely unbelievable. It lets you see firsthand (sort of) why 100 mounted armored troops could put fear into thousands of unorganized infantry in mideaval days. I think it is my favorite cg moment in the entires series of movies.

JA-forreal
Posts: 0
Joined: Sat Mar 22, 2003 10:45 pm

Post by JA-forreal »

harkyman wrote:The cavalry cutting through the Mordor hordes is absolutely unbelievable. It lets you see firsthand (sort of) why 100 mounted armored troops could put fear into thousands of unorganized infantry in mideaval days. I think it is my favorite cg moment in the entires series of movies.
Hey this is great! When can we test this stuff out harkyman? Whoa yeah!

mr_rob
Posts: 0
Joined: Fri Jul 04, 2003 5:11 pm
Location: US of A
Contact:

Post by mr_rob »

Harkyman, I can write C extensions for speed if you need. Actually thats all I'm really good at lol!

harkyman
Posts: 98
Joined: Fri Oct 18, 2002 2:47 pm
Location: Pennsylvania, USA
Contact:

Post by harkyman »

***
Forum bugs are driving me nuts. I'm continuing discussion on:
http://www.elysiun.com/forum/viewtopic.php?p=194007
***
Just added:

Intellect effects. Smarter folks will follow their orders well. Dumber folks, well, you shouldn't put them on the front lines in a tense situation.

Started working on object/barrier avoidance. Going well. Should have a nice new animation to watch by the start of the week.

Also started writing documentation, so people can actually use the thing when it's done.

I've also been in contact with the maintainer of the IPO module for the Python API. He's going to add some functionality that was needed in order to "record" the character motion. Woo hoo!

Just for fun, I made a small group of fast-moving heavily armored Actors who like to cluster and attack from a distance (i.e., mounted infantry with polearms). They completely thrashed a much larger force of footmen, just like they should have.
Last edited by harkyman on Fri Feb 20, 2004 8:43 pm, edited 1 time in total.

theeth
Posts: 500
Joined: Wed Oct 16, 2002 5:47 am
Location: Montreal
Contact:

Post by theeth »

Any plans for ranged attack? Friendly fire? Balistic weapons? Attacking/Firing rates?

Are the actors using a global or local field of view system to acquire targets?

This is a field of research that interest me greatly, if you need help for anything, I'd be more than obliged to lend a hand.

Martin
Life is what happens to you when you're busy making other plans.
- John Lennon

jesterKing
Site Admin
Posts: 207
Joined: Fri Oct 18, 2002 12:48 pm
Location: Finland

Post by jesterKing »

I know I have said it before, but I'll do it again. I think that OpenSteer is a good library to use, when it comes to path finding. I have had no problems running the examples, myself. The "Capture the flag", "Pedestrians" and "Soccer" plugins show patterns that could be extremely useful for this project.

If someone can't run the examples, I can put up screenshots.

/jesterKing

Post Reply