General
Background
Player Physics
Ball Physics

      
      
      
      
      
      
      
      
    

Date Repository Name





AtnNn's Haxball Stadium Editor

Source Code

The source code for HaxPuck is available on github.

About

This is the version released on 2012-02-02.

Changes since the 2011-12-29 version

  • New parameters from the official HaxBall update
  • User accounts
  • Save button
  • Download Button
  • Library
  • Fixed some bugs

Changes since the 2011-12-19 version

  • Fixed many bugs
  • Added more information in the help file.
  • Added Automatic Mirror Mode
  • Switched to HaxPuck.com

Save

You need to be logged in to access these functions.
  • The Save button saves the stadium to your private HaxPuck library.
  • The Download button allows you to download the stadium to your computer.

Tools

Numbers in parenthesis represent the keyboard shortcut. A stadium can have a maximum of 255 of each type of object.
  • Select (1)
    • Click on objects to select them.
    • Shift-click to select multiple objects.
    • Click and drag to select multiple objects.
    • Click and drag on segments to curve them.
    • Click and drag on selected objects to move them around.
    To move segment, first click on it to select it, then drag its vertices.
  • Rotate (2)
    • Click to place the center of rotation.
    • Click and drag to rotate the selected objects.
  • Scale (3)
    • Click to place the center of transformation.
    • Click and drag to scale or flip the selected objects.
    Some types of objects do not scale well. Ideally, discs and curved segments become oval-shaped when scaled vertically or horizontally. Haxball does not support ovals, so their image needs to be approximated.
    • A scaled disc will have the same area as it's ideal oval.
    • A curved segment will keep the same tangent on it's first point.
    • Segments, vertices, planes and goals scale perfectly.
  • Segment (4) - A segment connects two vertices. They can be used as decorations or as walls.
    • Click and drag to create segments.
    • Click on existing vertices to connect segments to them.
  • Vertex (5) - A vertex is a point on the stadium that can have special properties.
    • Click to place a new vertex.
  • Disc (6) - Discs are the only object apart from the puck and the players that can be made to move. They can be used as decorations or be allowed to collide with other objects.
    • Click to create normal-sized discs.
    • Click and drag to create custom-sized discs.
  • Goal (7) - When the puck crosses a goal, the opposite team scores a point.
    • Click and drag to place a goal.
    • Left side goals will start out red, right side goals will start out blue.
    Blue players score in the red goal, and vice-versa.
  • Plane (8) - Planes are invisible walls of infinite length.
    • Click to place a plane. The plane will face the center of the stadium (it will have a negative dist).

Property Editor

  • When objects are selected, their common properties are listed in the properties tab on the bottom left.
  • When one of these properties is changed, it will be applied to all the selected objects.
  • When a new object is created, the properties will be applied to it.

Properties

  • speed - The initial speed of a disc. The default value is 0,0.
  • bCoef - How much bounce an object has. Officially, this is a number between 0 and 1. Values below 0 and above 1 can also be used with care (and haxketball nets). The standard value for walls is 1. The standard value for goal nets is 0.1.
  • cMask - A list of groups that the object collides with. The puck and the players have a cMask of "ball, red, blue, wall". During a red kick-off, all players have an additional cMask of "redKO". During the blue kick-off, all players have an additional cMask of "blueKO".
  • cGroup - The groups that an object belongs to.
    • ball - the puck
    • red - red players
    • blue - blue players
    • wall - walls
    • redKO - kick-off barriers for red's kick-off
    • blueKO - kick-off barriers for blue's kick-off
    • all - all of the above
  • trait - A named set of properties common to many objects.
  • x - The horizontal position of a vertex.
  • y - The vertical position of a vertex.
  • curve - The angle (in degrees) at which a segment curves. Possible values are between -340 and 340.
  • vis - true or false. Is this object visible?
  • color - The color of segments and discs. Specified as a 6-character hexidecimal string.
  • normal - The direction faced by a plane.
  • dist - The distance of a plane from the center of the stadium. When it is positive, it keeps objects away from the center. When it is negative it keeps object close to the center.
  • radius - The half-size of a disc.
  • invMass - The inverse mass of an disc. 0 means that the disc doesn't move. The higher the invMass, the lighter the disc. Values below 0 are possible but must be used with care (and bobsleds). The default for discs is 1.
  • pos - The x and y coordinates of the center of a disc.
  • p0 - The coordinates of one end of a goal.
  • p1 - The coordinates of the other end of a goal.
  • team - The team whose goal it is, either blue or red.
  • damping - The deceleration rate of a disc. 1 means no deceleration. The default value is 0.99.

Editing Actions

  • Undo the last action. (Z or U)
  • Cancel the undo. (R)
  • Remove the selected objects. (Delete)
  • Select All (A)
  • Select None
  • Invert Selection
  • Cut (X)
  • Copy (C)
  • Paste (V)
  • Duplicate (D)

Tools

  • Automatic Mirror - Most edits are mirrored horizontally and vertically to help design symmetrical stadiums.
  • Preview Mode - Preview the stadium without any invisible shapes.

Keyboard Shortcuts

Some browser plugins are not compatible with keyboard shortcuts.

Text Mode

The text editor is simpler than notepad in some ways, but has some HBS-specific features.
  • The code is formatted for easy editing.
  • Vertexes are annotated with their index number.
  • Objects selected in the visual editor are marked in the code.
  • The Import button lets you instantly preview your stadium in the visual editor.
  • The Goto Character button allows you to quickly find a position in the file. This can be the position of an error reported by Haxball.

Stadium Properties

Default Values are in parenthesis.
  • Spawn Distance - How far to the right and left of the center should the players start?
  • Height and Width - The half size of the stadium.
  • Background
    • Type - The style of backgroud to use, either grass or hockey.
    • Width and Height - The half size of the background.
    • Border Radius
    • Kick-Off Radius
  • Player Physics
    • Bounce (0.5), Inverse Mass (0.5) and Damping (0.96) - properties of the player disc when not trying to kick.
    • Acceleration (0.1) - Acceleration when moving normally.
    • Kicking Acceleration (0.07) - Acceleration when trying to kick.
    • Kicking Damping (0.96) - Damping while trying to kick.
    • Kick Strength (5) - Strength of kicks.
  • Ball Physics
    • Radius (10), Bounce (0.5), Inverse Mass (1), Damping (0.99), Color (FFFFFF), Collision Mask (all) and Collision Group (ball) - properties of the ball disc.

Requirements

This editor works in Google Chrome and possibly other modern browsers.

HaxBall

HaxBall is an online multiplayer game created by basro.

HBS

HaxBall players can create new stadiums by writing HaxBall Stadium (HBS) files directlty or using an editor like this one. basro wrote a small tutorial on how to write raw HBS files. New stadium features released in February 2012 are described in a second tutorial.

HBR

HaxBall Recordings are not yet supported by Nn's HBS Editor. Partial information such as reconstructed stadiums (in HBS format) can be extracted from HBR files using HBRDUMP (2Mb zip file).
gipoco.com is neither affiliated with the authors of this page nor responsible for its contents. This is a safe-cache copy of the original web site.