Skip to main content

pybreak360 - 1.0.6rc1

every one know this game, but this one is a 360° version, in which you can play up to 4 players in local network.

gino ingras

I have not found anything playing with more than 2 childrens with serverals computers.
An addictive game, easy, and not too long playing time.
So, i made it: an arkanoid / breakout clone which have the particularity to play at 360°.

see pybreak360.cfg to fine configure outside game.

  • 12 bricks bonus and more then 90 levels.
  • game use mouse or LEFT, RIGHT, UP, DOWN.
  • on game, press SPACE or ENTER for menu.
  • select level pack using menu/F9.
  • see in levels/*.level to edit/create your own level.
  • each level can be fine configured as speed ball, bricks quantity, width spaced, shifted, ...

    you can play alone, with ComputerBootPlayer, or humans muliplayers.
    connect up to 4 players via TCP network.
    press 'B' to start/stop as ComputerBootPlayer.
    press 'H' to see HiScores.
    press 'D' for LevelDesigner.
    press 'ENTER' for Menu.
    press PAGE_UP, PAGE_DOWN to change level in actual level pack.
    select Server using menu/F1, connect/disconnect using menu/F10.

    you can't play (yet) several players on the same computer.
    it was not the 1st objective.

    I hope you'll have as much fun playing it that i got programing (and playing it) also.

    next version should mainly clean code.
    maybe project to support android platform

    game written in Python 2.7.6(&9), Pygame 1.9.1, tested on linux, winXP, Seven.
    Pygame 1.9.2a works also, python3 not (yet).

  • Changes

    add python module netifaces-0.10.4, get local ip from severals methods.
    check all network available interfaces for server, allow user to set it manually, saved in pybreak360.cfg.
    restart server when change local ip from menu F11 (Warning: may need to save and restart game).
    enable game if no network found as localhost/
    add international special keyboard map in (edit to modify default), default keyboard parameter in pybreak360.cfg as [ParKeybi18n]
    add wall brick bonus, timed 7 Sec.
    add InvertCommand brick bonus, timed 5 Sec.
    (Warning: not enabled if ParAllowMulti360 = False, nor with bootBat)
    add reduce/enlarge bat brick bonus, timed 10 Sec.
    add timming 10 Sec speed brick bonus.
    show random bricks as random brick sprites in level (have to shoot to set the random brick 0-6)
    extract modules cursors, sounds, sprites, config_Parameters.

    next version should mainly clean code.


    Home Page


    pybreak360 1.0.7rc1 — 27 Mar, 2015

    pybreak360 1.0.6rc1 — 14 Mar, 2015

    pybreak360 1.04 — 17 Feb, 2015

    pybreak360 1.0.5rc — 24 Feb, 2015 account Comments

    • mieze 2015-03-05 08:25:16

      Incompatible with my system. On Archlinux there is no ifconfig available at all.
      My quick fix was to to replace "LOCAL_IP_NOT_RESOLVED" on line 124 with "".
      Of course this would not work for multiplayer and the game should warn me about that.

      Now it runs, but I have not had the time to try it yet. I had to look for solutions for the problem of getting an ip address in Python.

      .nyan~ :3

    • ginoingras 2015-03-07 23:06:32

      Thank for the feedback.
      your quickfix is the good way, and you sould be able to play multiplayers if you set lan IP from dhcp instead of localhost/
      there is a similar problem if you have several network intefaces as lan and wlan.
      game stop also if comptuer disconected from network (no ip available). this is fixed in 1.0.6, see in git source:


      import socket

      work on ArchLinux for all interfaces?

      Thanks again

      mieze 2015-03-08 02:00:31

      It kind of works. It reports the correct lan ip, when only one interface is active and localhost if none is. But it seems to prefer my wlan, when I have multiple ips. I do not see problems with it.

    • ginoingras 2015-03-08 07:54:56

      i have to add a way to select local IP from all network interfaces found (how?), and manual settings.
      note that port chosen is in .cfg file, but not reported on menu (i prefer simple users to not be confused in to much parameters).

      i will finalise the v1.0.6rc1 asap.

    • Gino Ingras 2015-03-21 17:55:25

      v1.0.6 got a bug in multiplayer (single player work well).
      on ThreadReception, line 955 sould be "idx = eval(ligne[1])" instead of "print ("th_R_B:%s\n" %(ligne[0]) )"

      this cause ThreadReception falldown when client recive ball message (multiplayer only)

      i'll correct it in next release, and also
      -add NuclearBall brick bonus,
      -add level editor.