BZoo: Network Gaming made easy

Hi all,

I’m very glad to announce the release of a brand new generation of network game template.

It is called BZoo and it can be found here: http://bzooworld.org/

BZoo is a network game template that is especially designed to allow network game creation without having to program a single line of code.
Despite it is possible to quickly prototype games without any skills in programming, BZoo also offers programmers and Blender game creators a powerful framework to make pro level multiuser network applications such as MORPG, Persistent Virtual Worlds, network PVP and so on…

The BZoo project is born in July last year. By that time, it was only a multiuser 3D walk through with chat capabilities but many talented artists found the concept was good and started creating amazing content for their own virtual worlds.
Here are a few screenshots of they works

http://lodweb.free.fr/tmp/BZoo.jpg
Joel and LOD world… watch the video..

http://perso.orange.fr/jb.perin/BZOO/screens/shot01.jpg
Joel and LOD world


“Le Golo street” from Blender3Dcrea team … watch the video.


“Le Golo street” from Blender3Dcrea team

http://www.bzooworld.org/photos/Dragonnia/village02_v0.3.jpg
“Dragonia” from Blendman

The newly issued version comes with lots of new features such as:

* Dual mode view
* Shooting system
* Synchronized and "collectable" objects handling
* Multi scene support
* Network saved inventory system
* Dialog with NPC
* Multi player connections handling
* Player authentication system
* Avatar selection screen
* Interoperability with IRC
* Flexible file organization for collaborative works
* Extensible player properties system

A documentation is currently being written … Get a bunch here

For Python developers willing to extend BZoo here’s the Python API.

If you want to give BZoo a try:

  • Download the BZoo Archive from here.
  • Unpack it in the directory of your choice.
  • Open the BZooClient.blend file
  • Press P
  • Press Del , enter your login and press Enter
  • Choose your avatar with arrow keys and validate by pressing Enter

You should now be in the main game scene

  • Use arrow keys to change point of view
  • F1 to get a menu
  • F2 to use use “in game” chat
  • F3 to connect to IRC chat
  • Right click to throw a bomb
  • Left click to shoot bullets
  • Space to open door (you’ll need to have the key in your inventory to do that)

To catch an object from the scene, collide with it.
To start dialog with NPC, get in touch with the character.
To teleport to an other scene, collide with the teleporter.

A DemoWorld is in progress that will demonstate all BZoo features in a nicer way.

Stay tuned :wink:

Jean-Baptiste PERIN

PS: BZoo works on Windows XP,Vista, Ubuntu, Debian and MAC OS X and it is released under GPL licence.

Hi Jb, as you already know I think your project is amazing and am actively experimenting with it. It works very well on my local machine…

I am having a little trouble configuring and understanding the second generation system to connect over my LAN. Do you have any documentation on where to specify the server IP as well as the connecting client’s IP? I am seeing several places in the python scripts where the local 127.0.0.1 is hardcoded but cannot find the right one yet!

-whyroc

Looks über-cool.
I hope I will get the time to get into the game engine - first thing I will do is having a try at BZoo.

/ Mats

Hello
great work jbperin!
Works very well…now we can do a clone of Anarchy Online! :slight_smile:
Thank you!
Bye

Thank you very much whyroc.

yes … a documentation about this is clearly missing…
Here’s what could be

Setting Up BZoo on a LAN :

** On Server Side

Open a shell command and change dir to where you uncompressed the BZoo source archive.

$ cd /the/directory/of/bzoo
$ python api/threadServer.py 50001 10

NB: If you’re using windows, you’ll have to use "" rather than “/” and specify the python path on the second command.
The 50001 parameter is the port number onto wich the server will listen for incomming connection
The 10 parameter is the maximum number of allowed connection.
Make sure that, on your server machine, no firewall prevent incoming connection on port 50001.

After issuing the commands shown above, the server is started and you should get something like:

 Debut
 1- Lister client
 0- Quitter
Entrez votre choix:

(ok … needs to be translated … on more thing in the TODO list :D)

Enter 1 and press enter to get a list of connected client.
Enter 0 and press enter to stop server.
Press Enter to reprint the menu

** On Client Side

Let’s suppose your server is running on a computer which IP adress on the LAN is 192.168.1.3.
To configure the client to access this computer:

  • Open the bzoo/scripts/bzInit.py script and change lines 6-7 as shown below:
GameLogic.bzServerName = '192.168.1.3'
GameLogic.bzPortNumber = 50001

  • Open bzoo/BZooClient.blend file,
  • Press Ctrl-UpArrow to leave FullScreen Mode.
  • In the TextEditor on the right part of the screen, choose bzInit.py script
  • Press Alt-R to reload the script. You should see your change applied
  • Put mouse on 3D view on the left part of the screen and press Ctrl-UpArrow to reenter Full screen mode.
  • Press Ctrl-S to save your file and close it.Your client is now ready to be deployed on you LAN. Compress the bzoo directory and upload it on computers of your LAN.

Hope it helps …
Keep me posted

Hi Mats, thank you for your comment.
You will need Python installed on your system and detected by Blender to experience it.
BZoo is especially designed to only require basic skills in BGE to create games. You only need to learn fondamentals of BGE to understand BZoo.
Since BZoo is Open Source you can even learn from it.

Hope to read about you soon.

WAOU!!
OTO the Cleaner !!

So glad and honoured that you post here … I learnt so many things from your tuts.
I hope BZoo will bring you as many satisfaction as I got from your tutorials.

I plan to use one of your scene in the demo world I’m working on (wildhouse). It is release under IDCL :slight_smile: and it is just stunning.

Thank you very very very very much OTO for your post.
Keep in touch

Jean-Baptiste

Thank you, the LAN instructions worked like a charm. I have a world in progress, and it is going very well. I am still figuring out texturing for the game engine, but have made a basic scene and skybox with several structures.

Next is to begin creating some avatars…

-w

that’s a very good news Whyroc !!

thank you very much for choosing BZoo.

Don’t hesitate to ask question if never you encounter any difficulty.

The avatar topic is not completely covered in the current documentation.

Two important news:

An article on BZoo was published on Allan Brito’s Blog.

Me be very happy :D:cool:

It looks like great news… even though I can’t read it hehe.

I am continuing to work with Bzoo and am very happy with it also.

-w

Hey … whyroc … what a nice article on your blog … thank you very much !!

I take advantage of this post to inform that there are BZoo Forums on projects.blender.org for people wanting to get support or wanting to report a bug.

I hope these forums will help to constitute a kind of knowledge base.